From 9144ec4faecc9ef878729fd3aaaa1cfae4138a9e Mon Sep 17 00:00:00 2001 From: winecat Date: Mon, 26 Oct 2015 23:51:25 +0800 Subject: [PATCH 001/288] Update 111.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 错别字 --- 111.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/111.md b/111.md index 17fdbf6..49d1d3b 100644 --- a/111.md +++ b/111.md @@ -102,7 +102,7 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( >>> lst[-3:-1] ['python', 'java'] -序列的切片,一定要左边的数字小有右边的数字,`lang[-1:-3]`就没有遵守这个规则,返回的是一个空。 +序列的切片,一定要左边的数字小于右边的数字,`lang[-1:-3]`就没有遵守这个规则,返回的是一个空。 ##反转 From 98d1d9309c57761caf7ea56b33a1ae0303a81996 Mon Sep 17 00:00:00 2001 From: artinhuang Date: Sat, 31 Oct 2015 02:03:14 +0800 Subject: [PATCH 002/288] Modify some wrong. --- 108.md | 2 +- 300.md | 2 +- 302.md | 2 +- 309.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/108.md b/108.md index 1e53a10..1885182 100644 --- a/108.md +++ b/108.md @@ -161,7 +161,7 @@ s |t |u |d |y | |p |y |t |h |o |n >>> cmp(str1, str2) -1 -将两个字符串进行比较,也是首先将字符串中的符号转化为对一个的数字,然后比较。如果返回的数值小于零,说明第一个小于第二个,等于0,则两个相等,大于0,第一个大于第二个。为了能够明白其所以然,进入下面的分析。 +将两个字符串进行比较,也是首先将字符串中的符号转化为对应编码的数字,然后比较。如果返回的数值小于零,说明第一个小于第二个,等于0,则两个相等,大于0,第一个大于第二个。为了能够明白其所以然,进入下面的分析。 >>> ord('a') 97 diff --git a/300.md b/300.md index 1f86d34..5494831 100644 --- a/300.md +++ b/300.md @@ -6,7 +6,7 @@ 本季就是要出点一些实战的东西。 -首先声明,因为仍然是教程,所以在实战中的所有例子,可能举例真正的工程代码要求还有一定的举例,比如可能没有非常优化、或者某些语句和方法使用还有进一步推敲之处。也盼望读者能够指出不足,必改正。 +首先声明,因为仍然是教程,所以在实战中的所有例子,可能距离真正的工程代码要求还有一定的距离,比如可能没有非常优化、或者某些语句和方法使用还有进一步推敲之处。也盼望读者能够指出不足,必改正。 ------ diff --git a/302.md b/302.md index 406929f..c6ab0d1 100644 --- a/302.md +++ b/302.md @@ -196,7 +196,7 @@ HTTPServer是tornado.httpserver里面定义的类。HTTPServer是一个单线程 以上把一个简单的hello.py剖析。想必读者对Tornado编写网站的基本概念已经有了。 -如果一头雾水,也不要着急,以来将上面的内容多看几遍。对整体结构有一个基本了解,不要拘泥于细节或者某些词汇含义。然后即继续学习。 +如果一头雾水,也不要着急,请将上面的内容多看几遍。对整体结构有一个基本了解,不要拘泥于细节或者某些词汇含义。然后即继续学习。 ------ diff --git a/309.md b/309.md index 9ea6a00..d1b3c64 100644 --- a/309.md +++ b/309.md @@ -166,7 +166,7 @@ tornado本来就是一个异步的服务框架,体现在tornado的服务器和 教程到这里,读者是不是要思考一个问题,既然对于mongodb有专门的motor库来实现异步,前面对于tornado的异步,不管是哪个装饰器,都感觉麻烦,有没有专门的库来实现这种异步呢?这不是异想天开,还真有。也应该有,因为这才体现python的特点。比如[greenlet-tornado](https://github.com/mopub/greenlet-tornado),就是一个不错的库。读者可以浏览官方网站深入了解(为什么对mysql那么不积极呢?按理说应该出来好多支持mysql异步的库才对)。 -必须声明,前面演示如何在tornado中设置异步的代码,仅仅是演示理解设置方法。在工程实践中,那个代码的意义不到。为此,应该有一个近似于实践的代码示例。是的,的确应该有。当我正要写这样的代码时候,在网上发现一篇文章,这篇文章阻止了我写,因为我要写的那篇文章的作者早就写好了,而且我认为表述非常到位,示例也详细。所以,我不得不放弃,转而推荐给读者这篇好文章: +必须声明,前面演示如何在tornado中设置异步的代码,仅仅是演示理解设置方法。在工程实践中,那个代码的意义不大。为此,应该有一个近似于实践的代码示例。是的,的确应该有。当我正要写这样的代码时候,在网上发现一篇文章,这篇文章阻止了我写,因为我要写的那篇文章的作者早就写好了,而且我认为表述非常到位,示例也详细。所以,我不得不放弃,转而推荐给读者这篇好文章: 举例:[http://emptysqua.re/blog/refactoring-tornado-coroutines/](http://emptysqua.re/blog/refactoring-tornado-coroutines/) From 2dc5fad6bc9213ce5a065410716b05d032170fe9 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 3 Nov 2015 18:14:43 +0800 Subject: [PATCH 003/288] module and package --- 219.md | 48 ++++++++++++++++++++++++++++-------------------- 2code/21901.py | 11 +++++++++++ 2 files changed, 39 insertions(+), 20 deletions(-) create mode 100644 2code/21901.py diff --git a/219.md b/219.md index fd579fe..c1298e4 100644 --- a/219.md +++ b/219.md @@ -2,13 +2,13 @@ #编写模块 -在本章之前,python还没有显示出太突出的优势。本章开始,读者就会越来越感觉到python的强大了。这种强大体现在“模块自信”上,因为python不仅有很强大的自有模块(称之为标准库),还有海量的第三方模块,任何人还都能自己开发模块,正是有了这么强大的“模块自信”,才体现了python的优势所在。并且这种方式也正在不断被更多其它语言所借鉴。 +在本章之前,Python还没有显示出太突出的优势。本章开始,读者就会越来越感觉到Python的强大了。这种强大体现在“模块自信”上,因为Python不仅有很强大的自有模块(或者包、库,比如为标准库),还有海量的第三方模块(或者包、库),任何人还都能自己开发模块(或者包、库),正是有了这么强大的“模块自信”,才体现了Python的优势所在。并且这种方式也正在不断被更多其它语言所借鉴。 -“模块自信”的本质是:开放。 +“模块自信”的本质是:**开放**。 -python不是一个封闭的体系,是一个开放系统。开放系统的最大好处就是避免了“熵增”。 +Python不是一个封闭的体系,是一个开放系统。开放系统的最大好处就是避免了“熵增”。 ->熵的概念是由德国物理学家克劳修斯于1865年(这一年李鸿章建立了江南机械制造总局,美国废除奴隶制,林肯总统遇刺身亡,美国南北战争结束。)所提出。是一种测量在动力学方面不能做功的能量总数,也就是当总体的熵增加,其做功能力也下降,熵的量度正是能量退化的指标。 +>熵的概念是由德国物理学家克劳修斯于1865年(这一年李鸿章建立了江南机械制造总局,美国废除奴隶制,林肯总统遇刺身亡,美国南北战争结束。)所提出,是一种测量在动力学方面不能做功的能量总数,也就是当总体的熵增加,其做功能力也下降,熵的量度正是能量退化的指标。 >熵亦被用于计算一个系统中的失序现象,也就是计算该系统混乱的程度。 @@ -22,27 +22,29 @@ python不是一个封闭的体系,是一个开放系统。开放系统的最 >>> math.pow(3,2) 9.0 -这里的math就是一个模块,用import引入这个模块,然后可以使用模块里面的函数,比如这个pow()函数。显然,这里我们是不需要自己动手写具体函数的,我们的任务就是拿过来使用。这就是模块的好处:拿过来就用,不用自己重写。 +这里的math就是一个库,用import引入这个库,然后可以使用库里面的函数,比如这个pow()函数。显然,这里我们是不需要自己动手写具体函数的,我们的任务就是拿过来使用。这就是库的好处:拿过来就用,不用自己重写。 + +请读者注意,到现在为止,我们看到了模块、库、包这些名词,并且在开发实践中,也会常常遇到。它们有区别吗?有!只不过,现在我们暂时不区分,就笼统地说,阅读下面的内容,就理解它们之间的区分了。 ##模块是程序 -这个标题,一语道破了模块的本质,它就是一个扩展名为`.py`的python程序。我们能够在应该使用它的时候将它引用过来,节省精力,不需要重写雷同的代码。 +这个标题,一语道破了模块的本质,它就是一个扩展名为`.py`的Python程序。我们能够在应该使用它的时候将它引用过来,节省精力,不需要重写雷同的代码。 -但是,如果我自己写一个`.py`文件,是不是就能作为模块import过来呢?还不那么简单。必须得让python解释器能够找到你写的模块。比如:在某个目录中,我写了这样一个文件: +但是,如果我自己写一个`.py`文件,是不是就能作为模块import过来呢?还不那么简单。必须得让Python解释器能够找到你写的模块。比如:在某个目录中,我写了这样一个文件: #!/usr/bin/env python # coding=utf-8 lang = "python" -并把它命名为pm.py,那么这个文件就可以作为一个模块被引入。不过由于这个模块是我自己写的,python解释器并不知道,我得先告诉它我写了这样一个文件。 +并把它命名为pm.py,那么这个文件就可以作为一个模块被引入。不过由于这个模块是我自己写的,Python解释器并不知道,我得先告诉它我写了这样一个文件。 >>> import sys >>> sys.path.append("~/Documents/VBS/StartLearningPython/2code/pm.py") -用这种方式就是告诉python解释器,我写的那个文件在哪里。在这个告诉方法中,也用了一个模块`import sys`,不过由于sys模块是python被安装的时候就有的,所以不用特别告诉,python解释器就知道它在哪里了。 +用这种方式就是告诉Python解释器,我写的那个文件在哪里。在这个告诉方法中,也用了Python标准库中的sys,即`import sys`,不过由于sys是Python被安装的时候就有的,所以不用特别告诉,Python解释器就知道它在哪里了。 -上面那个一长串的地址,是ubuntu系统的地址格式,如果读者使用的windows系统,请写你所保存的文件路径。 +上面那个一长串的地址,是Ubuntu系统的地址格式,如果读者使用的windows系统,请写你所保存的文件路径。 >>> import pm >>> pm.lang @@ -55,19 +57,19 @@ python不是一个封闭的体系,是一个开放系统。开放系统的最 File "", line 1, in AttributeError: 'module' object has no attribute 'xx' -请读者回到pm.py文件的存储目录,是不是多了一个扩展名是.pyc的文件?如果不是,你那个可能是外星人用的python。 +请读者回到pm.py文件的存储目录,是不是多了一个扩展名是.pyc的文件?如果不是,你那个可能是外星人用的Python。 ->解释器,英文是:interpreter,港台翻译为:直译器。在python中,它的作用就是将.py的文件转化为.pyc文件,而.pyc文件是由字节码(bytecode)构成的,然后计算机执行.pyc文件。关于这方面的详细解释,请参阅维基百科的词条:[直譯器](http://zh.wikipedia.org/zh/%E7%9B%B4%E8%AD%AF%E5%99%A8) +>解释器,英文是:interpreter,港台翻译为:直译器。在Python中,它的作用就是将.py的文件转化为.pyc文件,而.pyc文件是由字节码(bytecode)构成的,然后计算机执行.pyc文件。关于这方面的详细解释,请参阅维基百科的词条:[直譯器](http://zh.wikipedia.org/zh/%E7%9B%B4%E8%AD%AF%E5%99%A8) -不少人喜欢将这个世界简化简化再简化。比如人,就分为好人还坏人,比如编程语言就分为解释型和编译型,不但如此,还将两种类型的语言分别贴上运行效率高低的标签,解释型的运行速度就慢,编译型的就快。一般人都把python看成解释型的,于是就得出它运行速度慢的结论。不少人都因此上当受骗了,认为python不值得学,或者做不了什么“大事”。这就是将本来复杂的多样化的世界非得划分为“黑白”的结果。这种喜欢用“非此即彼”的思维方式考虑问题的现象可以说在现在很常见,比如一提到“日本人”,除了苍老师,都该杀,这基本上是小孩子的思维方法,可惜在某个过度内大行其道。 +不少人喜欢将这个世界简化简化再简化。比如人,就分为好人还坏人,比如编程语言就分为解释型和编译型,不但如此,还将两种类型的语言分别贴上运行效率高低的标签,解释型的运行速度就慢,编译型的就快。一般人都把Python看成解释型的,于是就得出它运行速度慢的结论。不少人都因此上当受骗了,认为Python不值得学,或者做不了什么“大事”。这就是将本来复杂的多样化的世界非得划分为“黑白”的结果。这种喜欢用“非此即彼”的思维方式考虑问题的现象可以说在现在很常见,比如一提到“日本人”,除了苍老师,都该杀,这基本上是小孩子的思维方法,可惜在某国大行其道。 -世界是复杂的,“敌人的敌人就是朋友”是幼稚的,“一分为二”是机械的。当然,苍老师是德艺双馨的。 +世界是复杂的,“敌人的敌人就是朋友”是幼稚的,“一分为二”是机械的。当然,苍老师是德艺双馨的,无可辩驳、毋庸置疑。 -就如同刚才看到的那个.pyc文件一样,当python解释器读取了.py文件,先将它变成由字节码组成的.pyc文件,然后这个.pyc文件交给一个叫做python虚拟机的东西去运行(那些号称编译型的语言也是这个流程,不同的是它们先有一个明显的编译过程,编译好了之后再运行)。如果.py文件修改了,python解释器会重新编译,只是这个编译过程不是完全显示给你看的。 +就如同刚才看到的那个.pyc文件一样,当Python解释器读取了.py文件,先将它变成由字节码组成的.pyc文件,然后这个.pyc文件交给一个叫做Python虚拟机的东西去运行(那些号称编译型的语言也是这个流程,不同的是它们先有一个明显的编译过程,编译好了之后再运行)。如果.py文件修改了,Python解释器会重新编译,只是这个编译过程不是完全显示给你看的。 -我这里说的比较笼统,要深入了解python程序的执行过程,可以阅读这篇文章:[说说Python程序的执行过程](http://www.cnblogs.com/kym/archive/2012/05/14/2498728.html) +我这里说的比较笼统,要深入了解Python程序的执行过程,可以阅读这篇文章:[说说Python程序的执行过程](http://www.cnblogs.com/kym/archive/2012/05/14/2498728.html) -总之,有了.pyc文件后,每次运行,就不需要从新让解释器来编译.py文件了,除非.py文件修改了。这样,python运行的就是那个编译好了的.pyc文件。 +总之,有了.pyc文件后,每次运行,就不需要从新让解释器来编译.py文件了,除非.py文件修改了。这样,Python运行的就是那个编译好了的.pyc文件。 是否还记得,我们在前面写有关程序,然后执行,常常要用到`if __name__ == "__main__"`。那时我们写的.py文件是来执行的,这时我们同样写了.py文件,是作为模块引入的。这就得深入探究一下,同样是.py文件,它是怎么知道是被当做程序执行还是被当做模块引入? @@ -115,7 +117,7 @@ python不是一个封闭的体系,是一个开放系统。开放系统的最 ##模块的位置 -为了让我们自己写的模块能够被python解释器知道,需要用`sys.path.append("~/Documents/VBS/StarterLearningPython/2code/pm.py")`。其实,在python中,所有模块都被加入到了sys.path里面了。用下面的方法可以看到模块所在位置: +为了让我们自己写的模块能够被Python解释器知道,需要用`sys.path.append("~/Documents/VBS/StarterLearningPython/2code/pm.py")`。其实,在Python中,所有模块都被加入到了sys.path里面了。用下面的方法可以看到模块所在位置: >>> import sys >>> import pprint @@ -155,13 +157,13 @@ python不是一个封闭的体系,是一个开放系统。开放系统的最 ##PYTHONPATH环境变量 -将模块文件放到指定位置是一种不错的方法。当程序员都喜欢自由,能不能放到别处呢?当然能,用`sys.path.append()`就是不管把文件放哪里,都可以把其位置告诉python解释器。但是,这种方法不是很常用。因为它也有麻烦的地方,比如在交互模式下,如果关闭了,然后再开启,还得从新告知。 +将模块文件放到指定位置是一种不错的方法。当程序员都喜欢自由,能不能放到别处呢?当然能,用`sys.path.append()`就是不管把文件放哪里,都可以把其位置告诉Python解释器。但是,这种方法不是很常用。因为它也有麻烦的地方,比如在交互模式下,如果关闭了,然后再开启,还得从新告知。 比较常用的告知方法是设置PYTHONPATH环境变量。 >环境变量,不同操作系统的设置方法略有差异。读者可以根据自己的操作系统,到网上搜索设置方法。 -我以ubuntu为例,建立一个python的目录,然后将我自己写的.py文件放到这里,并设置环境变量。 +我以Ubuntu为例,建立一个Python的目录,然后将我自己写的.py文件放到这里,并设置环境变量。 :~$ mkdir python :~$ cd python @@ -186,6 +188,12 @@ python不是一个封闭的体系,是一个开放系统。开放系统的最 如此,就完成了告知过程。 +##模块中的'__all__' + +上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为21901.py +http://python.jobbole.com/81187/ + + ##`__init__.py`方法 `__init__.py`是一个空文件,将它放在某个目录中,就可以将该目录中的其它.py文件作为模块被引用。这个具体应用参见[用tornado做网站(2)](./304.md) diff --git a/2code/21901.py b/2code/21901.py new file mode 100644 index 0000000..d427009 --- /dev/null +++ b/2code/21901.py @@ -0,0 +1,11 @@ +# /usr/bin/env python +# coding:utf-8 + +public_variable = "Hello, I am a public variable." +_private_variable = "Hi, I am a private variable." + +def public_teacher(): + print "I am a public teacher, I am from JP." + +def _private_teacher(): + print "I am a private teacher, I am from CN." From 7edf24b3e09fa4b20f4b77913c400fbde11f73ea Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 3 Nov 2015 19:02:05 +0800 Subject: [PATCH 004/288] module and package --- 219.md | 49 ++++++++++++++++++++++++++++++++++++-- 2code/{21901.py => pp.py} | 2 ++ 2code/pp.pyc | Bin 0 -> 563 bytes 3 files changed, 49 insertions(+), 2 deletions(-) rename 2code/{21901.py => pp.py} (84%) create mode 100644 2code/pp.pyc diff --git a/219.md b/219.md index c1298e4..f66f58f 100644 --- a/219.md +++ b/219.md @@ -191,7 +191,52 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 ##模块中的'__all__' 上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为21901.py -http://python.jobbole.com/81187/ +http://python.jobbole.com/81187/mZ +>>> import sys +>>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") +>>> import pp +>>> pp.public_variable +'Hello, I am a public variable.' +>>> pp._private_variable +'Hi, I am a private variable.' +>>> from pp import * +>>> _private_variable +Traceback (most recent call last): + File "", line 1, in + NameError: name '_private_variable' is not defined + >>> public_variable + 'Hello, I am a public variable.' + >>> public_teacher() + I am a public teacher, I am from JP. + >>> _private_teacher() + Traceback (most recent call last): + File "", line 1, in + NameError: name '_private_teacher' is not defined + >>> import pp + >>> pp.public_teacher() + I am a public teacher, I am from JP. + >>> pp._private_teacher() + I am a private teacher, I am from CN. + +>>> import sys +>>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") +>>> from pp import * +>>> dir(pp) +Traceback (most recent call last): + File "", line 1, in + NameError: name 'pp' is not defined + >>> public_variable + Traceback (most recent call last): + File "", line 1, in + NameError: name 'public_variable' is not defined + >>> _private_variable + 'Hi, I am a private variable.' + >>> public_teacher() + I am a public teacher, I am from JP. + >>> _private_teacher() + Traceback (most recent call last): + File "", line 1, in + NameError: name '_private_teacher' is not defined ##`__init__.py`方法 @@ -202,4 +247,4 @@ http://python.jobbole.com/81187/ [总目录](./index.md)   |   [上节:错误和异常(3)](./218.md)   |   [下节:标准库(1)](./220.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/2code/21901.py b/2code/pp.py similarity index 84% rename from 2code/21901.py rename to 2code/pp.py index d427009..0ea8c07 100644 --- a/2code/21901.py +++ b/2code/pp.py @@ -1,6 +1,8 @@ # /usr/bin/env python # coding:utf-8 +__all__ = ['_private_variable', 'public_teacher'] + public_variable = "Hello, I am a public variable." _private_variable = "Hi, I am a private variable." diff --git a/2code/pp.pyc b/2code/pp.pyc new file mode 100644 index 0000000000000000000000000000000000000000..9e3f7c05eb573d6e79663f3999128734d1f88491 GIT binary patch literal 563 zcma)3O-sW-6nyz;v{JwBA~`7JAUS&w5qhwC2$F(_T$XKi)xd^??6%p&?6C0;gbmIji?An3|2)* zBBE)sgCph`z}l`_a3k4*cNL#0X%4`)^O>qjW+X3PWT#I-O{7xIMSK_YI_B|O5ch{t zePSimc7N@<6>L&_5RS3*5P-Ze gC|b>t+Zlcx)$C&Ts&2$w$?Ficw#3MfyvQF0OBn`jGXMYp literal 0 HcmV?d00001 From fec134ed9660d384dc696888516fd6755a6473b2 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 3 Nov 2015 19:51:36 +0800 Subject: [PATCH 005/288] module and package --- 219.md | 161 +++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 110 insertions(+), 51 deletions(-) diff --git a/219.md b/219.md index f66f58f..39288ce 100644 --- a/219.md +++ b/219.md @@ -188,60 +188,119 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 如此,就完成了告知过程。 -##模块中的'__all__' - -上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为21901.py -http://python.jobbole.com/81187/mZ ->>> import sys ->>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") ->>> import pp ->>> pp.public_variable -'Hello, I am a public variable.' ->>> pp._private_variable -'Hi, I am a private variable.' ->>> from pp import * ->>> _private_variable -Traceback (most recent call last): +##'__all__'在模块中的作用 + +上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为pp.py + + # /usr/bin/env python + # coding:utf-8 + + public_variable = "Hello, I am a public variable." + _private_variable = "Hi, I am a private variable." + + def public_teacher(): + print "I am a public teacher, I am from JP." + + def _private_teacher(): + print "I am a private teacher, I am from CN." + +接下来就是熟悉的操作了,进入到交互模式中。pp.py这个文件就是一个模块,这个模块中包含了变量和函数。 + + >>> import sys + >>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") + >>> import pp + >>> from pp import * + >>> public_variable + 'Hello, I am a public variable.' + >>> _private_variable + Traceback (most recent call last): File "", line 1, in - NameError: name '_private_variable' is not defined - >>> public_variable - 'Hello, I am a public variable.' - >>> public_teacher() + NameError: name '_private_variable' is not defined + +变量`public_variable`能够被使用,但是另外一个变量`_private_variable`不能被调用,先观察一下两者的区别,后者是以单下划线开头的,这样的是私有变量。而`from pp import *`的含义是“希望能访问模块(pp)中有权限访问的全部名称”,那些被视为私有的变量或者函数或者类,当然就没有权限被访问了。 + +再如: + + >>> public_teacher() I am a public teacher, I am from JP. - >>> _private_teacher() - Traceback (most recent call last): - File "", line 1, in - NameError: name '_private_teacher' is not defined - >>> import pp - >>> pp.public_teacher() - I am a public teacher, I am from JP. - >>> pp._private_teacher() - I am a private teacher, I am from CN. - ->>> import sys ->>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") ->>> from pp import * ->>> dir(pp) -Traceback (most recent call last): + >>> _private_teacher() + Traceback (most recent call last): + File "", line 1, in + NameError: name '_private_teacher' is not defined + +但也不是绝对的,如果要访问具有私有性质的东西,可以这样做啦。 + + >>> import pp + >>> pp._private_teacher() + I am a private teacher, I am from CN. + >>> pp._private_variable + 'Hi, I am a private variable.' + +下面再对pp.py文件改写,增加一点东西,注意观察。 + + # /usr/bin/env python + # coding:utf-8 + + __all__ = ['_private_variable', 'public_teacher'] + + public_variable = "Hello, I am a public variable." + _private_variable = "Hi, I am a private variable." + + def public_teacher(): + print "I am a public teacher, I am from JP." + + def _private_teacher(): + print "I am a private teacher, I am from CN." + +在修改之后的pp.py中,增加了`__all__`以它的值,在列表中包含了一个私有变量的名字和一个函数的名字。这是在告诉引用本模块的解释器,这两个东西是有权限被访问的,而且只有这两个东西。 + + >>> import sys + >>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") + >>> from pp import * + >>> _private_variable + 'Hi, I am a private variable.' + +果然,曾经不能被访问的私有变量,现在能够访问了。 + + >>> public_variable + Traceback (most recent call last): File "", line 1, in - NameError: name 'pp' is not defined - >>> public_variable - Traceback (most recent call last): - File "", line 1, in - NameError: name 'public_variable' is not defined - >>> _private_variable - 'Hi, I am a private variable.' - >>> public_teacher() - I am a public teacher, I am from JP. - >>> _private_teacher() - Traceback (most recent call last): - File "", line 1, in - NameError: name '_private_teacher' is not defined - - -##`__init__.py`方法 - -`__init__.py`是一个空文件,将它放在某个目录中,就可以将该目录中的其它.py文件作为模块被引用。这个具体应用参见[用tornado做网站(2)](./304.md) + NameError: name 'public_variable' is not defined + +因为这个变量没有在`__all__`的值中,虽然以前曾经被访问到过,但是现在就不行了。 + + >>> public_teacher() + I am a public teacher, I am from JP. + >>> _private_teacher() + Traceback (most recent call last): + File "", line 1, in + NameError: name '_private_teacher' is not defined + +这只不过是再次说明前面的结论罢了。当然,如果以`import pp`引入模块,再用`pp._private_teacher`的方式是一样有效的。 + +##包或者库 + +顾名思义,包或者库,应该是比“模块”大的。也的确如此,一般来讲,一个“包”里面会有多个模块,当然,“库”是一个更大的概念了,比如Python标准库中的每个库,都可以看成有好多个包,每个包,都有若干个模块。或许这个概念不是很明确,这么理解不会耽误你使用。 + +对于一个包,因为它是由多个模块组成,也就是说是多个`.py`的文件,那么这个所谓“包”也就是我们熟悉的一个目录罢了。现在就需要解决如何引用某个目录中的模块问题了。解决方法就是在该目录中放一个`__init__.py`文件。`__init__.py`是一个空文件,将它放在某个目录中,就可以将该目录中的其它.py文件作为模块被引用。 + +例如,我建立了一个目录,名曰:package_qi,里面依次放了pm.py和pp.py两个文件,然后建立一个空文件`__init__.py` + +接下来,我需要导入这个包(package_qi)中的模块。 + +下面这种方法,是很清晰明了的。 + + >>> import package_qi.pm + >>> package_qi.pm.lang() + 'python' + +另外一种方法,貌似简短,但如果多了,恐怕有点难以分辨了。 + + >>> from package_qi import pm + >>> pm.lang() + 'python' + +在后续制作网站的实战中,还会经常用到这种方式,届时会了解更多。 ------ From 859998c214089fbc007ccbe21881232ce9828fb0 Mon Sep 17 00:00:00 2001 From: wdyggh Date: Thu, 5 Nov 2015 16:44:51 +0900 Subject: [PATCH 006/288] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A0=87=E9=A2=98?= =?UTF-8?q?=E4=B8=BA=20H1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 230.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/230.md b/230.md index 4e5341c..de1810c 100644 --- a/230.md +++ b/230.md @@ -1,6 +1,6 @@ >我们在你们那里的时候,曾吩咐你们说,若有人不肯作工,就不可吃饭。因我们听说,在你们中间有人不按规矩而行,什么工都不作,反倒专管闲事。我们靠主耶稣基督,吩咐、劝解这样的人,要安静作工,吃自己的饭。(2 THESSALONIANS 3:10-12) -##mysql数据库(1) +#MySQL数据库(1) 尽管用文件形式将数据保存到磁盘,已经是一种不错的方式。但是,人们还是发明了更具有格式化特点,并且写入和读取更快速便捷的东西——数据库(如果阅读港台的资料,它们称之为“资料库”)。维基百科对数据库有比较详细的说明: From 312582c72b488be1f5d066d3511d18f6a472a550 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 26 Nov 2015 16:19:59 +0800 Subject: [PATCH 007/288] argument --- 202.md | 55 +++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 35 insertions(+), 20 deletions(-) diff --git a/202.md b/202.md index 2d1b468..a52bbe4 100644 --- a/202.md +++ b/202.md @@ -2,15 +2,13 @@ #函数(2) -在上一节中,已经明确了函数的基本结构和初步的调用方法。但是,上一节中写的函数,还有点缺憾,不知道读者是否觉察到了。我把结果是用`print`语句打印出来的。这是实际编程中广泛使用的吗?肯定不是。因为函数在编程中,起到一段具有抽象价值的代码作用,一般情况下,用它得到一个结果,这个结果要用在其它的运算中。所以,不能仅仅局限在把某个结果打印出来。所以,函数必须返回一个结果。 - -结论:函数要有返回值,也必须有返回值。 +在上一节中,已经明确了函数的基本结构和初步的调用方法。但是,上一节中写的函数,还有点缺憾,不知道读者是否觉察到了。我把结果是用`print`语句打印出来的。这是实际编程中广泛使用的吗?肯定不是。在程序中,函数是一段具有抽象作用的代码。一般情况下,通过它可以得到某个结果,这个结果有一个专有名字,叫做“返回值”。返回值会继续被用到程序中的某个地方。 ##返回值 -为了能够说明清楚,先编写一个函数。还记得斐波那契数列吗?我打算定义一个能够得到斐波那契数列的函数,从而实现可以实现任意的数列。你先想想,要怎么写? +为了能够说明清楚,先编写一个函数。还记得斐波那契数列吗?忘了没关系,回头看看或者google。不过,在你要实施google或者顺延着向下阅读之前,最好先自己尝试一下,能不能写一个斐波那契数列的函数。 -参考代码: +我这里提供一段参考代码(既然是参考,显然不是唯一正确答案): #!/usr/bin/env python # coding=utf-8 @@ -25,7 +23,7 @@ lst = fibs(10) print lst -把含有这些代码的文件保存为名为20202.py的文件。在这个文件中,首先定义了一个函数,名字叫做fibs,其参数是输入一个整数。在后面,通过`lst = fibs(10)`调用这个函数。这里参数给的是10,就意味着要得到n=10的斐波那契数列。 +把含有这些代码的文件保存为名为20202.py的文件。在这个文件中,首先定义了一个函数,名字叫做fibs,其参数是输入一个整数(但是,你并没有看到我在哪里做了对这个要输入的值的约束,就意味着,你输入非整数,甚至字符串,也使可以的,只是结果会不同,不妨试试吧),然后通过`lst = fibs(10)`调用这个函数。这里参数给的是10,就意味着要得到n=10的斐波那契数列。 运行后打印数列: @@ -34,9 +32,9 @@ 当然,如果要换n的值,只需要在调用函数的时候,修改一下参数即可。这才体现出函数的优势呢。 -观察fibs函数,最后有一个语句`return result`,意思是将变量result的值返回。返回给谁呢?一般这类函数调用的时候,要通过类似`lst = fibs(10)`的语句,那么返回的那个值,就被变量lst贴上了,通过lst就能得到该值。如果没有这个赋值语句,虽然函数照样返回值,但是它飘忽在内存中,我们无法得到,并且最终还被当做垃圾被python回收了。 +观察fibs函数,最后有一个语句`return result`,意思是将变量result的值返回。返回给谁呢?这要看我们当前在什么位置调用该函数了。在上面的程序中,以`lst = fibs(10)`语句的方式,调用了函数,那么函数就将值返回到当前状态,并记录在内存中,然后把它赋值给变量lst。如果没有这个赋值语句,函数照样返回值,但是它飘忽在内存中,我们无法得到,并且最终还被当做垃圾被python回收了。 -注意:上面的函数之返回了一个返回值(是一个列表),有时候需要返回多个,是以元组形式返回。 +注意:上面的函数只返回了一个返回值(是一个列表),有时候需要返回多个,是以元组形式返回。 >>> def my_fun(): ... return 1,2,3 @@ -45,7 +43,7 @@ >>> a (1, 2, 3) -有的函数,没有renturn,一样执行完毕,就算也干了某些活儿吧。事实上,不是没有返回值,也有,只不过是None。比如这样一个函数: +有的函数,没有return,一样执行完毕,就算也干了某些活儿吧。事实上,不是没有返回值,也有,只不过是None。比如这样一个函数: >>> def my_fun(): ... print "I am doing somthin." @@ -63,12 +61,12 @@ >>> print a None -这就是这类只干活儿,没有`return`的函数,返回给变量的是一个`None`。这种模样的函数,通常不用上述方式调用,而采用下面的方式,因为他们返回的是None,似乎这个返回值利用价值不高,于是就不用找一个变量来接受返回值了。 +这就是只干活儿,没有`return`的函数,事实上返回的是一个`None`。这种模样的函数,通常不用上述方式调用,而采用下面的方式,因为他们返回的是None,似乎这个返回值利用价值不高,于是就不用找一个变量来接受返回值了。 >>> my_fun() I am doing somthin. -特别注意那个return,它还有一个作用。观察下面的函数和执行结果,看看能不能发现它的另外一个作用。 +特别注意那个return,它还有一个作用,请先观察下面的函数和执行结果,并试图找出其作用。 >>> def my_fun(): ... print "I am coding." @@ -78,13 +76,13 @@ >>> my_fun() I am coding. -看出玄机了吗?在函数中,本来有两个print语句,但是中间插入了一个return,仅仅是一个return。当执行函数的时候,只执行了第一个print语句,第二个并没有执行。这是因为第一个之后,遇到了return,它告诉函数要返回,即中断函数体内的流程,离开这个函数。结果第二个print就没有被执行。所以,return在这里就有了一个作用,结束正在执行的函数。有点类似循环中的break的作用。 +看出玄机了吗?在函数中,本来有两个print语句,但是中间插入了一个return,仅仅是一个return。当执行函数的时候,只执行了第一个print语句,第二个并没有执行。这是因为第一个之后,遇到了return,它告诉函数要返回,即中断函数体内的流程,离开这个函数。结果第二个print就没有被执行。所以,return在这里就有了一个作用,结束正在执行的函数,有点类似循环中的break的作用。 ##函数中的文档 -“程序在大多数情况下是给人看的,只是偶尔被机器执行以下。”所以,写程序必须要写注释。前面已经有过说明,如果用`#`开始,python就不执行那句(python看不到它,但是人能看到),它就作为注释存在。 +“程序在大多数情况下是给人看的,只是偶尔被机器执行。”所以,写程序必须要写注释。前面已经有过说明,如果用`#`开始,python就不执行那句(python看不到它,但是人能看到),它就作为注释存在。 -除了这样的一句之外,一般在每个函数名字的下面,还要写一写文档,以此来说明这个函数的用途。 +除了这样的一句之外,一般在每个函数名字的下面,还要比较多的说明,这个被称为“文档”,在文档中主要是说明这个函数的用途。 #!/usr/bin/env python # coding=utf-8 @@ -130,13 +128,13 @@ >在定义函数的时候(def来定义函数,称为def语句),函数名后面的括号里如果有变量,它们通常被称为“形参”。调用函数的时候,给函数提供的值叫做“实参”,或者“参数”。 -其实,根本不用区分这个,因为没有什么意义,只不过类似孔乙己先生知道茴香豆的茴字有多少种写法罢了。但是,我居然碰到过某公司面试官问这种问题。 +其实,根本不用区分这个,因为没有什么意义,只不过类似孔乙己先生知道茴香豆的茴字有多少种写法罢了。 -**在本教程中,把那个所谓实参,就称之为值(或者数据、或者对象),形参就笼统称之为参数(似乎不很合理,但是接近数学概念)。** +**在本教程中,把那个所谓实参,就称之为值(或者数据、或者对象),形参就笼统称之为参数(似乎不很合理,但是接近数学概念)。**随着你敲代码的实践越多,或许会对各种参数概念有深入理解。 ###比较参数和变量 -参数问题就算说明白了,糊涂就糊涂吧,也没有什么关系。不过,对于变量和参数,这两个就不能算糊涂账了。因为它容易让人糊涂了。 +在不同的参数名称面前,糊涂也罢、明白也罢,对写程序的干扰不大。不过,对于变量和参数,这两个就不能算糊涂账了。不过它们的确容易让把人搞糊涂了。 在数学的函数中`y = 3x + 2`,那个x叫做参数,也可以叫做变量。但是,在编程语言的函数中,与此有异。 @@ -176,9 +174,26 @@ >>> add(3) #把上面的过程合并了 13 -至此,看官是否清楚了一点点。当然,我所表述不正确之处或者理解错误之处,也请看官不吝赐教,小可作揖感谢。 +至此,是否清楚了一点点。当然,我所表述不正确之处或者理解错误之处,请不吝赐教,小可作揖感谢。 + +其实没有那么复杂。关键要理解函数名括号后面的东东(管它什么参呢)的作用是传递值。所以,那个参数的作用本质上就是一个“占位符”,当调用一个函数的时候,并不是赋值了一份参数的值来替换占位符,比如`add(x)`,并没有用3来替换原来的占位符,而是把占位符指向了变量,进而指向了对象。换个角度说,就是通过一连串的接力动作,把对象传给了函数。这样说来,你就可以在函数内部改变那个对象了。 + + >>> def foo(lst): + ... lst.append(99) + ... return lst + ... + >>> x = [1, 3, 5] + >>> y = foo(x) + >>> y + [1, 3, 5, 99] + >>> x + [1, 3, 5, 99] + >>> id(x) + 3075464588L + >>> id(y) + 3075464588L -其实没有那么复杂。关键要理解函数名括号后面的东东(管它什么参呢)的作用是传递值。 +结合前面学习过的列表能够被原地修改知识,加上刚才说的参数特点,你是不是能理解上面的操作呢? ##全局变量和局部变量 @@ -260,4 +275,4 @@ [总目录](./index.md)   |   [上节:函数(1)](./201.md)   |   [下节:函数(3)](./203.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 27c8120ac12795e320b51779b8bafb3ad5d23ffe Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 7 Dec 2015 16:20:05 +0800 Subject: [PATCH 008/288] env python --- 219.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/219.md b/219.md index 39288ce..3791cfd 100644 --- a/219.md +++ b/219.md @@ -175,7 +175,11 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 vim /etc/profile -提醒要用root权限,在打开的文件最后增加`export PATH = /home/qw/python:$PAT`,然后保存退出即可。 +提醒要用root权限,在打开的文件最后增加`export PYTHONPATH = “$PYTHONPATH:/home/qw/python”`,然后保存退出即可。 + +环境变量更改之后,用户下次登录时生效,如果想立刻生效,则要执行下面的语句(此处感谢[Hsinwe](https://github.com/Hsinwe)朋友的指正): + + $ source /etc/profile 注意,我是在`~/python`目录下输入`python`,进入到交互模式: From 9cf5d51f5426e399209325c2902698bb459b9678 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 8 Dec 2015 11:09:40 +0800 Subject: [PATCH 009/288] import module --- 219.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/219.md b/219.md index 3791cfd..397b09f 100644 --- a/219.md +++ b/219.md @@ -192,6 +192,8 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 如此,就完成了告知过程。 +但是,问题并没有结束。正如[Hsinwe](https://github.com/Hsinwe)所指出的那样,我上面的操作使进入了模块所在的目录,如果进入别的目录呢?能不能正常引入呢?这是一个非常好的问题,恭请各位读者来试一试。 + ##'__all__'在模块中的作用 上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为pp.py From 23b140cc7be82dc6ce0329d930ad406c874b738a Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 21 Dec 2015 16:45:42 +0800 Subject: [PATCH 010/288] modify --- 109.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/109.md b/109.md index ed758f9..623a652 100644 --- a/109.md +++ b/109.md @@ -46,7 +46,7 @@ %E |指数 (基底写为E) %f |浮点数 %F |浮点数,与上相同 -%g |指数(e)或浮点数 (根据显示长度) +%g |指数(e)或浮点数 (根据显示长度) %G |指数(E)或浮点数 (根据显示长度) 看例子: @@ -67,7 +67,7 @@ >>> print "Today's temperature is %+.2f" % 12.235 Today's temperature is +12.23 -注意,上面的例子中,没有实现四舍五入的操作。只是截取。 +注意,上面的例子中,没有实现四舍五入的操作,貌似只是截取。其实,我在这里用的那个12.235的确有点特殊化了。你不妨修改为别的数,试一试,看看是不是四舍五入了。至于这个数的特殊性,如果你不能理解,就请回头找一找本教程中关于十进制与二进制数转换的讲述。 关于类似的操作,还有很多变化,比如输出格式要宽度是多少等等。如果看官在编程中遇到了,可以到网上查找。我这里给一个参考图示,也是从网上抄来的。 From a01ac18733149cc8220f50f06f3bfc7ea4838e7a Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 23 Dec 2015 18:42:58 +0800 Subject: [PATCH 011/288] about double _ --- 213.md | 8 ++++++-- README.md | 2 +- index.md | 2 +- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/213.md b/213.md index 2476c76..3cda449 100644 --- a/213.md +++ b/213.md @@ -2,7 +2,7 @@ #特殊方法(2) -书接上回,不管是实例还是类,都用`__dict__`来存储属性和方法,可以笼统地把属性和方法称为成员或者特性,用一句笼统的话说,就是`__dict__`存储对象成员。但,有时候访问的对象成员没有存在其中,就是这样: +书接上回,不管是实例还是类,都用`__dict__`来存储属性和方法,可以笼统地把属性和方法称为成员或者特性,一句话概括,就是`__dict__`存储对象成员。但,有时候访问的对象成员没有存在其中,就是这样: >>> class A(object): ... pass @@ -21,7 +21,7 @@ ##`__getattr__`、`__setattr__`和其它类似方法 -还是用上面的例子,如果访问`a.x`,它不存在,那么就要转向到某个操作。我们把这种情况称之为“拦截”。就好像“寻隐者不遇”,却被童子“遥指杏花村”,将你“拦截”了。在python中,有一些方法就具有这种“拦截”能力。 +还是用上面的例子,如果访问`a.x`,它不存在,那么就要转向到某个操作。我们把这种情况称之为“拦截”。就好像“寻隐者不遇”,却被童子“遥指杏花村”,将你“拦截”了。在Python中,有一些方法就具有这种“拦截”能力。 - `__setattr__(self,name,value)`:如果要给name赋值,就调用这个方法。 - `__getattr__(self,name)`:如果name被访问,同时它不存在的时候,此方法被调用。 @@ -225,6 +225,10 @@ 这就是通过实例查找特性的顺序。 +##双下划线 + +至此,是否注意到,我们使用很多以双下划线开头和结尾的方法名,比如`__dict__`,`__init__`个。在Python中,用这种方法表示特殊的方法名,当然,这是一个惯例,之所以这样做,主要是确保这些特殊的方法名不会跟你自己所定义的名称冲突,我们自己定义名称的时候,是绝少用双划线开头和结尾的。如果你需要重写这些方法,当然是可以的,具体参看前文关于继承的讲述。 + ------ [总目录](./index.md)   |   [上节:特殊方法(1)](./212.md)   |   [下节:迭代器](./214.md) diff --git a/README.md b/README.md index 6d56bbc..aeec056 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ 5. [类(5)](./210.md)==>静态方法和类方法,两者的区别,类的文档 6. [多态和封装](./211.md)==>多态,封装和私有化 7. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` -8. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序 +8. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` 10. [生成器](./215.md)==>生成器定义,yield,生成器方法 11. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 diff --git a/index.md b/index.md index b0a55a0..53ad852 100644 --- a/index.md +++ b/index.md @@ -68,7 +68,7 @@ 5. [类(5)](./210.md)==>静态方法和类方法,两者的区别,类的文档 6. [多态和封装](./211.md)==>多态,封装和私有化 7. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` -8. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序 +8. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` 10. [生成器](./215.md)==>生成器定义,yield,生成器方法 11. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 From d935e8ff1d07ef8b08b477845c25b480f5ca9734 Mon Sep 17 00:00:00 2001 From: jeffery chen fan Date: Sun, 3 Jan 2016 16:46:06 +0800 Subject: [PATCH 012/288] fix typo --- 304.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/304.md b/304.md index cb41c08..191876a 100644 --- a/304.md +++ b/304.md @@ -135,7 +135,7 @@ 上面的代码主要实现获取表单中id值分别为username和password所输入的值,alert函数的功能是把值以弹出菜单的方式显示出来。 -##hanlers里面的程序 +##handlers里面的程序 是否还记得在上一节中,在url.py文件中,做了这样的设置: @@ -188,4 +188,4 @@ [总目录](./index.md)   |   [上节:用tornado做网站(1)](./303.md)   |   [下节:用tornado做网站(3)](./305.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 9357bcf463ae1f9cfcfc8fbd73672dc42c004d26 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 13 Jan 2016 17:43:22 +0800 Subject: [PATCH 013/288] dict pop --- 117.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/117.md b/117.md index c10dd6d..a071471 100644 --- a/117.md +++ b/117.md @@ -317,7 +317,7 @@ get的含义是: D.pop(k[,d]) -> v, remove specified key and return the corresponding value. If key is not found, d is returned if given, otherwise KeyError is raised -`D.pop(k[,d])`是以字典的键为参数,删除指定键的键值对,当然,如果输入对应的值也可以,那个是可选的。 +`D.pop(k[,d])`是以字典的键为参数,删除指定键的键值对。 >>> dd {'lang': 'python', 'web': 'www.itdiffer.com', 'name': 'qiwsir'} @@ -343,6 +343,8 @@ get的含义是: File "", line 1, in KeyError: 'name' +`pop`的参数,可以是两个,上面的例子中只写了一个。如果写两个,那么就先检查k是不是存在于字典中的键,如果是,就返回它所对应的值,如果不是,就返回参数中的第二个,当然,如果不写第二个参数,就会如同上面举例一样报错。 + 有意思的是`D.popitem()`倒是跟`list.pop()`有相似之处,不用写参数(list.pop是可以不写参数),但是,`D.popitem()`不是删除最后一个,前面已经交代过了,dict没有顺序,也就没有最后和最先了,它是随机删除一个,并将所删除的返回。 popitem(...) From f6eaf5634da66a90c1d70a5ada5f69c5b52baded Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 18 Jan 2016 15:12:32 +0800 Subject: [PATCH 014/288] set update --- 118.md | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/118.md b/118.md index 688f64b..16f15cf 100644 --- a/118.md +++ b/118.md @@ -177,6 +177,17 @@ set也有一点list的特点:有一种集合可以原处修改. >>> s2 #s2的未变 set(['github', 'qiwsir']) +如果仅仅是这样的操作,容易误以为`update`方法的参数只能是集合。非也。看文档中的描述,这个方法的作用是用原有的集合自身和其它的什么东西构成的新集合更新原来的集合。这句话有点长,可以多读一遍。分解开来,可以理解为:others是指的作为参数的不可变对象,将它和原来的集合组成新的集合,用这个新集合替代原来的集合。举例: + + >>> s2.update("goo") + >>> s2 + set(['github', 'o', 'g', 'qiwsir']) + >>> s2.update((2,3)) + >>> s2 + set([2, 3, 'g', 'o', 'github', 'qiwsir']) + +所以,文档的寓意还是比较深刻的。 + ###pop, remove, discard, clear >>> help(set.pop) From 944e1be38fcb6988d4cb9ca39d56ac01f71c5ae0 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 29 Jan 2016 15:01:02 +0800 Subject: [PATCH 015/288] if --- 120.md | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/120.md b/120.md index 4712d03..ab48ddf 100644 --- a/120.md +++ b/120.md @@ -158,10 +158,7 @@ or,翻译为“或”运算。在A or B中,它是这么运算的: if A==True: return True else: - if B==True: - return True - else if B==False: - return False + return bool(B) 上面这段算是伪代码啦。所谓伪代码,就是不是真正的代码,无法运行。但是,伪代码也有用途,就是能够以类似代码的方式表达一种计算过程。 @@ -170,10 +167,7 @@ or,翻译为“或”运算。在A or B中,它是这么运算的: if A==True: #如果A的值是True return True #返回True,表达式最终结果是True else: #否则,也就是A的值不是True - if B==True: #看B的值,然后就返回B的值做为最终结果。 - return True - else if B==False: - return False + return bool(B) #看B的值,然后就返回B的值做为最终结果。 举例,根据上面的运算过程,分析一下下面的例子,是不是与运算结果一致? From c0803618b67361e3e1da2439667db5f77763643b Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 2 Feb 2016 17:53:19 +0800 Subject: [PATCH 016/288] difference about py2 and py3 --- README.md | 3 + index.md | 1 + n005.md | 607 ++++++++++++++++++++++++++++++++++++++++++++ nimages/n005-01.png | Bin 0 -> 111763 bytes 4 files changed, 611 insertions(+) create mode 100644 n005.md create mode 100644 nimages/n005-01.png diff --git a/README.md b/README.md index aeec056..361f64f 100644 --- a/README.md +++ b/README.md @@ -128,3 +128,6 @@ 1. [如何成为python高手](./n001.md) 2. [ASCII、Unicode、GBK和UTF-8字符编码的区别联系](./n002.md) +3. [大数据全栈式开发语言 – Python](./n003.md) +4. [机器学习编程语言之争,Python夺魁](./n004.md) +5. [Python 2.7.x 和 3.x 版本的重要区别](./n005.md) diff --git a/index.md b/index.md index 53ad852..223b767 100644 --- a/index.md +++ b/index.md @@ -130,3 +130,4 @@ 2. [ASCII、Unicode、GBK和UTF-8字符编码的区别联系](./n002.md) 3. [大数据全栈式开发语言 – Python](./n003.md) 4. [机器学习编程语言之争,Python夺魁](./n004.md) +5. [Python 2.7.x 和 3.x 版本的重要区别](./n005.md) \ No newline at end of file diff --git a/n005.md b/n005.md new file mode 100644 index 0000000..71fa9d5 --- /dev/null +++ b/n005.md @@ -0,0 +1,607 @@ +#Python2.7.x和3.x版本的重要区别 + +很多刚刚学习python的朋友,都纠结于目前Python的两个版本,虽然我已经对此进行了阐述(请阅读[《Python安装》](https://github.com/qiwsir/StarterLearningPython/blob/master/03.md)),但是,能够认真阅读的人不多。很多人是一目十行,看个大概罢了,重要观点往往忽视。 + +这里我选取网上一文章,该文讲述了一些具体的区别。供读者参考。 + +文章来源:http://blog.jobbole.com/80006/ + +许多Python初学者都会问:我应该学习哪个版本的Python。对于这个问题,我的回答通常是“先选择一个最适合你的Python教程,教程中使用哪个版本的Python,你就用那个版本。等学得差不多了,再来研究不同版本之间的差别”。 + +但如果想要用Python开发一个新项目,那么该如何选择Python版本呢?我可以负责任的说,大部分Python库都同时支持Python 2.7.x和3.x版本的,所以不论选择哪个版本都是可以的。但为了在使用Python时避开某些版本中一些常见的陷阱,或需要移植某个Python项目时,依然有必要了解一下Python两个常见版本之间的主要区别。 + +##'__future__'模块 + +Python3.x引入了一些与Python2不兼容的关键字和特性,在Python2中,可以通过内置的'__future__'模块导入这些新内容。如果你希望在Python2环境下写的代码也可以在Python 3.x中运行,那么建议使用'__future__'模块。例如,如果希望在Python2中拥有Python3.x的整数除法行为,可以通过下面的语句导入相应的模块。 + + from __future__ import division + +下表列出了'__future__'中其他可导入的特性: + +![](./nimages/n005-01.png) + +###示例: + + from platform import python_version + +##print函数 + +虽然print语法是Python3中一个很小的改动,且应该已经广为人知,但依然值得提一下:Python2中的print语句被Python3中的print()函数取代,这意味着在Python3中必须用括号将需要输出的对象括起来。 + +在Python2中使用额外的括号也是可以的。但反过来在Python3中想以Python2的形式不带括号调用print函数时,会触发'SyntaxError'。 + +###Python 2 + + print 'Python', python_version() + print 'Hello, World!' + print('Hello, World!') + print "text", ; print 'print more text on the same line' + + Python 2.7.6 + Hello, World! + Hello, World! + text print more text on the same line + +###Python 3 + + print('Python', python_version()) + print('Hello, World!') + + print("some text,", end="") + print(' print more text on the same line') + + Python 3.4.1 + Hello, World! + some text, print more text on the same line + + print 'Hello, World!' + + File "", line 1 + print 'Hello, World!' + ^ + SyntaxError: invalid syntax + +###注意: + +在Python中,带不带括号输出”Hello World”都很正常。但如果在圆括号中同时输出多个对象时,就会创建一个元组,这是因为在Python2中,print是一个语句,而不是函数调用。 + + print 'Python', python_version() + print('a', 'b') + print 'a', 'b' + + Python 2.7.7 + ('a', 'b') + a b + +##整数除法 + +由于人们常常会忽视Python3在整数除法上的改动(写错了也不会触发Syntax Error),所以在移植代码或在Python2中执行Python3的代码时,需要特别注意这个改动。 + +所以,我还是会在Python3的脚本中尝试用float(3)/2或 3/2.0代替3/2,以此来避免代码在Python2环境下可能导致的错误(或与之相反,在Python 2脚本中用'from __future__ import division'来使用Python3的除法)。 + +###Python 2 + + print 'Python', python_version() + print '3 / 2 =', 3 / 2 + print '3 // 2 =', 3 // 2 + print '3 / 2.0 =', 3 / 2.0 + print '3 // 2.0 =', 3 // 2.0 + + Python 2.7.6 + 3 / 2 = 1 + 3 // 2 = 1 + 3 / 2.0 = 1.5 + 3 // 2.0 = 1.0 + +###Python 3 + + print('Python', python_version()) + print('3 / 2 =', 3 / 2) + print('3 // 2 =', 3 // 2) + print('3 / 2.0 =', 3 / 2.0) + print('3 // 2.0 =', 3 // 2.0) + + Python 3.4.1 + 3 / 2 = 1.5 + 3 // 2 = 1 + 3 / 2.0 = 1.5 + 3 // 2.0 = 1.0 + +##Unicode + +Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成unicode类型,但没有byte类型。 + +而在Python3中,终于有了Unicode(utf-8)字符串,以及两个字节类:bytes和bytearrays。 + +###Python 2 + + print 'Python', python_version() + + Python 2.7.6 + + print type(unicode('this is like a python3 str type')) + + + + print type(b'byte type does not exist') + + + + print 'they are really' + b' the same' + + they are really the same + + print type(bytearray(b'bytearray oddly does exist though')) + + + +###Python 3 + + print('Python', python_version()) + print('strings are now utf-8 u03BCnicou0394é!') + + Python 3.4.1 + strings are now utf-8 μnicoΔé! + + print('Python', python_version(), end="") + print(' has', type(b' bytes for storing data')) + + Python 3.4.1 has + + print('and Python', python_version(), end="") + print(' also has', type(bytearray(b'bytearrays'))) + + and Python 3.4.1 also has + + 'note that we cannot add a string' + b'bytes for data' + + TypeError Traceback (most recent call last) + in () + ----> 1 'note that we cannot add a string' + b'bytes for data' + + TypeError: Can't convert 'bytes' object to str implicitly + +##xrange + +在Python2.x中,经常会用'xrange()'创建一个可迭代对象,通常出现在“for循环”或“列表/集合/字典推导式”中。 + +这种行为与生成器非常相似(如”惰性求值“),但这里的xrange-iterable无尽的,意味着可能在这个xrange上无限迭代。 + +由于xrange的“惰性求知“特性,如果只需迭代一次(如for循环中),range()通常比xrange()快一些。不过不建议在多次迭代中使用range(),因为range()每次都会在内存中重新生成一个列表。 + +在Python 3中,range()的实现方式与xrange()函数相同,所以就不存在专用的xrange()(在Python 3中使用xrange()会触发NameError)。 + + import timeit + + n = 10000 + def test_range(n): + return for i in range(n): + pass + + def test_xrange(n): + for i in xrange(n): + pass + +###Python 2 + + print 'Python', python_version() + + print 'ntiming range()' + %timeit test_range(n) + + print 'nntiming xrange()' + %timeit test_xrange(n) + + Python 2.7.6 + + timing range() + 1000 loops, best of 3: 433 µs per loop + + timing xrange() + 1000 loops, best of 3: 350 µs per loop + +###Python 3 + + print('Python', python_version()) + + print('ntiming range()') + %timeit test_range(n) + + Python 3.4.1 + + timing range() + 1000 loops, best of 3: 520 µs per loop + + print(xrange(10)) + + --------------------------------------------------------------------------- + NameError Traceback (most recent call last) + in () + ----> 1 print(xrange(10)) + + NameError: name 'xrange' is not defined + +##Python 3中的range对象中的'__contains__'方法 + +另一个值得一提的是,在Python 3.x中,range有了一个新的'__contains__'方法。'__contains__'方法可以有效的加快Python 3.x中整数和布尔型的“查找”速度。 + + x = 10000000 + def val_in_range(x, val): + return val in range(x) + + def val_in_xrange(x, val): + return val in xrange(x) + + print('Python', python_version()) + assert(val_in_range(x, x/2) == True) + assert(val_in_range(x, x//2) == True) + %timeit val_in_range(x, x/2) + %timeit val_in_range(x, x//2) + + Python 3.4.1 + 1 loops, best of 3: 742 ms per loop + 1000000 loops, best of 3: 1.19 µs per loop + +根据上面的timeit的结果,查找整数比查找浮点数要快大约6万倍。但由于Python 2.x中的range或xrange没有'__contains__'方法,所以在Python 2中的整数和浮点数的查找速度差别不大。 + + print 'Python', python_version() + + assert(val_in_xrange(x, x/2.0) == True) + assert(val_in_xrange(x, x/2) == True) + assert(val_in_range(x, x/2) == True) + assert(val_in_range(x, x//2) == True) + %timeit val_in_xrange(x, x/2.0) + %timeit val_in_xrange(x, x/2) + %timeit val_in_range(x, x/2.0) + %timeit val_in_range(x, x/2) + + Python 2.7.7 + 1 loops, best of 3: 285 ms per loop + 1 loops, best of 3: 179 ms per loop + 1 loops, best of 3: 658 ms per loop + 1 loops, best of 3: 556 ms per loop + +下面的代码证明了Python 2.x中没有'__contain__'方法: + + print('Python', python_version()) + range.__contains__ + + Python 3.4.1 + in () + 1 print 'Python', python_version() + ----> 2 range.__contains__ + + AttributeError: 'builtin_function_or_method' object has no attribute '__contains__' + + print('Python', python_version()) + xrange.__contains__ + + Python 2.7.7 + + --------------------------------------------------------------------------- + AttributeError Traceback (most recent call last) + in () + 1 print 'Python', python_version() + ----> 2 xrange.__contains__ + + AttributeError: type object 'xrange' has no attribute '__contains__' + +###关于Python 2中xrange()与Python 3中range()之间的速度差异的一点说明: + +有读者指出了Python 3中的range()和Python 2中xrange()执行速度有差异。由于这两者的实现方式相同,因此理论上执行速度应该也是相同的。这里的速度差别仅仅是因为Python 3的总体速度就比Python 2慢。 + + def test_while(): + i = 0 + while i < 20000: + i += 1 + return + + print('Python', python_version()) + %timeit test_while() + + Python 3.4.1 + %timeit test_while() + 100 loops, best of 3: 2.68 ms per loop + + print 'Python', python_version() + %timeit test_while() + + Python 2.7.6 + 1000 loops, best of 3: 1.72 ms per loop + +##触发异常 + +Python 2支持新旧两种异常触发语法,而Python 3只接受带括号的的语法(不然会触发SyntaxError): + +###Python 2 + + print 'Python', python_version() + + Python 2.7.6 + + raise IOError, "file error" + + --------------------------------------------------------------------------- + IOError Traceback (most recent call last) + in () + ----> 1 raise IOError, "file error" + + IOError: file error + + raise IOError("file error") + + --------------------------------------------------------------------------- + IOError Traceback (most recent call last) + in () + ----> 1 raise IOError("file error") + + IOError: file error + +###Python 3 + + print('Python', python_version()) + + Python 3.4.1 + + raise IOError, "file error" + + File "", line 1 + raise IOError, "file error" + ^ + SyntaxError: invalid syntax + The proper way to raise an exception in Python 3: + + print('Python', python_version()) + raise IOError("file error") + + Python 3.4.1 + + --------------------------------------------------------------------------- + OSError Traceback (most recent call last) + in () + 1 print('Python', python_version()) + ----> 2 raise IOError("file error") + + OSError: file error + +##异常处理 + +Python 3中的异常处理也发生了一点变化。在Python 3中必须使用“as”关键字。 + +###Python 2 + + print 'Python', python_version() + try: + let_us_cause_a_NameError + except NameError, err: + print err, '--> our error message' + + Python 2.7.6 + name 'let_us_cause_a_NameError' is not defined --> our error message + +###Python 3 + + print('Python', python_version()) + try: + let_us_cause_a_NameError + except NameError as err: + print(err, '--> our error message') + + Python 3.4.1 + name 'let_us_cause_a_NameError' is not defined --> our error message + +##next()函数和.next()方法 + +由于会经常用到next()(.next())函数(方法),所以还要提到另一个语法改动(实现方面也做了改动):在Python 2.7.5中,函数形式和方法形式都可以使用,而在Python 3中,只能使用next()函数(试图调用.next()方法会触发AttributeError)。 + +###Python 2 + + print 'Python', python_version() + my_generator = (letter for letter in 'abcdefg') + next(my_generator) + my_generator.next() + + Python 2.7.6 + 'b' + +###Python 3 + + print('Python', python_version()) + my_generator = (letter for letter in 'abcdefg') + next(my_generator) + + Python 3.4.1 + 'a' + + my_generator.next() + + --------------------------------------------------------------------------- + AttributeError Traceback (most recent call last) + in () + ----> 1 my_generator.next() + + AttributeError: 'generator' object has no attribute 'next' + +##For循环变量与全局命名空间泄漏 + +好消息是:在Python 3.x中,for循环中的变量不再会泄漏到全局命名空间中了! + +这是Python 3.x中做的一个改动,在“What’s New In Python 3.0”中有如下描述: + +“列表推导不再支持[... for var in item1, item2, ...]这样的语法,使用[... for var in (item1, item2, ...)]代替。还要注意列表推导有不同的语义:现在列表推导更接近list()构造器中的生成器表达式这样的语法糖,特别要注意的是,循环控制变量不会再泄漏到循环周围的空间中了。” + +###Python 2 + + print 'Python', python_version() + + i = 1 + print 'before: i =', i + + print 'comprehension: ', [i for i in range(5)] + + print 'after: i =', i + + Python 2.7.6 + before: i = 1 + comprehension: [0, 1, 2, 3, 4] + after: i = 4 + +###Python 3 + + print('Python', python_version()) + + i = 1 + print('before: i =', i) + + print('comprehension:', [i for i in range(5)]) + + print('after: i =', i) + + Python 3.4.1 + before: i = 1 + comprehension: [0, 1, 2, 3, 4] + after: i = 1 + +##比较无序类型 + +Python 3中另一个优秀的改动是,如果我们试图比较无序类型,会触发一个TypeError。 + +###Python 2 + + print 'Python', python_version() + print "[1, 2] > 'foo' = ", [1, 2] > 'foo' + print "(1, 2) > 'foo' = ", (1, 2) > 'foo' + print "[1, 2] > (1, 2) = ", [1, 2] > (1, 2) + + Python 2.7.6 + [1, 2] > 'foo' = False + (1, 2) > 'foo' = True + [1, 2] > (1, 2) = False + +###Python 3 + + print('Python', python_version()) + print("[1, 2] > 'foo' = ", [1, 2] > 'foo') + print("(1, 2) > 'foo' = ", (1, 2) > 'foo') + print("[1, 2] > (1, 2) = ", [1, 2] > (1, 2)) + + Python 3.4.1 + --------------------------------------------------------------------------- + TypeError Traceback (most recent call last) + in () + 1 print('Python', python_version()) + ----> 2 print("[1, 2] > 'foo' = ", [1, 2] > 'foo') + 3 print("(1, 2) > 'foo' = ", (1, 2) > 'foo') + 4 print("[1, 2] > (1, 2) = ", [1, 2] > (1, 2)) + TypeError: unorderable types: list() > str() + +##通过'input()'解析用户的输入 + +幸运的是,Python 3改进了input()函数,这样该函数就会总是将用户的输入存储为str对象。在Python 2中,为了避免读取非字符串类型会发生的一些危险行为,不得不使用raw_input()代替input()。 + +###Python 2 + + Python 2.7.6 + [GCC 4.0.1 (Apple Inc. build 5493)] on darwin + Type "help", "copyright", "credits" or "license" for more information. + + >>> my_input = input('enter a number: ') + + enter a number: 123 + + >>> type(my_input) + + + >>> my_input = raw_input('enter a number: ') + + enter a number: 123 + + >>> type(my_input) + + +###Python 3 + + Python 3.4.1 + [GCC 4.2.1 (Apple Inc. build 5577)] on darwin + Type "help", "copyright", "credits" or "license" for more information. + + >>> my_input = input('enter a number: ') + enter a number: 123 + >>> type(my_input) + + +##返回可迭代对象,而不是列表 + +在xrange一节中可以看到,某些函数和方法在Python中返回的是可迭代对象,而不像在Python 2中返回列表。 + +由于通常对这些对象只遍历一次,所以这种方式会节省很多内存。然而,如果通过生成器来多次迭代这些对象,效率就不高了。 + +此时我们的确需要列表对象,可以通过list()函数简单的将可迭代对象转成列表。 + +###Python 2 + + print 'Python', python_version() + + print range(3) + print type(range(3)) + + Python 2.7.6 + [0, 1, 2] + + +###Python 3 + + print('Python', python_version()) + print(range(3)) + print(type(range(3))) + print(list(range(3))) + + Python 3.4.1 + range(0, 3) + + [0, 1, 2] + +下面列出了Python 3中其他不再返回列表的常用函数和方法: + +- zip() +- map() +- filter() +- 字典的.key()方法 +- 字典的.value()方法 +- 字典的.item()方法 + +##更多关于Python 2和Python 3的文章 + +下面列出了其他一些可以进一步了解Python 2和Python 3的优秀文章, + +//迁移到 Python 3 + +- [Should I use Python 2 or Python 3 for my development activity?](https://wiki.python.org/moin/Python2orPython3) + +- [What’s New In Python 3.0](https://docs.python.org/3.0/whatsnew/3.0.html) + +- [Porting to Python 3](http://python3porting.com/differences.html) + +- [Porting Python 2 Code to Python 3](https://docs.python.org/3/howto/pyporting.html) + +- [How keep Python 3 moving forward](http://nothingbutsnark.svbtle.com/my-view-on-the-current-state-of-python-3) + +// 对Python 3的褒与贬 + +- [10 awesome features of Python that you can’t use because you refuse to upgrade to Python 3](http://asmeurer.github.io/python3-presentation/slides.html#1) + +- [关于你不想知道的所有Python3 unicode特性](http://blog.jobbole.com/73974/) + +- [Python 3 正在毁灭 Python](http://blog.jobbole.com/69811/) + +- [Python 3 能振兴 Python](http://blog.jobbole.com/75158/) + +- [Python 3 is fine](http://sealedabstract.com/rants/python-3-is-fine/) diff --git a/nimages/n005-01.png b/nimages/n005-01.png new file mode 100644 index 0000000000000000000000000000000000000000..fd3e205c29132a99bcb3d2827bd211744730a19d GIT binary patch literal 111763 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 XO#B~t&tUVzz)EsJcpr2W!wHSY@Njj)e6#Hi(2 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 Ba@zm^ literal 0 HcmV?d00001 From d018301a1dd85fc6da07dff5cfe236d0341ec0d5 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 2 Feb 2016 17:56:30 +0800 Subject: [PATCH 017/288] difference between py2 and py3 --- n005.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/n005.md b/n005.md index 71fa9d5..42db568 100644 --- a/n005.md +++ b/n005.md @@ -294,7 +294,7 @@ Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成 AttributeError: type object 'xrange' has no attribute '__contains__' -###关于Python 2中xrange()与Python 3中range()之间的速度差异的一点说明: +##关于Python 2中xrange()与Python 3中range()之间的速度差异的一点说明: 有读者指出了Python 3中的range()和Python 2中xrange()执行速度有差异。由于这两者的实现方式相同,因此理论上执行速度应该也是相同的。这里的速度差别仅仅是因为Python 3的总体速度就比Python 2慢。 From 866aef3cce60a6eddfea5b501e62bab405cb2810 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 3 Feb 2016 16:09:29 +0800 Subject: [PATCH 018/288] modify if --- 123.md | 194 ++++++++++++++++++++++++-------------------------------- n005.md | 22 +++---- 2 files changed, 95 insertions(+), 121 deletions(-) diff --git a/123.md b/123.md index 6cc8d4e..a0802d2 100644 --- a/123.md +++ b/123.md @@ -15,9 +15,9 @@ for 循环规则: 操作语句 -从这个基本结构看,有着同if条件语句类似的地方:都有冒号;语句块都要缩进。是的,这是不可或缺的。 +从这个基本结构看,有着同if条件语句类似的地方:都有冒号;语句块都要四个空格缩进。 -##简单的for循环例子 +##从例子中理解for循环 前面介绍print语句的时候,出现了一个简单例子。重复一个类似的: @@ -72,6 +72,88 @@ I am qiwsir Welcome you +以上两个例子中,是将for循环用于字符串和列表,此外,还可以用于字典、元组。例如: + + >>> d = dict([("website", "www.itdiffer.com"), ("lang", "python"), ("author", "laoqi")]) + >>> d + {'website': 'www.itdiffer.com', 'lang': 'python', 'author': 'laoqi'} + >>> for k in d: + print k + +上面的代码,输出结果是: + + website + lang + author + +注意到,上面的循环,其实是读取了字典的key。在字典中,有一个方法,`dict.keys()`,得到的是字典key列表。 + + >>> for k in d.keys(): + print k + + website + lang + author + +这种循环方法和上面的循环方法,结果是一样的,但是,这种方法并不提倡,以为它在执行速度上表现欠佳。 + +如果要获得字典的value怎么办?不要忘记`dict.values()`方法。读者可以自行测试一番。 + +除了可以单独获得key或者value的循环之外,还可以这么做: + + >>> for k,v in d.items(): + print k + "-->" + v + + website-->www.itdiffer.com + lang-->python + author-->laoqi + +在工程实践中,你一定会遇到非常大的字典。用上面的方法,要把所有的内容都读入内存,内存东西多了,可能会出麻烦。为此,Python中提供了另外的方法。 + + >>> for k,v in d.iteritems(): + print k + "-->" + v + + website-->www.itdiffer.com + lang-->python + author-->laoqi + +这里是循环一个迭代器,迭代器在循环中有很多优势。除了刚才的`dict.iteritems()`之外,还有`dict.itervalues()`,`dict.iterkeys()`供你选用。 + + >>> d.iteritems() + + +至于对元组的循环,读者自行尝试即可。 + +除了上述的对象之外,for循环还能应用到哪些对象上?能不能用在数字上呢? + + >>> for i in 321: + print i + + Traceback (most recent call last): + File "", line 1, in + for i in 321: + TypeError: 'int' object is not iterable + +报错了。这说明对于数字不能使用for循环。不过,光知道这个还不行,还要看看报错信息。 + +报错信息中告诉我们,‘int’对象不是可迭代的。言外之意是什么?那就是for循环所应用的对象,应该是可迭代的。那么,怎么判断一个对象是不是可迭代的呢? + + >>> import collections + +引入collections这个标准库。要判断数字321是不是可迭代的,可以这么做: + + >>> isinstance(321, collections.Iterable) + False + +返回了False,说明321这个整数类型的对象,是不可迭代的。再判断一个列表对象。 + + >>> isinstance([1,2,3], collections.Iterable) + True + +从返回结果,我们知道,列表[1,2,3]是可迭代的。 + +当然,并不是要你在使用for循环之前,非要判断某个对象是否可迭代。因为至此,你已经晓得了字符串、列表、字典、元组都是可迭代的。 + ##range(start,stop[, step]) 这个内建函数,非常有必要给予说明,因为它会经常被使用。一般形式是`range(start, stop[, step])` @@ -201,114 +283,6 @@ >>> range(3,100,3) [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99] -##能够用来for的对象 - -所有的序列类型对象,都能够用for来循环。比如: - - >>> name_str = "qiwsir" - >>> for i in name_str: #可以对str使用for循环 - ... print i, - ... - q i w s i r - - >>> name_list = list(name_str) - >>> name_list - ['q', 'i', 'w', 's', 'i', 'r'] - >>> for i in name_list: #对list也能用 - ... print i, - ... - q i w s i r - - >>> name_set = set(name_str) #set还可以用 - >>> name_set - set(['q', 'i', 's', 'r', 'w']) - >>> for i in name_set: - ... print i, - ... - q i s r w - - >>> name_tuple = tuple(name_str) - >>> name_tuple - ('q', 'i', 'w', 's', 'i', 'r') - >>> for i in name_tuple: #tuple也能呀 - ... print i, - ... - q i w s i r - - >>> name_dict={"name":"qiwsir","lang":"python","website":"qiwsir.github.io"} - >>> for i in name_dict: #dict也不例外,这里本质上是将字典的键拿出来,成为序列后进行循环 - ... print i,"-->",name_dict[i] - ... - lang --> python - website --> qiwsir.github.io - name --> qiwsir - -在用for来循环读取字典键值对上,需要多说几句。 - -有这样一个字典: - - >>> a_dict = {"name":"qiwsir", "lang":"python", "email":"qiwsir@gmail.com", "website":"www.itdiffer.com"} - -曾记否?在[《字典(2)》](./117.md)中有获得字典键、值的函数:items/iteritems/keys/iterkeys/values/itervalues,通过这些函数得到的是键或者值的列表。 - - >>> for k in a_dict.keys(): - ... print k, a_dict[k] - ... - lang python - website www.itdiffer.com - name qiwsir - email qiwsir@gmail.com - -这是最常用的一种获得字典键/值对的方法,而且效率也不错。 - - >>> for k,v in a_dict.items(): - ... print k,v - ... - lang python - website www.itdiffer.com - name qiwsir - email qiwsir@gmail.com - - >>> for k,v in a_dict.iteritems(): - ... print k,v - ... - lang python - website www.itdiffer.com - name qiwsir - email qiwsir@gmail.com - -这两种方法也能够实现同样的效果,但是因为有了上面的方法,一般就少用了。但是,用也无妨,特别是第二个`iteritems()`,效率也是挺高的。 - -但是,要注意下面的方法: - - >>> for k in a_dict.keys(): - ... print k, a_dict[k] - ... - lang python - website www.itdiffer.com - name qiwsir - email qiwsir@gmail.com - -这种方法其实是不提倡的,虽然实现了同样的效果,但是效率常常是比较低的。切记。 - - >>> for v in a_dict.values(): - ... print v - ... - python - www.itdiffer.com - qiwsir - qiwsir@gmail.com - - >>> for v in a_dict.itervalues(): - ... print v - ... - python - www.itdiffer.com - qiwsir - qiwsir@gmail.com - -单独取values,推荐第二种方法。 - ------ [总目录](./index.md)   |   [上节:语句(2)](./122.md)   |   [下节:语句(4)](./124.md) diff --git a/n005.md b/n005.md index 42db568..24e5637 100644 --- a/n005.md +++ b/n005.md @@ -10,13 +10,13 @@ 但如果想要用Python开发一个新项目,那么该如何选择Python版本呢?我可以负责任的说,大部分Python库都同时支持Python 2.7.x和3.x版本的,所以不论选择哪个版本都是可以的。但为了在使用Python时避开某些版本中一些常见的陷阱,或需要移植某个Python项目时,依然有必要了解一下Python两个常见版本之间的主要区别。 -##'__future__'模块 +##`__future__`模块 -Python3.x引入了一些与Python2不兼容的关键字和特性,在Python2中,可以通过内置的'__future__'模块导入这些新内容。如果你希望在Python2环境下写的代码也可以在Python 3.x中运行,那么建议使用'__future__'模块。例如,如果希望在Python2中拥有Python3.x的整数除法行为,可以通过下面的语句导入相应的模块。 +Python3.x引入了一些与Python2不兼容的关键字和特性,在Python2中,可以通过内置的`__future__`模块导入这些新内容。如果你希望在Python2环境下写的代码也可以在Python 3.x中运行,那么建议使用`__future__`模块。例如,如果希望在Python2中拥有Python3.x的整数除法行为,可以通过下面的语句导入相应的模块。 from __future__ import division -下表列出了'__future__'中其他可导入的特性: +下表列出了`__future__`中其他可导入的特性: ![](./nimages/n005-01.png) @@ -28,7 +28,7 @@ Python3.x引入了一些与Python2不兼容的关键字和特性,在Python2中 虽然print语法是Python3中一个很小的改动,且应该已经广为人知,但依然值得提一下:Python2中的print语句被Python3中的print()函数取代,这意味着在Python3中必须用括号将需要输出的对象括起来。 -在Python2中使用额外的括号也是可以的。但反过来在Python3中想以Python2的形式不带括号调用print函数时,会触发'SyntaxError'。 +在Python2中使用额外的括号也是可以的。但反过来在Python3中想以Python2的形式不带括号调用print函数时,会触发`SyntaxError`。 ###Python 2 @@ -77,7 +77,7 @@ Python3.x引入了一些与Python2不兼容的关键字和特性,在Python2中 由于人们常常会忽视Python3在整数除法上的改动(写错了也不会触发Syntax Error),所以在移植代码或在Python2中执行Python3的代码时,需要特别注意这个改动。 -所以,我还是会在Python3的脚本中尝试用float(3)/2或 3/2.0代替3/2,以此来避免代码在Python2环境下可能导致的错误(或与之相反,在Python 2脚本中用'from __future__ import division'来使用Python3的除法)。 +所以,我还是会在Python3的脚本中尝试用float(3)/2或 3/2.0代替3/2,以此来避免代码在Python2环境下可能导致的错误(或与之相反,在Python 2脚本中用`from __future__ import division`来使用Python3的除法)。 ###Python 2 @@ -163,7 +163,7 @@ Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成 ##xrange -在Python2.x中,经常会用'xrange()'创建一个可迭代对象,通常出现在“for循环”或“列表/集合/字典推导式”中。 +在Python2.x中,经常会用`xrange()`创建一个可迭代对象,通常出现在“for循环”或“列表/集合/字典推导式”中。 这种行为与生成器非常相似(如”惰性求值“),但这里的xrange-iterable无尽的,意味着可能在这个xrange上无限迭代。 @@ -221,9 +221,9 @@ Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成 NameError: name 'xrange' is not defined -##Python 3中的range对象中的'__contains__'方法 +##Python 3中的range对象中的`__contains__`方法 -另一个值得一提的是,在Python 3.x中,range有了一个新的'__contains__'方法。'__contains__'方法可以有效的加快Python 3.x中整数和布尔型的“查找”速度。 +另一个值得一提的是,在Python 3.x中,range有了一个新的`__contains__`方法。`__contains__`方法可以有效的加快Python 3.x中整数和布尔型的“查找”速度。 x = 10000000 def val_in_range(x, val): @@ -242,7 +242,7 @@ Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成 1 loops, best of 3: 742 ms per loop 1000000 loops, best of 3: 1.19 µs per loop -根据上面的timeit的结果,查找整数比查找浮点数要快大约6万倍。但由于Python 2.x中的range或xrange没有'__contains__'方法,所以在Python 2中的整数和浮点数的查找速度差别不大。 +根据上面的timeit的结果,查找整数比查找浮点数要快大约6万倍。但由于Python 2.x中的range或xrange没有`__contains__`方法,所以在Python 2中的整数和浮点数的查找速度差别不大。 print 'Python', python_version() @@ -261,7 +261,7 @@ Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成 1 loops, best of 3: 658 ms per loop 1 loops, best of 3: 556 ms per loop -下面的代码证明了Python 2.x中没有'__contain__'方法: +下面的代码证明了Python 2.x中没有`__contain__`方法: print('Python', python_version()) range.__contains__ @@ -503,7 +503,7 @@ Python 3中另一个优秀的改动是,如果我们试图比较无序类型, 4 print("[1, 2] > (1, 2) = ", [1, 2] > (1, 2)) TypeError: unorderable types: list() > str() -##通过'input()'解析用户的输入 +##通过`input()`解析用户的输入 幸运的是,Python 3改进了input()函数,这样该函数就会总是将用户的输入存储为str对象。在Python 2中,为了避免读取非字符串类型会发生的一些危险行为,不得不使用raw_input()代替input()。 From eeaf194e8ad264cd3f4c189480c3e6665cef63a7 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 13 Feb 2016 21:50:47 +0800 Subject: [PATCH 019/288] about float number --- 102.md | 52 ++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 42 insertions(+), 10 deletions(-) diff --git a/102.md b/102.md index 2c1653a..f2d5d41 100644 --- a/102.md +++ b/102.md @@ -7,8 +7,11 @@ 有一篇名为[《计算机前世》](http://www.flickering.cn/%E5%85%AB%E5%8D%A6%E5%A4%A9%E5%9C%B0/2015/02/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%89%8D%E4%B8%96%E7%AF%87%EF%BC%88%E4%B8%80%EF%BC%8C%E5%A7%91%E5%A8%98%E8%AE%A1%E7%AE%97%E6%9C%BA%EF%BC%89/)的文章,这样讲到: >还是先来看看计算机(computer)这个词是怎么来的。 英文学得好的小伙伴看到这货,computer + >第一反应好像是:“compute-er”是吧,应该是个什么样的人就对了,就是啊,“做计算的人”。 + >叮咚!恭喜你答对了。 + >最先被命名为 computer 的确实是人。也就是说,电子计算机(与早期的机械计算机)被给予这个名字是因为他们执行的是此前被分配到人的工作。 “计算机”原来是工作岗位,它被用来定义一个工种,其任务是执行计算诸如导航表,潮汐图表,天文历书和行星的位置要求的重复计算。从事这个工作的人就是 computer,而且大多是女神! 原文还附有如下图片: @@ -34,7 +37,19 @@ 如果输入一个比较大的数,第二个,那么多个3组成的一个整数,在Python中称之为长整数。为了表示某个数是长整数,Python会在其末尾显示一个L。其实,现在的Python已经能够自动将输入的很大的整数视为长整数了。你不必在这方面进行区别。 -第三个,在数学里面称为小数,这里你依然可以这么称呼,不过就像很多编程语言一样,习惯称之为“浮点数”。至于这个名称的由来,也是有点说道的,有兴趣可以google. +第三个,在数学里面称为小数,这里你依然可以这么称呼,不过就像很多编程语言一样,习惯称之为“浮点数”。 + +注意,刚才我提到了小数,其实把小数称之为“浮点数”,这种说法并不准确。为此,“知乎”上有专门的解释,请阅读(原文地址:[http://www.zhihu.com/question/19848808/answer/22219209](http://www.zhihu.com/question/19848808/answer/22219209): + +>并不是说小数叫做浮点数。准确的来说:“浮点数”是一种表示数字的标准,整数也可以用浮点数的格式来存储。 + +>当代大部分计算机和程序在处理浮点数时所遵循的标准是由IEEE和ANSI制定的。比如,单精度的浮点数以4个字节来表示,这4个字节可以分为三个部分:1位的符号位(0代表正数,1代表负数),8位用作指数,最后的23位表示有效数字。 + +>“浮点数”的定义是相对于“定点数”来说的,它们是两种表示小数的方式。 + +>所谓“定点”是指小数点的位置总是在数的某个特定位置。比如在银行系统中,小数点的位置总是在两位小数之前(这两位小数用来表示角和分)。其可以使用BCD码来对小数进行编码。 + +>浮点格式则是基于科学计数法的,它是存储极大或极小数的理想方式。但使用浮点数来表示数据的时候,由于其标准制定方面的原因可能会带来一些问题,例如:某两个不同的整数在单精度浮点数的表示方法下很可能无法区分。 上述举例中,可以说都是无符号(或者说是非负数),如果要表示负数,跟数学中的表示方法一样,前面填上负号即可。 @@ -143,27 +158,22 @@ 不一样的地方是:第一个式子结果是6,这是一个整数;后面两个是6.0,这是浮点数。 ->定义1:类似4、-2、129486655、-988654、0这样形式的数,称之为整数 ->定义2:类似4.0、-2.0、2344.123、3.1415926这样形式的数,称之为浮点数 - -对这两个的定义,不用死记硬背,google一下。记住爱因斯坦说的那句话:书上有的我都不记忆(是这么的说?好像是,大概意思,反正我也不记忆)。后半句他没说,我补充一下:忘了就google。 - 似乎计算机做一些四则运算是不在话下的,但是,有一个问题请你务必注意:在数学中,整数是可以无限大的,但是在计算机中,整数不能无限大。为什么呢?(我推荐你去google,其实计算机的基本知识中肯定学习过了。)因此,就会有某种情况出现,就是参与运算的数或者运算结果超过了计算机中最大的数了,这种问题称之为“整数溢出问题”。 -##整数溢出问题 +##大整数 这里有一篇专门讨论这个问题的文章,推荐阅读:[整数溢出](http://zhaoweizhuanshuo.blog.163.com/blog/static/148055262201093151439742/) 对于其它语言,整数溢出是必须正视的,但是,在Python里面,看官就无忧愁了,原因就是Python为我们解决了这个问题,请阅读拙文:[大整数相乘](https://github.com/qiwsir/algorithm/blob/master/big_int.md) -ok!看官可以在IDE中实验一下大整数相乘。 +ok!看官可以在实验一下大整数相乘。 >>> 123456789870987654321122343445567678890098876*1233455667789990099876543332387665443345566 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816L 看官是幸运的,Python解忧愁,所以,选择学习Python就是珍惜光阴了。 -上面计算结果的数字最后有一个L,就表示这个数是一个长整数,不过,看官不用管这点,反正是Python为我们搞定了。 +上面计算结果的数字最后有一个L,就表示这个数是一个长整数,不过,看官不用管这点,反正是Python为我们搞定了。这是Python跟很多其它编程语言大不一样的地方,它帮你搞定了大正数问题,也就是说,你尽可以放心,在Python中,整数的长度是不受限制的(当然,这句话有点绝对了)。 在结束本节之前,有两个符号需要看官牢记(不记住也没关系,可以随时google,只不过记住后使用更方便) @@ -179,8 +189,30 @@ ok!看官可以在IDE中实验一下大整数相乘。 type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) #是长整数,也是一个整数 +##浮点数 + +对于浮点数,通常情况也没有什么太神奇的,不过,有时候会遇到非常大或者非常小的浮点数,这时候通常会使用一种叫做“科学记数法”的方式表示。 + + >>> 9.8 ** -7.2 + 7.297468937055047e-08 + +在这个例子中,e-08表示的是10的-8次方,这就是科学记数法。当然,也可以直接使用这种方法写数字。 + + >>> a = 2e3 + >>> a + 2000.0 + +前面说到大整数问题的时候,Python帮我们解决了棘手的问题,使得整数可以无限大,但是,浮点数跟整数不同,它存在上限和下限,如果超出了上下的范围,就会出现溢出问题了。也就是说,如果计算的结果太大或者太小,乃至与已经不在Python的浮点数范围之内,就会有溢出错误。 + + >>> 500.0 ** 100000 + Traceback (most recent call last): + File "", line 1, in + OverflowError: (34, 'Numerical result out of range') + +请注意看刚才报错的信息,“out fo range”,就是超出了范围,溢出。所以,在计算中,如果遇到了浮点数,就要小心行事了。对于这种溢出,需要你在编写程序的时候处理,并担当相应的责任。 + ------ [总目录](./index.md)   |   [上节:集成开发环境](./101.md)   |   [下节:除法](./103.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,或者加我微信(**微信号:qiwsir**),不胜感激。 From 40d7cdc41ff2d9ab3d9ffae31fa20161b37194bb Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 13 Feb 2016 22:40:50 +0800 Subject: [PATCH 020/288] about .pyc --- 105.md | 12 +++++++++++- 1images/10508.jpg | Bin 0 -> 10205 bytes 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 1images/10508.jpg diff --git a/105.md b/105.md index 586a660..d7f75c9 100644 --- a/105.md +++ b/105.md @@ -158,8 +158,18 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 是不是在为看到自己写的第一个程序而欣慰呢? +##编译过程 + +在刚才的程序中,那些东西我们可以笼统称之为源代码,最后那个扩展名是`.py`的文件是源代码文件。Python是如何执行源代码的呢? + +![](./1images/10508.jpg) + +当运行`.py`文件的时候,Python会通过编译器,将它编译为`.pyc`文件,然后这个文件就在一个名为虚拟机的东西上运行,这个所谓的虚拟机是专门为Python涉及的,正是因为有了虚拟机,使得Python是跨平台的,也就是说你写的Python程序可以不经过修改而在不同才做系统上运行。如果你没有修改`.py`文件,那么每次执行这个程序的时候,就直接运行前面已经生成的`.pyc`文件,这样让执行速度就大大提升了,不是每次都要从新编译。有一些不了解或者不愿意了解Python的人,总认为Python使解释型语言,每次执行程序都要从头到位一行一行解释执行,这是对Python的无知表现。如果你修改了`.py`文件,下次执行程序的时候,会自动从新编译。 + +你根本不用关心`.pyc`文件,Python总是自动完成编译过程的。而且,它的代码因为使给机器看的,你也看不懂。不过要注意的是,不要删除它,也不用重命名。 + ------ [总目录](./index.md)   |   [上节:常用数学函数和运算优先级](./104.md)   |   [下节:字符串(1)](./106.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,或者加我微信(**微信号:qiwsir**),不胜感激。 diff --git a/1images/10508.jpg b/1images/10508.jpg new file mode 100644 index 0000000000000000000000000000000000000000..af8fa525e2530011d0367061d6c8eaa1ef5e4953 GIT binary patch literal 10205 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 H;=cYrYGg^r literal 0 HcmV?d00001 From 411b668967758ea360c29076f37fba9feb1f6588 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 14 Feb 2016 20:15:30 +0800 Subject: [PATCH 021/288] edit about bool object --- 120.md | 55 ++++++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 42 insertions(+), 13 deletions(-) diff --git a/120.md b/120.md index ab48ddf..4b7ceb2 100644 --- a/120.md +++ b/120.md @@ -92,9 +92,9 @@ 关于逻辑问题,看官如有兴趣,可以听一听[《国立台湾大学公开课:逻辑》](http://v.163.com/special/ntu/luoji.html) -###布尔类型的变量 +###布尔类型 -在所有的高级语言中,都有这么一类变量,被称之为布尔型。从这个名称,看官就知道了,这是用一个人的名字来命名的。 +在所有的高级语言中,都有这么一类对象,被称之为布尔型。从这个名称,看官就知道了,这是用一个人的名字来命名的。 >乔治·布尔(George Boole,1815年11月-1864年,),英格兰数学家、哲学家。 @@ -112,9 +112,9 @@ 布尔所创立的这套逻辑被称之为“布尔代数”。其中规定只有两种值,True和False,正好对应这计算机上二进制数的1和0。所以,布尔代数和计算机是天然吻合的。 -所谓布尔类型,就是返回结果为1(True)、0(False)的数据变量。 +所谓布尔类型,就是返回结果为True)、False的数据。 -在python中(其它高级语言也类似,其实就是布尔代数的运算法则),有三种运算符,可以实现布尔类型的变量间的运算。 +在Python中(其它高级语言也类似,其实就是布尔代数的运算法则),有三种运算符,可以实现布尔类型的对象间的运算。 ###布尔运算 @@ -130,7 +130,7 @@ - and -and,翻译为“与”运算,但事实上,这种翻译容易引起望文生义的理解。先说一下正确的理解。A and B,含义是:首先运算A,如果A的值是true,就计算B,并将B的结果返回做为最终结果,如果B是False,那么A and B的最终结果就是False,如果B的结果是True,那么A and B的结果就是True;如果A的值是False ,就不计算B了,直接返回A and B的结果为False. +and,翻译为“与”运算,但事实上,这种翻译容易引起望文生义的理解。先说一下正确的理解。A and B,含义是:首先运算A,如果A的值是True,就计算B,并将B的结果返回做为最终结果,如果B是False,那么A and B的最终结果就是False,如果B的结果是True,那么A and B的结果就是True;如果A的值是False ,就不计算B了,直接返回A and B的结果为False. 比如: @@ -149,25 +149,32 @@ and,翻译为“与”运算,但事实上,这种翻译容易引起望文 >>> 4<3 and 4<2 False -前面说容易引起望文生义的理解,就是有相当不少的人认为无论什么时候都看and两边的值,都是true返回true,有一个是false就返回false。根据这种理解得到的结果,与前述理解得到的结果一样,但是,运算量不一样哦。 +前面说容易引起望文生义的理解,就是有相当不少的人认为无论什么时候都看and两边的值,都是True返回True,有一个是False就返回False。根据这种理解得到的结果,与前述理解得到的结果一样,但是,运算量不一样哦。短路求值,能够减少计算量,提高计算布尔表达式的速度。 + +把上面的计算过程综合一下,在计算`A and B`中,其流程是: + + if A == False: + return False + else: + return bool(B) + +上面这段算是伪代码啦。所谓伪代码,就是不是真正的代码,无法运行。但是,伪代码也有用途,就是能够以类似代码的方式表达一种计算过程。 - or -or,翻译为“或”运算。在A or B中,它是这么运算的: +or,翻译为“或”运算。在`A or B`中,它是这么运算的: if A==True: return True else: return bool(B) -上面这段算是伪代码啦。所谓伪代码,就是不是真正的代码,无法运行。但是,伪代码也有用途,就是能够以类似代码的方式表达一种计算过程。 - 看官是不是能够看懂上面的伪代码呢?下面再增加上每行的注释。这个伪代码跟自然的英语差不多呀。 - if A==True: #如果A的值是True - return True #返回True,表达式最终结果是True - else: #否则,也就是A的值不是True - return bool(B) #看B的值,然后就返回B的值做为最终结果。 + if A==True: #如果A的值是True + return True #返回True,表达式最终结果是True + else: #否则,也就是A的值不是True + return bool(B) #看B的值,然后就返回B的值做为最终结果。 举例,根据上面的运算过程,分析一下下面的例子,是不是与运算结果一致? @@ -189,6 +196,28 @@ not,翻译成“非”,窃以为非常好,不论面对什么,就是要 关于运算符问题,其实不止上面这些,还有呢,比如成员运算符in,在后面的学习中会逐渐遇到。 +##复杂的布尔表达式 + +在进行逻辑判断或者条件判断的时候,不一定都是类似上面例子那样简单的表达式,也可能遇到复杂的表达。如果你遇到了复杂表达式,最好的方法是使用括号。 + + >>> (4<9) and (5>9) + False + >>> not(True and True) + False + +用括号的方法,意义非常明确。当然,布尔运算也有优先级,但是,你不一定记住,或者如果使用括号,根本没有必要记住优先级。 + +不过为了给学习者一个印象,先面还是以表格行事,按照从高到底的顺序,把布尔运算的优先级列出来,仅供参考,并且没有必要记忆。 + +|顺序|符号| +|----|----| +|1 | x == y | +|2 | x != y | +|3 | not x | +|4 | x and y | +|5 | x or y | + +千万不要记住,一定要用括号。 ------ [总目录](./index.md)   |   [上节:集合(2)](./119.md)   |   [下节:语句(1)](./121.md) From cdedf9c5e6efaaeeed992e8328a6232481024436 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 14 Feb 2016 20:18:28 +0800 Subject: [PATCH 022/288] edit about bool object --- 120.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/120.md b/120.md index 4b7ceb2..ef058b1 100644 --- a/120.md +++ b/120.md @@ -217,7 +217,8 @@ not,翻译成“非”,窃以为非常好,不论面对什么,就是要 |4 | x and y | |5 | x or y | -千万不要记住,一定要用括号。 +最后强调:一定要用括号,不必记忆表格内容。 + ------ [总目录](./index.md)   |   [上节:集合(2)](./119.md)   |   [下节:语句(1)](./121.md) From b6a7b2d0ab4e41c32074c0868d7fd1787076aaea Mon Sep 17 00:00:00 2001 From: 3rogue Date: Wed, 17 Feb 2016 20:49:11 +0800 Subject: [PATCH 023/288] Update 109.md --- 109.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/109.md b/109.md index 623a652..1267196 100644 --- a/109.md +++ b/109.md @@ -91,7 +91,7 @@ >>> print "Suzhou is more than {year} years. {name} lives in here.".format(year=2500, name="qiwsir") Suzhou is more than 2500 years. qiwsir lives in here. -真的很简洁,看成优雅。 +真的很简洁,堪称优雅。 其实,还有一种格式化的方法,被称为“字典格式化”,这里仅仅列一个例子,如果看官要了解字典的含义,本教程后续会有的。 From 231df5b255d01eea16320012b23ea0cf43b809b8 Mon Sep 17 00:00:00 2001 From: A2ZH Date: Wed, 17 Feb 2016 22:02:02 +0800 Subject: [PATCH 024/288] fix spelling mistake in 102.md --- 102.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/102.md b/102.md index f2d5d41..7aa27cc 100644 --- a/102.md +++ b/102.md @@ -1,4 +1,4 @@ ->For I am not ashamed of the gospel; it is the power of God for salvation to everyone who has faith, to the Jew first and also to the Greek. For in it the righteousness of God is revealed through faith for faith; s it is written,"The one who is righteous will live by faith" +>For I am not ashamed of the gospel; it is the power of God for salvation to everyone who has faith, to the Jew first and also to the Greek. For in it the righteousness of God is revealed through faith for faith; as it is written,"The one who is righteous will live by faith" #数和四则运算 From e851a9999e440555af1339765d3ed7fec160bf7c Mon Sep 17 00:00:00 2001 From: A2ZH Date: Wed, 17 Feb 2016 22:58:52 +0800 Subject: [PATCH 025/288] fix spelling mistake in 106.md --- 106.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/106.md b/106.md index 4c12482..d39ae69 100644 --- a/106.md +++ b/106.md @@ -71,7 +71,7 @@ 出现了`SyntaxError`(语法错误)引导的提示,这是在告诉我们这里存在错误,错误的类型就是`SyntaxError`,后面是对这种错误的解释“invalid syntax”(无效的语法)。特别注意,错误提示的上面,有一个^符号,直接只着一个单引号,不用多说,你也能猜测出,大概在告诉我们,可能是这里出现错误了。 ->在python中,这一点是非常友好的,如果语句存在错误,就会将错误输出来,供程序员改正参考。当然,错误来源有时候比较复杂,需要根据经验和知识进行修改。还有一种修改错误的好办法,就是讲错误提示放到google中搜索。 +>在python中,这一点是非常友好的,如果语句存在错误,就会将错误输出来,供程序员改正参考。当然,错误来源有时候比较复杂,需要根据经验和知识进行修改。还有一种修改错误的好办法,就是将错误提示放到google中搜索。 上面那个值的错误原因是什么呢?仔细观察,发现那句话中事实上有三个单引号,本来一对单引号之间包裹的是一个字符串,现在出现了三个(一对半)单引号,computer姑娘迷茫了,她不知道单引号包裹的到底是谁。于是报错。 From 297a0647cfd4a190d8537b4d6e452fc547e8264d Mon Sep 17 00:00:00 2001 From: 3rogue Date: Thu, 18 Feb 2016 14:38:53 +0800 Subject: [PATCH 026/288] Update 110.md --- 110.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/110.md b/110.md index 759e83c..8f1ad94 100644 --- a/110.md +++ b/110.md @@ -165,7 +165,7 @@ python2默认的编码是ascii,通过encode可以将对象的编码转换为 我还收集了网上的一片文章,也挺好的,推荐给看官:[Python2.x的中文显示方法](https://github.com/qiwsir/ITArticles/blob/master/Python/Python%E7%9A%84%E4%B8%AD%E6%96%87%E6%98%BE%E7%A4%BA%E6%96%B9%E6%B3%95.md) -最后告诉给我,如果用python3,坑爹的编码问题就不烦恼了。 +最后告诉给你,如果用python3,坑爹的编码问题就不烦恼了。 ------ From e1c58b2142e6f94535a29684b67cd9468a96d10e Mon Sep 17 00:00:00 2001 From: A2ZH Date: Fri, 19 Feb 2016 11:18:13 +0800 Subject: [PATCH 027/288] =?UTF-8?q?=E5=AF=B9python3=20dictionary=E7=9A=84?= =?UTF-8?q?=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 117.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/117.md b/117.md index a071471..a47ba53 100644 --- a/117.md +++ b/117.md @@ -307,6 +307,8 @@ get的含义是: 这里先交代一句,如果要实现对键值对或者键或者值的循环,用迭代器的效率会高一些。对这句话的理解,在后面会给大家进行详细分析。 +> 在python3中, 只有items, keys和values方法, 返回的也不是list, 而是[view对象](https://docs.python.org/3/library/stdtypes.html#dict-views) + ###pop, popitem 在[《列表(3)》](./113.md)中,有关于删除列表中元素的函数`pop`和`remove`,这两个的区别在于`list.remove(x)`用来删除指定的元素,而`list.pop([i])`用于删除指定索引的元素,如果不提供索引值,就默认删除最后一个。 From 5525eacf0465b2c438ce6d5dd8dc38fb19a921b9 Mon Sep 17 00:00:00 2001 From: A2ZH Date: Fri, 19 Feb 2016 15:50:11 +0800 Subject: [PATCH 028/288] fix spelling mistake in 127.md --- 127.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/127.md b/127.md index 7dec61b..e7c3d25 100644 --- a/127.md +++ b/127.md @@ -170,7 +170,7 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E ##读很大的文件 -前面已经说明了,如果文件太大,就不能用`read()`或者`readlines()`一次性将全部内容读入内存,可以使用while循环和`readlin()`来完成这个任务。 +前面已经说明了,如果文件太大,就不能用`read()`或者`readlines()`一次性将全部内容读入内存,可以使用while循环和`readline()`来完成这个任务。 此外,还有一个方法:fileinput模块 @@ -269,4 +269,4 @@ whence的值: [总目录](./index.md)   |   [上节:文件(1)](./126.md)   |   [下节:迭代](./128.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From ce2cc791b0361ced6c8e8f697b92675c48506f3a Mon Sep 17 00:00:00 2001 From: A2ZH Date: Fri, 19 Feb 2016 16:51:08 +0800 Subject: [PATCH 029/288] =?UTF-8?q?=E5=AF=B9=E4=BA=8Epython3=20next()?= =?UTF-8?q?=E7=9A=84=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 128.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/128.md b/128.md index 5ba3dd0..b66435e 100644 --- a/128.md +++ b/128.md @@ -46,6 +46,8 @@ File "", line 1, in StopIteration +> 在python3中, lst_iter.next()方法变成了lst_iter.__next__(). 取而代之的是next(lst_iter). + `iter()`是一个内建函数,其含义是: 上面的`next()`就是要获得下一个元素,但是做为一名优秀的程序员,最佳品质就是“懒惰”,当然不能这样一个一个地敲啦,于是就: @@ -209,4 +211,4 @@ [总目录](./index.md)   |   [上节:文件(2)](./127.md)   |   [下节:练习](./129.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 4d98e83bb7486cd982944352ff97cc0957384dc6 Mon Sep 17 00:00:00 2001 From: A2ZH Date: Fri, 19 Feb 2016 16:54:48 +0800 Subject: [PATCH 030/288] fix markdown syntax in 128.md --- 128.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/128.md b/128.md index b66435e..7566e01 100644 --- a/128.md +++ b/128.md @@ -46,7 +46,7 @@ File "", line 1, in StopIteration -> 在python3中, lst_iter.next()方法变成了lst_iter.__next__(). 取而代之的是next(lst_iter). +> 在python3中, lst_iter.next()方法变成了lst_iter.\_\_next__(). 取而代之的是next(lst_iter). `iter()`是一个内建函数,其含义是: From 5c76341187b27146f558475ca7d5e557fcdcfd7f Mon Sep 17 00:00:00 2001 From: A2ZH Date: Fri, 19 Feb 2016 17:06:20 +0800 Subject: [PATCH 031/288] fix spelling mistake in 128.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 可以在将关于文件的课程复习一边 '在' -> '再' '边' -> '遍' --- 128.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/128.md b/128.md index 5ba3dd0..f3332a1 100644 --- a/128.md +++ b/128.md @@ -147,7 +147,7 @@ http://qiwsir.github.io Its language is Chinese. -这种方法是读取文件常用的。另外一个readlines()也可以。但是,需要有一些小心的地方,看官如果想不起来小心什么,可以在将关于文件的课程复习一边。 +这种方法是读取文件常用的。另外一个readlines()也可以。但是,需要有一些小心的地方,看官如果想不起来小心什么,可以再将关于文件的课程复习一遍。 上面过程用next()也能够读取。 @@ -209,4 +209,4 @@ [总目录](./index.md)   |   [上节:文件(2)](./127.md)   |   [下节:练习](./129.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From f6637bfbbd513199c3c95bff1a62f63f6960ab3a Mon Sep 17 00:00:00 2001 From: 3rogue Date: Sat, 20 Feb 2016 15:35:09 +0800 Subject: [PATCH 032/288] Update 207.md --- 207.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/207.md b/207.md index 22d0ee8..c6d9384 100644 --- a/207.md +++ b/207.md @@ -102,7 +102,7 @@ ##创建类 -因为在一般情况下,一个类都不是两三行能搞定的。所以,下面可能很少使用交互模式了,因为那样一旦有一点错误,就前功尽弃。我改用编辑界面。你用什么工具编辑?python自带一个IDE,可以使用。我习惯用vim。你用你习惯的工具即可。如果你没有别的工具,就用安装python是自带的那个IDE。 +因为在一般情况下,一个类都不是两三行能搞定的。所以,下面可能很少使用交互模式了,因为那样一旦有一点错误,就前功尽弃。我改用编辑界面。你用什么工具编辑?python自带一个IDE,可以使用。我习惯用vim。你用你习惯的工具即可。如果你没有别的工具,就用安装python时自带的那个IDE。 #!/usr/bin/env python # coding=utf-8 From 0f7e73abbd55747a4c0a17d0a9eb296b4b513a57 Mon Sep 17 00:00:00 2001 From: 3rogue Date: Sun, 21 Feb 2016 15:35:29 +0800 Subject: [PATCH 033/288] Update 235.md --- 235.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/235.md b/235.md index 1e1bb02..bea1302 100644 --- a/235.md +++ b/235.md @@ -26,9 +26,9 @@ 网上能够找到的最通常的说法是:上下文管理器使支持上下文管理协议的对象,这种对象实现了`__enter__()`和`__exit__()`方法。 -这个简洁而准确的定义,一般情况下一些高手使理解了。如果读者有疑惑,就说明...,我还是要把一个高雅的定义通俗化更好一些。 +这个简洁而准确的定义,一般情况下一些高手是理解了。如果读者有疑惑,就说明...,我还是要把一个高雅的定义通俗化更好一些。 -在Python中,下面的语句,也存在上下文,但它们使一气呵成执行的。 +在Python中,下面的语句,也存在上下文,但它们是一气呵成执行的。 >>> name = "laoqi" >>> if name == "laoqi": @@ -329,4 +329,4 @@ contextlib.contextmanager是一个装饰器,它作用于生成器函数(也 [总目录](./index.md)   |   [上节:生成器](./215.md)   |   [下节:错误和异常(1)](./216.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From ebe523689f72f99222a77e1e0fc52043a824cc7f Mon Sep 17 00:00:00 2001 From: 3rogue Date: Sun, 21 Feb 2016 15:40:18 +0800 Subject: [PATCH 034/288] Update 235.md --- 235.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/235.md b/235.md index bea1302..92f9c08 100644 --- a/235.md +++ b/235.md @@ -2,7 +2,7 @@ #上下文管理器 -在[《文件(1)》](./126.md)中提到,如果要打开文件,一种比较好的方法使使用`with`语句,因为这种方法,不仅结构简单,更重要的是不用再单独去判断某种异常情况,也不用专门去执行文件关闭的指令了。 +在[《文件(1)》](./126.md)中提到,如果要打开文件,一种比较好的方法是使用`with`语句,因为这种方法,不仅结构简单,更重要的是不用再单独去判断某种异常情况,也不用专门去执行文件关闭的指令了。 本节对这个有点神奇的`with`进行深入剖析。 @@ -14,17 +14,17 @@ 如果把它作为一个概念来阐述,似乎有点多余,因为从字面上也可以有一丝的体会,但是,我要说的是,那点直觉的体会不一定等于理性的严格定义,特别是周遭事物越来越复杂的时候。 -“上下文”的英文是context,在网上检索了一下关于“上下文”的说法,发现没有什么严格的定义,另外,不同的语言环境,对“上下文管理”有不同的说法。根据我个人的经验和能看到的某些资料,我以为可以把“上下文”理解为某一些语句构成的一个环境(也可以说使代码块),所谓“管理”就是要在这个环境中做一些事情,做什么事情呢?就Python而言,是要将前面某个语句(“上文”)干的事情独立成为对象,然后在后面(“下文”)中使用这个对象来做事情。 +“上下文”的英文是context,在网上检索了一下关于“上下文”的说法,发现没有什么严格的定义,另外,不同的语言环境,对“上下文管理”有不同的说法。根据我个人的经验和能看到的某些资料,我以为可以把“上下文”理解为某一些语句构成的一个环境(也可以说是代码块),所谓“管理”就是要在这个环境中做一些事情,做什么事情呢?就Python而言,是要将前面某个语句(“上文”)干的事情独立成为对象,然后在后面(“下文”)中使用这个对象来做事情。 **上下文管理协议** -英文是Context Management Protocol,既然使协议,就应该是包含某些方法的东西,大家都按照这个去做(协商好了的东西)。Python中的上下文管理协议中必须包含`__enter__()`和`__exit__()`两个方法。 +英文是Context Management Protocol,既然是协议,就应该是包含某些方法的东西,大家都按照这个去做(协商好了的东西)。Python中的上下文管理协议中必须包含`__enter__()`和`__exit__()`两个方法。 看这个两个方法的名字,估计读者也能领悟一二了(名字不是随便取的,这个某个岛国取名字的方法不同,当然,现在人家也不是随便取了)。 **上下文管理器** -网上能够找到的最通常的说法是:上下文管理器使支持上下文管理协议的对象,这种对象实现了`__enter__()`和`__exit__()`方法。 +网上能够找到的最通常的说法是:上下文管理器是支持上下文管理协议的对象,这种对象实现了`__enter__()`和`__exit__()`方法。 这个简洁而准确的定义,一般情况下一些高手是理解了。如果读者有疑惑,就说明...,我还是要把一个高雅的定义通俗化更好一些。 @@ -58,7 +58,7 @@ ##必要性 -刚才那个向文件中写入hello和python两个单词的示例,如果你觉得在工程中也可以这样做,就大错特错了。因为它存在隐含的问题,比如在写入了hello之后,不知道什么原因,后面的python不能写入了,最能说服你的是恰好遇到了“磁盘已满”——虽然这种情况的概率可能比抓奖券还还小,但作为严禁的程序员,使必须要考虑的,这也是程序复杂之原因,这时候后面的操作就出现了异常,无法执行,文件也不能close。解决这个问题的方法使用`try ... finally ...`语句,读者一定能写出来。 +刚才那个向文件中写入hello和python两个单词的示例,如果你觉得在工程中也可以这样做,就大错特错了。因为它存在隐含的问题,比如在写入了hello之后,不知道什么原因,后面的python不能写入了,最能说服你的是恰好遇到了“磁盘已满”——虽然这种情况的概率可能比抓奖券还还小,但作为严禁的程序员,是必须要考虑的,这也是程序复杂之原因,这时候后面的操作就出现了异常,无法执行,文件也不能close。解决这个问题的方法是用`try ... finally ...`语句,读者一定能写出来。 不错,的确解决了。 From 581679e91022a3665580bc82b116eb9f1ae03d66 Mon Sep 17 00:00:00 2001 From: 3rogue Date: Sun, 21 Feb 2016 16:23:58 +0800 Subject: [PATCH 035/288] Update 220.md --- 220.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/220.md b/220.md index ebbf125..60d7093 100644 --- a/220.md +++ b/220.md @@ -12,7 +12,7 @@ ##引用的方式 -不仅使标准库的模块,所有模块都服从下述引用方式。 +不仅是标准库的模块,所有模块都服从下述引用方式。 最基本的、也是最常用的,还是可读性非常好的: @@ -222,4 +222,4 @@ python的模块,不仅可以看帮助信息和文档,还能够查看源码 [总目录](./index.md)   |   [上节:编写模块](./219.md)   |   [下节:标准库(2)](./221.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 786bb9f815c0a5fc0b81eaa6467dcdbb335ab3e0 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 22 Feb 2016 12:27:06 +0800 Subject: [PATCH 036/288] add n! --- 129.md | 39 ++++++++++++++++++++++++++++++++++++++- 1code/12905.py | 11 +++++++++++ 1code/12905_2.py | 12 ++++++++++++ 3 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 1code/12905.py create mode 100644 1code/12905_2.py diff --git a/129.md b/129.md index 54d9094..1b78dbc 100644 --- a/129.md +++ b/129.md @@ -190,8 +190,45 @@ OK!完美地解决了问题,去除了code前面的一个空格。 保存运行之,看看结果和你推算的是否一致。 +##练习5 + +**问题描述** + +在数学中,用n!来表示阶乘。例如,4!=1×2×3×4=24。如果将n个物体排列,有多少种排列方式,那就是n!。根据定义,0!=1。 + +**解析** + +下面用Python程序来计算阶乘。 + + #!/usr/bin/env python + # coding=utf-8 + + n = int(raw_input("Enter an interger >=0: ")) + + fact = 1 + + for i in range(2, n + 1): + fact = fact * i + + print str(n) + " factorial is " + str(fact) + +这是用for循环来实现的,当然,你也可以使用while循环来计算阶乘。其代码如下: + + #!/usr/bin/env python + # coding=utf-8 + + n = int(raw_input('Enter an integer >= 0: ')) + + fact = 1 + i = 2 + while i<=n: + fact = fact * i + i += 1 + + print str(n) + " factorial is " + str(fact) + ------ [总目录](./index.md)   |   [上节:迭代](./128.md)   |   [下节:自省](./130.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,微信号:***qiwsir*不胜感激。 diff --git a/1code/12905.py b/1code/12905.py new file mode 100644 index 0000000..9a9bb77 --- /dev/null +++ b/1code/12905.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# coding=utf-8 + +n = int(raw_input("Enter an interger >=0: ")) + +fact = 1 + +for i in range(2, n + 1): + fact = fact * i + +print str(n) + " factorial is " + str(fact) diff --git a/1code/12905_2.py b/1code/12905_2.py new file mode 100644 index 0000000..a4e43f9 --- /dev/null +++ b/1code/12905_2.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +# coding=utf-8 + +n = int(raw_input('Enter an integer >= 0: ')) + +fact = 1 +i = 2 +while i<=n: + fact = fact * i + i += 1 + +print str(n) + " factorial is " + str(fact) From a192d8fd692c528a2135c54069a2a3fb8d9e25a3 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 22 Feb 2016 12:29:37 +0800 Subject: [PATCH 037/288] big inter --- 129.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/129.md b/129.md index 1b78dbc..e1a09b6 100644 --- a/129.md +++ b/129.md @@ -227,6 +227,8 @@ OK!完美地解决了问题,去除了code前面的一个空格。 print str(n) + " factorial is " + str(fact) +在计算阶乘的时候,如果你输入比较大的整数,也没有问题,因为Python对整数的最大取值没有限制,所以,即时遇到大整数,也可放心使用。 + ------ [总目录](./index.md)   |   [上节:迭代](./128.md)   |   [下节:自省](./130.md) From 6f3fd1fed7e087fcb88b2663422303d96fc821f1 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 22 Feb 2016 13:53:06 +0800 Subject: [PATCH 038/288] redit function --- 201.md | 46 ++++++++++++++++++++++------------------------ 1 file changed, 22 insertions(+), 24 deletions(-) diff --git a/201.md b/201.md index fb725d6..c16c2b5 100644 --- a/201.md +++ b/201.md @@ -15,10 +15,6 @@ ![](./2images/20101.png) -有初中数学水平都能理解一个大概了。这里不赘述。 - -本讲重点说明用python怎么来构造一个函数。 - ##深入理解函数 在中学数学中,可以用这样的方式定义函数:y=4x+3,这就是一个一次函数,当然,也可以写成:f(x)=4x+3。其中x是变量,它可以代表任何数。 @@ -31,23 +27,21 @@ ###变量不仅仅是数 -变量x只能是任意数吗?其实,一个函数,就是一个对应关系。看官尝试着将上面表达式的x理解为馅饼,4x+3,就是4个馅饼在加上3(一般来讲,单位是统一的,但你非让它不统一,也无妨),这个结果对应着另外一个东西,那个东西比如说是iphone。或者说可以理解为4个馅饼加3就对应一个iphone。这就是所谓映射关系。 +变量x只能是任意数吗?其实,一个函数,就是一个对应关系。读者尝试着将上面表达式的x理解为馅饼,4x+3,就是4个馅饼在加上3(一般来讲,单位是统一的,但你非让它不统一,也无妨),这个结果对应着另外一个东西,那个东西比如说是iphone。或者说可以理解为4个馅饼加3就对应一个iphone。这就是所谓映射关系。 所以,x,不仅仅是数,可以是你认为的任何东西。 ###变量本质——占位符 -函数中为什么变量用x?这是一个有趣的问题,自己google一下,看能不能找到答案。 +函数中为什么变量用x?这是一个有趣的问题,自己google一下,看能不能找到答案。很巧,在“知乎”上还真有人询问[这个问题](http://www.zhihu.com/question/20112835),可以阅读。 我也不清楚原因。不过,我清楚地知道,变量可以用x,也可以用别的符号,比如y,z,k,i,j...,甚至用alpha,beta这样的字母组合也可以。 **变量在本质上就是一个占位符。**这是一针见血的理解。什么是占位符?就是先把那个位置用变量占上,表示这里有一个东西,至于这个位置放什么东西,以后再说,反正先用一个符号占着这个位置(占位符)。 -其实在高级语言编程中,变量比我们在初中数学中学习的要复杂。但是,先不管那些,复杂东西放在以后再说了。现在,就按照初中数学的水平来研究python中的变量。 - -通常使小写字母来命名python中的变量,也可以在其中加上下划线什么的,表示区别。 +其实在高级语言编程中,变量比我们在初中数学中学习的要复杂。但是,先不管那些,复杂东西放在以后再说了。现在,就按照初中数学的水平来研究Python中的变量。 -比如:alpha,x,j,p_beta,这些都可以做为python的变量。 +通常使小写字母来命名Python中的变量,也可以在其中加上下划线什么的,表示区别。比如:alpha,x,j,p_beta,这些都可以做为python的变量。 ##建立简单函数 @@ -58,7 +52,7 @@ 这种方式建立的函数,跟在初中数学中学习的没有什么区别。当然,这种方式的函数,在编程实践中没有什么用途。 -别急躁,你在输入a=3,然后输入y,看看得到什么结果呢? +别急躁,你在输入a=3,然后输入y,看看得到什么结果呢? >>> a = 2 >>> y = 3 * a + 2 @@ -90,7 +84,7 @@ ##建立实用的函数 -上面用命令方式建立函数,还不够“正规化”,那么就来写一个.py文件吧。 +上面用命令方式建立函数,还不够“正规化”,现在就来写一个实用的函数吧。 例如下面的代码: @@ -99,10 +93,11 @@ def add_function(a, b): c = a + b - print c + return c if __name__ == "__main__": - add_function(2, 3) + result = add_function(2, 3) + print result 然后将文件保存,我把她命名为20101.py,你根据自己的喜好取个名字。 @@ -114,11 +109,14 @@ 下面开始庖丁解牛: -- `def add_function(a, b)`: 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数;add_function是这个函数名称,取名字是有讲究的,就好比你的名字一样。在python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢(严格地说,是把两个对象“相加”,这里相加的含义是比较宽泛的,包括对字符串等相加)?(a,b)这个括号里面的是这个函数的参数,也就是函数变量。冒号,这个冒号非常非常重要,如果少了,就报错了。冒号的意思就是下面好开始真正的函数内容了。 -- `c = a + b` 特别注意,这一行比上一行要缩进四个空格。这是python的规定,要牢记,不可丢掉,丢了就报错。然后这句话就是将两个参数(变量)相加,结果赋值与另外一个变量c。 -- `print c` 还是提醒看官注意,缩进四个空格。将得到的结果c的值打印出来。 +- `def`: 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数。`def`做在那一行,包括后面的`add_function(a, b)`,被称为函数头。 +- `add_function`:这是函数名称。取名字是有讲究的,就好比你的名字一样。在Python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢(严格地说,是把两个对象“相加”,这里相加的含义是比较宽泛的,包括对字符串等相加)? +- `(a,b)`:这是参数列表。要写在括号里面。这是一个变量列表,其中的变量指向函数的输入。在这个例子中,函数有两项输入,分别是a和b。在通常的函数中,输入项没有限定,可以是任意数量,当然也可以没有输入,这时候的参数列表就是一对空着的圆括号(),但是,必须得有这个圆括号。 +- `:`:这个冒号非常非常重要,如果少了,就报错了。这和前面的语句是类似的,冒号表示函数头结束,下面要开始函数体的内容了。 +- `c = a + b`:这一行开始,就是函数体。函数体使一个缩进了四个空格的代码块,完成你需要完成的工作。在这个代码块中,可以使用函数头中的变量,当然,不使用也可以。缩进四个空格。这是python的规定,要牢记,不可丢掉,丢了就报错。这句话就是将函数头的变量相加,结果赋值与另外一个变量c。 +- `return c`:还是提醒看官注意,缩进四个空格。`return`是函数的关键字,意思是要返回一个值。`return`语句执行时,Python跳出当前的函数并返回到调用这个函数的地方。在下面,有调用这个函数的地方`result = add_function(2, 3)`。但是,函数中的`return`语句也不是必须要写的,如果不写,Python将认为使以`return None`来作为结束的。也就是说,如果你的函数中没有`return`,事实上,在调用的时候,Python也会返回一个结果,这个结果就是None。 - `if __name__ == "__main__"`: 这句话先照抄,不解释,因为在[《自省》](./130.md)有说明,不知道你是不是认真阅读了。注意就是不缩进了。 -- add_function(2,3) 这才是真正调用前面建立的函数,并且传入两个参数:a=2,b=3。仔细观察传入参数的方法,就是把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符). +- `result = add_function(2,3)`:这是调用前面建立的函数,并且传入两个参数:a=2,b=3。仔细观察传入参数的方法,就是把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符)。当函数运行,遇到了`return`语句,就将函数中的结果返回到这里,赋值给result。 解牛完毕,做个总结: @@ -132,7 +130,7 @@ 几点说明: -- 函数名的命名规则要符合python中的命名要求。一般用小写字母和单下划线、数字等组合 +- 函数名的命名规则要符合Python中的命名要求。一般用小写字母和单下划线、数字等组合 - def是定义函数的关键词,这个简写来自英文单词define - 函数名后面是圆括号,括号里面,可以有参数列表,也可以没有参数 - 千万不要忘记了括号后面的冒号 @@ -152,9 +150,9 @@ >>> add(2,3) #通过函数,计算2+3 5 -注意上面的add(x,y)函数,在这个函数中,没有特别规定参数x,y的类型。其实,这句话本身就是错的,还记得在前面已经多次提到,在python中,变量无类型,只有对象才有类型,这句话应该说成:x,y并没有严格规定其所引用的对象类型。这是python跟某些语言比如java很大的区别,在有些语言中,需要在定义函数的时候告诉函数参数的数据类型。python不用那样做。 +注意上面的add(x,y)函数,在这个函数中,没有特别规定参数x,y的类型。其实,这句话本身就是错的,还记得在前面已经多次提到,在Python中,变量无类型,只有对象才有类型,这句话应该说成:x,y并没有严格规定其所引用的对象类型。这是Python跟某些语言比如java很大的区别,在有些语言中,需要在定义函数的时候告诉函数参数的数据类型。Python不用那样做。 -为什么?列位不要忘记了,这里的所谓参数,跟前面说的变量,本质上是一回事。只有当用到该变量的时候,才建立变量与对象的对应关系,否则,关系不建立。而对象才有类型。那么,在add(x,y)函数中,x,y在引用对象之前,是完全飘忽的,没有被贴在任何一个对象上,换句话说它们有可能引用任何对象,只要后面的运算许可,如果后面的运算不许可,则会报错。 +为什么?列位不要忘记了,这里的所谓参数,跟前面说的变量,本质上是一回事。只有当用到该变量的时候,才建立变量与对象的对应关系,否则,关系不建立。而对象才有类型。那么,在`add(x,y)`函数中,x,y在引用对象之前,是完全飘忽的,没有被贴在任何一个对象上,换句话说它们有可能引用任何对象,只要后面的运算许可,如果后面的运算不许可,则会报错。 >>> add("qiw","sir") #这里,x="qiw",y="sir",让函数计算x+y,也就是"qiw"+"sir" 'qiwsir' @@ -165,7 +163,7 @@ File "", line 2, in add TypeError: cannot concatenate 'str' and 'int' objects #仔细阅读报错信息,就明白错误之处了 -从实验结果中发现:x+y的意义完全取决于对象的类型。在python中,将这种依赖关系,称之为**多态**。对于python中的多态问题,以后还会遇到,这里仅仅以此例子显示一番。请看官要留心注意的:**python中为对象编写接口,而不是为数据类型。**读者先留心一下这句话,或者记住它,随着学习的深入,会领悟到其真谛的。 +从实验结果中发现:`x+y`的意义完全取决于对象的类型。在Python中,将这种依赖关系,称之为**多态**。对于Python中的多态问题,以后还会遇到,这里仅仅以此例子显示一番。请看官要留心注意的:**Python中为对象编写接口,而不是为数据类型。**读者先留心一下这句话,或者记住它,随着学习的深入,会领悟到其真谛的。 此外,也可以将函数通过赋值语句,与某个变量建立引用关系: @@ -185,7 +183,7 @@ 江湖上还有的大师,会通过某个人的名字来预测他/她的吉凶祸福等。看来名字这玩意太重要了。“名不正,言不顺”,歪解:名字不正规化,就不顺。这是歪解,希望不要影响看官正确理解。不知道大师们是不是能够通过外国人名字预测外国人大的吉凶祸福呢?比如Aoi sola,这个人怎么样?不管怎样,某国人是很在意名字的,旁边有个国家似乎就不在乎,比如山本五十六,在名字中间出现数字,就好像我们的张三李四王二麻子那样随便,不过,有一种说法,“山本五十六”的意思是这个人出生时,他父亲56岁,看来跟张三还不一样的。 -python也很在乎名字问题,其实,所有高级语言对名字都有要求。为什么呢?因为如果命名乱了,计算机就有点不知所措了。看python对命名的一般要求。 +Python也很在乎名字问题,其实,所有高级语言对名字都有要求。为什么呢?因为如果命名乱了,计算机就有点不知所措了。看Python对命名的一般要求。 - 文件名:全小写,可使用下划线 @@ -293,5 +291,5 @@ python也很在乎名字问题,其实,所有高级语言对名字都有要 [总目录](./index.md)   |   [上节:自省](./130.md)   |   [下节:函数(2)](./202.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,微信号:**qiwsir**,不胜感激。 From 26c755ba40e6900e10d2f10ef1c336bc94bf85e2 Mon Sep 17 00:00:00 2001 From: TimLiu Date: Wed, 24 Feb 2016 10:10:47 +0800 Subject: [PATCH 039/288] =?UTF-8?q?def=E6=8E=92=E7=89=88=E5=8F=8Aself.set?= =?UTF-8?q?=5Fsecure=5Fcookie(username)=E5=BA=94=E8=AF=A5=E6=98=AF?= =?UTF-8?q?=EF=BC=9Aself.get=5Fsecure=5Fcookie(username)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit def排版及self.set_secure_cookie(username)应该是:self.get_secure_cookie(username) --- 307.md | 31 ++++++++++++++++--------------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/307.md b/307.md index c01f02f..211d0f5 100644 --- a/307.md +++ b/307.md @@ -135,19 +135,20 @@ cookie是好的,被普遍使用。在tornado中,也提供对cookie的读写 `set_cookie()`和`get_cookie()`是默认提供的两个方法,但是它是明文不加密传输的。 在index.py文件的IndexHandler类的post()方法中,当用户登录,验证用户名和密码后,将用户名和密码存入cookie,代码如下: - def post(self): - username = self.get_argument("username") - password = self.get_argument("password") - user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) - if user_infos: - db_pwd = user_infos[0][2] - if db_pwd == password: - self.set_cookie(username,db_pwd) #设置cookie - self.write(username) - else: - self.write("your password was not right.") - else: - self.write("There is no thi user.") + + def post(self): + username = self.get_argument("username") + password = self.get_argument("password") + user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) + if user_infos: + db_pwd = user_infos[0][2] + if db_pwd == password: + self.set_cookie(username,db_pwd) #设置cookie + self.write(username) + else: + self.write("your password was not right.") + else: + self.write("There is no thi user.") 上面代码中,较以前只增加了一句`self.set_cookie(username,db_pwd)`,在回到登录页面,等候之后就成为: @@ -193,7 +194,7 @@ tornado提供另外一种安全的方法:set_secure_cookie()和get_secure_cook self.set_secure_cookie(username, db_pwd, httponly=True, secure=True) -要获取cookie,可以使用`self.set_secure_cookie(username)`方法,将这句放在user.py中某个适合的位置,并且可以用print语句打印出结果,就能看到变量username对应的cookie了。这时候已经不是那个“密”过的,是明文显示。 +要获取cookie,可以使用`self.get_secure_cookie(username)`方法,将这句放在user.py中某个适合的位置,并且可以用print语句打印出结果,就能看到变量username对应的cookie了。这时候已经不是那个“密”过的,是明文显示。 用这样的方法,浏览器通过SSL连接传递cookie,能够在一定程度上防范跨站脚本攻击。 @@ -282,4 +283,4 @@ XSRF的含义是Cross-site request forgery,即跨站请求伪造,也称之 [总目录](./index.md)   |   [上节:用tornado做网站(4)](./306.md)   |   [下节:用tornado做网站(6)](./308.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 9960354796df273de83ab05df8c06e7bb2e50df0 Mon Sep 17 00:00:00 2001 From: A2ZH Date: Sat, 27 Feb 2016 10:10:26 +0800 Subject: [PATCH 040/288] fix spelling mistake in 204.md --- 204.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/204.md b/204.md index ad66871..d52d522 100644 --- a/204.md +++ b/204.md @@ -1,6 +1,6 @@ >行事为人要端正,好像行在白昼。不可荒宴醉酒,不可好色邪荡,不可争竞嫉妒。总要披戴主耶稣基督,不要为肉体安排,去放纵私欲。 ->Lte us live decently as in the daytime, not in carousing and drunkenness, not in sexual immorality and sensuality, not in discord and jealousy. Instead, put on the Lord Jesus Christ, and make no provision for the flesh to arouse its desires.(ROMANS 13:13-14) +>Let us live decently as in the daytime, not in carousing and drunkenness, not in sexual immorality and sensuality, not in discord and jealousy. Instead, put on the Lord Jesus Christ, and make no provision for the flesh to arouse its desires.(ROMANS 13:13-14) #函数(4) @@ -364,4 +364,4 @@ filter的中文含义是“过滤器”,在python中,它就是起到了过 [总目录](./index.md)   |   [上节:函数(3)](./203.md)   |   [下节:函数练习](./205.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 619003ab7c41755995a6a92c7eedb14d831da677 Mon Sep 17 00:00:00 2001 From: A2ZH Date: Sat, 27 Feb 2016 10:11:35 +0800 Subject: [PATCH 041/288] fix spelling mistake in 209.md --- 209.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/209.md b/209.md index 90c599a..8c6e32c 100644 --- a/209.md +++ b/209.md @@ -84,7 +84,7 @@ ##多重继承 -所谓多重继承,就是只某一个类的父类,不止一个,而是多个。比如: +所谓多重继承,就是指某一个类的父类,不止一个,而是多个。比如: #!/usr/bin/env python # coding=utf-8 @@ -265,4 +265,4 @@ python中有这样一种方法,这种方式是被提倡的方法:super函数 [总目录](./index.md)   |   [上节:类(3)](./208.md)   |   [下节:类(5)](./210.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 1a4a5b15974964db1b2c0cdbab81cafc5429c7c8 Mon Sep 17 00:00:00 2001 From: A2ZH Date: Sat, 27 Feb 2016 10:13:07 +0800 Subject: [PATCH 042/288] fix spelling mistake in 210.md --- 210.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/210.md b/210.md index de20e55..5d16917 100644 --- a/210.md +++ b/210.md @@ -103,7 +103,7 @@ 先看静态方法,虽然名为静态方法,但也是方法,所以,依然用def语句来定义。需要注意的是文件名后面的括号内,没有self,这和前面定义的类中的方法是不同的,也正是因着这个不同,才给它另外取了一个名字叫做静态方法,否则不就“泯然众人矣”。如果没有self,那么也就无法访问实例变量、类和实例的属性了,因为它们都是借助self来传递数据的。 -在看类方法,同样也具有一般方法的特点,区别也在参数上。类方法的参数也没有self,但是必须有cls这个参数。在类方法中,能够方法类属性,但是不能访问实例属性(读者可以自行设计代码检验之)。 +在看类方法,同样也具有一般方法的特点,区别也在参数上。类方法的参数也没有self,但是必须有cls这个参数。在类方法中,能够访问类属性,但是不能访问实例属性(读者可以自行设计代码检验之)。 简要明确两种方法。下面看调用方法。两种方法都可以通过实例调用,即绑定实例。也可以通过类来调用,即`StaticMethod.foo()`这样的形式,这也是区别一般方法的地方,一般方法必须用通过绑定实例调用。 @@ -364,4 +364,4 @@ We get the following output: [总目录](./index.md)   |   [上节:类(4)](./209.md)   |   [下节:多态和封装](./211.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 18409f4c169b2d5fcdab506c5e401bf2761e683c Mon Sep 17 00:00:00 2001 From: A2ZH Date: Sat, 27 Feb 2016 10:14:52 +0800 Subject: [PATCH 043/288] fix spelling mistake in 215.md --- 215.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/215.md b/215.md index f5e61b2..b7b6d97 100644 --- a/215.md +++ b/215.md @@ -221,7 +221,7 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 当执行到`r.next()`的时候,生成器开始执行,在内部遇到了`yield n`挂起。注意在生成器函数中,`n = (yield n)`中的`yield n`是一个表达式,并将结果赋值给n,虽然不严格要求它必须用圆括号包裹,但是一般情况都这么做,请读者也追随这个习惯。 -当执行`r.send("hello")`的时候,原来已经被挂起的生成器(函数)又被唤醒,开始执行`n = (yield n)`,也就是讲send()方法发送的值返回。这就是在运行后能够为生成器提供值的含义。 +当执行`r.send("hello")`的时候,原来已经被挂起的生成器(函数)又被唤醒,开始执行`n = (yield n)`,也就是将send()方法发送的值返回。这就是在运行后能够为生成器提供值的含义。 如果接下来再执行`r.next()`会怎样? @@ -242,7 +242,7 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 >>> s.send(None) 5 -这是返回的是调用函数的时传入的值。 +这时返回的是调用函数的时传入的值。 此外,还有两个方法:close()和throw() @@ -259,4 +259,4 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 - \ No newline at end of file + From 3cb641b8f3dac4fcef7ec91f5683d9ee997c75da Mon Sep 17 00:00:00 2001 From: A2ZH Date: Sat, 27 Feb 2016 10:52:12 +0800 Subject: [PATCH 044/288] fix --- 235.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/235.md b/235.md index 92f9c08..5b7e235 100644 --- a/235.md +++ b/235.md @@ -58,7 +58,7 @@ ##必要性 -刚才那个向文件中写入hello和python两个单词的示例,如果你觉得在工程中也可以这样做,就大错特错了。因为它存在隐含的问题,比如在写入了hello之后,不知道什么原因,后面的python不能写入了,最能说服你的是恰好遇到了“磁盘已满”——虽然这种情况的概率可能比抓奖券还还小,但作为严禁的程序员,是必须要考虑的,这也是程序复杂之原因,这时候后面的操作就出现了异常,无法执行,文件也不能close。解决这个问题的方法是用`try ... finally ...`语句,读者一定能写出来。 +刚才那个向文件中写入hello和python两个单词的示例,如果你觉得在工程中也可以这样做,就大错特错了。因为它存在隐含的问题,比如在写入了hello之后,不知道什么原因,后面的python不能写入了,最能说服你的是恰好遇到了“磁盘已满”——虽然这种情况的概率可能比抓奖券还小,但作为严谨的程序员,是必须要考虑的,这也是程序复杂之原因,这时候后面的操作就出现了异常,无法执行,文件也不能close。解决这个问题的方法是用`try ... finally ...`语句,读者一定能写出来。 不错,的确解决了。 @@ -239,7 +239,7 @@ nested的汉语意思是“嵌套的,内装的”,从字面上读者也可 for line in read_file.readlines(): write_file.write(line) -此种写法不是不行,但是不提倡,因为它太不Pythoner了。其实这里就涉及到了嵌套,因此可以使用`contextlib.nested`重。 +此种写法不是不行,但是不提倡,因为它太不Pythoner了。其实这里就涉及到了嵌套,因此可以使用`contextlib.nested`重写。 with contextlib.nested(open("23501.txt", "r"), open("23503.txt", "w")) as (read_file, write_file): for line in read_file.readlines(): From 464b437dad617030749c927d9016eb4d7dd9e2e8 Mon Sep 17 00:00:00 2001 From: knight Date: Mon, 29 Feb 2016 21:21:09 +0800 Subject: [PATCH 045/288] Update 227.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改错别字 --- 227.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/227.md b/227.md index c028095..391030a 100644 --- a/227.md +++ b/227.md @@ -39,7 +39,7 @@ json模块相对xml单纯了很多: >>> print data_json [{"lang": ["python", "english"], "age": 40, "name": "qiwsir"}] -encoding的操作是比较简单的,请注意观察data和data_json的不同——lang的值从元组编程了列表,还有不同: +encoding的操作是比较简单的,请注意观察data和data_json的不同——lang的值从元组变成了列表,还有不同: >>> type(data_json) @@ -170,4 +170,4 @@ decoding的过程也像上面一样简单: [总目录](./index.md)   |   [上节:标准库(7)](./226.md)   |   [下节:第三方库](./228.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 84b54f041f81c3b659848cb35ea40903e448973c Mon Sep 17 00:00:00 2001 From: ShomyLiu <18222333186@163.com> Date: Mon, 7 Mar 2016 12:07:06 +0800 Subject: [PATCH 046/288] update a little error: __inter__ to __iter__ --- 215.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/215.md b/215.md index b7b6d97..042c80a 100644 --- a/215.md +++ b/215.md @@ -25,7 +25,7 @@ 'next', 'send', 'throw'] -为了容易观察,我将上述结果进行了重新排版。是不是发现了在迭代器中必有的方法`__inter__()`和`next()`,这说明它是迭代器。如果是迭代器,就可以用for循环来依次读出其值。 +为了容易观察,我将上述结果进行了重新排版。是不是发现了在迭代器中必有的方法`__iter__()`和`next()`,这说明它是迭代器。如果是迭代器,就可以用for循环来依次读出其值。 >>> for i in my_generator: ... print i From 483e42dfc126b2cb5c7c06a478264fff531f89e1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 9 Mar 2016 15:55:29 +0800 Subject: [PATCH 047/288] new --- 106.md | 133 +++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 97 insertions(+), 36 deletions(-) diff --git a/106.md b/106.md index d39ae69..a6fda21 100644 --- a/106.md +++ b/106.md @@ -2,39 +2,64 @@ #字符串(1) -如果对自然语言分类,有很多中分法,比如英语、法语、汉语等,这种分法是最常见的。在语言学里面,也有对语言的分类方法,比如什么什么语系之类的。我这里提出一种分法,这种分法尚未得到广大人民群众和研究者的广泛认同,但是,我相信那句“真理是掌握在少数人的手里”,至少在这里可以用来给自己壮壮胆。 +计算机,当初是为了什么而发明的? -我的分法:一种是语言中的两个元素(比如两个字)拼接在一起,出来一个新的元素(比如新的字);另外一种是两个元素拼接在一起,只是得到这两个元素的并列显示。比如“好”和“人”,两个元素拼接在一起是“好人”,而3和5拼接(就是整数求和)在一起是8,如果你认为是35,那就属于第二类了。 +计算! -把我的这种分法抽象一下: +现如今,我们通常所见之范围内,都在用她做什么? -- 一种是:△ +□ = ○ -- 另外一种是:△ +□ = △ □ +聊天!看视频!打游戏!处理文档! -我们的语言中,离不开以上两类,不是第一类就是第二类。 +显然,已经“忘记初心”,计算机再不是当初的计算机了,成为了“电脑”。也正是忘记初心,变成“电脑”,才成为大众的工具。而支持她作为“电脑”只用的,就是里面的软件。 -太天才了。请鼓掌。 +电脑中的软件,只有少数是用来计算的,多数是不用于计算的。处理文档则是多数功能之一。 + +软件程序如何处理文档?要再看看自然语言。 + +如果对自然语言分类,有很多种分法,比如英语、法语、汉语等,这种分法是最常见的。 + +我还有一种分类方法,固然尚未得到广泛认同,但“真理是掌握在少数人的手里”是我的信念,至少可以让自己成为“民科”。 + +来自“民科”的分类法: + +1. 语言中的两个元素(比如两个字)拼接在一起,出来一个新的元素(比如新的字),这是第一类; +2. 两个元素并排摆放在一起,只是得到这两个元素的并列显示。比如“好”和“人”,两个元素拼接在一起是“好人”,这是第二类。 + +举例:3和5拼接(就是整数求和)在一起是8,这就是第一类;如果是35,那就属于第二类。 + +只有抽象的原理才能是普适的,所以,用符号的方式概括上述分类: + +- 第一类:△ +□ = ○ +- 第二类:△ +□ = △ □ + +很放肆地下一个结论:人类的语言,离不开以上两类,不是第一类就是第二类。 + +可以鼓掌了。 + +之所以自鸣得意,是因为了解的太少。 ##字符串 -在我洋洋自得的时候,我google了一下,才发现,自己没那么高明,看[维基百科的字符串词条](http://zh.wikipedia.org/wiki/%E5%AD%97%E7%AC%A6%E4%B8%B2)是这么说的: +google,不至于让我盲目。 + +[维基百科的字符串词条](http://zh.wikipedia.org/wiki/%E5%AD%97%E7%AC%A6%E4%B8%B2)早已经有了完整的说明,这个说明是针对一种叫做“字符串”的东西而阐述的: >字符串(String),是由零个或多个字符组成的有限串行。一般记为s=a[1]a[2]...a[n]。 -看到维基百科的伟大了吧,它已经把我所设想的一种情况取了一个形象的名称,叫做字符串,本质上就是一串字符。 +伟大的维基百科!它已经把我煞费苦心还自鸣得意的分类取了一个形象的名称,叫做字符串,本质上就是一串字符。 -根据这个定义,在前面两次让一个程序员感到伟大的"Hello,World",就是一个字符串。或者说不管用英文还是中文还是别的某种文,写出来的文字都可以做为字符串对待,当然,里面的特殊符号,也是可以做为字符串的,比如空格等。 +根据这个定义,在前面两次让一个程序员感到神奇的"Hello,World",就是一个字符串。或者说不管用英文还是中文还是别的某种文,写出来的文字都可以做为字符串对待,当然,里面的特殊符号,也是做为字符串的,比如空格等。 -严格地说,在python中的字符串是一种对象类型,这种类型用str表示,通常单引号`''`或者双引号`""`包裹起来。 +严格地说,在Python中的字符串是一种对象类型,这种类型用str表示,通常单引号`''`或者双引号`""`包裹起来。 ->字符串和前面讲过的数字一样,都是对象的类型,或者说都是值。当然,表示方式还是有区别的。 +>字符串和前面讲过的数字一样,都是对象的类型,或者说都是Python数据类型。当然,表示方式还是有区别的。 >>> "I love Python." 'I love Python.' >>> 'I LOVE PYTHON.' 'I LOVE PYTHON.' -从这两个例子中可以看出来,不论使用单引号还是双引号,结果都是一样的。 +不论使用单引号还是双引号,结果都是一样的,都是字符串。 >>> 250 250 @@ -46,7 +71,7 @@ >>> type("250") -仔细观察上面的区别,同样是250,一个没有放在引号里面,一个放在了引号里面,用`type()`函数来检验一下,发现它们居然是两种不同的对象类型,前者是int类型,后者则是str类型,即字符串类型。所以,请大家务必注意,不是所有数字都是int(or float),必须要看看,它在什么地方,如果在引号里面,就是字符串了。如果搞不清楚是什么类型,就让`type()`来帮忙搞定。 +仔细观察上面的区别,同样是250,一个没有放在引号里面,一个放在了引号里面,用`type()`函数来检验一下,发现它们居然是两种不同的对象类型,前者是int类型,后者则是str类型,即字符串类型。所以,务必注意,不是所有数字都是int(or float),必须要看看,它在什么地方,如果在引号里面,就是字符串了。如果搞不清楚是什么类型,就让`type()`来帮忙搞定。 操练一下字符串吧。 @@ -57,7 +82,9 @@ 在print后面,打印的都是字符串。注意,是双引号里面的,引号不是字符串的组成部分。它是在告诉计算机,它里面包裹着的是一个字符串。 -爱思考的看官肯定发现上面这句话有问题了。如果我要把下面这句话看做一个字符串,应该怎么做? +爱思考,有惊喜;多尝试,有收获。 + +如果把下面这句话看做一个字符串,应该怎么做? What's your name? @@ -73,7 +100,11 @@ >在python中,这一点是非常友好的,如果语句存在错误,就会将错误输出来,供程序员改正参考。当然,错误来源有时候比较复杂,需要根据经验和知识进行修改。还有一种修改错误的好办法,就是将错误提示放到google中搜索。 -上面那个值的错误原因是什么呢?仔细观察,发现那句话中事实上有三个单引号,本来一对单引号之间包裹的是一个字符串,现在出现了三个(一对半)单引号,computer姑娘迷茫了,她不知道单引号包裹的到底是谁。于是报错。 +上面的错误原因是什么呢? + +仔细观察,发现那句话中事实上有三个单引号,本来一对单引号之间包裹的是一个字符串,现在出现了三个(一对半)单引号,computer姑娘迷茫了,她不知道单引号包裹的到底是谁。于是报错。 + +有解吗?有!必须有。 **解决方法一:**双引号包裹单引号 @@ -84,7 +115,7 @@ **解决方法二:**使用转义符 -所谓转义,就是让某个符号不在表示某个含义,而是表示另外一个含义。转义符的作用就是它能够转变符号的含义。在python中,用`\`作为转义符(其实很多语言,只要有转义符的,都是用这个符号)。 +所谓转义,就是让某个符号不在表示某个含义,而是表示另外一个含义。转义符的作用就是它能够转变符号的含义。在Python中,用`\`作为转义符(其实很多语言,只要有转义符的,都是用这个符号)。 >>> 'What\'s your name?' "What's your name?" @@ -92,10 +123,12 @@ 是不是看到转义符`\`的作用了。 本来单引号表示包括字符串,它不是字符串一部分,但是如果前面有转义符,那么它就失去了原来的含义,转化为字符串的一部分,相当于一个特殊字符了。 + +变量能不能指向某个字符串?如果可以则操作会更简单。 ##变量和字符串 -前面讲过**变量无类型,对象有类型**了,比如在数字中: +曾记否:**变量无类型,对象有类型**。比如在数字中: >>> a = 5 >>> a @@ -103,7 +136,11 @@ 其本质含义是变量a相当于一个标签,贴在了对象5上面。并且我们把这个语句叫做赋值语句。 -同样,在对字符串类型的对象,也是这样,能够通过赋值语句,将对象与某个标签(变量)关联起来。 +整数是对象,通过赋值语句可以设置一个变量指向整数; + +字符串是对象,显然也能够通过赋值语句,实现变量指向字符串。 + +所以字符串对象与某个变量联系在一起: >>> b = "hello,world" >>> b @@ -111,27 +148,37 @@ >>> print b hello,world -还记得我们曾经用过一个type命令吗?现在它还有用,就是检验一个变量,到底跟什么类型联系着,是字符串还是数字? +检查类型的命令`type`总是在我们需要的时候被想起来。 >>> type(a) >>> type(b) -有时候,你会听到一种说法:把a称之为数字型变量,把b叫做字符(串)型变量。这种说法,在某些语言中是成立的。某些语言,需要提前声明变量,然后变量就成为了一个筐,将值装到这个筐里面。但是,python不是这样的。要注意区别。 +有一种说法:a称之为数字型变量,b叫做字符(串)型变量。 + +这种说法,在某些语言中是成立的。某些语言,需要提前声明变量,然后变量就成为了一个筐,将值装到这个筐里面。 + +但是,Python不是这样的。要注意区别。 + +小学语文老师布置这样一个题目:请用“不约而同”造句。 + +一小朋友回答: + +我问姐姐,“约吗?”,姐姐说,不约儿童。 -##拼接字符串 +上面这句话,就是多个字符串连接到了一起。所以,字符串是可以连接起来的。 -还记得我在本节开篇提出的那个伟大发现吗?就是将两个东西拼接起来。 +##连接字符串 -对数字,如果拼接,就是对两个数字求和。如:3+5,就计算出为8。那么对字符串都能进行什么样的操作呢?试试吧: +对数字,用`+`,可以得到一个新的数字,如:`3+5`,就得到了`8`。那么对字符串都能进行什么样的操作呢?试试吧: >>> "py" + "thon" 'python' -跟我那个不为大多数人认可的发现是一样的,你还不认可吗?两个字符串相加,就相当于把两个字符串连接起来。(别的运算就别尝试了,没什么意义,肯定报错,不信就试试) +两个字符串可以“相加”,但与数字“相加”不同。实质上是把两个字符串连接起来。 - >>> "py" - "thon" #这么做的人,是脑袋进水泥了吧? + >>> "py" - "thon" # 在进行这种操作的时候,要斟酌一下其意义? Traceback (most recent call last): File "", line 1, in TypeError: unsupported operand type(s) for -: 'str' and 'str' @@ -145,25 +192,29 @@ File "", line 1, in TypeError: cannot concatenate 'str' and 'int' objects ->这里引入了一个指令:`print`,意思就是打印后面的字符串(或者指向字符串的变量),上面是python2中的使用方式,在python3中,它变成了一个函数。应该用`print(b+a)`的样式了。 +>这里引入了一个指令:`print`,意思就是打印后面的字符串(或者指向字符串的变量),上面是Python 2中的使用方式,在python 3中,它变成了一个函数。应该用`print(b+a)`的样式了。 -报错了,其错误原因已经打印出来了(一定要注意看打印出来的信息):`cannot concatenate 'str' and 'int' objects`。原来`a`对应的对象是一个`int`类型的,不能将它和`str`对象连接起来。怎么办? +报错了,其错误原因已经打印出来(一定要注意看打印出来的信息):`cannot concatenate 'str' and 'int' objects`。原来`a`对应的对象是一个`int`类型的,不能将它和`str`对象连接起来。 -原来,用`+`拼接起来的两个对象,必须是同一种类型的。如果两个都是数字,毫无疑问是正确的,就是求和;如果都是字符串,那么就得到一个新的字符串。 +怎么办? + +原来,用`+`所连接的两个对象,必须是同一种类型。 + +如果两个都是数字,毫无疑问是正确的,就是求和;如果都是字符串,那么就得到一个新的字符串。 修改上面的错误,可以通过以下方法: >>> print b + `a` free1989 -注意,\` \` 是反引号,不是单引号,就是键盘中通常在数字1左边的那个,在英文半角状态下输入的符号。这种方法,在编程实践中比较少应用,特别是在python3中,已经把这种方式弃绝了。我想原因就是这个符号太容易和单引号混淆了。在编程中,也不容易看出来,可读性太差。 +注意,上面的代码,一不小心就会犯错误。包裹着字母`a`的,不是单引号,是键盘中通常在数字1左边的那个,在英文半角状态下输入的符号——叫做“反引号”。这种方法,在编程实践中比较少应用,特别是在python 3中,已经把这种方式弃绝了。窃以为原因就是这个符号太容易和单引号混淆了。在编程中,也不容易看出来,可读性太差。 -常言道:“困难只有一个,解决困难的方法不止一种”,既然反引号可读性不好,在编程实践中就尽量不要使用。于是乎就有了下面的方法,这是被广泛采用的。不但简单,更主要是直白,一看就懂什么意思了。 +常言道,“困难只有一个,解决困难的方法不止一种”,既然反引号可读性不好,在编程实践中就尽量不要使用。于是乎就有了下面的方法,这是被广泛采用的。不但简单,更主要是直白,一看就懂什么意思了。 >>> print b + str(a) free1989 -用`str(a)`实现将整数对象转换为字符串对象。虽然str是一种对象类型,但是它也能够实现对象类型的转换,这就起到了一个函数的作用。其实前面已经讲过的int也有类似的作用。比如: +用`str(a)`实现将整数对象转换为字符串对象。虽然`str`是一种对象类型,但是它也能够实现对象类型的转换——`str()`是函数,关于函数,后面会详述。其实前面已经遇到过`int()`了。比如: >>> a = "250" >>> type(a) @@ -183,7 +234,11 @@ 这里repr()是一个函数,其实就是反引号的替代品,它能够把结果字符串转化为合法的python表达式。 -可能看官看到这个,就要问它们三者之间的区别了。首先明确,repr()和\`\`是一致的,就不用区别了。接下来需要区别的就是repr()和str,一个最简单的区别,repr是函数,str是跟int一样,一种对象类型。不过这么说是不能完全解惑的。幸亏有那么好的google让我辈使用,你会找到不少人对这两者进行区分的内容,我推荐这个: +三种解决方法,有区别吗? + +首先,repr()和反引号是一致的,就不用区别了。 + +然后区分repr()和str,不用消耗脑细胞,交给Google,查询到这样的描述: >1. When should i use str() and when should i use repr() ? > @@ -209,9 +264,13 @@ 以上英文内容来源:http://stackoverflow.com/questions/19331404/str-vs-repr-functions-in-python-2-7-5 +字符串中的困难,不仅在上面所述,还有更多,例如“转义符”,不少错误可能与此有关。 + ##Python转义字符 -在字符串中,有时需要输入一些特殊的符号,但是,某些符号不能直接输出,就需要用转义符。所谓转义,就是不采用符号本来的含义,而采用另外一含义了。下面表格中列出常用的转义符: +转义符,已经小试牛刀,便显威力——`What's your name?`。 + +在字符串中,总会有一些特殊的符号,就需要用转义符。所谓转义,就是不采用符号本来的含义,而采用另外一含义。下面表格中列出常用的转义符: |转义字符 | 描述 | |----------|-------| @@ -232,7 +291,7 @@ | \xyy | 十六进制数,yy代表的字符,例如:\x0a代表换行| | \other | 其它的字符以普通格式输出 | -以上所有转义符,都可以通过交互模式下print来测试一下,感受实际上是什么样子的。例如: +以上所有转义符,都可以通过交互模式下`print`来测试,感受实际上是什么样子的。例如: >>> print "hello.I am qiwsir.\ #这里换行,下一行接续 ... My website is 'http://qiwsir.github.io'." @@ -241,7 +300,9 @@ >>> print "you can connect me by qq\\weibo\\gmail" #\\是为了要后面那个\ you can connect me by qq\weibo\gmail -看官自己试试吧。如果有问题,可以联系我解答。 +自己动手,丰衣足食,试试吧。 + +`print`解决了显示问题,要向程序输入一个内容,这就需要`raw_input()`粉墨登场了。 ------ From 5a49104c116ad584d49930d1fde0f348627ce324 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 10 Mar 2016 10:02:25 +0800 Subject: [PATCH 048/288] new --- 01.md | 54 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 19 deletions(-) diff --git a/01.md b/01.md index 2692a60..c1338df 100644 --- a/01.md +++ b/01.md @@ -6,6 +6,13 @@ 我已经在[《零基础学Python(第一版)》](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/index.md)中写了一个专门讲述Python故事的——[唠叨一些关于Python的事情](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/001.md)——章节,今天再写类似的标题,不打算完全重复原来的,只是把部分认为重要的或者不可或缺的东西复制过来。 +原来写了第一版,现在又写第二版,显然是对第一版不满意。不满意在哪里呢? + +- 第一版的有些知识阐述还不完善,也有不严谨之处,当然,第二版也会有,但试图修正 +- 第二版较第一版,在内容上要进行大幅度扩展 + +总之,第二版要有优于第一版的地方,所以,请读者还是阅读此版。 + ##越来越火的Python 在前几年(before 2011),我跟一些朋友介绍python的时候,看到的常常是一种很诧异的眼神,通常会听到: @@ -21,19 +28,22 @@ 2014年初,我开始写《零基础学Python》系列,就得到了很多朋友的支持,而且吸引了不少学习Python的朋友,特别是在我的那个QQ群里面,集中了不少学习者和爱好者,当然也有高手深藏不露。 - 获得我发布的有关Python信息途径: - 1. 加入QQ群,里面可以跟很多人交流。QQ群:Code Craft:26913719 - 2. 关注我的新浪微博,名称是:老齐Py。地址:http://weibo.com/qiwsir - 3. 到github.com上直接follow我,名称是:qiwsir。地址:https://github.com/qiwsir - 4. 经常关注我的网站:www.itdiffer.com +获得我发布的有关Python信息途径: + +1. 加入QQ群,里面可以跟很多人交流。QQ群:Code Craft:26913719 +2. 关注我的新浪微博,名称是:老齐Py。地址:http://weibo.com/qiwsir +3. 到github.com上直接follow我,名称是:qiwsir。地址:https://github.com/qiwsir +4. 经常关注我的网站:www.itdiffer.com -特别是今年(2015年)一开始,在QQ群(26913719)里面,就有朋友说,他在上海找工作,看到好多公司都要有Python开发经验的。也有朋友委托我推荐Python程序员的。 +特别是2015年一开始,在QQ群(26913719)里面,就有朋友说,他在上海找工作,看到好多公司都要有Python开发经验的。也有朋友委托我推荐Python程序员的。 + +从我自己的经历中也感受到,用Python的领域越来越多,找Pythoner的公司和机构也越来越多了。 -从我自己的经历中也感受到,不仅仅是国外,国内也如此,用Python的领域越来越多,找Pythoner的公司和机构也越来越多了。 +所以,学习Python,挺好(包括女生,也是“挺”好)。更何况,Python还是适合于更多领域的语言,学习者可以涵盖从小学生到大学生,应用领域更是覆盖了从web开发到GUI,在大数据、机器学习等这些领域,更是独树一帜。推荐阅读[《大数据全栈式开发语言 – Python》](http://insights.thoughtworkers.org/full-stack-python/)。 -所以,学习Python,挺好(包括女生,也是“挺”好)。 +所以,学习Python性价比最高,划算。 -还要补充一点,Python能够满足现在最时髦的“大数据”方面的开发需要,要想了解,推荐阅读[《大数据全栈式开发语言 – Python》](http://insights.thoughtworkers.org/full-stack-python/) +好学吗?要什么基础?编程零基础的可以学吗? ##需要什么基础吗 @@ -45,23 +55,27 @@ 不仅我这么认为,美国有不少高校也这么认为,纷纷用Python作为编程专业甚至是非编程专业的大学生入门语言。 -最后的结论是:学习python,你不用担心基础问题。**特别是看我的教程,我的目标就是要跟你一起从零基础开始,直到高手境界**。 +最后的结论是:学习python,你不用担心基础问题。 + +**特别是看我的教程,我的目标就是要跟你一起从零基础开始,直到高手境界**。 + +所以,尽管放胆来学,不用犹豫、不要惧怕。还有一个原因,是因为她优雅。 ##优雅的Python Python号称是优雅的。但是这种说法仁者见仁智者见智。比如经常听到大师们说“数学美”,是不是谁都能体验到呢?不见得吧。 -所以,是不是优雅,是不是简单,是不是明确,只有“谁用谁知道”。 +所以,是不是优雅,是不是简单,是不是明确,只有“谁用谁知道”,只有内行人才能理解。 -不过,我特别喜欢下面这句话:**人生苦短,我用Python**。意思就是说,python能够提高开发效率,让你短暂的人生能够除了工作之外,还有更多的时间休息、娱乐或者别的什么。 +不过,我特别喜欢下面这句话:**人生苦短,我用Python**。意思就是说,Python能够提高开发效率,让你短暂的人生能够除了工作之外,还有更多的时间休息、娱乐或者别的什么。 -或许有的人不相信,那么也只有“谁用谁知道了”。 +或许有的人不相信,那就比较一下吧。 ##跟别的语言比较 “如果你遇到的问题无法用Python解决,这个问题也不能用别的语言解决。”——这是我向一些徘徊在Python之外的人常说的,是不是有点夸张了呢? -最近看到了一篇文章,[《如果编程语言是女人》](http://www.vaikan.com/if-programming-languages-are-woman/),我转载如下(考虑到篇幅所限,所了适当删改,非删减请通过连接查看原文): +最近看到了一篇文章,[《如果编程语言是女人》](http://www.vaikan.com/if-programming-languages-are-woman/),我转载如下(考虑到篇幅所限,所了适当删改,要阅读非删减版,请通过连接查看原文): ![](./0images/01.jpg) @@ -81,6 +95,10 @@ Python号称是优雅的。但是这种说法仁者见仁智者见智。比如 虽然是娱乐,或许有争议,权当参考吧。 +所以,Python值得拥有。 + +在正式开始学习之前,首先要告诉你成为Python高手的秘诀。 + ##The Zen of Python 这就是著名的《Python之禅》。 @@ -123,6 +141,8 @@ Python号称是优雅的。但是这种说法仁者见仁智者见智。比如 >Namespaces are one honking great idea -- let's do more of those! +“吃水不忘挖井人”,谁创造了Python,我们一定要感恩并崇拜。 + ##感谢Guido van Rossum Guido van Rossum 是值得所有pythoner感谢和尊重的,因为他发明了这个优雅的编程语言。他发明python的过程是那么让人称赞和惊叹,显示出牛人的风采。 @@ -131,11 +151,7 @@ Guido van Rossum 是值得所有pythoner感谢和尊重的,因为他发明了 这段故事的英文刊载在:[https://www.python.org/doc/essays/foreword/](https://www.python.org/doc/essays/foreword/) -##新版的设想 - -我写《零基础学python(第二版)》,是承接第一版的,并在第一版基础上,做了较大量的修改,比如每个章节的标题,现在改为更为直接的描述,而不是用那种文艺范写了,因为这样不仅更明确,而且还能用于以后备查。 - -此外,我会继续原有的大家认可的风格,兼顾零基础和后续的发展。特别是要在里面穿插如更多的项目例子。 +Python已经让人心动了。除了心动,还要行动;只有行动,才能“从小工到专家”。 ------- From 2417c5997274e27cebfb16518b18482c7146cc3b Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 10 Mar 2016 12:59:17 +0800 Subject: [PATCH 049/288] new --- 02.md | 36 +++++++++++++++++++++++++----------- 1 file changed, 25 insertions(+), 11 deletions(-) diff --git a/02.md b/02.md index 57b64cd..bcfed24 100644 --- a/02.md +++ b/02.md @@ -4,41 +4,55 @@ #从小工到专家 -这个标题,我借用了一本书的名字——《程序员修炼之道:从小工到专家》——这本书特别推荐阅读。 +这是每个程序员的梦想。 -“从小工到专家”,也是很多开始学习编程的朋友的愿望。如何能实现呢?上面所提到的那本书中,给出了非常好的建议,值得借鉴。 +有一本书的名字就是《程序员修炼之道:从小工到专家》,我借用此书的标题。 + +如何能实现这个梦想?那本书中,给出了非常好的建议,值得借鉴。 我在这里倒是想到了另外一个问题,也是学习Python的朋友给我提出来的: >“书已经看了,书上的代码也运行过了,习题也能解答了,但是还不知如何开发一个真正的应用程序,不知从何处下手。” -我在工作中,也遇到过一些刚刚毕业的大学生,虽然相关专业的考试分数是不错的(我一般是相信那些成绩是真的),但是,一讨论到专业问题,常常出乎让我大跌眼镜,特别是当他面对真实的工作对象时,所表现出来的能力要比成绩单上的数字差太多了。 +工作中,也遇到过一些大学生毕业生,虽然相关专业的考试分数是不错的(我一般是相信那些成绩是真的),但是,一讨论到专业问题,常常让我大跌眼镜,特别是当他面对真实的工作对象时,所表现出来的能力要比成绩单上的数字差太多了。 我一般会武断地下一个结论:练的少。 -从小工到专家,必经之路就是要多阅读代码,多调试程序。 +因此,从小工到专家,就要多练。当不是盲目地练习,如果找不到方向,可以从阅读代码开始。 ##阅读代码 -有句话说的好:“读书破万卷,下笔如有神”。这也适用于编程。阅读别人的代码,是必须的。通过阅读别人的代码,“站在巨人的肩膀上”,让自己眼界开阔,思维充实。 +有句话说的好:“读书破万卷,下笔如有神”。这也适用于编程。阅读别人的代码,是必须的。通过阅读,“站在巨人的肩膀上”,让自己眼界开阔,思维充实。 -阅读代码的最好地方就是:www.github.com +阅读代码的最好地方就是:[www.github.com](http://www.github.com) -如果你还没有帐号,请尽快注册,他将是你作为一个优秀程序员的起点。当然了,不要忘记来follow我,我的帐号是: qiwsir。 +如果还没有帐号,请尽快注册,他将是你作为一个优秀程序员的起点。当然了,不要忘记来follow我,我的帐号是: qiwsir。 阅读代码最好的一个方法是一边阅读,一边进行必要的注释,这是在梳理自己对别人代码的认识。然后,可以run一下,看看效果。当然,还可以按照自己的设想进行必要修改,再run。这样你就将别人的代码消化吸收了。 +之所以run,使要看看这个程序运行结果是什么。除了调试别人的程序,还要调试自己的程序。 + ##调试程序 -首先就是要自己动手写程序。“一万小时定律”在编程领域也是成立的,除非你是天才,否则,只有通过“一万小时定律”才能成为天才。 +首先要自己动手写程序。 + +“一万小时定律”在编程领域也是成立的,除非你是天才,否则,只有通过“一万小时定律”才能成为天才。 “拳不离手,曲不离口”,小工只有通过勤奋地敲代码才能成为专家。 -在调试程序的时候,要善于应用网络,看看类似的问题别人如何解决,不要仅仅局限于自己的思维范围。利用网络就少不了搜索引擎。我特别向那些要想成为专家的小工们说:只有google能够帮助你成为专家,其它的搜索引擎,特别是某国内常用的,充其量成为“砖家”,更多的是“砖工”。所以,请用:**google.com**。 +为了帮助学习者调试动手敲代码,我正在推出一个项目[《编程匠艺》训练](http://www.itdiffer.com/coding.html),可以参加。 + +在写程序、调试程序的时候,一定会遇到很多问题。怎么办? + +办法就是应用网络,看看类似的问题别人如何解决,不要仅仅局限于自己的思维范围。 + +利用网络就少不了搜索引擎。我特别向那些要想成为专家的小工们说:只有Google能够帮助你成为专家,其它的搜索引擎,只能让你成为“砖家”,乃至于“砖工”。所以,请用:**google.com**。 + +此外,还有其它的好网站,我会陆续向有意成为专家的朋友提供。 -我在本教程中,会陆续向有意成为专家的朋友提供更多有用的网站或者工具。 +成为专家的通道千万条,但这两条路径是真道。 -除了以上两条基本方法之外,成为专家之路还要注意很多呢,不过都是旁枝末节的问题了。以上两条做好,至少在编程上不迷茫了。 +千里之行,始于足下。要学Python,就要有学习的环境。 --------- From bd11caf276fa6d16c9dc2337714bd92e8d9c01dc Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 10 Mar 2016 13:31:54 +0800 Subject: [PATCH 050/288] new --- 03.md | 47 +++++++++++++++++++++++++---------------------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/03.md b/03.md index ccf1423..ade5779 100644 --- a/03.md +++ b/03.md @@ -2,7 +2,11 @@ #Python安装 -任何高级语言都是需要一个自己的编程环境的,这就好比写字一样,需要有纸和笔,在计算机上写东西,也需要有文字处理软件,比如各种名称的OFFICE。笔和纸以及office软件,就是写东西的硬件或软件,总之,那些文字只能写在那个上边,才能最后成为一篇文章。那么编程也是,要有个什么程序之类的东西,要把程序写到那个上面,才能形成最后类似文章那样的东西。 +不论是谁,只要用Python,就必须配置Python的开发和运行环境。 + +这环境是什么?它就是若干个软件程序。 + +不仅Python,任何高级语言都是需要一个自己的编程环境,这就好比写字一样,需要有纸和笔,在计算机上写东西,也需要有文字处理软件,比如各种名称的OFFICE。笔和纸以及office软件,就是写东西的硬件或软件,总之,那些文字只能写在那个上边,才能最后成为一篇文章。那么编程也是,要有个什么程序之类的东西,要把程序写到那个上面,才能形成最后类似文章那样的东西。 >不论读者是零基础,还是非零基础,不要希望在这里学到很多高深的Python语言技巧,因为这里充满了水分。 @@ -28,11 +32,17 @@ 所以,我这里是用Python2.7为例子来讲授的,但是,在行文中,也兼顾了Python3.x,我会在两者有区别或者需要注意地方,提示给读者。所以,本节教程可以说二者兼顾了。 -##Linux系统的安装 +下面就一步一步地来安装。如果不是零基础的,可以略过。 + +##在Linux系统中安装 + +你的计算机是什么操作系统的?自己先弄懂。 -你的计算机是什么操作系统的?自己先弄懂。如果是Linux某个发行版,就跟我同道了。并且我恭喜你,因为以后会安装更多的一些Python库(模块),在这种操作系统下,操作非常简单,当然,如果是MacOS,也一样,因为都是UNIX下的蛋。只是windows有点另类了,也不必惶恐,Python就是跨平台的。 +如果是Linux某个发行版,就跟我同道了。并且恭喜你,因为以后会安装更多的一些Python库(模块),在这种操作系统下,操作非常简单,当然,如果是MacOS,也一样,因为都是UNIX下的蛋。 -只是,我在撰写本教程的时候,更多是在Ubuntu下调试的,没有时间和精力单独再搞windows的,所以,示例就是用Ubuntu下演示,或许会在某些地方提示windows中注意的地方。读者放行,总体上没有什么太大的羁绊。 +只是windows有点另类了。也不必惶恐,Python就是跨平台的。 + +本教程的所有程序,都是在Ubuntu下调试的,没有时间和精力单独再搞windows的,或许会在某些地方提示windows中注意的地方。一般情况下可以放心,总体上跟操作系统关联不紧密。 根据个人喜好,我推荐读者熟悉Linux操作系统,这是很好的。 @@ -68,7 +78,9 @@ 我用的是Python2.7.6,或许你的版本号更高。这些差别就不用纠结了。 -##windows系统的安装 +windows系统中安装程序,就是不断地“下一步”。 + +##在windows系统中安装 到[下载页面里面](https://www.python.org/download/releases/2.7.8/)找到windows安装包,下载之,比如下载了这个文件:Python-2.7.8.msi。然后就是不断的“下一步”,即可完成安装。 @@ -78,31 +90,22 @@ 以上搞定,在cmd中,输入Python,得到跟上面类似的结果,就说明已经安装好了。 -##Mac OS X系统的安装 +从开始菜单中,你还能找到Python IDEL,打开之后,也是一个交互模式,并且还是一个简单的编辑器。 -其实根本就不用再写怎么安装了,因为用Mac OS X 的朋友,肯定是高手中的高高手了,至少我一直很敬佩那些用Mac OS X 并坚持没有更换为windows的。麻烦用Mac OS X 的朋友自己网上搜吧,跟前面Ubutu差不多。 - -如果按照以上方法,顺利安装成功,只能说明幸运,无它。如果没有安装成功,这是提高自己的绝佳机会,因为只有遇到问题才能解决问题,才能知道更深刻的道理,不要怕,有google,它能帮助列为看官解决所有问题。当然,加入QQ群或者通过微博,问我也可以。 - -就一般情况而言,Linux和Mac OSx 系统都已经安装了某种Python的版本,打开就可以使用。但是windows是肯定不安装的。除了可以用上面所说的方法安装,还有一个更省事的方法,就是安装:ActivePython +还有另外一个代表高端的电脑,貌似用Mac OS X的人都很厉害和富有。 -简单记录一下我的安装方法(我是在linux系统中做的): +##Mac OS X系统的安装 -1. 获得root权限 -2. 到上述地址下载某种版本的Python: wget https://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz -3. 解压缩:tar xfz Python-2.7.8.tgz -4. 进入该目录:cd Python-2.7.8 -5. 配置: ./configure -6. 在上述文件夹内运行:make,然后运行:make install -7. 祝你幸运 -8. 安装完毕 +其实根本就不用再写怎么安装了,因为用Mac OS X 的朋友,肯定是高手中的高高手了,至少我一直很敬佩那些用Mac OS X 并坚持没有更换为windows的。麻烦用Mac OS X 的朋友自己网上搜吧,跟前面Ubutu差不多。 -OK!已经安装好之后,马上就可以开始编程了。 +按照以上方法,顺利安装成功,只能说明幸运,无它。 -最后喊一句在一个编程视频课程广告里面看到的口号,很有启发:“我们程序员,不求通过,但求报错”。 +没有安装成功,这是提高自己的绝佳机会,因为只有遇到问题才能解决问题,才能知道更深刻的道理。不要怕,有google,它能帮助你解决所有问题。当然,加入QQ群或者通过微博,问我也可以。 还需要补充说明,你不用纠结是2还是3,因为两者区别不是很大,再者,目前工程上的很多项目,都是两者兼容。可以说,Python3是趋势,但需要时间过渡的。很多初学者特别是大学生喜欢纠缠这个问题,实在有点浪费脑细胞了。 +不为2还是3浪费时间,但是开发工具的选择要对自己的胃口。 + ------- [总目录](./index.md)   |   [上节:从小工到专家](./02.md)|   [下节:集成开发环境](./101.md) From 2732a031ad03b20908eb06b2f703ab9ca2d191b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Sat, 12 Mar 2016 23:08:58 +0800 Subject: [PATCH 051/288] new --- 101.md | 35 ++++++++++++++++++++--------- 102.md | 70 +++++++++++++++++++++++++++++++++++++++++++--------------- 2 files changed, 76 insertions(+), 29 deletions(-) diff --git a/101.md b/101.md index b6814df..eca9b00 100644 --- a/101.md +++ b/101.md @@ -1,20 +1,27 @@ >"But I say to you that listen, Love your enemies, do good to those who hate you, bless those who curse you, pray for those who abuse you. If anyone strikes you on the cheek, offer the other also; and from anyone who takes away your coat do no withhold even your shirt. Give to everyone who begs from you; and if anyone takes away your goods, do not ask for them again. Do to others as you would have them do to you....Be merciful, just as your Father is merciful." -#集成开发环境(IDE) +#开发工具 安装好Python之后,就已经可以进行开发了。按照惯例,第一行代码总是:Hello World -##值得纪念的时刻:Hello world +这是所有编程语言的惯例。 + +##Hello world 不管你使用的是什么操作系统,肯定能够找到一个地方,运行Python,进入到交互模式。 -像下面一样: +- Ubuntu,直接在shell中输入python即可 +- windows,从开始菜单中找到IDLE(Python GUI) + +进入到如下类似的界面: Python 2.7.6 (default, Nov 13 2013, 19:24:16) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> +这就是交互模式。将在后面长期使用,会伴随你Python的代码生涯。 + 在`>>>`后面输入`print "Hello, World"`,并按回车。这就是见证奇迹的时刻。 >>> print "Hello, World" @@ -30,23 +37,27 @@ >请牢记:程序在大多数情况下是给人看的,只是偶尔让计算机执行一下。 - # 看到“>>>”符号,表示Python做好了准备,等待你向她发出指令,让她做什么事情 +看到“>>>”符号,表示Python做好了准备,等待你向她发出指令,让她做什么事情。这是交互模式的标志。 >>> - # print,意思是打印。在这里也是这个意思,是要求Python打印什么东西 +`print`,意思是打印。在这里也是这个意思,是要求Python打印什么东西。 >>> print - - # "Hello,World"是打印的内容,注意双引号,是英文状态下的。引号不是打印内容,它相当于一个包裹,把打印的内容包起来,统一交给Python。 + +`"Hello,World"`是打印的内容,注意双引号,是英文状态下的。引号不是打印内容,它相当于一个包裹,把打印的内容包起来,统一交给Python。 >>> print "Hello, World" - #上面命令执行的结果。Python接收到你要求她所做的事情:打印Hello,World,于是她就老老实实地执行这个命令,丝毫不走样。 +Python接收到你要求她所做的事情:打印Hello,World,于是她就老老实实地执行这个命令,丝毫不走样。 Hello, World - -在Python中,如果进入了上面的样式,我们称之为“交互模式”。这是非常有用而且简单的模式,她是我们进行各种学习和有关探索的好方式,随着学习的深入,你将更加觉得她魅力四射。 + +如果你使用的是Python 3,这里应该写成: + + >>> print("Hello world") + +“交互模式”是非常有用而且简单的模式,她是我们进行各种学习和有关探索的好方式,随着学习的深入,你将更加觉得她魅力四射。 >笑一笑:有一个程序员,自己感觉书法太烂了,于是立志继承光荣文化传统,购买了笔墨纸砚。在某天,开始练字。将纸铺好,拿起笔蘸足墨水,挥毫在纸上写下了两个大字:Hello World @@ -97,7 +108,7 @@ Windows的朋友操作:“开始”菜单->“所有程序”->“Python 2.x ![](./1images/10103.png) -注意:看官所看到的界面中显示版本跟这个图不同,因为安装的版本区别。大致模样差不多。 +注意:所看到的界面中显示版本跟这个图不同,因为安装的版本区别。大致模样差不多。 其它操作系统的用户,也都能在找到idle这个程序,启动之后,跟上面一样的图。 @@ -114,6 +125,8 @@ Windows的朋友操作:“开始”菜单->“所有程序”->“Python 2.x 磨刀不误砍柴工。IDE已经有了,伟大程序员就要开始从事伟大的编程工作了。 +从哪里开始?从计算机的原初功能开始,那就是计算。 + ------ [总目录](./index.md)   |   [上节:安装Python的开发环境](./03.md)|[   下节:数和四则运算](./102.md) diff --git a/102.md b/102.md index 7aa27cc..23e73b8 100644 --- a/102.md +++ b/102.md @@ -2,7 +2,7 @@ #数和四则运算 -一提到计算机,当然现在更多人把她叫做电脑,这两个词都是指computer。不管什么,只要提到她,普遍都会想到她能够比较快地做加减乘除,甚至乘方开方等。乃至于,有的人在口语中区分不开计算机和计算器。 +计算机,原本是用来计算的。现在更多人把她叫做电脑,这两个词都是指computer。不管什么,只要提到她,普遍都会想到她能够比较快地做加减乘除,甚至乘方开方等。乃至于,有的人在口语中区分不开计算机和计算器。 有一篇名为[《计算机前世》](http://www.flickering.cn/%E5%85%AB%E5%8D%A6%E5%A4%A9%E5%9C%B0/2015/02/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%89%8D%E4%B8%96%E7%AF%87%EF%BC%88%E4%B8%80%EF%BC%8C%E5%A7%91%E5%A8%98%E8%AE%A1%E7%AE%97%E6%9C%BA%EF%BC%89/)的文章,这样讲到: @@ -33,11 +33,13 @@ >>> 3.222222 3.222222 -上面显示的是在交互模式下,如果输入3,就显示了3,这样的数称为整数,这个称呼和小学数学一样。 +上面显示的是在交互模式下,如果输入3,就显示了3,这样的数称为整数,用int表示。这个称呼和小学数学一样。 如果输入一个比较大的数,第二个,那么多个3组成的一个整数,在Python中称之为长整数。为了表示某个数是长整数,Python会在其末尾显示一个L。其实,现在的Python已经能够自动将输入的很大的整数视为长整数了。你不必在这方面进行区别。 -第三个,在数学里面称为小数,这里你依然可以这么称呼,不过就像很多编程语言一样,习惯称之为“浮点数”。 +这个功能重要,在于Python能自动处理大整数问题,不用担心溢出。什么是“溢出”,随后说明,或者在这里去Google它。 + +第三个,在数学里面称为小数,这里你依然可以这么称呼,不过就像很多编程语言一样,习惯称之为“浮点数”,用float表示。 注意,刚才我提到了小数,其实把小数称之为“浮点数”,这种说法并不准确。为此,“知乎”上有专门的解释,请阅读(原文地址:[http://www.zhihu.com/question/19848808/answer/22219209](http://www.zhihu.com/question/19848808/answer/22219209): @@ -57,7 +59,17 @@ 除了十进制,还有二进制、八进制、十六进制都是在编程中可能用到的,当然用六十进制的时候就比较少了(其实时间记录方式就是典型的六十进制)。 -具体每个数字,在Python中都是一个对象,比如前面输入的3,就是一个对象。每个对象,在内存中都有自己的一个地址,这个就是它的身份。 +进制问题此处不是重点,建议读者自行查找资料阅读。 + +在Python中,每个数字都是真实存在的,相对于我们——人类——来讲,它真实存在,它就是对象(object)。 + +对象是一个深刻的术语,不管你是否理解,我先这么说,你先听着、用着,逐渐逐渐,就理解深入了。 + +还要注意,此对象非彼对象,但是学习Python或许在帮助你解决彼对象的时候有帮助。 + +比如整数3,就是一个对象。 + +每个对象,在内存中都有自己的一个地址,这个就是它的身份。 >>> id(3) 140574872 @@ -72,6 +84,7 @@ >内建函数,英文为built-in Function,读者根据名字也能猜个八九不离十了。不错,就是Python中已经定义好的内部函数。 以上三个不同的数字,是三个不同的对象,具有三个不同的内存地址。特别要注意,在数学上,3和3.0是相等的,但是在这里,它们是不同的对象。 + 用id()得到的内存地址,是只读的,不能修改。 了解了“身份”,再来看“类型”,也有一个内建函数供使用type()。 @@ -83,7 +96,12 @@ >>> type(3.222222) -用内建函数能够查看对象的类型。,说明3是整数类型(Interger);则告诉我们那个对象是浮点型(Floating point real number)。与id()的结果类似,type()得到的结果也是只读的。 +用内建函数能够查看对象的类型。 + +- ,说明3是整数类型(Interger); +- 则告诉我们那个对象是浮点型(Floating point real number)。 + +与id()的结果类似,type()得到的结果也是只读的。 至于对象的值,在这里就是对象本身了。 @@ -100,13 +118,17 @@ >>> x 6 -在这个例子中,`x = 5`就是在变量`x和数`5`之间建立了对应关系,接着又建立了`x`与`6`之间的对应关系。我们可以看到,x先“是”5,后来“是”6。 +在这个例子中,`x = 5`就是在变量`x和数`5`之间建立了对应关系,接着又建立了`x`与`6`之间的对应关系。 -在Python中,有这样一句话是非常重要的:**对象有类型,变量无类型**。怎么理解呢? +我们可以看到,x先“是”5,后来“是”6。 + +在Python中,有这样一句话是非常重要的:**对象有类型,变量无类型**。 + +怎么理解呢? 首先,5、6都是整数,Python中为它们取了一个名字,叫做“整数”类型的对象(或者数据),也可以说对象(或数据)类型是整数型,用int表示。 -当我们在Python中写入了5、6,computer姑娘就自动在她的内存中某个地方给我们建立了这两个对象(对象的定义后面会讲,这里你先用着,逐渐就明晰含义了),就好比建造了两个雕塑,一个是形状似5,一个形状似6,这就两个对象,这两个对象的类型就是int. +当我们在Python中写入了5、6,computer姑娘就自动在她的内存中某个地方给我们建立了这两个对象,就好比建造了两个雕塑,一个是形状似5,一个形状似6,这就两个对象,这两个对象的类型就是int. 那个x呢?就好比是一个标签,当`x = 5`时,就是将x这个标签拴在了5上了,通过这个x,就顺延看到了5,于是在交互模式中,`>>> x`输出的结果就是5,给人的感觉似乎是x就是5,事实是x这个标签贴在5上面。同样的道理,当`x = 6`时,标签就换位置了,贴到6上面。 @@ -114,6 +136,10 @@ 这是Python的一个重要特征——**对象有类型,变量无类型**。 +理解否?如果没有理解,也不要紧张,继续学习,“发展是硬道理”,在发展中解决问题。 + +上面的知识,可以用来计算。 + ##四则运算 按照下面要求,在交互模式中运行,看看得到的结果和用小学数学知识运算之后得到的结果是否一致 @@ -133,7 +159,7 @@ 上面的运算中,分别涉及到了四个运算符号:加(+)、减(-)、乘(*)、除(/) -另外,我相信看官已经发现了一个重要的公理: +另外,我相信读者已经发现了一个重要的公理: **在计算机中,四则运算和数学中学习过的四则运算规则是一样的** @@ -145,7 +171,7 @@ - 4.0 + 2 - 4.0 + 2.0 -看官可能愤怒了,这么简单的题目,就不要劳驾计算机了,太浪费了。 +可能愤怒了,这么简单的题目,就不要劳驾计算机了,太浪费了。 别着急,还是要运算一下,然后看看结果,有没有不一样?要仔细观察哦。 @@ -156,26 +182,32 @@ >>> 4.0+2.0 6.0 -不一样的地方是:第一个式子结果是6,这是一个整数;后面两个是6.0,这是浮点数。 +观察能力运用到这里,在物理课堂上学的一点不浪费。 + +找出不一样的地方。第一个式子结果是6,这是一个整数;后面两个是6.0,这是浮点数。这意味着什么,你可以继续试验,看看能不能总结出什么规律。后面会用到。 -似乎计算机做一些四则运算是不在话下的,但是,有一个问题请你务必注意:在数学中,整数是可以无限大的,但是在计算机中,整数不能无限大。为什么呢?(我推荐你去google,其实计算机的基本知识中肯定学习过了。)因此,就会有某种情况出现,就是参与运算的数或者运算结果超过了计算机中最大的数了,这种问题称之为“整数溢出问题”。 +似乎计算机做一些四则运算是不在话下的,但是,有一个问题请你务必注意:在数学中,整数是可以无限大的,但是在计算机中,整数不能无限大。为什么呢?(推荐去google,其实计算机的基本知识中肯定学习过了。)因此,就会有某种情况出现,就是参与运算的数或者运算结果超过了计算机中最大的数了,这种问题称之为“整数溢出问题”。 ##大整数 这里有一篇专门讨论这个问题的文章,推荐阅读:[整数溢出](http://zhaoweizhuanshuo.blog.163.com/blog/static/148055262201093151439742/) -对于其它语言,整数溢出是必须正视的,但是,在Python里面,看官就无忧愁了,原因就是Python为我们解决了这个问题,请阅读拙文:[大整数相乘](https://github.com/qiwsir/algorithm/blob/master/big_int.md) +对于其它语言,整数溢出是必须正视的,但是,在Python里面,无忧愁,原因就是Python为我们解决了这个问题。 + +请阅读拙文:[大整数相乘](https://github.com/qiwsir/algorithm/blob/master/big_int.md) -ok!看官可以在实验一下大整数相乘。 +可以在实验一下大整数相乘。 >>> 123456789870987654321122343445567678890098876*1233455667789990099876543332387665443345566 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816L -看官是幸运的,Python解忧愁,所以,选择学习Python就是珍惜光阴了。 +上面计算结果的数字最后有一个L,就表示这个数是一个长整数,不过,看官不用管这点,反正是Python为我们搞定了。这是Python跟很多其它编程语言大不一样的地方,它帮你搞定了大整数问题,也就是说,你尽可以放心,在Python中,整数的长度是不受限制的(当然,这句话有点绝对了)。 -上面计算结果的数字最后有一个L,就表示这个数是一个长整数,不过,看官不用管这点,反正是Python为我们搞定了。这是Python跟很多其它编程语言大不一样的地方,它帮你搞定了大正数问题,也就是说,你尽可以放心,在Python中,整数的长度是不受限制的(当然,这句话有点绝对了)。 +Python解忧愁,可是使用任意大的整数。 -在结束本节之前,有两个符号需要看官牢记(不记住也没关系,可以随时google,只不过记住后使用更方便) +所以,选择学习Python就是珍惜光阴了。 + +强调知识点,有两个符号需要牢记(不记住也没关系,可以随时google,只不过记住后使用更方便) - 整数,用int表示,来自单词:integer - 浮点数,用float表示,就是单词:float @@ -211,8 +243,10 @@ ok!看官可以在实验一下大整数相乘。 请注意看刚才报错的信息,“out fo range”,就是超出了范围,溢出。所以,在计算中,如果遇到了浮点数,就要小心行事了。对于这种溢出,需要你在编写程序的时候处理,并担当相应的责任。 +浮点数总要小心。更要学会阅读程序中的报错信息,因为后面还会用到,比如除法。 + ------ [总目录](./index.md)   |   [上节:集成开发环境](./101.md)   |   [下节:除法](./103.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,或者加我微信(**微信号:qiwsir**),不胜感激。 +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 86371290e0cd4d5ffe932511ad45fd82d39b125e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Sat, 12 Mar 2016 23:12:56 +0800 Subject: [PATCH 052/288] new --- 102.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/102.md b/102.md index 23e73b8..1262eb2 100644 --- a/102.md +++ b/102.md @@ -98,8 +98,8 @@ 用内建函数能够查看对象的类型。 -- ,说明3是整数类型(Interger); -- 则告诉我们那个对象是浮点型(Floating point real number)。 +- ` `,说明3是整数类型(Interger); +- ``则告诉我们那个对象是浮点型(Floating point real number)。 与id()的结果类似,type()得到的结果也是只读的。 From e4ee5091d1608d4c8a7e57f462b448f8bde8df9c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 20:26:40 +0800 Subject: [PATCH 053/288] p3 --- 01.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/01.md b/01.md index c1338df..69e0961 100644 --- a/01.md +++ b/01.md @@ -43,7 +43,23 @@ 所以,学习Python性价比最高,划算。 -好学吗?要什么基础?编程零基础的可以学吗? +但是,有一个在我来看不是问题,但是在很多初学者来看,是一个天大问题:是学习Python 2还是学习Python 3? + +##Python的版本 + +不管出于什么原因,我认为Python给自己搞了两个版本,是败笔。 + +虽然如此,但幸亏两个版本并非天壤之别,绝大部分是一样的。所以,学习者可以选择任何一种版本进行学习,然后在具体应用的时候,用到什么版本,只要稍加注意,或者到网上搜索一下,即可。 + +但是,总有不放心的初学者。 + +我曾被无数次的拷问:教程是Python 2还是Python 3?我非常想告诉他什么都支持,但是,我的代码的确是在Python 2下调试的,总不能撒谎吧。于是当我如实奉告的时候,他会说要学习Python 3,于是转头找那些号称是Python 3的教程,虽然他也不知道里面的代码是否真的在Python 3下调试,只看看标题罢了。 + +无奈。 + +为了迎合学习者胃口,我的教程,**从即日起,逐渐修改代码,适合于Python 3**。 + +不管是2还是3,总要从零开始学习,从零开始学,就意味着不需要基础。这个我有信心。 ##需要什么基础吗 From acd4977d7b5e57eb49b42561fd97bbf2b8fc73f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 20:33:21 +0800 Subject: [PATCH 054/288] p3 --- 01.md | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/01.md b/01.md index 69e0961..6b4705f 100644 --- a/01.md +++ b/01.md @@ -51,14 +51,22 @@ 虽然如此,但幸亏两个版本并非天壤之别,绝大部分是一样的。所以,学习者可以选择任何一种版本进行学习,然后在具体应用的时候,用到什么版本,只要稍加注意,或者到网上搜索一下,即可。 +我在这里还整理了一篇文章:[Python2.7.x和3.x版本的重要区别](https://github.com/qiwsir/StarterLearningPython/blob/master/n005.md),不知是否愿意阅读? + 但是,总有不放心的初学者。 -我曾被无数次的拷问:教程是Python 2还是Python 3?我非常想告诉他什么都支持,但是,我的代码的确是在Python 2下调试的,总不能撒谎吧。于是当我如实奉告的时候,他会说要学习Python 3,于是转头找那些号称是Python 3的教程,虽然他也不知道里面的代码是否真的在Python 3下调试,只看看标题罢了。 +我曾被无数次的拷问:教程是Python 2还是Python 3? + +我非常想告诉他什么都支持,但是,我的代码的确是在Python 2下调试的,总不能撒谎吧。于是当我如实奉告的时候,他会说要学习Python 3,转头找那些号称是Python 3的教程。 无奈。 为了迎合学习者胃口,我的教程,**从即日起,逐渐修改代码,适合于Python 3**。 +从此,本教程宣称:**支持Python 2和Python 3**。如遇到不符合此宣称的地方,是因为还没有修改到那里呢。 + +还要说一句,上述宣称的最终解释权归本教程作者。 + 不管是2还是3,总要从零开始学习,从零开始学,就意味着不需要基础。这个我有信心。 ##需要什么基础吗 From e4c317ded936ad6f3b5b3ae116f0e44436b19e58 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 20:46:18 +0800 Subject: [PATCH 055/288] py3 --- 03.md | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) diff --git a/03.md b/03.md index ade5779..a76ebec 100644 --- a/03.md +++ b/03.md @@ -28,9 +28,9 @@ >www.python.org 是Python的官方网站,如果你的英语足够使用,那么自己在这里阅读,可以获得非常多的收获。 -在Python的下载页面里面,显示出Python目前有两大类,一类是Python3.x.x,另外一类是Python2.7.x。可以说,Python3是未来,它比Python2.7有进步。但是,现在,还有很多东西没有完全兼容Python3。更何况,如果学了Python2.7,对于Python3,也只是某些地方的小变化了。 +在Python的下载页面里面,显示出Python目前有两大类,一类是Python3.x.x,另外一类是Python2.7.x。选哪个都行,本教程两者兼顾,如果没有兼顾到的,可以网上搜一搜。 -所以,我这里是用Python2.7为例子来讲授的,但是,在行文中,也兼顾了Python3.x,我会在两者有区别或者需要注意地方,提示给读者。所以,本节教程可以说二者兼顾了。 +不用为学习哪个版本而忧愁。如果学了Python2.7,对于Python3,也只是某些地方的小变化了。 下面就一步一步地来安装。如果不是零基础的,可以略过。 @@ -48,41 +48,39 @@ 我用Ubuntu。 -只要装了Ubuntu这个操作系统,默认里面就已经把Python安装好了。可能是Python2.7.6版本,不过,在我来看,不需要升级,虽然目前最高版本是Python2.7.9(在64位的上面,默认也安装了Python3,供使用者选择)。 +只要装了Ubuntu这个操作系统,默认里面就已经把Python安装好了。最新的Ubuntu中可能已经预装了Python的两个版本,你可以选择使用。 -接下来就在shell中输入Python,如果看到了`>>>`,并且显示出Python的版本信息,恭喜你,这就进入到了Python的交互模式下(“交互模式”,这是一个非常有用的东西,从后面的学习中,你就能体会到,这里是学习Python的主战场)。 +接下来就在shell中输入Python(或者Python3,是启动了Python 3),如果看到了`>>>`,并且显示出Python的版本信息,恭喜你,这就进入到了Python的交互模式下(“交互模式”,这是一个非常有用的东西,从后面的学习中,你就能体会到,这里是学习Python的主战场)。 如果非要自己安装。参考下面的操作: -- 到官方网站下载源码。比如: +- 到官方网站下载源码。比如(如果读者下载Python 3或者其它版本,可以到官网[www.python.org](http://www.python.org)查看相应版本的源码地址,这里仅仅是举例,不可照抄): - wget http://www.python.org/ftp/python/2.7.8/Python-2.7.8.tgz + wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz - 解压源码包 - tar -zxvf Python-2.7.8.tgz + tar -zxvf Python-2.7.6.tgz - 编译 - cd Python-2.7.8 + cd Python-2.7.6 ./configure --prefix=/usr/local #指定了目录,如果不制定,可以使用默认的,直接运行 ./configure 即可。 make&&sudo make install 安装好之后,进入shell,输入python,会看到如下: qw@qw-Latitude-E4300:~$ python - Python 2.7.6 (default, Nov 13 2013, 19:24:16) #后来我升级到2.7.8了,就是用后面讲到的源码安装方法 + Python 2.7.6 (default, Nov 13 2013, 19:24:16) [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> -我用的是Python2.7.6,或许你的版本号更高。这些差别就不用纠结了。 - windows系统中安装程序,就是不断地“下一步”。 ##在windows系统中安装 -到[下载页面里面](https://www.python.org/download/releases/2.7.8/)找到windows安装包,下载之,比如下载了这个文件:Python-2.7.8.msi。然后就是不断的“下一步”,即可完成安装。 +到[下载页面里面](https://www.python.org/downloads/)找到你喜欢的版本,然后根据自己的计算机情况,下载相应的安装包,下载完毕,安装过程同其它的windows软件安装方法。 特别注意,安装完之后,需要检查一下,在环境变量是否有Python。 @@ -102,7 +100,7 @@ windows系统中安装程序,就是不断地“下一步”。 没有安装成功,这是提高自己的绝佳机会,因为只有遇到问题才能解决问题,才能知道更深刻的道理。不要怕,有google,它能帮助你解决所有问题。当然,加入QQ群或者通过微博,问我也可以。 -还需要补充说明,你不用纠结是2还是3,因为两者区别不是很大,再者,目前工程上的很多项目,都是两者兼容。可以说,Python3是趋势,但需要时间过渡的。很多初学者特别是大学生喜欢纠缠这个问题,实在有点浪费脑细胞了。 +最后还要交代,你不用纠结是2还是3,很多初学者特别是大学生喜欢纠缠这个问题,实在有点浪费脑细胞了。 不为2还是3浪费时间,但是开发工具的选择要对自己的胃口。 From d06fbae2a93e2b43b99720151bb6d4ef368575df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 20:49:30 +0800 Subject: [PATCH 056/288] p3 --- 03.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/03.md b/03.md index a76ebec..ac62656 100644 --- a/03.md +++ b/03.md @@ -63,7 +63,8 @@ tar -zxvf Python-2.7.6.tgz - 编译 - + + cd Python-2.7.6 ./configure --prefix=/usr/local #指定了目录,如果不制定,可以使用默认的,直接运行 ./configure 即可。 make&&sudo make install From 0e088fe5459896e153468cc02b59886c139d9f7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 20:52:34 +0800 Subject: [PATCH 057/288] p3 --- 03.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/03.md b/03.md index ac62656..2a26d01 100644 --- a/03.md +++ b/03.md @@ -64,9 +64,10 @@ - 编译 - cd Python-2.7.6 + ./configure --prefix=/usr/local #指定了目录,如果不制定,可以使用默认的,直接运行 ./configure 即可。 + make&&sudo make install 安装好之后,进入shell,输入python,会看到如下: From 54ef6432a02438cdce2cda2949138ee477c321d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 21:02:55 +0800 Subject: [PATCH 058/288] p3 --- 101.md | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/101.md b/101.md index eca9b00..4faef6e 100644 --- a/101.md +++ b/101.md @@ -19,6 +19,12 @@ [GCC 4.6.3] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> + +或者是(注意,我在兼顾Python 3了): + + Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)] on win32 + Type "copyright", "credits" or "license()" for more information. + >>> 这就是交互模式。将在后面长期使用,会伴随你Python的代码生涯。 @@ -26,6 +32,11 @@ >>> print "Hello, World" Hello, World + +上面的是在Python 2中,下面的是Python 3,注意区别。 + + >>> print("Hello, World") + Hello, World 如果你从来不懂编程,从这一刻起,就跨入了程序员行列;如果已经是程序员,那么就温习一下当初的惊喜吧! @@ -48,7 +59,7 @@ `"Hello,World"`是打印的内容,注意双引号,是英文状态下的。引号不是打印内容,它相当于一个包裹,把打印的内容包起来,统一交给Python。 >>> print "Hello, World" - + Python接收到你要求她所做的事情:打印Hello,World,于是她就老老实实地执行这个命令,丝毫不走样。 Hello, World @@ -104,13 +115,13 @@ google一下:Python IDE,会发现,能够进行Python编程的IDE还真的 既然是零基础,就别瞎折腾了,就用Python自带的IDLE。原因就是:简单。 -Windows的朋友操作:“开始”菜单->“所有程序”->“Python 2.x”->“IDLE(Python GUI)”来启动IDLE。启动之后,大概看到这样一个图 +Windows的朋友操作:“开始”菜单中找到“IDLE(Python GUI)”来启动IDLE。启动之后,大概看到这样一个图(也可能是Python 3版本,根据你的版本而定)。 ![](./1images/10103.png) 注意:所看到的界面中显示版本跟这个图不同,因为安装的版本区别。大致模样差不多。 -其它操作系统的用户,也都能在找到idle这个程序,启动之后,跟上面一样的图。 +其它操作系统的用户,也都能在找到IDLE这个程序,启动之后,跟上面类似的图。 后面我们所有的编程,就在这里完成了。这就是伟大程序员用的第一个IDE。 From f0651cb7c72a179e105f676ccaefd79c591a56e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 14 Mar 2016 21:33:12 +0800 Subject: [PATCH 059/288] p3 --- 102.md | 68 ++++++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 54 insertions(+), 14 deletions(-) diff --git a/102.md b/102.md index 1262eb2..3e53347 100644 --- a/102.md +++ b/102.md @@ -35,7 +35,7 @@ 上面显示的是在交互模式下,如果输入3,就显示了3,这样的数称为整数,用int表示。这个称呼和小学数学一样。 -如果输入一个比较大的数,第二个,那么多个3组成的一个整数,在Python中称之为长整数。为了表示某个数是长整数,Python会在其末尾显示一个L。其实,现在的Python已经能够自动将输入的很大的整数视为长整数了。你不必在这方面进行区别。 +如果输入一个比较大的数,第二个,那么多个3组成的一个整数,在Python中称之为长整数。为了表示某个数是长整数,Python 2会在其末尾显示一个L,Python 3中干脆把L都省略了,因为本来它也没有什么作用了。其实,现在的Python已经能够自动将输入的很大的整数视为长整数了。你不必在这方面进行区别。 这个功能重要,在于Python能自动处理大整数问题,不用担心溢出。什么是“溢出”,随后说明,或者在这里去Google它。 @@ -95,11 +95,20 @@ >>> type(3.222222) + +在Python 3中,看到的是这样的结果: + + >>> type(3) + + >>> type(3.0) + + >>> type(3.222222) + 用内建函数能够查看对象的类型。 -- ` `,说明3是整数类型(Interger); -- ``则告诉我们那个对象是浮点型(Floating point real number)。 +- ` `或者``,说明3是整数类型(Interger); +- ``或者``,则告诉我们那个对象是浮点型(Floating point real number)。 与id()的结果类似,type()得到的结果也是只读的。 @@ -144,20 +153,27 @@ 按照下面要求,在交互模式中运行,看看得到的结果和用小学数学知识运算之后得到的结果是否一致 - >>> 2+5 + >>> 2 + 5 7 - >>> 5-2 + >>> 5 - 2 3 - >>> 10/2 + >>> 10 / 2 5 - >>> 5*2 + >>> 5 * 2 10 - >>> 10/5+1 + >>> 10 / 5 + 1 3 - >>> 2*3-4 + >>> 2 * 3 - 4 2 -上面的运算中,分别涉及到了四个运算符号:加(+)、减(-)、乘(*)、除(/) +在Python 3中,上面的运算中,除法是有区别的,它们将是这样的: + + >>> 10 / 2 + 5.0 + >>> 10 / 5 + 1 + 3.0 + +这些运算中,分别涉及到了四个运算符号:加(+)、减(-)、乘(*)、除(/) 另外,我相信读者已经发现了一个重要的公理: @@ -198,10 +214,15 @@ 可以在实验一下大整数相乘。 - >>> 123456789870987654321122343445567678890098876*1233455667789990099876543332387665443345566 + >>> 123456789870987654321122343445567678890098876 * 1233455667789990099876543332387665443345566 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816L + +Python 3中的计算结果,比上面的少L: + + >>> 123456789870987654321122343445567678890098876 * 1233455667789990099876543332387665443345566 + 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816 -上面计算结果的数字最后有一个L,就表示这个数是一个长整数,不过,看官不用管这点,反正是Python为我们搞定了。这是Python跟很多其它编程语言大不一样的地方,它帮你搞定了大整数问题,也就是说,你尽可以放心,在Python中,整数的长度是不受限制的(当然,这句话有点绝对了)。 +Python自动帮为我们解决大整数问题。这是Python跟很多其它编程语言大不一样的地方,也就是说,你尽可以放心,在Python中,整数的长度是不受限制的(当然,这句话有点绝对了)。 Python解忧愁,可是使用任意大的整数。 @@ -218,8 +239,19 @@ Python解忧愁,可是使用任意大的整数。 #4是int,整数 >>> type(5.0)  #5.0是float,浮点数 - type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) + >>> type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) #是长整数,也是一个整数 + +Python 3的结果是: + + >>> type(4) + + >>> type(5.0) + + >>> type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) + + +两个版本有区别,在Python 3中,不再有long类型对象了,都归类为int类型。 ##浮点数 @@ -243,7 +275,15 @@ Python解忧愁,可是使用任意大的整数。 请注意看刚才报错的信息,“out fo range”,就是超出了范围,溢出。所以,在计算中,如果遇到了浮点数,就要小心行事了。对于这种溢出,需要你在编写程序的时候处理,并担当相应的责任。 -浮点数总要小心。更要学会阅读程序中的报错信息,因为后面还会用到,比如除法。 +当然,也要看看Python 3中的结果如何: + + >>> 500.0 ** 100000 + Traceback (most recent call last): + File "", line 1, in + 500.0 ** 100000 + OverflowError: (34, 'Result too large') + +浮点数总要小心,它会因为“too large”而“out of range”。更要学会阅读程序中的报错信息,因为后面还会用到,比如除法。 ------ From fa9283ad72ac43ff3839a00273834dea5864c1dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Tue, 15 Mar 2016 14:09:29 +0800 Subject: [PATCH 060/288] p3 --- 103.md | 127 +++++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 100 insertions(+), 27 deletions(-) diff --git a/103.md b/103.md index 4e9e252..348e35a 100644 --- a/103.md +++ b/103.md @@ -2,11 +2,17 @@ #除法 -除法啰嗦,不仅是Python。所以,读者不要因为我单独列出本节而有怨言。 +除法啰嗦,不仅是Python。 + +更何况,Python 2和Python 3中的除法还不一样。 + +更啰嗦了。 + +所以,读者不要因为我单独列出本节而有怨言。 ##整数除以整数 -进入Python交互模式之后(以后在本教程中,可能不再重复这类的叙述,只要看到>>>,就说明是在交互模式下),练习下面的运算: +进入Python 2交互模式之后,练习下面的运算: >>> 2 / 5 0 @@ -17,9 +23,9 @@ >>> 2.0 / 5.0 0.4 -看到没有?麻烦出来了(这是在Python2.x中),按照数学运算,以上四个运算结果都应该是0.4。但我们看到的后三个符合,第一个居然结果是0。why? +看到没有?Python 2 中的麻烦出来了,按照数学运算,以上四个运算结果都应该是0.4。但我们看到的后三个符合,第一个居然结果是0。why? -因为,在Python(严格说是Python2.x中,Python3会有所变化)里面有一个规定,像2/5中的除法这样,是要取整(就是去掉小数,但不是四舍五入)。2除以5,商是0(整数),余数是2(整数)。那么如果用这种形式:2/5,计算结果就是商那个整数。或者可以理解为:**整数除以整数,结果是整数(商)**。 +因为,在Python 2里面有一个规定,像2/5中的除法这样,是要取整(就是去掉小数,但不是四舍五入)。2除以5,商是0(整数),余数是2(整数)。那么如果用这种形式:2/5,计算结果就是商那个整数。或者可以理解为:**整数除以整数,结果是整数(商)**。 比如: @@ -32,13 +38,31 @@ **注意:**得到是商(整数),而不是得到含有小数位的结果再通过“四舍五入”取整。例如:5/2,得到的是商2,余数1,最终`5 / 2 = 2`。并不是对2.5进行四舍五入。 -这就是Python中规定的原则,不用琢磨为什么了。在Python3.x中,规则又变了,如果`1/2`,结果就是0.5,也就是说Python3中的除法是真正的除法了,要取整,只能用`1//2`的方式,即`1//2=0`。这就是规则,人为规定的,使用者只有顺从,就如同足球比赛的规则一样。 +这就是Python 2中规定的原则,不用琢磨为什么了。 + +在Python 3.x中,规则又变了,如果`1/2`,结果就是0.5,也就是说Python 3中的除法是真正的除法了,要取整,只能用`1//2`的方式,即`1//2=0`。 + +这就是规则,人为规定的,使用者只有顺从,就如同足球比赛的规则一样。 +在Python 3中,演示几个除法: + + >>> 5 / 2 + 2.5 + >>> 7 / 2 + 3.5 + >>> 8 / 2 + 4.0 + +要想实现类似Python 2中那样的取整除法,Python 3也是可以,这么做: + + >>> 5 // 2 + 2 + ##浮点数与整数相除 -这个标题和上面的标题格式不一样,上面的标题是“整数除以整数”,如果按照风格一贯制的要求,本节标题应该是“浮点数除以整数”,但没有,现在是“浮点数与整数相除”,其含义是: +这里还是先讨论Python 2中的“浮点数与整数相除”,其含义是: ->假设:x除以y。其中 x 可能是整数,也可能是浮点数;y可能是整数,也可能是浮点数。 +假设:x除以y。其中 x 可能是整数,也可能是浮点数;y可能是整数,也可能是浮点数。 出结论之前,还是先做实验: @@ -58,6 +82,17 @@ 归纳,得到规律:**不管是被除数还是除数,只要有一个数是浮点数,结果就是浮点数。**所以,如果相除的结果有余数,也不会像前面一样了,而是要返回一个浮点数,这就跟在数学上学习的结果一样了。 +再说Python 3。 + +前面已经看到,`5 / 2`,得到的就是浮点数`2.5`;现在,如果当除数或者被除数,有一个或者两个都是浮点数,结果当然还是浮点数。 + + >>> 5.0 / 2 + 2.5 + +看来Python 3的一致性比较好。 + +但不管是Python 2还是Python 3,都有这种情况: + >>> 10.0 / 3 3.3333333333333335 @@ -72,7 +107,9 @@ >>> 0.1 + 0.1 + 0.1 - 0.2 0.10000000000000003 -越来越糊涂了,为什么computer姑娘在计算这么简单的问题上,如此糊涂了呢?不是computer姑娘糊涂,她依然冰雪聪明。原因在于十进制和二进制的转换上,computer姑娘用的是二进制进行计算,上面的例子中,我们输入的是十进制,她就要把十进制的数转化为二进制,然后再计算。但是,在转化中,浮点数转化为二进制,就出问题了。 +越来越糊涂了,为什么computer姑娘在计算这么简单的问题上,如此糊涂了呢?不是computer姑娘糊涂,她依然冰雪聪明。 + +原因在于十进制和二进制的转换上,computer姑娘用的是二进制进行计算,上面的例子中,我们输入的是十进制,她就要把十进制的数转化为二进制,然后再计算。但是,在转化中,浮点数转化为二进制,就出问题了。 例如十进制的0.1,转化为二进制是:0.0001100110011001100110011001100110011001100110011... @@ -84,21 +121,31 @@ 一般情况下,只要简单地将最终显示的结果用“四舍五入”到所期望的十进制位数,就会得到期望的最终结果。 -对于需要非常精确的情况,可以使用 decimal 模块,它实现的十进制运算适合会计方面的应用和高精度要求的应用。另外 fractions 模块支持另外一种形式的运算,它实现的运算基于有理数(因此像1/3这样的数字可以精确地表示)。最高要求则可是使用由 SciPy提供的 Numerical Python 包和其它用于数学和统计学的包。列出这些东西,仅仅是让看官能明白,解决问题的方式很多,后面会用这些中的某些方式解决上述问题。 +但是,不是什么地方都能“差不多”的。需要精确,用什么方法解决? + +可以使用 decimal 模块,它实现的十进制运算适合会计方面的应用和高精度要求的应用。 + +另外 fractions 模块支持另外一种形式的运算,它实现的运算基于有理数(因此像1/3这样的数字可以精确地表示)。 -关于无限循环小数问题,我有一个链接推荐给诸位,它不是想象的那么简单呀。请阅读:[维基百科的词条:0.999...](http://zh.wikipedia.org/wiki/0.999%E2%80%A6),会不会有深入体会呢? +最高要求则可是使用numPy 包和其它用于数学和统计学的包。 + +列出这些东西,仅仅是让读者能明白,解决问题的方式很多,不必担心。 + +关于无限循环小数问题,有一个链接推荐给诸位,它不是想象的那么简单呀。请阅读:[维基百科的词条:0.999...](http://zh.wikipedia.org/wiki/0.999%E2%80%A6),会不会有深入体会呢? >补充一个资料,供有兴趣的朋友阅读:[浮点数算法:争议和限制](https://docs.python.org/2/tutorial/floatingpoint.html#tut-fp-issues) Python总会要提供多种解决问题的方案的,这是她的风格。 -##引用模块解决除法--启用轮子 +并且常常有现成的“轮子”可是使用。 + +##引用模块解决除法 Python之所以受人欢迎,一个很重重要的原因,就是轮子多。这是比喻啦。就好比你要跑的快,怎么办?光天天练习跑步是不行滴,要用轮子。找辆自行车,就快了很多。还嫌不够快,再换电瓶车,再换汽车,再换高铁...反正你可以选择的很多。但是,这些让你跑的快的东西,多数不是你自己造的,是别人造好了,你来用。甚至两条腿也是感谢父母恩赐。正是因为轮子多,可以选择的多,就可以以各种不同速度享受了。 轮子是人类伟大的发明。 -Python就是这样,有各种轮子,我们只需要用。只不过那些轮子在Python里面的名字不叫自行车、汽车,叫做“模块”,有人承接别的语言的名称,叫做“类库”、“类”。不管叫什么名字吧。就是别人造好的东西我们拿过来使用。 +Python就是这样,有各种轮子,我们只需要用。只不过那些轮子在Python里面的名字不叫自行车、汽车,叫做“模块”或者“库”,有人承接别的语言的名称,叫做“类库”、“类”。不管叫什么名字吧。就是别人造好的东西我们拿过来使用。 怎么用?可以通过两种形式用: @@ -119,55 +166,79 @@ Python就是这样,有各种轮子,我们只需要用。只不过那些轮 注意了,引用了一个模块之后,再做除法,就不管什么情况,都是得到浮点数的结果了。 +当然,上述做法是在Python 2中,因为Python 3中天然如此了,没有必要再为此而`from __future__ import division`。 + 这就是轮子的力量。 +除法的组成有除数、被除数、商和余数,余数也可以单独计算。 + ##余数 -前面计算5/2的时候,商是2,余数是1 +计算`5/2`,商是2,余数是1。 余数怎么得到?在Python中(其实大多数语言也都是),用`%`符号来取得两个数相除的余数. -实验下面的操作: +操作如下,不论Python 2还是Python 3: >>> 5 % 2 1 - >>> 6%4 + >>> 6 % 4 2 - >>> 5.0%2 + >>> 5.0 % 2 1.0 符号:%,就是要得到两个数(可以是整数,也可以是浮点数)相除的余数。 -前面说Python有很多人见人爱的轮子(模块),她还有丰富的内建函数,也会帮我们做不少事情。例如函数`divmod()` +Python不枯燥,因为她多变。 + +除了使用`%`求余数,还有内建函数`divmod()`——返回的是商和余数。 - >>> divmod(5,2) #表示5除以2,返回了商和余数 + >>> divmod(5, 2) #表示5除以2,返回了商和余数 (2, 1) - >>> divmod(9,2) + >>> divmod(9, 2) (4, 1) - >>> divmod(5.0,2) + >>> divmod(5.0, 2) (2.0, 1.0) +同样是不区分版本。 + ##四舍五入 -最后一个了,一定要坚持,今天的确有点啰嗦了。要实现四舍五入,很简单,就是内建函数:`round()` +最后一个了,一定要坚持,的确有点啰嗦了。 + +要实现四舍五入,很简单,就是内建函数:`round()` 动手试试: - >>> round(1.234567,2) + >>> round(1.234567, 2) 1.23 - >>> round(1.234567,3) + >>> round(1.234567, 3) 1.235 - >>> round(10.0/3,4) + >>> round(10.0/3, 4) 3.3333 +如何理解`round()`内建函数的使用?要建立一个好习惯,并且掌握这个好方法: + + >>> help(round) + Help on built-in function round in module builtins: + + round(...) + round(number[, ndigits]) -> number + + Round a number to a given precision in decimal digits (default 0 digits). + This returns an int when called with one argument, otherwise the + same type as the number. ndigits may be negative. + +应该能读懂,我相信你。 + 简单吧。越简单的时候,越要小心,当你遇到下面的情况,就有点怀疑了: - >>> round(1.2345,3) + >>> round(1.2345, 3) 1.234 #应该是:1.235 - >>> round(2.235,2) + >>> round(2.235, 2) 2.23 #应该是:2.24 -哈哈,我发现了Python的一个bug,太激动了。 +哈哈,发现了Python的一个bug,太激动了。 别那么激动,如果真的是bug,这么明显,是轮不到我的。为什么?具体解释看这里,下面摘录官方文档中的一段话: @@ -178,6 +249,8 @@ Python就是这样,有各种轮子,我们只需要用。只不过那些轮 似乎除法的问题到此要结束了,其实远远没有,不过,做为初学者,至此即可。还留下了很多话题,比如如何处理循环小数问题,我肯定不会让有探索精神的朋友失望的,在我的github中有这样一个轮子,如果要深入研究,[可以来这里尝试](https://github.com/qiwsir/algorithm/blob/master/divide.py)。 +对于计算,远不止这些,还有一个更好用的工具——math。 + ------ [总目录](./index.md)   |   [上节:数和四则运算](./102.md)   |   [下节:Math模块和运算优先级](./104.md) From 112ccba121c485c16423e9aa4edce6ab71805879 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Tue, 15 Mar 2016 17:33:51 +0800 Subject: [PATCH 061/288] p3 --- 104.md | 77 +++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 49 insertions(+), 28 deletions(-) diff --git a/104.md b/104.md index 7280aa3..02e856c 100644 --- a/104.md +++ b/104.md @@ -10,20 +10,22 @@ #常用数学函数和运算优先级 -在数学之中,除了加减乘除四则运算之外——这是小学数学——还有其它更多的运算,比如乘方、开方、对数运算等等,要实现这些运算,需要用到python中的一个模块:Math +数学运算,不仅仅是加减乘除——四则运算是小学数学——还有其它更多的运算,比如乘方、开方、对数运算等等,要实现这些运算,需要用到Python中的一个模块:Math ->模块(module)是python中非常重要的东西,你可以把它理解为python的扩展工具。换言之,python默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践的需要,于是就有人专门制作了另外一些工具。这些工具被称之为“模块” +>模块(module)是Python中非常重要的东西,你可以把它理解为Python的扩展工具。换言之,Python默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践的需要,于是就有人专门制作了另外一些工具。这些工具被称之为“模块”(module)或者“库”(library)。 >任何一个pythoner都可以编写模块,并且把这些模块放到网上供他人来使用。 ->当安装好python之后,就有一些模块默认安装了,这个称之为“标准库”,“标准库”中的模块不需要安装,就可以直接使用。 ->如果没有纳入标准库的模块,需要安装之后才能使用。模块的安装方法,我特别推荐使用pip来安装。这里仅仅提一下,后面会专门进行讲述,性急的看官可以自己google。 +>当安装好Python之后,就有一些模块(库)默认安装了,这个称之为“标准库”,可以直接使用。 +>如果没有纳入标准库,需要安装之后才能使用。安装方法,特别推荐使用pip来安装。 -##使用math模块 +##使用math -math模块是标准库中的,所以不用安装,可以直接使用。使用方法是: +math是标准库之一,所以不用安装,可以直接使用。使用方法是: >>> import math -用import就将math模块引用过来了,下面就可以使用这个模块提供的工具了。比如,要得到圆周率: +不管Python 2还是Python 3,此法通用。 + +用import就将math引入到当前环境,下面就可以使用它提供的工具了。比如,要得到圆周率: >>> math.pi 3.141592653589793 @@ -35,13 +37,17 @@ math模块是标准库中的,所以不用安装,可以直接使用。使用 `dir(module)`是一个非常有用的指令,可以通过它查看任何模块中所包含的工具。从上面的列表中就可以看出,在math模块中,可以计算正sin(a),cos(a),sqrt(a)...... -这些我们称之为函数,也就是在模块math中提供了各类计算的函数,比如计算乘方,可以使用pow函数。但是,怎么用呢? +这些我们称之为函数,也有人叫方法,先不计较名字。总之如果通过math,使用其中提供的方法(函数),能够做很多运算。 + +但,怎么知道每个函数如何使用? -python是一个非常周到的姑娘,她早就提供了一个命令,让我们来查看每个函数的使用方法。 +`help()`是好帮手。 + +Python是一个非常周到的姑娘,让我们来查看每个函数(方法)的使用方法。 >>> help(math.pow) -在交互模式下输入上面的指令,然后回车,看到下面的信息: +不论是Python 2还是Python 3,在交互模式下输入上面的指令,然后回车,看到下面的信息: Help on built-in function pow in module math: @@ -50,29 +56,26 @@ python是一个非常周到的姑娘,她早就提供了一个命令,让我 Return x**y (x to the power of y). -这里展示了math模块中的pow函数的使用方法和相关说明。 +这里展示了math中的pow函数的使用方法和相关说明。 -1. 第一行意思是说这里是math模块的内建函数pow帮助信息(所谓built-in,称之为内建函数,是说这个函数是python默认就有的) -2. 第三行,表示这个函数的参数,有两个,也是函数的调用方式 -3. 第四行,是对函数的说明,返回`x**y`的结果,并且在后面解释了`x**y`的含义。 -4. 最后,按q键返回到python交互模式 +1. `pow(x, y)`:表示这个函数的参数,有两个,也是函数的调用方式 +2. `Return x**y (x to the power of y)`:是对函数的说明,返回`x**y`的结果,并且在后面解释了`x**y`的含义。 +3. 最后,按q键返回到python交互模式 从上面看到了一个额外的信息,就是pow函数和`x**y`是等效的,都是计算x的y次方。 - >>> 4**2 + >>> 4 ** 2 16 - >>> math.pow(4,2) + >>> math.pow(4, 2) 16.0 - >>> 4*2 + >>> 4 * 2 8 特别注意,`4**2`和`4*2`是有很大区别的。 -用类似的方法,可以查看math模块中的任何一个函数的使用方法。 - ->关于“函数”的问题,在这里不做深入阐述,看管姑且按照自己在数学中所学到去理解。后面会有专门研究函数的章节。 +用类似的方法,可以查看math中的任何一个函数的使用方法。 -下面是几个常用的math模块中函数举例,看官可以结合自己调试的进行比照。 +下面是几个常用函数举例,可以结合自己调试的进行比照。 >>> math.sqrt(9) 3.0 @@ -89,9 +92,15 @@ python是一个非常周到的姑娘,她早就提供了一个命令,让我 >>> 5%3 2 -##几个常见函数 +使用math里的函数,已经能完成大多数基础数学的运算了。Python还嫌不够方便,还提供了几个常见的内建函数,用以数学运算。 + +##常见函数 + +列举出几个常见函数。 + +重要声明,如果记不住这些函数也不要紧,先混个脸熟,知道有这些就好了,用的时候再google。 -有几个常用的函数,列一下,如果记不住也不要紧,知道有这些就好了,用的时候就google。 +依然是Python 2和Python 3都适用。 **求绝对值** @@ -109,7 +118,10 @@ python是一个非常周到的姑娘,她早就提供了一个命令,让我 >>> round(1.234,2) 1.23 - >>> #如果不清楚这个函数的用法,可以使用下面方法看帮助信息 +随时复习。 + +还记得如何了解内建函数的用法吗? + >>> help(round) Help on built-in function round in module __builtin__: @@ -120,6 +132,11 @@ python是一个非常周到的姑娘,她早就提供了一个命令,让我 Round a number to a given precision in decimal digits (default 0 digits). This always returns a floating point number. Precision may be negative. +这么多函数,再加上加减乘除,支持数学运算的的确不少。数学的混合运算,就是把这些东西放到一个表达式,这时候大家就要区分一下,谁走先?谁最后? + +这就是运算优先级。 + +但不是“领导先走”。 ##运算优先级 @@ -127,7 +144,7 @@ python是一个非常周到的姑娘,她早就提供了一个命令,让我 对于同一级别的,就按照“从左到右”的顺序进行计算。 -下面的表格中列出了python中的各种运算的优先级顺序。不过,就一般情况而言,不需要记忆,完全可以按照数学中的去理解,因为人类既然已经发明了数学,在计算机中进行的运算就不需要从新编写一套新规范了,只需要符合数学中的即可。 +下面的表格中列出了Python中的各种运算的优先级顺序。不过,就一般情况而言,不需要记忆,完全可以按照数学中的去理解,因为人类既然已经发明了数学,在计算机中进行的运算就不需要从新编写一套新规范了,只需要符合数学中的即可。 |运算符|描述| |------|----| @@ -156,9 +173,13 @@ python是一个非常周到的姑娘,她早就提供了一个命令,让我 |{key:datum,...}|字典显示| |'expression,...'|字符串转换| -上面的表格将python中用到的与运算符有关的都列出来了,是按照**从低到高**的顺序列出的。虽然有很多还不知道是怎么回事,不过先列出来,等以后用到了,还可以回来查看。 +上面的表格将Python中用到的与运算符有关的都列出来了,是按照**从低到高**的顺序列出的。虽然有很多还不知道是怎么回事,不过先列出来,等以后用到了,还可以回来查看。 + +最后,要提及的是运算中的绝杀:括号。只要有括号,就先计算括号里面的。这是数学中的共识,无需解释。并且,恰当使用括号,可以让你的表达式更具有可读性。 + +在程序中,可读性是非常重要的。 -最后,要提及的是运算中的绝杀:括号。只要有括号,就先计算括号里面的。这是数学中的共识,无需解释。 +“程序”,接下来就要开始写了。 ------ From 7949b5865860135a36bfc638f3e382b7baa20abc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 16 Mar 2016 23:00:49 +0800 Subject: [PATCH 062/288] p3 --- 105.md | 98 +++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 70 insertions(+), 28 deletions(-) diff --git a/105.md b/105.md index d7f75c9..48e1978 100644 --- a/105.md +++ b/105.md @@ -2,19 +2,23 @@ >你们是世上的光。城造在山上,是不能隐藏的。人点灯,不放在斗底下,是放在灯台上,就照亮一家的人。你们的光也当这样照在人前,叫他们看见你们的好行为,便将荣耀归给你们在天上的父。 -#写一个简单的程序 +#一个简单的程序 -通过对四则运算的学习,已经初步接触了Python中内容,如果看官是零基础的学习者,可能有点迷惑了。难道敲几个命令,然后看到结果,就算编程了?这也不是那些能够自动运行的程序呀? +学会了四则运算,就可以编程序。 -的确。到目前为止,还不能算编程,只能算会用一些指令(或者叫做命令)来做点简单的工作。 +这不是开玩笑,是真的。虽然是简单的程序。 + +这里说的程序当然不是在交互模式中敲出的几个命令,然后看到结果。那不算编程。 + +也不要担心学习的东西少而不能编程,因为编程没有那么难。只要你有胆量、有毅力,就一定能写出优秀的程序。 稍安勿躁,下面就开始编写一个真正的但是简单程序。 ##程序 -下面一段,关于程序的概念,内容来自维基百科: +什么是程序,自维基百科记载: -- 先阅读一段英文的:[computer program and source code](http://en.wikipedia.org/wiki/Computer_program),看不懂不要紧,可以跳过去,直接看下一条。 +[computer program and source code](http://en.wikipedia.org/wiki/Computer_program)(看不懂,很要紧,务必学习好英语,这是你认识世界工具——某国是世界一部分。想当初孙策临终前告诉孙权“外事不明学英语,内事不明学英语”,孙权谨记,才有曹孟德慨叹“生子当如孙仲谋”,因为曹丕和曹植,只学中文,不学英文,虽然这兄弟俩的诗词歌赋很有成就)。 >A computer program, or just a program, is a sequence of instructions, written to perform a specified task with a computer.[1] A computer requires programs to function, typically executing the program's instructions in a central processor.[2] The program has an executable form that the computer can use directly to execute the instructions. The same program in its human-readable source code form, from which executable programs are derived (e.g., compiled), enables a programmer to study and develop its algorithms. A collection of computer programs and related data is referred to as the software. @@ -22,21 +26,27 @@ >Computer programs may be ranked along functional lines: system software and application software. Two or more computer programs may run simultaneously on one computer from the perspective of the user, this process being known as multitasking. -- [计算机程序](http://zh.wikipedia.org/wiki/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A8%8B%E5%BA%8F) +维基百科上还记载这一段中文:[计算机程序](http://zh.wikipedia.org/wiki/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A8%8B%E5%BA%8F) >计算机程序(Computer Program)是指一组指示计算机或其他具有信息处理能力装置每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语和烹饪手法的人(体系结构)来做这个菜。 >通常,计算机程序要经过编译和链接而成为一种人们不易看清而计算机可解读的格式,然后运行。未经编译就可运行的程序,通常称之为脚本程序(script)。 -程序,简而言之,就是指令的集合。但是,有的程序需要编译,有的不需要。python编写的程序就不需要,因此她也被称之为解释性语言,编程出来的层序被叫做脚本程序。在有的程序员头脑中,有一种认为“编译型语言比解释性语言高价”的认识。这是错误的。不要认为编译的就好,不编译的就不好;也不要认为编译的就“高端”,不编译的就属于“低端”。有一些做了很多年程序的程序员或者其它什么人,可能会有这样的想法,这是毫无根据的。 +程序,简而言之,就是指令的集合。但是,有的程序需要编译,有的不需要。Python编写的程序就不需要单独做编译操作(对人而言,不需要执行这个命令),因此她也被称之为解释性语言。但是,这种称呼容易产生误解。 + +在有的程序员头脑中,有一种认为“编译型语言比解释性语言高价”的认识。 + +这是错误的。 + +学完Python,你就知晓。 不争论。用得妙就是好。 -##用IDLE的编程环境 +##用IDLE的编程 -能够写python程序的工具很多,比如记事本就可以。当然,很多人总希望能用一个专门的编程工具,python里面自带了一个,作为简单应用是足够了。另外,可以根据自己的喜好用其它的工具,比如我用的是vim,有不少人也用eclipse,还有notepad++,等等。软件领域为编程提供了丰富多彩的工具。 +能够写Python程序的工具很多,比如记事本就可以。当然,很多人总希望能用一个专门的编程工具,Python里面自带了一个,作为简单应用是足够了。另外,可以根据自己的喜好用其它的工具,比如我用的是vim,有不少人也用eclipse,还有notepad++,等等。软件领域为编程提供了丰富多彩的工具。 -以python默认的IDE为例,如下所示: +以Python默认的IDLE为例,如下所示: 操作:File->New window @@ -48,7 +58,7 @@ ##写两个大字:Hello,World -Hello,World.是面向世界的标志,所以,写任何程序,第一句一定要写这个,因为程序员是面向世界的,绝对不畏缩在某个局域网内,所以,所以看官要会科学上网,才能真正与世界Hello。 +Hello,World.是面向世界的标志,所以,写任何程序,第一句一定要写这个,因为程序员是面向世界的,绝对不畏缩在某个局域网内,所以,所以要会科学上网,才能真正与世界Hello。 直接上代码,就这么一行即可。 @@ -64,9 +74,9 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 ![](./1images/10504.png) -会弹出对话框,要求把这个文件保存,这就比较简单了,保存到一个位置,看官一定要记住这个位置,并且取个文件名,文件名是以.py为扩展名的。 +会弹出对话框,要求把这个文件保存,这就比较简单了,保存到一个位置,一定要记住这个位置,并且取个文件名,文件名是以.py为扩展名的。 -都做好之后,点击确定按钮,就会发现在另外一个带有>>>的界面中,就自动出来了Hello,World两个大字。 +都做好之后,点击确定按钮,就会发现在另外一个带有`>>>`的界面中,就自动出来了Hello,World两个大字。 成功了吗?成功了也别兴奋,因为还没有到庆祝的时候。 @@ -78,15 +88,15 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 ![](./1images/10505.png) -然后在这个shell里面,输入:python 105.py +然后在这个shell里面,Python 2则输入:`python 105.py`;Python 3则输入:`python3 105.py`。 -上面这句话的含义就是告诉计算机,给我运行一个python语言编写的程序,那个程序文件的名称是105.py +上面这句话的含义就是告诉计算机,运行一个Python语言编写的程序,那个程序文件的名称是105.py 我的计算机我做主。于是它给我乖乖地执行了这条命令。如下图: ![](./1images/10506.png) -还在沉默?可以欢呼了,德国队7:1胜巴西队,列看官中,不管是德国队还是巴西队的粉丝,都可以欢呼,因为你在程序员道路上迈出了伟大的第二步(什么迈出的第一步?)。顺便预测一下,本届世界杯最终冠军应该是:中国队。(还有这么扯的吗?) +还在沉默?可以欢呼了,德国队7:1胜巴西队(我在写这段的时候,正好世界杯),不管是德国队还是巴西队的粉丝,都可以欢呼,因为你在程序员道路上迈出了伟大的第二步(什么时候迈出的第一步?)。顺便预测一下,本届世界杯最终冠军应该是:中国队。(还有这么扯的吗?) ##解一道题目 @@ -102,8 +112,8 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 19+2*4-8/2 """ - a = 19+2*4-8/2 - print a + a = 19 + 2 * 4 - 8 / 2 + print a # python 3: print(a) 提醒初学者,别复制这段代码,而是要一个字一个字的敲进去。然后保存(我保存的文件名是:105-1.py)。 @@ -119,17 +129,21 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 #!/usr/bin/env python -这一行是必须写的,它能够引导程序找到python的解析器,也就是说,不管你这个文件保存在什么地方,这个程序都能执行,而不用制定python的安装路径。 +在Linux操作系统中,这一行是必须写的,它能够引导程序找到python的解析器,也就是说,不管你这个文件保存在什么地方,这个程序都能执行,而不用制定Python的安装路径。如果是Windows操作系统,则不必写。 #coding:utf-8 -这一行是告诉python,本程序采用的编码格式是utf-8,什么是编码?什么是utf-8?这是一个比较复杂且有历史的问题,此处暂不讨论。只有有了上面这句话,后面的程序中才能写汉字,否则就会报错了。看官可以把你的程序中的这行删掉,看看什么结果? +这一行是告诉Python,本程序采用的编码格式是utf-8。 + +什么是编码?什么是utf-8? + +这是一个比较复杂且有历史的问题,此处暂不讨论。只有有了上面这句话,后面的程序中才能写汉字,否则就会报错了。不管你信还是不信,都应该把程序中的这行删掉,然后运行程序,看看什么结果? """ 请计算: 19+2*4-8/2 """ -这一行是让人看的,计算机看不懂。在python程序中(别的编程语言也是如此),要写所谓的注释,就是对程序或者某段语句的说明文字,这些文字在计算机执行程序的时候,被计算机姑娘忽略,但是,注释又是必不可少的,正如前面说的那样,程序在大多数情况下是给人看的。注释就是帮助人理解程序的。 +这一行是给人看的,计算机看不懂。在Python程序中(别的编程语言也是如此),要写所谓的注释,就是对程序或者某段语句的说明文字,这些文字在计算机执行程序的时候,被计算机姑娘忽略,但是,注释又是必不可少的,正如前面说的那样,程序在大多数情况下是给人看的。注释就是帮助人理解程序的。 写注释的方式有两种,一种是单行注释,用`#`开头,另外一种是多行注释,用一对`'''`包裹起来。比如: @@ -146,30 +160,58 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 一般在程序的开头部分,都要写点东西,主要是告诉别人这个程序是用来做什么的。 - a = 19+2*4-8/2 + a = 19 + 2 * 4 - 8 / 2 + +所谓语句,就是告诉程序要做什么事情。程序就是有各种各样的语句组成的。 + +这条语句,有一个名字,叫做复制语句。 + +`19+2*4-8/2`是一个表达式,要计算出一个结果,这个结果就是一个对象(又遇到了对象这个术语。在某些地方的方言中,把配偶、男女朋友也称之为对象,“对象”是一个应用很广泛的术语)。 -所谓语句,就是告诉程序要做什么事情。程序就是有各种各样的语句组成的。这条语句,又有一个名字,叫做复制语句。`19+2*4-8/2`是一个表达式,最后要计算出一个结果,这个结果就是一个对象(又遇到了对象这个术语。在某些地方的方言中,把配偶、男女朋友也称之为对象,“对象”是一个应用很广泛的术语)。`=`不要理解为数学中的等号,它的作用不是等于,而是完成赋值语句中“赋值”的功能。`a`就是变量。这样就完成了一个赋值过程。 +`=`不要理解为数学中的等号,它的作用不是等于,而是完成赋值语句中“赋值”的功能。 + +`a`就是变量。指向了右边表达式计算结果。 + +这样就完成了一个赋值过程。 >语句和表达式的区别:“表达式就是某件事”,“语句是做某件事”。 print a -这还是一个语句,称之为print语句,就是要打印出a的值(这种说法不是非常非常严格,但是通常总这么说。按照严格的说法,是打印变量a做对应的对象的值。嫌这种说法啰嗦,就直接说打印a的值)。 +对于Python 2,这还是一个语句,称之为print语句,就是要打印出a的值(这种说法不是非常非常严格,但是通常总这么说。按照严格的说法,是打印变量a做对应的对象的值。嫌这种说法啰嗦,就直接说打印a的值)。 + +但是对于Python 3,应该写成`print(a)`,这里的`print()`是一个函数,意思是调用这个函数,将a所指向的对象传给此函数。结果同上。 -是不是在为看到自己写的第一个程序而欣慰呢? +是不是在为看到自己写的第一个程序而欣慰呢?那么计算机是怎么完成计算过程的呢? -##编译过程 +##编译 在刚才的程序中,那些东西我们可以笼统称之为源代码,最后那个扩展名是`.py`的文件是源代码文件。Python是如何执行源代码的呢? ![](./1images/10508.jpg) -当运行`.py`文件的时候,Python会通过编译器,将它编译为`.pyc`文件,然后这个文件就在一个名为虚拟机的东西上运行,这个所谓的虚拟机是专门为Python涉及的,正是因为有了虚拟机,使得Python是跨平台的,也就是说你写的Python程序可以不经过修改而在不同才做系统上运行。如果你没有修改`.py`文件,那么每次执行这个程序的时候,就直接运行前面已经生成的`.pyc`文件,这样让执行速度就大大提升了,不是每次都要从新编译。有一些不了解或者不愿意了解Python的人,总认为Python使解释型语言,每次执行程序都要从头到位一行一行解释执行,这是对Python的无知表现。如果你修改了`.py`文件,下次执行程序的时候,会自动从新编译。 +当运行`.py`文件的时候,Python会通过编译器,将它编译为`.pyc`文件。 + +对,你没有看错。Python中也有编译,只不过它不是你有意识单独来操作的,是你执行程序的时候自动完成的。 + +然后这个文件就在一个名为虚拟机的东西上运行,这个所谓的虚拟机是专门为Python设计的。 + +为什么要有虚拟机? + +因为有了虚拟机,使得Python可以跨平台的,也就是说你写的Python程序可以不经过修改而在不同才做系统上运行。 + +Java也不过如此。 + +如果你没有修改`.py`文件,那么每次执行这个程序的时候,就直接运行前面已经生成的`.pyc`文件,这样让执行速度就大大提升了,不是每次都要从新编译。 + +有一些不了解或者不愿意了解Python的人,总认为Python使解释型语言,每次执行程序都要从头到位一行一行解释执行,这是对Python的无知表现。如果你修改了`.py`文件,下次执行程序的时候,会自动从新编译。 你根本不用关心`.pyc`文件,Python总是自动完成编译过程的。而且,它的代码因为使给机器看的,你也看不懂。不过要注意的是,不要删除它,也不用重命名。 +程序搞定,在你感到收获的时候,不要忘了,编程的路我们刚刚开始,后面还有“字符串”。 + ------ [总目录](./index.md)   |   [上节:常用数学函数和运算优先级](./104.md)   |   [下节:字符串(1)](./106.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,或者加我微信(**微信号:qiwsir**),不胜感激。 +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 495c1b0be2be22b50ea4d07cf7d26550947ac60d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 16 Mar 2016 23:04:28 +0800 Subject: [PATCH 063/288] p3 --- 105.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/105.md b/105.md index 48e1978..c17556f 100644 --- a/105.md +++ b/105.md @@ -164,7 +164,7 @@ Hello,World.是面向世界的标志,所以,写任何程序,第一句一 所谓语句,就是告诉程序要做什么事情。程序就是有各种各样的语句组成的。 -这条语句,有一个名字,叫做复制语句。 +这条语句,有一个名字,叫做**赋值语句**。 `19+2*4-8/2`是一个表达式,要计算出一个结果,这个结果就是一个对象(又遇到了对象这个术语。在某些地方的方言中,把配偶、男女朋友也称之为对象,“对象”是一个应用很广泛的术语)。 From b5ee1c706da9ecf82d50ac620e67cfcf5384c6b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 17 Mar 2016 12:07:36 +0800 Subject: [PATCH 064/288] p3 --- 106.md | 78 +++++++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 58 insertions(+), 20 deletions(-) diff --git a/106.md b/106.md index a6fda21..d36083d 100644 --- a/106.md +++ b/106.md @@ -10,13 +10,13 @@ 聊天!看视频!打游戏!处理文档! -显然,已经“忘记初心”,计算机再不是当初的计算机了,成为了“电脑”。也正是忘记初心,变成“电脑”,才成为大众的工具。而支持她作为“电脑”只用的,就是里面的软件。 +显然,已经“忘记初心”,计算机再不是当初的计算机了,成为了“电脑”。也正是忘记初心,变成“电脑”,才成为大众的工具。而支持她作为“电脑”之用的,就是里面的软件。 电脑中的软件,只有少数是用来计算的,多数是不用于计算的。处理文档则是多数功能之一。 软件程序如何处理文档?要再看看自然语言。 -如果对自然语言分类,有很多种分法,比如英语、法语、汉语等,这种分法是最常见的。 +如果对自然语言,有很多种,比如英语、法语、汉语等,这是对自然语言的分类。 我还有一种分类方法,固然尚未得到广泛认同,但“真理是掌握在少数人的手里”是我的信念,至少可以让自己成为“民科”。 @@ -61,6 +61,8 @@ google,不至于让我盲目。 不论使用单引号还是双引号,结果都是一样的,都是字符串。 +Python 2的用户,可以看到: + >>> 250 250 >>> type(250) @@ -71,16 +73,30 @@ google,不至于让我盲目。 >>> type("250") -仔细观察上面的区别,同样是250,一个没有放在引号里面,一个放在了引号里面,用`type()`函数来检验一下,发现它们居然是两种不同的对象类型,前者是int类型,后者则是str类型,即字符串类型。所以,务必注意,不是所有数字都是int(or float),必须要看看,它在什么地方,如果在引号里面,就是字符串了。如果搞不清楚是什么类型,就让`type()`来帮忙搞定。 +Python 3则是这样的结果: + + >>> type(250) + + >>> type("250") + + +仔细观察,同样是250,一个没有放在引号里面,一个放在了引号里面,用`type()`函数来检验一下,发现它们居然是两种不同的对象类型,前者是int类型,后者则是str类型,即字符串类型。所以,务必注意,不是所有数字都是int(or float),必须要看看,它在什么地方,如果在引号里面,就是字符串了。如果搞不清楚是什么类型,就让`type()`来帮忙搞定。 操练一下字符串吧。 +先看Python 2下的操作 + >>> print "good good study, day day up" good good study, day day up >>> print "----good---study---day----up" ----good---study---day----up -在print后面,打印的都是字符串。注意,是双引号里面的,引号不是字符串的组成部分。它是在告诉计算机,它里面包裹着的是一个字符串。 +在`print`后面,打印的都是字符串。注意,是双引号里面的,引号不是字符串的组成部分。它是在告诉计算机,它里面包裹着的是一个字符串。 + +在Python 3中,区别就是`print()`是一个函数了。 + + >>> print("good good study, day day up") + good good study, day day up 爱思考,有惊喜;多尝试,有收获。 @@ -115,7 +131,7 @@ google,不至于让我盲目。 **解决方法二:**使用转义符 -所谓转义,就是让某个符号不在表示某个含义,而是表示另外一个含义。转义符的作用就是它能够转变符号的含义。在Python中,用`\`作为转义符(其实很多语言,只要有转义符的,都是用这个符号)。 +所谓转义,就是让某个符号不再表示某个含义,而是表示另外一个含义。转义符的作用就是它能够转变符号的含义。在Python中,用`\`作为转义符(其实很多语言,只要有转义符的,都是用这个符号)。 >>> 'What\'s your name?' "What's your name?" @@ -145,15 +161,24 @@ google,不至于让我盲目。 >>> b = "hello,world" >>> b 'hello,world' - >>> print b + >>> print b #Python 2 hello,world + #>>> print(b) #Python 3 + #hello,world -检查类型的命令`type`总是在我们需要的时候被想起来。 +检查类型的函数`type()`总是在我们需要的时候被想起来。 + #Python 2 >>> type(a) >>> type(b) + + #Python 3 + >>> type(a) + + >>> type(b) + 有一种说法:a称之为数字型变量,b叫做字符(串)型变量。 @@ -187,18 +212,16 @@ google,不至于让我盲目。 >>> a = 1989 >>> b = "free" - >>> print b+a + >>> print b+a # Python 2的写法,如果是Python 3,请使用print(b + a) Traceback (most recent call last): File "", line 1, in TypeError: cannot concatenate 'str' and 'int' objects - ->这里引入了一个指令:`print`,意思就是打印后面的字符串(或者指向字符串的变量),上面是Python 2中的使用方式,在python 3中,它变成了一个函数。应该用`print(b+a)`的样式了。 -报错了,其错误原因已经打印出来(一定要注意看打印出来的信息):`cannot concatenate 'str' and 'int' objects`。原来`a`对应的对象是一个`int`类型的,不能将它和`str`对象连接起来。 +报错了,其错误原因已经打印出来(一定要注意看打印出来的信息):`cannot concatenate 'str' and 'int' objects`。原来`a`对应的对象是一个`int`类型的,不能将它和`str`对象连接起来。如果是Python 3,报错信息是`TypeError: unsupported operand type(s) for +: 'int' and 'str'`。 怎么办? -原来,用`+`所连接的两个对象,必须是同一种类型。 +原来,用`+`所连接的两个对象,必须是同一种类型。如果是不同类型的,则"cannot concatenate"或者"unsupported"。 如果两个都是数字,毫无疑问是正确的,就是求和;如果都是字符串,那么就得到一个新的字符串。 @@ -207,36 +230,40 @@ google,不至于让我盲目。 >>> print b + `a` free1989 -注意,上面的代码,一不小心就会犯错误。包裹着字母`a`的,不是单引号,是键盘中通常在数字1左边的那个,在英文半角状态下输入的符号——叫做“反引号”。这种方法,在编程实践中比较少应用,特别是在python 3中,已经把这种方式弃绝了。窃以为原因就是这个符号太容易和单引号混淆了。在编程中,也不容易看出来,可读性太差。 +注意,上面的代码,不要使用在Python 3中。 + +在Pytohn 2中,也要注意,一不小心就会犯错误。包裹着字母`a`的,不是单引号,是键盘中通常在数字1左边的那个,在英文半角状态下输入的符号——叫做“反引号”。 + +这种方法,在编程实践中比较少应用,特别是在python 3中,已经把这种方式弃绝了。窃以为原因就是这个符号太容易和单引号混淆了。在编程中,也不容易看出来,可读性太差。 常言道,“困难只有一个,解决困难的方法不止一种”,既然反引号可读性不好,在编程实践中就尽量不要使用。于是乎就有了下面的方法,这是被广泛采用的。不但简单,更主要是直白,一看就懂什么意思了。 - >>> print b + str(a) + >>> print b + str(a) # 如果是Python 3,请使用print(b + str(a)) free1989 用`str(a)`实现将整数对象转换为字符串对象。虽然`str`是一种对象类型,但是它也能够实现对象类型的转换——`str()`是函数,关于函数,后面会详述。其实前面已经遇到过`int()`了。比如: >>> a = "250" >>> type(a) - + # 对于Pytohn 3,返回值略有差异,前面已经演示过了。 >>> b = int(a) >>> b 250 >>> type(b) ->提醒列位,如果你对int和str比较好奇,可以在交互模式中,使用help(int),help(str)查阅相关的更多资料。 +>提醒列位,如果你对int和str比较好奇,可以在交互模式中,使用`help(int)`,`help(str)`查阅相关的更多资料。或许看不懂,不用担心,权当混个脸熟。 还有第三种: - >>> print b + repr(a) #repr(a)与上面的类似 + >>> print b + repr(a) # 这是Python 2的写法,Python 3则为:>>> print(b + repr(a)) free1989 -这里repr()是一个函数,其实就是反引号的替代品,它能够把结果字符串转化为合法的python表达式。 +这里repr()是一个函数,其实就是反引号的替代品,它能够把结果字符串转化为合法的Python表达式。 三种解决方法,有区别吗? -首先,repr()和反引号是一致的,就不用区别了。 +首先,repr()和反引号是一致的(Python 3弃绝了反引号的使用),就不用区别了。 然后区分repr()和str,不用消耗脑细胞,交给Google,查询到这样的描述: @@ -293,6 +320,8 @@ google,不至于让我盲目。 以上所有转义符,都可以通过交互模式下`print`来测试,感受实际上是什么样子的。例如: +Python 2: + >>> print "hello.I am qiwsir.\ #这里换行,下一行接续 ... My website is 'http://qiwsir.github.io'." hello.I am qiwsir.My website is 'http://qiwsir.github.io'. @@ -300,9 +329,18 @@ google,不至于让我盲目。 >>> print "you can connect me by qq\\weibo\\gmail" #\\是为了要后面那个\ you can connect me by qq\weibo\gmail +Python 3: + + >>> print("hello.I am qiwsir.\ + My website is 'http://qiwsir.github.io'.") + hello.I am qiwsir.My website is 'http://qiwsir.github.io'. + + >>> print("you can connect me by qq\\weibo\\gmail") + you can connect me by qq\weibo\gmail + 自己动手,丰衣足食,试试吧。 -`print`解决了显示问题,要向程序输入一个内容,这就需要`raw_input()`粉墨登场了。 +`print`或者`print()`解决了显示问题,但是输入怎么办?这就需要`raw_input()`或者`input()`粉墨登场了。 ------ From eea8f5dc82fecf4d72984a0789f20bc381f3693c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 17 Mar 2016 16:50:35 +0800 Subject: [PATCH 065/288] p3 --- 107.md | 203 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 102 insertions(+), 101 deletions(-) diff --git a/107.md b/107.md index 1d140fa..7bdcf96 100644 --- a/107.md +++ b/107.md @@ -1,59 +1,36 @@ #字符串(2) -##raw_input和print - -自从本课程开始以来,我们还没有感受到computer姑娘的智能。最简单的智能应该体现在哪里呢?想想小孩子刚刚回说话的时候情景吧。 - ->小孩学说话,是一个模仿的过程,孩子周围的人怎么说,她(他)往往就是重复。看官可以忘记自己当初是怎么学说话了吧?就找个小孩子观察一下吧。最好是自己的孩子。如果没有,就要抓紧了。 - -通过python能不能实现这个简单的功能呢?当然能,要不然python如何横行天下呀。 - -不过在写这个功能前,要了解两个函数:raw_input和print - ->这两个都是python的内建函数(built-in function)。关于python的内建函数,下面这个表格都列出来了。所谓内建函数,就是能够在python中直接调用,不需要做其它的操作。 - -Built-in Functions - -------------------------------------------------------------- -|abs() | divmod() | input()| open()| staticmethod()| --------------------------------------------------------------- -|all() | enumerate() | int() | ord() | str()| --------------------------------------------------------------- -|any() | eval() | isinstance()| pow()| sum()| --------------------------------------------------------------- -|basestring() | execfile() | issubclass() | print() | super()| --------------------------------------------------------------- -|bin() | file() | iter()| property()| tuple()| --------------------------------------------------------------- -|bool() | filter() | len() | range() | type()| --------------------------------------------------------------- -|bytearray() | float()| list() | raw_input()| unichr()| --------------------------------------------------------------- -|callable() | format() | locals() | reduce() | unicode()| --------------------------------------------------------------- -|chr() | frozenset() | long() | reload() | vars()| --------------------------------------------------------------- -|classmethod()| getattr()| map() | repr() | xrange()| --------------------------------------------------------------- -|cmp() | globals()| max()| reversed()| zip()| --------------------------------------------------------------- -|compile() |hasattr() | memoryview()| round() | __import__()| --------------------------------------------------------------- -|complex() |hash() | min()| set() | apply()| --------------------------------------------------------------- -|delattr() |help()| next()| setattr()| buffer()| --------------------------------------------------------------- -|dict() | hex() |object() |slice() | coerce()| --------------------------------------------------------------- -|dir() | id() |oct() |sorted() |intern()| --------------------------------------------------------------- +##键盘输入 + +电脑的智能,一种体现就是可以接受用户通过键盘输入的内容。 + +通过Python能不能实现这个简单的功能呢?当然能,要不然Python如何横行天下呀。 + +不过在写这个功能前,要了解函数: + +- Python 2:`raw_input()` +- Python 3: `input()` + +这是Python的内建函数(built-in function)。关于内建函数,可以分别通过下面的链接查看: + +- [Python 2的内建函数](https://docs.python.org/2/library/functions.html) +- [Python 3的内建函数](https://docs.python.org/3.5/library/functions.html) + +如果仔细对照上面的两个版本的内建函数,会发现还是有差异的。 这些内建函数,怎么才能知道哪个函数怎么用,是干什么用的呢? -不知道你是否还记得我在前面使用过的方法,这里再进行演示,这种方法是学习python的法宝。 +一种方法是通过网页上的官方内容,点击链接,就能查看该函数的说明文档。 + +还有一种方法,不知道你是否还记得我在前面使用过的,这里再进行演示。 - >>> help(raw_input) + >>> help(raw_input) #Python 2 -然后就出现: + >>> help(input) #Python 3 + +然后就出现, + +Python 2中的结果: Help on built-in function raw_input in module __builtin__: @@ -65,128 +42,152 @@ Built-in Functions On Unix, GNU readline is used if enabled. The prompt string, if given, is printed without a trailing newline before reading. -从中是不是已经清晰地看到了`raw_input()`的使用方法了。 - -还有第二种方法,那就是到python的官方网站,查看内建函数的说明。https://docs.python.org/2/library/functions.html +Python 3中的结果: -其实,我上面那个表格,就是在这个网页中抄过来的。 + Help on built-in function input in module builtins: -例如,对`print()`说明如下: - - print(*objects, sep=' ', end='\n', file=sys.stdout) - - Print objects to the stream file, separated by sep and followed by end. sep, end and file, if present, must be given as keyword arguments. - - All non-keyword arguments are converted to strings like str() does and written to the stream, separated by sep and followed by end. Both sep and end must be strings; they can also be None, which means to use the default values. If no objects are given, print() will just write end. + input(prompt=None, /) + Read a string from standard input. The trailing newline is stripped. + + The prompt string, if given, is printed to standard output without a + trailing newline before reading input. + + If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError. + On *nix systems, readline is used if available. + +从中是不是已经清晰地看到了`raw_input()`或者`input()`的使用方法了。 - The file argument must be an object with a write(string) method; if it is not present or None, sys.stdout will be used. Output buffering is determined by file. Use file.flush() to ensure, for instance, immediate appearance on a screen. +下面就在交互模式下操练一下这个主管键盘输入的函数。 分别在交互模式下,将这个两个函数操练一下。 - >>> raw_input("input your name:") - input your name:python + >>> raw_input("input your name:") # Python 2 + input your name:python #提示输入内容,通过键盘输入`python` 'python' - -输入名字之后,就返回了输入的内容。用一个变量可以获得这个返回值。 + + >>> input("input your name:") #Python 3 + input your name:python #提示输入内容,通过键盘输入`python` + 'python' + +输入名字之后,就返回了输入的内容。 - >>> name = raw_input("input your name:") +返回的结果,也是一个对象(字符串类型的对象),那么就可以用赋值语句,与一个变量关联起来。 + + >>> name = raw_input("input your name:") #Python 2 input your name:python >>> name 'python' >>> type(name) - + + >>> name = input("input your name:") #Python 3 + input your name:python + >>> name + 'python' + >>> type(name) + + 而且,返回的结果是str类型。如果输入的是数字呢? - >>> age = raw_input("How old are you?") + >>> age = raw_input("How old are you?") #Python 2 How old are you?10 >>> age '10' >>> type(age) -返回的结果,仍然是str类型。 + >>> age = input("How old are you?") #Python 2 + How old are you?10 + >>> age + '10' + >>> type(age) + -再试试`print()`,看前面对它的说明,是比较复杂的。没关系,我们从简单的开始。在交互模式下操作: +返回的结果,仍然是str类型。 - >>> print("hello, world") - hello, world - >>> a = "python" - >>> b = "good" - >>> print a - python - >>> print a,b - python good +所以,Python 2的文档中就明确写出`raw_input([prompt]) -> string`,意思是它的返回值为字符串。 -比较简单吧。当然,这是没有搞太复杂了。 +`print()`在Python 2和Python 3中,都是一个函数。 -特别要提醒的是,`print()`默认是以`\n`结尾的,所以,会看到每个输出语句之后,输出内容后面自动带上了`\n`,于是就换行了。 +特别要提醒的是,`print()`默认是以`\n`结尾的,所以,每次用到`print`或者`print()`之后,输出内容后面自动带上了`\n`,于是在打印的结果中就换行了。 有了以上两个准备,接下来就可以写一个能够“对话”的小程序了。 #!/usr/bin/env python # coding=utf-8 - name = raw_input("What is your name?") + name = raw_input("What is your name?") #如果是在Python 3中,更换为input() age = raw_input("How old are you?") - print "Your name is:", name - print "You are " + age + " years old." + print "Your name is: ", name #Python 3: print("Your name is: ", name) + print "You are " + age + " years old." #Python 3: print("You are " + age + " years old.") after_ten = int(age) + 10 - print "You will be " + str(after_ten) + " years old after ten years." + print "You will be " + str(after_ten) + " years old after ten years." + #Python 3: print("You will be " + str(after_ten) + " years old after ten years.") -对这段小程序中,有几点说明 +读者是否能独立调试这个程序? -前面演示了`print()`的使用,除了打印一个字符串之外,还可以打印字符串拼接结果。 +`print`语句或者`print()`函数,除了打印一个字符串之外,还可以打印字符串拼接结果(拼接之后还是一个字符串,就是比原来长了)。 - print "You are " + age + " years old." + print "You are " + age + " years old." #Python 2 + print("You are " + age + " years old.") #Python 3 -注意,那个变量`age`必须是字符串,如最后的那个语句中: +注意,那个变量`age`必须指向的是字符串类型的对象,如最后的那个语句中: - print "You will be " + str(after_ten) + " years old after ten years." - -这句话里面,有一个类型转化,将原本是整数型`after_ten`转化为了str类型。否则,就包括,不信,你可以试试。 + print "You will be " + str(after_ten) + " years old after ten years." #Python 2 + print("You will be " + str(after_ten) + " years old after ten years.") #Python 3 + +这句话里面,有一个类型转化,将原本是整数型的对象转化为了str类型。否则,就报错,不信,你可以试试。 + +同样注意,在`after_ten = int(age) + 10`中,因为通过`raw_input()`或者`input()`得到的是str类型,当age和10求和的时候,需要先用`int()`函数进行类型转化,才能和后面的整数10相加。 -同样注意,在`after_ten = int(age) + 10`中,因为通过`raw_input`得到的是str类型,当age和10求和的时候,需要先用`int()`函数进行类型转化,才能和后面的整数10相加。 +这个小程序,是有点综合的,基本上把已经学到的东西综合运用了一次。请仔细调试一下,如果没有通过,看报错信息,你能够从中获得修改方向的信息。 -这个小程序,是有点综合的,基本上把已经学到的东西综合运用了一次。请看官调试一下,如果没有通过,仔细看报错信息,你能够从中获得修改方向的信息。 +通过键盘输入得到的都是字符串,也有的字符串不是通过键盘输入得到的,需要用引号包裹,有时候还要用转义符。但是,有一种方式,能够还原字符串中字符的原始含义。 ##原始字符串 -所谓原始字符串,就是指字符串里面的每个字符都是原始含义,比如反斜杠,不会被看做转义符。如果在一般字符串中,比如 +所谓原始字符串,就是指字符串里面的每个字符都是原始含义,比如反斜杠,不会被看做转义符。 + +在一般字符串中,比如 - >>> print "I like \npython" + >>> print "I like \npython" #Python 3: print("I like \npython") I like python -这里的反斜杠就不是“反斜杠”的原始符号含义,而是和后面的n一起表示换行(转义了)。当然,这似乎没有什么太大影响,但有的时候,可能会出现问题,比如打印DOS路径(DOS,有没有搞错,现在还有人用吗?) +这里的反斜杠就不是“反斜杠”的原始符号含义,而是和后面的n一起组成了换行符`\n`,即转义了。当然,这似乎没有什么太大影响,但有的时候,可能会出现问题,比如打印DOS路径(DOS,有没有搞错,现在还有人用吗?) >>> dos = "c:\news" >>> dos - 'c:\news' #这里貌似没有什么问题 + 'c:\news' #这里貌似没有什么问题 >>> print dos #当用print来打印这个字符串的时候,就出问题了。 c: ews + #Python 3: print(dos) + +如何避免? -如何避免?用前面讲过的转义符可以解决: +用转义符可以解决: >>> dos = "c:\\news" - >>> print dos + >>> print dos #Python 3: print(dos) c:\news 此外,还有一种方法,如: >>> dos = r"c:\news" - >>> print dos + >>> print dos #Python 3: print(dos) c:\news - >>> print r"c:\news\python" + >>> print r"c:\news\python" #Python 3: print(r"c:\news\python") c:\news\python 状如`r"c:\news"`,由r开头引起的字符串,就是原始字符串,在里面放任何字符都表示该字符的原始含义。 这种方法在做网站设置网站目录结构的时候非常有用。使用了原始字符串,就不需要转义了。 +一个字符串,一般可以有多个字符构成,那么可以操作每个字符吗?这就要索引和切片。 + ------ [总目录](./index.md)   |   [上节:字符串(1)](./106.md)   |   [下节:字符串(3)](./108.md) From 7eb987c202f16c77ff9e460fc44b67935579d2c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Fri, 18 Mar 2016 13:35:38 +0800 Subject: [PATCH 066/288] p3 --- 108.md | 105 +++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 73 insertions(+), 32 deletions(-) diff --git a/108.md b/108.md index 1885182..170bd7f 100644 --- a/108.md +++ b/108.md @@ -2,19 +2,23 @@ #字符串(3) -关于字符串的内容,已经有两节进行介绍了。不过,它是一个话题中心,还要再继续。 +字符串是一个话题中心,还要再继续。 -例如这样一个字符串`python`,还记得前面对字符串的定义吗?它就是几个字符:p,y,t,h,o,n,排列起来。这种排列是非常严格的,不仅仅是字符本身,而且还有顺序,换言之,如果某个字符换了,就变成一个新字符串了;如果这些字符顺序发生变化了,也成为了一个新字符串。 +例如这样一个字符串`python`,还记得前面对字符串的定义吗?它就是字符:p,y,t,h,o,n,排列起来。这种排列是非常严格的,不仅仅是字符本身,而且还有顺序,换言之,如果某个字符换了,就变成一个新字符串了;如果这些字符顺序发生变化了,也成为了一个新字符串。 -在python中,把像字符串这样的对象类型(后面还会冒出来类似的其它有这种特点的对象类型,比如列表),统称为序列。顾名思义,序列就是“有序排列”。 +在Python中,把像字符串这样的对象类型(后面还会冒出来类似的其它有这种特点的对象类型,比如列表),统称为序列。 + +顾名思义,序列就是“有序排列”。 比如水泊梁山的108个好汉(里面分明也有女的,难道女汉子是从这里来的吗?),就是一个“有序排列”的序列。从老大宋江一直排到第108位金毛犬段景住。在这个序列中,每个人有编号,编号和每个人一一对应。1号是宋江,2号是卢俊义。反过来,通过每个人的姓名,也能找出他对应的编号。武松是多少号?14号。李逵呢?22号。 -在python中,给这些编号取了一个文雅的名字,叫做**索引**(别的编程语言也这么称呼,不是python独有的。)。 +在Python中,给这些编号取了一个文雅的名字,叫做**索引**(别的编程语言也这么称呼,不是Python独有的。)。 ##索引和切片 -前面用梁山好汉的为例说明了索引。再看python中的例子: +梁山好汉,从1排到108,就是索引。 + +再看Python的字符串: >>> lang = "study python" >>> lang[0] @@ -22,14 +26,14 @@ >>> lang[1] 't' -有一个字符串,通过赋值语句赋给了变量lang。如果要得到这个字符串的第一个单词`s`,可以用`lang[0]`。当然,如果你不愿意通过赋值语句,让变量lang来指向那个字符串,也可以这样做: +有一个字符串,要得到这个字符串的第一个单词`s`,可以用`lang[0]`。当然,如果你不愿意让变量lang来指向那个字符串,也可以这样做: >>> "study python"[0] 's' -效果是一样的。因为lang是标签,就指向了`"study python"`字符串。当让python执行`lang[0]`的时候,就是要转到那个字符串对象,如同上面的操作一样。只不过,如果不用lang这么一个变量,后面如果再写,就费笔墨了,要每次都把那个字符串写全了。为了省事,还是复制给一个变量吧。变量就是字符串的代表了。 +效果是一样的。因为lang是标签,就指向了`"study python"`字符串。当让执行`lang[0]`的时候,就是要转到那个字符串对象,如同上面的操作一样。只不过,如果不用lang这么一个变量,后面如果再写,就费笔墨了,要每次都把那个字符串写全了。为了省事,还是复制给一个变量吧。变量就是字符串的代表了。 -字符串这个序列的排序方法跟梁山好汉有点不同,第一个不是用数字1表示,而是用数字0表示。不仅仅python,其它很多语言都是从0开始排序的。为什么这样做呢?这就是规定。当然,这个规定是有一定优势的。此处不展开,有兴趣的网上去google一下,有专门对此进行解释的文章。 +字符串这个序列的排序方法跟梁山好汉有点不同,第一个不是用数字1表示,而是用数字0表示。不仅仅Python,其它很多语言都是从0开始排序的。为什么这样做呢?这就是规定。当然,这个规定是有一定优势的。此处不展开,有兴趣的网上去google一下,有专门对此进行解释的文章。 0 |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 ---|---|---|---|---|---|---|---|---|---|---|--- @@ -37,27 +41,31 @@ s |t |u |d |y | |p |y |t |h |o |n 上面的表格中,将这个字符串从第一个到最后一个进行了排序,特别注意,两个单词中间的那个空格,也占用了一个位置。 +空格也是一个字符。“无”不完全等于“没有”。 + 通过索引能够找到该索引所对应的字符,那么反过来,能不能通过字符,找到其在字符串中的索引值呢?怎么找? +用字符串的一个方法——index: + >>> lang.index("p") 6 -就这样,是不是已经能够和梁山好汉的例子对上号了?只不过区别在于第一个的索引值是0。 +就这样,是不是已经能够和梁山好汉的例子对上号了?但有区别,第一个的索引值是0。 -如果某一天,宋大哥站在大石头上,向着各位弟兄大喊:“兄弟们,都排好队。”等兄弟们排好之后,宋江说:“现在给各位没有老婆的兄弟分配女朋友,我这里已经有了名单,我念叨的兄弟站出来。不过我是按照序号来念的。第29号到第34号先出列,到旁边房子等候分配女朋友。” +如果某一天,宋大哥站在大石头上,向着各位弟兄大喊:“兄弟们,都排好队。”等兄弟们排好之后,宋江说:“现在给各位没有老婆的兄弟分配女朋友,我这里已经有了名单,我念到的兄弟站出来。不过我是按照序号来念的。第29号到第34号先出列,到旁边房子等候分配女朋友。” -在前面的例子中lang[1]能够得到原来字符串的第二个字符t,就相当于从原来字符串中把这个“切”出来了。不过,我们这么“切”却不影响原来字符串的完整性,当然可以理解为将那个字符t赋值一份拿出来了。 +继续应用前述字符串,`lang[1]`能够得到字符串的第二个字符`t`,就相当于从字符串中把这个“切”出来了。不过,我们这么“切”却不影响原来字符串的完整性,当然可以理解为将那个字符`t`复制一份拿出来了。 -那么宋江大哥没有一个一个“切”,而是一下将几个兄弟叫出来。在python中也能做类似事情。 +那么宋江大哥没有一个一个“切”,而是一下将几个兄弟叫出来。在Python中也能做类似事情。 >>> lang 'study python' #在前面“切”了若干的字符之后,再看一下该字符串,还是完整的。 >>> lang[2:9] 'udy pyt' -通过`lang[2:9]`要得到部分(不是一个)字符,从返回的结果中可以看出,我们得到的是序号分别对应着`2,3,4,5,6,7,8`(跟上面的表格对应一下)字符(包括那个空格)。也就是,这种获得部分字符的方法中,能够得到开始需要的以及最后一个序号之前的所对应的字符。有点拗口,自己对照上面的表格数一数就知道了。简单说就是包括开头,不包括结尾。 +通过`lang[2:9]`要得到多个(不是一个)字符,从返回的结果中可以看出,我们得到的是序号分别对应着`2,3,4,5,6,7,8`(跟上面的表格对应一下)字符(包括那个空格)。也就是,这种获得部分字符的方法中,能够得到开始需要的以及最后一个序号之前的所对应的字符。有点拗口,自己对照上面的表格数一数就知道了。简单说就是包括开头,不包括结尾——前包括,后不包括。 -上述,不管是得到一个还是多个,通过索引得到字符的过程,称之为**切片**。 +上述,不管是得到一个还是多个,通过索引范围得到字符的过程,称之为**切片**。 切片是一个很有意思的东西。可以“切”出不少花样呢? @@ -73,7 +81,10 @@ s |t |u |d |y | |p |y |t |h |o |n >>> d 'study pyth' -在获取切片的时候,如果分号的前面或者后面的序号不写,就表示是到最末(后面的不写)或第一个(前面的不写) +在获取切片的时候,如果冒号的: + +- 前面不写数字,就表示从字符串的第一个开始(包括第一个); +- 后面的序号不写,就表示到字符串的到最末一个字符结束(包括最后一个)。 `lang[:10]`的效果和`lang[0:10]`是一样的。 @@ -81,21 +92,27 @@ s |t |u |d |y | |p |y |t |h |o |n >>> e 'study pyth' -那么,`lang[1:]`和`lang[1:11]`效果一样吗?请思考后作答。 +那么,`lang[1:]`和`lang[1:11]`效果一样吗? + +请思考后作答。 >>> lang[1:11] 'tudy pytho' >>> lang[1:] 'tudy python' -果然不一样,你思考对了吗?原因就是前述所说的,如果分号后面有数字,所得到的切片,不包含该数字所对应的序号(前包括,后不包括)。那么,是不是可以这样呢?`lang[1:12]`,不包括12号(事实没有12号),是不是可以得到1到11号对应的字符呢? +不一样。 + +原因就是前述所说的,如果冒号后面有数字,所得到的切片,不包含该数字所对应的序号(前包括,后不包括)。那么,是不是可以这样呢?`lang[1:12]`,不包括12号(事实没有12号),是不是可以得到1到11号对应的字符呢? >>> lang[1:12] 'tudy python' >>> lang[1:13] 'tudy python' -果然是。并且不仅仅后面写12,写13,也能得到同样的结果。但是,我这个特别要提醒,这种获得切片的做法在编程实践中是不提倡的。特别是如果后面要用到循环的时候,这样做或许在什么时候遇到麻烦。 +果然是。并且不仅仅后面写12,写13,也能得到同样的结果。 + +但是,特别要提醒,这种获得切片的做法在编程实践中是不提倡的。特别是如果后面要用到循环的时候,这样做或许在什么时候遇到麻烦。 如果在切片的时候,冒号左右都不写数字,就是前面所操作的`c = lang[:]`,其结果是变量c的值与原字符串一样,也就是“复制”了一份。注意,这里的“复制”我打上了引号,意思是如同复制,是不是真的复制呢?可以用下面的方式检验一下 @@ -109,11 +126,13 @@ s |t |u |d |y | |p |y |t |h |o |n >>> lang = "study python" >>> c = lang -如果这样操作,变量c和lang是不是指向同一个对象呢?或者两者所指向的对象内存地址如何呢?看官可以自行查看。 +如果这样操作,变量c和lang是不是指向同一个对象呢?或者两者所指向的对象内存地址如何呢?用`id()`函数查看便知。 + +字符串有索引,能得到切片。不仅如此,还有更多操作。 ##字符串基本操作 -字符串是一种序列,所有序列都有如下基本操作: +字符串是一种序列,所有序列都有如下基本操作,这是序列共有的操作。 1. len():求序列长度 2. + :连接2个序列 @@ -123,9 +142,9 @@ s |t |u |d |y | |p |y |t |h |o |n 6. min() :返回最小值 7. cmp(str1,str2) :比较2个序列值是否相同 -通过下面的例子,将这几个基本操作在字符串上的使用演示一下: +逐个演示,方能理解: -###“+”连接字符串 +###`+` >>> str1 + str2 'abcdabcde' @@ -134,7 +153,7 @@ s |t |u |d |y | |p |y |t |h |o |n 这其实就是拼接,不过在这里,看官应该有一个更大的观念,我们现在只是学了字符串这一种序列,后面还会遇到列表、元组两种序列,都能够如此实现拼接。 -###in +###`in` >>> "a" in str1 True @@ -143,9 +162,9 @@ s |t |u |d |y | |p |y |t |h |o |n >>> "de" in str2 True -`in`用来判断某个字符串是不是在另外一个字符串内,或者说判断某个字符串内是否包含某个字符串,如果包含,就返回`True`,否则返回`False`。 +`in`用来判断某个字符串是不是在另外一个字符串内,或者说判断某个字符串内是否包含另外一个字符串(这个字符串被称为子字符串),如果包含,就返回`True`,否则返回`False`。 -###最值 +###最大值和最小值 >>> max(str1) 'd' @@ -154,14 +173,16 @@ s |t |u |d |y | |p |y |t |h |o |n >>> min(str1) 'a' -一个字符串中,每个字符在计算机内都是有编码的,也就是对应着一个数字,`min()`和`max()`就是根据这个数字里获得最小值和最大值,然后对应出相应的字符。关于这种编号是多少,看官可以google有关字符编码,或者ASCII编码什么的,很容易查到。 +在英文字典中,所有的字母都有一个排序,我们称之为“字典顺序”。 + +而每个字符,也都通过编码对应着一个数字,它们都会有一定的顺序。`min()`和`max()`就是根据这个顺序获得最小值和最大值,然后对应出相应的字符。读者可以google有关字符编码,或者ASCII编码什么的,很容易查到。 ###比较 >>> cmp(str1, str2) -1 -将两个字符串进行比较,也是首先将字符串中的符号转化为对应编码的数字,然后比较。如果返回的数值小于零,说明第一个小于第二个,等于0,则两个相等,大于0,第一个大于第二个。为了能够明白其所以然,进入下面的分析。 +将两个字符串进行比较,也是首先将字符串中的符号转化为对应编码的数字,然后比较。如果返回的数值小于零,说明第一个小于第二个;等于0,则两个相等;大于0,第一个大于第二个。为了能够明白其所以然,进入下面的分析。 >>> ord('a') 97 @@ -191,13 +212,31 @@ s |t |u |d |y | |p |y |t |h |o |n >>> cmp("ad","c") -1 -在字符串的比较中,是两个字符串的第一个字符先比较,如果相等,就比较下一个,如果不相等,就返回结果。直到最后,如果还相等,就返回0。位数不够时,按照没有处理(注意,没有不是0,0在ASCII中对应的是NUL),位数多的那个天然大了。ad中的a先和后面的c进行比较,显然a小于c,于是就返回结果-1。如果进行下面的比较,是最容易让人迷茫的。看官能不能根据刚才阐述的比较远离理解呢? +在字符串的比较中,是两个字符串的第一个字符先比较,如果相等,就比较下一个,如果不相等,就返回结果。直到最后,如果还相等,就返回0。位数不够时,按照没有处理(注意,没有不是0,0在ASCII中对应的是NUL),位数多的那个天然大了。`ad`中的`a`先和后面的`c`进行比较,显然`a`小于`c`,于是就返回结果`-1`。 + +如果进行下面的比较,是最容易让人迷茫的。能不能根据刚才阐述的比较理解呢? >>> cmp("123","23") -1 >>> cmp(123,23) #也可以比较整数,这时候就是整数的直接比较了。 1 +如果读者阅读到这里,不知道你是否将上面的各项进行了实际操作?如果操作了,在Python 3中能成功吗? + +上面的操作只能适用于Python 2,不适用Python 3。 + +Python 3中取消了`cmp()`函数。那么在Python 3中怎么比较呢? + + >>> str1 = "abc" + >>> str1 > str2 + False + >>> str1 < str2 + True + >>> str1 == str2 + False + +用比较运算符,也可以得到比较结果。 + ###“*” 字符串中的“乘法”,这个乘法,就是重复那个字符串的含义。在某些时候很好用的。比如我要打印一个华丽的分割线: @@ -213,20 +252,22 @@ s |t |u |d |y | |p |y |t |h |o |n >键客,不是剑客。剑客是以剑为武器的侠客;而键客是以键盘为武器的侠客。当然,还有贱客,那是贱人的最高境界,贱到大侠的程度,比如岳不群之流。 -键客这样来数字符串长度: +Python用`len()`函数来获得字符串长度,不管Python 2还是Python 3。 >>> a = "hello" >>> len(a) 5 -使用的是一个函数len(object)。得到的结果就是该字符串长度。 +函数`len(object)`,得到的结果就是该字符串长度。 - >>> m = len(a) #把结果返回后赋值给一个变量 + >>> m = len(a) #把结果返回后赋值给一个变量 >>> m 5 - >>> type(m) #这个返回值(变量)是一个整数型 + >>> type(m) #这个返回值(变量)是一个整数型,Python 3中返回的结果略有差别。 +对于字符串,作为序列的一种,除了具有上述几种通用的基本操作之外,还有很多别的方法。 + ------ [总目录](./index.md)   |   [上节:字符串(2)](./107.md)   |   [下节:字符串(4)](./109.md) From 224b60ecc98a1906492dc762289891b1f95cb8d9 Mon Sep 17 00:00:00 2001 From: ybbz Date: Sat, 19 Mar 2016 17:42:41 +0800 Subject: [PATCH 067/288] update --- 301.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/301.md b/301.md index 41ff144..c5afbb2 100644 --- a/301.md +++ b/301.md @@ -6,7 +6,7 @@ >推荐阅读:[History of the World Wide Web](http://en.wikipedia.org/wiki/History_of_the_World_Wide_Web) -首先,为自己准备一个服务器。这个要求似乎有点过分,作为一个普通的穷苦聊到的程序员,哪里有铜钿来购买服务器呢?没关系,不够买服务器也能做网站,可以购买云服务空间或者虚拟空间,这个在网上搜搜,很多。如果购买这个的铜钿也没有,还可以利用自己的电脑(这总该有了)作为服务服务器。我就是利用一台装有ubuntu操作系统的个人电脑作为本教程的案例演示服务器。 +首先,为自己准备一个服务器。这个要求似乎有点过分,作为一个普通的穷苦聊到的程序员,哪里有铜钿来购买服务器呢?没关系,不够买服务器也能做网站,可以购买云服务空间或者虚拟空间,这个在网上搜搜,很多。如果购买这个的铜钿也没有,还可以利用自己的电脑(这总该有了)作为服务器。我就是利用一台装有ubuntu操作系统的个人电脑作为本教程的案例演示服务器。 然后,要在这个服务器上做一些程序配置。一些必备的网络配置这里就不说了,比如我用的ubuntu系统,默认情况都有了。如果读者遇到一些问题,可以搜一下,网上资料多多。另外的配置就是python开发环境,这个应该也有了,前面已经在用了。 @@ -101,4 +101,4 @@ Tornado的官方网站:[http://www.tornadoweb.org](http://www.tornadoweb.org/e [总目录](./index.md)   |   [上节:实战-引](./300.md)   |   [下节:分析Hello](./302.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From c9b0e08660053dd8090fe5fd37072492221d984e Mon Sep 17 00:00:00 2001 From: Zeroxus Date: Sat, 19 Mar 2016 19:04:52 +0800 Subject: [PATCH 068/288] modified a wrong word --- 302.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/302.md b/302.md index c6ab0d1..4a3cc57 100644 --- a/302.md +++ b/302.md @@ -53,7 +53,7 @@ ##WEB服务器工作流程 -任何一个网站都离不开Web服务器,这里所说的不是指那个更计算机一样的硬件设备,是指里面安装的软件,有时候初次接触的看官容易搞混。就来伟大的[维基百科都这么说](http://zh.wikipedia.org/wiki/%E6%9C%8D%E5%8A%A1%E5%99%A8): +任何一个网站都离不开Web服务器,这里所说的不是指那个更计算机一样的硬件设备,是指里面安装的软件,有时候初次接触的看官容易搞混。就连伟大的[维基百科都这么说](http://zh.wikipedia.org/wiki/%E6%9C%8D%E5%8A%A1%E5%99%A8): >有时,这两种定义会引起混淆,如Web服务器。它可能是指用于网站的计算机,也可能是指像Apache这样的软件,运行在这样的计算机上以管理网页组件和回应网页浏览器的请求。 @@ -202,4 +202,4 @@ HTTPServer是tornado.httpserver里面定义的类。HTTPServer是一个单线程 [总目录](./index.md)   |   [上节:为做网站而准备](./301.md)   |   [下节:用tornado做网站(1)](./303.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From f0c1758dc3e8e1ef60282e8b5340109b77a165ce Mon Sep 17 00:00:00 2001 From: python Date: Sat, 19 Mar 2016 22:20:16 +0800 Subject: [PATCH 069/288] Update 210.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更改一下错别字 --- 210.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/210.md b/210.md index 5d16917..68af879 100644 --- a/210.md +++ b/210.md @@ -120,7 +120,7 @@ 这是关于静态方法和类方法的简要介绍。 -正当我思考如何讲解的更深入一点的时候,我想起了以往看过的一篇文章,觉得人家讲的非常到位。所以,不敢吝啬,更不敢班门弄斧,所以干醋把那篇文章恭恭敬敬的抄录于此。同时,读者从下面的文章中,也能对前面的知识复习一下。文章标题是:python中的staticmethod和classmethod的差异。原载:www.pythoncentral.io/difference-between-staticmethod-and-classmethod-in-python/。此地址需要你准备梯子才能浏览。后经国人翻译,地址是:http://www.wklken.me/posts/2013/12/22/difference-between-staticmethod-and-classmethod-in-python.html +正当我思考如何讲解的更深入一点的时候,我想起了以往看过的一篇文章,觉得人家讲的非常到位。所以,不敢吝啬,更不敢班门弄斧,所以干脆把那篇文章恭恭敬敬的抄录于此。同时,读者从下面的文章中,也能对前面的知识复习一下。文章标题是:python中的staticmethod和classmethod的差异。原载:www.pythoncentral.io/difference-between-staticmethod-and-classmethod-in-python/。此地址需要你准备梯子才能浏览。后经国人翻译,地址是:http://www.wklken.me/posts/2013/12/22/difference-between-staticmethod-and-classmethod-in-python.html 以下是翻译文章: From ff7d60ef493e4670a9adfd9cb47bd5a93f50a425 Mon Sep 17 00:00:00 2001 From: python Date: Sat, 19 Mar 2016 22:35:25 +0800 Subject: [PATCH 070/288] Update 211.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更改字句使其更加通顺 --- 211.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/211.md b/211.md index c36860a..94118a4 100644 --- a/211.md +++ b/211.md @@ -28,7 +28,7 @@ >>> f(["python","java"],["c++","lisp"]) ['python', 'java', 'c++', 'lisp'] -在那个lambda函数中,我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能到的不报错的结果。当然,这样做之所以合法,更多的是来自于`+`的功能强悍。 +在那个lambda函数中,我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能得到的不报错的结果。当然,这样做之所以合法,更多的是来自于`+`的功能强悍。 以上,就体现了“多态”。当然,也有人就此提出了反对意见,因为本质上是在参数传入值之前,python并没有确定参数的类型,只能让数据进入函数之后再处理,能处理则罢,不能处理就报错。例如: @@ -229,4 +229,4 @@ python中私有化的方法也比较简单,就是在准备私有化的属性 [总目录](./index.md)   |   [上节:类(5)](./210.md)   |   [下节:更多属性(1)](./212.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 9fa64f2322401b1d789518f2e964d5ef713fc35a Mon Sep 17 00:00:00 2001 From: python Date: Sat, 19 Mar 2016 22:36:41 +0800 Subject: [PATCH 071/288] Update 211.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更改字句,更加通顺。 --- 211.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/211.md b/211.md index 94118a4..f682ccb 100644 --- a/211.md +++ b/211.md @@ -28,7 +28,7 @@ >>> f(["python","java"],["c++","lisp"]) ['python', 'java', 'c++', 'lisp'] -在那个lambda函数中,我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能得到的不报错的结果。当然,这样做之所以合法,更多的是来自于`+`的功能强悍。 +在那个lambda函数中,我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能得到不报错的结果。当然,这样做之所以合法,更多的是来自于`+`的功能强悍。 以上,就体现了“多态”。当然,也有人就此提出了反对意见,因为本质上是在参数传入值之前,python并没有确定参数的类型,只能让数据进入函数之后再处理,能处理则罢,不能处理就报错。例如: From 83bb2b1cf01dd6db6b8d2343ace610cafcac1d78 Mon Sep 17 00:00:00 2001 From: python Date: Sun, 20 Mar 2016 15:44:20 +0800 Subject: [PATCH 072/288] Update 215.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更改一些笔误 --- 215.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/215.md b/215.md index 042c80a..e706717 100644 --- a/215.md +++ b/215.md @@ -111,7 +111,7 @@ yield这个词在汉语中有“生产、出产”之意,在python中,它作 从这个简单例子中可以看出,那个含有yield关键词的函数返回值是一个生成器类型的对象,这个生成器对象就是迭代器。 -我们把含有yield语句的函数称作生成器。生成器是一种用普通函数语法定义的迭代器。通过上面的例子可以看出,这个生成器(也是迭代器),在定义过程中并没有像上节迭代器那样写`__inter__()`和`next()`,而是只要用了yield语句,那个普通函数就神奇般地成为了生成器,也就具备了迭代器的功能特性。 +我们把含有yield语句的函数称作生成器。生成器是一种用普通函数语法定义的迭代器。通过上面的例子可以看出,这个生成器(也是迭代器),在定义过程中并没有像上节迭代器那样写`__iter__()`和`next()`,而是只要用了yield语句,那个普通函数就神奇般地成为了生成器,也就具备了迭代器的功能特性。 yield语句的作用,就是在调用的时候返回相应的值。详细剖析一下上面的运行过程: From ccfef91c3c2f8e641d2eaea657df75d2ac42cf7f Mon Sep 17 00:00:00 2001 From: python Date: Sun, 20 Mar 2016 20:54:12 +0800 Subject: [PATCH 073/288] Update 235.md --- 235.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/235.md b/235.md index 5b7e235..855157e 100644 --- a/235.md +++ b/235.md @@ -20,7 +20,7 @@ 英文是Context Management Protocol,既然是协议,就应该是包含某些方法的东西,大家都按照这个去做(协商好了的东西)。Python中的上下文管理协议中必须包含`__enter__()`和`__exit__()`两个方法。 -看这个两个方法的名字,估计读者也能领悟一二了(名字不是随便取的,这个某个岛国取名字的方法不同,当然,现在人家也不是随便取了)。 +看这个两个方法的名字,估计读者也能领悟一二了(名字不是随便取的,这个和某个岛国取名字的方法不同,当然,现在人家也不是随便取了)。 **上下文管理器** From d321fe6f3edbf5e8ca90f081cfc2059e0ee5d236 Mon Sep 17 00:00:00 2001 From: python Date: Sun, 20 Mar 2016 21:13:07 +0800 Subject: [PATCH 074/288] Update 218.md --- 218.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/218.md b/218.md index a9ae46b..d08ab9b 100644 --- a/218.md +++ b/218.md @@ -67,7 +67,7 @@ assert的应用情景就有点像汉语的意思一样,当程序运行到某 不论是否理解,可以先看看,请牢记,在具体开发过程中,有时间就回来看看本教程,不断加深对这些概念的理解,这也是master的成就之法。 -最后,引用危机百科中对“异常处理”词条的说明,作为对“错误和异常”部分的总结(有所删改): +最后,引用维基百科中对“异常处理”词条的说明,作为对“错误和异常”部分的总结(有所删改): >异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件)。 @@ -87,4 +87,4 @@ assert的应用情景就有点像汉语的意思一样,当程序运行到某 [总目录](./index.md)   |   [上节:错误和异常(2)](./217.md)   |   [下节:编写模块](./219.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 765e79ae46aab13a6f0db7c646789e8fb0efa656 Mon Sep 17 00:00:00 2001 From: python Date: Sun, 20 Mar 2016 21:39:41 +0800 Subject: [PATCH 075/288] Update 230.md --- 230.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/230.md b/230.md index de1810c..dcea2e7 100644 --- a/230.md +++ b/230.md @@ -181,7 +181,7 @@ ubuntu下可以这么做: - port:一般情况,mysql的默认端口是3306,当mysql被安装到服务器之后,为了能够允许网络访问,服务器(计算机)要提供一个访问端口给它。 - charset:这个设置,在很多教程中都不写,结果在真正进行数据存储的时候,发现有乱码。这里我将qiwsirtest这个数据库的编码设置为utf-8格式,这样就允许存入汉字而无乱码了。注意,在mysql设置中,utf-8写成utf8,没有中间的横线。但是在python文件开头和其它地方设置编码格式的时候,要写成utf-8。切记! -注:connect中的host、user、passwd等可以不写,只有在写的时候按照host、user、passwd、db(可以不写)、port顺序写就可以,端口号port=3306还是不要省略的为好,如果没有db在port前面,直接写3306会报错. +注:connect中的host、user、passwd等可以不写,只要在写的时候按照host、user、passwd、db(可以不写)、port顺序写就可以,端口号port=3306还是不要省略的为好,如果没有db在port前面,直接写3306会报错. 其实,关于connect的参数还不少,下面摘抄来自[mysqldb官方文档的内容](http://mysql-python.sourceforge.net/MySQLdb.html),把所有的参数都列出来,还有相关说明,请看官认真阅读。不过,上面几个是常用的,其它的看情况使用。 From 16d13d7aa5688637edfe3731c4f99c196d5b713e Mon Sep 17 00:00:00 2001 From: python Date: Mon, 21 Mar 2016 13:31:15 +0800 Subject: [PATCH 076/288] Update 202.md --- 202.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/202.md b/202.md index a52bbe4..330cad0 100644 --- a/202.md +++ b/202.md @@ -82,7 +82,7 @@ “程序在大多数情况下是给人看的,只是偶尔被机器执行。”所以,写程序必须要写注释。前面已经有过说明,如果用`#`开始,python就不执行那句(python看不到它,但是人能看到),它就作为注释存在。 -除了这样的一句之外,一般在每个函数名字的下面,还要比较多的说明,这个被称为“文档”,在文档中主要是说明这个函数的用途。 +除了这样的一句之外,一般在每个函数名字的下面,还有比较多的说明,这个被称为“文档”,在文档中主要是说明这个函数的用途。 #!/usr/bin/env python # coding=utf-8 From df6ac7216912d0bc554c5a6deb138673762395d2 Mon Sep 17 00:00:00 2001 From: python Date: Mon, 21 Mar 2016 13:47:26 +0800 Subject: [PATCH 077/288] Update 202.md --- 202.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/202.md b/202.md index 330cad0..3a816a9 100644 --- a/202.md +++ b/202.md @@ -239,7 +239,7 @@ -------------------------- this x is out of funcx:--> 9 -好似全局变量能力很强悍,能够统帅函数内外。但是,要注意,这个东西要慎重使用,因为往往容易带来变量的换乱。内外有别,在程序中一定要注意的。 +好似全局变量能力很强悍,能够统统率函数内外。但是,要注意,这个东西要慎重使用,因为往往容易带来变量的混乱。内外有别,在程序中一定要注意的。 ##命名空间 From c9c9e2f9c2d4a6fce31a27bc29b16a1a646f9906 Mon Sep 17 00:00:00 2001 From: python Date: Mon, 21 Mar 2016 14:52:14 +0800 Subject: [PATCH 078/288] Update 306.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 这里应该是 > 如果你要全不转义,可以使用: 吧 --- 306.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/306.md b/306.md index c97afda..a456d29 100644 --- a/306.md +++ b/306.md @@ -237,7 +237,7 @@ Tornado为你着想了,因为存在以上转义问题,而且会有粗心的 ![](./3images/30604.png) -如果你要全转义,可以使用: +如果你要全不转义,可以使用: {% autoescape None %} {{ website }} @@ -259,4 +259,4 @@ Tornado为你着想了,因为存在以上转义问题,而且会有粗心的 [总目录](./index.md)   |   [上节:用tornado做网站(3)](./305.md)   |   [下节:用tornado做网站(5)](./307.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From e7eb50b82562618392ebd127c86a2511ee3b109e Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 21 Mar 2016 16:52:45 +0800 Subject: [PATCH 079/288] p3 --- 109.md | 216 +++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 134 insertions(+), 82 deletions(-) diff --git a/109.md b/109.md index 1267196..f53660f 100644 --- a/109.md +++ b/109.md @@ -2,7 +2,7 @@ #字符串(4) -字符串的内容的确不少,甚至都有点啰嗦了。但是,本节依然还要继续,就是因为在编程实践中,经常会遇到有关字符串的问题,而且也是很多初学者容易迷茫的。 +虽然已经对字符串有了了解,但,因为人对字符串的要求比较多,特别是在输出格式上,要满足一定的样式要求。 ##字符串格式化输出 @@ -10,13 +10,15 @@ >格式化是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除。 -不知道你是否知道这种“格式化”。显然,此格式化非我们这里所说的,我们说的是字符串的格式化,或者说成“格式化字符串”,都可以,表示的意思就是: +不知道你是否知道这种“格式化”。显然,此格式化非我们这里所说的,我们说的是字符串的格式化,或者说成“格式化字符串”,表示的意思是: >格式化字符串,是C、C++等程序设计语言printf类函数中用于指定输出参数的格式与相对位置的字符串参数。其中的转换说明(conversion specification)用于把随后对应的0个或多个函数参数转换为相应的格式输出;格式化字符串中转换说明以外的其它字符原样输出。 -这也是来自维基百科的定义。在这个定义中,是用C语言作为例子,并且用了其输出函数来说明。在python中,也有同样的操作和类似的函数`print`,此前我们已经了解一二了。 +这也是来自维基百科的定义。在这个定义中,是用C语言作为例子,并且用了其输出函数来说明。在Python中,也有同样的操作——`print`语句(Python 2)、`print()`函数(Python 3),此前我们已经了解一二了。此处将详述之。 -如果将那个定义说的通俗一些,字符串格式化化,就是要先制定一个模板,在这个模板中某个或者某几个地方留出空位来,然后在那些空位填上字符串。那么,那些空位,需要用一个符号来表示,这个符号通常被叫做占位符(仅仅是占据着那个位置,并不是输出的内容)。 +如果将维基百科的定义再通俗化,所谓字符串格式化化,就是要先制定一个模板,在这个模板中某个或者某几个地方留出空位来,然后在那些空位填上字符串,并且在显示结果中,字符串要符合空位置所设定的约束条件。 + +那么,那些空位,需要用一个符号来表示,这个符号通常被叫做占位符(仅仅是占据着那个位置,并不是输出的内容)。 >>> "I like %s" 'I like %s' @@ -28,87 +30,129 @@ >>> "I like %s" % "Pascal" 'I like Pascal' -这是较为常用的一种字符串输出方式。 - -另外,不同的占位符,会表示那个位置应该被不同类型的对象填充。下面列出许多,供参考。不过,不用记忆,常用的只有`%s`和`%d`,或者再加上`%f`,其它的如果需要了,到这里来查即可。 - -占位符|说明 -------|--- -%s |字符串(采用str()的显示) -%r |字符串(采用repr()的显示) -%c |单个字符 -%b |二进制整数 -%d |十进制整数 -%i |十进制整数 -%o |八进制整数 -%x |十六进制整数 -%e |指数 (基底写为e) -%E |指数 (基底写为E) -%f |浮点数 -%F |浮点数,与上相同 -%g |指数(e)或浮点数 (根据显示长度) -%G |指数(E)或浮点数 (根据显示长度) +这是曾经较为常用的一种字符串输出方式。注意“曾经”,言下之意,现在不怎么太提倡了。 -看例子: +的确如此,现在提倡使用`.format()`,这是自Python 2.6开始引入的。所以,从现在开始,本教程详细介绍`string.format()`的使用方法,而对用`%`进行格式化输出的方式,仅仅局限在上面的样式。读者在阅读其它代码的时候,也能遇到使用`%`的,那时候你心中默默说一句“落伍了”,然后翻译成`string.format()`即可。 - >>> a = "%d years" % 15 - >>> print a - 15 years +`.format()`是字符串的一个方法。你在交互模式中,输入`dir(str)`,会看到如下的内容: -当然,还可以在一个字符串中设置多个占位符,就像下面一样 +    >>> dir(str) +    ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] - >>> print "Suzhou is more than %d years. %s lives in here." % (2500, "qiwsir") - Suzhou is more than 2500 years. qiwsir lives in here. - -对于浮点数字的打印输出,还可以限定输出的小数位数和其它样式。 +这里所列出来的,就是字符串`str`的所有属性和方法。 - >>> print "Today's temperature is %.2f" % 12.235 - Today's temperature is 12.23 - >>> print "Today's temperature is %+.2f" % 12.235 - Today's temperature is +12.23 +在这里先下一点毛毛雨。在Python中一切皆对象,所谓对象,就是一个具体东西。桌椅板凳,花花草草,动物植物,包括人,还有程序要找的那个“对象”,都是对象(不用追求严格定义,暂且模模糊糊知道大概即可,大概都不知道,也无妨),凡是对象都有属性和方法(至于属性和方法的定义,待后面说明)。刚才用`dir(str)`所返回的结果,就是字符串的属性和方法。 -注意,上面的例子中,没有实现四舍五入的操作,貌似只是截取。其实,我在这里用的那个12.235的确有点特殊化了。你不妨修改为别的数,试一试,看看是不是四舍五入了。至于这个数的特殊性,如果你不能理解,就请回头找一找本教程中关于十进制与二进制数转换的讲述。 +在返回结果中,别的先不看,只看`format`。有你的慧眼找一找,有没有发现? -关于类似的操作,还有很多变化,比如输出格式要宽度是多少等等。如果看官在编程中遇到了,可以到网上查找。我这里给一个参考图示,也是从网上抄来的。 +继续不要离开交互模式,输入: -![](./1images/10901.png) + >>> help(str.format) -其实,上面这种格式化方法,常常被认为是太“古老”了。因为在python中还有新的格式化方法。 +这是要看字符串的`format()`方法的文档。只有通过阅读文档,我们才能了解它使做什么的。 - >>> s1 = "I like {0}".format("python") - >>> s1 - 'I like python' - >>> s2 = "Suzhou is more than {0} years. {1} lives in here.".format(2500, "qiwsir") - >>> s2 - 'Suzhou is more than 2500 years. qiwsir lives in here.' +返回结果是: -这就是python非常提倡的`string.format()`的格式化方法,其中`{索引值}`作为占位符, + Help on method_descriptor: -这种方法真的是非常好,而且非常简单,只需要将对应的东西,按照顺序在format后面的括号中排列好,分别对应占位符`{}`即可。我喜欢的方法。 + format(...) + S.format(*args, **kwargs) -> str + + Return a formatted version of S, using substitutions from args and kwargs. + The substitutions are identified by braces ('{' and '}'). -如果你觉得还不明确,还可以这样来做。 +`S.format(*args, **kwargs)`,重点看括号里面的,`*args`表示传入一种类型的参数,`**arg`表示传入另外一种类型的参数。 - >>> print "Suzhou is more than {year} years. {name} lives in here.".format(year=2500, name="qiwsir") - Suzhou is more than 2500 years. qiwsir lives in here. - -真的很简洁,堪称优雅。 +又遇到新名词——参数——还是不用搭理它,只管继续——因为“发展是硬道理”! -其实,还有一种格式化的方法,被称为“字典格式化”,这里仅仅列一个例子,如果看官要了解字典的含义,本教程后续会有的。 +你暂且阅读文档,不理解也没关系。下面用示例来说明使用方法。 - >>> lang = "python" - >>> print "I love %(program)s"%{"program":lang} - I love python +    >>> "I like {0} and {1}".format("python", "canglaoshi") +    'I like python and canglaoshi' -列举了三种基本格式化的方法,你喜欢那种?我推荐:`string.format()` +在交互模式中,输入了字符串`"I like {0} and {1}"`,并且其中用`{0}`和`{1}`占据了两个位置,它们就是占位符。然后使一个非常重要的点`.`。 -##常用的字符串方法 +这个点`.`非常重要,它是从对象引出它的属性或方法的工具,就如同汉语中的“的”一样。 + +比如“老齐的爱好”,“老齐”是那个对象,“爱好”就是一个方法,两者中间的那个“的”就相当于一个英文的点`.`,于是可以写成`老齐.爱好`,就可以表明上述的含义了。 + +`format("python", "canglaoshi")`是字符串格式化输出的方法,传入了两个字符串,它们分别对应这`"I like {0} and {1}"`里的那两个占位符,而且使按照顺序对应的,即第一个参数传入的`"pytohn"`,对应着`{0}`,第二参数传入的`"canglaoshi"`对应着`{1}`。 + +你还可以这样试试,就理解更深刻了。 + +    >>> "I like {1} and {0}".format("python", "canglaoshi") +    'I like canglaoshi and python' + +请仔细观察找区别。 + +`format()`方法的返回值是一个字符串——`'I like python and canglaoshi'`。 + +再对照`help(str.format)`得到的文档,看一看,是不是理解文档的含义了呢? + +一定要会阅读文档,这是学习语言的根本。 + +既然是“格式化”,就要指定一些格式,让输出的结果符合指定的样式。 + +    >>> "I like {0:10} and {1:>15}".format("python", "canglaoshi") +    'I like python and canglaoshi' + +现在有格式了。`{0:10}`表示第一个位置,有10个字符那么长,并且放在这个位置的字符是左对齐;`{1:>15}`表示第二个位置,有15个字符那么长,并且放在这个位置的字符是右对齐。 + +    >>> "I like {0:^10} and {1:^15}".format("python", "canglaoshi") +    'I like python and canglaoshi ' + +现在是居中对齐了。 + +    >>> "I like {0:.2} and {1:^10.4}".format("python", "canglaoshi") +    'I like py and cang ' -字符串的方法很多。可以通过dir来查看: +这个有点复杂,我们一点一点的解释。 - >>> dir(str) - ['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] +`{0:.2}`:`0`说明是第一个位置,对应传入的第一个字符串。`.2`表示对于传入的字符串,截取前两个,并放到第一个位置,注意的是,在`:`后面和`.`号前面,没有任何数字,意思是该位置的长度自动适应即将放到该位置的字符串。 -这么多,不会一一介绍,要了解某个具体的含义和使用方法,最好是使用help查看。举例: +`{1:^10.4}`:`1`说明是第二个位置,对应传入的第二个字符串。`^`表示放到该位置的字符串要居中;`10.4`表示该位置的长度是10个字符串那么长,但,即将放入该位置的字符串应该仅仅有4个字符那么长,也就是要从传入的字符串`"canglaoshi"`中截取前四个字符,即为`"cang"`。 + +再看结果,对照上述解释。 + +向`format()`中,除了能够传入字符串,还可以传入数字(包括整数和浮点数),而且也能有各种花样。 + +    >>> "She is {0:d} years old and the breast is {1:f}cm".format(28, 90.1415926) +    'She is 28 years old and the breast is 90.141593cm' + +`{0:d}`表示在第一个位置放一个整数;`{1:f}`表示在第二个位置放一个浮点数,那么浮点数的小数位数,是默认的。下面在这个基础上,可以再做一些显示格式的优化。 + +    >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) +    'She is 28 years old and the breast is 90.14cm' +     +`{0:d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 + +`{1:6.2f}`表示第二个位置的长度使6个字符,并且填充到该位置的浮点数要保留两位小数,默认也是右对齐。 + +    >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) +    'She is 0028 years old and the breast is 090.14cm' +     +`{0:04d}`和`{1:06.2f}`与前述例子不同的在于在声明位置长度的数字前面多了`0`,其含义是在数字前面,如果位数不足,则补`0`。 + +以上的输出方式中,我们只讨论了`format(*args, **kwargs)`中的`*args`部分。还有另外一种方式,则是与`**kwargs`有关的(关于这两种参数的含义,本教程后面有专门介绍)。 + +    >>> "I like {lang} and {name}".format(lang="python", name="canglaoshi") +    'I like python and canglaoshi' + +一种被称为“字典格式化”,这里仅仅列一个例子。关于“字典”,本教程后续会有的。 + +    >>> data = {"name":"Canglaoshi", "age":28} +    >>> "{name} is {age}".format(**data) +    'Canglaoshi is 28' + +用`format()`做字符串格式化输出,真的很简洁,堪称优雅。 + +但`format()`毕竟只是字符串的方法之一,还有更多方法等待研究。 + +##常用的字符串方法 + +字符串的方法很多,前面已经通过`dir(str)`查看过了。 + +那么多方法,不会一一介绍,要了解某个具体的含义和使用方法,最好是使用`help()`函数查看。再举例: >>> help(str.isalpha) @@ -127,9 +171,9 @@ >>> "2python".isalpha() #字符串含非字母,返回False False -###split +###根据分隔符分割字符串 -这个函数的作用是将字符串根据某个分割符进行分割。 +`split()`的作用是将字符串根据某个分割符进行分割。 >>> a = "I LOVE PYTHON" >>> a.split(" ") @@ -143,19 +187,21 @@ ###去掉字符串两头的空格 -这个功能,在让用户输入一些信息的时候非常有用。有的朋友喜欢输入结束的时候敲击空格,比如让他输入自己的名字,输完了,他来个空格。有的则喜欢先加一个空格,总做的输入的第一个字前面应该空两个格。 +有的朋友喜欢输入结束的时候敲击空格,比如让他输入自己的名字,输完了,他来个空格。有的则喜欢先加一个空格,总做的输入的第一个字前面应该空两个格。 + +这些空格是没用的。 -这些空格是没用的。python考虑到有不少人可能有这个习惯,因此就帮助程序员把这些空格去掉。 +Python考虑到有不少人可能有这个习惯,因此就帮助程序员把这些空格去掉。 方法是: -- S.strip() 去掉字符串的左右空格 -- S.lstrip() 去掉字符串的左边空格 -- S.rstrip() 去掉字符串的右边空格 +- `S.strip()`:去掉字符串的左右空格 +- `S.lstrip()`:去掉字符串的左边空格 +- `S.rstrip()`:去掉字符串的右边空格 例如: - >>> b=" hello " #两边有空格 + >>> b = " hello " #两边有空格 >>> b.strip() 'hello' >>> b @@ -172,14 +218,14 @@ 对于英文,有时候要用到大小写转换。最有名驼峰命名,里面就有一些大写和小写的参合。如果有兴趣,可以来这里看[自动将字符串转化为驼峰命名形式的方法](https://github.com/qiwsir/algorithm/blob/master/string_to_hump.md)。 -在python中有下面一堆内建函数,用来实现各种类型的大小写转化 +在Python中有下面一些字符串的方法,用来实现各种类型的大小写转化 -- S.upper() #S中的字母大写 -- S.lower() #S中的字母小写 -- S.capitalize() #首字母大写 -- S.isupper() #S中的字母是否全是大写 -- S.islower() #S中的字母是否全是小写 -- S.istitle() #S中字符串中所有的单词拼写首字母是否为大写,且其他字母为小写 +- `S.upper()`:S中的字母大写 +- `S.lower()`:S中的字母小写 +- `S.capitalize()`:首字母大写 +- `S.isupper()`:S中的字母是否全是大写 +- `S.islower()`:S中的字母是否全是小写 +- `S.istitle()`:S中字符串中所有的单词拼写首字母是否为大写,且其他字母为小写(标题都这么写) 看例子: @@ -245,11 +291,13 @@ >>> b.istitle() #判断每个单词的第一个字母是否为大写 True -###join拼接字符串 +###用`.join()`拼接字符串 + +用`+`能够拼接字符串,除了这个还有别的。 -用“+”能够拼接字符串,但不是什么情况下都能够如愿的。比如,将列表(关于列表,后续详细说,它是另外一种类型)中的每个字符(串)元素拼接成一个字符串,并且用某个符号连接,如果用“+”,就比较麻烦了(是能够实现的,麻烦)。 +当然,`+`也不是什么情况下都能够如愿的。比如,将列表(关于列表,后续详细说,它是另外一种类型)中的每个字符(串)元素拼接成一个字符串,并且用某个符号连接,如果用“+”,就比较麻烦了(是能够实现的,麻烦)。 -用字符串的join就比较容易实现。 +用字符串的`.join()`方法拼接字符串,也是一个好选择。 >>> b 'www.itdiffer.com' @@ -263,6 +311,10 @@ 这种拼接,是不是简单呢? +虽然不能把所有方法穷尽,但读者完全可以仿照上述流程研究其它方法。 + +字符串的问题还要继续,因为中文和英文还有很大区别。 + ------ [总目录](./index.md)   |   [上节:字符串(3)](./108.md)   |   [下节:字符编码](./110.md) From e21fb5e4af9a788b5e6072edb6ab7e598f029473 Mon Sep 17 00:00:00 2001 From: python Date: Mon, 21 Mar 2016 17:28:02 +0800 Subject: [PATCH 080/288] Update 308.md --- 308.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/308.md b/308.md index 68a8c3f..de7b18d 100644 --- a/308.md +++ b/308.md @@ -34,9 +34,9 @@ class IndexHandler(BaseHandler): #继承base.py中的类BaseHandler def get(self): - usernames = mrd.select_columns(table="users",column="username") - one_user = usernames[0][0] - self.render("index.html", user=one_user) + usernames = mrd.select_columns(table="users",column="username") + one_user = usernames[0][0] + self.render("index.html", user=one_user) def post(self): username = self.get_argument("username") @@ -131,4 +131,4 @@ application.py中的setting也要做相应修改: [总目录](./index.md)   |   [上节:用tornado做网站(5)](./307.md)   |   [下节:用tornado做网站(7)](./309.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From d4efb36bf16a05138760529fde7d42a02c50b88e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 21 Mar 2016 20:17:50 +0800 Subject: [PATCH 081/288] p3 --- 109.md | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/109.md b/109.md index f53660f..0e16be3 100644 --- a/109.md +++ b/109.md @@ -36,8 +36,8 @@ `.format()`是字符串的一个方法。你在交互模式中,输入`dir(str)`,会看到如下的内容: -    >>> dir(str) -    ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] + >>> dir(str) + ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] 这里所列出来的,就是字符串`str`的所有属性和方法。 @@ -67,8 +67,8 @@ 你暂且阅读文档,不理解也没关系。下面用示例来说明使用方法。 -    >>> "I like {0} and {1}".format("python", "canglaoshi") -    'I like python and canglaoshi' + >>> "I like {0} and {1}".format("python", "canglaoshi") + 'I like python and canglaoshi' 在交互模式中,输入了字符串`"I like {0} and {1}"`,并且其中用`{0}`和`{1}`占据了两个位置,它们就是占位符。然后使一个非常重要的点`.`。 @@ -80,8 +80,8 @@ 你还可以这样试试,就理解更深刻了。 -    >>> "I like {1} and {0}".format("python", "canglaoshi") -    'I like canglaoshi and python' + >>> "I like {1} and {0}".format("python", "canglaoshi") + 'I like canglaoshi and python' 请仔细观察找区别。 @@ -93,18 +93,18 @@ 既然是“格式化”,就要指定一些格式,让输出的结果符合指定的样式。 -    >>> "I like {0:10} and {1:>15}".format("python", "canglaoshi") -    'I like python and canglaoshi' + >>> "I like {0:10} and {1:>15}".format("python", "canglaoshi") + 'I like python and canglaoshi' 现在有格式了。`{0:10}`表示第一个位置,有10个字符那么长,并且放在这个位置的字符是左对齐;`{1:>15}`表示第二个位置,有15个字符那么长,并且放在这个位置的字符是右对齐。 -    >>> "I like {0:^10} and {1:^15}".format("python", "canglaoshi") -    'I like python and canglaoshi ' + >>> "I like {0:^10} and {1:^15}".format("python", "canglaoshi") + 'I like python and canglaoshi ' 现在是居中对齐了。 -    >>> "I like {0:.2} and {1:^10.4}".format("python", "canglaoshi") -    'I like py and cang ' + >>> "I like {0:.2} and {1:^10.4}".format("python", "canglaoshi") + 'I like py and cang ' 这个有点复杂,我们一点一点的解释。 @@ -116,33 +116,33 @@ 向`format()`中,除了能够传入字符串,还可以传入数字(包括整数和浮点数),而且也能有各种花样。 -    >>> "She is {0:d} years old and the breast is {1:f}cm".format(28, 90.1415926) -    'She is 28 years old and the breast is 90.141593cm' + >>> "She is {0:d} years old and the breast is {1:f}cm".format(28, 90.1415926) + 'She is 28 years old and the breast is 90.141593cm' `{0:d}`表示在第一个位置放一个整数;`{1:f}`表示在第二个位置放一个浮点数,那么浮点数的小数位数,是默认的。下面在这个基础上,可以再做一些显示格式的优化。 -    >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) -    'She is 28 years old and the breast is 90.14cm' + >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) + 'She is 28 years old and the breast is 90.14cm'      `{0:d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 `{1:6.2f}`表示第二个位置的长度使6个字符,并且填充到该位置的浮点数要保留两位小数,默认也是右对齐。 -    >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) -    'She is 0028 years old and the breast is 090.14cm' + >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) + 'She is 0028 years old and the breast is 090.14cm'      `{0:04d}`和`{1:06.2f}`与前述例子不同的在于在声明位置长度的数字前面多了`0`,其含义是在数字前面,如果位数不足,则补`0`。 以上的输出方式中,我们只讨论了`format(*args, **kwargs)`中的`*args`部分。还有另外一种方式,则是与`**kwargs`有关的(关于这两种参数的含义,本教程后面有专门介绍)。 -    >>> "I like {lang} and {name}".format(lang="python", name="canglaoshi") -    'I like python and canglaoshi' + >>> "I like {lang} and {name}".format(lang="python", name="canglaoshi") + 'I like python and canglaoshi' 一种被称为“字典格式化”,这里仅仅列一个例子。关于“字典”,本教程后续会有的。 -    >>> data = {"name":"Canglaoshi", "age":28} -    >>> "{name} is {age}".format(**data) -    'Canglaoshi is 28' + >>> data = {"name":"Canglaoshi", "age":28} + >>> "{name} is {age}".format(**data) + 'Canglaoshi is 28' 用`format()`做字符串格式化输出,真的很简洁,堪称优雅。 From 7b790f32ab5b1d50e54db8276494ab982dd2f42f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 21 Mar 2016 20:20:09 +0800 Subject: [PATCH 082/288] p3 --- 109.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/109.md b/109.md index 0e16be3..f17d268 100644 --- a/109.md +++ b/109.md @@ -37,7 +37,7 @@ `.format()`是字符串的一个方法。你在交互模式中,输入`dir(str)`,会看到如下的内容: >>> dir(str) - ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] + ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] 这里所列出来的,就是字符串`str`的所有属性和方法。 From 6d45f94a981fdcf15f9731543e2c299ac31986a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 21 Mar 2016 20:23:40 +0800 Subject: [PATCH 083/288] p3 --- 109.md | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/109.md b/109.md index f17d268..9f6d167 100644 --- a/109.md +++ b/109.md @@ -67,8 +67,8 @@ 你暂且阅读文档,不理解也没关系。下面用示例来说明使用方法。 - >>> "I like {0} and {1}".format("python", "canglaoshi") - 'I like python and canglaoshi' + >>> "I like {0} and {1}".format("python", "canglaoshi") + 'I like python and canglaoshi' 在交互模式中,输入了字符串`"I like {0} and {1}"`,并且其中用`{0}`和`{1}`占据了两个位置,它们就是占位符。然后使一个非常重要的点`.`。 @@ -81,7 +81,7 @@ 你还可以这样试试,就理解更深刻了。 >>> "I like {1} and {0}".format("python", "canglaoshi") - 'I like canglaoshi and python' + 'I like canglaoshi and python' 请仔细观察找区别。 @@ -93,18 +93,18 @@ 既然是“格式化”,就要指定一些格式,让输出的结果符合指定的样式。 - >>> "I like {0:10} and {1:>15}".format("python", "canglaoshi") - 'I like python and canglaoshi' + >>> "I like {0:10} and {1:>15}".format("python", "canglaoshi") + 'I like python and canglaoshi' 现在有格式了。`{0:10}`表示第一个位置,有10个字符那么长,并且放在这个位置的字符是左对齐;`{1:>15}`表示第二个位置,有15个字符那么长,并且放在这个位置的字符是右对齐。 - >>> "I like {0:^10} and {1:^15}".format("python", "canglaoshi") - 'I like python and canglaoshi ' + >>> "I like {0:^10} and {1:^15}".format("python", "canglaoshi") + 'I like python and canglaoshi ' 现在是居中对齐了。 - >>> "I like {0:.2} and {1:^10.4}".format("python", "canglaoshi") - 'I like py and cang ' + >>> "I like {0:.2} and {1:^10.4}".format("python", "canglaoshi") + 'I like py and cang ' 这个有点复杂,我们一点一点的解释。 @@ -116,33 +116,33 @@ 向`format()`中,除了能够传入字符串,还可以传入数字(包括整数和浮点数),而且也能有各种花样。 - >>> "She is {0:d} years old and the breast is {1:f}cm".format(28, 90.1415926) - 'She is 28 years old and the breast is 90.141593cm' + >>> "She is {0:d} years old and the breast is {1:f}cm".format(28, 90.1415926) + 'She is 28 years old and the breast is 90.141593cm' `{0:d}`表示在第一个位置放一个整数;`{1:f}`表示在第二个位置放一个浮点数,那么浮点数的小数位数,是默认的。下面在这个基础上,可以再做一些显示格式的优化。 - >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) - 'She is 28 years old and the breast is 90.14cm' + >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) + 'She is 28 years old and the breast is 90.14cm'      `{0:d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 `{1:6.2f}`表示第二个位置的长度使6个字符,并且填充到该位置的浮点数要保留两位小数,默认也是右对齐。 - >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) - 'She is 0028 years old and the breast is 090.14cm' + >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) + 'She is 0028 years old and the breast is 090.14cm'      `{0:04d}`和`{1:06.2f}`与前述例子不同的在于在声明位置长度的数字前面多了`0`,其含义是在数字前面,如果位数不足,则补`0`。 以上的输出方式中,我们只讨论了`format(*args, **kwargs)`中的`*args`部分。还有另外一种方式,则是与`**kwargs`有关的(关于这两种参数的含义,本教程后面有专门介绍)。 - >>> "I like {lang} and {name}".format(lang="python", name="canglaoshi") - 'I like python and canglaoshi' + >>> "I like {lang} and {name}".format(lang="python", name="canglaoshi") + 'I like python and canglaoshi' 一种被称为“字典格式化”,这里仅仅列一个例子。关于“字典”,本教程后续会有的。 - >>> data = {"name":"Canglaoshi", "age":28} - >>> "{name} is {age}".format(**data) - 'Canglaoshi is 28' + >>> data = {"name":"Canglaoshi", "age":28} + >>> "{name} is {age}".format(**data) + 'Canglaoshi is 28' 用`format()`做字符串格式化输出,真的很简洁,堪称优雅。 From 60f997902f17a999135627ac63656cf317ac7821 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 21 Mar 2016 20:26:29 +0800 Subject: [PATCH 084/288] p3 --- 109.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/109.md b/109.md index 9f6d167..95bee4d 100644 --- a/109.md +++ b/109.md @@ -123,14 +123,14 @@ >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) 'She is 28 years old and the breast is 90.14cm' -     + `{0:d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 `{1:6.2f}`表示第二个位置的长度使6个字符,并且填充到该位置的浮点数要保留两位小数,默认也是右对齐。 >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) 'She is 0028 years old and the breast is 090.14cm' -     + `{0:04d}`和`{1:06.2f}`与前述例子不同的在于在声明位置长度的数字前面多了`0`,其含义是在数字前面,如果位数不足,则补`0`。 以上的输出方式中,我们只讨论了`format(*args, **kwargs)`中的`*args`部分。还有另外一种方式,则是与`**kwargs`有关的(关于这两种参数的含义,本教程后面有专门介绍)。 From 88851a48b9d3e3d7df0e06635893f87eb410b378 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 24 Mar 2016 11:59:22 +0800 Subject: [PATCH 085/288] p3 --- 110.md | 268 +++++++++++++++++++++++++++++++++++++++---------- 1code/110_2.py | 8 ++ 1code/110_3.py | 7 ++ 3 files changed, 231 insertions(+), 52 deletions(-) create mode 100644 1code/110_2.py create mode 100644 1code/110_3.py diff --git a/110.md b/110.md index 8f1ad94..557d30a 100644 --- a/110.md +++ b/110.md @@ -2,23 +2,13 @@ #字符编码 -我在第一版的《零基础学python》中,这个标题前面加了“坑爹”两个字。在后来的实践中,很多朋友都在网上问我关于编码的事情。说明这的确是一个“坑”。 +其实,标题前面应该加两个字——“坑爹”。 -首先说明,在python2中,编码问题的确有点麻烦。但是,python3就不用纠结于此了。但是,正如前面所说的原因,至少本教程还是用python2,所以,必须要搞清楚编码。当然了,搞清楚,也不是坏事。 +在实践中,字符编码的确是一个“坑”。因为这个世界上,不都是英文。如果都是英文,就没有这个问题了。可是,还有中文、日文等等。 -字符编码,在编程中,是一个让学习者比较郁闷的东西,比如一个str,如果都是英文,好说多了。但恰恰不是如此,中文是我们不得不用的。所以,哪怕是初学者,都要了解并能够解决字符编码问题。 +但是,字符编码的确很重要,它不仅仅是计算机的一个基础,还是一个有历史过程的事情。 - >>> name = '老齐' - >>> name - '\xe8\x80\x81\xe9\xbd\x90' - -在你的编程中,你遇到过上面的情形吗?认识最下面一行打印出来的东西吗?看人家英文,就好多了 - - >>> name = "qiwsir" - >>> name - 'qiwsir' - -难道这是中文的错吗?看来投胎真的是一个技术活。是的,投胎是技术活,但上面的问题不是中文的错。 +要从编码开始谈起。 ##编码 @@ -42,7 +32,7 @@ >为了传达汉字,电报部门准备由4位数字或3位罗马字构成的代码,即中文电码,采用发送前将汉字改写成电码发出,收电报后再将电码改写成汉字的方法。 -列位看官注意了,这里出现了电报中用的“[中文电码](http://zh.wikipedia.org/wiki/%E4%B8%AD%E6%96%87%E9%9B%BB%E7%A2%BC)”,这就是一种编码,将汉字对应成阿拉伯数字,从而能够用电报发送汉字。 +注意了,这里出现了电报中用的“[中文电码](http://zh.wikipedia.org/wiki/%E4%B8%AD%E6%96%87%E9%9B%BB%E7%A2%BC)”,这就是一种编码,将汉字对应成阿拉伯数字,从而能够用电报发送汉字。 >1873年,法国驻华人员威基杰参照《康熙字典》的部首排列方法,挑选了常用汉字6800多个,编成了第一部汉字电码本《电报新书》。 @@ -68,74 +58,246 @@ >字符编码(英语:Character encoding)、字集码是把字符集中的字符编码为指定集合中某一对象(例如:比特模式、自然数串行、8位组或者电脉冲),以便文本在计算机中存储和通过通信网络的传递。常见的例子包括将拉丁字母表编码成摩斯电码和ASCII。其中,ASCII将字母、数字和其它符号编号,并用7比特的二进制来表示这个整数。通常会额外使用一个扩充的比特,以便于以1个字节的方式存储。 ->在计算机技术发展的早期,如ASCII(1963年)和EBCDIC(1964年)这样的字符集逐渐成为标准。但这些字符集的局限很快就变得明显,于是人们开发了许多方法来扩展它们。对于支持包括东亚CJK字符家族在内的写作系统的要求能支持更大量的字符,并且需要一种系统而不是临时的方法实现这些字符的编码。 +但计算机的字符编码,不是一蹴而就,而是有一个发展过程的。 + +###ASCII码 + +计算机里采用二进制,这是毋庸置疑不用解释的了。 -在这个世界上,有好多不同的字符编码。但是,它们不是自己随便搞搞的。而是要有一定的基础,往往是以名叫[ASCII](http://zh.wikipedia.org/wiki/ASCII)的编码为基础,这里边也应该包括北朝鲜吧(不知道他们用什么字符编码,瞎想的,别当真,不代表本教材立场,只代表瞎想)。 +20世纪60年代,这是计算机发展的早期,那时候美国是很多领域的老大,计算机上也同样是老大,当然现在也还是老大,未来是不是就要看Chinese People了。老大就要做老大的事情,定规矩肯定是老大的事情,于是美国制定了一套字符编码,解决了英语字符与二进制位之间的对应关系,被称为[ASCII码](http://zh.wikipedia.org/wiki/ASCII)。 >ASCII(pronunciation: 英语发音:/ˈæski/ ASS-kee[1],American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语,而其扩展版本EASCII则可以部分支持其他西欧语言,并等同于国际标准ISO/IEC 646。由于万维网使得ASCII广为通用,直到2007年12月,逐渐被Unicode取代。 -上面的引文中已经说了,现在我们用的编码标准已经变成Unicode了,那么什么是Unicode呢?还是抄一段来自[维基百科的说明](http://zh.wikipedia.org/wiki/Unicode) +英语用128个符号编码就够了,但计算机不是仅仅用于英语。如果用来表示其他语言,128个符号是不够的。于是很多其它国家,都在ASCII码的基础上,搞了很多别的编码,比如汉语里面有了简体中文编码方式GB2312,使用两个字节表示一个汉字。 + +###Unicode + +编码方式上,各玩个的,就有点乱,于是就出现了“乱码”。比如电子邮件,发信人和收信人使用的编码方式不一样,收信人就只能看“乱码”了。 + +网络的发展,让地球都成为一个村了,同一个村里面就不能有很多“方言”,只能有一种,否则“乱了”。 + +于是[Unicode]((http://zh.wikipedia.org/wiki/Unicode))呼之出来了,看它的名字,你也知道,就是要统一符号的编码。 >Unicode(中文:万国码、国际码、统一码、单一码)是计算机科学领域里的一项业界标准。它对世界上大部分的文字系统进行了整理、编码,使得电脑可以用更为简单的方式来呈现和处理文字。 >Unicode伴随着通用字符集的标准而发展,同时也以书本的形式对外发表。Unicode至今仍在不断增修,每个新版本都加入更多新的字符。目前最新的版本为7.0.0,已收入超过十万个字符(第十万个字符在2005年获采纳)。Unicode涵盖的数据除了视觉上的字形、编码方法、标准的字符编码外,还包含了字符特性,如大小写字母。 -听这名字:万国码,那就一定包含了中文喽。的确是。但是,光有一个Unicode还不行,因为....(此处省略若干字,看官可以到上面给出的维基百科链接中看),还要有其它的一些编码实现方式,Unicode的实现方式称为Unicode转换格式(Unicode Transformation Format,简称为UTF),于是乎有了一个我们在很多时候都会看到的utf-8。 +但Unicode也不是完美的,存在一些问题。想了解哪些问题,请具体查阅参考文献:[字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) -什么是utf-8,还是看[维基百科](http://zh.wikipedia.org/wiki/UTF-8)上怎么说的吧 +###UTF-8 + +互联网催生了UTF-8。 + +Unicode的实现方式称为Unicode转换格式(Unicode Transformation Format,简称为UTF)——UTF的含义。 + +[UTF-8]((http://zh.wikipedia.org/wiki/UTF-8))是在互联网上使用最广的一种Unicode的实现方式。虽然它仅仅是Unicode的实现方式之一,但它真正一统江湖了。 >UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,也是一种前缀码。它可以用来表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII兼容,这使得原来处理ASCII字符的软件无须或只须做少部份修改,即可继续使用。因此,它逐渐成为电子邮件、网页及其他存储或发送文字的应用中,优先采用的编码。 -不再多引用了,如果要看更多,请到原文。 +有UTF-8,言外之意还应该有UTF-n,n是一个别的数字。 + +的确如此,还有UTF-16等等,但UTF-8有很多优点,被广泛接受。 + +所以,以后,我们在Python的程序开发中,都要使用UTF-8编码。 + +注:参考文献:[字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) + +看完了一些关于编码的基本知识,再来看Python中的编码问题。 + +##Python字符编码 + +Python编码容易让人迷茫,因为Python 2和Python 3还有区别。 + +如果你在Python 2中,在交互模式里按照下面的指令执行。 + + >>> import sys + >>> sys.getdefaultencoding() + 'ascii' + +这说明Python 2的默认是ASCII编码。而Python 3,则不同。 + + >>> import sys + >>> sys.getdefaultencoding() + 'utf-8' + +所以,要注意是哪个版本。 + +之所以如此,根源是Python 2横空出世的时候,Unicode还没有来到这个世界。 + +在Python中,有两个内建函数,能够实现字符和对应数字之间的转换。 + + >>> ord("Q") + 81 + >>> chr(81) + 'Q' + +对于英文字母,不同版本的Python没有区别,但是,对于汉字就有区别了。 + +先看Python 2。如果你用Python 3,此段可以略过。 + + >>> ord("齐") + + Traceback (most recent call last): + File "", line 1, in + ord("齐") + TypeError: ord() expected a character, but string of length 2 found + +Python 2默认是ASCII编码,`齐`这个字符已经超出了ASCII的范围,所以要报错。并且,从报错信息中可以看出更多信息。 + + >>> help(ord) + Help on built-in function ord in module __builtin__: + + ord(...) + ord(c) -> integer + + Return the integer ordinal of a one-character string. + +Python 2中,要求`ord()`的参数所传递的是一个字符,即长度是1,而Python解释器现在认为`齐`这个汉字是两个字符的长度。 -看官现在是不是就理解了,前面写程序的时候,曾经出现过:coding:utf-8的字样。就是在告诉python我们要用什么字符编码呢。 +的确如此,汉字占据了两个字节。 + + >>> s = "齐" + >>> len(s) + 2 + >>> s + '\xc6\xeb' + +再看Python 3,进行上述操作。 + + >>> ord("齐") + 40784 + >>> chr(40784) + '齐' + + >>> help(ord) + Help on built-in function ord in module builtins: + + ord(c, /) + Return the Unicode code point for a one-character string. + +区别已经很明显了。 + +因此,Python 2做了扩展,使用一种新的方式,来声明那个字符串是Unicode编码。 + + >>> t = u'齐' + >>> len(t) + 1 + >>> t + u'\u9f50' + >>> ord(t) + 40784 + >>> type(t) + + +所以,使用Python 2的朋友们要注意了,在编程中,将字符串写成状如`u'齐'`是非常必要的,因为这样你使用的就是Unicode编码。 + +这样,貌似世界就和谐了。 + +真的吗? ##encode和decode -历史部分说完了,接下怎么讲?比较麻烦了。因为不管怎么讲,都不是三言两语说清楚的。姑且从encode()和decode()两个内置函数起吧。 +因为种种原因,不可能世界上所有人都按照同一种模式生活,否则就不是“绚丽多彩”的世界了。 + +“绚丽多彩”的世界,就必须要encode和decode + +- encode:编码 +- decode:解码 ->codecs.encode(obj[, encoding[, errors]]):Encodes obj using the codec registered for encoding. ->codecs.decode(obj[, encoding[, errors]]):Decodes obj using the codec registered for encoding. +字符串也有这样两个方法,分别负责编码和解码工作。 -python2默认的编码是ascii,通过encode可以将对象的编码转换为指定编码格式(称作“编码”),而decode是这个过程的逆过程(称作“解码”)。 +在Python 2中,它们分别是`str.encode()`和`str.decode()`。 + + >>> help(str.encode) + Help on method_descriptor: + + encode(...) + S.encode([encoding[,errors]]) -> object + + Encodes S using the codec registered for encoding. encoding defaults + to the default encoding. errors may be given to set a different error + handling scheme. Default is 'strict' meaning that encoding errors raise + a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and + 'xmlcharrefreplace' as well as any other name registered with + codecs.register_error that is able to handle UnicodeEncodeErrors. + + >>> help(str.decode) + Help on method_descriptor: + + decode(...) + S.decode([encoding[,errors]]) -> object + + Decodes S using the codec registered for encoding. encoding defaults + to the default encoding. errors may be given to set a different error + handling scheme. Default is 'strict' meaning that encoding errors raise + a UnicodeDecodeError. Other possible values are 'ignore' and 'replace' + as well as any other name registered with codecs.register_error that is + able to handle UnicodeDecodeErrors. -做一个实验,才能理解: +而在Python 3中,它是`str.encode()`。(细心的读者,有没有看到我叙述上的差别?) - >>> a = "中" + >>> help(str.encode) + Help on method_descriptor: + + encode(...) + S.encode(encoding='utf-8', errors='strict') -> bytes + + Encode S using the codec registered for encoding. Default encoding + is 'utf-8'. errors may be given to set a different error + handling scheme. Default is 'strict' meaning that encoding errors raise + a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and + 'xmlcharrefreplace' as well as any other name registered with + codecs.register_error that can handle UnicodeEncodeErrors. + +在两个版本中,是有却别的,恭请认真阅读文档信息。并且,在Python 3中不再提供`str.decode()`方法。想想也是合理的。因为Python 3中默认是UTF-8,就没有必要再解码成别的了吧,那不是要开历史的倒车吗? + + 所以,在Python 2中,你可以这么玩。 + + >>> a = "赵国" >>> type(a) - >>> a - '\xe4\xb8\xad' >>> len(a) - 3 - - >>> b = a.decode() - >>> b - u'\u4e2d' - >>> type(b) - - >>> len(b) - 1 - -这个实验不做之前,或许看官还不是很迷茫(因为不知道,知道的越多越迷茫),实验做完了,自己也迷茫了。别急躁,对编码问题的理解,要慢慢来,如果一时理解不了,也肯定理解不了,就先注意按照要求做,做着做着就豁然开朗了。 + 4 + >>> a + '\xd5\xd4\xb9\xfa' -上面试验中,变量a引用了一个字符串,所谓字符串(str),严格地将是字节串,它是经过编码后的字节组成的序列。也就是你在上面的实验中,看到的是“中”这个字在计算机中编码之后的字节表示。(关于字节,看官可以google一下)。用len(a)来度量它的长度,它是由三个字节组成的。 +这是一个基于ASCII得到的**字节串**,一个汉字两个字节。 -然后通过decode函数,将**字节串**转变为**字符串**,并且这个字符串是按照unicode编码的。在unicode编码中,一个汉字对应一个字符,这时候度量它的长度就是1. +>>> b = u'赵国' +>>> type(b) + +>>> len(b) +2 +>>> b +u'\u8d75\u56fd' -反过来,一个unicode编码的字符串,也可以转换为字节串。 +这是基于Unicode的**字符串**。两个术语:“字节串”和“字符串”,通过这个例子是否有了明晰? - >>> c = b.encode('utf-8') - >>> c - '\xe4\xb8\xad' + >>> c = b.encode("utf-8") >>> type(c) - >>> c == a - True + >>> len(c) + 6 + >>> c + '\xe8\xb5\xb5\xe5\x9b\xbd' + +这是其转化为UTF-8编码。请注意,以上三种不同编码下的长度,是不一样的。 + + >>> d = c.decode("utf-8") + >>> type(d) + + >>> len(d) + 2 + >>> d + u'\u8d75\u56fd' + +这样又变回去了。 -关于编码问题,先到这里,点到为止吧。因为再扯,还会扯出问题来。看官肯定感到不满意,因为还没有知其所以然。没关系,请尽情google,即可解决。 +这就是编码的转换方式。 -##python中如何避免中文是乱码 +关于编码问题,先到这里,点到为止吧。在编程实践中,如果有纠缠不清的问题,请尽情google,即可解决。 + +##Python 2中如何避免中文是乱码 这个问题是一个具有很强操作性的问题。我这里有一个经验总结,分享一下,供参考: @@ -165,7 +327,9 @@ python2默认的编码是ascii,通过encode可以将对象的编码转换为 我还收集了网上的一片文章,也挺好的,推荐给看官:[Python2.x的中文显示方法](https://github.com/qiwsir/ITArticles/blob/master/Python/Python%E7%9A%84%E4%B8%AD%E6%96%87%E6%98%BE%E7%A4%BA%E6%96%B9%E6%B3%95.md) -最后告诉给你,如果用python3,坑爹的编码问题就不烦恼了。 +至于Python 3,因为天生就是UTF-8,所以对中文友好的。 + +关于字符串差不多要告一段落了。但是,Python的对象类型,还要继续。接下来“苦力”即将登场。 ------ diff --git a/1code/110_2.py b/1code/110_2.py new file mode 100644 index 0000000..baa3797 --- /dev/null +++ b/1code/110_2.py @@ -0,0 +1,8 @@ +# -*- coding: cp936 -*- +#python 2 + +import sys + +print sys.getdefaultencoding() + +print "��������ѧpython��ֵ�ö�" diff --git a/1code/110_3.py b/1code/110_3.py new file mode 100644 index 0000000..dc9d942 --- /dev/null +++ b/1code/110_3.py @@ -0,0 +1,7 @@ +#python 3 + +import sys + +print(sys.getdefaultencoding()) + +print("《跟老齐学python》值得读") From 87728b336bc5e3d78fce36053901e8055882e240 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 24 Mar 2016 12:07:34 +0800 Subject: [PATCH 086/288] p3 --- 110.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/110.md b/110.md index 557d30a..aeb3da5 100644 --- a/110.md +++ b/110.md @@ -263,13 +263,13 @@ Python 2中,要求`ord()`的参数所传递的是一个字符,即长度是1 这是一个基于ASCII得到的**字节串**,一个汉字两个字节。 ->>> b = u'赵国' ->>> type(b) - ->>> len(b) -2 ->>> b -u'\u8d75\u56fd' + >>> b = u'赵国' + >>> type(b) + + >>> len(b) + 2 + >>> b + u'\u8d75\u56fd' 这是基于Unicode的**字符串**。两个术语:“字节串”和“字符串”,通过这个例子是否有了明晰? From df8403c210be33dd9b18001e90ad34b634377073 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Fri, 25 Mar 2016 09:56:50 +0800 Subject: [PATCH 087/288] Update 111.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增cmp()函数的解释和官方文档描述。标注出cmp()函数只在Python2中出现,Python3中已经删除。 --- 111.md | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/111.md b/111.md index 49d1d3b..599c09e 100644 --- a/111.md +++ b/111.md @@ -214,9 +214,13 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( >>> min(lst) 'c++' -- cmp() - +- cmp(): 采用上面的方法,进行比较 +[官方文档] https://docs.python.org/2.7/library/functions.html#cmp +Compare the two objects x and y and return an integer according to the outcome. The return value is negative if x < y, zero if x == y and strictly positive if x > y. +cmp是英文单词compare的缩写,即该函数是比较两个对象x和y大小的。如果x < y ,返回负数;x == y, 返回0;x > y,返回正数。 +#注意:这个内置函数只在Python2版本中有,Python3版本中没有。 + >>> lsta = [2,3] >>> lstb = [2,4] From c269785d9483882ea51b5b8eb0ae8170d8aae574 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Fri, 25 Mar 2016 10:32:00 +0800 Subject: [PATCH 088/288] Update 112.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit x是list中的一个元素,list.index(x)能够检索到该元素在list中第一次出现的位置 --- 112.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/112.md b/112.md index 55ba74d..3caa68d 100644 --- a/112.md +++ b/112.md @@ -248,7 +248,7 @@ append是整建制地追加,extend是个体化扩编。 >>> la.index('qiwsir') 6 -list.index(x),x是list中的一个元素,这样就能够检索到该元素在list中的位置了。这才是真正的索引,注意那个英文单词index。 +x是list中的一个元素,list.index(x)能够检索到该元素在list中第一次出现的位置。这才是真正的索引,注意那个英文单词index。 依然是上一条官方解释: From fd255d4bbbf01a76f8119d6da944c7abbac72b73 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Fri, 25 Mar 2016 11:11:28 +0800 Subject: [PATCH 089/288] Update 112.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.hasattr(astr,'__iter__') Python2返回的False。如果是Python3返回True. 2.print another返回为None。one.extend()没有返回值,即是None. --- 112.md | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/112.md b/112.md index 55ba74d..76800a4 100644 --- a/112.md +++ b/112.md @@ -101,17 +101,17 @@ list.extend(L) 等效于 list[len(list):] = L,L是待并入的list >>> astr = "python" >>> hasattr(astr,'__iter__') - False + False #Python2返回的结果。如果是Python3返回True. -这里用内建函数`hasattr()`判断一个字符串是否是可迭代的,返回了False。用同样的方式可以判断: +这里用内建函数`hasattr()`判断一个字符串是否是可迭代的,在Python2中返回了False。用同样的方式可以判断: >>> alst = [1,2] - >>> hasattr(alst,'__iter__') - True + >>> hasattr(alst,'__iter__') + True >>> hasattr(3, '__iter__') False -`hasattr()`的判断本质就是看那个类型中是否有`__iter__`函数。看官可以用`dir()`找一找,在数字、字符串、列表中,谁有`__iter__`。同样还可找一找dict,tuple两种类型对象是否含有这个方法。 +`hasattr()`的判断本质就是看那个类型中是否有`__iter__`函数。看官可以用`dir()`找一找,在数字、字符串、列表中,谁有`__iter__`。同样还可找一找dict,tuple两种类型对象是否含有这个方法。(同理Pyhon2中输入dir(str)没有`__iter__`.而Python3中输入dir(str)有`__iter__`。) 以上穿插了一个新的概念“iterable”(可迭代的),现在回到extend上。这个函数需要的参数就是iterable类型的对象。 @@ -187,7 +187,8 @@ list.extend(L) 等效于 list[len(list):] = L,L是待并入的list >>> one = ["good","good","study"] >>> another = one.extend(["day","day","up"]) #对于没有提供返回值的函数,如果要这样,结果是: - >>> another #这样的,什么也没有得到。 + >>> print anthor #打印变量another的值。如果是Python3则输入print(another) + None #返回为None, one.extend()没有返回值,即是None. >>> one ['good', 'good', 'study', 'day', 'day', 'up'] From a8ca2efe3eb01f42cb4d647c588148ac7e6c4714 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Fri, 25 Mar 2016 11:27:16 +0800 Subject: [PATCH 090/288] Update 113.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* #Python3版本(因为Python3中去掉了cmp函数) --- 113.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/113.md b/113.md index 27ca5ca..92d9953 100644 --- a/113.md +++ b/113.md @@ -63,7 +63,7 @@ >>> all_users ['python', 'http://', 'qiwsir', 'github', 'io', 'algorithm'] -在all_users中,没有索引最大到4,如果要`all_users.insert(5,"algorithm")`,则表示将`"algorithm"`插入到索引值是5的前面,但是没有。换个说法,5前面就是4的后面。所以,就是追加了。 +在all_users中,没有索引5,最大到4。如果要`all_users.insert(5,"algorithm")`,则表示将`"algorithm"`插入到索引值是5的前面,但是没有。换个说法,5前面就是4的后面。所以,就是追加了。 其实,还可以这样: @@ -192,13 +192,13 @@ reverse比较简单,就是把列表的元素顺序反过来。 ###sort -sort就是对列表进行排序。帮助文档中这么写的: +sort就是对列表进行排序。输入help(list.sort)调用帮助文档,可以得到如下内容: ->sort(...) - -> L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; +sort(...) + L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; #Python2版本 cmp(x, y) -> -1, 0, 1 - + + L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* #Python3版本(因为Python3中去掉了cmp函数) >>> a = [6, 1, 5, 3] >>> a.sort() From 065a954e7f11f140d6982608d5d7bd4d3fdf9f59 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Fri, 25 Mar 2016 12:43:21 +0800 Subject: [PATCH 091/288] Update 109.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 发现一处错误: {0:d}`表示第一个位置的长度是4个字符 改为:{0:4d}`表示第一个位置的长度是4个字符 --- 109.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/109.md b/109.md index 95bee4d..673821f 100644 --- a/109.md +++ b/109.md @@ -124,7 +124,7 @@ >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) 'She is 28 years old and the breast is 90.14cm' -`{0:d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 +`{0:4d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 `{1:6.2f}`表示第二个位置的长度使6个字符,并且填充到该位置的浮点数要保留两位小数,默认也是右对齐。 From 5d19cabad2a316c0e9e2e80c1877843e45801c32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Fri, 25 Mar 2016 23:30:11 +0800 Subject: [PATCH 092/288] p3 --- 111.md | 128 +++++++++++++++++++++++++++++++-------------------------- 1 file changed, 69 insertions(+), 59 deletions(-) diff --git a/111.md b/111.md index 599c09e..3ac65a6 100644 --- a/111.md +++ b/111.md @@ -2,33 +2,39 @@ #列表(1) -前面的学习中,我们已经知道了两种python的数据类型:int和str。再强调一下对数据类型的理解,这个世界是由数据组成的,数据可能是数字(注意,别搞混了,数字和数据是有区别的),也可能是文字、或者是声音、视频等。在python中(其它高级语言也类似)把状如2,3这样的数字划分为一个类型,把状如“你好”这样的文字划分一个类型,前者是int类型,后者是str类型(这里就不说翻译的名字了,请看官熟悉用英文的名称,对日后编程大有好处,什么好处呢?谁用谁知道!)。 +已经知道了数字和字符串,用`type()`可以得到具体某个对象的类型。 -前面还学习了变量,如果某个变量指向一个对象(某种类型的数据)行话是:赋值),通常这个变量我们就把它叫做int类型的变量(注意,这种说法是不严格的,或者是受到别的语言影响的,在python中,特别要注意:**变量没有类型,对象有类型**。在python里,变量不用提前声明(在某些语言,如JAVA中需要声明变量之后才能使用。这个如果看官没有了解,不用担心,因为我们是学习python,以后学习的语言多了,自然就能体会到这点区别了),随用随命名。 +这是两种很基本的对象,由它们可以组成其它的对象。 -这一讲中的list类型,也是python的一种数据类型。翻译为:列表。下面的黑字,请看官注意了: +>对数据类型的理解。这个世界是由数据组成的,数据可能是数字(注意,别搞混了,数字和数据是有区别的),也可能是文字、或者是声音、视频等。 -**LIST在python中具有非常强大的功能。** +还学习了变量,如果某个变量指向一个对象,行话是“赋值”。 + +从现在开始学习一种新的对象——list(列表)。下面的文字,请注意了: + +**列表在Python中具有非常强大的功能。** ##定义 -在python中,用方括号表示一个list,[ ] +在Python中,用方括号表示一个列表——[ ]。 -在方括号里面,可以是int,也可以是str类型的数据,甚至也能够是True/False这种布尔值。看下面的例子,特别注意阅读注释。 +在方括号里面,可以是数字(整数、浮点数),也可以是字符串,甚至也能够是True/False这种布尔值。 - >>> a=[] #定义了一个变量a,它是list类型,并且是空的。 +先定义一个空列表看一看。 + + >>> a = [] #定义了一个空列表,并把他赋值给变量a。 >>> type(a) - #用内置函数type()查看变量a的类型,为list - >>> bool(a) #用内置函数bool()看看list类型的变量a的布尔值,因为是空的,所以为False + #type()查看变量a所指向对象的类型 + >>> bool(a) False - >>> print a #打印list类型的变量a + >>> print a [] -`bool()`是一个布尔函数,这个东西后面会详述。它的作用就是来判断一个对象是“真”还是“空”(假)。如果想上面例子那样,list中什么也没有,就是空的,用bool()函数来判断,得到False,从而显示它是空的。 +`bool()`是一个布尔函数,这个东西后面会详述。它的作用就是来判断一个对象是“真”还是“空”(假)。如果想上面例子那样,列表中什么也没有,就是空的,用`bool()`函数来判断,返回False,从而显示它是空的。 不能总玩空的,来点实的吧。 - >>> a=['2',3,'qiwsir.github.io'] + >>> a = ['2', 3, 'qiwsir.github.io'] >>> a ['2', 3, 'qiwsir.github.io'] >>> type(a) @@ -38,15 +44,15 @@ >>> print a ['2', 3, 'qiwsir.github.io'] -用上述方法,定义一个list类型的变量和数据。 +用上述方法,定义一个列表类型的对象。 -本讲的标题是“有容乃大的list”,就指明了list的一大特点:可以无限大,就是说list里面所能容纳的元素数量无限,当然这是在硬件设备理想的情况下。 +从刚才的例子中,读者是否注意到,列表里面的元素,可以是不同类型的对象,可谓是“有容乃大”,不仅如此,它的元素个数还可以无限大,就是说里面所能容纳的元素数量无限,当然这是在硬件设备理想的情况下。 ->如果看官以后或者已经了解了别的语言,比如比较常见的Java,里面有一个跟list相似的数据类型——数组——但是两者还是有区别的。在Java中,数组中的元素必须是基本数据类型中某一个,也就是要么都是int类型,要么都是char类型等,不能一个数组中既有int类型又有char类型。这是因为java中的数组,需要提前声明,声明的时候就确定了里面元素的类型。但是python中的list,尽管跟java中的数组有类似的地方——都是`[]`包裹的——list中的元素是任意类型的,可以是int,str,甚至还可以是list,乃至于是以后要学的dict等。所以,有一句话说:List是python中的苦力,什么都可以干。 +>如果以后或者已经了解了别的语言,比如比较常见的Java,里面有一个跟Python列表相似的数据类型——数组——但是两者还是有区别的。在Java中,数组中的元素必须是基本数据类型中某一个,也就是要么都是整数类型,要么都是字符类型等,不能一个数组中既有整数类型又有字符类型。这是因为Java中的数组,需要提前声明,声明的时候就确定了里面元素的类型。但是Python中的列表,尽管跟Java中的数组有类似的地方——都是`[]`包裹的——列表中的元素是任意类型的。所以,有一句话说:列表是Python中的苦力,什么都可以干。 ##索引和切片 -尚记得在[《字符串(3)》](./108.md)中,曾经给“索引”(index)和“切片”。 +尚记得在[《字符串(3)》](./108.md)中,曾经有“索引”(index)和“切片”。 >>> url = "qiwsir.github.io" >>> url[2] @@ -60,20 +66,22 @@ >>> a ['2', 3, 'qiwsir.github.io'] - >>> a[0] #索引序号也是从0开始 + >>> a[0] #索引序号也是从0开始 '2' >>> a[1] 3 >>> [2] [2] - >>> a[:2] #跟str中的类似,切片的范围是:包含开始位置,到结束位置之前 - ['2', 3] #不包含结束位置 + >>> a[:2] + ['2', 3] >>> a[1:] [3, 'qiwsir.github.io'] - >>> a[2][7:13] #可以对列表元素做2次切片 + >>> a[1:2] + [3] + >>> a[2][7:13] #可以对列表元素做2次切片 'github' -list和str两种类型的数据,有共同的地方,它们都属于序列(都是一些对象按照某个次序排列起来,这就是序列的最大特征),因此,就有很多类似的地方。如刚才演示的索引和切片,是非常一致的。 +列表和字符串两种类型的对象,都属于序列(都是一些对象按照某个次序排列起来,这就是序列的最大特征),因此,就有很多类似的地方。如刚才演示的索引和切片,是非常一致的。 >>> lang = "python" >>> lang.index("y") @@ -82,7 +90,7 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( >>> lst.index('java') 1 -在前面讲述字符串索引和切片的时候,以及前面的演示,所有的索引都是从左边开始编号,第一个是0,然后依次增加1。此外,还有一种编号方式,就是从右边开始,右边第一个可以编号为`-1`,然后向左依次是:-2,-3,...,依次类推下来。这对字符串、列表等各种序列类型都是用。 +我们已经知道,在Python中所有的索引都是从左边开始编号,第一个是0,然后依次增加1。此外,还有一种编号方式,就是从右边开始,右边第一个可以编号为`-1`,然后向左依次是:-2,-3,...,依次类推下来。这对字符串、列表等各种序列类型都是用。 >>> lang 'python' @@ -106,15 +114,17 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( ##反转 -这个功能作为一个独立的项目提出来,是因为在编程中常常会用到。通过举例来说明反转的方法: +这个功能作为一个独立的项目提出来,是因为在编程中常常会用到。 + +还是通过举例来演示反转的方法: - >>> alst = [1,2,3,4,5,6] - >>> alst[::-1] #反转 + >>> alst = [1, 2, 3, 4, 5, 6] + >>> alst[: : -1] #反转 [6, 5, 4, 3, 2, 1] >>> alst [1, 2, 3, 4, 5, 6] - -当然,对于字符串也可以 + +对于字符串也可以: >>> lang 'python' @@ -123,16 +133,18 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( >>> lang 'python' -看官是否注意到,上述不管是str还是lst反转之后,再看原来的值,没有改变。这就说明,这里的反转,不是在“原地”把原来的值倒过来,而是新生成了一个值,那个值跟原来的值相比,是倒过来了。 +是否注意到,不管是字符串还是列表,反转之后,都没有影响原来的对象。 + +这说明,这里的反转,不是在“原地”把原来的值倒过来,而是新生成了一个值,那个值跟原来的值相比,是倒过来了。 -这是一种非常简单的方法,虽然我在写程序的时候常常使用,但是,我不是十分推荐,因为有时候让人感觉迷茫。python还有另外一种方法让list反转,是比较容易理解和阅读的,特别推荐之: +这是一种非常简单的方法,虽然我在写程序的时候常常使用,但是,我不是十分推荐,因为有时候让人感觉迷茫。Python还有另外一种方法让列表反转,是比较容易理解和阅读的,特别推荐之: >>> list(reversed(alst)) [6, 5, 4, 3, 2, 1] 比较简单,而且很容易看懂。不是吗? -顺便给出reversed函数的详细说明: +顺便给出`reversed()`函数的详细说明: >>> help(reversed) Help on class reversed in module __builtin__: @@ -149,15 +161,9 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( 很好,很强大,特别推荐使用。 -##对list的操作 +##操作列表 -任何一个行业都有自己的行话,如同古代的强盗,把撤退称之为“扯乎”一样,纵然是一个含义,但是强盗们愿意用他们自己的行业用语,俗称“黑话”。各行各业都如此。这样做的目的我理解有两个,一个是某种保密;另外一个是行外人士显示本行业的门槛,让别人感觉这个行业很高深,从业者有一定水平。 - -不管怎么,在python和很多高级语言中,都给本来数学角度就是函数的东西,又在不同情况下有不同的称呼,如方法、类等。当然,这种称呼,其实也是为了区分函数的不同功能。 - -前面在对str进行操作的时候,有一些内置函数,比如s.strip(),这是去掉左右空格的内置函数,也是str的方法。按照一贯制的对称法则,对list也会有一些操作方法。 - -在讲述字符串的时候,提到过,所有的序列,都有几种基本操作。list当然如此。 +刚刚提到过,列表是学列。所有的序列,都有几种基本操作。列表也当然如此。 ###基本操作 @@ -192,7 +198,7 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( - in -列表lst还是前面的值 +还是前面的列表, >>> "python" in lst True @@ -201,7 +207,7 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( - max()和min() -以int类型元素为例。如果不是,都是按照字符在ascii编码中所对应的数字进行比较的。 +按照元素的字典顺序进行比较的。 >>> alst [1, 2, 3, 4, 5, 6] @@ -214,50 +220,52 @@ list和str两种类型的数据,有共同的地方,它们都属于序列( >>> min(lst) 'c++' -- cmp(): -采用上面的方法,进行比较 -[官方文档] https://docs.python.org/2.7/library/functions.html#cmp -Compare the two objects x and y and return an integer according to the outcome. The return value is negative if x < y, zero if x == y and strictly positive if x > y. -cmp是英文单词compare的缩写,即该函数是比较两个对象x和y大小的。如果x < y ,返回负数;x == y, 返回0;x > y,返回正数。 -#注意:这个内置函数只在Python2版本中有,Python3版本中没有。 +- cmp(): +跟字符串中提到的`cmp()`一样,这个函数仅适用于Python 2,在Python 3中已经被抛弃了。 + +引用[官方文档] (https://docs.python.org/2.7/library/functions.html#cmp)一段话,说明这个函数的意义: - >>> lsta = [2,3] - >>> lstb = [2,4] - >>> cmp(lsta,lstb) +>Compare the two objects x and y and return an integer according to the outcome. The return value is negative if x < y, zero if x == y and strictly positive if x > y. + +不用翻译你也能看懂,况且还有例子: + + >>> lsta = [2, 3] + >>> lstb = [2, 4] + >>> cmp(lsta, lstb) -1 >>> lstc = [2] - >>> cmp(lsta,lstc) + >>> cmp(lsta, lstc) 1 - >>> lstd = ['2','3'] - >>> cmp(lsta,lstd) + >>> lstd = ['2', '3'] + >>> cmp(lsta, lstd) -1 ###追加元素 - >>> a = ["good","python","I"] + >>> a = ["good", "python", "I"] >>> a ['good', 'python', 'I'] - >>> a.append("like") #向list中添加str类型"like" + >>> a.append("like") #向列表中追加字符串"like" >>> a ['good', 'python', 'I', 'like'] - >>> a.append(100) #向list中添加int类型100 + >>> a.append(100) #向列表中追加整数100 >>> a ['good', 'python', 'I', 'like', 100] -[官方文档](https://docs.python.org/2/tutorial/datastructures.html)这样描述list.append()方法 +[官方文档](https://docs.python.org/2/tutorial/datastructures.html)这样描述`list.append()`方法 >list.append(x) > Add an item to the end of the list; equivalent to a[len(a):] = [x]. -从以上描述中,以及本部分的标题“追加元素”,是不是能够理解list.append(x)的含义呢?即将新的元素x追加到list的尾部。 +所谓追加,即将新的元素加到列表的尾部。 -列位看官,如果您注意看上面官方文档中的那句话,应该注意到,还有后面半句: equivalent to a[len(a):] = [x],意思是说list.append(x)等效于:a[len(a):]=[x]。这也相当于告诉我们了另外一种追加元素的方法,并且两种方法等效。 +如果您仔细阅读了上面官方文档中的那句话,应该注意到,还有后面半句: equivalent to a[len(a):] = [x],意思是说`list.append(x)`等效于`a[len(a):]=[x]`。这也相当于告诉我们了另外一种追加元素的方法,并且两种方法等效。 >>> a ['good', 'python', 'I', 'like', 100] - >>> a[len(a):]=[3] #len(a),即得到list的长度,这个长度是指list中的元素个数。 + >>> a[len(a):]=[3] #len(a),即得到列表的长度 >>> a ['good', 'python', 'I', 'like', 100, 3] >>> len(a) @@ -266,6 +274,8 @@ cmp是英文单词compare的缩写,即该函数是比较两个对象x和y大 >>> a ['good', 'python', 'I', 'like', 100, 3, 'xxoo'] +到这里,仅仅是列表这座冰山的一角,既然它是“苦力”,可以干的活还很多。 + ------ [总目录](./index.md)   |   [上节:字符编码](./110.md)   |   [下节:列表(2)](./112.md) From 17ff8b9f79c8adcab86d79c68d97970b1a5fa3af Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 21:20:00 +0800 Subject: [PATCH 093/288] Update 119.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 一处错别字:术语--->>> 属于 --- 119.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/119.md b/119.md index 0f22323..117ed76 100644 --- a/119.md +++ b/119.md @@ -29,7 +29,7 @@ ###元素与集合的关系 -就一种关系,要么术语某个集合,要么不属于。 +就一种关系,要么属于某个集合,要么不属于。 >>> aset set(['h', 'o', 'n', 'p', 't', 'y']) @@ -140,4 +140,4 @@ [总目录](./index.md)   |   [上节:集合(1)](./118.md)   |   [下节:运算符](./120.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From f36365ab3f2628e1fed17f129d371af6aef1d090 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 22:06:51 +0800 Subject: [PATCH 094/288] Update 104.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 删除这句话: 3. 最后,按q键返回到python交互模式。 --- 104.md | 1 - 1 file changed, 1 deletion(-) diff --git a/104.md b/104.md index 02e856c..95e6198 100644 --- a/104.md +++ b/104.md @@ -60,7 +60,6 @@ Python是一个非常周到的姑娘,让我们来查看每个函数(方法 1. `pow(x, y)`:表示这个函数的参数,有两个,也是函数的调用方式 2. `Return x**y (x to the power of y)`:是对函数的说明,返回`x**y`的结果,并且在后面解释了`x**y`的含义。 -3. 最后,按q键返回到python交互模式 从上面看到了一个额外的信息,就是pow函数和`x**y`是等效的,都是计算x的y次方。 From 4102d061b3f0e6fef111c5a6a5db5a6dfa15f926 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 22:18:44 +0800 Subject: [PATCH 095/288] Update 121.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 最典型的那句:`print "Hello, World"`就是语句。(注意:Python3里,print语句改成了print()函数。) --- 121.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/121.md b/121.md index e689de9..182892a 100644 --- a/121.md +++ b/121.md @@ -8,7 +8,7 @@ ##什么是语句 -事实上,前面已经用过语句了,最典型的那句:`print "Hello, World"`就是语句。 +事实上,前面已经用过语句了,最典型的那句:`print "Hello, World"`就是语句。(注意:Python3里,print语句改成了print()函数。) 为了能够严谨地阐述这个概念,抄一段[维基百科中的词条:命令式编程](http://zh.wikipedia.org/wiki/%E6%8C%87%E4%BB%A4%E5%BC%8F%E7%B7%A8%E7%A8%8B) @@ -234,4 +234,4 @@ python只要一行就完成了。 [总目录](./index.md)   |   [上节:运算符](./120.md)   |   [下节:语句(2)](./122.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From c87c91c1f25c7d31542f6981dee26206390e7dd7 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 22:40:13 +0800 Subject: [PATCH 096/288] Update 121.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 看到一处错别字,就改了。 或许现在体现的还不时很明显 -->> 或许现在体现得还不是很明显 --- 121.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/121.md b/121.md index e689de9..76c2bb2 100644 --- a/121.md +++ b/121.md @@ -43,7 +43,7 @@ print发起的语句,在程序中主要是将某些东西打印出来,还记 本来,在print语句中,字符串后面会接一个`\n`符号。即换行。但是,如果要在一个字符串后面跟着逗号,那么换行就取消了,意味着两个字符串"hello","world"打印在同一行。 -或许现在体现的还不时很明显,如果换一个方法,就显示出来了。(下面用到了一个被称之为循环的语句,下一节会重点介绍。 +或许现在体现得还不是很明显,如果换一个方法,就显示出来了。(下面用到了一个被称之为循环的语句,下一节会重点介绍。 >>> for i in [1,2,3,4,5]: ... print i @@ -234,4 +234,4 @@ python只要一行就完成了。 [总目录](./index.md)   |   [上节:运算符](./120.md)   |   [下节:语句(2)](./122.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From f3d34173a0b9e1c02ca77ed5b03201d74356b4c6 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 23:13:58 +0800 Subject: [PATCH 097/288] Update 123.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.改动ls_line = ['Hello', 'I am qiwsir', 'Welcome you', ''] 2.新增dict. iteritems(),dict.itervalues(),dict.iterkeys() 仅在Python2中,在Python3版本中没有。 --- 123.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/123.md b/123.md index a0802d2..0a00eb0 100644 --- a/123.md +++ b/123.md @@ -56,8 +56,8 @@ 以上的循环举例中,显示了对str的字符依次获取,也涉及了list,感觉不过瘾呀。那好,看下面对list的循环: - >>> ls_line - ['Hello', 'I am qiwsir', 'Welcome you', ''] + >>> ls_line = ['Hello', 'I am qiwsir', 'Welcome you', ''] + >>> for word in ls_line: ... print word ... @@ -110,16 +110,16 @@ 在工程实践中,你一定会遇到非常大的字典。用上面的方法,要把所有的内容都读入内存,内存东西多了,可能会出麻烦。为此,Python中提供了另外的方法。 - >>> for k,v in d.iteritems(): + >>> for k,v in d.iteritems(): #注意:仅在Python2中可用。 print k + "-->" + v website-->www.itdiffer.com lang-->python author-->laoqi -这里是循环一个迭代器,迭代器在循环中有很多优势。除了刚才的`dict.iteritems()`之外,还有`dict.itervalues()`,`dict.iterkeys()`供你选用。 +这里是循环一个迭代器,迭代器在循环中有很多优势。除了刚才的`dict.iteritems()`之外,还有`dict.itervalues()`,`dict.iterkeys()`供你选用(以上三个iter-()都只用在Python2中,Python3中没有。)。 - >>> d.iteritems() + >>> d.iteritems() #注意:仅在Python2中可用。 至于对元组的循环,读者自行尝试即可。 @@ -287,4 +287,4 @@ [总目录](./index.md)   |   [上节:语句(2)](./122.md)   |   [下节:语句(4)](./124.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From c24dba86770d0cfe49df228ffbeedaebac944303 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 23:24:27 +0800 Subject: [PATCH 098/288] Update 123.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 你已经知道了字符串str、列表list、字典dict、元组tuple、集合set都是可迭代的。 --- 123.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/123.md b/123.md index a0802d2..73dafc5 100644 --- a/123.md +++ b/123.md @@ -152,7 +152,7 @@ 从返回结果,我们知道,列表[1,2,3]是可迭代的。 -当然,并不是要你在使用for循环之前,非要判断某个对象是否可迭代。因为至此,你已经晓得了字符串、列表、字典、元组都是可迭代的。 +当然,并不是要你在使用for循环之前,非要判断某个对象是否可迭代。因为至此,你已经知道了字符串str、列表list、字典dict、元组tuple、集合set都是可迭代的。 ##range(start,stop[, step]) @@ -287,4 +287,4 @@ [总目录](./index.md)   |   [上节:语句(2)](./122.md)   |   [下节:语句(4)](./124.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 69bf22639edf19f0f66da10ab8e6a23f1a43ddc8 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sat, 26 Mar 2016 23:42:40 +0800 Subject: [PATCH 099/288] Update 123.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 100以内的list, 应该是到101,所以有几次小改动。如:range(0,100,2)改成 range(0,101,2) --- 123.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/123.md b/123.md index a0802d2..1e3152b 100644 --- a/123.md +++ b/123.md @@ -231,7 +231,7 @@ 有了这个内置函数,很多事情就简单了。比如: - >>> range(0,100,2) + >>> range(0,101,2) [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98] 100以内的自然数中的偶数组成的list,就非常简单地搞定了。 @@ -250,7 +250,7 @@ **例:**找出100以内的能够被3整除的正整数。 -**分析:**这个问题有两个限制条件,第一是100以内的正整数,根据前面所学,可以用range(1,100)来实现;第二个是要解决被3整除的问题,假设某个正整数n,这个数如果能够被3整除,也就是n%3(%是取余数)为0.那么如何得到n呢,就是要用for循环。 +**分析:**这个问题有两个限制条件,第一是100以内的正整数,根据前面所学,可以用range(1,101)来实现;第二个是要解决被3整除的问题,假设某个正整数n,这个数如果能够被3整除,也就是n%3(%是取余数)为0.那么如何得到n呢,就是要用for循环。 以上做了简单分析,要实现流程,还需要细化一下。按照前面曾经讲授过的一种方法,要画出问题解决的流程图。 @@ -266,7 +266,7 @@ aliquot = [] - for n in range(1,100): + for n in range(1,101): if n%3 == 0: aliquot.append(n) @@ -280,11 +280,11 @@ 不过,感觉有点麻烦,其实这么做就可以了: - >>> range(3,100,3) + >>> range(3,101,3) [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99] ------ [总目录](./index.md)   |   [上节:语句(2)](./122.md)   |   [下节:语句(4)](./124.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 0b7e5c1ab11edfc905f976babc36ad6958dd532d Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sun, 27 Mar 2016 17:24:19 +0800 Subject: [PATCH 100/288] Update 124.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 少量代码修改,增加部分代码开头的赋值语句,以免初学者不明白。 一处错别字:当时,不能直接对这个字符串使用`enumerate()` -->但是,不能直接对这个字符串使用`enumerate()` --- 124.md | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/124.md b/124.md index cf6efcd..2eca40c 100644 --- a/124.md +++ b/124.md @@ -72,10 +72,8 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 下面是比较特殊的情况,参数是一个序列数据的时候,生成的结果样子: - >>> a - 'qiwsir' - >>> c - [1, 2, 3] + >>> a ='qiwsir' + >>> c = [1, 2, 3] >>> zip(c) [(1,), (2,), (3,)] >>> zip(a) @@ -137,8 +135,8 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 以上两种写法那个更好呢?前者?后者?哈哈。我看差不多了。 - >>> result - [(2, 11), (4, 13), (6, 15), (8, 17)] + >>> result = [(2, 11), (4, 13), (6, 15), (8, 17)] + >>> zip(*result) [(2, 4, 6, 8), (11, 13, 15, 17)] @@ -151,7 +149,7 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 **解析:** 解法有几个,如果用for循环,可以这样做(当然,看官如果有方法,欢迎贴出来)。 - + >>> myinfor = {"name":"qiwsir","site":"qiwsir.github.io","lang":"python"} >>> infor = {} >>> for k,v in myinfor.items(): ... infor[v]=k @@ -182,7 +180,7 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 ##enumerate 这是一个有意思的内置函数,本来我们可以通过`for i in range(len(list))`的方式得到一个list的每个元素索引,然后在用list[i]的方式得到该元素。如果要同时得到元素索引和元素怎么办?就是这样了: - + >>> week = ['monday', 'sunday', 'friday'] >>> for i in range(len(week)): ... print week[i]+' is '+str(i) #注意,i是int类型,如果和前面的用+连接,必须是str类型 ... @@ -208,6 +206,7 @@ python中提供了一个内置函数enumerate,能够实现类似的功能 >>> seasons = ['Spring', 'Summer', 'Fall', 'Winter'] >>> list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] + >>> list(enumerate(seasons, start=1)) [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')] @@ -230,7 +229,7 @@ python中提供了一个内置函数enumerate,能够实现类似的功能 >>> raw = "Do you love Canglaoshi? Canglaoshi is a good teacher." -这是所要求的那个字符串,当时,不能直接对这个字符串使用`enumerate()`,因为它会变成这样: +这是所要求的那个字符串,但是,不能直接对这个字符串使用`enumerate()`,因为它会变成这样: >>> list(enumerate(raw)) [(0, 'D'), (1, 'o'), (2, ' '), (3, 'y'), (4, 'o'), (5, 'u'), (6, ' '), (7, 'l'), (8, 'o'), (9, 'v'), (10, 'e'), (11, ' '), (12, 'C'), (13, 'a'), (14, 'n'), (15, 'g'), (16, 'l'), (17, 'a'), (18, 'o'), (19, 's'), (20, 'h'), (21, 'i'), (22, '?'), (23, ' '), (24, 'C'), (25, 'a'), (26, 'n'), (27, 'g'), (28, 'l'), (29, 'a'), (30, 'o'), (31, 's'), (32, 'h'), (33, 'i'), (34, ' '), (35, 'i'), (36, 's'), (37, ' '), (38, 'a'), (39, ' '), (40, 'g'), (41, 'o'), (42, 'o'), (43, 'd'), (44, ' '), (45, 't'), (46, 'e'), (47, 'a'), (48, 'c'), (49, 'h'), (50, 'e'), (51, 'r'), (52, '.')] @@ -303,4 +302,4 @@ python有一个非常有意思的功能,就是list解析,就是这样的: [总目录](./index.md)   |   [上节:语句(3)](./123.md)   |   [下节:语句(5)](./125.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From e5fbfd70917d3592da5ee0907db4afd737e6d677 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sun, 27 Mar 2016 17:59:56 +0800 Subject: [PATCH 101/288] Update 125.md --- 125.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/125.md b/125.md index 085299b..afe2436 100644 --- a/125.md +++ b/125.md @@ -7,7 +7,7 @@ while,翻译成中文是“当...的时候”,这个单词在英语中,常 while 年龄大于60岁:-------->当年龄大于60岁的时候 退休 -------->凡是符合上述条件就执行的动作 -展开想象,如果制作一道门,这道门就是用上述的条件调控开关的,假设有很多人经过这个们,报上年龄,只要年龄大于60,就退休(门打开,人可以出去),一个接一个地这样循环下去,突然有一个人年龄是50,那么这个循环在他这里就停止,也就是这时候他不满足条件了。 +展开想象,如果制作一道门,这道门就是用上述的条件调控开关的,假设有很多人经过这个门,报上年龄,只要年龄大于60,就退休(门打开,人可以出去),一个接一个地这样循环下去,突然有一个人年龄是50,那么这个循环在他这里就停止,也就是这时候他不满足条件了。 这就是while循环。写一个严肃点的流程,可以看下图: @@ -90,7 +90,7 @@ while,翻译成中文是“当...的时候”,这个单词在英语中,常 import random - number = random.randint(1,101) + number = random.randint(1,100) guess = 0 @@ -108,7 +108,7 @@ while,翻译成中文是“当...的时候”,这个单词在英语中,常 print "OK, you are good.It is only %d, then you successed." % guess break elif number > int(num_input): - print "your number is more less." + print "your number is smaller." elif number < int(num_input): print "your number is bigger." else: @@ -159,7 +159,7 @@ a=8的时候,执行循环体中的break,跳出循环,执行最后的打印 ##while...else -这两个的配合有点类似if ... else,只需要一个例子列为就理解了,当然,一遇到else了,就意味着已经不在while循环内了。 +这两个的配合有点类似if ... else,只需要一个例子就可以理解。 当然,一遇到else了,就意味着已经不在while循环内了。 #!/usr/bin/env python @@ -210,4 +210,4 @@ a=8的时候,执行循环体中的break,跳出循环,执行最后的打印 [总目录](./index.md)   |   [上节:语句(4)](./124.md)   |   [下节:文件(1)](./126.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From d175bbe380b34b74c02973b008662e875e7e00b5 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sun, 27 Mar 2016 18:59:37 +0800 Subject: [PATCH 102/288] Update 126.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 错别字纠正 --- 126.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/126.md b/126.md index 65607f3..72d0f73 100644 --- a/126.md +++ b/126.md @@ -72,7 +72,7 @@ ... >>> -如果看官没有遇到上面问题,可以试试。这不是什么错误,是因为前一次已经读取了文件内容,并且到了文件的末尾了。再重复操作,就是从末尾开始继续读了。当然显示不了什么东西,但是python并不认为这是错误,因为后面就会讲到,或许在这次读取之前,已经又向文件中追加内容了。那么,如果要再次读取怎么办?就从新来一边好了。这就好比有一个指针在指着文件中的每一行,每读完一行,指针向移动一行。直到指针指向了文件的最末尾。当然,也有办法把指针移动到任何位置。 +如果看官没有遇到上面问题,可以试试。这不是什么错误,是因为前一次已经读取了文件内容,并且到了文件的末尾了。再重复操作,就是从末尾开始继续读了。当然显示不了什么东西,但是python并不认为这是错误,因为后面就会讲到,或许在这次读取之前,已经又向文件中追加内容了。那么,如果要再次读取怎么办?就重新来一遍好了。这就好比有一个指针在指着文件中的每一行,每读完一行,指针向下移动一行,直到指针指向了文件的最末尾。当然,也有办法把指针移动到任何位置。 特别提醒看官,因为当前的交互模式是在该文件所在目录启动的,所以,就相当于这个实验室和文件130.txt是同一个目录,这时候我们打开文件130.txt,就认为是在本目录中打开,如果文件不是在本目录中,需要写清楚路径。 @@ -193,4 +193,4 @@ [总目录](./index.md)   |   [上节:语句(5)](./125.md)   |   [下节:文件(2)](./127.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 14a47a2cc0aee438d85afbef1922698d85d6283e Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sun, 27 Mar 2016 22:15:39 +0800 Subject: [PATCH 103/288] Update 129.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 部分错别字更正 --- 129.md | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/129.md b/129.md index e1a09b6..31fafb8 100644 --- a/129.md +++ b/129.md @@ -88,11 +88,11 @@ **问题描述** -如果将一句话作为一个字符串,那么这个字符串中必然会有空格(这里仅讨论英文),比如"How are you.",但有的时候,会在两个单词之间多大一个空格。现在的任务是,如果一个字符串中有连续的两个空格,请把它删除。 +如果将一句话作为一个字符串,那么这个字符串中必然会有空格(这里仅讨论英文),比如"How are you.",但有的时候,会在两个单词之间多打一个空格。现在的任务是,如果一个字符串中有连续的两个空格,请把它删除。 **解析** -对于一个字符串中有空格,可以使用[《字符串(4)》](./109.md)中提到的`strip()`等。但是,它不是仅仅去掉一个空格,而是把字符串两遍的空格都去掉。都去掉似乎也没有什么关系,再用空格把单词拼起来就好了。 +对于一个字符串中有空格,可以使用[《字符串(4)》](./109.md)中提到的`strip()`等。但是,它不是仅仅去掉一个空格,而是把字符串两边的空格都去掉。都去掉似乎也没有什么关系,再用空格把单词拼起来就好了。 按照这个思路,我这样写代码,供你参考(更建议你先写出一段来,然后我们两个对照)。 @@ -122,7 +122,7 @@ 查找原因。 -从输出中已经清楚表示了。当执行`string.split(" ")`的时候,是以空格为分割符,将字符串分割,并返回列表。列表中元素是由单词组成。原来字符串中单词之间的空格已经被作为分隔符,那么列表中单词两遍就没有空格了。所以,前面代码中就无需在用`strip()`去删除空格。另外,特别要注意的是,有两个空格连着呢,其中一个空格作为分隔符,另外一个空格就作为列表元素被返回了。这样一来,分割之后的操作都无作用了。 +从输出中已经清楚表示了。当执行`string.split(" ")`的时候,是以空格为分割符,将字符串分割,并返回列表。列表中元素是由单词组成。原来字符串中单词之间的空格已经被作为分隔符,那么列表中单词两边就没有空格了。所以,前面代码中就无需在用`strip()`去删除空格。另外,特别要注意的是,有两个空格连着呢,其中一个空格作为分隔符,另外一个空格就作为列表元素被返回了。这样一来,分割之后的操作都无作用了。 看官是否明白错误原因了? @@ -156,11 +156,13 @@ OK!完美地解决了问题,去除了code前面的一个空格。 **问题描述** ->根據高德納(Donald Ervin Knuth)的《計算機程序設計藝術》(The Art of Computer Programming),1150年印度數學家Gopala和金月在研究箱子包裝物件長宽剛好為1和2的可行方法數目時,首先描述這個數列。 在西方,最先研究這個數列的人是比薩的李奧納多(義大利人斐波那契 Leonardo Fibonacci),他描述兔子生長的數目時用上了這數列。 +根据高德纳(Donald Ervin Knuth)的《计算机程序设计艺术》(The Art of Computer Programming),1150年印度数学家Gopala和金月在研究箱子包装物件长宽刚好为1和2的可行方法数目时,首先描述这个数列。在西方,最先研究这个数列的人是比萨的列奥那多(意大利人斐波那契Leonardo Fibonacci),他描述兔子生长的数目时用上了这数列。 ->第一個月初有一對剛誕生的兔子;第二個月之後(第三個月初)牠們可以生育,每月每對可生育的兔子會誕生下一對新兔子;兔子永不死去 - ->假設在n月有可生育的兔子總共a對,n+1月就總共有b對。在n+2月必定總共有a+b對: >因為在n+2月的時候,前一月(n+1月)的b對兔子可以存留至第n+2月(在當月屬於新誕生的兔子尚不能生育)。而新生育出的兔子對數等於所有在n月就已存在的a對 +第一个月初有一对刚诞生的兔子 +第二个月之后(第三个月初)它们可以生育 +每月每对可生育的兔子会诞生下一对新兔子 +兔子永不死去 +假设在n月有兔子总共a对,n+1月总共有b对。在n+2月必定总共有a+b对:因为在n+2月的时候,前一月(n+1月)的b对兔子可以存留至第n+2月(在当月属于新诞生的兔子尚不能生育)。而新生育出的兔子对数等于所有在n月就已存在的a对 上面故事是一个著名的数列——斐波那契数列——的起源。斐波那契数列用数学方式表示就是: @@ -168,7 +170,7 @@ OK!完美地解决了问题,去除了code前面的一个空格。 a1 = 1 (n=1) a[n] = a[n-1] + a[n-2] (n>=2) -我们要做的事情是用程序计算出n=100是的值。 +我们要做的事情是用程序计算出n=100时的值。 在解决这个问题之前,你可以先观看一个[关于斐波那契数列数列的视频](http://swf.ws.126.net/openplayer/v02/-0-2_M9HKRT25D_M9HNA0UNO-vimg1_ws_126_net//image/snapshot_movie/2014/1/6/L/M9HNA8H6L-.swf),注意,请在墙内欣赏。 From 709cd591ff2f5c9de6d18ee1bada2714c801db18 Mon Sep 17 00:00:00 2001 From: Frank Wang Date: Sun, 27 Mar 2016 22:55:01 +0800 Subject: [PATCH 104/288] Update 130.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 错别字更正 --- 130.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/130.md b/130.md index e99baeb..e405843 100644 --- a/130.md +++ b/130.md @@ -89,7 +89,7 @@ Enter any module name to get more help. Or, type "modules spam" to search for modules whose descriptions contain the word "spam". -因为太多,无法全部显示。你可以子线观察一下,是不是有我们前面已经用过的那个`math`、`random`模块呢? +因为太多,无法全部显示。你可以仔细观察一下,是不是有我们前面已经用过的那个`math`、`random`模块呢? 如果是在python交互模式`>>>`下,比如要得到有关math模块的更多帮助,可以输入`>>> help("math")`,如果是在帮助模式`help>`下,直接输入`>math`就能得到关于math模块的详细信息。简直太贴心了。 @@ -148,7 +148,7 @@ dir() 函数适用于所有对象类型,包括字符串、整数、列表、 ##检查python对象 -前面已经好几次提到了“对象(object)”这个词,但一直没有真正定义它。编程环境中的对象很象现实世界中的对象。实际的对象有一定的形状、大小、重量和其它特征。实际的对象还能够对其环境进行响应、与其它对象交互或执行任务。计算机中的对象试图模拟我们身边现实世界中的对象,包括象文档、日程表和业务过程这样的抽象对象。 +前面已经好几次提到了“对象(object)”这个词,但一直没有真正定义它。编程环境中的对象很像现实世界中的对象。实际的对象有一定的形状、大小、重量和其它特征。实际的对象还能够对其环境进行响应、与其它对象交互或执行任务。计算机中的对象试图模拟我们身边现实世界中的对象,包括文档、日程表和业务过程这样的抽象对象。 其实,我总觉得把object翻译成对象,让人感觉很没有具象的感觉,因为在汉语里面,对象是一个很笼统的词汇。另外一种翻译,流行于台湾,把它称为“物件”,倒是挺不错的理解。当然,名词就不纠缠了,关键是理解内涵。关于面向对象编程,可以阅读维基百科的介绍——[面向对象程序设计](http://zh.wikipedia.org/zh/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1#.E7.89.A9.E4.BB.B6.E5.B0.8E.E5.90.91.E7.9A.84.E8.AF.AD.E8.A8.80)——先了解大概。 @@ -156,7 +156,7 @@ dir() 函数适用于所有对象类型,包括字符串、整数、列表、 对于面向对象的类和类实例也是如此。例如,可以看到每个Python符串都被赋予了一些属性, dir()函数揭示了这些属性。 -于是在计算机术语中,对象是拥有标识和值的事物,属于特定类型、具有特定特征和以特定方式执行操作。并且,对象从一个或多个父类继承了它们的许多属性。除了关键字和特殊符号(象运算符,如 + 、 - 、 * 、 ** 、 / 、 % 、 < 、 > 等)外,Python 中的所有东西都是对象。Python具有一组丰富的对象类型:字符串、整数、浮点、列表、元组、字典、函数、类、类实例、模块、文件等。 +于是在计算机术语中,对象是拥有标识和值的事物,属于特定类型、具有特定特征和以特定方式执行操作。并且,对象从一个或多个父类继承了它们的许多属性。除了关键字和特殊符号(像运算符,如 + 、 - 、 * 、 ** 、 / 、 % 、 < 、 > 等)外,Python 中的所有东西都是对象。Python具有一组丰富的对象类型:字符串、整数、浮点、列表、元组、字典、函数、类、类实例、模块、文件等。 当您有一个任意的对象(也许是一个作为参数传递给函数的对象)时,可能希望知道一些关于该对象的情况。如希望python告诉我们: @@ -171,10 +171,10 @@ dir() 函数适用于所有对象类型,包括字符串、整数、列表、 并非所有对象都有名称,但那些有名称的对象都将名称存储在其 `__name__` 属性中。注:名称是从对象而不是引用该对象的变量中派生的。 >>> dir() #dir()函数 - ['GFileDescriptorBased', 'GInitiallyUnowned', 'GPollableInputStream', 'GPollableOutputStream', '__builtins__', '__doc__', '__name__', '__package__', 'keyword', 'math'] + ['__builtins__', '__doc__', '__name__', '__package__', 'keyword', 'math'] >>> directory = dir #新变量 >>> directory() #跟dir()一样的结果 - ['GFileDescriptorBased', 'GInitiallyUnowned', 'GPollableInputStream', 'GPollableOutputStream', '__builtins__', '__doc__', '__name__', '__package__', 'directory', 'keyword', 'math'] + ['__builtins__', '__doc__', '__name__', '__package__', 'directory', 'keyword', 'math'] >>> dir.__name__ #dir()的名字 'dir' >>> directory.__name__ @@ -365,4 +365,4 @@ python文档的网址:[https://docs.python.org/2/](https://docs.python.org/2/) [总目录](./index.md)   |   [上节:练习](./129.md)   |   [下节:函数(1)](./201.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From c6a11038ca9d7f29a6fbd1ae909e5e1105e2d9a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 28 Mar 2016 11:28:20 +0800 Subject: [PATCH 105/288] p3 --- 112.md | 111 ++++++++++++++++++++++++++++----------------------------- 1 file changed, 55 insertions(+), 56 deletions(-) diff --git a/112.md b/112.md index 6f13f5e..b2c3d3e 100644 --- a/112.md +++ b/112.md @@ -4,7 +4,9 @@ #列表(2) -上一节中已经谈到,list是python的苦力,那么它都有哪些函数呢?或者它或者对它能做什么呢?在交互模式下这么操作,就看到有关它的函数了。 +“列表是Python的苦力”,那么它或者对它能做什么呢? + +在交互模式下这么操作,就看到有关它的函数或方法了。 >>> dir(list) ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'] @@ -13,15 +15,15 @@ >'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort' -下面注意对这些函数进行说明和演示。这都是在编程实践中常常要用到的。 +这几个都是在编程实践中常常要用到的。 -##list函数 +##常用的列表函数 ###append和extend -[《列表(1)》](./111.md)中,对list的基本操作提到了list.append(x),也就是将某个元素x 追加到已知的一个list后边。 +[《列表(1)》](./111.md)中,对列表的基本操作提到了`list.append(x)`,也就是将某个元素`x` 追加到已知的一个列表后边。 -除了将元素追加到list中,还能够将两个list合并,或者说将一个list追加到另外一个list中。按照前文的惯例,还是首先看[官方文档](https://docs.python.org/2/tutorial/datastructures.html)中的描述: +除了将元素追加到列表中,还能够将两个列表合并,或者说将一个列表追加到另外一个列表中。按照前文的惯例,还是首先看[官方文档](https://docs.python.org/2/tutorial/datastructures.html)中的描述: >list.extend(L) @@ -31,21 +33,21 @@ 官方文档的这句话翻译过来: ->通过将所有元素追加到已知list来扩充它,相当于a[len(a):]= L +通过将所有元素追加到已知列表来扩充它,相当于`a[len(a):]= L`。 -英语太烂,翻译太差。直接看例子,更明白 +英语太烂,翻译太差。直接看例子,更明白。 - >>> la - [1, 2, 3] - >>> lb - ['qiwsir', 'python'] + >>> la = [1, 2, 3] + >>> lb = ['qiwsir', 'python'] >>> la.extend(lb) >>> la [1, 2, 3, 'qiwsir', 'python'] >>> lb ['qiwsir', 'python'] -上面的例子,显示了如何将两个list,一个是la,另外一个lb,将lb追加到la的后面,也就是把lb中的所有元素加入到la中,即让la扩容。 +变量`la`指向一个列表对象;变量`lb`也指向一个列表对象。为了简单,就说成`la`和`lb`两个列表。 + +将lb追加到la的后面,也就是把lb中的所有元素加入到la中,即让la扩容。 学程序一定要有好奇心,我在交互环境中,经常实验一下自己的想法,有时候是比较愚蠢的想法。 @@ -60,74 +62,80 @@ File "", line 1, in TypeError: 'int' object is not iterable -从上面的实验中,看官能够有什么心得?原来,如果extend(str)的时候,str被以字符为单位拆开,然后追加到la里面。 +仔细观察,能看出什么来吗? + +原来,如果`extend(str)`的时候,字符串被以字符为单位拆开,然后追加到la里面。 如果extend的对象是数值型,则报错。 -所以,extend的对象是一个list,如果是str,则python会先把它按照字符为单位转化为list再追加到已知list。 +extend的对象是一个列表,如果是字符串,则Python会先把它按照字符为单位转化为列表再追加到已知列表后面。 不过,别忘记了前面官方文档的后半句话,它的意思是: - >>> la - [1, 2, 3, 'a', 'b', 'c'] - >>> lb - ['qiwsir', 'python'] + >>> la = [1, 2, 3, 'a', 'b', 'c'] + >>> lb = ['qiwsir', 'python'] >>> la[len(la):]=lb >>> la [1, 2, 3, 'a', 'b', 'c', 'qiwsir', 'python'] -list.extend(L) 等效于 list[len(list):] = L,L是待并入的list +`list.extend(L)` 等效于 `list[len(list):] = L`,L是待并入的列表。 -联想到到[上一讲](./111.md)中的一个list函数list.append(),有类似之处。 +联想到到[上一讲](./111.md)中的一个list函数`list.append()`,有类似之处。 >extend(...) > L.extend(iterable) -- extend list by appending elements from the iterable 上面是在交互模式中输入`help(list.extend)`后得到的说明。这是非常重要而且简单的获得文档帮助的方法。 -从上面内容可知,extend函数也是将另外的元素增加到一个已知列表中,其元素必须是iterable,什么是iterable?这个从现在开始,后面会经常遇到,所以是要搞搞清楚的。 +该文档中出现了iterable,什么是iterable?这个从现在开始,会经常遇到,所以是要搞搞清楚的。 ->iterable,中文含义是“可迭代的”。在python中,还有一个词,就是iterator,这个叫做“迭代器”。这两者有着区别和联系。不过,这里暂且不说那么多,说多了就容易糊涂,我也糊涂了。 +>iterable,中文含义是“可迭代的”。在Python中,还有一个词,就是iterator,这个叫做“迭代器”。这两者有着区别和联系。不过,这里暂且不说那么多,说多了就容易糊涂,我也糊涂了。 为了解释iterable(可迭代的),又引入了一个词“迭代”,什么是迭代呢? >尽管我们很多文档是用英文写的,但是,如果你能充分利用汉语来理解某些名词,是非常有帮助的。因为在汉语中,不仅仅表音,而且能从词语组合中体会到该术语的含义。比如“激光”,这是汉语。英语是从"light amplification by stimulated emission of radiation"化出来的"laser",它是一个造出来的词。因为此前人们不知道那种条件下发出来的是什么。但是汉语不然,反正用一个“光”就可以概括了,只不过这个“光”不是传统概念中的“光”,而是由于“受激”辐射得到的光,故名“激光”。是不是汉语很牛叉? ->“迭”在汉语中的意思是“屡次,反复”。如:高潮迭起。那么跟“代”组合,就可以理解为“反复‘代’”,是不是有点“子子孙孙”的意思了?“结婚-生子-子成长-结婚-生子-子成长-...”,你是不是也在这个“迭代”的过程中呢? +>“迭”在汉语中的意思是“屡次,反复”。如:高潮迭起。那么跟“代”组合,就可以理解为“反复‘代’”,是不是有点“子子孙孙”的意思了?“结婚-生子-子成长-结婚-生子-子成长-...”,你是不是也在这个“迭代”的过程中呢? >给个稍微严格的定义,来自维基百科。“迭代是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。” 某些类型的对象是“可迭代”(iterable)的,这类数据类型有共同的特点。如何判断一个对象是不是可迭代的?下面演示一种方法。事实上还有别的方式。 >>> astr = "python" - >>> hasattr(astr,'__iter__') - False #Python2返回的结果。如果是Python3返回True. + >>> hasattr(astr, '__iter__') + False #Python2返回的结果。如果是Python3返回True. -这里用内建函数`hasattr()`判断一个字符串是否是可迭代的,在Python2中返回了False。用同样的方式可以判断: +这里用内建函数`hasattr()`判断一个字符串是否是可迭代的,在Python 2中返回了False,在Python 3中返回了True。那么,这里似乎有一个矛盾的命题,一个字符串,在不同的Python版本中,为什么不一样呢?请继续阅读。 - >>> alst = [1,2] - >>> hasattr(alst,'__iter__') +用同样的方式可以判断: + + >>> alst = [1, 2] + >>> hasattr(alst, '__iter__') True >>> hasattr(3, '__iter__') False -`hasattr()`的判断本质就是看那个类型中是否有`__iter__`函数。看官可以用`dir()`找一找,在数字、字符串、列表中,谁有`__iter__`。同样还可找一找dict,tuple两种类型对象是否含有这个方法。(同理Pyhon2中输入dir(str)没有`__iter__`.而Python3中输入dir(str)有`__iter__`。) +`hasattr()`的判断本质就是看那个类型中是否有`__iter__`函数。读者可以用`dir()`找一找,在数字、字符串、列表中,谁有`__iter__`。同样还可找一找`dict`和`tuple`两种类型对象是否含有这个方法。 + +如果你使用的是Pyhon 2,在`dir(str)`是无法发现`__iter__`的。但是,在Python 3中,则可以在`dir(str)`的结果中看到`__iter__`。这也是为什么在Python 3中,`hasattr(astr, '__iter__')`返回`True`的原因。 + +将前面的所有对于字符串的操作,你连贯起来看一下,在Python 2中,不认为它是可迭代的,这是针对字符串本身而言,然而如果对它进行了应用于可迭代对象的操作,它又能正常进行,因为Python把字符串做了自动转化;因此Python 3中干脆顺水推舟,把这个过程一气呵成。让它也具有`__iter__`属性了。 -以上穿插了一个新的概念“iterable”(可迭代的),现在回到extend上。这个函数需要的参数就是iterable类型的对象。 +以上穿插了一个新的概念“iterable”(可迭代的),现在回到`extend()`上。这个函数需要的参数就是iterable类型的对象。 - >>> new = [1,2,3] - >>> lst = ['python','qiwsir'] + >>> new = [1, 2, 3] + >>> lst = ['python', 'qiwsir'] >>> lst.extend(new) >>> lst ['python', 'qiwsir', 1, 2, 3] >>> new [1, 2, 3] -通过extend函数,将[1,2,3]中的每个元素都拿出来,然后塞到lst里面,从而得到了一个跟原来的对象元素不一样的列表,后面的比原来的多了三个元素。上面说的有点啰嗦,只不过是为了把过程完整表达出来。 +还要关注列表lst的变化。lst经过extend函数操作之后,变成了一个貌似“新”的列表。这句话有点别扭,“貌似新”的,之所以这么说,是因为对“新的”可能有不同的理解。 -还要关注一下,从上面的演示中可以看出,lst经过extend函数操作之后,变成了一个貌似“新”的列表。这句话好像有点别扭,“貌似新”的,之所以这么说,是因为对“新的”可能有不同的理解。不妨深挖一下。 +不妨深挖一下。 - >>> new = [1,2,3] + >>> new = [1, 2, 3] >>> id(new) 3072383244L @@ -143,7 +151,7 @@ list.extend(L) 等效于 list[len(list):] = L,L是待并入的list >>> id(lst) 3069501420L -看官注意到没有,虽然lst经过`extend()`方法之后,比原来扩容了,但是,并没有离开原来的“窝”,也就是在内存中,还是“旧”的,只不过里面的内容增多了。相当于两口之家,经过一番云雨之后,又增加了一个小宝宝,那么这个家是“新”的还是“旧”的呢?角度不同或许说法不一了。 +注意到没有?虽然lst经过`extend()`方法之后,比原来扩容了,但是,并没有离开原来的“窝”,也就是在内存中,还是“旧”的,只不过里面的内容增多了。相当于两口之家,经过一番云雨之后,又增加了一个小宝宝,那么这个家是“新”的还是“旧”的呢?角度不同或许说法不一了。 这就是列表的一个**重要特征:列表是可以修改的。这种修改,不是复制一个新的,而是在原地进行修改。** @@ -151,7 +159,7 @@ list.extend(L) 等效于 list[len(list):] = L,L是待并入的list **说明:**虽然这里的lst内容和上面的一样,但是,我从新在shell中输入,所以id会变化。也就是内存分配的“窝”的编号变了。 - >>> lst = ['python','qiwsir'] + >>> lst = ['python', 'qiwsir'] >>> id(lst) 3069501388L >>> lst.append(new) @@ -162,26 +170,15 @@ list.extend(L) 等效于 list[len(list):] = L,L是待并入的list 显然,`append()`也是原地修改列表。 -如果,对于`extend()`,提供的不是iterable类型对象,会如何呢? - >>> lst.extend("itdiffer") >>> lst ['python', 'qiwsir', 'i', 't', 'd', 'i', 'f', 'f', 'e', 'r'] -它把一个字符串"itdiffer"转化为['i', 't', 'd', 'i', 'f', 'f', 'e', 'r'],然后将这个列表作为参数,提供给extend,并将列表中的元素塞入原来的列表中。 +它把一个字符串`"itdiffer"`转化为`['i', 't', 'd', 'i', 'f', 'f', 'e', 'r']`,然后将这个列表作为参数,提供给`extend()`,并将列表中的元素塞入原来的列表中。 - >>> num_lst = [1,2,3] - >>> num_lst.extend(8) - Traceback (most recent call last): - File "", line 1, in - TypeError: 'int' object is not iterable - -这就报错了。错误提示中告诉我们,那个数字8,是int类型的对象,不是iterable的。 +这里讲述的两个让列表扩容的函数`append()`和`extend()`,它们的共同点是“都能原地修改列表”。 -这里讲述的两个让列表扩容的函数`append()`和`extend()`。从上面的演示中,可以看到他们有相同的地方: - -- 都是原地修改列表 -- 既然是原地修改,就不返回值 +对于“原地修改”还应该增加一个理解——没有返回值。 原地修改没有返回值,就不能赋值给某个变量。 @@ -192,12 +189,12 @@ list.extend(L) 等效于 list[len(list):] = L,L是待并入的list >>> one ['good', 'good', 'study', 'day', 'day', 'up'] -那么两者有什么不一样呢?看下面例子: +`append()`和`extend()`的区别呢?看下面例子: >>> lst = [1,2,3] >>> lst.append(["qiwsir","github"]) >>> lst - [1, 2, 3, ['qiwsir', 'github']] #append的结果 + [1, 2, 3, ['qiwsir', 'github']] #append的结果 >>> len(lst) 4 @@ -212,7 +209,7 @@ append是整建制地追加,extend是个体化扩编。 ###count -上面的len(L),可得到list的长度,也就是list中有多少个元素。python的list还有一个函数,就是数一数某个元素在该list中出现多少次,也就是某个元素有多少个。官方文档是这么说的: +`count()`是一个帮着我们弄清楚列表中元素重复出现次数的方法。官方文档是这么说的: >list.count(x) @@ -231,7 +228,7 @@ append是整建制地追加,extend是个体化扩编。 2 >>> la.count(2) 1 - >>> la.count(5) #NOTE:la中没有5,但是如果用这种方法找,不报错,返回的是数字0 + >>> la.count(5) #la中没有5,但是如果用这种方法找,不报错,返回的是数字0 0 ###index @@ -249,7 +246,7 @@ append是整建制地追加,extend是个体化扩编。 >>> la.index('qiwsir') 6 -x是list中的一个元素,list.index(x)能够检索到该元素在list中第一次出现的位置。这才是真正的索引,注意那个英文单词index。 +`x`是列表中的一个元素,`list.index(x)`能够检索到该元素在列表中第一次出现的位置。这才是真正的索引,注意那个英文单词index。 依然是上一条官方解释: @@ -259,6 +256,8 @@ x是list中的一个元素,list.index(x)能够检索到该元素在list中第 是不是说的非常清楚明白了? +中场休息,下节继续列表的方法。 + ------ [总目录](./index.md)   |   [上节:列表(1)](./111.md)   |   [下节:列表(3)](./113.md) From e75c420572b7ea8ab29c30f068c2efd216e8561f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 28 Mar 2016 14:21:01 +0800 Subject: [PATCH 106/288] p3 --- 113.md | 144 ++++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 97 insertions(+), 47 deletions(-) diff --git a/113.md b/113.md index 92d9953..7edf524 100644 --- a/113.md +++ b/113.md @@ -16,7 +16,7 @@ ###insert -前面有向list中追加元素的方法,那个追加是且只能是将新元素添加在list的最后一个。如: +`append()`或者`extend()`都是向列表中追加元素,“追加”是且只能是将新元素添加在list的最后一个。如: >>> all_users = ["qiwsir","github"] >>> all_users.append("io") @@ -25,7 +25,7 @@ 与`list.append(x)`类似,`list.insert(i,x)`也是对list元素的增加。只不过是可以在任何位置增加一个元素。 -还是先看[官方文档来理解](https://docs.python.org/2/tutorial/datastructures.html): +[官方文档](https://docs.python.org/2/tutorial/datastructures.html)如是说: >list.insert(i, x) @@ -33,10 +33,9 @@ 这次就不翻译了。如果看不懂英语,怎么了解贵国呢?一定要硬着头皮看英语,不仅能够学好程序,更能...(此处省略两千字) -根据官方文档的说明,我们做下面的实验,请看官从实验中理解: +根据官方文档的说明,我们做下面的实验: - >>> all_users - ['qiwsir', 'github', 'io'] + >>> all_users = ['qiwsir', 'github', 'io'] >>> all_users.insert("python") Traceback (most recent call last): File "", line 1, in @@ -52,7 +51,7 @@ >>> all_users ['python', 'http://', 'qiwsir', 'github', 'io'] -`list.insert(i, x)`中的i是将元素x插入到list中的位置,即将x插入到索引值是i的元素前面。注意,索引是从0开始的。 +`list.insert(i, x)`中的`i`是将元素`x`插入到列表中的位置,即将`x`插入到索引是`i`的元素前面。注意,索引是从0开始的。 有一种操作,挺有意思的,如下: @@ -67,16 +66,20 @@ 其实,还可以这样: - >>> a = [1,2,3] - >>> a.insert(9,777) + >>> a = [1, 2, 3] + >>> a.insert(9, 777) >>> a [1, 2, 3, 777] -也就是说,如果遇到那个i已经超过了最大索引值,会自动将所要插入的元素放到列表的尾部,即追加。 +也就是说,如果遇到那个`i`已经超过了最大索引值,会自动将所要插入的元素放到列表的尾部,即追加。 + +只不过,这样做的不多罢了。 + +最后,还要关注,`insert()`也是对列表原地修改,没有返回值,或者说返回值是`None`。 ###pop和remove -list中的元素,不仅能增加,还能被删除。删除list元素的方法有两个,它们分别是: +列表中的元素,不仅能增加,还能被删除。删除列表元素的方法有两个,它们分别是: >list.remove(x) @@ -86,48 +89,47 @@ list中的元素,不仅能增加,还能被删除。删除list元素的方法 > Remove the item at the given position in the list, and return it. If no index is specified, a.pop() removes and returns the last item in the list. (The square brackets around the i in the method signature denote that the parameter is optional, not that you should type square brackets at that position. You will see this notation frequently in the Python Library Reference.) -我这里讲授python,有一个习惯,就是用学习物理的方法。如果看官当初物理没有学好,那么一定是没有用这种方法,或者你的老师没有用这种教学法。这种方法就是:自己先实验,然后总结规律。 +读者如果一直跟着我的节奏在学习,应该体会到我们这里的一种学习方法了——先实验,然后总结规律。这是一种物理学的研究方法。 -先实验list.remove(x),注意看上面的描述。这是一个能够删除list元素的方法,同时上面说明告诉我们,如果x没有在list中,会报错。 +物理学,是科学的基础,特别是它所演化出来的科学研究方法,更是人类智慧的瑰宝。不忘初心,我是大物理系毕业的。 - >>> all_users - ['python', 'http://', 'qiwsir', 'github', 'io', 'algorithm'] +先实验`list.remove(x)`,注意看上面的描述。这是一个能够删除列表元素的方法,同时上面说明告诉我们,如果x没有在list中,会报错。 + + >>> all_users = ['python', 'http://', 'qiwsir', 'github', 'io', 'algorithm'] >>> all_users.remove("http://") - >>> all_users #的确是把"http://"删除了 + >>> all_users #的确是把"http://"删除了 ['python', 'qiwsir', 'github', 'io', 'algorithm'] + +在all_users所指向的列表中删除一个元素,一切都符合文档说明的要求,很顺利地完成了。 >>> all_users.remove("tianchao") #原list中没有“tianchao”,要删除,就报错。 Traceback (most recent call last): File "", line 1, in ValueError: list.remove(x): x not in list +如果列表中没有那个元素,非要删除不可,肯定报错。而且报错信息非常明确指出`x not in list`。这也是文档中已经陈述过的了。 + >>> lst = ["python","java","python","c"] >>> lst.remove("python") >>> lst ['java', 'python', 'c'] -重点解释一下第三个操作。哦,忘记一个提醒,我在前面的很多操作中,也都给列表的变量命名为lst,但是不是list,为什么呢?因为list是python的保留字。 +仔细观察,变量的名字`lst`,不是`list`,不能用`list`作为变量名字。因为`list`是Python的保留字。 -还是继续第三段操作,列表中有两个'python'字符串,当删除后,发现结果只删除了第一个'python'字符串,第二个还在。请仔细看前面的文档说明:**remove the first item ...** +再仔细观察,这个列表中有两个'python'字符串,当删除后,发现结果只删除了第一个'python'字符串,第二个还在。请仔细看前面的文档说明:**remove the first item ...** -注意两点: +所以,对`remove()`总结两点: -- 如果正确删除,不会有任何反馈。没有消息就是好消息。并且是对列表进行原地修改。 -- 如果所删除的内容不在list中,就报错。注意阅读报错信息:x not in list +- 如果正确删除,则删除第一个符合条件的对象。不会有任何反馈。没有消息就是好消息。它是对列表进行原地修改。 +- 如果所删除的内容不在列表中,就报错。注意阅读报错信息:x not in list ->什么是保留字?在python中,当然别的语言中也是如此啦。某些词语或者拼写是不能被用户拿来做变量/函数/类等命名,因为它们已经被语言本身先占用了。这些就是所谓保留字。在python中,以下是保留字,不能用于你自己变成中的任何命名。 +对于删除,能不能更友好一些?在删除之前,先判断一下这个元素是不是在列表中,如果在就删,不在就不删。 ->and, assert, break, class, continue, def, del, elif, else, except, exec, finally, for, from, global, if, import, in, is, lambda, not, or, pass, print, raise, return, try, while, with,yield - ->这些保留字,都是我们在编程中要用到的。有的你已经在前面遇到了。 - -看官是不是想到一个问题?如果能够在删除之前,先判断一下这个元素是不是在list中,如果在就删,不在就不删,不是更智能吗? - -如果看官想到这里,就是在编程的旅程上一进步。python的确让我们这么做。 +如果读者想到这里,就是在编程的旅程上一进步。Python的确让我们这么做。 >>> all_users ['python', 'qiwsir', 'github', 'io', 'algorithm'] - >>> "python" in all_users #这里用in来判断一个元素是否在list中,在则返回True,否则返回False + >>> "python" in all_users #这里用in来判断一个元素是否在list中,在则返回True,否则返回False True >>> if "python" in all_users: @@ -146,17 +148,25 @@ list中的元素,不仅能增加,还能被删除。删除list元素的方法 ... 'python' is not in all_users #因为已经删除了,所以就没有了。 -上述代码,就是两段小程序,我是在交互模式中运行的,相当于小实验。这里其实用了一个后面才会讲到的东西:if-else语句。不过,我觉得即使没有学习,你也能看懂,因为它非常接近自然语言了。 +上述代码,就是两段小程序,我是在交互模式中运行的,相当于小实验。 -另外一个删除list.pop([i])会怎么样呢?看看文档,做做实验。 +这里其实用了一个后面才会讲到的东西:if-else语句。 - >>> all_users - ['qiwsir', 'github', 'io', 'algorithm'] - >>> all_users.pop() #list.pop([i]),圆括号里面是[i],表示这个序号是可选的 - 'algorithm' #如果不写,就如同这个操作,默认删除最后一个,并且将该结果返回 - +不过,我觉得即使没有学习,你也能看懂,因为它非常接近自然语言了——这也正是Python语言的特点之一。 + +对于`remove()`,还有最后一个要交代的,它对列表的修改也是原地修改,正确实现删除后没有返回值。 + +另外一个删除`list.pop([i])`会怎么样呢?看看文档,做做实验。 + + >>> all_users = ['qiwsir', 'github', 'io', 'algorithm'] + >>> all_users.pop() + 'algorithm' >>> all_users ['qiwsir', 'github', 'io'] + +`list.pop([i])`,圆括号里面是`[i]`,表示这个参数是可选的,如果不写,也就是圆括号为空,默认删除最后一个,并且将删除的元素作为结果返回。提醒读者注意,它有返回值。 + +如果参数不为空,可以删除指定索引的元素,并将该元素作为返回值。 >>> all_users.pop(1) #指定删除编号为1的元素"github" 'github' @@ -168,14 +178,17 @@ list中的元素,不仅能增加,还能被删除。删除list元素的方法 >>> all_users #只有一个元素了,该元素编号是0 ['qiwsir'] - >>> all_users.pop(1) #但是非要删除编号为1的元素,结果报错。注意看报错信息 + >>> all_users.pop(1) #但是非要删除编号为1的元素,结果报错。注意看报错信息 Traceback (most recent call last): File "", line 1, in IndexError: pop index out of range #删除索引超出范围,就是1不在list的编号范围之内 -简单总结一下,`list.remove(x)`中的参数是列表中元素,即删除某个元素;`list.pop([i])`中的i是列表中元素的索引值,这个i用方括号包裹起来,意味着还可以不写任何索引值,如上面操作结果,就是删除列表的最后一个。 +简单总结一下: -给看官留下一个思考题,如果要像前面那样,能不能事先判断一下要删除的编号是不是在list的长度范围(用len(list)获取长度)以内?然后进行删除或者不删除操作。 +- `list.remove(x)`中的参数是列表中元素,即删除某个元素,且对列表原地修改,无返回值 +- `list.pop([i])`中的i是列表中元素的索引值,可选。为空则删除列表最后一个,否则删除索引为i的元素。并且将删除元素作为返回值。 + +给读者留下一个思考题,能不能事先判断一下要删除的元素的索引是不是在列表的长度范围(用len(list)获取长度)以内?然后进行删除或者不删除操作。 ###reverse @@ -186,19 +199,32 @@ reverse比较简单,就是把列表的元素顺序反过来。 >>> a [6, 1, 5, 3] -注意,是原地反过来,不是另外生成一个新的列表。所以,它没有返回值。跟这个类似的有一个内建函数reversed,建议读者了解一下这个函数的使用方法。 +注意,是原地反过来,不是另外生成一个新的列表。所以,它没有返回值。 + +跟本函数类似的有一个内建函数reversed,建议读者了解一下这个函数的使用方法。 >因为`list.reverse()`不返回值,所以不能实现对列表的反向迭代,如果要这么做,可以使用reversed函数。 ###sort -sort就是对列表进行排序。输入help(list.sort)调用帮助文档,可以得到如下内容: +sort就是对列表进行排序。输入help(list.sort)调用帮助文档,可以得到如下内容(Python2和Python3略有差异)。 -sort(...) - L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; #Python2版本 + >>> #Python 2 + >>> help(list.sort) + Help on method_descriptor: + + sort(...) + L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; cmp(x, y) -> -1, 0, 1 - - L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* #Python3版本(因为Python3中去掉了cmp函数) + + >>> #Python 3 + >>> help(list.sort) + Help on method_descriptor: + + sort(...) + L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* + +虽然文档说明中略有差异(读者通过本书以前的内容,应该能够理解差异的缘由),但是不影响操作。 >>> a = [6, 1, 5, 3] >>> a.sort() @@ -213,7 +239,7 @@ sort(...) 这样做,就实现了从大到小的排序。 -在前面的函数说明中,还有一个参数key,这个怎么用呢?不知道看官是否用过电子表格,里面就是能够设置按照哪个关键字进行排序。这里也是如此。 +在前面的函数说明中,还有一个参数key,这个怎么用呢?不知道读者是否用过电子表格,里面就是能够设置按照哪个关键字进行排序。这里也是如此。 >>> lst = ["python","java","c","pascal","basic"] >>> lst.sort(key=len) @@ -222,10 +248,34 @@ sort(...) 这是以字符串的长度为关键词进行排序。 -对于排序,也有一个更为常用的内建函数sorted。 +对于排序,也有一个更为常用的内建函数`sorted()`,你可以去探究一下用法。 顺便指出,排序是一个非常有研究价值的话题。不仅仅是现在这么一个函数。有兴趣的读者可以去网上搜一下排序相关知识。 +最后,对前文提到的“保留字”基于补充说明。 + +>什么是保留字?在Python中,当然别的语言中也是如此啦。某些词语或者拼写是不能被用户拿来做变量/函数/类等命名,因为它们已经被语言本身先占用了。这些就是所谓保留字。在Python中,以下是保留字,不能用于你自己变成中的任何命名。 + +在Python 2和Python 3中,都可以用下面的方式查看保留字,而且,注意,两个不同版本的保留字还有差别,虽然差别很小。 + +Python 2中: + + >>> import keyword + >>> keyword.kwlist + ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'] + >>> len(keyword.kwlist) + 31 + +Python 3中: + + >>> import keyword + >>> keyword.kwlist + ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] + >>> len(keyword.kwlist) + 33 + +列表的方法已经结束,但是列表的话题还没有完结,因为它还能和“字符串”搞在一起,需要辨析一番。 + ------ [总目录](./index.md)   |   [上节:列表(2)](./112.md)   |   [下节:列表和字符串](./114.md) From 6469ac79fb307e30868abd8ca5df99b1d090578f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 28 Mar 2016 15:09:42 +0800 Subject: [PATCH 107/288] p3 --- 114.md | 89 +++++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 60 insertions(+), 29 deletions(-) diff --git a/114.md b/114.md index e4acf1e..c465b13 100644 --- a/114.md +++ b/114.md @@ -1,14 +1,18 @@ >Then Peter came to him and said,"Lord, how many times must I forgive my brother who sins against me? As many as seven times?" Jesus said to him,"Not seven times, I tell you, but seventy-seven times?" (MATTHEW 18:21-22) -#回顾list和str +#回顾列表和字符串 -list和str两种类型数据,有不少相似的地方,也有很大的区别。本讲对她们做个简要比较,同时也是对前面有关两者的知识复习一下,所谓“温故而知新”。 +列表和字符串两种类型的对象,有不少相似的地方,也有很大的区别。 + +本讲对她们做个简要比较,同时也是对前面有关两者的知识复习一下,所谓“温故而知新”。 ##相同点 -###都属于序列类型的数据 +###都是序列 + +不管是组成列表的元素,还是组成字符串的字符,都可以从左向右,依次用`0, 1, 2, ...`这样的方式建立索引。而要得到一个或多个元素,可以使用切片。 -所谓序列类型的数据,就是说它的每一个元素都可以通过指定一个编号,行话叫做“偏移量”的方式得到,而要想一次得到多个元素,可以使用切片。偏移量从0开始,总元素数减1结束。 +关于序列的基本操作,对两者都适用。 例如: @@ -21,8 +25,9 @@ list和str两种类型数据,有不少相似的地方,也有很大的区别 'u' >>> welcome_str[:4] 'Welc' + >>> a = "python" - >>> a*3 + >>> a * 3 'pythonpythonpython' >>> git_list = ["qiwsir","github","io"] @@ -32,8 +37,9 @@ list和str两种类型数据,有不少相似的地方,也有很大的区别 'io' >>> git_list[0:2] ['qiwsir', 'github'] + >>> b = ['qiwsir'] - >>> b*7 + >>> b * 7 ['qiwsir', 'qiwsir', 'qiwsir', 'qiwsir', 'qiwsir', 'qiwsir', 'qiwsir'] 对于此类数据,下面一些操作是类似的: @@ -63,17 +69,13 @@ list和str两种类型数据,有不少相似的地方,也有很大的区别 >>> len(git_list) #得到元素数 3 -另外,前面的讲述中已经说明了关于序列的基本操作,此处不再重复。 - ##区别 -list和str的最大区别是:list是可以改变的,str不可变。这个怎么理解呢? +列表和字符串的最大区别是:列表是可以改变的,字符串是不可变。这个怎么理解呢? -首先看对list的这些操作,其特点是在原处将list进行了修改: +首先看对列表的这些操作,其根源在于列表可以进行修改,即列表是可变的。 - >>> git_list - ['qiwsir', 'github', 'io'] - + >>> git_list = ['qiwsir', 'github', 'io'] >>> git_list.append("python") >>> git_list ['qiwsir', 'github', 'io', 'python'] @@ -84,7 +86,7 @@ list和str的最大区别是:list是可以改变的,str不可变。这个怎 >>> git_list ['qiwsir', 'github.com', 'io', 'python'] - >>> git_list.insert(1,"algorithm") + >>> git_list.insert(1, "algorithm") >>> git_list ['qiwsir', 'algorithm', 'github.com', 'io', 'python'] @@ -95,7 +97,7 @@ list和str的最大区别是:list是可以改变的,str不可变。这个怎 >>> git_list ['qiwsir', 'github.com', 'io'] -以上这些操作,如果用在str上,都会报错,比如: +以上这些操作,如果用在字符串上,都会报错,比如: >>> welcome_str 'Welcome you' @@ -128,12 +130,19 @@ list和str的最大区别是:list是可以改变的,str不可变。这个怎 ##多维list -这个也应该算是两者的区别了,虽然有点牵强。在str中,里面的每个元素只能是字符,在list中,元素可以是任何类型的数据。前面见的多是数字或者字符,其实还可以这样: +这个也应该算是两者的区别了,虽然有点牵强。 + +在字符串里面的每个元素只能是字符;在列表中,元素可以是任何类型的数据。前面见的多是数字或者字符,其实还可以这样: + + >>> matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] + +这个列表的元素,是另外三个列表。这样的列表,称之为多维列表。如果读者学习过行列式,这就比较容易理解了。 - >>> matrix = [[1,2,3],[4,5,6],[7,8,9]] - >>> matrix = [[1,2,3],[4,5,6],[7,8,9]] >>> matrix[0][1] 2 + +当然,列表也可以是这样的: + >>> mult = [[1,2,3],['a','b','c'],'d','e'] >>> mult [[1, 2, 3], ['a', 'b', 'c'], 'd', 'e'] @@ -142,11 +151,13 @@ list和str的最大区别是:list是可以改变的,str不可变。这个怎 >>> mult[2] 'd' -以上显示了多维list以及访问方式。在多维的情况下,里面的list被当成一个元素对待。 +在多维的情况下,里面的list被当成一个元素对待。 + +##列表和字符串转化 -##list和str转化 +符合某些条件的情况下,可以实现列表和字符串之间的转化。会使用到`split()`和`join()`,对这两个函数,已经不陌生了,在前面字符串部分已经见过。 -以下涉及到的`split()`和`join()`在前面字符串部分已经见过。一回生,二回熟,这次再见面,特别是在已经学习了列表的基础上,应该有更深刻的理解。 +一回生,二回熟,这次再见面,特别是在已经学习了列表的基础上,应该有更深刻的理解。 ###str.split() @@ -156,21 +167,19 @@ list和str的最大区别是:list是可以改变的,str不可变。这个怎 >>>help(str.split) -得到了对这个内置函数的完整说明。**特别强调:**这是一种非常好的学习方法 - ->split(...) ->S.split([sep [,maxsplit]]) -> list of strings + split(...) + S.split([sep [,maxsplit]]) -> list of strings ->Return a list of the words in the string S, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator and empty strings are removed from the result. + Return a list of the words in the string S, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator and empty strings are removed from the result. -不管是否看懂上面这段话,都可以看例子。还是希望看官能够理解上面的内容。 +不管是否看懂上面这段话,都可以看例子。还是希望能够理解上面的内容。 >>> line = "Hello.I am qiwsir.Welcome you." >>> line.split(".") #以英文的句点为分隔符,得到list ['Hello', 'I am qiwsir', 'Welcome you', ''] - >>> line.split(".",1) #这个1,就是表达了上文中的:If maxsplit is given, at most maxsplit splits are done. + >>> line.split(".", 1) #这个1,就是表达了上文中的:If maxsplit is given, at most maxsplit splits are done. ['Hello', 'I am qiwsir.Welcome you.'] >>> name = "Albert Ainstain" #也有可能用空格来做为分隔符 @@ -190,7 +199,7 @@ list和str的最大区别是:list是可以改变的,str不可变。这个怎 ###"[sep]".join(list) -join可以说是split的逆运算,举例: +join可以说是split的逆运算,承接前面的操作: >>> name ['Albert', 'Ainstain'] @@ -212,6 +221,28 @@ join可以说是split的逆运算,举例: >>> " ".join(s.split()) #重新连接,不过有一点遗憾,am后面逗号还是有的。怎么去掉? 'I am, writing python book on line' +读者是否感到新奇,对于`join()`函数,其格式是`"sep".join(list)`,不是`list.join(sep)`。其实,`join()`是字符串的方法,不是列表的方法。 + + >>> help(str.join) + Help on method_descriptor: + + join(...) + S.join(iterable) -> str + + Return a string which is the concatenation of the strings in the + iterable. The separator between elements is S. + +不过,能传入`join()`的对象,或者说参数的值,也是有条件的。下面的就不行。 + + >>> a = [1,2,3,'a','b','c'] + >>> "+".join(a) + Traceback (most recent call last): + File "", line 1, in + "+".join(a) + TypeError: sequence item 0: expected str instance, int found + +“列表是苦力”,但是暂且让它干这么多。因为更多类型的对象依次登场,先让它到后台。 + ------ [总目录](./index.md)   |   [上节:列表(3)](./113.md)   |   [下节:元组](./115.md) From 7fd023e71ea07b29d580e9873def597589f70e54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 28 Mar 2016 15:48:46 +0800 Subject: [PATCH 108/288] p3 --- 115.md | 67 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 34 insertions(+), 33 deletions(-) diff --git a/115.md b/115.md index 2949c35..0bbddda 100644 --- a/115.md +++ b/115.md @@ -2,36 +2,40 @@ #元组 +元组是Python中的一种对象类型。它与之前的列表、字符串、整数、浮点数等并列。 + +但,因为它跟列表接近,经常被忽略。 + ##定义 先看一个例子: - >>>#变量引用str >>> s = "abc" >>> s 'abc' - >>>#如果这样写,就会是... - >>> t = 123,'abc',["come","here"] +这是一个简单的赋值,还可以这样写,这就是Python的与众不同之处。 + + >>> t = 123, 'abc', ["come","here"] >>> t (123, 'abc', ['come', 'here']) -上面例子中看到的变量t,并没有报错,也没有“最后一个有效”,而是将对象做为一个新的数据类型:tuple(元组),赋值给了变量t。 +不仅没有报错,也没有“最后一个有效”,而是将对象放到了一个圆括号里面。 -**元组是用圆括号括起来的,其中的元素之间用逗号隔开。(都是英文半角)** +这个带有圆括号的对象,就是一种新的对象(或数据)类型:tuple(元组)。 -元组中的元素类型是任意的python数据。 + >>> type(t) + #这是Python 3的结果,在Python 2中显示: ->这种类型,可以歪着想,所谓“元”组,就是用“圆”括号啦。 +**元组是用圆括号括起来的,其中的元素之间用逗号隔开。(都是英文半角)** ->其实,你不应该对元组陌生,还记得前面讲述字符串的格式化输出时,有这样一种方式: +元组中的元素类型是任意的Python对象(数据)。 - >>> print "I love %s, and I am a %s" % ('python', 'programmer') - I love python, and I am a programmer +>这种类型,可以歪着想,所谓“元”组,就是用“圆”括号啦。 ->这里的圆括号,就是一个元组。 +仅从前面那个例子,显而易见得出,元组是序列,这点上跟列表和字符串类似。 -显然,tuple是一种序列类型的数据,这点上跟list/str类似。它的特点就是其中的元素不能更改,这点上跟list不同,倒是跟str类似;它的元素又可以是任何类型的数据,这点上跟list相同,但不同于str。 +但元组中的元素不能更改,这点上跟列表不同,倒是跟str类似;它的元素又可以是任何类型的数据,这点上跟列表相同,但不同于字符串。 >>> t = 1,"23",[123,"abc"],("python","learn") #元素多样性,近list >>> t @@ -46,18 +50,16 @@ Traceback (most recent call last): File "", line 1, in AttributeError: 'tuple' object has no attribute 'append' - >>> -从上面的简单比较似乎可以认为,tuple就是一个融合了部分list和部分str属性的杂交产物。此言有理。 +从上面的简单比较似乎可以认为,元组就是一个融合了部分列表和部分字符串属性的杂交产物。此言有理。 ##索引和切片 -因为前面有了关于列表和字符串的知识,它们都是序列类型,元组也是。因此,元组的基本操作就和它们是一样的。 +元组是序列,因此,元组的基本操作就和列表和字符串相仿。 例如: - >>> t - (1, '23', [123, 'abc'], ('python', 'learn')) + >>> t = (1, '23', [123, 'abc'], ('python', 'learn')) >>> t[2] [123, 'abc'] >>> t[1:] @@ -68,7 +70,7 @@ >>> t[3][1] 'learn' -关于序列的基本操作在tuple上的表现,就不一一展示了。看官可以去试试。 +关于序列的基本操作在元组上的表现,就不一一展示了。读者可以去试试。 但是这里要特别提醒,如果一个元组中只有一个元素的时候,应该在该元素后面加一个半角的英文逗号。 @@ -80,16 +82,13 @@ >>> type(b) -以上面的例子说明,如果不加那个逗号,就不是元组,加了才是。这也是为了避免让python误解你要表达的内容。 +以上面的例子说明,如果不加那个逗号,就不是元组,加了才是。这也是为了避免让Python误解你要表达的内容。 -顺便补充:如果要想看一个对象是什么类型,可以使用`type()`函数,然后就返回该对象的类型。 +**所有在列表中可以修改列表的方法,在元组中,都失效。**因为元组不可修改。 -**所有在list中可以修改list的方法,在tuple中,都失效。** +分别用`list()`和`tuple()`能够实现两者的转化: -分别用list()和tuple()能够实现两者的转化: - - >>> t - (1, '23', [123, 'abc'], ('python', 'learn')) + >>> t = (1, '23', [123, 'abc'], ('python', 'learn')) >>> tls = list(t) #tuple-->list >>> tls [1, '23', [123, 'abc'], ('python', 'learn')] @@ -98,18 +97,20 @@ >>> t_tuple (1, '23', [123, 'abc'], ('python', 'learn')) -##tuple用在哪里? +##元组用在哪里? + +既然它是列表和字符串的杂合,它有什么用途呢?不是用列表和字符串都可以了吗? -既然它是list和str的杂合,它有什么用途呢?不是用list和str都可以了吗? +在很多时候,的确是用列表和字符串都可以了。但是,不要忘记,我们用计算机语言解决的问题不都是简单问题,就如同我们的自然语言一样,虽然有的词汇看似可有可无,用别的也能替换之,但是我们依然需要在某些情况下使用它们. -在很多时候,的确是用list和str都可以了。但是,看官不要忘记,我们用计算机语言解决的问题不都是简单问题,就如同我们的自然语言一样,虽然有的词汇看似可有可无,用别的也能替换之,但是我们依然需要在某些情况下使用它们. +一般认为,元组有这类特点,并且是它使用的情景: -一般认为,tuple有这类特点,并且也是它使用的情景: +- 元组比列表操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用元组代替列表。 +- 如果对不需要修改的数据进行 “写保护”,可以使代码更安全。使用元组而不是列表如同拥有一个隐含的 assert 语句,说明这一数据是常量。如果必须要改变这些值,则需要执行元组到列表的转换 (需要使用一个特殊的函数)。 +- 元组可以在字典(又一种对象类型,后面要讲述) 中被用做 key,但是列表不行。字典的key 必须是不可变的。元组本身是不可改变的,列表是可变的。 +- 元组可以用在字符串格式化中。 -- Tuple 比 list 操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用 tuple 代替 list。 -- 如果对不需要修改的数据进行 “写保护”,可以使代码更安全。使用 tuple 而不是 list 如同拥有一个隐含的 assert 语句,说明这一数据是常量。如果必须要改变这些值,则需要执行 tuple 到 list 的转换 (需要使用一个特殊的函数)。 -- Tuples 可以在 dictionary(字典,后面要讲述) 中被用做 key,但是 list 不行。Dictionary key 必须是不可变的。Tuple 本身是不可改变的,但是如果您有一个 list 的 tuple,那就认为是可变的了,用做 dictionary key 就是不安全的。只有字符串、整数或其它对 dictionary 安全的 tuple 才可以用作 dictionary key。 -- Tuples 可以用在字符串格式化中。 +元组很简单,不用过多的篇幅说明,但是,依然建议读者把它作为序列,依次按照序列的操作对元组进行实践。 ------ From 771e09f4b36537bbf800777fc85221fda3776b4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 28 Mar 2016 16:46:17 +0800 Subject: [PATCH 109/288] p3 --- 116.md | 80 +++++++++++++++++++++++++++++++++++----------------------- 1 file changed, 48 insertions(+), 32 deletions(-) diff --git a/116.md b/116.md index 9aa3525..2887443 100644 --- a/116.md +++ b/116.md @@ -1,14 +1,18 @@ +>Now I appeal to you, brothers and sisters, by the name of our Lord Jesus Christ, that all of you be in agreement and that there be no divisions among you, but that you be united in the same mind and the same purpose. (1 CORINTHIANS 1:10) + #字典(1) -字典,这个东西你现在还用吗?随着网络的发展,用的人越来越少了。不少人习惯于在网上搜索,不仅有web版,乃至于已经有手机版的各种字典了。我在上小学的时候曾经用过一本小小的《新华字典》,记得是拾了不少废品,然后换钱,最终花费了1.01元人民币买的。 +字典,这个东西你现在还用吗?随着网络的发展,用的人越来越少了。不少人习惯于在网上搜索,不仅有web版,乃至于已经有手机版的各种字典了。 + +我曾经上过小学,这是事实,那时候曾经用过一本小小的《新华字典》,与我差不多年龄的朋友,也都有同样的记忆,没记错的话应该是1.01元人民币一本。 >《新华字典》是中国第一部现代汉语字典。最早的名字叫《伍记小字典》,但未能编纂完成。自1953年,开始重编,其凡例完全采用《伍记小字典》。从1953年开始出版,经过反复修订,但是以1957年商务印书馆出版的《新华字典》作为第一版。原由新华辞书社编写,1956年并入中科院语言研究所(现中国社科院语言研究所)词典编辑室。新华字典由商务印书馆出版。历经几代上百名专家学者10余次大规模的修订,重印200多次。成为迄今为止世界出版史上最高发行量的字典。 -这里讲到字典,不是为了回忆青葱岁月。而是提醒看官想想我们如何使用字典:先查索引(不管是拼音还是偏旁查字),然后通过索引找到相应内容。不用从头开始一页一页地找。 +这里讲到字典,不是为了回忆青葱岁月。而是提醒读者想想曾经如何使用字典:先查索引(不管是拼音还是偏旁查字),然后通过索引找到相应内容。不用从头开始一页一页地找。 这种方法能够快捷的找到目标。 -正是基于这种需要,python中有了一种叫做dictionary的数据类型,翻译过来就是“字典”,用dict表示。 +正是基于这种需要,Python中有了一种叫做dictionary的对象(数据)类型,翻译过来就是“字典”,用dict表示。 假设一种需要,要存储城市和电话区号,苏州的区号是0512,唐山的是0315,北京的是011,上海的是012。用前面已经学习过的知识,可以这么来做: @@ -20,22 +24,25 @@ >>> print "{} : {}".format(citys[0], city_codes[0]) suzhou : 0512 ->请特别注意,我在city_codes中,表示区号的元素没有用整数型,而是使用了字符串类型,你知道为什么吗? ->如果用整数,就是这样的。 +请特别注意,我在city_codes中,表示区号的元素没有用整数型,而是使用了字符串类型,你知道为什么吗? + +如果用整数,就是这样的。 >>> suzhou_code = 0512 >>> print suzhou_code 330 ->怎么会这样?原来在python中,如果按照上面那样做,0512并没有被认为是一个八进制的数,用print打印的时候,将它转换为了十进制输出。关于进制转换问题,看官可以网上搜索一下有关资料。此处不详述。一般是用几个内建函数实现:`int()`, `bin()`, `oct()`, `hex()` +怎么会这样?!读者能不能给出解答? + +这样来看,用两个列表分别来存储城市和区号,似乎能够解决问题。但是,这不是最好的选择,至少在Python里面。因为Python还提供了另外一种方案,那就是字典(dict)。 -这样来看,用两个列表分别来存储城市和区号,似乎能够解决问题。但是,这不是最好的选择,至少在python里面。因为python还提供了另外一种方案,那就是字典(dict)。 +##创建字典 -##创建dict +创建字典,有多种方法,依次尝试。 **方法1:** -创建一个空的dict,这个空dict,可以在以后向里面加东西用。 +创建一个空的字典,然后可以向里面加东西。 >>> mydict = {} >>> mydict @@ -43,19 +50,25 @@ 不要小看“空”,“色即是空,空即是色”,在编程中,“空”是很重要。一般带“空”字的人都很有名,比如孙悟空,哦。好像他应该是猴、或者是神。举一个人的名字,带“空”字,你懂得。 -创建有内容的dict。 +还可以创建不空的字典。 - >>> person = {"name":"qiwsir","site":"qiwsir.github.io","language":"python"} + >>> person = {"name":"qiwsir", "site":"qiwsir.github.io", "language":"python"} >>> person {'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} -`"name":"qiwsir"`,有一个优雅的名字:键值对。前面的name叫做键(key),后面的qiwsir是前面的键所对应的值(value)。在一个dict中,键是唯一的,不能重复。值则是对应于键,值可以重复。键值之间用(:)英文的冒号,每一对键值之间用英文的逗号(,)隔开。 +`"name":"qiwsir"`,有一个优雅的名字:键/值对。前面的`name`叫做键(key),后面的`qiwsir`是前面的键所对应的值(value)。 + +在一个字典中,键是唯一的,不能重复。值则是对应于键,值可以重复。 + +键值之间用(`:`)英文的冒号,每一对键值之间用英文的逗号(`,`)隔开。 + +向已经建立的字典中,增加键值对的一种方法是这样的: - >>> person['name2'] = "qiwsir" #这是一种向dict中增加键值对的方法 + >>> person['name2'] = "qiwsir" >>> person {'name2': 'qiwsir', 'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} -用这样的方法可以向一个dict类型的数据中增加“键值对”,也可以说是增加数值。那么,增加了值之后,那个字典还是原来的吗?也就是也要同样探讨一下,字典是否能原地修改?(列表可以,所以列表是可变的;字符串和元组都不行,所以它们是不可变的。) +用这样的方法可以向一个字典类型的对象中增加“键值对”,也可以说是增加数值。那么,增加了值之后,那个字典还是原来的吗?也就是也要同样探讨一下,字典是否能原地修改?(列表可以,所以列表是可变的;字符串和元组都不行,所以它们是不可变的。) >>> ad = {} >>> id(ad) @@ -70,9 +83,9 @@ **方法2:** -利用元组在建构字典,方法如下: +利用元组建构字典,方法如下: - >>> name = (["first","Google"],["second","Yahoo"]) + >>> name = (["first", "Google"], ["second", "Yahoo"]) >>> website = dict(name) >>> website {'second': 'Yahoo', 'first': 'Google'} @@ -87,12 +100,10 @@ 这个方法,跟上面的不同在于使用fromkeys - >>> website = {}.fromkeys(("third","forth"),"facebook") + >>> website = {}.fromkeys(("third", "forth"), "facebook") >>> website {'forth': 'facebook', 'third': 'facebook'} -需要提醒的是,这种方法是重新建立一个dict。 - 需要提醒注意的是,在字典中的“键”,必须是不可变的数据类型;“值”可以是任意数据类型。 >>> dd = {(1,2):1} @@ -103,22 +114,23 @@ File "", line 1, in TypeError: unhashable type: 'list' -##访问dict的值 +##访问字典的值 -dict数据类型是以键值对的形式存储数据的,所以,只要知道键,就能得到值。这本质上就是一种映射关系。 +字典对象是以键值对的形式存储数据的,所以,只要知道键,就能得到值。这本质上就是一种映射关系。 >映射,就好比“物体”和“影子”的关系,“形影相吊”,两者之间是映射关系。此外,映射也是一个严格数学概念:A是非空集合,A到B的映射是指:A中每个元素都对应到B中的某个元素。 既然是映射,就可以通过字典的“键”找到相应的“值”。 - >>> person - {'name2': 'qiwsir', 'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} + >>> person = {'name2': 'qiwsir', 'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} >>> person['name'] 'qiwsir' >>> person['language'] 'python' -如同前面所讲,通过“键”能够增加dict中的“值”,通过“键”能够改变dict中的“值”,通过“键”也能够访问dict中的“值”。 +通过“键”能够读取到相应的“值”。在前面的操作中,也显示了,通过“键”能够增加字典中的“值”。 + +还有,通过“键”能够改变字典中的“值”。 本节开头那个城市和区号的关系,也可以用字典来存储和读取。 @@ -126,16 +138,16 @@ dict数据类型是以键值对的形式存储数据的,所以,只要知道 >>> print city_code["suzhou"] 0512 -既然dict是键值对的映射,就不用考虑所谓“排序”问题了,只要通过键就能找到值,至于这个键值对位置在哪里就不用考虑了。比如,刚才建立的city_code +既然字典是键值对的映射,就不用考虑所谓“排序”问题了,只要通过键就能找到值,至于这个键值对位置在哪里就不用考虑了。比如,刚才建立的city_code >>> city_code {'suzhou': '0512', 'beijing': '011', 'shanghai': '012', 'tangshan': '0315'} 虽然这里显示的和刚刚赋值的时候顺序有别,但是不影响读取其中的值。 -在list中,得到值是用索引的方法。那么在字典中有索引吗?当然没有,因为它没有顺序,哪里来的索引呢?所以,在字典中就不要什么索引和切片了。 +在列表中,得到值是用索引的方法。那么在字典中有索引吗?当然没有,因为它没有顺序,哪里来的索引呢?所以,在字典中就不要什么索引和切片了。 ->dict中的这类以键值对的映射方式存储数据,是一种非常高效的方法,比如要读取值得时候,如果用列表,python需要从头开始读,直到找到指定的那个索引值。但是,在dict中是通过“键”来得到值。要高效得多。 +>字典中的这类以键值对的映射方式存储数据,是一种非常高效的方法,比如要读取值得时候,如果用列表,Python需要从头开始读,直到找到指定的那个索引值。但是,在字典中是通过“键”来得到值。要高效得多。 >正是这个特点,键值对这样的形式可以用来存储大规模的数据,因为检索快捷。规模越大越明显。所以,mongdb这种非关系型数据库在大数据方面比较流行了。 ##基本操作 @@ -148,7 +160,7 @@ dict数据类型是以键值对的形式存储数据的,所以,只要知道 - del d[key],删除字典(d)的键(key)项(将该键值对删除) - key in d,检查字典(d)中是否含有键为key的项 -下面依次进行演示。 +依次进行演示。 >>> city_code {'suzhou': '0512', 'beijing': '011', 'shanghai': '012', 'tangshan': '0315'} @@ -182,7 +194,7 @@ dict数据类型是以键值对的形式存储数据的,所以,只要知道 >>> "shanghai" in city_code False -因为键是"shanghai"的那个键值对项已经删除了,随意不能找到,用`in`来看看,返回的是`False`。 +因为键是`"shanghai"`的那个键值对项已经删除了,随意不能找到,用`in`来看看,返回的是`False`。 >>> city_code {'suzhou': '0512', 'beijing': '010', 'tangshan': '0315', 'nanjing': '025'} @@ -191,7 +203,7 @@ dict数据类型是以键值对的形式存储数据的,所以,只要知道 ##字符串格式化输出 -这是一个前面已经探讨过的话题,请参看[《字符串(4)》](./109),这里再次提到,就是因为用字典也可以实现格式化字符串的目的。虽然在《字符串(4)》那节中已经有了简单演示,但是我还是愿意重复一下。 +这是一个前面已经探讨过的话题,请参看[《字符串(4)》](./109),这里再次提到,就是因为用字典也可以实现格式化字符串的目的。 >>> city_code = {"suzhou":"0512", "tangshan":"0315", "hangzhou":"0571"} >>> " Suzhou is a beautiful city, its area code is %(suzhou)s" % city_code @@ -201,14 +213,16 @@ dict数据类型是以键值对的形式存储数据的,所以,只要知道 其实,更酷还是下面的——模板 -在做网页开发的时候,通常要用到模板,也就是你只需要写好HTML代码,然后将某些部位空出来,等着python后台提供相应的数据即可。当然,下面所演示的是玩具代码,基本没有什么使用价值,因为在真实的网站开发中,这样的姿势很少用上。但是,它绝非花拳绣腿,而是你能够明了其本质,至少了解到一种格式化方法的应用。 +在做网页开发的时候,通常要用到模板,也就是你只需要写好HTML代码,然后将某些部位空出来,等着Python后台提供相应的数据即可。 + +当然,下面所演示的是玩具代码,基本没有什么使用价值,因为在真实的网站开发中,这样的姿势很少用上。但是,它绝非花拳绣腿,而是你能够明了其本质,至少了解到一种格式化方法的应用。 >>> temp = "%(lang)s<title><body><p>My name is %(name)s.</p></body></head></html>" >>> my = {"name":"qiwsir", "lang":"python"} >>> temp % my '<html><head><title>python<title><body><p>My name is qiwsir.</p></body></head></html>' -temp就是所谓的模板,在双引号所包裹的实质上是一段HTML代码。然后在dict中写好一些数据,按照模板的要求在相应位置显示对应的数据。 +temp就是所谓的模板,在双引号所包裹的实质上是一段HTML代码。然后在字典中写好一些数据,按照模板的要求在相应位置显示对应的数据。 是不是一个很有意思的屠龙之技? @@ -238,6 +252,8 @@ temp就是所谓的模板,在双引号所包裹的实质上是一段HTML代码 >散列表(Hash table,也叫哈希表),是根据关键字(Key value)而直接访问在内存存储位置的数据结构。也就是说,它通过把键值通过一个函数的计算,映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。 +以上对字典有了基本了解,后面要深入对字典的认识。 + ------ [总目录](./index.md)   |   [上节:元组](./115.md)   |   [下节:字典(2)](./117.md) From 7917c5aca8a780dc47f4b788d898fd341b0f9913 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 28 Mar 2016 22:39:10 +0800 Subject: [PATCH 110/288] change name --- README.md | 8 +++++++- index.md | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 361f64f..ac95bce 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,13 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《零基础学python》(第二版):From beginner to master. +#《跟老齐学Python》(第二版):From beginner to master. + +针对零基础的学习者,试图实现从基础到精通,还要看自己的造化。 + +原名叫做《零基础学Python》,后来由于图书出版,更名为《跟老齐学Python》。 + +《跟老齐学Python:从入门到精通》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 #第壹季 基础 diff --git a/index.md b/index.md index 223b767..fd1da46 100644 --- a/index.md +++ b/index.md @@ -2,7 +2,13 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《零基础学python》(第二版) +#《跟老齐学Python》(第二版):From beginner to master. + +针对零基础的学习者,试图实现从基础到精通,还要看自己的造化。 + +原名叫做《零基础学Python》,后来由于图书出版,更名为《跟老齐学Python》。 + +《跟老齐学Python:从入门到精通》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 #第壹季 基础 From 0c8cdf320f406b028776226dac5a5616ccf8c8a9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 28 Mar 2016 23:23:26 +0800 Subject: [PATCH 111/288] p3 --- 117.md | 121 +++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 84 insertions(+), 37 deletions(-) diff --git a/117.md b/117.md index a47ba53..c8cbfd6 100644 --- a/117.md +++ b/117.md @@ -4,27 +4,33 @@ ##字典方法 -跟前面所讲述的其它数据类型类似,字典也有一些方法。通过这些方法,能够实现对字典类型数据的操作。这回可不是屠龙之技的。这些方法在编程实践中经常会用到。 +跟前面所讲述的其它对象类似,字典也有一些方法。通过这些方法,能够实现对字典的操作。 + +这回可不是屠龙之技了,这些方法在编程实践中经常会用到。 ###copy -拷贝,这个汉语是copy的音译,标准的汉语翻译是“复制”。我还记得当初在学DOS的时候,那个老师说“拷贝”,搞得我晕头转向,他没有说英文的“copy”发音,而是用标准汉语说“kao(三声)bei(四声)”,对于一直学习过英语、标准汉语和我家乡方言的人来说,理解“拷贝”是有点困难的。谁知道在编程界用的是音译呢。 +拷贝,这个汉语是copy的音译,标准的汉语翻译是“复制”。 + +我还记得当初在学DOS的时候,那个老师说“拷贝”,搞得我晕头转向,他没有说英文的“copy”发音,而是用标准汉语说“kao(三声)bei(四声)”,对于一直学习过英语、标准汉语和我家乡方言的人来说,理解“拷贝”是有点困难的。谁知道在编程界用的是音译呢。 -在一般的理解中,copy就是将原来的东西再搞一份。但是,在python里面(乃至于很多编程语言中),copy可不是那么简单的。 +在一般的理解中,copy就是将原来的东西再搞一份。但是,在Python里面(乃至于很多编程语言中),copy可不是那么简单的。 >>> a = 5 >>> b = a >>> b 5 -这样做,是不是就得到了两个5了呢?表面上看似乎是,但是,不要忘记我在前面反复提到的:**对象有类型,变量无类型**,正是因着这句话,变量其实是一个标签。不妨请出法宝:`id()`,专门查看内存中对象编号 +这样做,是不是就得到了两个5了呢?表面上看似乎是,但是,不要忘记我在前面反复提到的:**对象有类型,变量无类型**,正是因着这句话,变量其实是一个标签。不妨请出法宝:`id()`,专门查看对象在内存中的位置。 >>> id(a) 139774080 >>> id(b) 139774080 -果然,并没有两个5,就一个,只不过是贴了两张标签而已。这种现象普遍存在于python的多种数据类型中。其它的就不演示了,就仅看看dict类型。 +果然,并没有两个5,就一个,只不过是贴了两张标签而已。 + +这种现象普遍存在于Python中。其它的就不演示了,就仅看看字典类型。 >>> ad = {"name":"qiwsir", "lang":"python"} >>> bd = ad @@ -35,7 +41,11 @@ >>> id(bd) 3072239652L -是的,验证了。的确是一个对象贴了两个标签。这是用赋值的方式,实现的所谓“假装拷贝”。那么如果用copy方法呢? +是的,验证了。的确是一个对象贴了两个标签。 + +这是用赋值的方式,实现的所谓“假装拷贝”。 + +如果用`copy()`方法呢? >>> cd = ad.copy() >>> cd @@ -43,7 +53,9 @@ >>> id(cd) 3072239788L -果然不同,这次得到的cd是跟原来的ad不同的,它在内存中另辟了一个空间。如果我尝试修改cd,就应该对原来的ad不会造成任何影响。 +果然不同,这次得到的cd是跟原来的ad不同的,它在内存中另辟了一个空间。 + +现在有两个字典对象,虽然它们是一样的,但在两个“窝”里面,彼此互不相干。如果我尝试修改cd,就应该对原来的ad不会造成任何影响。 >>> cd["name"] = "itdiffer.com" >>> cd @@ -51,7 +63,7 @@ >>> ad {'lang': 'python', 'name': 'qiwsir'} -真的是那样,跟推理一模一样。所以,要理解了“变量”是对象的标签,对象有类型而变量无类型,就能正确推断出python能够提供的结果。 +真的是那样,跟推理一模一样。所以,要理解了“变量”是对象的标签,对象有类型而变量无类型,就能正确推断出Python能够提供的结果。 >>> bd {'lang': 'python', 'name': 'qiwsir'} @@ -78,17 +90,25 @@ y是从x拷贝过来的,两个在内存中是不同的对象。 >>> y["lang"].remove("c") -为了便于理解,尽量使用短句子,避免用很长很长的复合句。在y所对应的dict对象中,键"lang"的值是一个列表,为['python', 'java', 'c'],这里用`remove()`这个列表方法删除其中的一个元素"c"。删除之后,这个列表变为:['python', 'java'] +为了便于理解,尽量使用短句子,避免用很长很长的复合句。 + +在y所对应的字典对象中,键"lang"的值是一个列表,为['python', 'java', 'c'],这里用`remove()`这个列表方法删除其中的一个元素`"c"`。删除之后,这个列表变为:`['python', 'java']`。 >>> y {'lang': ['python', 'java'], 'name': 'qiwsir'} -果然不出所料。那么,那个x所对应的字典中,这个列表变化了吗?应该没有变化。因为按照前面所讲的,它是另外一个对象,两个互不干扰。 +果然不出所料。 + +那么,那个x所对应的字典中,这个列表变化了吗? + +应该没有变化。因为按照前面所讲的,它是另外一个对象,两个互不干扰。 >>> x {'lang': ['python', 'java'], 'name': 'qiwsir'} -是不是有点出乎意料呢?我没有作弊哦。你如果不信,就按照操作自己在交互模式中试试,是不是能够得到这个结果呢?这是为什么? +是不是有点出乎意料呢? + +我没有作弊哦。你如果不信,就按照操作自己在交互模式中试试,是不是能够得到这个结果呢?这是为什么? 但是,如果要操作另外一个键值对: @@ -107,7 +127,7 @@ y是从x拷贝过来的,两个在内存中是不同的对象。 >>> id(y) 3072241284L -x,y对应着两个不同对象,的确如此。但这个对象(字典)是由两个键值对组成的。其中一个键的值是列表。 +x,y对应着两个不同对象,的确如此。但这个对象(字典)是由两个键值对组成的。其中一个键的值是列表。 >>> id(x["lang"]) 3072243276L @@ -125,18 +145,22 @@ x,y对应着两个不同对象,的确如此。但这个对象(字典)是 这个事实,就说明了为什么修改一个列表,另外一个也跟着修改;而修改一个的字符串,另外一个不跟随的原因了。 -但是,似乎还没有解开深层的原因。深层的原因,这跟python存储的数据类型特点有关,python只存储基本类型的数据,比如int,str,对于不是基础类型的,比如刚才字典的值是列表,python不会在被复制的那个对象中重新存储,而是用引用的方式,指向原来的值。如果读者没有明白这句话的意思,我就只能说点通俗的了(我本来不想说通俗的,装着自己有学问),python在所执行的复制动作中,如果是基本类型的数据,就在内存中重新建个窝,如果不是基本类型的,就不新建窝了,而是用标签引用原来的窝。这也好理解,如果比较简单,随便建立新窝简单;但是,如果对象太复杂了,就别费劲了,还是引用一下原来的省事。(这么讲有点忽悠了)。 +但是,似乎还没有解开深层的原因。 + +深层的原因,这跟Python存储的数据类型特点有关,Python只存储基本类型的数据,比如int、str,对于不是基础类型的,比如刚才字典的值是列表,Python不会在被复制的那个对象中重新存储,而是用引用的方式,指向原来的值。 + +如果读者没有明白这句话的意思,我就只能说点通俗的了(我本来不想说通俗的,装着自己有学问)。Python在所执行的复制动作中,如果是基本类型的对象(专指数字和字符串),就在内存中重新建个窝;如果不是基本类型的,就不新建窝了,而是用标签引用原来的窝。这也好理解,如果比较简单,随便建立新窝简单;但是,如果对象太复杂了,就别费劲了,还是引用一下原来的省事。(这么讲有点忽悠了)。 所以,在编程语言中,把实现上面那种拷贝的方式称之为“浅拷贝”。顾名思义,没有解决深层次问题。言外之意,还有能够解决深层次问题的方法喽。 -的确是,在python中,有一个“深拷贝”(deep copy)。不过,要用下一`import`来导入一个模块。这个东西后面会讲述,前面也遇到过了。 +的确是,在Python中,有一个“深拷贝”(deep copy)。不过,要用下一`import`来导入一个模块。这个东西后面会讲述,前面也遇到过了。 >>> import copy >>> z = copy.deepcopy(x) >>> z {'lang': ['python', 'java'], 'name': 'qiwsir'} -用`copy.deepcopy()`深拷贝了一个新的副本,看这个函数的名字就知道是深拷贝(deepcopy)。用上面用过的武器id()来勘察一番: +用`copy.deepcopy()`深拷贝了一个新的副本,看这个函数的名字就知道是深拷贝(deepcopy)。用上面用过的武器`id()`来勘察一番: >>> id(x["lang"]) 3072243276L @@ -163,7 +187,7 @@ x,y对应着两个不同对象,的确如此。但这个对象(字典)是 ###clear -在交互模式中,用help是一个很好的习惯 +在交互模式中,用`help()`是一个很好的习惯 >>> help(dict.clear) @@ -177,7 +201,7 @@ x,y对应着两个不同对象,的确如此。但这个对象(字典)是 >>> a {} -这就是`clear`的含义,将字典清空,得到的是“空”字典。这个上节说的`del`有着很大的区别。`del`是将字典删除,内存中就没有它了,不是为“空”。 +这就是`clear()`的含义,将字典清空,得到的是“空”字典。这个上节说的`del()`有着很大的区别。`del()`是将字典删除,内存中就没有它了,不是为“空”。 >>> del a >>> a @@ -187,7 +211,9 @@ x,y对应着两个不同对象,的确如此。但这个对象(字典)是 果然删除了。 -另外,如果要清空一个字典,还能够使用`a = {}`这种方法,但这种方法本质是将变量a转向了`{}`这个对象,那么原来的呢?原来的成为了断线的风筝。这样的东西在python中称之为垃圾,而且python能够自动的将这样的垃圾回收。编程者就不用关心它了,反正python会处理了。 +`clear()`后的字典,是将其内容清空,还能够使用`a = {}`这种方法。 + +最后提醒,`clear()`没有返回值。 ###get,setdefault @@ -224,7 +250,7 @@ get的含义是: >>> d {'lang': 'python'} -以`d.get("name",'qiwsir')`的方式,如果不能得到键"name"的值,就返回后面指定的值"qiwsir"。这就是文档中那句话:`D[k] if k in D, else d.`的含义。这样做,并没有影响原来的字典。 +以`d.get("name",'qiwsir')`的方式,如果不能得到键`"name"`的值,就返回后面指定的值`"qiwsir"`。这就是文档中那句话:`D[k] if k in D, else d.`的含义。这样做,并没有影响原来的字典。 另外一个跟get在功能上有相似地方的`D.setdefault(k)`,其含义是: @@ -238,14 +264,14 @@ get的含义是: >>> d.setdefault("lang") 'python' -在字典中,有"lang"这个键,那么就返回它的值。 +在字典中,有`"lang"`这个键,那么就返回它的值。 >>> d.setdefault("name","qiwsir") 'qiwsir' >>> d {'lang': 'python', 'name': 'qiwsir'} -没有"name"这个键,于是返回`d.setdefault("name","qiwsir")`指定的值"qiwsir",并且将键值对`'name':"qiwsir"`添加到原来的字典中。 +没有`"name"`这个键,于是返回`d.setdefault("name","qiwsir")`指定的值"qiwsir",并且将键值对`'name':"qiwsir"`添加到原来的字典中。 如果这样操作: @@ -256,19 +282,34 @@ get的含义是: >>> d {'lang': 'python', 'web': None, 'name': 'qiwsir'} -是不是键"web"的值成为了None - +是不是键`"web"`的值成为了`None`。 ###items/iteritems, keys/iterkeys, values/itervalues -这个标题中列出的是三组dict的函数,并且这三组有相似的地方。在这里详细讲述第一组,其余两组,我想凭借读者的聪明智慧是不在话下的。 +这个标题中列出的是三组字典的函数,并且这三组有相似的地方。 + +注意,在Python 3 中,因为已经做了优化,所以不需要有`iteritems`,`iterkeys`和`itervalues`三个方法。 + +在这里详细讲述第一组,其余两组,我想凭借读者的聪明智慧是不在话下的。 + +Python 2中: >>> help(dict.items) items(...) D.items() -> list of D's (key, value) pairs, as 2-tuples -这种方法是惯用的伎俩了,只要在交互模式中鼓捣一下,就能得到帮助信息。从中就知道`D.items()`能够得到一个关于字典的列表,列表中的元素是由字典中的键和值组成的元组。例如: +Python 3中: + + >>> help(dict.items) + Help on method_descriptor: + + items(...) + D.items() -> a set-like object providing a view on D's items + +这种方法是惯用的伎俩了,只要在交互模式中鼓捣一下,就能得到帮助信息。 + +Python 2中,`D.items()`能够得到一个关于字典的列表,列表中的元素是由字典中的键和值组成的元组。例如: >>> dd = {"name":"qiwsir", "lang":"python", "web":"www.itdiffer.com"} >>> dd_kv = dd.items() @@ -284,8 +325,11 @@ get的含义是: 你看,学习python不是什么难事,只要充分使用帮助文档就好了。这里告诉我们,得到的是一个“迭代器”(关于什么是迭代器,以及相关的内容,后续会详细讲述),这个迭代器是关于“D.items()”的。看个例子就明白了。 - >>> dd - {'lang': 'python', 'web': 'www.itdiffer.com', 'name': 'qiwsir'} +而Python 3中,`D.items()`返回的就是一个可迭代的对象,就无需`D.iteritems()`了。 + +在Python 2中操作。 + + >>> dd = {'lang': 'python', 'web': 'www.itdiffer.com', 'name': 'qiwsir'} >>> dd_iter = dd.iteritems() >>> type(dd_iter) <type 'dictionary-itemiterator'> @@ -307,7 +351,7 @@ get的含义是: 这里先交代一句,如果要实现对键值对或者键或者值的循环,用迭代器的效率会高一些。对这句话的理解,在后面会给大家进行详细分析。 -> 在python3中, 只有items, keys和values方法, 返回的也不是list, 而是[view对象](https://docs.python.org/3/library/stdtypes.html#dict-views) +在python3中, 只有items, keys和values方法, 返回的也不是list, 而是[view对象](https://docs.python.org/3/library/stdtypes.html#dict-views) ###pop, popitem @@ -345,7 +389,7 @@ get的含义是: File "<stdin>", line 1, in <module> KeyError: 'name' -`pop`的参数,可以是两个,上面的例子中只写了一个。如果写两个,那么就先检查k是不是存在于字典中的键,如果是,就返回它所对应的值,如果不是,就返回参数中的第二个,当然,如果不写第二个参数,就会如同上面举例一样报错。 +`pop()`的参数,可以是两个,上面的例子中只写了一个。如果写两个,那么就先检查k是不是存在于字典中的键,如果是,就返回它所对应的值,如果不是,就返回参数中的第二个,当然,如果不写第二个参数,就会如同上面举例一样报错。 有意思的是`D.popitem()`倒是跟`list.pop()`有相似之处,不用写参数(list.pop是可以不写参数),但是,`D.popitem()`不是删除最后一个,前面已经交代过了,dict没有顺序,也就没有最后和最先了,它是随机删除一个,并将所删除的返回。 @@ -355,21 +399,22 @@ get的含义是: 如果字典是空的,就要报错了 - >>> dd - {'lang': 'python', 'web': 'www.itdiffer.com'} + >>> dd = {'lang': 'python', 'web': 'www.itdiffer.com'} >>> dd.popitem() ('lang', 'python') >>> dd {'web': 'www.itdiffer.com'} -成功地删除了一对,注意是随机的,不是删除前面显示的最后一个。并且返回了删除的内容,返回的数据格式是tuple +成功地删除了一对,注意是随机的,不是删除前面显示的最后一个。并且返回了删除的内容,返回的数据格式是元组。 >>> dd.popitems() Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'dict' object has no attribute 'popitems' -错了?!注意看提示信息,没有那个...,哦,果然错了。注意是popitem,不要多了s,前面的`D.items()`中包含s,是复数形式,说明它能够返回多个结果(多个元组组成的列表),而在`D.popitem()`中,一次只能随机删除一对键值对,并以一个元组的形式返回,所以,要单数形式,不能用复数形式了。 +错了?! + +注意看提示信息,没有那个...,哦,果然错了。注意是popitem,不要多了s,前面的`D.items()`中包含s,是复数形式,说明它能够返回多个结果(多个元组组成的列表),而在`D.popitem()`中,一次只能随机删除一对键值对,并以一个元组的形式返回,所以,要单数形式,不能用复数形式了。 >>> dd.popitem() ('web', 'www.itdiffer.com') @@ -387,7 +432,7 @@ get的含义是: ###update -`update()`,看名字就猜测到一二了,是不是更新字典内容呢?的确是。 +`update()`,看名字就猜测到一二了,是不是更新字典内容呢?的确是。 update(...) D.update([E, ]**F) -> None. Update D from dict/iterable E and F. @@ -397,7 +442,7 @@ get的含义是: 不过,看样子这个函数有点复杂。不要着急,通过实验可以一点一点鼓捣明白的。 -首先,这个函数没有返回值,或者说返回值是None,它的作用就是更新字典。其参数可以是字典或者某种可迭代的数据类型。 +首先,这个函数没有返回值,或者说返回值是None,它的作用就是更新字典。其参数可以是字典或者某种可迭代的对象。 >>> d1 = {"lang":"python"} >>> d2 = {"song":"I dreamed a dream"} @@ -417,11 +462,11 @@ get的含义是: >>> d2 {'web': 'itdiffer.com', 'name': 'qiwsir', 'song': 'I dreamed a dream'} -列表的元组是键值对。 +列表中以元组为元素,每个元组是一个键值对。 ###has_key -这个函数的功能是判断字典中是否存在某个键 +这个函数的功能是判断字典中是否存在某个键,它目前仅存在于Python 2,在Python 3中取消了这个函数。 has_key(...) D.has_key(k) -> True if D has a key k, else False @@ -435,6 +480,8 @@ get的含义是: >>> "web" in d2 True +在Python 3中,类似判断使用`k in D`,甚至在Python 2中,这也是很好的方法。 + 关于dict的函数,似乎不少。但是,不用着急,也不用担心记不住,因为根本不需要记忆。只要会用搜索即可。 ------ From 2f4f72b4856bac645c91068463216f1a7bb1dc58 Mon Sep 17 00:00:00 2001 From: Frank Wang <frankwang0909@users.noreply.github.com> Date: Tue, 29 Mar 2016 18:04:47 +0800 Subject: [PATCH 112/288] Update 205.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 1.add a find prime number code. 2.部分错别字更正 --- 205.md | 46 +++++++++++++++++++++++++++++++++++----------- 1 file changed, 35 insertions(+), 11 deletions(-) diff --git a/205.md b/205.md index e8f3510..e82dc74 100644 --- a/205.md +++ b/205.md @@ -15,11 +15,11 @@ 最简单的思路就是用公式法求解,这是普适法则(普世法则?普适是否等同于普世?)。 ->古巴比伦留下的陶片显示,在大约公元前2000年(2000 BC)古巴比伦的数学家就能解一元二次方程了。在大約公元前480年,中國人已经使用配方法求得了二次方程的正根,但是并没有提出通用的求解方法。公元前300年左右,欧几里得提出了一种更抽象的几何方法求解二次方程。 +古巴比伦留下的陶片显示,在大约公元前2000年(2000BC)古巴比伦的数学家就能解一元二次方程了。在大约公元前480年,中国人已经使用配方法求得了二次方程的正根,但是并没有提出通用的求解方法。公元前300年左右,欧几里得提出了一种更抽象的几何方法求解二次方程。 ->7世紀印度的婆羅摩笈多(Brahmagupta)是第一位懂得用使用代數方程,它同時容許有正負數的根。 +7世纪印度的婆罗摩笈多(Brahmagupta)是第一位懂得用使用代数方程,它同时容许有正负数的根。 ->11世紀阿拉伯的花拉子密 独立地发展了一套公式以求方程的正数解。亚伯拉罕·巴希亚(亦以拉丁文名字萨瓦索达著称)在他的著作Liber embadorum中,首次将完整的一元二次方程解法传入欧洲。(源自《维基百科》) +11世纪阿拉伯的花拉子密 独立地发展了一套公式以求方程的正数解。亚伯拉罕·巴希亚(亦以拉丁文名字萨瓦索达著称)在他的著作Liber embadorum中,首次将完整的一元二次方程解法传入欧洲。。(源自《维基百科》) 参考代码: @@ -30,7 +30,7 @@ solving a quadratic equation """ - from __future__ import division + from __future__ import division #Python2中为了确保除法得到的结果是精确的,导入python未来支持的语言特征division(精确除法) import math def quadratic_equation(a,b,c): @@ -72,7 +72,7 @@ 至少要完成上述改进,可能需要其它的有关python知识,甚至于前面没有介绍。这都不要紧,掌握了基本知识之后,在编程的过程中,就要不断发挥google的优势,让她帮助你找寻完成任务的工具。 ->python是一个开发的语言,很多大牛人都写了一些工具,让别人使用,减轻了后人的劳动负担。这就是所谓的第三方模块。虽然python中已经有一些“自带电池”,即默认安装的,比如上面程序中用到的math,但是我们还嫌不够。于是又很多第三方的模块来专门解决某个问题。比如这个解方程问题,就可以使用SymPy(www.sympy.org)来解决,当然NumPy也是非常强悍的工具。 +>python是一个开发的语言,很多大牛人都写了一些工具,让别人使用,减轻了后人的劳动负担。这就是所谓的第三方模块。虽然python中已经有一些“自带电池”,即默认安装的,比如上面程序中用到的math,但是我们还嫌不够。于是又很多第三方的模块来专门解决某个问题。比如这个解方程问题,就可以使用SymPy(www.sympy.org) 来解决,当然NumPy 也是非常强悍的工具。 ##统计考试成绩 @@ -103,7 +103,7 @@ """ score_values = scores.values() sum_scores = sum(score_values) - average = sum_scores/len(score_values) + average = round(sum_scores/len(score_values), 2) # round(a,2) 保留两位小数 return average def sorted_score(scores): @@ -148,7 +148,7 @@ 保存为20502.py,然后运行: $ python 20502.py - the average score is: 80.2222222222 + the average score is: 80.22 list of the scores: [('facebook', 99), ('apple', 99), ('amazon', 99), ('google', 98), ('alibaba', 80), ('android', 76), ('IBM', 70), ('baidu', 52), ('yahoo', 49)] Xueba is: [('facebook', 99), ('apple', 99), ('amazon', 99)] Xuzha is: [('yahoo', 49)] @@ -161,9 +161,9 @@ 还是按照前面的管理,读者先做,然后我提供参考代码,然后自行优化。 ->質數(Prime number),又称素数,指在大於1的自然数中,除了1和此整数自身外,無法被其他自然数整除的数(也可定義為只有1和本身两个因数的数)。 +>质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数) ->哥德巴赫猜想是數論中存在最久的未解問題之一。这个猜想最早出现在1742年普鲁士人克里斯蒂安·哥德巴赫与瑞士数学家莱昂哈德·欧拉的通信中。用现代的数学语言,哥德巴赫猜想可以陳述為:“任一大於2的偶數,都可表示成兩個質數之和。”。哥德巴赫猜想在提出后的很长一段时间内毫无进展,直到二十世纪二十年代,数学家从组合数学与解析数论两方面分别提出了解决的思路,并在其后的半个世纪里取得了一系列突破。目前最好的结果是陈景润在1973年发表的陈氏定理(也被称为“1+2”)。(源自《维基百科》) +>哥德巴赫猜想是数论中存在最久的未解问题之一。这个猜想最早出现在1742年普鲁士人克里斯蒂安·哥德巴赫与瑞士数学家莱昂哈德·欧拉的通信中。用现代的数学语言,哥德巴赫猜想可以陈述为:“任一大于2的偶数,都可表示成两个素数之和。”。哥德巴赫猜想在提出后的很长一段时间内毫无进展,直到二十世纪二十年代,数学家从组合数学与解析数论两方面分别提出了解决的思路,并在其后的半个世纪里取得了一系列突破。目前最好的结果是陈景润在1973年发表的陈氏定理(也被称为“1+2”)。(源自《维基百科》) 对这个练习,我的思路是先做一个函数,用它来判断某个整数是否是素数。然后循环即可。参考代码: @@ -188,7 +188,7 @@ return True if __name__ == "__main__": - primes = [i for i in range(2,100) if is_prime(i)] #从2开始,因为1显然不是质数 + primes = [i for i in range(2,101) if is_prime(i)] #从2开始,因为1显然不是质数 print primes 代码保存后运行: @@ -200,6 +200,30 @@ 还是前面的观点,这个程序你或许也发现了需要进一步优化的地方,那就太好了。另外,关于判断质数的方法,还有好多种,读者可以自己创造或者网上搜索一些,拓展思路。 +#网友frankwang分享一段关于素数的代码,供各位参考: + +def find_primes(n): + primesList = [] + for x in range(2, n+1): + isPrime = True + for y in range(2, int(x**0.5) + 1): #x**0.5 相当于math.sqrt(x) + if x % y == 0: + isPrime = False + break + if isPrime: + primesList.append(x) + + print(primesList) +if __name__ == "__main__": + max = int(input('Find primes up to: ')) + find_primes(max) + +代码保存后运行: +# 打印结果如下: +Find primes up to: 100 +[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] + + ##编写函数的注意事项 编写函数,在开发实践中是非常必要和常见的,一般情况,你写的函数应该是: @@ -214,4 +238,4 @@ [总目录](./index.md)   |   [上节:函数(4)](./204.md)   |   [下节:zip()补充](./236.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From e9568659d9e968e8cdf4d25f02d4538fd619233d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 29 Mar 2016 21:42:53 +0800 Subject: [PATCH 113/288] p3 --- 118.md | 184 +++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 114 insertions(+), 70 deletions(-) diff --git a/118.md b/118.md index 16f15cf..0435928 100644 --- a/118.md +++ b/118.md @@ -2,26 +2,34 @@ #集合(1) -回顾一下已经学过的数据类型:int/str/bool/list/dict/tuple +已经学习了几种对象类型。 -还真的不少了. +温故而知新。它们是:int/float/str/bool/list/dict/tuple -不过,python是一个发展的语言,没准以后还出别的呢.看官可能有疑问了,出了这么多的数据类型,我也记不住呀,特别是里面还有不少方法. +还真的不少了。 -不要担心记不住,你只要记住爱因斯坦说的就好了. +不过,Python是一个发展的语言,没准以后还出别的呢。 + +读者可能有疑问了,出了这么多的类型,我也记不住呀,特别是里面还有不少方法。 + +不要担心记不住,你只要记住爱因斯坦说的就好了。 >爱因斯坦在美国演讲,有人问:“你可记得声音的速度是多少?你如何记下许多东西?” >爱因斯坦轻松答道:“声音的速度是多少,我必须查辞典才能回答。因为我从来不记在辞典上已经印着的东西,我的记忆力是用来记忆书本上没有的东西。” -多么霸气的回答,这回答不仅仅霸气,更告诉我们一种方法:只要能够通过某种方法查找到的,就不需要记忆. +多么霸气的回答。 -那么,上面那么多数据类型及其各种方法,都不需要记忆了,因为它们都可以通过下述方法但不限于这些方法查到(这句话的逻辑还是比较严密的,包括但不限于...) +这回答不仅仅霸气,更告诉我们一种方法:只要能够通过某种方法查找到的,就不需要记忆。 + +所以,再多的数据类型及其各种方法,都不需要记忆。因为它们都可以通过下述方法但不限于这些方法查到(这句话的逻辑还是比较严密的,包括但不限于...) - 交互模式下用dir()或者help() - google(不推荐Xdu,原因自己体会啦) -在已经学过的数据类型中: +还有,如果你经常练习,会发现很多东西自然而然就记住了。 + +在已经学过的不同种类型的对象中: - 能够索引的,如list/str,其中的元素可以重复 - 可变的,如list/dict,即其中的元素/键值对可以原地修改 @@ -30,88 +38,87 @@ 现在要介绍另外一种类型的数据,英文是set,翻译过来叫做“集合”。它的特点是:有的可变,有的不可变;元素无次序,不可重复。 -##创建set +##创建集合 -tuple算是list和str的杂合(杂交的都有自己的优势,上一节的末后已经显示了),那么set则可以堪称是list和dict的杂合. +元组算是列表和字符串的某些特征的杂合(杂交的都有自己的优势,上一节的末后已经显示了),那么集合则可以堪称是列表和字典的某些特征杂合. -set拥有类似dict的特点:可以用{}花括号来定义;其中的元素没有序列,也就是是非序列类型的数据;而且,set中的元素不可重复,这就类似dict的键. +请读者细细品味,这种杂合的特征。 -set也有一点list的特点:有一种集合可以原处修改. - -下面通过实验,进一步理解创建set的方法: +首先要创建集合,其方法是: >>> s1 = set("qiwsir") >>> s1 set(['q', 'i', 's', 'r', 'w']) -把str中的字符拆解开,形成set.特别注意观察:qiwsir中有两个i,但是在s1中,只有一个i,也就是集合中元素不能重复。 +把字符串中的字符拆解开,形成集合。 + +特别注意观察,`qiwsir`中有两个`i`,但是在集合中,只有一个`i`,也就是集合中元素不能重复。 >>> s2 = set([123,"google","face","book","facebook","book"]) >>> s2 set(['facebook', 123, 'google', 'book', 'face']) -在创建集合的时候,如果发现了重复的元素,就会过滤一下,剩下不重复的。而且,从s2的创建可以看出,查看结果是显示的元素顺序排列与开始建立是不同,完全是随意显示的,这说明集合中的元素没有序列。 +在创建集合的时候,如果发现了重复的元素,就会过滤掉,剩下不重复的。 + +在使用`dir()`来看看集合的方法,特别从下面找一找有没有`index`,如果有它,就说明可以索引,否则,集合就没有索引。 + + >>> dir(set) + ['__and__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__iand__', '__init__', '__ior__', '__isub__', '__iter__', '__ixor__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__xor__', 'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update'] + +请用你那双慧眼,寻找一番。 + +没有`index`。 + +的确没有。所以,集合没有索引,也就没有顺序而言,它不属序列。当你这样操作的时候, + + >>> s1 = set(['q', 'i', 's', 'r', 'w']) + >>> s1[1] + Traceback (most recent call last): + File "<pyshell#10>", line 1, in <module> + s1[1] + TypeError: 'set' object does not support indexing + +报错。并且明确告知我们,不支持索引。 + +除了用`set()`来创建集合。还可以使用`{}`的方式。 >>> s3 = {"facebook",123} #通过{}直接创建 >>> s3 set([123, 'facebook']) -除了用`set()`来创建集合。还可以使用`{}`的方式,但是这种方式不提倡使用,因为在某些情况下,python搞不清楚是字典还是集合。看看下面的探讨就发现问题了。 +但是这种方式不提倡使用。因为我们已经将`{}`常常用在字典上了,要避免歧义才好。 - >>> s3 = {"facebook",[1,2,'a'],{"name":"python","lang":"english"},123} +看看下面的探讨就发现问题了。 + + >>> s3 = {"facebook", [1,2,'a'], {"name":"python","lang":"english"}, 123} Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: 'dict' - >>> s3 = {"facebook",[1,2],123} + >>> s3 = {"facebook", [1,2], 123} Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: 'list' -从上述实验中,可以看出,通过{}无法创建含有list/dict元素的set. - -认真阅读报错信息,有这样的词汇:“unhashable”,在理解这个词之前,先看它的反义词“hashable”,很多时候翻译为“可哈希”,其实它有一个不是音译的名词“散列”,这个在[《字典(1)》](./116.md)中有说明。网上搜一下,有不少文章对这个进行诠释。如果我们简单点理解,某数据“不可哈希”(unhashable)就是其可变,如list/dict,都能原地修改,就是unhashable。否则,不可变的,类似str那样不能原地修改,就是hashable(可哈希)的。 +认真阅读报错信息,有这样的词汇:“unhashable”,在理解这个词之前,先看它的反义词“hashable”,翻译为“可哈希”。网上搜一下,有不少文章对这个进行诠释。如果我们简单点理解,某数据“不可哈希”(unhashable)就是其可变,如list/dict,都能原地修改,就是unhashable。否则,不可变的,类似字符串那样不能原地修改,就是hashable(可哈希)的。 对于前面已经提到的字典,其键必须是hashable数据,即不可变的。 -现在遇到的集合,其元素也要是“可哈希”的。上面例子中,试图将字典、列表作为元素的元素,就报错了。而且报错信息中明确告知list/dict是不可哈希类型,言外之意,里面的元素都应该是可哈希类型。 - -继续探索一个情况: - - >>> s1 - set(['q', 'i', 's', 'r', 'w']) - >>> s1[1] = "I" - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: 'set' object does not support item assignment - -这里报错,进一步说明集合没有序列,不能用索引方式对其进行修改。 +现在遇到的集合,其元素也要是“可哈希”的。上面例子中,试图将字典、列表作为元素的元素,就报错了。而且报错信息中明确告知列表、字典是不可哈希类型,言外之意,里面的元素都应该是可哈希类型。 - >>> s1 - set(['q', 'i', 's', 'r', 'w']) - >>> lst = list(s1) - >>> lst - ['q', 'i', 's', 'r', 'w'] - >>> lst[1] = "I" - >>> lst - ['q', 'I', 's', 'r', 'w'] - -分别用`list()`和`set()`能够实现两种数据类型之间的转化。 - 特别说明,利用`set()`建立起来的集合是可变集合,可变集合都是unhashable类型的。 ##set的方法 -还是用前面已经介绍过多次的自学方法,把set的有关内置函数找出来,看看都可以对set做什么操作. +从前面的`dir(set)`结果中,你可以看到不少集合的方法。 - >>> dir(set) - ['__and__', '__class__', '__cmp__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__iand__', '__init__', '__ior__', '__isub__', '__iter__', '__ixor__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__xor__', 'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update'] - -为了看的清楚,我把双划线__开始的先删除掉(后面我们会有专题讲述这些): +为了看的清楚,我把双划线`__`开始的先删除掉,剩下的就是: >'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update' -然后用help()可以找到每个函数的具体使用方法,下面列几个例子: +然后用help()可以找到每个函数的具体使用方法。读者完全可以用这种方法自己查看了。 + +下面列几个例子。 ###add, update @@ -123,7 +130,7 @@ set也有一点list的特点:有一种集合可以原处修改. Add an element to a set. This has no effect if the element is already present. -下面在交互模式这个最好的实验室里面做实验: +在交互模式这个最好的实验室里面做实验: >>> a_set = {} #我想当然地认为这样也可以建立一个set >>> a_set.add("qiwsir") #报错.看看错误信息,居然告诉我dict没有add.我分明建立的是set呀. @@ -133,16 +140,33 @@ set也有一点list的特点:有一种集合可以原处修改. >>> type(a_set) #type之后发现,计算机认为我建立的是一个dict <type 'dict'> -特别说明一下,{}这个东西,在dict和set中都用.但是,如上面的方法建立的是dict,不是set.这是python规定的.要建立set,只能用前面介绍的方法了. +特别说明一下,`{}`这个东西,在字典和集合中都用.但是,如上面的方法建立的是字典,不是集合. + +这是python规定的. + +要建立空集合,不得不使用`set()`。 + + >>> s = set() + >>> type(s) + <class 'set'> #Python 2的返回结果略有差异,为<type 'set'> + +当然,非空集合,依然可以这样: >>> a_set = {'a','i'} #这回就是set了吧 >>> type(a_set) - <type 'set'> #果然 + <type 'set'> #Python 3返回: <class 'set'> + +然后就开始对这个集合使用`add()`方法,并看效果。 >>> a_set.add("qiwsir") #增加一个元素 - >>> a_set #原处修改,即原来的a_set引用对象已经改变 + +没有报错,就意味着成功。没有返回值,根据我们经验,这属于“原地修改”。 + + >>> a_set set(['i', 'a', 'qiwsir']) - + +这次经验胜利了。继续洋洋得意地敲代码。 + >>> b_set = set("python") >>> type(b_set) <type 'set'> @@ -151,30 +175,38 @@ set也有一点list的特点:有一种集合可以原处修改. >>> b_set.add("qiwsir") >>> b_set set(['h', 'o', 'n', 'p', 't', 'qiwsir', 'y']) + +成功继续伴随着。废话!仅仅是刚才的重复罢了。重复是必须的,这样是为了加深印象。 - >>> b_set.add([1,2,3]) #报错.list是不可哈希的,集合中的元素应该是hashable类型。 + >>> b_set.add([1,2,3]) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unhashable type: 'list' - >>> b_set.add('[1,2,3]') #可以这样! +报错。哪里错了? + +遇见错误,不要沮丧。认真阅读报错信息:列表是不可哈希的。洋洋得意中忘记前面强调的:“集合中的元素应该是hashable类型”。 + +耍一个小聪明吧。 + + >>> b_set.add('[1,2,3]') >>> b_set set(['[1,2,3]', 'h', 'o', 'n', 'p', 't', 'qiwsir', 'y']) -除了上面的增加元素方法之外,还能够从另外一个set中合并过来元素,方法是set.update(s2) +为什么这么一搞就可以了呢?仔细观察,这回不是增加列表了,本质是字符串。 + +除了上面的增加元素方法之外,还能够从另外一个集合中合并过来元素,方法是`set.update(s2)`。 >>> help(set.update) update(...) Update a set with the union of itself and others. - >>> s1 - set(['a', 'b']) - >>> s2 - set(['github', 'qiwsir']) + >>> s1 = set(['a', 'b']) + >>> s2 = set(['github', 'qiwsir']) >>> s1.update(s2) #把s2的元素并入到s1中. - >>> s1 #s1的引用对象修改 + >>> s1 #s1的引用对象修改 set(['a', 'qiwsir', 'b', 'github']) - >>> s2 #s2的未变 + >>> s2 #s2的未变 set(['github', 'qiwsir']) 如果仅仅是这样的操作,容易误以为`update`方法的参数只能是集合。非也。看文档中的描述,这个方法的作用是用原有的集合自身和其它的什么东西构成的新集合更新原来的集合。这句话有点长,可以多读一遍。分解开来,可以理解为:others是指的作为参数的不可变对象,将它和原来的集合组成新的集合,用这个新集合替代原来的集合。举例: @@ -195,6 +227,8 @@ set也有一点list的特点:有一种集合可以原处修改. Remove and return an arbitrary set element. Raises KeyError if the set is empty. +一下变量承接前面的操作, + >>> b_set set(['[1,2,3]', 'h', 'o', 'n', 'p', 't', 'qiwsir', 'y']) >>> b_set.pop() #从set中任意选一个删除,并返回该值 @@ -205,13 +239,19 @@ set也有一点list的特点:有一种集合可以原处修改. 'o' >>> b_set set(['n', 'p', 't', 'qiwsir', 'y']) + +能不能指定删除某个元素? - >>> b_set.pop("n") #如果要指定删除某个元素,报错了. + >>> b_set.pop("n") Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: pop() takes no arguments (1 given) -set.pop()是从set中任意选一个元素,删除并将这个值返回.但是,不能指定删除某个元素.报错信息中就告诉我们了,pop()不能有参数.此外,如果set是空的了,也报错.这条是帮助信息告诉我们的,看官可以试试. +set.pop()是从set中任意选一个元素,删除并将这个值返回。 + +但是,不能指定删除某个元素。报错信息中就告诉我们了,`pop()`不能有参数。 + +此外,如果集合已经是空的了,再删除,也报错。这条是帮助文档中告诉我们的,读者可以试试。 要删除指定的元素,怎么办? @@ -234,7 +274,7 @@ set.pop()是从set中任意选一个元素,删除并将这个值返回.但是, File "<stdin>", line 1, in <module> KeyError: 'w' -跟remove(obj)类似的还有一个discard(obj): +跟`remove(obj)`类似的还有一个`discard(obj)`: >>> help(set.discard) @@ -243,7 +283,11 @@ set.pop()是从set中任意选一个元素,删除并将这个值返回.但是, If the element is not a member, do nothing. -与`help(set.remove)`的信息对比,看看有什么不同.discard(obj)中的obj如果是set中的元素,就删除,如果不是,就什么也不做,do nothing.新闻就要对比着看才有意思呢.这里也一样. +与`help(set.remove)`的信息对比,看看有什么不同? + +`discard(obj)`中的`obj`如果是集合中的元素,就删除;如果不是,就什么也不做,do nothing。 + +新闻就要对比着看才有意思呢。这里也一样. >>> a_set.discard('a') >>> a_set @@ -251,7 +295,7 @@ set.pop()是从set中任意选一个元素,删除并将这个值返回.但是, >>> a_set.discard('b') >>> -在删除上还有一个绝杀,就是set.clear(),它的功能是:Remove all elements from this set.(看官自己在交互模式下help(set.clear)) +在删除上还有一个绝杀,就是`set.clear()`,它的功能是:Remove all elements from this set.(自己在交互模式下`help(set.clear)`) >>> a_set set(['qiwsir']) @@ -277,7 +321,7 @@ set.pop()是从set中任意选一个元素,删除并将这个值返回.但是, 不管是否明白,貌似很厉害呀. -是的,所以本讲仅仅是对集合有一个入门.关于集合的更多操作如运算/比较等,还没有涉及呢. +是的,所以本讲仅仅是对集合有一个入门.关于集合的更多操作,如运算/比较等,还没有涉及呢. ------ From 2fc4dfbc79fda7badee6cf4959efabf1aa55f3f0 Mon Sep 17 00:00:00 2001 From: Frank Wang <frankwang0909@users.noreply.github.com> Date: Tue, 29 Mar 2016 21:46:34 +0800 Subject: [PATCH 114/288] Update 206.md --- 206.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/206.md b/206.md index 64f62d9..582df56 100644 --- a/206.md +++ b/206.md @@ -49,7 +49,7 @@ 大师的话的确有水平,听起来非常高深。不过,初学者可能理解起来就有点麻烦了。我就把大师的话化简一下,但是化简了之后可能在严谨性上就不足了,我想对于初学者来讲,应该是影响不很大的。随着学习和时间的深入,就更能理解大师的严谨描述了。 -简化之,对象应该具有属性(就是上面的状态,因为属性更常用)、方法(就是上面的行为,方法跟常被使用)和标识。因为标识是内存中自动完成的,所以,平时不用怎么管理它。主要就是属性和方法。 +简化之,对象应该具有属性(就是上面的状态,因为属性更常用)、方法(就是上面的行为,方法更常被使用)和标识。因为标识是内存中自动完成的,所以,平时不用怎么管理它。主要就是属性和方法。 为了体现“深入浅出”的道理,还是讲故事吧。 @@ -156,4 +156,4 @@ [总目录](./index.md)   |   [上节:函数练习](./205.md)   |   [下节:类(2)](./207.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 4713beba8e9370ef68ab7216d0cd4180fc8c1210 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 29 Mar 2016 23:05:40 +0800 Subject: [PATCH 115/288] p3 --- 119.md | 80 ++++++++++++++++++++++++++-------------------------------- 1 file changed, 36 insertions(+), 44 deletions(-) diff --git a/119.md b/119.md index 117ed76..bd139e3 100644 --- a/119.md +++ b/119.md @@ -11,12 +11,16 @@ >>> f_set = frozenset("qiwsir") >>> f_set frozenset(['q', 'i', 's', 'r', 'w']) - >>> f_set.add("python") #报错,不能修改,则无此方法 + >>> f_set.add("python") Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'frozenset' object has no attribute 'add' + +报错。“不求成功,但求报错”。从提示信息中可知,这种集合不能修改。 + +对比看一看,也是复习。这是一个可以原处修改的集合。 - >>> a_set = set("github") #对比看一看,这是一个可以原处修改的set + >>> a_set = set("github") >>> a_set set(['b', 'g', 'i', 'h', 'u', 't']) >>> a_set.add("python") @@ -25,14 +29,15 @@ ##集合运算 -唤醒一下中学数学(准确说是高中数学中的一点知识)中关于集合的一点知识,当然,你如果是某个理工科的专业大学毕业,更应该熟悉集合之间的关系。 +唤醒一下中学数学中关于集合的一点知识,当然,你如果是某个理工科的专业大学毕业,更应该熟悉集合之间的关系。 ###元素与集合的关系 -就一种关系,要么属于某个集合,要么不属于。 +只有一种关系。 + +元素要么属于某个集合,要么不属于。 - >>> aset - set(['h', 'o', 'n', 'p', 't', 'y']) + >>> aset = set(['h', 'o', 'n', 'p', 't', 'y']) >>> "a" in aset False >>> "h" in aset @@ -42,14 +47,12 @@ 假设两个集合A、B -- A是否等于B,即两个集合的元素完全一样 +- A是否等于B,即两个集合的元素是否完全一样 在交互模式下实验 - >>> a - set(['q', 'i', 's', 'r', 'w']) - >>> b - set(['a', 'q', 'i', 'l', 'o']) + >>> a = set(['q', 'i', 's', 'r', 'w']) + >>> b = set(['a', 'q', 'i', 'l', 'o']) >>> a == b False >>> a != b @@ -59,20 +62,17 @@ 判断集合A是否是集合B的子集,可以使用`A<B`,返回true则是子集,否则不是。另外,还可以使用函数`A.issubset(B)`判断。 - >>> a - set(['q', 'i', 's', 'r', 'w']) - >>> c - set(['q', 'i']) - >>> c<a #c是a的子集 + >>> a = set(['q', 'i', 's', 'r', 'w']) + >>> c = set(['q', 'i']) + >>> c < a #c是a的子集 True >>> c.issubset(a) #或者用这种方法,判断c是否是a的子集 True >>> a.issuperset(c) #判断a是否是c的超集 True - >>> b - set(['a', 'q', 'i', 'l', 'o']) - >>> a<b #a不是b的子集 + >>> b = set(['a', 'q', 'i', 'l', 'o']) + >>> a < b #a不是b的子集 False >>> a.issubset(b) #或者这样做 False @@ -83,56 +83,48 @@ 可以使用的符号是“|”,是一个半角状态写的竖线,输入方法是在英文状态下,按下"shift"加上右方括号右边的那个键。找找吧。表达式是`A | B`.也可使用函数`A.union(B)`,得到的结果就是两个集合并集,注意,这个结果是新生成的一个对象,不是将结合A扩充。 - >>> a - set(['q', 'i', 's', 'r', 'w']) - >>> b - set(['a', 'q', 'i', 'l', 'o']) + >>> a = set(['q', 'i', 's', 'r', 'w']) + >>> b = set(['a', 'q', 'i', 'l', 'o']) >>> a | b #可以有两种方式,结果一样 - set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w']) + set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w']) #Python 3:{'q', 'w', 'r', 'l', 's', 'a', 'o', 'i'} >>> a.union(b) - set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w']) + set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w']) #Python 3同上 - A、B的交集,即A、B所公有的元素,如下图所示 ![](./1images/11902.png) - >>> a - set(['q', 'i', 's', 'r', 'w']) - >>> b - set(['a', 'q', 'i', 'l', 'o']) + >>> a = set(['q', 'i', 's', 'r', 'w']) + >>> b = set(['a', 'q', 'i', 'l', 'o']) >>> a & b #两种方式,等价 - set(['q', 'i']) + set(['q', 'i']) #Python 3: {'q', 'i'} >>> a.intersection(b) - set(['q', 'i']) + set(['q', 'i']) #Python 3同上 -我在实验的时候,顺手敲了下面的代码,出现的结果如下,看官能解释一下吗?(思考题) +我在实验的时候,顺手敲了下面的代码,出现的结果如下,能解释一下吗?(思考题) >>> a and b - set(['a', 'q', 'i', 'l', 'o']) + set(['a', 'q', 'i', 'l', 'o']) #Python 3:{'q', 'l', 'a', 'o', 'i'} - A相对B的差(补),即A相对B不同的部分元素,如下图所示 ![](./1images/11903.png) - >>> a - set(['q', 'i', 's', 'r', 'w']) - >>> b - set(['a', 'q', 'i', 'l', 'o']) + >>> a = set(['q', 'i', 's', 'r', 'w']) + >>> b = set(['a', 'q', 'i', 'l', 'o']) >>> a - b - set(['s', 'r', 'w']) + set(['s', 'r', 'w']) #Python 3: {'r', 's', 'w'} >>> a.difference(b) - set(['s', 'r', 'w']) + set(['s', 'r', 'w']) #Python 3同上 -A、B的对称差集,如下图所示 ![](./1images/11904.png) - >>> a - set(['q', 'i', 's', 'r', 'w']) - >>> b - set(['a', 'q', 'i', 'l', 'o']) + >>> a = set(['q', 'i', 's', 'r', 'w']) + >>> b = set(['a', 'q', 'i', 'l', 'o']) >>> a.symmetric_difference(b) - set(['a', 'l', 'o', 's', 'r', 'w']) + set(['a', 'l', 'o', 's', 'r', 'w']) #Python 3: {'w', 'r', 'l', 's', 'a', 'o'} 以上是集合的基本运算。在编程中,如果用到,可以用前面说的方法查找。不用死记硬背。 From 92d63f252de6760bcad0306e180dd1acb27c8058 Mon Sep 17 00:00:00 2001 From: "Jason.Zhang" <lefttjs@gmail.com> Date: Wed, 30 Mar 2016 08:54:30 +0800 Subject: [PATCH 116/288] Update n005.md --- n005.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/n005.md b/n005.md index 24e5637..a82a9fa 100644 --- a/n005.md +++ b/n005.md @@ -261,7 +261,7 @@ Python2有基于ASCII的str()类型,其可通过单独的unicode()函数转成 1 loops, best of 3: 658 ms per loop 1 loops, best of 3: 556 ms per loop -下面的代码证明了Python 2.x中没有`__contain__`方法: +下面的代码证明了Python 2.x中没有`__contains__`方法: print('Python', python_version()) range.__contains__ From 92681c0638d5382c593c7299aade7352824930cf Mon Sep 17 00:00:00 2001 From: "Jason.Zhang" <lefttjs@gmail.com> Date: Wed, 30 Mar 2016 09:00:15 +0800 Subject: [PATCH 117/288] Update n005.md --- n005.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/n005.md b/n005.md index 24e5637..03a0cc4 100644 --- a/n005.md +++ b/n005.md @@ -540,7 +540,7 @@ Python 3中另一个优秀的改动是,如果我们试图比较无序类型, ##返回可迭代对象,而不是列表 -在xrange一节中可以看到,某些函数和方法在Python中返回的是可迭代对象,而不像在Python 2中返回列表。 +在xrange一节中可以看到,某些函数和方法在Python 3中返回的是可迭代对象,而不像在Python 2中返回列表。 由于通常对这些对象只遍历一次,所以这种方式会节省很多内存。然而,如果通过生成器来多次迭代这些对象,效率就不高了。 From cff0474c50850f4afb946485e7bac73e2a30b4eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 30 Mar 2016 09:02:51 +0800 Subject: [PATCH 118/288] p3 --- 120.md | 74 ++++++++++++++++++++++++++++++++++------------------------ 1 file changed, 44 insertions(+), 30 deletions(-) diff --git a/120.md b/120.md index ef058b1..de0fa86 100644 --- a/120.md +++ b/120.md @@ -2,13 +2,13 @@ #运算符 -在编程语言,运算符是比较多样化的,虽然在[《常用数学函数和运算优先级》](./104.md)中给出了一个各种运算符和其优先级的表格,但是,那时对python理解还比较肤浅。建议诸位先回头看看那个表格,然后继续下面的内容。 +在编程语言,运算符是比较多样化的,虽然在[《常用数学函数和运算优先级》](./104.md)中给出了一个各种运算符和其优先级的表格,但是,那时对Python理解还比较肤浅。建议诸位先回头看看那个表格,然后继续下面的内容。 这里将各种运算符总结一下,有复习,也有拓展。 ##算术运算符 -前面已经讲过了四则运算,其中涉及到一些运算符:加减乘除,对应的符号分别是:+ - * /,此外,还有求余数的:%。这些都是算术运算符。其实,算术运算符不止这些。根据中学数学的知识,看官也应该想到,还应该有乘方、开方之类的。 +前面已经讲过了四则运算,其中涉及到一些运算符:加减乘除,对应的符号分别是:+ - * /,此外,还有求余数的:%。这些都是算术运算符。其实,算术运算符不止这些。根据中学数学的知识,也应该想到,还应该有乘方、开方之类的。 下面列出一个表格,将所有的运算符表现出来。不用记,但是要认真地看一看,知道有那些,如果以后用到,但是不自信能够记住,可以来查。 @@ -22,49 +22,53 @@ |** |幂 - 返回x的y次幂 | 10**2 输出结果 100 | |// |取整除 - 返回商的整数部分 | 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 | -列为看官可以根据中学数学的知识,想想上面的运算符在混合运算中,应该按照什么顺序计算。并且亲自试试,是否与中学数学中的规律一致。(应该是一致的,计算机科学家不会另外搞一套让我们和他们一块受罪。) +可以根据中学数学的知识,想想上面的运算符在混合运算中,应该按照什么顺序计算。并且亲自试试,是否与中学数学中的规律一致。(应该是一致的,计算机科学家不会另外搞一套让我们和他们一块受罪。) ##比较运算符 -所谓比较,就是比一比两个东西。这在某国是最常见的了,做家长的经常把自己的孩子跟别人的孩子比较,唯恐自己孩子在某方面差了;官员经常把自己的收入和银行比较,总觉得少了。 +所谓比较,这在某国是最常见的了,做家长的经常把自己的孩子跟别人的孩子比较,唯恐自己孩子在某方面差了;官员经常把自己的收入和银行比较,总觉得少了。 -在计算机高级语言编程中,任何两个同一类型的量的都可以比较,比如两个数字可以比较,两个字符串可以比较。注意,是两个同一类型的。不同类型的量可以比较吗?首先这种比较没有意义。就好比二两肉和三尺布进行比较,它们谁大呢?这种比较无意义。所以,在真正的编程中,我们要谨慎对待这种不同类型量的比较。 +在计算机高级语言编程中,任何两个同一类型的对象的都可以比较,比如两个数字、两个字符串等。注意,是两个同一类型的。 + +不同类型的量可以比较吗? + +须明确,这种比较没有意义。就好比二两肉和三尺布进行比较,它们谁大呢?这种比较无意义。所以,在真正的编程中,我们要谨慎对待这种不同类型量的比较。 但是,在某些语言中,允许这种无意思的比较。因为它在比较的时候,都是将非数值的转化为了数值类型比较。 -对于比较运算符,在小学数学中就学习了一些:大于、小于、等于、不等于。没有陌生的东西,python里面也是如此。且看下表: +对于比较运算符,在小学数学中就学习了一些:大于、小于、等于、不等于。没有陌生的东西,Python里面也是如此。且看下表: -以下假设变量a为10,变量b为20: +以下假设`a=10`,`b=20`: | 运算符 | 描述 | 实例 | |--------|------|------| |== | 等于 - 比较对象是否相等 | (a == b) 返回 False。| -|!= | 不等于 - 比较两个对象是否不相等 | (a != b) 返回 true. | +|!= | 不等于 - 比较两个对象是否不相等 | (a != b) 返回 True. | |> | 大于 - 返回x是否大于y | (a > b) 返回 False。| -|< | 小于 - 返回x是否小于y | (a < b) 返回 true。| +|< | 小于 - 返回x是否小于y | (a < b) 返回 True。| |>= | 大于等于 - 返回x是否大于等于y。| (a >= b) 返回 False。| -|<= | 小于等于 - 返回x是否小于等于y。| (a <= b) 返回 true。| +|<= | 小于等于 - 返回x是否小于等于y。| (a <= b) 返回 True。| -上面的表格实例中,显示比较的结果就是返回一个true或者false,这是什么意思呢。就是在告诉你,这个比较如果成立,就是为真,返回True,否则返回False,说明比较不成立。 +上面的表格实例中,显示比较的结果就是返回一个True或者False,这是什么意思呢。就是在告诉你,这个比较如果成立,就是为真,返回True,否则返回False,说明比较不成立。 请按照下面方式进行比较操作,然后再根据自己的想象,把比较操作熟练熟练。 >>> a=10 >>> b=20 - >>> a>b + >>> a > b False - >>> a<b + >>> a < b True - >>> a==b + >>> a == b False - >>> a!=b + >>> a != b True - >>> a>=b + >>> a >= b False - >>> a<=b + >>> a <= b True -除了数字之外,还可以对字符串进行比较。字符串中的比较是按照“字典顺序”进行比较的。当然,这里说的是英文的字典,不是前面说的字典数据类型。 +除了数字之外,还可以对字符串进行比较。字符串中的比较是按照“字典顺序”进行比较的。当然,这里说的是英文的字典,不是前面说的字典类型的对象。 >>> a = "qiwsir" >>> b = "python" @@ -73,7 +77,7 @@ 先看第一个字符,按照字典顺序,q大于p(在字典中,q排在p的后面),那么就返回结果True. -在python中,如果是两种不同类型的对象,虽然可以比较。但我是不赞成这样进行比较的。 +在Python中,如果是两种不同类型的对象,虽然可以比较。但我是不赞成这样进行比较的。 >>> a = 5 >>> b = "5" @@ -84,9 +88,9 @@ 首先谈谈什么是逻辑,韩寒先生对逻辑有一个分类: ->逻辑分两种,一种是逻辑,另一种是中国人的逻辑。————韩寒 +>逻辑分两种,一种是逻辑,另一种是中国人的逻辑。—— 韩寒 -这种分类的确非常精准。在很多情况下,中国人是有很奇葩的逻辑的。但是,在python中,讲的是逻辑,不是中国人的逻辑。 +这种分类的确非常精准。在很多情况下,中国人是有很奇葩的逻辑的。但是,在Python中,讲的是逻辑,不是中国人的逻辑。 >逻辑(logic),又称理则、论理、推理、推论,是有效推论的哲学研究。逻辑被使用在大部份的智能活动中,但主要在哲学、数学、语义学和计算机科学等领域内被视为一门学科。在数学里,逻辑是指研究某个形式语言的有效推论。 @@ -94,7 +98,7 @@ ###布尔类型 -在所有的高级语言中,都有这么一类对象,被称之为布尔型。从这个名称,看官就知道了,这是用一个人的名字来命名的。 +在所有的高级语言中,都有这么一类对象,被称之为布尔型。从这个名称就知道了,这是用一个人的名字来命名的。 >乔治·布尔(George Boole,1815年11月-1864年,),英格兰数学家、哲学家。 @@ -108,11 +112,11 @@ >由于其在符号逻辑运算中的特殊贡献,很多计算机语言中将逻辑运算称为布尔运算,将其结果称为布尔值。 -请看官认真阅读布尔的生平,立志呀。 +请读者认真阅读布尔的生平,立志呀。 布尔所创立的这套逻辑被称之为“布尔代数”。其中规定只有两种值,True和False,正好对应这计算机上二进制数的1和0。所以,布尔代数和计算机是天然吻合的。 -所谓布尔类型,就是返回结果为True)、False的数据。 +所谓布尔类型,就是返回结果为True、False的数据。 在Python中(其它高级语言也类似,其实就是布尔代数的运算法则),有三种运算符,可以实现布尔类型的对象间的运算。 @@ -120,7 +124,7 @@ 看下面的表格,对这种逻辑运算符比较容易理解: -(假设变量a为10,变量b为20) +(假设`a=10`,`b=20`) |运算符 | 描述 | 实例 | |-------|-------|-------| @@ -130,7 +134,15 @@ - and -and,翻译为“与”运算,但事实上,这种翻译容易引起望文生义的理解。先说一下正确的理解。A and B,含义是:首先运算A,如果A的值是True,就计算B,并将B的结果返回做为最终结果,如果B是False,那么A and B的最终结果就是False,如果B的结果是True,那么A and B的结果就是True;如果A的值是False ,就不计算B了,直接返回A and B的结果为False. +and,翻译为“与”运算,但事实上,这种翻译容易引起望文生义的理解。 + +先说一下正确的理解。 + +`A and B`,含义是: + +首先运算A,如果A的值是True,就计算B,并将B的结果返回做为最终结果,如果B是False,那么`A and B`的最终结果就是False,如果B的结果是True,那么A and B的结果就是True; + +如果A的值是False ,就不计算B了,直接返回`A and B`的结果为False. 比如: @@ -144,7 +156,7 @@ and,翻译为“与”运算,但事实上,这种翻译容易引起望文 >>> 4>3 and 4<2 False -`4<3 and 4<9`,先看`4<3`,返回为`False`,就不看后面的了,直接返回这个结果做为最终结果(对这种现象,有一个形象的说法,叫做“短路”。这个说法形象吗?不熟悉物理的是不是感觉形象?)。 +`4<3 and 4<9`,先看`4<3`,返回为`False`,就不看后面的了,直接返回这个结果做为最终结果(对这种现象,有一个形象的说法,叫做“短路”。这个说法形象吗?不熟悉物理的是不是感觉形象?)。 >>> 4<3 and 4<2 False @@ -169,11 +181,11 @@ or,翻译为“或”运算。在`A or B`中,它是这么运算的: else: return bool(B) -看官是不是能够看懂上面的伪代码呢?下面再增加上每行的注释。这个伪代码跟自然的英语差不多呀。 +是不是能够看懂上面的伪代码呢?下面再增加上每行的注释。这个伪代码跟自然的英语差不多呀。 if A==True: #如果A的值是True return True #返回True,表达式最终结果是True - else: #否则,也就是A的值不是True + else: #否则,也就是A的值不是True return bool(B) #看B的值,然后就返回B的值做为最终结果。 举例,根据上面的运算过程,分析一下下面的例子,是不是与运算结果一致? @@ -194,7 +206,7 @@ not,翻译成“非”,窃以为非常好,不论面对什么,就是要 >>> not(4<3) True -关于运算符问题,其实不止上面这些,还有呢,比如成员运算符in,在后面的学习中会逐渐遇到。 +关于运算符问题,其实不止上面这些,还有呢,比如成员运算符`in`,前面已经用过了。 ##复杂的布尔表达式 @@ -219,6 +231,8 @@ not,翻译成“非”,窃以为非常好,不论面对什么,就是要 最后强调:一定要用括号,不必记忆表格内容。 +有了运算符,再应用已经学过的知识,就可以编程了。编程,从语句开始。 + ------ [总目录](./index.md)   |   [上节:集合(2)](./119.md)   |   [下节:语句(1)](./121.md) From 8f01e88e90d076f225efa60523e8faaa1843640b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 30 Mar 2016 10:05:17 +0800 Subject: [PATCH 119/288] p3 --- 121.md | 71 +++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 50 insertions(+), 21 deletions(-) diff --git a/121.md b/121.md index e59e5b3..878ee93 100644 --- a/121.md +++ b/121.md @@ -2,13 +2,15 @@ #语句(1) -数据类型已经学的差不多了,但是,到现在为止我们还不能真正的写程序,这就好比小学生学习写作一样,到目前为止仅仅学会了一些词语,还不知道如何造句子。从现在开始就学习如何造句子了。 +写程序,就好比小学生学习写作一样,先学习词语,然后造句,在写文章。 + +到目前为止仅仅学会了一些词语(各种类型的对象),从现在开始就学习如何造句子了。 在编程语言中,句子被称之为“语句”, ##什么是语句 -事实上,前面已经用过语句了,最典型的那句:`print "Hello, World"`就是语句。(注意:Python3里,print语句改成了print()函数。) +事实上,前面已经用过语句了,最典型的那句:`print "Hello, World"`就是语句。(注意:Python 3里,print语句改成了print()函数。) 为了能够严谨地阐述这个概念,抄一段[维基百科中的词条:命令式编程](http://zh.wikipedia.org/wiki/%E6%8C%87%E4%BB%A4%E5%BC%8F%E7%B7%A8%E7%A8%8B) @@ -24,13 +26,13 @@ 循环、条件分支和无条件分支都是控制流程。 -当然,python中的语句还是有python特别之处的(别的语言中,也会有自己的特色)。下面就开始娓娓道来。 +当然, python中的语句还是有其特别之处的(别的语言中,也会有自己的特色)。下面就开始娓娓道来。 ##print -在python2.x中,print是一个语句,但是在python3.x中它是一个函数了。这点请注意。不过,这里所使用的还是python2.x。 +在Python 2中,print是一个语句,但是在Python 3中它是一个函数了。这点请注意。 ->为什么不用python3.x?这个问题在开始就回答过。但是还有朋友问。重复回答:因为现在很多工程项目都是python2.x,python3.x相对python2.x有不完全兼容的地方。学python的目的就是要在真实的工程项目中使用,理所应当要学python2.x。此外,学会了python2.x,将来过渡到python3.x,只需要注意一些细节即可。 +以Python 2为例,说明print语句。如果说读者使用的是Python 3,请自行将`print xxx`修改为`print(xxx)`,其它不变。 print发起的语句,在程序中主要是将某些东西打印出来,还记得在讲解字符串的时候,专门讲述了字符串的格式化输出吗?那就是用来print的。 @@ -43,9 +45,9 @@ print发起的语句,在程序中主要是将某些东西打印出来,还记 本来,在print语句中,字符串后面会接一个`\n`符号。即换行。但是,如果要在一个字符串后面跟着逗号,那么换行就取消了,意味着两个字符串"hello","world"打印在同一行。 -或许现在体现得还不是很明显,如果换一个方法,就显示出来了。(下面用到了一个被称之为循环的语句,下一节会重点介绍。 +或许现在体现得还不是很明显,如果换一个方法,就显示出来了。(下面用到了一个被称之为循环的语句,下一节会重点介绍。) - >>> for i in [1,2,3,4,5]: + >>> for i in [1, 2, 3, 4, 5]: ... print i ... 1 @@ -54,24 +56,46 @@ print发起的语句,在程序中主要是将某些东西打印出来,还记 4 5 -这个循环的意思就是要从列表中依次取出每个元素,然后赋值给变量i,并用print语句打印打出来。在变量i后面没有任何符号,每打印一个,就换行,再打印另外一个。 +这个循环的意思就是要从列表中依次取出每个元素,然后赋值给变量`i`,并用print语句输出。在变量`i`后面没有任何符号,每打印一个,就换行,再打印另外一个。 下面的方式就跟上面的有点区别了。 - >>> for i in [1,2,3,4,5]: + >>> for i in [1, 2, 3, 4, 5]: ... print i , ... 1 2 3 4 5 就是在print语句的最后加了一个逗号,打印出来的就在一行了。 -print语句经常用在调试程序的过程,让我们能够知道程序在执行过程中产生的结果。 +但是,在Python 3中情况有变。 + + >>> help(print) + Help on built-in function print in module builtins: + + print(...) + print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) + + Prints the values to a stream, or to sys.stdout by default. + Optional keyword arguments: + file: a file-like object (stream); defaults to the current sys.stdout. + sep: string inserted between values, default a space. + end: string appended after the last value, default a newline. + flush: whether to forcibly flush the stream. + +从帮助文档中可以看出,默认的`end='\n'`,如果不打算换行,可以在使用`print()`函数的时候,修改end这个参数的值。 + + >>> for i in [1,2,3,4]: + print(i, end=',') + + 1,2,3,4, + +print语句或者`print()`函数经常用在调试程序的过程,让我们能够知道程序在执行过程中产生的结果。 ##import -在[《常用数学函数和运算优先级》](./104.md)中,曾经用到过一个math模块,它能提供很多数学函数,但是这些函数不是python的内建函数,是math模块的,所以,要用import引用这个模块。 +在[《常用数学函数和运算优先级》](./104.md)中,曾经用到过一个`import math`,math能提供很多数学函数,但是这些函数不是Python的内建函数,是math模块的,所以,要用import引用这个模块。 -这种用import引入模块的方法,是python编程经常用到的。引用方法有如下几种: +这种用import引入模块的方法,是Python编程经常用到的。引用方法有如下几种: >>> import math >>> math.pow(3,2) @@ -83,11 +107,12 @@ print语句经常用在调试程序的过程,让我们能够知道程序在执 >>> pow(3,2) 9.0 -这种方法就有点偷懒了,不过也不难理解,从字面意思就知道pow()函数来自于math模块。在后续使用的时候,只需要直接使用`pow()`即可,不需要在前面写上模块名称了。这种引用方法,比较适合于引入模块较少的时候。如果引入模块多了,可读性就下降了,会不知道那个函数来自那个模块。 +这种方法就有点偷懒了,不过也不难理解,从字面意思就知道`pow()`函数来自于math模块。在后续使用的时候,只需要直接使用`pow()`即可,不需要在前面写上模块名称了。这种引用方法,比较适合于引入模块较少的时候。如果引入模块多了,可读性就下降了,会不知道那个函数来自那个模块。 >>> from math import pow as pingfang >>> pingfang(3,2) 9.0 + 这是在前面那种方式基础上的发展,将从某个模块引入的函数重命名,比如讲pow充命名为pingfang,然后使用`pingfang()`就相当于在使用`pow()`了。 如果要引入多个函数,可以这样做: @@ -96,7 +121,7 @@ print语句经常用在调试程序的过程,让我们能够知道程序在执 >>> pow(e,pi) 23.140692632779263 -引入了math模块里面的pow,e,pi,pow()是一个乘方函数,e,就是那个欧拉数;pi就是π. +引入了math模块里面的pow,e,pi,pow()是一个乘方函数,e是那个欧拉数;pi就是π. >e,作为數學常數,是自然對數函數的底數。有時稱它為歐拉數(Euler's number),以瑞士數學家歐拉命名;也有個較鮮見的名字納皮爾常數,以紀念蘇格蘭數學家約翰·納皮爾引進對數。它是一个无限不循环小数。e = 2.71828182845904523536(《维基百科》) @@ -135,11 +160,11 @@ print语句经常用在调试程序的过程,让我们能够知道程序在执 >>> a ('itdiffer.com', 'python') -原来是将右边的两个值装入了一个元组,然后将元组赋给了变量a。这个python太聪明了。 +原来是将右边的两个值装入了一个元组,然后将元组赋给了变量a。这个Python太聪明了。 -在python的赋值语句中,还有一个更聪明的,它一出场,简直是让一些已经学习过某种其它语言的人亮瞎眼。 +在Python的赋值语句中,还有一个更聪明的,它一出场,简直是让一些已经学习过某种其它语言的人亮瞎眼。 -有两个变量,其中`a = 2`,`b = 9`。现在想让这两个变量的值对调,即最终是`a = 9`,`b = 2`. +有两个变量,其中`a = 2`,`b = 9`。现在想让这两个变量的值对调,即最终是`a = 9`,`b = 2`. 这是一个简单而经典的题目。在很多编程语言中,是这么处理的: @@ -147,7 +172,7 @@ print语句经常用在调试程序的过程,让我们能够知道程序在执 a = b; b = temp; -这么做的那些编程语言,变量就如同一个盒子,值就如同放到盒子里面的东西。如果要实现对调,必须在找一个盒子,将a盒子里面的东西(数字2)拿到那个临时盒子(temp)中,这样a盒子就空了,然后将b盒子中的东西拿(数字9)拿到a盒子中(a = b),完成这步之后,b盒子是空的了,最后将临时盒子里面的那个数字2拿到b盒子中。这就实现了两个变量值得对调。 +这么做的那些编程语言,变量就如同一个盒子,值就如同放到盒子里面的东西。如果要实现对调,必须在找一个盒子,将a盒子里面的东西(整数2)拿到那个临时盒子(temp)中,这样a盒子就空了,然后将b盒子中的东西拿(整数9)拿到a盒子中(a = b),完成这步之后,b盒子是空的了,最后将临时盒子里面的那个整数2拿到b盒子中。这就实现了两个变量值得对调。 太啰嗦了。 @@ -163,12 +188,14 @@ python只要一行就完成了。 >>> b 2 -`a, b = b, a`就实现了数值对调,多么神奇。之所以神奇,就是因为我前面已经数次提到的python中变量和数据对象的关系。变量相当于贴在对象上的标签。这个操作只不过是将标签换个位置,就分别指向了不同的数据对象。 +`a, b = b, a`就实现了数值对调,多么神奇。 + +之所以神奇,就是因为我前面已经数次提到的Python中变量和对象的关系。变量相当于贴在对象上的标签。这个操作只不过是将标签换个位置,就分别指向了不同的数据对象。 还有一种赋值方式,被称为“链式赋值” >>> m = n = "I use python" - >>> print m,n + >>> print m, n #Python 3:print(m, n) I use python I use python 用这种方式,实现了一次性对两个变量赋值,并且值相同。 @@ -211,7 +238,7 @@ python只要一行就完成了。 还有一种赋值形式,如果从数学的角度看,是不可思议的,如:`x = x + 1`,在数学中,这个等式是不成立的。因为数学中的“=”是等于的含义,但是在编程语言中,它成立,因为"="是赋值的含义,即将变量x增加1之后,再把得到的结果赋值变量x. -这种变量自己变化之后将结果再赋值给自己的形式,称之为“增量赋值”。+、-、*、/、%都可以实现这种操作。 +这种变量自己变化之后将结果再赋值给自己的形式,称之为“增量赋值”。+、-、*、/、%都可以实现类似这种操作。 为了让这个操作写起来省点事(要写两遍同样一个变量),可以写成:`x += 1` @@ -230,6 +257,8 @@ python只要一行就完成了。 >>> m 'python' +本节只是语句的入门,后面还有更多精彩。 + ------ [总目录](./index.md)   |   [上节:运算符](./120.md)   |   [下节:语句(2)](./122.md) From d6c9c1b5257caa69c9d92336b1b908999006c83d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Thu, 31 Mar 2016 23:46:08 +0800 Subject: [PATCH 120/288] p3 --- 122.md | 104 ++++++++++++++++++++++++++++++++++++------------- 1code/122p3.py | 19 +++++++++ 2 files changed, 95 insertions(+), 28 deletions(-) create mode 100644 1code/122p3.py diff --git a/122.md b/122.md index 6f17703..6038057 100644 --- a/122.md +++ b/122.md @@ -6,17 +6,28 @@ ##if -if,其含义就是:conj. (表条件)如果。if发起的就是一个条件,它是构成条件语句的关键词。 +if翻译为中文是“如果”。它所发起的就是一个条件语句。 + +换言之,if是是构成条件语句的关键词。 + +最简单的方式,就是: + + if bool(conj): + do something + +一个非常简单的例子: >>> a = 8 - >>> if a==8: - ... print a + >>> if a == 8: + ... print a #Python 3: print(a) ... 8 -在交互模式下,简单书写一下if发起的条件语句。特别说明,我上面这样写,只是简单演示一下。如果你要写大段的代码,千万不要在交互模式下写。 +简单解释。 -`if a==8:`,这句话里面如果条件`a==8`返回的是True,那么就执行下面的语句。特别注意,冒号是必须的。下面一行语句`print a`要有四个空格的缩进。这是python的特点,称之为语句块。 +`if a==8:`,这句话里面如果条件`a==8`返回的是True,那么就执行下面的语句。特别注意,冒号是必须的。下面一行语句`print a`(Python 3: `print(a)`)要有四个空格的缩进。这是Python的特点,称之为语句块。 + +重要的话说几遍都不为过,“要缩进四个空格”。 唯恐说的不严谨,我还是引用维基百科中的叙述: @@ -29,7 +40,7 @@ if,其含义就是:conj. (表条件)如果。if发起的就是一个条 - 必须要通过缩进方式来表示语句块的开始和结束 - 缩进用四个空格(也是必须的,别的方式或许可以,但不提倡) -##if/else/elif +##if ... elif ... else 在进行条件判断的时候,只有if,往往是不够的。比如下图所示的流程 @@ -37,26 +48,29 @@ if,其含义就是:conj. (表条件)如果。if发起的就是一个条 这张图反应的是这样一个问题: -输入一个数字,并输出输入的结果,如果这个数字大于10,那么同时输出大于10,如果小于10,同时输出提示小于10,如果等于10,就输出表扬的一句话。 +输入一个数字,判断该数字和10的大小关系。如果大于10,则输出大于10的提示;如果小于10,则输出小于10的提示;如果等于10,就输出表扬的一句话。 -从图中就已经显示出来了,仅仅用if来判断,是不足的,还需要其它分支。这就需要引入别的条件判断了。所以,有了if...elif...else语句。 +从图中就已经显示出来了,仅仅用`if`来判断,是不足的,还需要其它分支。这就需要引入别的条件判断了。所以,有了`if ... elif ... else`语句。 基本样式结构: if 条件1: - 执行的内容1 + 语句块1 elif 条件2: - 执行的内容2 + 语句块2 elif 条件3: - 执行的内容3 + 语句块3 + ... else: - 执行的内容4 + 语句块4 + +`elif`和`else`发起的部分,都可以省了,那时就回归到了只有一个`if`的情况了。 -elif用于多个条件时使用,可以没有。另外,也可以只有if,而没有else。 +为了应付多条件判断,就不能省略。 -下面我们就不在交互模式中写代码了。打开文本编辑界面,你的编辑器也能提供这个功能,如果找不到,请回到[《写一个简单的程序》](./105.md)查看。 +下面我们就不在交互模式中写代码了。打开你选择的写Python代码的编辑器,它一定得是你认为最好的武器。 -代码实例如下: +Python 2的代码如下: #! /usr/bin/env python #coding:utf-8 @@ -64,23 +78,49 @@ elif用于多个条件时使用,可以没有。另外,也可以只有if, print "请输入任意一个整数数字:" number = int(raw_input()) #通过raw_input()输入的数字是字符串 - #用int()将该字符串转化为整数 + #用int()将该字符串转化为整数 if number == 10: print "您输入的数字是:%d"%number print "You are SMART." elif number > 10: - print "您输入的数字是:%d"%number + print "您输入的数字是:{}".format(number) print "This number is more than 10." elif number < 10: - print "您输入的数字是:%d"%number + print "您输入的数字是:{}".format(number) print "This number is less than 10." else: print "Are you a human?" -特别提醒看官注意,前面我们已经用过raw_input()函数了,这个是获得用户在界面上输入的信息,而通过它得到的是字符串类型的数据。 +Python 3的代码如下: + + #! /usr/bin/env python + #coding:utf-8 + + print("请输入任意一个整数数字:") + number = int(input()) + + if number == 10: + print("您输入的数字是:{}".format(number)) + print("You are SMART.") + elif number > 10: + print("您输入的数字是:{}".format(number)) + print("This number is more than 10.") + elif number < 10: + print("您输入的数字是:{}".format(number)) + print("This number is less than 10.") + else: + print("Are you a human?") + +对上述程序,需要说明几点。 -上述程序,依据条件进行判断,不同条件下做不同的事情了。需要提醒的是在条件中:number == 10,为了阅读方便,在number和==之间有一个空格最好了,同理,后面也有一个。这里的10,是int类型,number也是int类型. +- `#! /usr/bin/env python`。因为我是在Ubuntu操作系统中调试的程序,所以这个是必须的。如果你是在windows里面,可以省略。 +- `#coding:utf-8`。在程序中有中文,有英文,即便是没有中文,也要声明程序的编码格式是utf-8。 +- `raw_input()`或者`input()`得到的是字符串,因为在程序中,要将输入的数字跟整数10进行比较,所以要将该字符串转化为整数,因此使用了`int()`函数。 + +上述程序,依据条件进行判断,不同条件下做不同的事情了。 + +需要提醒的是,在书写在条件`number == 10`时,为了阅读方便,在`number`和`==`之间有一个空格最好了,同理,后面也有一个。这里的10是整数类型,number也是。 把这段程序保存成一个扩展名是.py的文件,比如保存为`num.py`,进入到存储这个文件的目录,运行`python num.py`,就能看到程序执行结果了。下面是我执行的结果,供参考。 @@ -102,24 +142,30 @@ elif用于多个条件时使用,可以没有。另外,也可以只有if, 您输入的数字是:9 This number is less than 10. -不知道各位是否注意到,上面的那段代码,开始有一行: +最后,补充说明`#! /usr/bin/env python`的含义。 - #! /usr/bin/env python +这句话以#开头,表示本来不在程序中运行。这句话的用途是告诉机器(如Ubuntu类型的操作系统)寻找到该设备上的Python解释器,操作系统使用它找到的解释器来运行文件中的程序代码。有的程序里写的是`/usr/bin python`,表示Python解释器在`/usr/bin`里面。但是,如果写成`/usr/bin/env`,则表示要通过系统搜索路径寻找Python解释器。不同系统,可能解释器的位置不同,所以这种方式能够让代码更将拥有可移植性。 -这是什么意思呢? +上述补充解释不适用于windows系统。 -这句话以#开头,表示本来不在程序中运行。这句话的用途是告诉机器寻找到该设备上的python解释器,操作系统使用它找到的解释器来运行文件中的程序代码。有的程序里写的是/usr/bin python,表示python解释器在/usr/bin里面。但是,如果写成/usr/bin/env,则表示要通过系统搜索路径寻找python解释器。不同系统,可能解释器的位置不同,所以这种方式能够让代码更将拥有可移植性。对了,以上是对Unix系列操作系统而言。对与windows系统,这句话就当不存在。 - -在“条件”中,就是上节提到的各种条件运算表达式,如果是True,就执行该条件下的语句。 +现在读者是否已经明晰,所谓条件语句中的“条件”中,就是各种条件运算表达式或者布尔值,如果是`True`,就执行该条件下的语句块。 ##三元操作符 三元操作,是条件语句中比较简练的一种赋值方式,它的模样是这样的: >>> name = "qiwsir" if "laoqi" else "github" + +先思考一个问题,`if "laoqi"`,这里似乎没有条件表达式,Python怎么判断? + +的确没有条件表达式,事实上,它就等同于`if bool("laoqi")`。 + >>> name 'qiwsir' >>> name = 'qiwsir' if "" else "python" + +而这里的`if ""`就相当于`if bool("")`(注意写法上,两个引号之间没有空格)。还要多说一句,这里列举的方式,纯粹是为了理解三元操作符,不具有实战价值。 + >>> name 'python' >>> name = "qiwsir" if "github" else "" @@ -137,13 +183,15 @@ elif用于多个条件时使用,可以没有。另外,也可以只有if, >>> x = 2 >>> y = 8 - >>> a = "python" if x>y else "qiwsir" + >>> a = "python" if x > y else "qiwsir" >>> a 'qiwsir' - >>> b = "python" if x<y else "qiwsir" + >>> b = "python" if x < y else "qiwsir" >>> b 'python' +`if`所引起的条件语句使用非常普遍,当然也比较简单。 + ------ [总目录](./index.md)   |   [上节:语句(1)](./121.md)   |   [下节:语句(3)](./123.md) diff --git a/1code/122p3.py b/1code/122p3.py new file mode 100644 index 0000000..9b1bdc2 --- /dev/null +++ b/1code/122p3.py @@ -0,0 +1,19 @@ +#! /usr/bin/env python +#coding:utf-8 + +print("请输入任意一个整数数字:") + +number = int(input()) + +if number == 10: + print("您输入的数字是:{}".format(number)) + print("You are SMART.") +elif number > 10: + print("您输入的数字是:{}".format(number)) + print("This number is more than 10.") +elif number < 10: + print("您输入的数字是:{}".format(number)) + print("This number is less than 10.") +else: + print("Are you a human?") + From d024a680f763f4cdac16b9fff087371bd51288aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Fri, 1 Apr 2016 23:30:06 +0800 Subject: [PATCH 121/288] p3 --- 123.md | 162 ++++++++++++++++++++++++++++++++++++++------------------- 1 file changed, 108 insertions(+), 54 deletions(-) diff --git a/123.md b/123.md index 580091f..14fee46 100644 --- a/123.md +++ b/123.md @@ -4,11 +4,33 @@ #语句(3) -循环,也是现实生活中常见的现象,我们常说日复一日,就是典型的循环。又如:日月更迭,斗转星移,无不是循环;王朝更迭;子子孙孙,繁衍不息,从某个角度看也都是循环。 +循环,你我都在其中。 + +日月更迭,斗转星移,无不是循环;王朝更迭,子子孙孙,从某个角度看也都是循环。 + +循环是现实生活中常见的现象。 编程语言就是要解决现实问题的,因此也少不了要循环。 -在python中,循环有一个语句:for语句。 +##for循环 + +在高级编程语言中,大多数都有for循环(for loop),关于这种循环,我借用[维基百科中“for loop”](https://en.wikipedia.org/wiki/For_loop)的说明,帮助大家理解。 + +>In computer science a for-loop (or simply for loop) is a programming language control statement for specifying iteration, which allows code to be executed repeatedly. The syntax of a for-loop is based on the heritage of the language and the prior programming languages it borrowed from, so programming languages that are descendants of or offshoots of a language that originally provided an iterator will often use the same keyword to name an iterator, e.g., descendants of ALGOL use "for", while descendants of Fortran use "do." There are other possibilities, for example COBOL which uses "PERFORM VARYING". + +如果看上面的英文有点难度,可以看下面的翻译,当然是很烂的翻译,绝对达不到“信雅达”的境界,虽然一直追求“德艺双馨”。 + +>在计算机科学中for循环是编程语言中针对可迭代对象的语句,它允许代码被重复执行。for循环的语法是在对历史上的编程语言继承和借鉴基础上形成的,该语言原来有迭代器,则后来的编程语言也用同样的关键词来实现迭代,比如ALGOL系的使用“for”,而Fortan系的使用“do”,也有例外,如COBOL用“PERFORM VARYING”。 + +for循环是从ALGOL那里继承过来的。ALGOL(ALGOrithmic Language)是最早的高级编程语言(几乎没有之一),后来的不少高级语言都继承了ALGOL的某些特性,比如Pascal、Ada、C语言等,也包括Python。 + +维基百科上对此有非常清晰的说明。 + +>The name for-loop comes from the English word for, which is used as the keyword in most programming languages to introduce a for-loop. The term in English dates to ALGOL 58 and was popularized in the influential later ALGOL 60; it is the direct translation of the earlier German für, used in Superplan (1949–1951) by Heinz Rutishauser, who also was involved in defining ALGOL 58 and ALGOL 60. The loop body is executed "for" the given values of the loop variable, though this is more explicit in the ALGOL version of the statement, in which a list of possible values and/or increments can be specified. + +在ALGOL中,循环的关键词就是用for。所以,Python要继承这个光荣传统,也用for来实现循环。 + +于是有了:for语句。 其基本结构是: @@ -19,11 +41,11 @@ ##从例子中理解for循环 -前面介绍print语句的时候,出现了一个简单例子。重复一个类似的: +下面这个例子似曾相识。 >>> hello = "world" >>> for i in hello: - ... print i + ... print i #Python 3: print(i) ... w o @@ -31,16 +53,16 @@ l d -这个for循环是怎么工作的呢? +这个例子中实现的就是for循环。下面庖丁解牛: -1. hello这个变量引用的是"world"这个str类型的数据 -2. 变量 i 通过hello找到它所引用的对象"world",因为str类型的数据属于序列类型,能够进行索引,于是就按照索引顺序,从第一字符开始,依次获得该字符的引用。 -3. 当 i="w"的时候,执行print i,打印出了字母w,结束之后循环第二次,让 i="e",然后执行print i,打印出字母e,如此循环下去,一直到最后一个字符被打印出来,循环自动结束。注意,每次打印之后,要换行。如果不想换行,怎么办?参见[《语句(1)》](./121.md)中关于print语句。 +1. `hello = "world"`,赋值语句,实现变量`hello`和字符串`"world"`之间的引用关系。 +2. `for i in hello:`,`for`是发起循环的关键词;`i in hello`是循环规则,字符串类型的对象是序列类型,能够从左到右一个一个地按照索引读出每个字符,于是变量`i`就按照索引顺序,从第一字符开始,依次获得该字符的引用。 +3. 当 `i="w"`的时候,执行`print i`或者`print(i)`,打印出了字母w;然后循环第二次,让 `i="e"`,执行`print i`或者`print(i)`,打印出字母e;……,如此循环下去,一直到最后一个字符被打印出来,循环自动结束。注意,每次打印之后,要换行。如果不想换行,怎么办?参见[《语句(1)》](./121.md)中相关内容。 -因为可以也通过使用索引(偏移量),得到序列对象的某个元素。所以,还可以通过下面的循环方式实现同样效果: +因为可以也通过使用索引,得到序列对象的某个元素。所以,还可以通过下面的循环方式实现同样效果: >>> for i in range(len(hello)): - ... print hello[i] + ... print hello[i] #Python 3: print(hello[i]) ... w o @@ -50,23 +72,25 @@ 其工作方式是: -1. len(hello)得到hello引用的字符串的长度,为5 -2. range(len(hello),就是range(5),也就是[0, 1, 2, 3, 4],对应这"world"每个字母索引,也可以称之为偏移量。这里应用了一个新的函数`range()`,关于它的用法,继续阅读,就能看到了。 -3. for i in range(len(hello)),就相当于for i in [0,1,2,3,4],让i依次等于list中的各个值。当i=0时,打印hello[0],也就是第一个字符。然后顺序循环下去,直到最后一个i=4为止。 +1. `len(hello)`得到hello引用的字符串的长度,为5 +2. `range(len(hello)`,就是`range(5)`,也就是`[0, 1, 2, 3, 4]`,对应这`"world"`每个字母索引。这里应用了一个新的函数`range()`,关于它的用法,继续阅读,就能看到了。 +3. `for i in range(len(hello))`,就相当于`for i in [0,1,2,3,4]`,让`i`依次得到列表中的各个值。当`i=0`时,打印`hello[0]`,也就是第一个字符。然后顺序循环下去,直到最后一个`i=4`为止。 + +以上的循环举例中,显示了对字符串的字符依次获取,也涉及了列表,感觉不过瘾呀。 -以上的循环举例中,显示了对str的字符依次获取,也涉及了list,感觉不过瘾呀。那好,看下面对list的循环: +那好,看下面对列表的循环: >>> ls_line = ['Hello', 'I am qiwsir', 'Welcome you', ''] >>> for word in ls_line: - ... print word + ... print word #Python 3: print(word) ... Hello I am qiwsir Welcome you >>> for i in range(len(ls_line)): - ... print ls_line[i] + ... print ls_line[i] #Python 3: print(ls_line[i]) ... Hello I am qiwsir @@ -78,9 +102,9 @@ >>> d {'website': 'www.itdiffer.com', 'lang': 'python', 'author': 'laoqi'} >>> for k in d: - print k + print k #Python 3: print(k) -上面的代码,输出结果是: +输出结果是: website lang @@ -89,7 +113,7 @@ 注意到,上面的循环,其实是读取了字典的key。在字典中,有一个方法,`dict.keys()`,得到的是字典key列表。 >>> for k in d.keys(): - print k + print k #Python 3: print(k) website lang @@ -101,8 +125,8 @@ 除了可以单独获得key或者value的循环之外,还可以这么做: - >>> for k,v in d.items(): - print k + "-->" + v + >>> for k, v in d.items(): + print k + "-->" + v #Python 3: print(k+"-->"+v) website-->www.itdiffer.com lang-->python @@ -110,14 +134,14 @@ 在工程实践中,你一定会遇到非常大的字典。用上面的方法,要把所有的内容都读入内存,内存东西多了,可能会出麻烦。为此,Python中提供了另外的方法。 - >>> for k,v in d.iteritems(): #注意:仅在Python2中可用。 + >>> for k,v in d.iteritems(): #注意:仅在Python2中可用,Python 3中已经做了优化,d.item()即有同等功能。 print k + "-->" + v website-->www.itdiffer.com lang-->python author-->laoqi -这里是循环一个迭代器,迭代器在循环中有很多优势。除了刚才的`dict.iteritems()`之外,还有`dict.itervalues()`,`dict.iterkeys()`供你选用(以上三个iter-()都只用在Python2中,Python3中没有。)。 +这里是循环一个迭代器,迭代器在循环中有很多优势。除了刚才的`dict.iteritems()`之外,还有`dict.itervalues()`,`dict.iterkeys()`供你选用(以上三个`dict.iter*`都只用在Python 2中,Python 3中已经不需要了)。 >>> d.iteritems() #注意:仅在Python2中可用。 <dictionary-itemiterator object at 0x000000000322E368> @@ -136,7 +160,9 @@ 报错了。这说明对于数字不能使用for循环。不过,光知道这个还不行,还要看看报错信息。 -报错信息中告诉我们,‘int’对象不是可迭代的。言外之意是什么?那就是for循环所应用的对象,应该是可迭代的。那么,怎么判断一个对象是不是可迭代的呢? +报错信息中告诉我们,`int`对象不是可迭代的。言外之意是什么?那就是for循环所应用的对象,应该是可迭代的。 + +那么,怎么判断一个对象是不是可迭代的呢? >>> import collections @@ -150,7 +176,7 @@ >>> isinstance([1,2,3], collections.Iterable) True -从返回结果,我们知道,列表[1,2,3]是可迭代的。 +从返回结果,我们知道,列表`[1,2,3]`是可迭代的。 当然,并不是要你在使用for循环之前,非要判断某个对象是否可迭代。因为至此,你已经知道了字符串str、列表list、字典dict、元组tuple、集合set都是可迭代的。 @@ -158,7 +184,7 @@ 这个内建函数,非常有必要给予说明,因为它会经常被使用。一般形式是`range(start, stop[, step])` -要研究清楚一些函数特别是内置函数的功能,建议看官首先要明白内置函数名称的含义。因为在python中,名称不是随便取的,是代表一定意义的。所谓:名不正言不顺。 +要研究清楚一些函数特别是内置函数的功能,建议首先要明白内置函数名称的含义。因为在Python中,名称不是随便取的,是代表一定意义的。所谓:名不正言不顺。 >range @@ -174,12 +200,12 @@ - 这个函数可以创建一个数字元素组成的列表。 - 这个函数最常用于for循环(关于for循环,马上就要涉及到了) -- 函数的参数必须是整数,默认从0开始。返回值是类似[start, start + step, start + 2*step, ...]的列表。 +- 函数的参数必须是整数,默认从0开始。返回值是类似`[start, start + step, start + 2*step, ...]`的列表。 - step默认值是1。如果不写,就是按照此值。 -- 如果step是正数,返回list的最最后的值不包含stop值,即start+i*step这个值小于stop;如果step是负数,start+i*step的值大于stop。 +- 如果step是正数,返回列表的最后的值不包含stop值,即start+i*step这个值小于stop;如果step是负数,start+i*step的值大于stop。 - step不能等于零,如果等于零,就报错。 -在实验开始之前,再解释range(start,stop[,step])的含义: +在实验开始之前,再解释`range(start,stop[,step])`的含义: - start:开始数值,默认为0,也就是如果不写这项,就是认为start=0 - stop:结束的数值,必须要写的。 @@ -187,23 +213,32 @@ 实验开始,请以各项对照前面的讲述: +Python 2: + >>> range(9) #stop=9,别的都没有写,含义就是range(0,9,1) [0, 1, 2, 3, 4, 5, 6, 7, 8] #从0开始,步长为1,增加,直到小于9的那个数 - >>> range(0,9) + >>> range(0, 9) [0, 1, 2, 3, 4, 5, 6, 7, 8] - >>> range(0,9,1) + >>> range(0, 9, 1) [0, 1, 2, 3, 4, 5, 6, 7, 8] - >>> range(1,9) #start=1 + >>> range(1, 9) #start=1 [1, 2, 3, 4, 5, 6, 7, 8] - >>> range(0,9,2) #step=2,每个元素等于start+i*step, + >>> range(0, 9, 2) #step=2,每个元素等于start+i*step, [0, 2, 4, 6, 8] -仅仅解释一下range(0,9,2) +Python 3: + + >>> range(9) + range(0, 9) + >>> list(range(9)) + [0, 1, 2, 3, 4, 5, 6, 7, 8] + +仅仅解释一下`range(0, 9, 2)`: -- 如果是从0开始,步长为1,可以写成range(9)的样子,但是,如果步长为2,写成range(9,2)的样子,计算机就有点糊涂了,它会认为start=9,stop=2。所以,在步长不为1的时候,切忌,要把start的值也写上。 -- start=0,step=2,stop=9.list中的第一个值是start=0,第二个值是start+1*step=2(注意,这里是1,不是2,不要忘记,前面已经讲过,不论是list还是str,对元素进行编号的时候,都是从0开始的),第n个值就是start+(n-1)*step。直到小于stop前的那个值。 +- 如果是从0开始,步长为1,可以写成`range(9)`的样子,但是,如果步长为2,写成`range(9, 2)`的样子,计算机就有点糊涂了,它会认为start=9, stop=2。所以,在步长不为1的时候,切忌,要把start的值也写上。 +- start=0, step=2, stop=9,列表中的第一个值是start=0, 第二个值是start+1*step=2(注意,这里是1,不是2,不要忘记,前面已经讲过,不论是列表还是字符串,对元素进行编号的时候,都是从0开始的),第n个值就是start+(n-1)*step。直到小于stop前的那个值。 熟悉了上面的计算过程,看看下面的输入谁是什么结果? @@ -211,46 +246,64 @@ 我本来期望给我返回[0,-1,-2,-3,-4,-5,-6,-7,-8],我的期望能实现吗? -分析一下,这里start=0,step=1,stop=-9. +分析一下,这里start=0, step=1, stop=-9. -第一个值是0;第二个是start+1*step,将上面的数代入,应该是1,但是最后一个还是-9,显然出现问题了。但是,python在这里不报错,它返回的结果是: +第一个值是0;第二个是start+1*step,将上面的数代入,应该是1,但是最后一个还是-9,显然出现问题了。但是,Python在这里不报错,它返回的结果是: - >>> range(-9) +Python 2: + + >>> range(-9) [] >>> range(0,-9) [] >>> range(0) [] - + +Python 3: + + >>> range(-9) + range(0, -9) + >>> list(range(-9)) + [] + 报错和返回结果,是两个含义,虽然返回的不是我们要的。应该如何修改呢? - >>> range(0,-9,-1) +Python 2: + + >>> range(0, -9, -1) [0, -1, -2, -3, -4, -5, -6, -7, -8] - >>> range(0,-9,-2) + >>> range(0, -9, -2) [0, -2, -4, -6, -8] +Python 3: + + >>> range(0, -9, -1) + range(0, -9, -1) + >>> list(range(0, -9, -1)) + [0, -1, -2, -3, -4, -5, -6, -7, -8] + 有了这个内置函数,很多事情就简单了。比如: - >>> range(0,101,2) + >>> range(0, 101, 2) #Python 2。如果用Python 3,类似前述演示 [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98] -100以内的自然数中的偶数组成的list,就非常简单地搞定了。 +100以内的自然数中的偶数组成的列表,就非常简单地搞定了。 -思考一个问题,现在有一个列表,比如是["I","am","a","pythoner","I","am","learning","it","with","qiwsir"],要得到这个list的所有序号组成的list,但是不能一个一个用手指头来数。怎么办? +思考一个问题,现在有一个列表,比如是`["I","am","a","pythoner","I","am","learning","it","with","qiwsir"]`,要得到这个列表的所有序号组成的列表,但是不能一个一个用手指头来数。怎么办? 请沉思两分钟之后,自己实验一下,然后看下面。 >>> pythoner ['I', 'am', 'a', 'pythoner', 'I', 'am', 'learning', 'it', 'with', 'qiwsir'] >>> py_index = range(len(pythoner)) #以len(pythoner)为stop的值 - >>> py_index + >>> py_index #Python 3: list(py_index) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] -再用手指头指着pythoner里面的元素,数一数,是不是跟结果一样。 +再用手指头指着列表里面的元素,数一数,是不是跟结果一样。 -**例:**找出100以内的能够被3整除的正整数。 +**例:**找出小于100的能够被3整除的正整数。 -**分析:**这个问题有两个限制条件,第一是100以内的正整数,根据前面所学,可以用range(1,101)来实现;第二个是要解决被3整除的问题,假设某个正整数n,这个数如果能够被3整除,也就是n%3(%是取余数)为0.那么如何得到n呢,就是要用for循环。 +**分析:**这个问题有两个限制条件,第一是小于100的正整数,根据前面所学,可以用`range(1,100)`来实现;第二个是要解决被3整除的问题,假设某个正整数n,这个数如果能够被3整除,也就是`n % 3 == 0`。那么如何得到n呢,就是要用for循环。 以上做了简单分析,要实现流程,还需要细化一下。按照前面曾经讲授过的一种方法,要画出问题解决的流程图。 @@ -260,17 +313,16 @@ 代码: - #! /usr/bin/env python #coding:utf-8 aliquot = [] - for n in range(1,101): - if n%3 == 0: + for n in range(1,100): + if n % 3 == 0: aliquot.append(n) - print aliquot + print aliquot #Python 3:print(aliquot) 代码运行结果: @@ -280,9 +332,11 @@ 不过,感觉有点麻烦,其实这么做就可以了: - >>> range(3,101,3) + >>> range(3, 100, 3) [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99] +for循环在Python中应用广泛,所以,下节还要深入研究这个语句的使用,不要小看它,虽然简单,但内涵深刻。 + ------ [总目录](./index.md)   |   [上节:语句(2)](./122.md)   |   [下节:语句(4)](./124.md) From 0ab93a8b484f40532abb090afb81581da2ff42b4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Sun, 3 Apr 2016 17:03:22 +0800 Subject: [PATCH 122/288] p3 --- 124.md | 167 ++++++++++++++++++++++++++++++++++++--------------------- 1 file changed, 105 insertions(+), 62 deletions(-) diff --git a/124.md b/124.md index 2eca40c..5349a5d 100644 --- a/124.md +++ b/124.md @@ -2,30 +2,30 @@ #语句(4) -for循环在python中应用广泛,所以,要用更多的篇幅来介绍。 +for循环在Python中应用广泛,所以,要用更多的篇幅来介绍。 ##并行迭代 -关于迭代,在[《列表(2)》](./112.md)中曾经提到过“可迭代的(iterable)”这个词,并给予了适当解释,这里再次提到“迭代”,说明它在python中占有重要的位置。 +关于迭代,在[《列表(2)》](./112.md)中曾经提到过“可迭代的(iterable)”这个词,并给予了适当解释,这里再次提到“迭代”,说明它在Python中占有重要的位置。 -迭代,在python中表现就是用for循环,从序列对象中获得一定数量的元素。 +迭代,在Python中表现就是用for循环,从序列对象中获得一定数量的元素。 在前面一节中,用for循环来获得列表、字符串、元组,乃至于字典的键值对,都是迭代。 现实中迭代不都是那么简单的,比如这个问题: -**问题:**有两个列表,分别是:a = [1,2,3,4,5], b = [9,8,7,6,5],要计算这两个列表中对应元素的和。 +**问题:**有两个列表,分别是:a = [1, 2, 3, 4, 5], b = [9, 8, 7, 6, 5],要计算这两个列表中对应元素的和。 **解析:** 太简单了,一看就知道结果了。 -很好,这是你的方法,如果是computer姑娘来做,应该怎么做呢? +很好,这是你的方法,如果是让Python来做,应该怎么做呢? -观察发现两个列表的长度一样,都是5。那么对应元素求和,就是相同的索引值对应的元素求和,即a[i]+b[i],(i=0,1,2,3,4),这样一个一个地就把相应元素和求出来了。当然,要用for来做这个事情了。 +观察发现两个列表的长度一样,都是5。那么对应元素求和,就是相同的索引值对应的元素求和,即`a[i]+b[i]`(i=0,1,2,3,4),这样一个一个地就把相应元素和求出来了。当然,要用for来做这个事情了。 - >>> a = [1,2,3,4,5] - >>> b = [9,8,7,6,5] + >>> a = [1, 2, 3, 4, 5] + >>> b = [9, 8, 7, 6, 5] >>> c = [] >>> for i in range(len(a)): ... c.append(a[i]+b[i]) @@ -33,32 +33,67 @@ for循环在python中应用广泛,所以,要用更多的篇幅来介绍。 >>> c [10, 10, 10, 10, 10] -看来for的表现还不错。不过,这种方法虽然解决问题了,但python总不会局限于一个解决之道。于是又有一个内建函数`zip()`,可以让同样的问题有不一样的解决途径。 +看来for的表现还不错。 -zip是什么东西?在交互模式下用help(zip),得到官方文档是: +不过,这种方法虽然解决问题了,但Python总不会局限于一个解决之道,而且,用Python编程,还要追求优雅。 ->zip(...) ->zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)] +于是,`zip()`——一个内建函数姗姗来迟,它可以让同样的问题有不一样的解决途径,看起来更有范儿。 ->Return a list of tuples, where each tuple contains the i-th element from each of the argument sequences. The returned list is truncated in length to the length of the shortest argument sequence. +先要看一看`zip()`的文档,以了解它的身世。 -seq1, seq2分别代表了序列类型的数据。通过实验来理解上面的文档: +在Python 2中,是这样描述的: + + >>> help(zip) + Help on built-in function zip in module __builtin__: + + zip(...) + zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)] + + Return a list of tuples, where each tuple contains the i-th element + from each of the argument sequences. The returned list is truncated + in length to the length of the shortest argument sequence. + +在Python 3中,相比Python 2,有一些稍微的差别。 + + >>> help(zip) + Help on class zip in module builtins: + + class zip(object) + | zip(iter1 [,iter2 [...]]) --> zip object + | + | Return a zip object whose .__next__() method returns a tuple where + | the i-th element comes from the i-th iterable argument. The .__next__() + | method continues until the shortest iterable in the argument sequence + | is exhausted and then it raises StopIteration. + +Python 2中,参数是`seq1, seq2, ...`,意思是序列数据;在Python 3中,参数需要时可迭代对象。这点差别,通常是没有什么影响的,因为序列也是可迭代的。值得关注的是返回值,在Python 2中,返回值是一个列表对象,里面以元组为元素;而Python 3中返回的是一个zip对象。 + +通过实验来理解上面的文档: + +Python 2: >>> a = "qiwsir" >>> b = "github" - >>> zip(a,b) + >>> zip(a, b) [('q', 'g'), ('i', 'i'), ('w', 't'), ('s', 'h'), ('i', 'u'), ('r', 'b')] - + +Python 3: + + >>> zip(a, b) + <zip object at 0x0000000003521D08> + >>> list(zip(a, b)) + [('q', 'g'), ('i', 'i'), ('w', 't'), ('s', 'h'), ('i', 'u'), ('r', 'b')] + 如果序列长度不同,那么就以"the length of the shortest argument sequence"为准。 - >>> c = [1,2,3] - >>> d = [9,8,7,6] - >>> zip(c,d) + >>> c = [1, 2, 3] + >>> d = [9, 8, 7, 6] + >>> zip(c, d) #这是Python 2的结果,如果是Python 3,请仿照前面的方式显示查看 [(1, 9), (2, 8), (3, 7)] - >>> m = {"name","lang"} - >>> n = {"qiwsir","python"} - >>> zip(m,n) + >>> m = {"name", "lang"} + >>> n = {"qiwsir", "python"} + >>> zip(m, n) #这是Python 2的结果,如果是Python 3,请仿照前面的方式显示查看 [('lang', 'python'), ('name', 'qiwsir')] m,n是字典吗?当然不是。下面的才是字典呢。 @@ -68,13 +103,13 @@ m,n是字典吗?当然不是。下面的才是字典呢。 >>> zip(s,t) [('name', 'lang')] -zip是一个内置函数,它的参数必须是某种序列数据类型,如果是字典,那么键视为序列。然后将序列对应的元素依次组成元组,做为一个list的元素。 +zip是一个内置函数,它的参数必须是序列,如果是字典,那么键视为序列。然后将序列对应的元素依次组成元组,做为一个列表的元素。 -下面是比较特殊的情况,参数是一个序列数据的时候,生成的结果样子: +下面是比较特殊的情况,参数是一个序列对象的时候,生成的结果样子: >>> a ='qiwsir' >>> c = [1, 2, 3] - >>> zip(c) + >>> zip(c) #这是Python 2的结果,如果是Python 3,请仿照前面的方式显示查看 [(1,), (2,), (3,)] >>> zip(a) [('q',), ('i',), ('w',), ('s',), ('i',), ('r',)] @@ -92,7 +127,7 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 比较这个问题的两种解法,似乎第一种解法适用面较窄,比如,如果已知给定的两个列表长度不同,第一种解法就出问题了。而第二种解法还可以继续适用。的确如此,不过,第一种解法也不是不能修订的。 - >>> a = [1,2,3,4,5] + >>> a = [1, 2, 3, 4, 5] >>> b = ["python","www.itdiffer.com","qiwsir"] 如果已知是这样两个列表,要讲对应的元素“加起来”。 @@ -109,12 +144,12 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 >>> c ['1:python', '2:www.itdiffer.com', '3:qiwsir'] -我还是用第一个思路做的,经过这么修正一下,也还能用。要注意一个细节,在“加”的时候,不能直接用`a[i]`,因为它引用的对象是一个int类型,不能跟后面的str类型相加,必须转化一下。 +我还是用第一个思路做的,经过这么修正一下,也还能用。要注意一个细节,在“加”的时候,不能直接用`a[i]`,因为它引用的对象是一个整数类型,不能跟后面的字符串类型相加,必须转化一下。 当然,`zip()`也是能解决这个问题的。 >>> d = [] - >>> for x,y in zip(a,b): + >>> for x,y in zip(a, b): ... d.append(x + y) ... Traceback (most recent call last): @@ -123,7 +158,7 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 报错!看错误信息,我刚刚提醒的那个问题就冒出来了。所以,应该这么做: - >>> for x,y in zip(a,b): + >>> for x,y in zip(a, b): ... d.append(str(x) + ":" + y) ... >>> d @@ -133,7 +168,7 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 切记:**computer是一个姑娘,她非常秀气,需要敲代码的小伙子们耐心地、细心地跟她相处。** -以上两种写法那个更好呢?前者?后者?哈哈。我看差不多了。 +以上两种写法那个更好呢?前者?后者? >>> result = [(2, 11), (4, 13), (6, 15), (8, 17)] @@ -144,12 +179,13 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 下面延伸一个问题: -**问题**:有一个dictionary,myinfor = {"name":"qiwsir","site":"qiwsir.github.io","lang":"python"},将这个字典变换成:infor = {"qiwsir":"name","qiwsir.github.io":"site","python":"lang"} +**问题**:有一个字典,myinfor = {"name":"qiwsir", "site":"qiwsir.github.io", "lang":"python"},将这个字典变换成:infor = {"qiwsir":"name", "qiwsir.github.io":"site", "python":"lang"} **解析:** -解法有几个,如果用for循环,可以这样做(当然,看官如果有方法,欢迎贴出来)。 - >>> myinfor = {"name":"qiwsir","site":"qiwsir.github.io","lang":"python"} +解法一,用for循环: + + >>> myinfor = {"name":"qiwsir", "site":"qiwsir.github.io", "lang":"python"} >>> infor = {} >>> for k,v in myinfor.items(): ... infor[v]=k @@ -157,41 +193,47 @@ zip是一个内置函数,它的参数必须是某种序列数据类型,如 >>> infor {'python': 'lang', 'qiwsir.github.io': 'site', 'qiwsir': 'name'} -下面用zip()来试试: +解法二,用`zip()`: - >>> dict(zip(myinfor.values(),myinfor.keys())) + >>> dict(zip(myinfor.values(), myinfor.keys())) {'python': 'lang', 'qiwsir.github.io': 'site', 'qiwsir': 'name'} -呜呼,这是什么情况?原来这个zip()还能这样用。是的,本质上是这么回事情。如果将上面这一行分解开来,看官就明白其中的奥妙了。 +呜呼,这是什么情况?原来这个`zip()`还能这样。 - >>> myinfor.values() #得到两个list +为了能够窥探内部的奥秘,我们将那一行分解开来。 + + >>> myinfor.values() #得到字典值的列表 ['python', 'qiwsir', 'qiwsir.github.io'] - >>> myinfor.keys() + >>> myinfor.keys() #得到字典键的列表 ['lang', 'name', 'site'] - >>> temp = zip(myinfor.values(),myinfor.keys()) #压缩成一个list,每个元素是一个tuple - >>> temp + >>> temp = zip(myinfor.values(), myinfor.keys()) #压缩成一个列表,每个元素是一个元组,元组中第一个是值,第二个是键 + >>> temp #Python 3中是一个zip对象 [('python', 'lang'), ('qiwsir', 'name'), ('qiwsir.github.io', 'site')] - - >>> dict(temp) #这是函数dict()的功能,将上述列表转化为dictionary + >>> dict(temp) #这是函数dict()的功能,将上述列表转化为字典 {'python': 'lang', 'qiwsir.github.io': 'site', 'qiwsir': 'name'} -至此,是不是明白zip()和循环的关系了呢?有了它可以让某些循环简化。 +至此,是不是明白`zip()`和循环的关系了呢?有了它可以让某些循环简化。 ##enumerate -这是一个有意思的内置函数,本来我们可以通过`for i in range(len(list))`的方式得到一个list的每个元素索引,然后在用list[i]的方式得到该元素。如果要同时得到元素索引和元素怎么办?就是这样了: +`enumerate()`也是内建函数。 + +本来我们可以通过`for i in range(len(list))`的方式得到一个列表的每个元素对应的索引,然后在用`list[i]`的方式得到该元素。这是前面用过的路数。 + +但是,如果要同时得到元素索引和元素怎么办? + >>> week = ['monday', 'sunday', 'friday'] >>> for i in range(len(week)): ... print week[i]+' is '+str(i) #注意,i是int类型,如果和前面的用+连接,必须是str类型 - ... + ... #如果使用Python 3,请自行更换为print(week[i]+' is '+str(i)) monday is 0 sunday is 1 friday is 2 -python中提供了一个内置函数enumerate,能够实现类似的功能 +内建函数enumerate,能够实现类似的功能,并且简化。 - >>> for (i,day) in enumerate(week): - ... print day+' is '+str(i) + >>> for (i, day) in enumerate(week): + ... print day+' is '+str(i) #Python 3: print(day+' is '+str(i)) ... monday is 0 sunday is 1 @@ -215,9 +257,6 @@ python中提供了一个内置函数enumerate,能够实现类似的功能 >>> mylist = ["qiwsir",703,"python"] >>> enumerate(mylist) <enumerate object at 0xb74a63c4> - -出现这个结果,用list就能实现转换,显示内容.意味着可迭代。 - >>> list(enumerate(mylist)) [(0, 'qiwsir'), (1, 703), (2, 'python')] @@ -263,40 +302,44 @@ python中提供了一个内置函数enumerate,能够实现类似的功能 好的。然后呢?再转化为字符串?留给读者试试。 -##list解析 +##列表解析 -先看下面的例子,这个例子是想得到1到9的每个整数的平方,并且将结果放在list中打印出来 +先看下面的例子,这个例子是想得到1到9的每个整数的平方,并且将结果放在列表中,打印出来。 >>> power2 = [] - >>> for i in range(1,10): + >>> for i in range(1, 10): ... power2.append(i*i) ... >>> power2 [1, 4, 9, 16, 25, 36, 49, 64, 81] -python有一个非常有意思的功能,就是list解析,就是这样的: +Python有一个非常强大的功能,就是列表解析,它这样使用: - >>> squares = [x**2 for x in range(1,10)] + >>> squares = [x**2 for x in range(1, 10)] >>> squares [1, 4, 9, 16, 25, 36, 49, 64, 81] -看到这个结果,看官还不惊叹吗?这就是python,追求简洁优雅的python! +看到这个结果,读者还不惊叹吗? + +这就是Python,追求简洁优雅的Python! -其官方文档中有这样一段描述,道出了list解析的真谛: +其官方文档中有这样一段描述,道出了列表解析的真谛: >List comprehensions provide a concise way to create lists. Common applications are to make new lists where each element is the result of some operations applied to each member of another sequence or iterable, or to create a subsequence of those elements that satisfy a certain condition. -这就是python有意思的地方,也是计算机高级语言编程有意思的地方,你只要动脑筋,总能找到惊喜的东西。 +这就是Python有意思的地方,也是计算机高级语言编程有意思的地方,你只要动脑筋,总能找到惊喜的东西。 -其实,不仅仅对数字组成的list,所有的都可以如此操作。请在平复了激动的心之后,默默地看下面的代码,感悟一下list解析的魅力。 +其实,不仅仅对数字组成的列表,所有的都可以如此操作。请在平复了激动的心之后,默默地看下面的代码,感悟一下列表解析的魅力。 >>> mybag = [' glass',' apple','green leaf '] #有的前面有空格,有的后面有空格 >>> [one.strip() for one in mybag] #去掉元素前后的空格 ['glass', 'apple', 'green leaf'] -上面的问题,都能用list解析来重写。读者不妨试试。 +本节中已经演示过的问题,都能用列表解析来重写。读者不妨试试。 + +在很多情况下,列表解析的执行效率高,代码简洁明了。是实际写程序中经常被用到的。 -在很多情况下,list解析的执行效率高,代码简洁明了。是实际写程序中经常被用到的。 +对于循环,除了for之外,还有一个叫做while。 ------ From d4ae9b88a168d8c2d73f76c17b9a67caa32edfe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Sun, 3 Apr 2016 18:12:44 +0800 Subject: [PATCH 123/288] p3 --- 125.md | 63 ++++++++++++++++++++++++++++++------------------ 1code/12502p3.py | 12 +++++++++ 1code/12503p3.py | 11 +++++++++ 3 files changed, 63 insertions(+), 23 deletions(-) create mode 100644 1code/12502p3.py create mode 100644 1code/12503p3.py diff --git a/125.md b/125.md index afe2436..93d78de 100644 --- a/125.md +++ b/125.md @@ -2,12 +2,16 @@ #语句(5) -while,翻译成中文是“当...的时候”,这个单词在英语中,常常用来做为时间状语,while ... someone do somthing,这种类型的说法是有的。在python中,它也有这个含义,不过有点区别的是,“当...时候”这个条件成立在一段范围或者时间间隔内,从而在这段时间间隔内让python做好多事情。就好比这样一段情景: +关于循环,Python中除了for,还有一个是while。 + +while,翻译成中文是“当...的时候”,这个单词在英语中,常常用来做为时间状语,while ... someone do somthing,这种类型的说法是有的。 + +在Python中,它也有这个含义,不过有点区别的是,“当...时候”这个条件成立在一段范围或者时间间隔内,从而在这段时间间隔内让Python做好多事情。就好比这样一段情景: while 年龄大于60岁:-------->当年龄大于60岁的时候 退休 -------->凡是符合上述条件就执行的动作 -展开想象,如果制作一道门,这道门就是用上述的条件调控开关的,假设有很多人经过这个门,报上年龄,只要年龄大于60,就退休(门打开,人可以出去),一个接一个地这样循环下去,突然有一个人年龄是50,那么这个循环在他这里就停止,也就是这时候他不满足条件了。 +展开想象。如果制作一道门,这道门就是用上述的条件调控开关的,假设有很多人经过这个门,报上年龄,只要年龄大于60,就退休(门打开,人可以出去),一个接一个地这样循环下去,突然有一个人年龄是50,那么这个循环在他这里就停止,也就是这时候他不满足条件了。 这就是while循环。写一个严肃点的流程,可以看下图: @@ -27,43 +31,45 @@ while,翻译成中文是“当...的时候”,这个单词在英语中,常 i=0 while i < 4: print'********************************' - num = input('请您输入0到9任一个数:') #李同学用的是python3 + num = input('请您输入0到9任一个数:') xnum = random.randint(0,9) x = 3 - i if num == xnum: - print'运气真好,您猜对了!' + print('运气真好,您猜对了!') break elif num > xnum: - print'''您猜大了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x) + print('''您猜大了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x)) elif num < xnum: - print'''您猜小了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x) - print'********************************' + print('''您猜小了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x)) + print('********************************') i += 1 -我们就用这段程序来分析一下,首先看while i<4,这是程序中为猜测限制了次数,最大是三次,请看官注意,在while的循环体中的最后一句:i +=1,这就是说每次循环到最后,就给i增加1,当bool(i<4)为False的时候,就不再循环了。 +我们就用这段程序来分析一下,首先看while i<4,这是程序中为猜测限制了次数,最大是三次。请注意,在while的循环体中的最后一句:`i +=1`,这就是说每次循环到最后,就给`i`增加1,当`bool(i<4)`为False的时候,就不再循环了。 -当bool(i<4)为True的时候,就执行循环体内的语句。在循环体内,让用户输入一个整数,然后程序随机选择一个整数,最后判断随机生成的数和用户输入的数是否相等,并且用if语句判断三种不同情况。 +当`bool(i<4)`为True的时候,就执行循环体内的语句。在循环体内,让用户输入一个整数,然后程序随机选择一个整数,最后判断随机生成的数和用户输入的数是否相等,并且用if语句判断三种不同情况。 -根据上述代码,看官看看是否可以修改? +根据上述代码,读者看看是否可以修改? 为了让用户的体验更爽,不妨把输入的整数范围扩大,在1到100之间吧。 - num_input = raw_input("please input one integer that is in 1 to 100:") #我用的是python2.7,在输入指令上区别于李同学 + num_input = raw_input("please input one integer that is in 1 to 100:") #Python 3请使用input() -程序用num_input变量接收了输入的内容。但是,请列位看官一定要注意,看到这里想睡觉的要打起精神了,我要分享一个多年编程经验: +程序用`num_input`变量接收了输入的内容。但是,请一定要注意,看到这里想睡觉的要打起精神了,我要分享一个多年编程经验: 请牢记:**任何用户输入的内容都是不可靠的。** -这句话含义深刻,但是,这里不做过多的解释,需要各位在随后的编程生涯中体验了。为此,我们要检验用户输入的是否符合我们的要求,我们要求用户输入的是1到100之间的整数,那么就要做如下检验: +这句话含义深刻,但是,这里不做过多的解释,需要各位在随后的编程生涯中体验了。 + +为此,我们要检验用户输入的是否符合我们的要求,我们要求用户输入的是1到100之间的整数,那么就要做如下检验: 1. 输入的是否是整数 2. 如果是整数,是否在1到100之间。 -为此,要做: +可以这样做: if not num_input.isdigit(): #str.isdigit()是用来判断字符串是否纯粹由数字组成 print "Please input interger." @@ -81,7 +87,7 @@ while,翻译成中文是“当...的时候”,这个单词在英语中,常 while True: #不限制用户的次数了 ... -观察李同学的程序,还有一点需要向列位显明的,那就是在条件表达式中,两边最好是同种类型数据,上面的程序中有:num>xnum样式的条件表达式,而一边是程序生成的int类型数据,一边是通过输入函数得到的str类型数据。在某些情况下可以运行,为什么?看官能理解吗?都是数字的时候,是可以的。但是,这样不好。 +观察李同学的程序,还有一点需要向列位显明的,那就是在条件表达式中,两边最好是同种类型数据,上面的程序中有:`num>xnum`样式的条件表达式,而一边是程序生成的整数类型,一边是通过输入函数得到的字符串类型数据。在某些情况下可以运行,为什么?读者能理解吗?都是数字的时候,是可以的。但是,这样不好。 那么,按照这种思路,把这个猜数字程序重写一下: @@ -114,11 +120,13 @@ while,翻译成中文是“当...的时候”,这个单词在英语中,常 else: print "There is something bad, I will not work" -以上供参考,看官还可改进。 +上述代码是在Python 2下调试的,如果读者使用的是Python 3,请在前面已经陈述过的几个地方进行修改。 + +代码供参考,更欢迎读者改进它。 ##break和continue -break,在上面的例子中已经出现了,其含义就是要在这个地方中断循环,跳出循环体。下面这个简要的例子更明显: +`break`,在上面的例子中已经出现了,其含义就是要在这个地方中断循环,跳出循环体。下面这个简要的例子更明显: #!/usr/bin/env python #coding:utf-8 @@ -132,6 +140,8 @@ break,在上面的例子中已经出现了,其含义就是要在这个地方 a = 0 print "%d is even number"%a +上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。 + a=8的时候,执行循环体中的break,跳出循环,执行最后的打印语句,得到结果: 8 is even number @@ -141,25 +151,27 @@ a=8的时候,执行循环体中的break,跳出循环,执行最后的打印 9 is odd number 0 is even number -而continue则是要从当前位置(即continue所在的位置)跳到循环体的最后一行的后面(不执行最后一行),对一个循环体来讲,就如同首尾衔接一样,最后一行的后面是哪里呢?当然是开始了。 +而`continue`则是要从当前位置(即continue所在的位置)跳到循环体的最后一行的后面(不执行最后一行),对一个循环体来讲,就如同首尾衔接一样,最后一行的后面是哪里呢?当然是开始了。 #!/usr/bin/env python #coding:utf-8 a = 9 while a: - if a%2==0: + if a%2 == 0: a -=1 continue #如果是偶数,就返回循环的开始 else: print "%d is odd number"%a #如果是奇数,就打印出来 a -=1 -其实,对于这两东西,我个人在编程中很少用到。我有一个固执的观念,尽量将条件在循环之前做足,不要在循环中跳来跳去,不仅可读性下降,有时候自己也糊涂了。 +为了兼顾Python 3,还是重复上面那句话:上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。 + +其实,对于`break`和`continue`,我个人在编程中很少用到。我有一个固执的观念,尽量将条件在循环之前做足,不要在循环中跳来跳去,不仅可读性下降,有时候自己也糊涂了。 ##while...else -这两个的配合有点类似if ... else,只需要一个例子就可以理解。 当然,一遇到else了,就意味着已经不在while循环内了。 +`while...else`有点类似`if ... else`,只需要一个例子就可以理解。 当然,一遇到`else`了,就意味着已经不在while循环内了。 #!/usr/bin/env python @@ -179,9 +191,11 @@ a=8的时候,执行循环体中的break,跳出循环,执行最后的打印 4 is less than 5 5 is not less than 5 +依然要说明:上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。 + ##for...else -除了有while...else外,还可以有for...else。这个循环也通常用在当跳出循环之后要做的事情。 +除了有`while...else`外,还可以有`for...else`。这个循环也通常用在当跳出循环之后要做的事情。 #!/usr/bin/env python # coding=utf-8 @@ -197,7 +211,8 @@ a=8的时候,执行循环体中的break,跳出循环,执行最后的打印 else: print "Nothing." -读 +依然要说明:上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。这是很煞风景的一句话。 + 读者是否能够读懂这段代码的含义? >阅读代码是一个提升自己编程水平的好方法。如何阅读代码?像看网上新闻那样吗?一目只看自己喜欢的文字,甚至标题看不完就开始喷。 @@ -206,6 +221,8 @@ a=8的时候,执行循环体中的break,跳出循环,执行最后的打印 上面的代码,读者不妨做注释,看看它到底在干什么。如果把`for n in range(99, 1, -1)`修改为`for n in range(99, 81, -1)`看看是什么结果? +循环就这么多内容,但它即将迎来一个最大的用处。 + ------ [总目录](./index.md)   |   [上节:语句(4)](./124.md)   |   [下节:文件(1)](./126.md) diff --git a/1code/12502p3.py b/1code/12502p3.py new file mode 100644 index 0000000..abfda92 --- /dev/null +++ b/1code/12502p3.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +#coding:utf-8 + +a = 8 +while a: + if a%2 == 0: + break + else: + print("%d is odd number"%a) + a = 0 + +print("%d is even number"%a) diff --git a/1code/12503p3.py b/1code/12503p3.py new file mode 100644 index 0000000..b50754c --- /dev/null +++ b/1code/12503p3.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +#coding:utf-8 + +a = 9 +while a: + if a%2 == 0: + a -=1 + continue + else: + print("%d is odd number"%a) + a -=1 From 54008a6805c08115313cd500a80ac45d8263ecbb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Sun, 3 Apr 2016 19:54:21 +0800 Subject: [PATCH 124/288] p3 --- 124.md | 22 +++++++++++++++ 126.md | 77 ++++++++++++++++++++++++++++++--------------------- 1code/130.txt | 1 + 3 files changed, 68 insertions(+), 32 deletions(-) create mode 100644 1code/130.txt diff --git a/124.md b/124.md index 5349a5d..94b9256 100644 --- a/124.md +++ b/124.md @@ -339,6 +339,28 @@ Python有一个非常强大的功能,就是列表解析,它这样使用: 在很多情况下,列表解析的执行效率高,代码简洁明了。是实际写程序中经常被用到的。 +现在Python的两个版本,对列表解释上,还是有一点点差别的,请认真看下面的比较操作。 + +Python 2: + + >>> i = 1 + >>> [ i for i in range(9)] + [0, 1, 2, 3, 4, 5, 6, 7, 8] + >>> i + 8 + +Python 3: + + >>> i = 1 + >>> [i for i in range(9)] + [0, 1, 2, 3, 4, 5, 6, 7, 8] + >>> i + 1 + +有没有观察到区别? + +先`i = 1`,然后是一个列表解析式,非常巧合的是,列表解析式中也用了变量`i`。这种情况,在编程中是常常遇到的,我们通常把`i=1`中的变量`i`称为处于全局命名空间里面(命名空间,是一个新词汇,暂且用起来,后面会讲述),而列表解析式中的变量`i`是在列表解析内,称为处在局部命名空间。在Python 3中,for循环里的变量不再与全局命名空间的变量有关联了。这种改变,窃以为,是进步。 + 对于循环,除了for之外,还有一个叫做while。 ------ diff --git a/126.md b/126.md index 72d0f73..37d49d2 100644 --- a/126.md +++ b/126.md @@ -2,18 +2,24 @@ #文件(1) -文件,是computer姑娘中非常重要的东西,在python里,它也是一种类型的对象,类似前面已经学习过的其它数据类型,包括文本的、图片的、音频的、视频的等等,还有不少没见过的扩展名的。事实上,在linux操作系统中,所有的东西都被保存到文件中。 +文件,是computer姑娘中非常重要的东西。如在Linux操作系统中,所有的东西都被保存到文件中。 -先在交互模式下查看一下文件都有哪些属性: +在Python里,它也很重要。只不过,Python 2和Python 3对它的态度有点不同。 + +在Python 2中,文件也是一种内建类型对象,其地位等同于前面已经学习过的列表、整数、字符串等类型。 + +在交互模式下,我们可以用`dir()`这种已经熟练的方法查看相关属性和方法。 >>> dir(file) ['__class__', '__delattr__', '__doc__', '__enter__', '__exit__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'closed', 'encoding', 'errors', 'fileno', 'flush', 'isatty', 'mode', 'name', 'newlines', 'next', 'read', 'readinto', 'readline', 'readlines', 'seek', 'softspace', 'tell', 'truncate', 'write', 'writelines', 'xreadlines'] -然后对部分属性进行详细说明,就是看官学习了。 +然而,这一切在Python 3中都变了。在Python 3中,再没有`file`这个内建类型了。如果读者使用的是Python 3,执行`dir(file)`,会报错,并且显示`NameError: name 'file' is not defined`。 -特别注意观察,在上面有`__iter__`这个东西。曾经在讲述列表的时候,是不是也出现这个东西了呢?是的。它意味着这种类型的数据是可迭代的(iterable)。在下面的讲解中,你就会看到了,能够用for来读取其中的内容。 +但,这并不妨碍我们对文件的研究。 + +暂且观察Python 2的`dir(file)`结果,里面有`__iter__`这个东西。曾经在讲述列表的时候,是不是也出现这个东西了呢?是的。它意味着这种类型的对象是可迭代的(iterable)。在下面的讲解中,你就会看到了,能够用for来读取其中的内容。 -##打开文件 +##读文件 在某个文件夹下面建立了一个文件,名曰:130.txt,并且在里面输入了如下内容: @@ -27,11 +33,11 @@ ![](./1images/12601.png) -在上面截图中,我在当前位置输入了python(我已经设置了环境变量,如果你没有,需要写全启动python命令路径),进入到交互模式。在这个交互模式下,这样操作: +在上面截图中,我在当前位置输入了`python`,进入到交互模式。在这个交互模式下,这样操作: >>> f = open("130.txt") #打开已经存在的文件 >>> for line in f: - ... print line + ... print line #Python 3: print(line) ... learn python @@ -39,44 +45,46 @@ qiwsir@gmail.com -提醒初学者注意,在那个文件夹输入了启动python交互模式的命令,那么,如果按照上面的方法`open("130.txt")`打开文件,就意味着这个文件130.txt是在当前文件夹内的。如果要打开其它文件夹内的文件,请用相对路径或者绝对路径来表示,从而让python能够找到那个文件。 +提醒初学者注意,在那个目录里输入了启动Python交互模式的命令,那么,如果按照上面的方法`open("130.txt")`打开文件,就意味着这个文件130.txt是在当前文件夹内的。如果要打开其它文件夹内的文件,请用相对路径或者绝对路径来表示,从而让Python能够找到那个文件。 -将打开的文件,赋值给变量f,这样也就是变量f跟对象文件130.txt用线连起来了(对象引用),本质上跟前面所讲述的其它类型数据进行赋值是一样的。 +将打开的文件,赋值给变量`f`,这样也就是变量`f`跟对象文件130.txt用线连起来了(对象引用),本质上跟前面所讲述的其它对象进行赋值是一样的。 -接下来,用for来读取文件中的内容,就如同读取一个前面已经学过的序列对象一样,如list、str、tuple,把读到的文件中的每行,赋值给变量line。也可以理解为,for循环是一行一行地读取文件内容。每次扫描一行,遇到行结束符号\n表示本行结束,然后是下一行。 +接下来,用`for`来读取文件中的内容,就如同读取一个前面已经学过的序列对象一样,把读到的文件中的每行,赋值给变量`line`。也可以理解为,用`for`循环一行一行地读取文件内容。每次扫描一行,遇到行结束符号`\n`表示本行结束,然后是下一行。 从打印的结果看出,每一行跟前面看到的文件内容中的每一行是一样的。只是行与行之间多了一空行,前面显示文章内容的时候,没有这个空行。或许这无关紧要,但是,还要深究一下,才能豁然。 -在原文中,每行结束有本行结束符号\n,表示换行。在for语句汇总,print line表示每次打印完line的对象之后,就换行,也就是打印完line的对象之后会增加一个\n。这样看来,在每行末尾就有两个\n,即:\n\n,于是在打印中就出现了一个空行。 +在原文中,每行结束有本行结束符号`\n`,表示换行。`print line`或者`print(line)`默认情况下,打印完`line`的对象之后会增加一个`\n`。这样看来,在每行末尾就有两个`\n`,即:`\n\n`,于是在打印中就出现了一个空行。 >>> f = open('130.txt') >>> for line in f: - ... print line, #后面加一个逗号,就去掉了原来默认增加的\n了,看看,少了空行。 + ... print line, #Python 3: print(line, end=',') ... learn python http://qiwsir.github.io qiwsir@gmail.com -在进行上述操作的时候,有没有遇到这样的情况呢? - - >>> f = open('130.txt') - >>> for line in f: - ... print line, - ... - learn python - http://qiwsir.github.io - qiwsir@gmail.com +如果读者完成了上述操作,紧接着做下面的操作: >>> for line2 in f: #在前面通过for循环读取了文件内容之后,再次读取, - ... print line2 #然后打印,结果就什么也显示,这是什么问题? + ... print line2 #然后打印,结果就什么也显示,这是什么问题? ... >>> -如果看官没有遇到上面问题,可以试试。这不是什么错误,是因为前一次已经读取了文件内容,并且到了文件的末尾了。再重复操作,就是从末尾开始继续读了。当然显示不了什么东西,但是python并不认为这是错误,因为后面就会讲到,或许在这次读取之前,已经又向文件中追加内容了。那么,如果要再次读取怎么办?就重新来一遍好了。这就好比有一个指针在指着文件中的每一行,每读完一行,指针向下移动一行,直到指针指向了文件的最末尾。当然,也有办法把指针移动到任何位置。 +这不是什么错误,是因为前一次已经读取了文件内容,并且到了文件的末尾了。再重复操作,就是从末尾开始继续读了。当然显示不了什么东西,但是Python并不认为这是错误。后面会对此进行讲解。 -特别提醒看官,因为当前的交互模式是在该文件所在目录启动的,所以,就相当于这个实验室和文件130.txt是同一个目录,这时候我们打开文件130.txt,就认为是在本目录中打开,如果文件不是在本目录中,需要写清楚路径。 +在这里,如果要再次读取,那就从新`f = open('130.txt')`。有点麻烦!怎奈知识尚不充足。 -比如:在上一级目录中(~/Documents/ITArticles/BasicPython),假如我进入到那个目录中,运行交互模式,然后试图打开130.txt文件。 +使用Python 3的读者,这里要注意了,如果你已经执行了`f = open('130.txt')`,就是已经建立了一个文件对象,这时候可以使用`dir()`来查看这个对象的方法和属性了。 + + >>> f = open("130.txt") + >>> dir(f) + ['_CHUNK_SIZE', '__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__lt__', '__ne__', '__new__', '__next__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_checkClosed', '_checkReadable', '_checkSeekable', '_checkWritable', '_finalizing', 'buffer', 'close', 'closed', 'detach', 'encoding', 'errors', 'fileno', 'flush', 'isatty', 'line_buffering', 'mode', 'name', 'newlines', 'read', 'readable', 'readline', 'readlines', 'seek', 'seekable', 'tell', 'truncate', 'writable', 'write', 'writelines'] + +不管两个版本的显示结果有哪些不同,它们相同的是都有`__iter__`属性,意味着在两个版本中,文件对象都是可迭代的。 + +特别提醒,因为我所演示的交互模式是在该文件所在目录启动的,所以,就相当于这个实验室和文件130.txt是同一个目录,这时候我们打开文件130.txt,就认为是在本目录中打开,如果文件不是在本目录中,需要写清楚路径。 + +比如:在上一级目录中(`~/Documents/ITArticles/BasicPython`),假如我进入到那个目录中,运行交互模式,然后试图打开130.txt文件。 ![](./1images/12602.png) @@ -85,7 +93,7 @@ File "<stdin>", line 1, in <module> IOError: [Errno 2] No such file or directory: '130.txt' - >>> f = open("./codes/130.txt") #必须得写上路径了(注意,windows的路径是\隔开,需要转义。对转义符,看官看以前讲座) + >>> f = open("./codes/130.txt") #必须得写上路径了(注意,windows的路径分隔符与此不同。) >>> for line in f: ... print line ... @@ -95,13 +103,13 @@ qiwsir@gmail.com - >>> +读文件,只是针对文件的操作之一,还有创建文件。 ##创建文件 上面的实验中,打开的是一个已经存在的文件。如何创建文件呢? - >>> nf = open("131.txt","w") + >>> nf = open("131.txt", "w") >>> nf.write("This is a file") 就这样创建了一个文件?并写入了文件内容呢?看看再说: @@ -110,7 +118,7 @@ 真的就这样创建了新文件,并且里面有那句话呢。 -看官注意了没有,这次我们同样是用open()这个函数,但是多了个"w",这是在告诉python用什么样的模式打开文件。也就是说,用open()打开文件,可以有不同的模式打开。看下表: +创建文件,我们同样是用`open()`这个函数,但是多了个`"w"`,这是在告诉Python用什么样的模式打开文件。也就是说,用`open()`操作文件,可以有不同的模式。看下表: | 模式 | 描述 | |------|------| @@ -130,8 +138,13 @@ >>> f = open("130.txt","r") >>> f <open file '130.txt', mode 'r' at 0xb750a700> + +Python 3中显示的结果信息更丰富、明确。 + + >>> f + <_io.TextIOWrapper name='130.txt' mode='r' encoding='cp936'> -可以用这种方式查看当前打开的文件是采用什么模式的,上面显示,两种模式是一样的效果,如果不写那个"r",就默认为是只读模式了。下面逐个对各种模式进行解释 +可以用这种方式查看当前打开的文件是采用什么模式的,上面显示,两种模式是一样的效果,如果不写那个`"r"`,就默认为是只读模式了。下面逐个对各种模式进行解释 **"w":以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容** @@ -139,7 +152,7 @@ >>> fp = open("131.txt") >>> for line in fp: #原来这个文件里面的内容 - ... print line + ... print line #Python 3: print(line) ... This is a file >>> fp = open("131.txt","w") #这时候再看看这个文件,里面还有什么呢?是不是空了呢? @@ -187,7 +200,7 @@ This is about 'with...as...' >>> -这里就不用close()了。而且这种方法更有python味道,或者说是更符合Pythonic的一个要求。 +这里就不用close()了。而且这种方法更有Python味道,或者说是更符合Pythonic的一个要求。 ------ diff --git a/1code/130.txt b/1code/130.txt new file mode 100644 index 0000000..a52799d --- /dev/null +++ b/1code/130.txt @@ -0,0 +1 @@ +learn pythonhttp://qiwsir.github.ioqiwsir@gmail.com \ No newline at end of file From c287d28ce76c94e979adb430e13e53e5a940a29f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 4 Apr 2016 16:30:20 +0800 Subject: [PATCH 125/288] p3 --- 127.md | 88 +++++++++++++++++++++++++++++++++++++-------------- 1code/127.txt | 3 ++ 2 files changed, 68 insertions(+), 23 deletions(-) create mode 100644 1code/127.txt diff --git a/127.md b/127.md index e7c3d25..9e0a2ac 100644 --- a/127.md +++ b/127.md @@ -2,7 +2,9 @@ #文件(2) -上一节,对文件有了初步认识。要牢记,文件无非也是一种类型的数据。 +文件,也是对象。 + +在Python 2中还是一种内建的类型,在Python 3中被取消了,可是,这并不意味这其地位降低。 ##文件的状态 @@ -16,7 +18,7 @@ >>> file_stat.st_ctime #这个是文件创建时间 1407734600.0882277 -这是什么时间?看不懂!别着急,换一种方式。在python中,有一个模块`time`,是专门针对时间设计的。 +这是什么时间?看不懂!别着急,换一种方式。在Python中,有一个模块`time`,是专门针对时间设计的。 >>> import time >>> time.localtime(file_stat.st_ctime) #这回看清楚了。 @@ -24,32 +26,38 @@ ##read/readline/readlines -上节中,简单演示了如何读取文件内容,但是,在用`dir(file)`的时候,会看到三个函数:read/readline/readlines,它们各自有什么特点,为什么要三个?一个不行吗? +用`open()`能够打开文件,在用for循环,可以将文件的内容读取出来。 -在读者向下看下面内容之前,请想一想,如果要回答这个问题,你要用什么方法?注意,我问的是用什么方法能够找到答案,不是问答案内容是什么。因为内容,肯定是在某个地方存放着呢,关键是用什么方法找到。 +但是,在查看文件的属性和方法的时候,会看到三个方法:`read, readline, readlines`。 -搜索?是一个不错的方法。 +从名称上看,它们应该都是跟“读”有关的,但是,又应该有差别。 -还有一种,就是在交互模式下使用的,你肯定也想到了。 +的确如此。 - >>> help(file.read) +还是对比着看一看,并且还要Python 2和Python 3的文档对比。 -用这样的方法,可以分别得到三个函数的说明: +Python 2: + >>> help(file.read) + Help on method_descriptor: read(...) read([size]) -> read at most size bytes, returned as a string. If the size argument is negative or omitted, read until EOF is reached. Notice that when in non-blocking mode, less data than what was requested may be returned, even if no size parameter was given. - + + >>> help(file.readline) + Help on method_descriptor: readline(...) readline([size]) -> next line from the file, as a string. Retain newline. A non-negative size argument limits the maximum number of bytes to return (an incomplete line may be returned then). Return an empty string at EOF. - + + >>> help(file.readlines) + Help on method_descriptor: readlines(...) readlines([size]) -> list of strings, each a line from the file. @@ -57,7 +65,34 @@ The optional size argument, if given, is an approximate bound on the total number of bytes in the lines returned. -对照一下上面的说明,三个的异同就显现了。 +Python 3: + + >>> f = open("130.txt") + >>> help(f.read) + Help on built-in function read: + read(size=-1, /) method of _io.TextIOWrapper instance + Read at most n characters from stream. + + Read from underlying buffer until we have n characters or we hit EOF. + If n is negative or omitted, read until EOF. + + >>> help(f.readline) + Help on built-in function readline: + readline(size=-1, /) method of _io.TextIOWrapper instance + Read until newline or EOF. + + Returns an empty string if EOF is hit immediately. + + >>> help(f.readlines) + Help on built-in function readlines: + readlines(hint=-1, /) method of _io.TextIOWrapper instance + Return a list of lines from the stream. + + hint can be specified to control the number of lines read: no more + lines will be read if the total size (in bytes/characters) of all + lines so far exceeds hint. + +对照一下上面的说明,三个的异同就显现了。而且,要想了解Python 2和Python 3之间的不同,还可以将两个版本的对照一下。好像也没有什么不同哦。 EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/End-of-file)中居然有对它的解释: @@ -89,13 +124,13 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E 'You Raise Me Up\nWhen I am down and, oh my soul, so weary;\nWhen troubles come and my heart burdened be;\nThen, I am still and wait here in the silence,\nUntil you come and sit awhile with me.\nYou raise me up, so I can stand on mountains;\nYou raise me up, to walk on stormy seas;\nI am strong, when I am on your shoulders;\nYou raise me up: To more than I can be.\n' >>> f.close() -**提示:养成一个好习惯,**只要打开文件,不用该文件了,就一定要随手关闭它。如果不关闭它,它还驻留在内存中,后面又没有对它的操作,是不是浪费内存空间了呢?同时也增加了文件安全的风险。 +**提示:养成一个好习惯,**只要打开文件,不用该文件了,就一定要随手关闭它。 ->注意:在python中,'\n'表示换行,这也是UNIX系统中的规范。但是,在奇葩的windows中,用'\r\n'表示换行。python在处理这个的时候,会自动将'\r\n'转换为'\n'。 +>注意:在python中,'\n'表示换行,这也是UNIX系统中的规范。但是,在奇葩的windows中,用'\r\n'表示换行。Python在处理这个的时候,会自动将'\r\n'转换为'\n'。 请仔细观察,得到的就是一个大大的字符串,但是这个字符串里面包含着一些符号`\n`,因为原文中有换行符。如果用print输出这个字符串,就是这样的了,其中的`\n`起作用了。 - >>> print content + >>> print content #Python 3: print(content) You Raise Me Up When I am down and, oh my soul, so weary; When troubles come and my heart burdened be; @@ -128,7 +163,7 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E line = f.readline() if not line: #到EOF,返回空字符串,则终止循环 break - print line , #注意后面的逗号,去掉print语句后面的'\n',保留原文件中的换行 + print line , #Python 3: print(line, end='') f.close() #别忘记关闭文件 @@ -155,7 +190,7 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E 返回的是一个列表,列表中每个元素都是一个字符串,每个字符串中的内容就是文件的一行文字,含行末的符号。显而易见,它是可以用for来循环的。 >>> for line in content: - ... print line , + ... print line , #Python 3: print(line, end='') ... You Raise Me Up When I am down and, oh my soul, so weary; @@ -172,11 +207,11 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E 前面已经说明了,如果文件太大,就不能用`read()`或者`readlines()`一次性将全部内容读入内存,可以使用while循环和`readline()`来完成这个任务。 -此外,还有一个方法:fileinput模块 +此外,还有一个方法:`fileinput`模块 >>> import fileinput >>> for line in fileinput.input("you.md"): - ... print line , + ... print line , #Python 3: print(line, end='') ... You Raise Me Up When I am down and, oh my soul, so weary; @@ -195,7 +230,7 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E 还有一种方法,更为常用: >>> for line in f: - ... print line , + ... print line , #Python 3: print(line, end='') ... You Raise Me Up When I am down and, oh my soul, so weary; @@ -207,11 +242,11 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E I am strong, when I am on your shoulders; You raise me up: To more than I can be. -之所以能够如此,是因为file是可迭代的数据类型,直接用for来迭代即可。 +之所以能够如此,是因为文件是可迭代的对象,直接用for来迭代即可。 ##seek -这个函数的功能就是让指针移动。特别注意,它是以字节为单位进行移动的。比如: +这个函数的功能就是让指针移动。比如: >>> f = open("you.md") >>> f.readline() @@ -219,7 +254,7 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E >>> f.readline() 'When I am down and, oh my soul, so weary;\n' -现在已经移动到第四行末尾了,看`seek()`的能力: +现在来看`seek()`的能力: >>> f.seek(0) @@ -232,12 +267,17 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E >>> f.tell() 17L + +这不是在低17行。在Python 2中返回的是`17L`,很容易让人产生如此误解。但是在Python 3中返回的是`17`,又可能迷茫,单位是什么呢? + +读者不妨数一数,是按照字符,`'You Raise Me Up\n'`从0开始,到最后,是不是正好为`17`。提醒注意的是,如果你用汉语的等文字,就需要注意编码问题了。请查看本教程有关编码的讨论。 + >>> f.seek(4) `f.seek(4)`就将位置定位到从开头算起的第四个字符后面,也就是"You "之后,字母"R"之前的位置。 >>> f.tell() - 4L + 4L #Python 3返回:4 `tell()`也是这么说的。这时候如果使用`readline()`,得到就是从当前位置开始到行末。 @@ -265,6 +305,8 @@ whence的值: - 是1时,表示从当前位置开始计算偏移量。offset如果是负数,表示从当前位置向前移动,整数表示向后移动。 - 是2时,表示相对文件末尾移动。 +前面已经提到了,文件是可迭代的,并且还学过其它可迭代的对象,看来迭代是一个有必要讨论的问题。 + ------ [总目录](./index.md)   |   [上节:文件(1)](./126.md)   |   [下节:迭代](./128.md) diff --git a/1code/127.txt b/1code/127.txt new file mode 100644 index 0000000..f8c83ae --- /dev/null +++ b/1code/127.txt @@ -0,0 +1,3 @@ +����ʦhello +����˫ܰ +����ʦ \ No newline at end of file From e74a5c70de54056ca1784a39893b9db3937f8942 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 4 Apr 2016 19:53:31 +0800 Subject: [PATCH 126/288] p3 --- 128.md | 122 +++++++++++++++++++++++++++------------------------------ 1 file changed, 57 insertions(+), 65 deletions(-) diff --git a/128.md b/128.md index 61c0397..cf4706b 100644 --- a/128.md +++ b/128.md @@ -2,34 +2,43 @@ #迭代 -跟一些比较牛X的程序员交流,经常听到他们嘴里冒出一个不标准的英文单词,而loop、iterate、traversal和recursion如果不在其内,总觉得他还不够牛X。当让,真正牛X的绝对不会这么说的,他们只是说“循环、迭代、遍历、递归”,然后再问“这个你懂吗?”。哦,这就是真正牛X的程序员。不过,他也仅仅是牛X罢了,还不是大神。大神程序员是什么样儿呢?他是扫地僧,大隐隐于市。 +Bill正在介绍他的项目,嘴里不断蹦出“loop、iterate、traversal、recursion”这些单词,夹杂在汉语汇总。旁边的小白们,都瞠目结舌,“不明觉厉”,心中的敬佩油然而生, -先搞清楚这些名词再说别的: +其实,Bill不是真正的大牛,我见过真牛的,他们绝对不会这么说的,他们通常总是轻描淡写,不管我认为多么麻烦的,他们都是举重若轻地解决: + +“你就循环一下,然后来个迭代”, + +“最后只要花几分钟写个递归就好了” + +然后再问“这个你懂吗?”。 + +哦,这就是真正牛X的程序员。虽然还是不懂。 + +所以,我们还是老老实实地先搞清楚这些名词再说别的: - 循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。 - 迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。 - 递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。 - 遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。 -对于这四个听起来高深莫测的词汇,其实前面,已经涉及到了一个——循环(loop),本节主要介绍一下迭代(iterate),看官在网上google,就会发现,对于迭代和循环、递归之间的比较的文章不少,分别从不同角度将它们进行了对比。这里暂不比较,先搞明白python中的迭代。 +对于这四个听起来高深莫测的词汇,其实前面,已经涉及到了一个——循环(loop),本节主要介绍一下迭代(iterate),在网上google,就会发现,对于迭代和循环、递归之间的比较的文章不少,分别从不同角度将它们进行了对比。这里暂不比较,先搞明白Python中的迭代。 当然,迭代的话题如果要说起来,会很长,本着循序渐进的原则,这里介绍比较初级的。 ##逐个访问 -在python中,访问对象中每个元素,可以这么做:(例如一个list) +在Python中,访问对象中每个元素,可以这么做:(例如一个list) - >>> lst - ['q', 'i', 'w', 's', 'i', 'r'] + >>> lst = ['q', 'i', 'w', 's', 'i', 'r'] >>> for i in lst: - ... print i, + ... print i, #Python 3: print(i, end='') ... q i w s i r 除了这种方法,还可以这样: >>> lst_iter = iter(lst) #对原来的list实施了一个iter() - >>> lst_iter.next() #要不厌其烦地一个一个手动访问 + >>> lst_iter.next() #Python 3,请用:lst_iter.__next__() 'q' >>> lst_iter.next() 'i' @@ -46,64 +55,56 @@ File "<stdin>", line 1, in <module> StopIteration -> 在python3中, lst_iter.next()方法变成了lst_iter.\_\_next__(). 取而代之的是next(lst_iter). - `iter()`是一个内建函数,其含义是: -上面的`next()`就是要获得下一个元素,但是做为一名优秀的程序员,最佳品质就是“懒惰”,当然不能这样一个一个地敲啦,于是就: + >>> help(iter) + Help on built-in function iter in module builtins: + + iter(...) + iter(iterable) -> iterator + iter(callable, sentinel) -> iterator + + Get an iterator from an object. In the first form, the argument must + supply its own iterator, or be a sequence. + In the second form, the callable is called until it returns the sentinel. + +`iter()`函数返回的是一个迭代器对象。关于迭代器对象,本教程会有专门讲授。 + + >>> type(lst_iter) + <type 'listiterator'> #Python 3: <class 'list_iterator'> + +所有的迭代器对象,在Python 2中有一个`next()`方法,在Python 3中,相应的修改为了`__next__()`。所以使用不同版本,要注意一下这个方法名称的变更。 + +迭代器,当然是可迭代的。本教程已经介绍过如果判断一个对象是否为可迭代对象的方法了。 + +在上面的举例中,`next()`或者`__next__()`就是要获得下一个元素,但是做为一名优秀的程序员,最佳品质就是“懒惰”,当然不能这样一个一个地敲啦,于是就: >>> while True: - ... print lst_iter.next() + ... print lst_iter.next() #Python 3: print(lst_iter.__next__()) ... - Traceback (most recent call last): #居然报错,而且错误跟前面一样?什么原因 + Traceback (most recent call last): File "<stdin>", line 2, in <module> StopIteration 先不管错误,再来一遍。 - >>> lst_iter = iter(lst) #上面的错误暂且搁置,回头在研究 + >>> lst_iter = iter(lst) >>> while True: - ... print lst_iter.next() + ... print lst_iter.next() #Python 3: print(lst_iter.__next__()) ... - q #果然自动化地读取了 + q i w s i r - Traceback (most recent call last): #读取到最后一个之后,报错,停止循环 + Traceback (most recent call last): #读取到最后一个之后,停止循环 File "<stdin>", line 2, in <module> StopIteration -首先了解一下上面用到的那个内置函数:iter(),官方文档中有这样一段话描述之: - -> iter(o[, sentinel]) - -> Return an iterator object. The first argument is interpreted very differently depending on the presence of the second argument. Without a second argument, o must be a collection object which supports the iteration protocol (the __iter__() method), or it must support the sequence protocol (the __getitem__() method with integer arguments starting at 0). If it does not support either of those protocols, TypeError is raised. If the second argument, sentinel, is given, then o must be a callable object. The iterator created in this case will call o with no arguments for each call to its next() method; if the value returned is equal to sentinel, StopIteration will be raised, otherwise the value will be returned. - -大意是说...(此处故意省略若干字,因为我相信看此文章的看官英语水平是达到看文档的水平了,如果没有,也不用着急,找个词典什么的帮助一下。) +看上面的演示的例子会发现,如果用for来迭代,当到末尾的时候,就自动结束了,不会报错。如果用`next()`或者`__next__()`,当最后一个完成之后,它不会自动结束,还要向下继续,但是后面没有元素了,于是就报一个称之为StopIteration的信息(名叫:停止迭代,这分明是警告)。 -尽管不翻译了,但是还要提炼一下主要的东西: - -- 返回值是一个迭代器对象 -- 参数需要是一个符合迭代协议的对象或者是一个序列对象 -- next()配合与之使用 - -什么是“可迭代的对象”呢?在前面学习的时候,曾经提到过,如果忘记了请往前翻阅。 - -一般,我们常常将哪些能够用诸如循环语句之类的方法来一个一个读取元素的对象,就称之为可迭代的对象。那么用来循环的如for就被称之为迭代工具。 - -用严格点的语言说:所谓迭代工具,就是能够按照一定顺序扫描迭代对象的每个元素(按照从左到右的顺序)。 - -显然,除了for之外,还有别的可以称作迭代工具。 - -那么,刚才介绍的iter()的功能呢?它与next()配合使用,也是实现上述迭代工具的作用。 - -在python中,甚至在其它的语言中,迭代这块的说法比较乱,主要是名词乱,刚才我们说,那些能够实现迭代的东西,称之为迭代工具,就是这些迭代工具,不少程序员都喜欢叫做迭代器。当然,这都是汉语翻译,英语就是iterator。 - -看官看上面的所有例子会发现,如果用for来迭代,当到末尾的时候,就自动结束了,不会报错。如果用iter()...next()迭代,当最后一个完成之后,它不会自动结束,还要向下继续,但是后面没有元素了,于是就报一个称之为StopIteration的错误(这个错误的名字叫做:停止迭代,这哪里是报错,分明是警告)。 - -看官还要关注iter()...next()迭代的一个特点。当迭代对象lst_iter被迭代结束,即每个元素都读取了一遍之后,指针就移动到了最后一个元素的后面。如果再访问,指针并没有自动返回到首位置,而是仍然停留在末位置,所以报StopIteration,想要再开始,需要重新载入迭代对象。所以,当我在上面重新进行迭代对象赋值之后,又可以继续了。这在for等类型的迭代工具中是没有的。 +还要关注迭代器对象的另外一个特点,当对象`lst_iter`被迭代结束,即每个元素都读取了一遍之后,指针就移动到了最后一个元素的后面。如果再访问,指针并没有自动返回到首位置,而是仍然停留在末位置,所以报StopIteration,想要再开始,需要重新载入迭代对象。所以,当我在上面重新进行迭代对象赋值之后,又可以继续了。 ##文件迭代器 @@ -133,11 +134,11 @@ 以上演示的是用readline()一行一行地读。当然,在实际操作中,我们是绝对不能这样做的,一定要让它自动进行,比较常用的方法是: - >>> for line in f: #这个操作是紧接着上面的操作进行的,请看官主要观察 - ... print line, #没有打印出任何东西 - ... + >>> for line in f: #这个操作是紧接着上面的操作进行的 + ... print line, #Python 3: print(line) + ... #没有打印出什么东西 -这段代码之所没有打印出东西来,是因为经过前面的迭代,指针已经移到了最后了。这就是迭代的一个特点,要小心指针的位置。 +这段代码之所没有打印出东西来,是因为经过前面的操作,指针已经移到了最后了。这就是迭代的一个特点,要小心指针的位置。 >>> f = open("208.txt") #从头再来 >>> for line in f: @@ -149,12 +150,10 @@ http://qiwsir.github.io Its language is Chinese. -这种方法是读取文件常用的。另外一个readlines()也可以。但是,需要有一些小心的地方,看官如果想不起来小心什么,可以再将关于文件的课程复习一遍。 - -上面过程用next()也能够读取。 +上面过程用`next()`或者`__next__()`也能够读取。 >>> f = open("208.txt") - >>> f.next() + >>> f.next() #Python 3: f.__next__() 'Learn python with qiwsir.\n' >>> f.next() 'There is free python course.\n' @@ -169,18 +168,11 @@ File "<stdin>", line 1, in <module> StopIteration -如果用next(),就可以直接读取每行的内容。这说明文件是天然的可迭代对象,不需要用iter()转换了。 - -再有,我们用for来实现迭代,在本质上,就是自动调用next(),只不过这个工作,已经让for偷偷地替我们干了,到这里,列位是不是应该给for取另外一个名字:它叫雷锋。 - -还有,列表解析也能够做为迭代工具,在研究列表的时候,看官想必已经清楚了。那么对文件,是否可以用?试一试: - - >>> [ line for line in open('208.txt') ] - ['Learn python with qiwsir.\n', 'There is free python course.\n', 'The website is:\n', 'http://qiwsir.github.io\n', 'Its language is Chinese.\n'] +如果用`next()`或者`__next__()`,就可以直接读取每行的内容。这说明文件是天然的可迭代对象,不需要用iter()转换了。 -至此,看官难道还不为列表解析所折服吗?真的很强大,又强又大呀。 +再有,我们用for来实现迭代,在本质上,就是自动调用`next()`或者`__next__()`,只不过这个工作,已经让for偷偷地替我们干了,到这里,列位是不是应该给for取另外一个名字:它叫雷锋。 -其实,迭代器远远不止上述这么简单,下面我们随便列举一些,在python中还可以这样得到迭代对象中的元素。 +其实,迭代器远远不止上述这么简单,下面我们随便列举一些,在Python中还可以这样得到迭代对象中的元素。 >>> list(open('208.txt')) ['Learn python with qiwsir.\n', 'There is free python course.\n', 'The website is:\n', 'http://qiwsir.github.io\n', 'Its language is Chinese.\n'] @@ -203,9 +195,9 @@ >>> e 'Its language is Chinese.\n' -上述方式,在编程实践中不一定用得上,只是向看官展示一下,并且看官要明白,可以这么做,不是非要这么做。 +上述方式,在编程实践中不一定用得上,只是向读者展示一下,并且要明白,可以这么做,不是非要这么做。 -补充一下,字典也可以迭代,看官自己不妨摸索一下(其实前面已经用for迭代过了,这次请摸索一下用iter()...next()手动一步一步迭代)。 +最后透露,字典和元组都可以写成类似列表解析式的样式,也可以迭代,读者不妨摸索一下。 ------ From 11d61c5fe9352f33d406673e0c0ddc1f93078726 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 5 Apr 2016 11:15:02 +0800 Subject: [PATCH 127/288] p3 --- 129.md | 65 ++++++++++++++++++++++++++++++++++++---------------------- 1 file changed, 40 insertions(+), 25 deletions(-) diff --git a/129.md b/129.md index 31fafb8..e2eb7de 100644 --- a/129.md +++ b/129.md @@ -2,17 +2,27 @@ #练习 -已经将python的基础知识学习完毕,包含基本的数据类型(或者说对象类型)和语句。利用这些,加上个人的聪明才智,就能解决一些问题了。 +有学习者问:“看完你的教程,我可以达到什么水平?” + +我无语。 + +同样小学、中学甚至大学,同班同学读同一本书,天天由同一个老师讲课,为什么有的是学渣、有的是学霸? + +指望读完某本书,就要达到某个水平,是一种懒汉思维。 + +我在本教程的开篇已经说过了,从小工到专家的道路,就普通人来讲,“一万小时”的训练是必不可少的,也就是要做练习。 + +本教程并没有专门提供练习的题目。但并不意味着不需要练习。本节就是一个示例,告诉各位读者,自己找题目做是非常必要的。 ###练习1 **问题描述** -有一个列表,其中包括10个元素,例如这个列表是[1,2,3,4,5,6,7,8,9,0],要求将列表中的每个元素一次向前移动一个位置,第一个元素到列表的最后,然后输出这个列表。最终样式是[2,3,4,5,6,7,8,9,0,1] +有一个列表,其中包括10个元素,例如这个列表是[1, 2, 3, 4, 5, 6, 7, 8, 9, 0 ] , 要求将列表中的每个元素一次向前移动一个位置,第一个元素到列表的最后,然后输出这个列表。最终样式是[2,3,4,5,6,7,8,9,0,1] **解析** -或许刚看题目的读者,立刻想到把列表中的第一个元素拿出来,然后追加到最后,不就可以了吗?是的。就是这么简单。主要是联系一下已经学习过的列表操作。 +或许刚看题目的读者,立刻想到把列表中的第一个元素拿出来,然后追加到最后,不就可以了吗?是的。就是这么简单。主要是练习一下已经学习过的列表操作。 看下面代码之前,不妨自己写一写试试。然后再跟我写的对照。 @@ -24,11 +34,11 @@ # coding=utf-8 raw = [1,2,3,4,5,6,7,8,9,0] - print raw + print raw #Python 3: print(raw) b = raw.pop(0) raw.append(b) - print raw + print raw #Python 3: print(raw) 执行这个文件: @@ -52,39 +62,43 @@ 这个问题中,需要几个知识点: -第一个是随机产生整数。一种方法是你做100个纸片,分别写上1到100的数字(每张上一个整数),然后放到一个盒子里面。抓出一个,看是几,就讲这个数字写到列表中,直到抓出第40个。这样得到的列表是随机了。但是,好像没有python什么事情。那么久要用另外一种方法,让python来做。python中有一个模块:random,专门提供随机事件的。 +第一是随机产生整数。一种方法是你做100个纸片,分别写上1到100的数字(每张上一个整数),然后放到一个盒子里面。抓出一个,看是几,就讲这个数字写到列表中,直到抓出第40个。这样得到的列表是随机了。 + +Python中有一个模块:`random`,专门提供随机事件的。 >>> dir(random) ['BPF', 'LOG4', 'NV_MAGICCONST', 'RECIP_BPF', 'Random', 'SG_MAGICCONST', 'SystemRandom', 'TWOPI', 'WichmannHill', '_BuiltinMethodType', '_MethodType', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_acos', '_ceil', '_cos', '_e', '_exp', '_hashlib', '_hexlify', '_inst', '_log', '_pi', '_random', '_sin', '_sqrt', '_test', '_test_generator', '_urandom', '_warn', 'betavariate', 'choice', 'division', 'expovariate', 'gammavariate', 'gauss', 'getrandbits', 'getstate', 'jumpahead', 'lognormvariate', 'normalvariate', 'paretovariate', 'randint', 'random', 'randrange', 'sample', 'seed', 'setstate', 'shuffle', 'triangular', 'uniform', 'vonmisesvariate', 'weibullvariate'] 在这个问题中,只需要`random.randint()`,专门获取某个范围内的随机整数。 -第二个是求平均数,方法是将所有数字求和,然后除以总人数(40)。求和方法就是`sum()`函数。在计算平均数的时候,要注意,一般平均数不能仅仅是整数,最好保留一位小数吧。这是除法中的知识了。 +第二是求平均数,方法是将所有数字求和,然后除以总人数(40)。求和方法就是`sum()`函数。在计算平均数的时候,要注意,一般平均数不能仅仅是整数,最好保留一位小数吧。这是除法中的知识了。 -第三个是列表排序。 +第三是列表排序。 下面就依次展开。不忙,在我开始之前,你先试试吧。 #!/usr/bin/env python # coding=utf-8 - from __future__ import division + from __future__ import division #Python 3不需要这行引入模块的操作 import random score = [random.randint(0,100) for i in range(40)] #0到100之间,随机得到40个整数,组成列表 - print score + print score #Python 3: print(score) num = len(score) sum_score = sum(score) #对列表中的整数求和 ave_num = sum_score/num #计算平均数 less_ave = len([i for i in score if i<ave_num]) #将小于平均数的找出来,组成新的列表,并度量该列表的长度 - print "the average score is:%.1f" % ave_num - print "There are %d students less than average." % less_ave - + print "the average score is:{:.1f}".format(ave_num) + #Python 3: print("the average score is:{:.1f}".format(ave_num)) + print "There are {}students less than average.".format(less_ave) + #Python 3: print("There are {} students less than average.".format(less_ave)) + sorted_score = sorted(score, reverse=True) #对原列表排序 - print sorted_score + print sorted_score #Python 3: print(sorted_score) -##练习3 +###练习3 **问题描述** @@ -101,15 +115,16 @@ string = "I love code." #在code前面有两个空格,应该删除一个 print string #为了能够清楚看到每步的结果,把过程中的量打印出来 + #Python 3: print(string) str_lst = string.split(" ") #以空格为分割,得到词汇的列表 - print str_lst + print str_lst #Python 3: print(str_lst) words = [s.strip() for s in str_lst] #去除单词两边的空格 - print words + print words #Python 3: print(words) new_string = " ".join(words) #以空格为连接符,将单词链接起来 - print new_string + print new_string #Python 3: print(new_string) 保存之后,运行这个代码,结果是: @@ -130,9 +145,9 @@ #!/usr/bin/env python # coding=utf-8 - + string = "I love code." - print string + print string #Python 3: print(string),以下类似操作都这样处理,不再重复。 str_lst = string.split(" ") print str_lst @@ -152,7 +167,7 @@ OK!完美地解决了问题,去除了code前面的一个空格。 -##练习4 +###练习4 **问题描述** @@ -166,8 +181,8 @@ OK!完美地解决了问题,去除了code前面的一个空格。 上面故事是一个著名的数列——斐波那契数列——的起源。斐波那契数列用数学方式表示就是: - a0 = 0 (n=0) - a1 = 1 (n=1) + a[0] = 0 (n=0) + a[1] = 1 (n=1) a[n] = a[n-1] + a[n-2] (n>=2) 我们要做的事情是用程序计算出n=100时的值。 @@ -176,7 +191,7 @@ OK!完美地解决了问题,去除了code前面的一个空格。 **解析** -斐波那契数列是各种编程语言中都要秀一下的东西,通常用在阐述“递归”中。什么是递归?后面的python中也会讲到。不过,在这里不准备讲。 +斐波那契数列是各种编程语言中都要秀一下的东西,通常用在阐述“递归”中。什么是递归?后面会介绍。 其实,如果用递归来写,会更容易明白。但是,这里我给出一个用for循环写的,看看是否能够理解之。 @@ -192,7 +207,7 @@ OK!完美地解决了问题,去除了code前面的一个空格。 保存运行之,看看结果和你推算的是否一致。 -##练习5 +###练习5 **问题描述** From 0cf444ae62f238bf845b72f1f4852c00852d6afa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 5 Apr 2016 11:20:18 +0800 Subject: [PATCH 128/288] p3 --- 130.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/130.md b/130.md index e405843..bba0276 100644 --- a/130.md +++ b/130.md @@ -4,6 +4,8 @@ 特别说明,这一讲的内容不是我写的,是我从[《Python自省指南》](http://www.ibm.com/developerworks/cn/linux/l-pyint/#ibm-pcon)抄录过来的,当然,为了适合本教程,我在某些地方做了修改或者重写。 +本节内容,并不是本教程的必须部分,放到这里,是让学习者对如何应用Python的“自省”机制实现自学,有一些了解罢了。 + ##什么是自省? 在日常生活中,自省(introspection)是一种自我检查行为。自省是指对某人自身思想、情绪、动机和行为的检查。伟大的哲学家苏格拉底将生命中的大部分时间用于自我检查,并鼓励他的雅典朋友们也这样做。他甚至对自己作出了这样的要求:“未经自省的生命不值得存在。”无独有偶,在中国《论语》中,也有这样的名言:“吾日三省吾身”。显然,自省对个人成长多么重要呀。 From cfb61020fb7f9ac3bc2bb7259cef5ab332074ee9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 5 Apr 2016 16:47:10 +0800 Subject: [PATCH 129/288] p3 --- 201.md | 102 +++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 71 insertions(+), 31 deletions(-) diff --git a/201.md b/201.md index c16c2b5..0988d35 100644 --- a/201.md +++ b/201.md @@ -27,7 +27,11 @@ ###变量不仅仅是数 -变量x只能是任意数吗?其实,一个函数,就是一个对应关系。读者尝试着将上面表达式的x理解为馅饼,4x+3,就是4个馅饼在加上3(一般来讲,单位是统一的,但你非让它不统一,也无妨),这个结果对应着另外一个东西,那个东西比如说是iphone。或者说可以理解为4个馅饼加3就对应一个iphone。这就是所谓映射关系。 +变量`x`只能是任意数吗? + +其实,一个函数,就是一个对应关系。 + +读者尝试着将上面表达式的`x`理解为馅饼,`4x+3`就是4个馅饼在加上3(一般来讲,单位是统一的,但你非让它不统一,也无妨),这个结果对应着另外一个东西,那个东西比如说是iphone。或者说可以理解为4个馅饼加3就对应一个iphone。这就是所谓映射关系。 所以,x,不仅仅是数,可以是你认为的任何东西。 @@ -37,11 +41,13 @@ 我也不清楚原因。不过,我清楚地知道,变量可以用x,也可以用别的符号,比如y,z,k,i,j...,甚至用alpha,beta这样的字母组合也可以。 -**变量在本质上就是一个占位符。**这是一针见血的理解。什么是占位符?就是先把那个位置用变量占上,表示这里有一个东西,至于这个位置放什么东西,以后再说,反正先用一个符号占着这个位置(占位符)。 +**变量在本质上就是一个占位符。**这是一针见血的理解。 + +什么是占位符?就是先把那个位置用变量占上,表示这里有一个东西,至于这个位置放什么东西,以后再说,反正先用一个符号占着这个位置(占位符)。 其实在高级语言编程中,变量比我们在初中数学中学习的要复杂。但是,先不管那些,复杂东西放在以后再说了。现在,就按照初中数学的水平来研究Python中的变量。 -通常使小写字母来命名Python中的变量,也可以在其中加上下划线什么的,表示区别。比如:alpha,x,j,p_beta,这些都可以做为python的变量。 +通常使小写字母来命名Python中的变量,也可以是用下划线连接的多个单词。比如:alpha,x,j,p_beta,这些都可以做为Python的变量。 ##建立简单函数 @@ -52,7 +58,7 @@ 这种方式建立的函数,跟在初中数学中学习的没有什么区别。当然,这种方式的函数,在编程实践中没有什么用途。 -别急躁,你在输入a=3,然后输入y,看看得到什么结果呢? +别急躁,你在输入`a=3`,然后输入`y`,看看得到什么结果呢? >>> a = 2 >>> y = 3 * a + 2 @@ -73,14 +79,14 @@ >>> y 11 -特别注意,如果没有先 a = 2 ,就直接下函数表达式了,像这样,就会报错。 +特别注意,如果没有先 `a = 2` ,就直接下函数表达式了,像这样,就会报错。 >>> y = 3 * a + 2 Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'a' is not defined -注意看错误提示,a是一个变量,提示中告诉我们这个变量没有定义。显然,如果函数中要使用某个变量,不得不提前定义出来。定义方法就是给这个变量赋值。 +注意看错误提示,`a`是一个变量,提示中告诉我们这个变量没有定义。显然,如果函数中要使用某个变量,不得不提前定义出来。定义方法就是给这个变量赋值——这跟纯粹数学有所区别了。 ##建立实用的函数 @@ -111,12 +117,12 @@ - `def`: 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数。`def`做在那一行,包括后面的`add_function(a, b)`,被称为函数头。 - `add_function`:这是函数名称。取名字是有讲究的,就好比你的名字一样。在Python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢(严格地说,是把两个对象“相加”,这里相加的含义是比较宽泛的,包括对字符串等相加)? -- `(a,b)`:这是参数列表。要写在括号里面。这是一个变量列表,其中的变量指向函数的输入。在这个例子中,函数有两项输入,分别是a和b。在通常的函数中,输入项没有限定,可以是任意数量,当然也可以没有输入,这时候的参数列表就是一对空着的圆括号(),但是,必须得有这个圆括号。 +- `(a,b)`:这是参数列表。要写在括号里面。这是一个变量(参数)列表,其中的变量(参数)指向函数的输入。在这个例子中,函数有两项输入,分别是`a`和`b`。在通常的函数中,输入项没有限定,可以是任意数量,当然也可以没有输入,这时候的参数列表就是一对空着的圆括号(),但是,必须得有这个圆括号。 - `:`:这个冒号非常非常重要,如果少了,就报错了。这和前面的语句是类似的,冒号表示函数头结束,下面要开始函数体的内容了。 -- `c = a + b`:这一行开始,就是函数体。函数体使一个缩进了四个空格的代码块,完成你需要完成的工作。在这个代码块中,可以使用函数头中的变量,当然,不使用也可以。缩进四个空格。这是python的规定,要牢记,不可丢掉,丢了就报错。这句话就是将函数头的变量相加,结果赋值与另外一个变量c。 +- `c = a + b`:这一行开始,就是函数体。函数体使一个缩进了四个空格的代码块,完成你需要完成的工作。在这个代码块中,可以使用函数头中的变量,当然,不使用也可以。缩进四个空格。这是Python的规定,要牢记,不可丢掉,丢了就报错。这句话就是将函数头的变量相加,结果赋值与另外一个变量c。 - `return c`:还是提醒看官注意,缩进四个空格。`return`是函数的关键字,意思是要返回一个值。`return`语句执行时,Python跳出当前的函数并返回到调用这个函数的地方。在下面,有调用这个函数的地方`result = add_function(2, 3)`。但是,函数中的`return`语句也不是必须要写的,如果不写,Python将认为使以`return None`来作为结束的。也就是说,如果你的函数中没有`return`,事实上,在调用的时候,Python也会返回一个结果,这个结果就是None。 - `if __name__ == "__main__"`: 这句话先照抄,不解释,因为在[《自省》](./130.md)有说明,不知道你是不是认真阅读了。注意就是不缩进了。 -- `result = add_function(2,3)`:这是调用前面建立的函数,并且传入两个参数:a=2,b=3。仔细观察传入参数的方法,就是把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符)。当函数运行,遇到了`return`语句,就将函数中的结果返回到这里,赋值给result。 +- `result = add_function(2, 3)`:这是调用前面建立的函数,并且传入两个值`a=2`和`b=3`。仔细观察传入参数的方法,就是相当于把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符)。当函数运行,遇到了`return`语句,就将函数中的结果返回到这里,赋值给result。还要啰嗦一句,是“相当于”把2和3分别放在a和b的位置,这个“相当于”的是有含义的,暂且存疑,后续会讲解。 解牛完毕,做个总结: @@ -130,7 +136,7 @@ 几点说明: -- 函数名的命名规则要符合Python中的命名要求。一般用小写字母和单下划线、数字等组合 +- 函数名的命名规则要符合Python中的命名要求。一般用小写字母和单下划线、数字等组合,有人习惯用aaBb的样式,但我不推荐 - def是定义函数的关键词,这个简写来自英文单词define - 函数名后面是圆括号,括号里面,可以有参数列表,也可以没有参数 - 千万不要忘记了括号后面的冒号 @@ -150,9 +156,9 @@ >>> add(2,3) #通过函数,计算2+3 5 -注意上面的add(x,y)函数,在这个函数中,没有特别规定参数x,y的类型。其实,这句话本身就是错的,还记得在前面已经多次提到,在Python中,变量无类型,只有对象才有类型,这句话应该说成:x,y并没有严格规定其所引用的对象类型。这是Python跟某些语言比如java很大的区别,在有些语言中,需要在定义函数的时候告诉函数参数的数据类型。Python不用那样做。 +注意上面的`add(x,y)`函数,在这个函数中,没有特别规定参数`x`、`y`的类型。其实,这句话本身就是错的,还记得在前面已经多次提到,在Python中,变量无类型,只有对象才有类型,这句话应该说成:`x`、`y`并没有严格规定其所引用的对象类型。这是Python跟某些语言比如java很大的区别,在有些语言中,需要在定义函数的时候告诉函数参数的数据类型。Python不用那样做。 -为什么?列位不要忘记了,这里的所谓参数,跟前面说的变量,本质上是一回事。只有当用到该变量的时候,才建立变量与对象的对应关系,否则,关系不建立。而对象才有类型。那么,在`add(x,y)`函数中,x,y在引用对象之前,是完全飘忽的,没有被贴在任何一个对象上,换句话说它们有可能引用任何对象,只要后面的运算许可,如果后面的运算不许可,则会报错。 +为什么?列位不要忘记了,这里的所谓参数,跟前面说的变量,本质上是一回事。只有当用到该变量的时候,才建立变量与对象的**引用关系**,否则,关系不建立。而对象才有类型。那么,在`add(x,y)`函数中,`x`,`y`在引用对象之前,是完全飘忽的,没有被贴在任何一个对象上,换句话说它们有可能引用任何对象,只要后面的运算许可,如果后面的运算不许可,则会报错。 >>> add("qiw","sir") #这里,x="qiw",y="sir",让函数计算x+y,也就是"qiw"+"sir" 'qiwsir' @@ -167,13 +173,35 @@ 此外,也可以将函数通过赋值语句,与某个变量建立引用关系: - >>> result = add(3,4) + >>> result = add(3, 4) >>> result 7 -在这里,其实解释了函数的一个秘密。add(x,y)在被运行之前,计算机内是不存在的,直到代码运行到这里的时候,在计算机中,就建立起来了一个对象,这就如同前面所学习过的字符串、列表等类型的对象一样,运行add(x,y)之后,也建立了一个add(x,y)的对象,这个对象与变量result可以建立引用关系,并且add(x,y)将运算结果返回。于是,通过result就可以查看运算结果。 +在这里,其实解释了函数的一个秘密。`add(x, y)`在被运行之前,计算机内是不存在的,直到代码运行到这里的时候,在计算机中,就建立起来了一个对象,这就如同前面所学习过的字符串、列表等类型的对象一样,运行`add(x,y)`之后,也建立了一个`add(x,y)`的对象,这个对象与变量`result`可以建立引用关系,并且`add(x,y)`将运算结果返回。于是,通过`result`就可以查看运算结果。 + + >>> add + <function add at 0x00000000007BAC80> + +如果使用`add(x, y)`的样式,是调用那个函数。但是如果只写函数的名字,不写参数列表,就如同上面那样,我们得到的是该函数在内存汇总的存储信息。你还可以这样做: + + >>> type(add) + <class 'function'> #Python 2下的反馈信息略有差异 + +这说明`add`是一个对象,因为只有对象才有类型,并且它是一个`function`类。按照我们的经验,对象都可以与一个变量建立引用关系,从而通过那个变量访问对象。 + + >>> r = add + >>> r + <function add at 0x00000000007BAC80> + >>> r(3, 4) + 7 + >>> add(3, 4) + 7 + >>> type(r) + <class 'function'> + +通过赋值语句,变量`r`和函数对象建立了引用关系之后,就可以做所有`add(x, y)`能做的事情,因为`r`就是那个函数的代表。 -如果看官上面一段,感觉有点吃力或者晕乎,也不要紧,那就再读一边。是在搞不明白,就不要搞了。随着学习的深入,它会被明白的。 +刚开始接触函数,可能有点吃力。先放松一下,看看“名不正言不顺”的Python版。 ##关于命名 @@ -181,15 +209,15 @@ 在某国,向来重视“名”,所谓“名不正言不顺”,取名字或者给什么东西命名,常常是天大的事情,在很多时候就是为了那个“名”进行争斗。 -江湖上还有的大师,会通过某个人的名字来预测他/她的吉凶祸福等。看来名字这玩意太重要了。“名不正,言不顺”,歪解:名字不正规化,就不顺。这是歪解,希望不要影响看官正确理解。不知道大师们是不是能够通过外国人名字预测外国人大的吉凶祸福呢?比如Aoi sola,这个人怎么样?不管怎样,某国人是很在意名字的,旁边有个国家似乎就不在乎,比如山本五十六,在名字中间出现数字,就好像我们的张三李四王二麻子那样随便,不过,有一种说法,“山本五十六”的意思是这个人出生时,他父亲56岁,看来跟张三还不一样的。 +江湖上还有的大师,会通过某个人的名字来预测他/她的吉凶祸福等。看来名字这玩意太重要了。“名不正,言不顺”,歪解:名字不正规化,就不顺。这是歪解,希望不要影响读者正确理解。不知道大师们是不是能够通过外国人名字预测外国人的吉凶祸福呢?比如Aoi sola,这个人怎么样?不管怎样,某国人是很在意名字的,旁边有个国家似乎就不在乎,比如山本五十六,在名字中间出现数字,就好像我们的张三李四王二麻子那样随便,不过,有一种说法,“山本五十六”的意思是这个人出生时,他父亲56岁,看来跟张三还不一样的。 Python也很在乎名字问题,其实,所有高级语言对名字都有要求。为什么呢?因为如果命名乱了,计算机就有点不知所措了。看Python对命名的一般要求。 - 文件名:全小写,可使用下划线 -- 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。*注意*:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。有的人,喜欢用这样的命名风格:myFunction,除了第一个单词首字母外,后面的单词首字母大写。这也是可以的,因为在某些语言中就习惯如此。 +- 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。*注意*:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。有的人,喜欢用这样的命名风格:myFunction,除了第一个单词首字母外,后面的单词首字母大写。这也是可以的,因为在某些语言中就习惯如此。但我不提倡,这是我非常显明的观点。 -- 函数的参数:如果一个函数的参数名称和保留的关键字(所谓保留关键字,就是python语言已经占用的名称,通常被用来做为已经有的函数等的命名了,你如果还用,就不行了。)冲突,通常使用一个后缀下划线好于使用缩写或奇怪的拼写。 +- 函数的参数:命名方式同变量(本质上就是变量)。如果一个参数名称和Python保留的关键字冲突,通常使用一个后缀下划线会好于使用缩写或奇怪的拼写。 - 变量:变量名全部小写,由下划线连接各个单词。如color = WHITE,this_is_a_variable = 1。 @@ -204,46 +232,58 @@ Python也很在乎名字问题,其实,所有高级语言对名字都有要 前面的例子中已经有了一些关于调用的问题,为了深入理解,把这个问题单独拿出来看看。 -为什么要写函数?从理论上说,不用函数,也能够编程,我们在前面已经写了程序,就没有写函数,当然,用python的内建函数姑且不算了。现在之所以使用函数,主要是: +为什么要写函数?从理论上说,不用函数,也能够编程,我们在前面已经写了程序,就没有写函数,当然,用Python的内建函数姑且不算了。现在之所以使用函数,主要是: + +1. 降低编程的难度,通常将一个复杂的大问题分解成一系列更简单的小问题,然后将小问题继续划分成更小的问题,当问题细化为足够简单时,就可以分而治之。为了实现这种分而治之的设想,就要通过编写函数,将各个小问题逐个击破,再集合起来,解决大的问题。(请注意,分而治之的思想是编程的一个重要思想,所谓“分治”方法也。) +2. 代码重(chong,二声音)用。在编程的过程中,比较忌讳同样一段代码不断的重复,所以,可以定义一个函数,在程序的多个位置使用,也可以用于多个程序。当然,后面我们还会讲到“模块”(此前也涉及到了,就是`import`导入的那个东西),还可以把函数放到一个模块中供其他程序员使用。也可以使用其他程序员定义的函数(比如`import ...`,前面已经用到了,就是应用了别人——创造python的人——写好的函数)。这就避免了重复劳动,提供了工作效率。 -1. 降低编程的难度,通常将一个复杂的大问题分解成一系列更简单的小问题,然后将小问题继续划分成更小的问题,当问题细化为足够简单时,就可以分而治之。为了实现这种分而治之的设想,就要通过编写函数,将各个小问题逐个击破,再集合起来,解决大的问题。(看官请注意,分而治之的思想是编程的一个重要思想,所谓“分治”方法也。) -2. 代码重(chong,二声音)用。在编程的过程中,比较忌讳同样一段代码不断的重复,所以,可以定义一个函数,在程序的多个位置使用,也可以用于多个程序。当然,后面我们还会讲到“模块”(此前也涉及到了,就是import导入的那个东西),还可以把函数放到一个模块中供其他程序员使用。也可以使用其他程序员定义的函数(比如import ...,前面已经用到了,就是应用了别人——创造python的人——写好的函数)。这就避免了重复劳动,提供了工作效率。 +这样看来,函数还是很必要的了。 -这样看来,函数还是很必要的了。废话少说,那就看函数怎么调用吧。以add(x,y)为例,前面已经演示了基本调用方式,此外,还可以这样: +废话少说,那就看函数怎么调用吧。以`add(x,y)`为例,前面已经演示了基本调用方式,此外,还可以这样: + +Python2: >>> def add(x,y): #为了能够更明了显示参数赋值特点,重写此函数 - ... print "x=",x #分别打印参数赋值结果 + ... print "x=",x #分别打印参数赋值结果 ... print "y=",y ... return x+y ... - >>> add(10,3) #x=10,y=3 + +Python 3: + + >>> def add(x, y): + print("x={}".format(x)) + print("y={}".format(y)) + return x+y + + >>> add(10, 3) #x=10,y=3 x= 10 y= 3 13 - >>> add(3,10) #x=3,y=10 + >>> add(3, 10) #x=3,y=10 x= 3 y= 10 13 所谓调用,最关键是要弄清楚如何给函数的参数赋值。这里就是按照参数次序赋值,根据参数的位置,值与之对应。 - >>> add(x=10,y=3) #同上 + >>> add(x=10, y=3) x= 10 y= 3 13 还可以直接把赋值语句写到里面,就明确了参数和对象的关系。当然,这时候顺序就不重要了,也可以这样 - >>> add(y=10,x=3) #x=3,y=10 + >>> add(y=10, x=3) x= 3 y= 10 13 在定义函数的时候,参数可以像前面那样,等待被赋值,也可以定义的时候就赋给一个默认值。例如: - >>> def times(x,y=2): #y的默认值为2 - ... print "x=",x + >>> def times(x, y=2): #y的默认值为2 + ... print "x=",x #Python 3: print("x={}".format(x)),以下类似,从略。 ... print "y=",y ... return x*y ... @@ -259,7 +299,7 @@ Python也很在乎名字问题,其实,所有高级语言对名字都有要 如果不给那个有默认值的参数传递值(赋值的另外一种说法),那么它就是用默认的值。如果给它传一个,它就采用新赋给它的值。如下: - >>> times(3,4) #x=3,y=4,y的值不再是2 + >>> times(3, 4) #x=3,y=4,y的值不再是2 x= 3 y= 4 12 @@ -269,7 +309,7 @@ Python也很在乎名字问题,其实,所有高级语言对名字都有要 y= 2 'qiwsirqiwsir' -给列位看官提一个思考题,请在闲暇之余用python完成:写两个数的加、减、乘、除的函数,然后用这些函数,完成简单的计算。 +请读者在闲暇之余用Python完成:写两个数的加、减、乘、除的函数,然后用这些函数,完成简单的计算。 ##注意事项 From 9969ec8b2a9347b4ed60cf00a198455a2784d03f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 5 Apr 2016 22:03:54 +0800 Subject: [PATCH 130/288] p3 --- 201.md | 52 ++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 40 insertions(+), 12 deletions(-) diff --git a/201.md b/201.md index 0988d35..4d89d24 100644 --- a/201.md +++ b/201.md @@ -15,7 +15,7 @@ ![](./2images/20101.png) -##深入理解函数 +##理解函数 在中学数学中,可以用这样的方式定义函数:y=4x+3,这就是一个一次函数,当然,也可以写成:f(x)=4x+3。其中x是变量,它可以代表任何数。 @@ -35,7 +35,7 @@ 所以,x,不仅仅是数,可以是你认为的任何东西。 -###变量本质——占位符 +**变量本质——占位符。** 函数中为什么变量用x?这是一个有趣的问题,自己google一下,看能不能找到答案。很巧,在“知乎”上还真有人询问[这个问题](http://www.zhihu.com/question/20112835),可以阅读。 @@ -49,21 +49,17 @@ 通常使小写字母来命名Python中的变量,也可以是用下划线连接的多个单词。比如:alpha,x,j,p_beta,这些都可以做为Python的变量。 -##建立简单函数 +下面按照纯粹数学的方式,在Python中建立函数。 >>> a = 2 >>> y = 3 * a + 2 >>> y 8 -这种方式建立的函数,跟在初中数学中学习的没有什么区别。当然,这种方式的函数,在编程实践中没有什么用途。 +这种方式建立的函数,跟在初中数学中学习的没有什么区别。在纯粹数学中,也常这么用。这种方式在Python中还有效吗? -别急躁,你在输入`a=3`,然后输入`y`,看看得到什么结果呢? +既然在上面已经建立了一个函数,那么我就改变变量a的值,看看得到什么结果。 - >>> a = 2 - >>> y = 3 * a + 2 - >>> y - 8 >>> a = 3 >>> y 8 @@ -88,11 +84,11 @@ 注意看错误提示,`a`是一个变量,提示中告诉我们这个变量没有定义。显然,如果函数中要使用某个变量,不得不提前定义出来。定义方法就是给这个变量赋值——这跟纯粹数学有所区别了。 -##建立实用的函数 +用纯粹数学的方式建立函数,对Python不适用,如果非要找个根由,我想可能是“=”造成的,这个符号在数学中是等号,但是在Python中,包括所有的高级编程语言中,是“赋值”。这是我的肤浅理解。更深层的缘由,还在于计算机处理数据的原理与人不同。所以,要有一种新的定义函数的方式 -上面用命令方式建立函数,还不够“正规化”,现在就来写一个实用的函数吧。 +##定义函数 -例如下面的代码: +在Python中,规定了一种定义函数的格式,下面的举例就是一个函数,以这个函数为例来说明定义函数的格式和调用函数的方法。 #!/usr/bin/env python #coding:utf-8 @@ -311,6 +307,38 @@ Python 3: 请读者在闲暇之余用Python完成:写两个数的加、减、乘、除的函数,然后用这些函数,完成简单的计算。 +在程序中调用函数,还需要注意一个貌似废话的事项,那就是“先定义,后使用”。说是废话,是因为在理解上似乎当然这样,但是,在实践中,常会遇到此类错误。 + + >>> def foo(): + print('Hello, Teacher Cang!') #Python 2的使用者请自动调整为print语句 + bar() + +这里定义了一个函数`foo()`,在这个函数里面还调用了一个函数`bar()`,但是这个`bar()`函数,此前并没有在什么地方定义。所以,如果调用`foo()`函数,就会这样: + + >>> foo() + Hello, Teacher Cang! + Traceback (most recent call last): + File "<pyshell#44>", line 1, in <module> + foo() + File "<pyshell#43>", line 3, in foo + bar() + NameError: name 'bar' is not defined + +`NameError:`是一种错误信息。错误不可怕,可怕的是不认真看提示信息,只要耐心地认真地阅读提示信息,就能晓得错误原因。提示信息中分明告诉我们,那个`bar`没有定义。 + +所以要必须先定义,后使用。 + + >>> def bar(): pass + +这就定义了`bar()`,虽然非常简短,函数体内的代码就一个`pass`,意思是里面什么也不做,统统地pass。然后调用`foo()` + + >>> foo() + Hello, Teacher Cang! + +不再报错了。 + +虽然将`bar()`定义在了`foo()`的后面,只要定义了,无论先后,就可以使用。 + ##注意事项 下面的若干条,是常见编写代码的注意事项: From 18a3b7aab92f858539f56e125f8e74ad33d7a3bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 5 Apr 2016 23:55:32 +0800 Subject: [PATCH 131/288] p3 --- 202.md | 146 +++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 105 insertions(+), 41 deletions(-) diff --git a/202.md b/202.md index 3a816a9..d740450 100644 --- a/202.md +++ b/202.md @@ -2,11 +2,11 @@ #函数(2) -在上一节中,已经明确了函数的基本结构和初步的调用方法。但是,上一节中写的函数,还有点缺憾,不知道读者是否觉察到了。我把结果是用`print`语句打印出来的。这是实际编程中广泛使用的吗?肯定不是。在程序中,函数是一段具有抽象作用的代码。一般情况下,通过它可以得到某个结果,这个结果有一个专有名字,叫做“返回值”。返回值会继续被用到程序中的某个地方。 - ##返回值 -为了能够说明清楚,先编写一个函数。还记得斐波那契数列吗?忘了没关系,回头看看或者google。不过,在你要实施google或者顺延着向下阅读之前,最好先自己尝试一下,能不能写一个斐波那契数列的函数。 +所谓返回值,就是函数向调用函数的地方返回的数据。 + +编写一个斐波那契数列函数,来说明这个问题。还记得斐波那契数列吗?忘了没关系,看看本教程前面的内容即可。 我这里提供一段参考代码(既然是参考,显然不是唯一正确答案): @@ -23,7 +23,9 @@ lst = fibs(10) print lst -把含有这些代码的文件保存为名为20202.py的文件。在这个文件中,首先定义了一个函数,名字叫做fibs,其参数是输入一个整数(但是,你并没有看到我在哪里做了对这个要输入的值的约束,就意味着,你输入非整数,甚至字符串,也使可以的,只是结果会不同,不妨试试吧),然后通过`lst = fibs(10)`调用这个函数。这里参数给的是10,就意味着要得到n=10的斐波那契数列。 +把含有这些代码的文件保存为名为20202.py的文件。 + +在这个文件中,首先定义了一个函数,名字叫做`fibs`,其参数是输入一个整数(但是,你并没有看到我在哪里做了对这个要输入的值的约束,就意味着,你输入非整数,甚至字符串,也使可以的,只是结果会不同,不妨试试吧),然后通过`lst = fibs(10)`调用这个函数。这里参数给的是10,就意味着要得到`n=10`的斐波那契数列。 运行后打印数列: @@ -32,55 +34,79 @@ 当然,如果要换n的值,只需要在调用函数的时候,修改一下参数即可。这才体现出函数的优势呢。 -观察fibs函数,最后有一个语句`return result`,意思是将变量result的值返回。返回给谁呢?这要看我们当前在什么位置调用该函数了。在上面的程序中,以`lst = fibs(10)`语句的方式,调用了函数,那么函数就将值返回到当前状态,并记录在内存中,然后把它赋值给变量lst。如果没有这个赋值语句,函数照样返回值,但是它飘忽在内存中,我们无法得到,并且最终还被当做垃圾被python回收了。 +观察`fibs()`函数,最后有一个语句`return result`,意思是将变量result的值返回。返回给谁呢?这要看我们当前在什么位置调用该函数了。 + +在上面的程序中,以`lst = fibs(10)`语句的方式,调用了函数,那么函数就将值返回到当前状态,并记录在内存中,然后把它赋值给变量`lst`。 注意:上面的函数只返回了一个返回值(是一个列表),有时候需要返回多个,是以元组形式返回。 >>> def my_fun(): - ... return 1,2,3 + ... return 1, 2, 3 ... >>> a = my_fun() >>> a (1, 2, 3) + +对这个函数,我们还可以用这样的方式来接收函数的返回值。 -有的函数,没有return,一样执行完毕,就算也干了某些活儿吧。事实上,不是没有返回值,也有,只不过是None。比如这样一个函数: + >>> x, y, z = my_fun() + >>> x + 1 + >>> y + 2 + >>> z + 3 - >>> def my_fun(): - ... print "I am doing somthin." +多么神奇。 + +也不怎么神奇,这也来源于我们前面已经熟知的赋值语句。其效果相当于: + + >>> x, y, z = a + >>> x, y, z + (1, 2, 3) + +不是所有的函数都有`return`的,比如有的函数,就是执行某个语句或者什么也不做,不需要返回值。事实上,不是没有返回值,也有,只不过是None。比如这样一个函数: + + >>> def foo(): + ... pass ... 我在交互模式下构造一个很简单的函数,注意,我这是构造了一个简单函数,如果是复杂的,千万不要在交互模式下做。如果你非要做,是能尝到苦头的。 -这个函数的作用就是打印出一段话。也就是执行这个函数,就能打印出那段话,但是没有return。 +这个函数的作用就是pass——什么也不做,当然是没有return了。 - >>> a = my_fun() - I am doing somthin. + >>> a = foo() 我们再看看那个变量a,到底是什么 - >>> print a + >>> print a #Python 3: print(a) None -这就是只干活儿,没有`return`的函数,事实上返回的是一个`None`。这种模样的函数,通常不用上述方式调用,而采用下面的方式,因为他们返回的是None,似乎这个返回值利用价值不高,于是就不用找一个变量来接受返回值了。 +这就是没有`return`的函数,事实上返回的是一个`None`。而`None`,你有可以理解成没有返回任何东西。 - >>> my_fun() - I am doing somthin. +这种模样的函数,通常不用上述方式调用,而采用下面的方式,因为他们返回的是None,似乎这个返回值利用价值不高,于是就不用找一个变量来接受返回值了。 + + >>> foo() -特别注意那个return,它还有一个作用,请先观察下面的函数和执行结果,并试图找出其作用。 +特别注意那个`return`,它还有一个作用,请先观察下面的函数和执行结果,并试图找出其作用。 >>> def my_fun(): - ... print "I am coding." + ... print "I am coding." #Python 3的用户请修改为print() ... return ... print "I finished." ... >>> my_fun() I am coding. -看出玄机了吗?在函数中,本来有两个print语句,但是中间插入了一个return,仅仅是一个return。当执行函数的时候,只执行了第一个print语句,第二个并没有执行。这是因为第一个之后,遇到了return,它告诉函数要返回,即中断函数体内的流程,离开这个函数。结果第二个print就没有被执行。所以,return在这里就有了一个作用,结束正在执行的函数,有点类似循环中的break的作用。 +看出玄机了吗? + +在函数中,本来有两个`print`,但是中间插入了一个`return`,仅仅是一个`return`。当执行函数的时候,只执行了第一个`print`,第二个并没有执行。这是因为第一个之后,遇到了return,它告诉函数要返回,即中断函数体内的流程,离开这个函数。结果第二个`print`就没有被执行。所以,`return`在这里就有了一个作用,结束正在执行的函数,并离开函数体返回到调用位置,有点类似循环中的`break`的作用。 ##函数中的文档 -“程序在大多数情况下是给人看的,只是偶尔被机器执行。”所以,写程序必须要写注释。前面已经有过说明,如果用`#`开始,python就不执行那句(python看不到它,但是人能看到),它就作为注释存在。 +“程序在大多数情况下是给人看的,只是偶尔被机器执行。” + +所以,写程序必须要写注释。前面已经有过说明,如果用`#`开始,Python就不执行那句(Python看不到它,但是人能看到),它就作为注释存在。 除了这样的一句之外,一般在每个函数名字的下面,还有比较多的说明,这个被称为“文档”,在文档中主要是说明这个函数的用途。 @@ -120,25 +146,61 @@ my_fun() This is my function. -##参数和变量 +##函数的属性 -###参数 +任何对象都具有属性,比如“孔乙己的茴香豆”,这里“孔乙己”是一个对象,“茴香豆”是一个属性,世界上“茴香豆”很多,但是这里所说的“茴香豆”是比较特殊的,它归属于“孔乙己”。如果用符号的方式来表示“孔乙己的茴香豆”,一般习惯用句点(英文的)代替中间的“的”子,也就是句点表示了属性的归属,表示为:`孔乙己.茴香豆`。 -虽然在上一节,已经知道如何通过函数的参数传值,如何调用函数等。但是,这里还有必要进一步讨论参数问题。在别的程序员嘴里,你或许听说过“形参”、“实参”、“参数”等名词,到底指什么呢? +前面已经说过,函数是对象。那么它也有属性。 ->在定义函数的时候(def来定义函数,称为def语句),函数名后面的括号里如果有变量,它们通常被称为“形参”。调用函数的时候,给函数提供的值叫做“实参”,或者“参数”。 + >>> def cang(): + """This is a function of canglaoshi""" + pass -其实,根本不用区分这个,因为没有什么意义,只不过类似孔乙己先生知道茴香豆的茴字有多少种写法罢了。 +对于这个函数,最熟悉的一个属性就应该是前面提到的函数文档,它可以用句点的方式表示为`cang.__doc__`。 -**在本教程中,把那个所谓实参,就称之为值(或者数据、或者对象),形参就笼统称之为参数(似乎不很合理,但是接近数学概念)。**随着你敲代码的实践越多,或许会对各种参数概念有深入理解。 + >>> cang.__doc__ + 'This is a function of canglaoshi' -###比较参数和变量 +这就体现出这种方式表示属性的优势了,只要对象不同,不管属性的名字是否相同,用句点就可以说明该属性所对应的对象。 -在不同的参数名称面前,糊涂也罢、明白也罢,对写程序的干扰不大。不过,对于变量和参数,这两个就不能算糊涂账了。不过它们的确容易让把人搞糊涂了。 +还可以为对象增加属性。 -在数学的函数中`y = 3x + 2`,那个x叫做参数,也可以叫做变量。但是,在编程语言的函数中,与此有异。 + >>> cang.breast = 90 + +这样就为对象`cang`增加了一个属性`breast`,并且设置该属性的值是90。接下来就可以调用该属性。 + + >>> cang.breast + 90 + +还记得我们用来查看对象属性和方法的函数`dir()`吗?现在又可以请它出来,一览众属性。 + + >>> dir(cang) + ['__annotations__', '__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__get__', '__getattribute__', '__globals__', '__gt__', '__hash__', '__init__', '__kwdefaults__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'breast'] + +这里列出了所有`cang`这个对象的属性和方法,仔细观察,我们刚才用过的`cang.__doc__`和刚刚设置的`cang.breast`都历历在目。至于这里有很多属性的名字都是用双下划线开始和结束,这类属性可以称之为特殊属性(因为名字样式特殊吗?)。 + + >>> cang.__name__ + 'cang' + >>> cang.__module__ + '__main__' + +所有这些属性,都可以用句点的方式调用。 + +##概念辨析 + +有几个概念,是编程的时候常用到的。从某个角度讲,世界就是用概念构成的。如果没有概念,很难准确描述清楚世界。 -先参考一段来自[微软网站](http://msdn.microsoft.com/zh-cn/library/9kewt1b3.aspx)的比较高度抽象,而且意义涵盖深远的说明。我摘抄过来,看官读一读,是否理解,虽然是针对VB而言的,一样有启发。 +###参数和变量 + +函数的参数,还是很有话题的。比如在别的程序员嘴里,你或许听说过“形参”、“实参”、“参数”等名词,到底指什么呢? + +>在定义函数的时候(def来定义函数,称为def语句),函数名后面的括号里如果有变量,它们通常被称为“形参”。调用函数的时候,给函数提供的值叫做“实参”,或者“参数”。 + +其实,如果你区别不开,也不会耽误你写代码,这只不过类似孔乙己先生知道茴香豆的茴字有多少种写法罢了。但是,我居然碰到过某公司的面试官问这种问题。 + +我们就简化一下,笼统地把函数括号里面的变量叫做参数吧,当然你叫变量也无妨,只要大家知道值得是什么东西就好了。虽然这样会引起某些认真的人来喷口水,但也不用担心,反正本书已经声明是很“水”的了。 + +但如果有人较真,非要让你区分,为了显示你的水平,你可以引用[微软网站](http://msdn.microsoft.com/zh-cn/library/9kewt1b3.aspx)上的说明。我认为这段说明高度抽象,而且意义涵盖深远的说明。摘抄过来,请读一读,是否理解。 >参数和变量之间的差异 (Visual Basic) @@ -158,7 +220,7 @@ >与形参定义不同,实参没有名称。每个实参就是一个表达式,它包含零或多个变量、常数和文本。求值的表达式的数据类型通常应与为相应形参定义的数据类型相匹配,并且在任何情况下,该表达式值都必须可转换为此形参类型。 -看官如果硬着头皮看完这段引文,发现里面有几个关键词:参数、变量、形参、实参。本来想弄清楚参数和变量,结果又冒出另外两个东东,更混乱了。请稍安勿躁,本来这段引文就是有点多余,但是,之所以引用,就是让列位开阔一下眼界,在编程业界,类似的东西有很多名词。下次听到有人说这些,不用害怕啦,反正自己听过了。 +如果硬着头皮看完这段引文,发现里面有几个关键词:参数、变量、形参、实参。本来想弄清楚参数和变量,结果又冒出另外两个词,更混乱了。请稍安勿躁,在编程业界,类似的东西有很多名词。下次听到有人说这些,不用害怕啦,反正自己听过了。 在Python中,没有这么复杂。 @@ -176,7 +238,7 @@ 至此,是否清楚了一点点。当然,我所表述不正确之处或者理解错误之处,请不吝赐教,小可作揖感谢。 -其实没有那么复杂。关键要理解函数名括号后面的东东(管它什么参呢)的作用是传递值。所以,那个参数的作用本质上就是一个“占位符”,当调用一个函数的时候,并不是赋值了一份参数的值来替换占位符,比如`add(x)`,并没有用3来替换原来的占位符,而是把占位符指向了变量,进而指向了对象。换个角度说,就是通过一连串的接力动作,把对象传给了函数。这样说来,你就可以在函数内部改变那个对象了。 +其实没有那么复杂。关键要理解函数名括号后面的东东(管它什么参呢)的作用是“传对象引用”——这又是一种貌似高深的说法。 >>> def foo(lst): ... lst.append(99) @@ -195,29 +257,31 @@ 结合前面学习过的列表能够被原地修改知识,加上刚才说的参数特点,你是不是能理解上面的操作呢? -##全局变量和局部变量 +###全局变量和局部变量 + +虽然是讲参数,但是关于全局变量和局部变量的区别也要先弄清楚,因为关系到函数内外有别的大事。 -下面是一段代码,注意这段代码中有一个函数funcx(),这个函数里面有一个变量x=9,在函数的前面也有一个变量x=2 +下面是一段代码,注意这段代码中有一个函数`funcx()`,这个函数里面有一个`x=9`,在函数的前面也有一个`x=2`。 x = 2 def funcx(): x = 9 - print "this x is in the funcx:-->",x + print "this x is in the funcx:-->", x #Python 3请自动修改为print(),下同,从略 funcx() print "--------------------------" - print "this x is out of funcx:-->",x + print "this x is out of funcx:-->", x -那么,这段代码输出的结果是什么呢?看: +这段代码输出的结果是什么呢?看: this x is in the funcx:--> 9 -------------------------- this x is out of funcx:--> 2 -从输出看出,运行funcx(),输出了funcx()里面的变量x=9;然后执行代码中的最后一行,print "this x is out of funcx:-->",x +从输出中可以看出,运行`funcx()`,输出了`funcx()`里面的变量`x`引用的对象9;然后执行代码中的最后一行`print "this x is out of funcx:-->",x`。 -特别要关注的是,前一个x输出的是函数内部的变量x;后一个x输出的是函数外面的变量x。两个变量彼此没有互相影响,虽然都是x。从这里看出,两个x各自在各自的领域内起到作用。 +特别要关注的是,前一个`x`输出的是函数内部的变量`x`;后一个`x`输出的是函数外面的变量`x`。两个变量彼此没有互相影响,虽然都是`x`。两个`x`各自在各自的领域内起到作用。 把那个只在函数体内(某个范围内)起作用的变量称之为**局部变量**。 @@ -233,7 +297,7 @@ print "--------------------------" print "this x is out of funcx:-->",x -以上两段代码的不同之处在于,后者在函数内多了一个`global x`,这句话的意思是在声明x是全局变量,也就是说这个x跟函数外面的那个x同一个,接下来通过x=9将x的引用对象变成了9。所以,就出现了下面的结果。 +以上两段代码的不同之处在于,后者在函数内多了一个`global x`,这句话的意思是在声明`x`是全局变量,也就是说这个`x`跟函数外面的那个`x`同一个,接下来通过`x=9`将x的引用对象变成了9。所以,就出现了下面的结果。 this x is in the funcx:--> 9 -------------------------- @@ -241,7 +305,7 @@ 好似全局变量能力很强悍,能够统统率函数内外。但是,要注意,这个东西要慎重使用,因为往往容易带来变量的混乱。内外有别,在程序中一定要注意的。 -##命名空间 +###命名空间 这是一个比较不容易理解的概念,特别是对于初学者而言,似乎它很飘渺。我在维基百科中看到对它的定义,不仅定义比较好,连里面的例子都不错。所以,抄录下来,帮助读者理解这个名词。 From a426a0bf0ddfedf4d75c384080600bcb14365c19 Mon Sep 17 00:00:00 2001 From: SJ <hsj1992@gmail.com> Date: Wed, 6 Apr 2016 17:04:49 +0800 Subject: [PATCH 132/288] add>>> nf.close() --- 126.md | 1 + 1 file changed, 1 insertion(+) diff --git a/126.md b/126.md index 37d49d2..f81c874 100644 --- a/126.md +++ b/126.md @@ -111,6 +111,7 @@ >>> nf = open("131.txt", "w") >>> nf.write("This is a file") + >>> nf.close() 就这样创建了一个文件?并写入了文件内容呢?看看再说: From d7d95fe62bc243f85af33b721ae0f05e673446a1 Mon Sep 17 00:00:00 2001 From: SJ <hsj1992@gmail.com> Date: Wed, 6 Apr 2016 17:06:57 +0800 Subject: [PATCH 133/288] change MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 错别字 --- 111.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/111.md b/111.md index 3ac65a6..68c1551 100644 --- a/111.md +++ b/111.md @@ -163,7 +163,7 @@ ##操作列表 -刚刚提到过,列表是学列。所有的序列,都有几种基本操作。列表也当然如此。 +刚刚提到过,列表是序列。所有的序列,都有几种基本操作。列表也当然如此。 ###基本操作 From ec32239af5bdf547e418fe3b46ab28cd1994cd4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 6 Apr 2016 22:26:27 +0800 Subject: [PATCH 134/288] p3 --- 203.md | 108 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 55 insertions(+), 53 deletions(-) diff --git a/203.md b/203.md index 88610d6..8c221cc 100644 --- a/203.md +++ b/203.md @@ -2,25 +2,25 @@ #函数(3) -在设计函数的时候,有时候我们能够确认参数的个数,比如一个用来计算圆面积的函数,它所需要的参数就是半径(πr^2),这个函数的参数是确定的。 +对于函数的参数,有时候我们能够确认参数的个数,比如一个用来计算圆面积的函数,它所需要的参数就是半径(πr^2),这个函数的参数是确定的。 >你能不能写一个能够计算圆面积的函数呢? -然而,这个世界不总是这么简单的,也不总是这么确定的,反而不确定性是这个世界常常存在的。如果看官了解量子力学——好多人听都没有听过的东西——就更理解真正的不确定性了。当然,不用研究量子力学也一样能够体会到,世界充满里了不确定性。不是吗?塞翁失马焉知非福,这不就是不确定性吗? +然而,这个世界不总是这么简单的,也不总是这么确定的,反而不确定性是这个世界常常存在的。如果读者了解量子力学——好多人听都没有听过的东西——就更理解真正的不确定性了。当然,不用研究量子力学也一样能够体会到,世界充满里了不确定性。不是吗?塞翁失马焉知非福,这不就是不确定性吗? ##参数收集 -既然有很多不确定性,那么函数的参数的个数,也当然有不确定性,函数怎么解决这个问题呢?python用这样的方式解决参数个数的不确定性: +世界是不确定的,那么函数参数的个数,也当然有不确定的时候,怎么解决这个问题呢?Python用这样的方式解决参数个数的不确定性。 - def func(x,*arg): - print x #输出参数x的值 + def func(x, *arg): + print x #Python 3请自动修改为print()的格式,下同,从略。 result = x print arg #输出通过*arg方式得到的值 for i in arg: result +=i return result - print func(1,2,3,4,5,6,7,8,9) #赋给函数的参数个数不仅仅是2个 + print func(1, 2, 3, 4, 5, 6, 7, 8, 9) #赋给函数的参数个数不仅仅是2个 运行此代码后,得到如下结果: @@ -28,46 +28,46 @@ (2, 3, 4, 5, 6, 7, 8, 9) #这是函数内的第二个print,参数arg得到的是一个元组 45 #最后的计算结果 -从上面例子可以看出,如果输入的参数个数不确定,其它参数全部通过*arg,以元组的形式由arg收集起来。对照上面的例子不难发现: +从上面例子可以看出,如果输入的参数个数不确定,其它参数全部通过`*arg`,以元组的形式由arg收集起来。对照上面的例子不难发现: -- 值1传给了参数x -- 值2,3,4,5,6.7.8.9被塞入一个tuple里面,传给了arg +- 值1传给了参数`x` +- 值2,3,4,5,6,7,8,9被塞入一个元组里面,传给了`arg` -为了能够更明显地看出*args(名称可以不一样,但是*符号必须要有),可以用下面的一个简单函数来演示: +为了能够更明显地看出`*args`(名称可以不一样,但是*符号必须要有),可以用下面的一个简单函数来演示: >>> def foo(*args): - ... print args #打印通过这个参数得到的对象 + ... print args #Python 3: print(args) ... 下面演示分别传入不同的值,通过参数*args得到的结果: - >>> foo(1,2,3) + >>> foo(1, 2, 3) (1, 2, 3) - >>> foo("qiwsir","qiwsir.github.io","python") + >>> foo("qiwsir", "qiwsir.github.io", "python") ('qiwsir', 'qiwsir.github.io', 'python') - >>> foo("qiwsir",307,["qiwsir",2],{"name":"qiwsir","lang":"python"}) + >>> foo("qiwsir", 307, ["qiwsir", 2], {"name":"qiwsir", "lang":"python"}) ('qiwsir', 307, ['qiwsir', 2], {'lang': 'python', 'name': 'qiwsir'}) -不管是什么,都一股脑地塞进了tuple中。 +不管是什么,都一股脑地塞进了元组中。 >>> foo("python") ('python',) -即使只有一个值,也是用tuple收集它。特别注意,在tuple中,如果只有一个元素,后面要有一个逗号。 +即使只有一个值,也是用元组收集它。特别注意,在元组中,如果只有一个元素,后面要有一个逗号。 还有一种可能,就是不给那个`*args`传值,也是许可的。例如: >>> def foo(x, *args): - ... print "x:",x + ... print "x:",x #Python 3: print("x:"+str(x)) ... print "tuple:",args ... >>> foo(7) x: 7 tuple: () -这时候`*args`收集到的是一个空的tuple。 +这时候`*args`收集到的是一个空的元组。 >在各类编程语言中,常常会遇到以foo,bar,foobar等之类的命名,不管是对变量、函数还是后面要讲到的类。这是什么意思呢?下面是来自维基百科的解释。 @@ -77,10 +77,10 @@ >单词“foobar”或分离的“foo”与“bar”常出现于程序设计的案例中,如同Hello World程序一样,它们常被用于向学习者介绍某种程序语言。“foo”常被作为函数/方法的名称,而“bar”则常被用作变量名。 -除了用*args这种形式的参数接收多个值之外,还可以用**kargs的形式接收数值,不过这次有点不一样: +除了用`*args`这种形式的参数接收多个值之外,还可以用**kargs的形式接收数值,不过这次有点不一样: >>> def foo(**kargs): - ... print kargs + ... print kargs #Python 3: print(kargs) ... >>> foo(a=1,b=2,c=3) #注意观察这次赋值的方式和打印的结果 {'a': 1, 'c': 3, 'b': 2} @@ -94,10 +94,10 @@ 如果用`**kargs`的形式收集值,会得到dict类型的数据,但是,需要在传值的时候说明“键”和“值”,因为在字典中是以键值对形式出现的。 -看官到这里可能想了,不是不确定性吗?我也不知道参数到底会可能用什么样的方式传值呀,这好办,把上面的都综合起来。 +读者到这里可能想了,不是不确定性吗?我也不知道参数到底会可能用什么样的方式传值呀,这好办,把上面的都综合起来。 >>> def foo(x,y,z,*args,**kargs): - ... print x + ... print x #Python 3用户请修改为print()格式,下同 ... print y ... print z ... print args @@ -124,23 +124,23 @@ 很good了,这样就能够足以应付各种各样的参数要求了。 -##另外一种传值方式 +##一种优雅的姿势 - >>> def add(x,y): + >>> def add(x, y): ... return x + y ... - >>> add(2,3) + >>> add(2, 3) 5 -这是通常的函数调用方法,在前面已经屡次用到。这种方法简单明快,很容易理解。但是,世界总是多样性的,有时候你秀出下面的方式,甚至在某种情况用下面的方法可能更优雅。 +这是通常的函数调用时的传值方法。这种方法简单明快,很容易理解。但是,世界总是多样性的,有时候你秀出下面的方式,甚至在某种情况用下面的方法可能更优雅。 - >>> bars = (2,3) + >>> bars = (2, 3) >>> add(*bars) 5 先把要传的值放到元组中,赋值给一个变量`bars`,然后用`add(*bars)`的方式,把值传到函数内。这有点像前面收集参数的逆过程。注意的是,元组中元素的个数,要跟函数所要求的变量个数一致。如果这样: - >>> bars = (2,3,4) + >>> bars = (2, 3, 4) >>> add(*bars) Traceback (most recent call last): File "<stdin>", line 1, in <module> @@ -150,29 +150,29 @@ 这是使用一个星号`*`,是以元组形式传值,如果用`**`的方式,是不是应该以字典的形式呢?理当如此。 - >>> def book(author,name): - ... print "%s is writing %s" % (author,name) + >>> def book(author, name): + ... print "{0}}is writing {1}".format (author,name) #Python 3: print("{0}}is writing {1}".format (author,name)) ... - >>> bars = {"name":"Starter learning Python","author":"Kivi"} + >>> bars = {"name":"Starter learning Python", "author":"Kivi"} >>> book(**bars) Kivi is writing Starter learning Python 这种调用函数传值的方式,至少在我的编程实践中,用的不多。不过,不代表读者不用。这或许是习惯问题。 -##复习 +##融会贯通 -python中函数的参数通过赋值的方式来传递引用对象。下面总结通过总结常见的函数参数定义方式,来理解参数传递的流程。 +Python中函数的参数通过赋值的方式来传对象引用。下面总结通过总结常见的函数参数定义方式,来理解参数传递的流程。 -###def foo(p1,p2,p3,...) +###def foo(p1, p2, p3, ...) 这种方式最常见了,列出有限个数的参数,并且彼此之间用逗号隔开。在调用函数的时候,按照顺序以此对参数进行赋值,特备注意的是,参数的名字不重要,重要的是位置。而且,必须数量一致,一一对应。第一个对象(可能是数值、字符串等等)对应第一个参数,第二个对应第二个参数,如此对应,不得偏左也不得偏右。 - >>> def foo(p1,p2,p3): - ... print "p1==>",p1 + >>> def foo(p1, p2, p3): + ... print "p1==>",p1 #Python 3用户修改为print()格式,下同 ... print "p2==>",p2 ... print "p3==>",p3 ... - >>> foo("python",1,["qiwsir","github","io"]) #一一对应地赋值 + >>> foo("python", 1, ["qiwsir","github","io"]) p1==> python p2==> 1 p3==> ['qiwsir', 'github', 'io'] @@ -182,25 +182,25 @@ python中函数的参数通过赋值的方式来传递引用对象。下面总 File "<stdin>", line 1, in <module> TypeError: foo() takes exactly 3 arguments (1 given) #注意看报错信息 - >>> foo("python",1,2,3) + >>> foo("python",1, 2, 3) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: foo() takes exactly 3 arguments (4 given) #要求3个参数,实际上放置了4个,报错 -###def foo(p1=value1,p2=value2,...) +###def foo(p1=value1, p2=value2, ...) -这种方式比前面一种更明确某个参数的赋值,貌似这样就不乱子了,很明确呀。颇有一个萝卜对着一个坑的意味。 +这种方式比前面一种更明确某个参数的值,貌似这样就不乱子了,很明确呀。颇有一个萝卜对着一个坑的意味。 还是上面那个函数,用下面的方式赋值,就不用担心顺序问题了。 - >>> foo(p3=3,p1=10,p2=222) + >>> foo(p3=3, p1=10, p2=222) p1==> 10 p2==> 222 p3==> 3 也可以采用下面的方式定义参数,给某些参数有默认的值 - >>> def foo(p1,p2=22,p3=33): #设置了两个参数p2,p3的默认值 + >>> def foo(p1, p2=22, p3=33): #设置了两个参数p2, p3的默认值 ... print "p1==>",p1 ... print "p2==>",p2 ... print "p3==>",p3 @@ -209,16 +209,16 @@ python中函数的参数通过赋值的方式来传递引用对象。下面总 p1==> 11 p2==> 22 p3==> 33 - >>> foo(11,222) #按照顺序,p2=222,p3依旧维持原默认值 + >>> foo(11, 222) #按照顺序,p2=222, p3依旧维持原默认值 p1==> 11 p2==> 222 p3==> 33 - >>> foo(11,222,333) #按顺序赋值 + >>> foo(11, 222, 333) #按顺序赋值 p1==> 11 p2==> 222 p3==> 333 - >>> foo(11,p2=122) + >>> foo(11, p2=122) p1==> 11 p2==> 122 p3==> 33 @@ -230,30 +230,30 @@ python中函数的参数通过赋值的方式来传递引用对象。下面总 ###def foo(*args) -这种方式适合于不确定参数个数的时候,在参数args前面加一个*,注意,仅一个哟。 +这种方式适合于不确定参数个数的时候,在参数args前面加一个`*`,注意,仅一个哟。 - >>> def foo(*args): #接收不确定个数的数据对象 + >>> def foo(*args): ... print args ... - >>> foo("qiwsir.github.io") #以tuple形式接收到,哪怕是一个 + >>> foo("qiwsir.github.io") ('qiwsir.github.io',) >>> foo("qiwsir.github.io","python") ('qiwsir.github.io', 'python') -####def foo(**args) +###def foo(**args) -这种方式跟上面的区别在于,必须接收类似arg=val形式的。 +这种方式跟上面的区别在于,必须接收类似`arg=val`形式的。 - >>> def foo(**args): #这种方式接收,以dictionary的形式接收数据对象 + >>> def foo(**args): ... print args ... - >>> foo(1,2,3) #这样就报错了 + >>> foo(1,2,3) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: foo() takes exactly 0 arguments (3 given) - >>> foo(a=1,b=2,c=3) #这样就可以了,因为有了键值对 + >>> foo(a=1,b=2,c=3) {'a': 1, 'c': 3, 'b': 2} 下面来一个综合的,看看以上四种参数传递方法的执行顺序 @@ -289,6 +289,8 @@ python中函数的参数通过赋值的方式来传递引用对象。下面总 targs_tuple==> ('3t1', '3t2') dargs_dict==> {'d2': '4d2', 'd1': '4d1'} +对函数的基本内容已经介绍完毕,但是,并不意味着结束,因为还有更深刻的东西没说呢,且看下节。 + ------ [总目录](./index.md)   |   [上节:函数(2)](./202.md)   |   [下节:函数(4)](./204.md) From ef053abc26751baf2e9791e9fdb561baf4382f81 Mon Sep 17 00:00:00 2001 From: SJ <hsj1992@gmail.com> Date: Thu, 7 Apr 2016 10:42:05 +0800 Subject: [PATCH 135/288] change 127.md --- 127.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/127.md b/127.md index 9e0a2ac..0c51b1a 100644 --- a/127.md +++ b/127.md @@ -106,15 +106,15 @@ EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/E 依次演示操作,即可明了。有这样一个文档,名曰:you.md,其内容和基本格式如下: ->You Raise Me Up ->When I am down and, oh my soul, so weary; ->When troubles come and my heart burdened be; ->Then, I am still and wait here in the silence, ->Until you come and sit awhile with me. ->You raise me up, so I can stand on mountains; ->You raise me up, to walk on stormy seas; ->I am strong, when I am on your shoulders; ->You raise me up: To more than I can be. + You Raise Me Up + When I am down and, oh my soul, so weary; + When troubles come and my heart burdened be; + Then, I am still and wait here in the silence, + Until you come and sit awhile with me. + You raise me up, so I can stand on mountains; + You raise me up, to walk on stormy seas; + I am strong, when I am on your shoulders; + You raise me up: To more than I can be. 分别用上述三种函数读取这个文件。 From fdfd3606ae15dd1967cf663045a7b2c5888fb9a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 11 Apr 2016 14:12:35 +0800 Subject: [PATCH 136/288] p3 --- 204.md | 419 +++++++++++++++++++++-------------------------- 237.md | 275 +++++++++++++++++++++++++++++++ 2code/20403.py | 10 ++ 2code/20702.py | 16 ++ 2code/20703.py | 11 ++ 2code/20703p3.py | 10 ++ 2code/20704.py | 25 +++ README.md | 7 +- index.md | 7 +- 9 files changed, 543 insertions(+), 237 deletions(-) create mode 100644 237.md create mode 100644 2code/20403.py create mode 100644 2code/20702.py create mode 100644 2code/20703.py create mode 100644 2code/20703p3.py create mode 100644 2code/20704.py diff --git a/204.md b/204.md index d52d522..7bb2278 100644 --- a/204.md +++ b/204.md @@ -4,9 +4,13 @@ #函数(4) -还记得在[《迭代》](./128.md)中提到的那几个说出来就让人感觉牛X的名词吗?前面已经学习过“循环”、“遍历”和“迭代”了。现在来看“递归”。 +##再理解函数 -##递归 +如果把对函数的理解停留在此前的层面,还没有深入到函数的内涵,或者说只能做一些简单的事情,也可能是面临负责问题的时候不得不用冗长的代码解决。 + +所以,还要对函数进行深入探究。 + +###递归 什么是递归? @@ -40,24 +44,26 @@ if __name__ == "__main__": f = fib(10) - print f + print f #Python 3: print(f) -把上述代码保存。这个代码的意图是要得到n=10的值。运行之: +把上述代码保存。这个代码的意图是要得到`n=10`的值。运行之: $ python 20401.py 55 -`fib(n-1) + fib(n-2)`就是又调用了这个函数自己,实现递归。为了明确递归的过程,下面走一个计算过程(考虑到次数不能太多,就让n=3) +`fib(n-1) + fib(n-2)`就是又调用了这个函数自己,实现递归。 + +为了明确递归的过程,下面走一个计算过程(考虑到次数不能太多,就让n=3) 1. n=3,fib(3),自然要走`return fib(3-1) + fib(3-2)`分支 2. 先看fib(3-1),即fib(2),也要走else分支,于是计算`fib(2-1) + fib(2-2)` 3. fib(2-1)即fib(1),在函数中就要走elif分支,返回1,即fib(2-1)=1。同理,容易得到fib(2-2)=0。将这两个值返回到上面一步。得到`fib(3-1)=1+0=1` -4. 再计算fib(3-2),就简单了一些,返回的值是1,即fib(3-2)=1 +4. 再计算fib(3-2),就简单了一些,返回的值是1,即fib(3-2)=1 5. 最后计算第一步中的结果:`fib(3-1) + fib(3-2) = 1 + 1 = 2`,将计算结果2作为返回值 从而得到fib(3)的结果是2。 -从上面的过程中可以看出,每个递归的过程,都是向着最初的已知条件`a0=0,a1=1`方向挺近一步,直到通过这个最底层的条件得到结果,然后再一层一层向上回馈计算机结果。 +从上面的过程中可以看出,每个递归的过程,都是向着最初的已知条件`a0=0,a1=1`方向挺近一步,直到通过这个最底层的条件得到结果,然后再一层一层向上回馈计算结果。 其实,上面的代码有一个问题。因为`a0=0,a1=1`是已知的了,不需要每次都判断一边。所以,还可以优化一下。优化的基本方案就是初始化最初的两个值。 @@ -67,298 +73,249 @@ """ the better Fibonacci """ - meno = {0:0, 1:1} #初始化 + meno = {0:0, 1:1} def fib(n): - if not n in meno: #如果不在初始化范围内 + if not n in meno: meno[n] = fib(n-1) + fib(n-2) return meno[n] if __name__ == "__main__": f = fib(10) - print f + print f #Python: print(f) #运行结果 $ python 20402.py 55 -以上实现了递归,但是,至少在python中,递归要慎重使用。在一般情况下,递归是能够被迭代或者循环替代的,而且后者的效率常常比递归要高。所以,我个人的建议是,对使用递归要考虑的周密一下,不小心就永远运行下去了。 - -##几个特殊函数 - -前面已经知道了如何编写、调用函数。此外,在python中,有几个特别的函数,很有意思,它们常常被看做是python能够进行所谓“函数式编程”的见证。 - ->如果以前没有听过,等你开始进入编程界,也会经常听人说“函数式编程”、“面向对象编程”、“指令式编程”等属于。它们是什么呢?这个话题要从“编程范式”讲起。(以下内容源自维基百科) - ->编程范型或编程范式(英语:Programming paradigm),(范即模范之意,范式即模式、方法),是一类典型的编程风格,是指从事软件工程的一类典型的风格(可以对照方法学)。如:函数式编程、程序编程、面向对象编程、指令式编程等等为不同的编程范型。 - ->编程范型提供了(同时决定了)程序员对程序执行的看法。例如,在面向对象编程中,程序员认为程序是一系列相互作用的对象,而在函数式编程中一个程序会被看作是一个无状态的函数计算的串行。 - ->正如软件工程中不同的群体会提倡不同的“方法学”一样,不同的编程语言也会提倡不同的“编程范型”。一些语言是专门为某个特定的范型设计的(如Smalltalk和Java支持面向对象编程,而Haskell和Scheme则支持函数式编程),同时还有另一些语言支持多种范型(如Ruby、Common Lisp、Python和Oz)。 - ->编程范型和编程语言之间的关系可能十分复杂,由于一个编程语言可以支持多种范型。例如,C++设计时,支持过程化编程、面向对象编程以及泛型编程。然而,设计师和程序员们要考虑如何使用这些范型元素来构建一个程序。一个人可以用C++写出一个完全过程化的程序,另一个人也可以用C++写出一个纯粹的面向对象程序,甚至还有人可以写出杂揉了两种范型的程序。 - -不管读者是初学还是老油条,都建议将上面这段话认真读完,不管理解还是不理解,总能有点感觉的。 - -正如前面引文中所说的,python是支持多种范型的语言,可以进行所谓函数式编程,其突出体现在有这么几个函数: - -filter、map、reduce、lambda、yield +以上实现了递归,但是,至少在Python中,递归要慎重使用。在一般情况下,递归是能够被迭代或者循环替代的,而且后者的效率常常比递归要高。所以,我个人的建议是,对使用递归要考虑周密,不小心就永远运行下去了。 -有了它们,最大的好处是程序更简洁;没有它们,程序也可以用别的方式实现,只不过麻烦一些罢了。所以,还是能用则用之吧。更何况,恰当地使用这几个函数,能让别人感觉你更牛X。 +###传递函数 -(注:本节不对yield进行介绍,请阅读[《生成器》](./215.md)) +前面已经多次提到函数也是对象。 -##lambda +对于函数的参数,我们也做了一些探究。通过参数,可以将数字、字符串、列表等等那些已经学习过的Python中默认类型的对象以引用的方式传入函数。 -lambda函数,是一个只用一行就能解决问题的函数,听着是多么诱人呀。看下面的例子: +阅读了上面两句话,你是否有一个疑惑?都是对象,函数能不能作为参数传给函数呢? - >>> def add(x): #定义一个函数,将输入的变量增加3,然后返回增加之后的值 - ... x += 3 - ... return x - ... - >>> numbers = range(10) - >>> numbers - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] #有这样一个list,想让每个数字增加3,然后输出到一个新的list中 +看这样一个举例: - >>> new_numbers = [] - >>> for i in numbers: - ... new_numbers.append(add(i)) #调用add()函数,并append到list中 - ... - >>> new_numbers - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -在这个例子中,add()只是一个中间操作。当然,上面的例子完全可以用别的方式实现。比如: - - >>> new_numbers = [ i+3 for i in numbers ] - >>> new_numbers - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -首先说明,这种列表解析的方式是非常非常好的。 - -但是,我们偏偏要用lambda这个函数替代add(x),如果看官和我一样这么偏执,就可以: - - >>> lam = lambda x:x+3 - >>> n2 = [] - >>> for i in numbers: - ... n2.append(lam(i)) - ... - >>> n2 - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -这里的lam就相当于add(x),请看官对应一下,这一行lambda x:x+3就完成add(x)的三行(还是两行?),特别是最后返回值。还可以写这样的例子: - - >>> g = lambda x,y:x+y #x+y,并返回结果 - >>> g(3,4) - 7 - >>> (lambda x:x**2)(4) #返回4的平方 - 16 - -通过上面例子,总结一下lambda函数的使用方法: + >>> def bar(): + print "I am in bar()" + + >>> def foo(func): + func() -- 在lambda后面直接跟变量 -- 变量后面是冒号 -- 冒号后面是表达式,表达式计算结果就是本函数的返回值 +这里定义了两个函数,`bar()`就是我们熟悉的函数;而`foo()` 则有些许变化,其参数要求是一个函数,否则函数体内的代码块无法执行`func()`,因为这就是调用一个函数。 -为了简明扼要,用一个式子表示是必要的: +所以,要这样来调用`foo()`函数。 - lambda arg1, arg2, ...argN : expression using arguments + >>> foo(bar) + I am in bar() -要特别提醒看官:虽然lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值,但是**lambda 函数不能包含命令,包含的表达式不能超过一个。不要试图向 lambda 函数中塞入太多的东西;如果你需要更复杂的东西,应该定义一个普通函数,然后想让它多长就多长。** +下面的例子,是不是可以算一个小的应用呢? -就lambda而言,它并没有给程序带来性能上的提升,它带来的是代码的简洁。比如,要打印一个list,里面依次是某个数字的1次方,二次方,三次方,四次方。用lambda可以这样做: + #! /usr/bin/env python + # coding:utf-8 - >>> lamb = [ lambda x:x,lambda x:x**2,lambda x:x**3,lambda x:x**4 ] - >>> for i in lamb: - ... print i(3), - ... - 3 9 27 81 + def convert(func, seq): + return [func(i) for i in seq] -lambda做为一个单行的函数,在编程实践中,可以选择使用。 + if __name__ == "__main__": + myseq = (111, 3.14, -9.21) + r = convert(str, myseq) + print r #Python 3: print(r) -##map +这个例子或者类似的,常常被作为“传递函数”的例子。在`r = convert(str, myseq)`里面,`str`是实现字符串转化的函数`str()`的名字。 -先看一个例子,还是上面讲述lambda的时候第一个例子,用map也能够实现: +你当然也可以自己编写一个函数,替换`str`。 - >>> numbers - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] #把列表中每一项都加3 + #! /usr/bin/env python + # coding:utf-8 - >>> map(add,numbers) #add(x)是上面讲述的那个函数,但是这里只引用函数名称即可 - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + def convert(func, seq): + return [func(i) for i in seq] - >>> map(lambda x: x+3,numbers) #用lambda当然可以啦 - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + def num(n): + if n%2 == 0: + return n**n + else: + return n*n + + if __name__ == "__main__": + myseq = (3, 4, 5) + r = convert(num, myseq) + print r #Python 3: print(r) -map()是python的一个内置函数,它的基本样式是: +在这个例子中,我写了一个`num(n)`函数,然后在`r = convert(num, myseq)`中使用这个函数的名字`num`。其实跟前面的举例类似,只是为了让读者更深刻理解所谓“传函数”,使用的是函数名字,不是调用函数——调用函数使用`num()`的式样。 -`map(func,seq)` +###嵌套函数 -func是一个函数,seq是一个序列对象。在执行的时候,序列对象中的每个元素,按照从左到右的顺序,依次被取出来,并塞入到func那个函数里面,并将func的返回值依次存到一个list中。 +函数不仅可以作为对象传递,还能在函数里面嵌套一个函数。例如: -在应用中,map的所能实现的,也可以用别的方式实现。比如: + #!/usr/bin/env python + #coding:utf-8 - >>> items = [1,2,3,4,5] - >>> squared = [] - >>> for i in items: - ... squared.append(i**2) - ... - >>> squared - [1, 4, 9, 16, 25] + def foo(): + def bar(): + print "bar() is running" #Python 3用户请修改为print()函数,下同,从略 + print "foo() is running" - >>> def sqr(x): return x**2 - ... - >>> map(sqr,items) - [1, 4, 9, 16, 25] + foo() #调用函数 - >>> map(lambda x: x**2, items) - [1, 4, 9, 16, 25] - - >>> [ x**2 for x in items ] #这个我最喜欢了,一般情况下速度足够快,而且可读性强 - [1, 4, 9, 16, 25] - -条条大路通罗马,以上方法,在编程中,自己根据需要来选用啦。 - -在以上感性认识的基础上,在来浏览有关map()的官方说明,能够更明白一些。 - ->map(function, iterable, ...) - ->Apply function to every item of iterable and return a list of the results. If additional iterable arguments are passed, function must take that many arguments and is applied to the items from all iterables in parallel. If one iterable is shorter than another it is assumed to be extended with None items. If function is None, the identity function is assumed; if there are multiple arguments, map() returns a list consisting of tuples containing the corresponding items from all iterables (a kind of transpose operation). The iterable arguments may be a sequence or any iterable object; the result is always a list. +上面的代码中,在函数`foo()`里面定义了函数`bar()`,这就是嵌套函数,而`bar()`则称为`foo()`的内嵌函数,因为它在`foo()`的里面定义的。 -理解要点: - -- 对iterable中的每个元素,依次应用function的方法(函数)(这本质上就是一个for循环)。 -- 将所有结果返回一个list。 -- 如果参数很多,则对那些参数并行执行function。 - -例如: +如果调用`foo()`函数,会得到如下结果: + + foo() is running + +这说明,在上面的调用方式和内嵌函数写法中,`bar()`根本就没有被调用,或者说函数`foo()`并没有按照从上到下的顺序依次执行其里面的代码。 - >>> lst1 = [1,2,3,4,5] - >>> lst2 = [6,7,8,9,0] - >>> map(lambda x,y: x+y, lst1,lst2) #将两个列表中的对应项加起来,并返回一个结果列表 - [7, 9, 11, 13, 5] +要想让`bar()`这个内嵌函数得到执行,就要在`foo()`函数里面显示地调用它,比如: -请看官注意了,上面这个例子如果用for循环来写,还不是很难,如果扩展一下,下面的例子用for来改写,就要小心了: + #!/usr/bin/env python + #coding:utf-8 - >>> lst1 = [1,2,3,4,5] - >>> lst2 = [6,7,8,9,0] - >>> lst3 = [7,8,9,2,1] - >>> map(lambda x,y,z: x+y+z, lst1,lst2,lst3) - [14, 17, 20, 15, 6] + def foo(): + def bar(): + print "bar() is running" + bar() #显示调用内嵌函数 + print "foo() is running" -这才显示出map的简洁优雅。 + foo() -##reduce +这样的运行结果就是: -直接看这个: + bar() is running + foo() is running - >>> reduce(lambda x,y: x+y,[1,2,3,4,5]) - 15 +如果我单独调用定义的内嵌函数,是不是可行呢?调用方式就是把上面代码中调用`foo()`,修改为调用`bar()`,然后运行,显示结果报错信息`NameError: name 'bar' is not defined`。 + +显然这样调用是不行的。因为`bar()`函数是定义在`foo()`里面的函数,它生效的范围仅局限在`foo()`函数体之内,也就是它的作用域是`foo()`范围。既然如此,`bar()`在使用变量的时候也会受到`foo()`的拘束了。 + + def foo(): + a = 1 + def bar(): + b = a + 1 + print "b=",b #Python 3的用户请使用print() + bar() + print "a=",a + + foo() + #output: + #b= 2 + #a= 1 + +在函数`bar()`之外但在`foo()`之内定义了`a = 1`,在`bar()`中能够被顺利调用。这个关系不难理解,可是如果遇到下面的,就迷茫了。 + + def foo(): + a = 1 + def bar(): + a = a + 1 #修改之处 + print "bar()a=",a + bar() + print "foo()a=",a + + foo() + +如果运行这段程序,是会报错的。重要的报错信息是`UnboundLocalError: local variable 'a' referenced before assignment`。观察`bar()`里面,使用了变量`a`,按照该表达式,Python解析器认定该变量应是在`bar()`内部建立的,而不是引用的外部对象。所以就报错了。 + +在Python 3中,你可以使用`nonlocal`关键词,如下演示。 + + def foo(): + a = 1 + def bar(): + nonlocal a + a = a + 1 + print("bar()a=",a) + bar() + print("foo()a=",a) + + foo() + #output + #bar()a= 2 + #foo()a= 2 + +以上说明了嵌套函数的原理,在编程实践中,怎么用呢? -请看官仔细观察,是否能够看出是如何运算的呢?画一个图: + def maker(n): + def action(x): + return x ** n + return action -![](./2images/20401.png) +在`maker()`函数中,`return action`返回的是`action()`函数对象。 + + f = maker(2) + print f + m = f(3) + print m -还记得map是怎么运算的吗?忘了?看代码: +`f`所引用的对象是一个函数对象——`action()`函数对象,`print f`就是打印这个函数对象的信息。观察执行结果,对比上述代码,会有所感悟的。 - >>> list1 = [1,2,3,4,5,6,7,8,9] - >>> list2 = [9,8,7,6,5,4,3,2,1] - >>> map(lambda x,y: x+y, list1,list2) - [10, 10, 10, 10, 10, 10, 10, 10, 10] + <function action at 0x02A39970> + 9 -看官对比一下,就知道两个的区别了。原来map是上下运算,reduce是横着逐个元素进行运算。 +从这个角度看,嵌套函数,其实能够制作一个动态的函数对象——`action`。这个话题延伸下去,就是所谓的“闭包”,关于“闭包”的问题,我会在后面跟读者聊一聊。 -权威的解释来自官网: +###初识装饰器 ->reduce(function, iterable[, initializer]) +至此,我们已经明确,函数——是对象——能够被传递,也能够嵌套。重复一个简单的举例,目的是抛砖引玉。 ->Apply function of two arguments cumulatively to the items of iterable, from left to right, so as to reduce the iterable to a single value. For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates ((((1+2)+3)+4)+5). The left argument, x, is the accumulated value and the right argument, y, is the update value from the iterable. If the optional initializer is present, it is placed before the items of the iterable in the calculation, and serves as a default when the iterable is empty. If initializer is not given and iterable contains only one item, the first item is returned. Roughly equivalent to: + def foo(fun): + def wrap(): + print "start" #Python 3用户请自行更换为print(),下同,从略 + fun() + print "end" + print fun.__name__ + return wrap - def reduce(function, iterable, initializer=None): - it = iter(iterable) - if initializer is None: - try: - initializer = next(it) - except StopIteration: - raise TypeError('reduce() of empty sequence with no initial value') - accum_value = initializer - for x in it: - accum_value = function(accum_value, x) - return accum_value - -如果用我们熟悉的for循环来做上面reduce的事情,可以这样来做: + def bar(): + print "I am in bar()" - >>> lst = range(1,6) - >>> lst - [1, 2, 3, 4, 5] - >>> r = 0 - >>> for i in range(len(lst)): - ... r += lst[i] - ... - >>> r - 15 +`foo()`的参数是一个函数,如果我们这样调用此函数: -for普世的,reduce是简洁的。 + f = foo(bar) + f() + #output: + #start + #I am in bar() + #end + #bar -为了锻炼思维,看这么一个问题,有两个list,a = [3,9,8,5,2],b=[1,4,9,2,6],计算:a[0]*b[0]+a[1]*b[1]+...的结果。 +这就是向`foo()`传递了函数对象`bar`——你已经熟悉的传递函数。对于这个问题,我们可以换一个写法——仅仅是换一个写法。 - >>> a - [3, 9, 8, 5, 2] - >>> b - [1, 4, 9, 2, 6] - - >>> zip(a,b) #复习一下zip,下面的方法中要用到 - [(3, 1), (9, 4), (8, 9), (5, 2), (2, 6)] + def foo(fun): + def wrap(): + print "start" + fun() + print "end" + print fun.__name__ + return wrap - >>> sum(x*y for x,y in zip(a,b)) #解析后直接求和 - 133 + @foo #增加的内容 + def bar(): + print "I am in bar()" - >>> new_list = [x*y for x,y in zip(a,b)] #可以看做是上面方法的分布实施 - - >>> #这样解析也可以:new_tuple = (x*y for x,y in zip(a,b)) - >>> new_list - [3, 36, 72, 10, 12] - >>> sum(new_list) #或者:sum(new_tuple) - 133 +`@foo`是一个看起来很奇怪的东西,人们常常把类似这种东西叫做语法糖。 - >>> reduce(lambda sum,(x,y): sum+x*y,zip(a,b),0) #这个方法是在耍酷呢吗? - 133 +>语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·兰丁发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。(源自《维基百科》) - >>> from operator import add,mul #耍酷的方法也不止一个 - >>> reduce(add,map(mul,a,b)) - 133 +如果用上面的方式,我们可以这样执行程序: - >>> reduce(lambda x,y: x+y, map(lambda x,y: x*y, a,b)) #map,reduce,lambda都齐全了,更酷吗? - 133 + bar() -最后,要特别提醒:如果读者使用的是python3,跟上面有点不一样,因为在python3中,reduce()已经从全局命名空间中移除,放到了functools模块中,如果要是用,需要用`from functools import reduce`引入之。 - -##filter - -filter的中文含义是“过滤器”,在python中,它就是起到了过滤器的作用。首先看官方说明: +结果是: ->filter(function, iterable) + start + I am in bar() + end + bar ->Construct a list from those elements of iterable for which function returns true. iterable may be either a sequence, a container which supports iteration, or an iterator. If iterable is a string or a tuple, the result also has that type; otherwise it is always a list. If function is None, the identity function is assumed, that is, all elements of iterable that are false are removed. +以上,就是所谓的装饰器及其应用,`foo()`是装饰器函数,使用`@foo`来装饰`bar()`函数。 ->Note that filter(function, iterable) is equivalent to [item for item in iterable if function(item)] if function is not None and [item for item in iterable if item] if function is None. - -这次真的不翻译了(好像以往也没有怎么翻译呀),而且也不解释要点了。请列位务必自己阅读上面的文字,并且理解其含义。英语,无论怎么强调都是不过分的,哪怕是做乞丐,说两句英语,没准还可以讨到英镑美元呢。 - -通过下面代码体会: - - >>> numbers = range(-5,5) - >>> numbers - [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4] - - >>> filter(lambda x: x>0, numbers) - [1, 2, 3, 4] - - >>> [x for x in numbers if x>0] #与上面那句等效 - [1, 2, 3, 4] - - >>> filter(lambda c: c!='i', 'qiwsir') #能不能对应上面文档说明那句话呢? - 'qwsr' #“If iterable is a string or a tuple, the result also has that type;” +装饰器本身是一个函数,将被装饰的类(后面会介绍这种东西)或者函数当作参数传递给装饰器函数,如上面所演示的那样。 -至此,介绍了几个函数,这些函数在对程序的性能提高上,并没有显著或者稳定预期,但是,在代码的简洁上,是有目共睹的。有时候是可以用来秀一秀,彰显python的优雅和自己耍酷。如何用、怎么用,看你自己的喜好了。 +关于装饰器,后面我们还会遇到。这里是刚刚认识,就如同跟人交往一样,初次见面,姑且简单了解,以后日久天长。 ------ diff --git a/237.md b/237.md new file mode 100644 index 0000000..438c65f --- /dev/null +++ b/237.md @@ -0,0 +1,275 @@ +##几个特殊函数 + +前面已经知道了如何编写、调用函数。此外,在python中,有几个特别的函数,很有意思,它们常常被看做是python能够进行所谓“函数式编程”的见证。 + +>如果以前没有听过,等你开始进入编程界,也会经常听人说“函数式编程”、“面向对象编程”、“指令式编程”等属于。它们是什么呢?这个话题要从“编程范式”讲起。(以下内容源自维基百科) + +>编程范型或编程范式(英语:Programming paradigm),(范即模范之意,范式即模式、方法),是一类典型的编程风格,是指从事软件工程的一类典型的风格(可以对照方法学)。如:函数式编程、程序编程、面向对象编程、指令式编程等等为不同的编程范型。 + +>编程范型提供了(同时决定了)程序员对程序执行的看法。例如,在面向对象编程中,程序员认为程序是一系列相互作用的对象,而在函数式编程中一个程序会被看作是一个无状态的函数计算的串行。 + +>正如软件工程中不同的群体会提倡不同的“方法学”一样,不同的编程语言也会提倡不同的“编程范型”。一些语言是专门为某个特定的范型设计的(如Smalltalk和Java支持面向对象编程,而Haskell和Scheme则支持函数式编程),同时还有另一些语言支持多种范型(如Ruby、Common Lisp、Python和Oz)。 + +>编程范型和编程语言之间的关系可能十分复杂,由于一个编程语言可以支持多种范型。例如,C++设计时,支持过程化编程、面向对象编程以及泛型编程。然而,设计师和程序员们要考虑如何使用这些范型元素来构建一个程序。一个人可以用C++写出一个完全过程化的程序,另一个人也可以用C++写出一个纯粹的面向对象程序,甚至还有人可以写出杂揉了两种范型的程序。 + +不管读者是初学还是老油条,都建议将上面这段话认真读完,不管理解还是不理解,总能有点感觉的。 + +正如前面引文中所说的,python是支持多种范型的语言,可以进行所谓函数式编程,其突出体现在有这么几个函数: + +filter、map、reduce、lambda、yield + +有了它们,最大的好处是程序更简洁;没有它们,程序也可以用别的方式实现,只不过麻烦一些罢了。所以,还是能用则用之吧。更何况,恰当地使用这几个函数,能让别人感觉你更牛X。 + +(注:本节不对yield进行介绍,请阅读[《生成器》](./215.md)) + +##lambda + +lambda函数,是一个只用一行就能解决问题的函数,听着是多么诱人呀。看下面的例子: + + >>> def add(x): #定义一个函数,将输入的变量增加3,然后返回增加之后的值 + ... x += 3 + ... return x + ... + >>> numbers = range(10) + >>> numbers + [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] #有这样一个list,想让每个数字增加3,然后输出到一个新的list中 + + >>> new_numbers = [] + >>> for i in numbers: + ... new_numbers.append(add(i)) #调用add()函数,并append到list中 + ... + >>> new_numbers + [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + +在这个例子中,add()只是一个中间操作。当然,上面的例子完全可以用别的方式实现。比如: + + >>> new_numbers = [ i+3 for i in numbers ] + >>> new_numbers + [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + +首先说明,这种列表解析的方式是非常非常好的。 + +但是,我们偏偏要用lambda这个函数替代add(x),如果看官和我一样这么偏执,就可以: + + >>> lam = lambda x:x+3 + >>> n2 = [] + >>> for i in numbers: + ... n2.append(lam(i)) + ... + >>> n2 + [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + +这里的lam就相当于add(x),请看官对应一下,这一行lambda x:x+3就完成add(x)的三行(还是两行?),特别是最后返回值。还可以写这样的例子: + + >>> g = lambda x,y:x+y #x+y,并返回结果 + >>> g(3,4) + 7 + >>> (lambda x:x**2)(4) #返回4的平方 + 16 + +通过上面例子,总结一下lambda函数的使用方法: + +- 在lambda后面直接跟变量 +- 变量后面是冒号 +- 冒号后面是表达式,表达式计算结果就是本函数的返回值 + +为了简明扼要,用一个式子表示是必要的: + + lambda arg1, arg2, ...argN : expression using arguments + +要特别提醒看官:虽然lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值,但是**lambda 函数不能包含命令,包含的表达式不能超过一个。不要试图向 lambda 函数中塞入太多的东西;如果你需要更复杂的东西,应该定义一个普通函数,然后想让它多长就多长。** + +就lambda而言,它并没有给程序带来性能上的提升,它带来的是代码的简洁。比如,要打印一个list,里面依次是某个数字的1次方,二次方,三次方,四次方。用lambda可以这样做: + + >>> lamb = [ lambda x:x,lambda x:x**2,lambda x:x**3,lambda x:x**4 ] + >>> for i in lamb: + ... print i(3), + ... + 3 9 27 81 + +lambda做为一个单行的函数,在编程实践中,可以选择使用。 + +##map + +先看一个例子,还是上面讲述lambda的时候第一个例子,用map也能够实现: + + >>> numbers + [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] #把列表中每一项都加3 + + >>> map(add,numbers) #add(x)是上面讲述的那个函数,但是这里只引用函数名称即可 + [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + + >>> map(lambda x: x+3,numbers) #用lambda当然可以啦 + [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] + +map()是python的一个内置函数,它的基本样式是: + +`map(func,seq)` + +func是一个函数,seq是一个序列对象。在执行的时候,序列对象中的每个元素,按照从左到右的顺序,依次被取出来,并塞入到func那个函数里面,并将func的返回值依次存到一个list中。 + +在应用中,map的所能实现的,也可以用别的方式实现。比如: + + >>> items = [1,2,3,4,5] + >>> squared = [] + >>> for i in items: + ... squared.append(i**2) + ... + >>> squared + [1, 4, 9, 16, 25] + + >>> def sqr(x): return x**2 + ... + >>> map(sqr,items) + [1, 4, 9, 16, 25] + + >>> map(lambda x: x**2, items) + [1, 4, 9, 16, 25] + + >>> [ x**2 for x in items ] #这个我最喜欢了,一般情况下速度足够快,而且可读性强 + [1, 4, 9, 16, 25] + +条条大路通罗马,以上方法,在编程中,自己根据需要来选用啦。 + +在以上感性认识的基础上,在来浏览有关map()的官方说明,能够更明白一些。 + +>map(function, iterable, ...) + +>Apply function to every item of iterable and return a list of the results. If additional iterable arguments are passed, function must take that many arguments and is applied to the items from all iterables in parallel. If one iterable is shorter than another it is assumed to be extended with None items. If function is None, the identity function is assumed; if there are multiple arguments, map() returns a list consisting of tuples containing the corresponding items from all iterables (a kind of transpose operation). The iterable arguments may be a sequence or any iterable object; the result is always a list. + +理解要点: + +- 对iterable中的每个元素,依次应用function的方法(函数)(这本质上就是一个for循环)。 +- 将所有结果返回一个list。 +- 如果参数很多,则对那些参数并行执行function。 + +例如: + + >>> lst1 = [1,2,3,4,5] + >>> lst2 = [6,7,8,9,0] + >>> map(lambda x,y: x+y, lst1,lst2) #将两个列表中的对应项加起来,并返回一个结果列表 + [7, 9, 11, 13, 5] + +请看官注意了,上面这个例子如果用for循环来写,还不是很难,如果扩展一下,下面的例子用for来改写,就要小心了: + + >>> lst1 = [1,2,3,4,5] + >>> lst2 = [6,7,8,9,0] + >>> lst3 = [7,8,9,2,1] + >>> map(lambda x,y,z: x+y+z, lst1,lst2,lst3) + [14, 17, 20, 15, 6] + +这才显示出map的简洁优雅。 + +##reduce + +直接看这个: + + >>> reduce(lambda x,y: x+y,[1,2,3,4,5]) + 15 + +请看官仔细观察,是否能够看出是如何运算的呢?画一个图: + +![](./2images/20401.png) + +还记得map是怎么运算的吗?忘了?看代码: + + >>> list1 = [1,2,3,4,5,6,7,8,9] + >>> list2 = [9,8,7,6,5,4,3,2,1] + >>> map(lambda x,y: x+y, list1,list2) + [10, 10, 10, 10, 10, 10, 10, 10, 10] + +看官对比一下,就知道两个的区别了。原来map是上下运算,reduce是横着逐个元素进行运算。 + +权威的解释来自官网: + +>reduce(function, iterable[, initializer]) + +>Apply function of two arguments cumulatively to the items of iterable, from left to right, so as to reduce the iterable to a single value. For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates ((((1+2)+3)+4)+5). The left argument, x, is the accumulated value and the right argument, y, is the update value from the iterable. If the optional initializer is present, it is placed before the items of the iterable in the calculation, and serves as a default when the iterable is empty. If initializer is not given and iterable contains only one item, the first item is returned. Roughly equivalent to: + + def reduce(function, iterable, initializer=None): + it = iter(iterable) + if initializer is None: + try: + initializer = next(it) + except StopIteration: + raise TypeError('reduce() of empty sequence with no initial value') + accum_value = initializer + for x in it: + accum_value = function(accum_value, x) + return accum_value + +如果用我们熟悉的for循环来做上面reduce的事情,可以这样来做: + + >>> lst = range(1,6) + >>> lst + [1, 2, 3, 4, 5] + >>> r = 0 + >>> for i in range(len(lst)): + ... r += lst[i] + ... + >>> r + 15 + +for普世的,reduce是简洁的。 + +为了锻炼思维,看这么一个问题,有两个list,a = [3,9,8,5,2],b=[1,4,9,2,6],计算:a[0]*b[0]+a[1]*b[1]+...的结果。 + + >>> a + [3, 9, 8, 5, 2] + >>> b + [1, 4, 9, 2, 6] + + >>> zip(a,b) #复习一下zip,下面的方法中要用到 + [(3, 1), (9, 4), (8, 9), (5, 2), (2, 6)] + + >>> sum(x*y for x,y in zip(a,b)) #解析后直接求和 + 133 + + >>> new_list = [x*y for x,y in zip(a,b)] #可以看做是上面方法的分布实施 + + >>> #这样解析也可以:new_tuple = (x*y for x,y in zip(a,b)) + >>> new_list + [3, 36, 72, 10, 12] + >>> sum(new_list) #或者:sum(new_tuple) + 133 + + >>> reduce(lambda sum,(x,y): sum+x*y,zip(a,b),0) #这个方法是在耍酷呢吗? + 133 + + >>> from operator import add,mul #耍酷的方法也不止一个 + >>> reduce(add,map(mul,a,b)) + 133 + + >>> reduce(lambda x,y: x+y, map(lambda x,y: x*y, a,b)) #map,reduce,lambda都齐全了,更酷吗? + 133 + +最后,要特别提醒:如果读者使用的是python3,跟上面有点不一样,因为在python3中,reduce()已经从全局命名空间中移除,放到了functools模块中,如果要是用,需要用`from functools import reduce`引入之。 + +##filter + +filter的中文含义是“过滤器”,在python中,它就是起到了过滤器的作用。首先看官方说明: + +>filter(function, iterable) + +>Construct a list from those elements of iterable for which function returns true. iterable may be either a sequence, a container which supports iteration, or an iterator. If iterable is a string or a tuple, the result also has that type; otherwise it is always a list. If function is None, the identity function is assumed, that is, all elements of iterable that are false are removed. + +>Note that filter(function, iterable) is equivalent to [item for item in iterable if function(item)] if function is not None and [item for item in iterable if item] if function is None. + +这次真的不翻译了(好像以往也没有怎么翻译呀),而且也不解释要点了。请列位务必自己阅读上面的文字,并且理解其含义。英语,无论怎么强调都是不过分的,哪怕是做乞丐,说两句英语,没准还可以讨到英镑美元呢。 + +通过下面代码体会: + + >>> numbers = range(-5,5) + >>> numbers + [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4] + + >>> filter(lambda x: x>0, numbers) + [1, 2, 3, 4] + + >>> [x for x in numbers if x>0] #与上面那句等效 + [1, 2, 3, 4] + + >>> filter(lambda c: c!='i', 'qiwsir') #能不能对应上面文档说明那句话呢? + 'qwsr' #“If iterable is a string or a tuple, the result also has that type;” + +至此,介绍了几个函数,这些函数在对程序的性能提高上,并没有显著或者稳定预期,但是,在代码的简洁上,是有目共睹的。有时候是可以用来秀一秀,彰显python的优雅和自己耍酷。如何用、怎么用,看你自己的喜好了。 diff --git a/2code/20403.py b/2code/20403.py new file mode 100644 index 0000000..739faf9 --- /dev/null +++ b/2code/20403.py @@ -0,0 +1,10 @@ +#! /usr/bin/env python +# coding:utf-8 + +def convert(func, seq): + return [func(i) for i in seq] + +if __name__ == "__main__": + myseq = (111, 3.14, -9.21) + r = convert(str, myseq) + print r diff --git a/2code/20702.py b/2code/20702.py new file mode 100644 index 0000000..ae445e0 --- /dev/null +++ b/2code/20702.py @@ -0,0 +1,16 @@ +#! /usr/bin/env python +# coding:utf-8 + +def convert(func, seq): + return [func(i) for i in seq] + +def num(n): + if n%2 == 0: + return n**n + else: + return n*n + +if __name__ == "__main__": + myseq = (3, 4, 5) + r = convert(num, myseq) + print r #Python 3: print(r) diff --git a/2code/20703.py b/2code/20703.py new file mode 100644 index 0000000..4903672 --- /dev/null +++ b/2code/20703.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +#coding:utf-8 + +def foo(): + def bar(): + print "bar() is running" + bar() + print "foo() is running" + +#foo() +bar() diff --git a/2code/20703p3.py b/2code/20703p3.py new file mode 100644 index 0000000..fda0e6d --- /dev/null +++ b/2code/20703p3.py @@ -0,0 +1,10 @@ +def foo(): + a = 1 + def bar(): + nonlocal a + a = a + 1 + print("bar()a=",a) + bar() + print("foo()a=",a) + +foo() diff --git a/2code/20704.py b/2code/20704.py new file mode 100644 index 0000000..09f3af6 --- /dev/null +++ b/2code/20704.py @@ -0,0 +1,25 @@ + +def foo(fun): + def wrap(): + print "start" + fun() + print "end" + print fun.__name__ + return wrap + +@foo +def bar(): + print "I am in bar()" + + +bar() + + +#start +#I am in bar() +#end +#bar +#I am in bar() +#f = foo(bar) +#f() + diff --git a/README.md b/README.md index ac95bce..3f655cd 100644 --- a/README.md +++ b/README.md @@ -59,9 +59,10 @@ 1. [函数(1)](./201.md)==>定义函数方法,调用函数方法,命名方法,使用函数注意事项 2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参,命名空间,全局变量和局部变量 3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 -4. [函数(4)](./204.md)==>递归和filter、map、reduce、lambda、yield -5. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 -6. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 +4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 +5. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield +6. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 +7. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 #第贰季 进阶 diff --git a/index.md b/index.md index fd1da46..ba6bdc7 100644 --- a/index.md +++ b/index.md @@ -59,9 +59,10 @@ 1. [函数(1)](./201.md)==>定义函数方法,调用函数方法,命名方法,使用函数注意事项 2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参,命名空间,全局变量和局部变量 3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 -4. [函数(4)](./204.md)==>递归和filter、map、reduce、lambda、yield -5. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 -6. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 +4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 +5. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield +6. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 +7. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 #第贰季 进阶 From 30d687b276db61edd5ecd13a593594f4d746250a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 11 Apr 2016 16:44:11 +0800 Subject: [PATCH 137/288] p3 --- 237.md | 109 +++++++++++++++++++++++++++++++-------------------------- 1 file changed, 60 insertions(+), 49 deletions(-) diff --git a/237.md b/237.md index 438c65f..664d57d 100644 --- a/237.md +++ b/237.md @@ -1,6 +1,10 @@ +>Ever since the creation of the world his eternal power dan divine nature, invisible though they are , have been understood and seen through the things ha has made. So they are without excuse; for they knew God, they did not honor him as God or give thanks to him, but they became futile in their thinking, and their senseless minds were darkened. Claiming to be wise, they became fools; and they exchange the glory of the immorrtal God for images resembling a mortal human being or birds or four-footed animals or reptiles. (ROMANS 1:20-23) + +#函数(5) + ##几个特殊函数 -前面已经知道了如何编写、调用函数。此外,在python中,有几个特别的函数,很有意思,它们常常被看做是python能够进行所谓“函数式编程”的见证。 +在python中,有几个特别的函数,它们常常被看做是Python能够进行所谓“函数式编程”的见证,虽然我认为Python不可能走上那条发展道路。 >如果以前没有听过,等你开始进入编程界,也会经常听人说“函数式编程”、“面向对象编程”、“指令式编程”等属于。它们是什么呢?这个话题要从“编程范式”讲起。(以下内容源自维基百科) @@ -14,29 +18,29 @@ 不管读者是初学还是老油条,都建议将上面这段话认真读完,不管理解还是不理解,总能有点感觉的。 -正如前面引文中所说的,python是支持多种范型的语言,可以进行所谓函数式编程,其突出体现在有这么几个函数: +正如前面引文中所说的,Python是支持多种范型的语言,可以进行所谓函数式编程,其突出体现在有这么几个函数:filter、map、reduce、lambda、yield。 -filter、map、reduce、lambda、yield +有了它们,最大的好处是程序更简洁;没有它们,程序也可以用别的方式实现,也不一定麻烦,或者相差无几。 -有了它们,最大的好处是程序更简洁;没有它们,程序也可以用别的方式实现,只不过麻烦一些罢了。所以,还是能用则用之吧。更何况,恰当地使用这几个函数,能让别人感觉你更牛X。 +因此,在编程实践中,可以不用这些特殊函数,但本着艺不压身的想法,还是要介绍,并且恰当地使用这几个函数,能让别人感觉你更牛X。 (注:本节不对yield进行介绍,请阅读[《生成器》](./215.md)) -##lambda +###lambda lambda函数,是一个只用一行就能解决问题的函数,听着是多么诱人呀。看下面的例子: - >>> def add(x): #定义一个函数,将输入的变量增加3,然后返回增加之后的值 + >>> def add(x): ... x += 3 ... return x ... >>> numbers = range(10) >>> numbers - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] #有这样一个list,想让每个数字增加3,然后输出到一个新的list中 + [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> new_numbers = [] >>> for i in numbers: - ... new_numbers.append(add(i)) #调用add()函数,并append到list中 + ... new_numbers.append(add(i)) ... >>> new_numbers [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] @@ -49,7 +53,7 @@ lambda函数,是一个只用一行就能解决问题的函数,听着是多 首先说明,这种列表解析的方式是非常非常好的。 -但是,我们偏偏要用lambda这个函数替代add(x),如果看官和我一样这么偏执,就可以: +但是,我们偏偏要用lambda这个函数替代`add(x)`。 >>> lam = lambda x:x+3 >>> n2 = [] @@ -59,12 +63,12 @@ lambda函数,是一个只用一行就能解决问题的函数,听着是多 >>> n2 [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] -这里的lam就相当于add(x),请看官对应一下,这一行lambda x:x+3就完成add(x)的三行(还是两行?),特别是最后返回值。还可以写这样的例子: +这里的`lam`就相当于`add(x)`,这一行`lambda x:x+3`就完成`add(x)`函数体里面的两行。还可以写这样的例子: - >>> g = lambda x,y:x+y #x+y,并返回结果 - >>> g(3,4) + >>> g = lambda x, y: x + y + >>> g(3, 4) 7 - >>> (lambda x:x**2)(4) #返回4的平方 + >>> (lambda x : x ** 2)(4) #返回4的平方 16 通过上面例子,总结一下lambda函数的使用方法: @@ -77,11 +81,11 @@ lambda函数,是一个只用一行就能解决问题的函数,听着是多 lambda arg1, arg2, ...argN : expression using arguments -要特别提醒看官:虽然lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值,但是**lambda 函数不能包含命令,包含的表达式不能超过一个。不要试图向 lambda 函数中塞入太多的东西;如果你需要更复杂的东西,应该定义一个普通函数,然后想让它多长就多长。** +要特别提醒:虽然lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值,但是**lambda 函数不能包含命令,包含的表达式不能超过一个。不要试图向 lambda 函数中塞入太多的东西;如果你需要更复杂的东西,应该定义一个普通函数,然后想让它多长就多长。** -就lambda而言,它并没有给程序带来性能上的提升,它带来的是代码的简洁。比如,要打印一个list,里面依次是某个数字的1次方,二次方,三次方,四次方。用lambda可以这样做: +就lambda而言,它并没有给程序带来性能上的提升,它带来的是代码的简洁。比如,要打印一列表,里面依次是某个数字的1次方,二次方,三次方,四次方。用lambda可以这样做: - >>> lamb = [ lambda x:x,lambda x:x**2,lambda x:x**3,lambda x:x**4 ] + >>> lamb = [ lambda x:x, lambda x:x**2, lambda x:x**3, lambda x:x**4 ] >>> for i in lamb: ... print i(3), ... @@ -93,20 +97,17 @@ lambda做为一个单行的函数,在编程实践中,可以选择使用。 先看一个例子,还是上面讲述lambda的时候第一个例子,用map也能够实现: - >>> numbers - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] #把列表中每一项都加3 + >>> numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] - >>> map(add,numbers) #add(x)是上面讲述的那个函数,但是这里只引用函数名称即可 + >>> map(add, numbers) [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - >>> map(lambda x: x+3,numbers) #用lambda当然可以啦 + >>> map(lambda x: x+3, numbers) #用lambda当然可以啦 [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] -map()是python的一个内置函数,它的基本样式是: +map()是python的一个内置函数,它的基本样式是`map(func,seq)`。 -`map(func,seq)` - -func是一个函数,seq是一个序列对象。在执行的时候,序列对象中的每个元素,按照从左到右的顺序,依次被取出来,并塞入到func那个函数里面,并将func的返回值依次存到一个list中。 +func是一个函数,seq是一个序列对象。在执行的时候,序列对象中的每个元素,按照从左到右的顺序,依次被取出来,塞入到func那个函数里面,并将func的返回值依次存到一个列表中。 在应用中,map的所能实现的,也可以用别的方式实现。比如: @@ -139,35 +140,37 @@ func是一个函数,seq是一个序列对象。在执行的时候,序列对 理解要点: -- 对iterable中的每个元素,依次应用function的方法(函数)(这本质上就是一个for循环)。 -- 将所有结果返回一个list。 +- 对可迭代对象中的每个元素,依次应用function的方法(函数)(这本质上就是一个for循环)。 +- 将所有结果返回一个列表。 - 如果参数很多,则对那些参数并行执行function。 例如: - >>> lst1 = [1,2,3,4,5] - >>> lst2 = [6,7,8,9,0] - >>> map(lambda x,y: x+y, lst1,lst2) #将两个列表中的对应项加起来,并返回一个结果列表 + >>> lst1 = [1, 2, 3, 4, 5] + >>> lst2 = [6, 7, 8, 9, 0] + >>> map(lambda x, y: x + y, lst1, lst2) #将两个列表中的对应项加起来,并返回一个结果列表 [7, 9, 11, 13, 5] -请看官注意了,上面这个例子如果用for循环来写,还不是很难,如果扩展一下,下面的例子用for来改写,就要小心了: +上面这个例子如果用for循环来写,还不是很难,如果扩展一下,下面的例子用for来改写,就要小心了: - >>> lst1 = [1,2,3,4,5] - >>> lst2 = [6,7,8,9,0] - >>> lst3 = [7,8,9,2,1] - >>> map(lambda x,y,z: x+y+z, lst1,lst2,lst3) + >>> lst1 = [1, 2, 3, 4, 5] + >>> lst2 = [6, 7, 8, 9, 0] + >>> lst3 = [7, 8, 9, 2, 1] + >>> map(lambda x,y,z: x+y+z, lst1, lst2, lst3) [14, 17, 20, 15, 6] 这才显示出map的简洁优雅。 ##reduce -直接看这个: +首先声明:如果读者使用的是Python3,跟上面有点不一样,因为在Python3中,`reduce()`已经从全局命名空间中移除,放到了functools模块中,如果要是用,需要用`from functools import reduce`引入之。 + +再看这个: - >>> reduce(lambda x,y: x+y,[1,2,3,4,5]) + >>> reduce(lambda x,y: x+y,[1, 2, 3, 4, 5]) 15 -请看官仔细观察,是否能够看出是如何运算的呢?画一个图: +请仔细观察,是否能够看出是如何运算的呢?画一个图: ![](./2images/20401.png) @@ -178,7 +181,7 @@ func是一个函数,seq是一个序列对象。在执行的时候,序列对 >>> map(lambda x,y: x+y, list1,list2) [10, 10, 10, 10, 10, 10, 10, 10, 10] -看官对比一下,就知道两个的区别了。原来map是上下运算,reduce是横着逐个元素进行运算。 +对比一下,就知道两个的区别了。原来map是上下运算,reduce是横着逐个元素进行运算。 权威的解释来自官网: @@ -212,12 +215,10 @@ func是一个函数,seq是一个序列对象。在执行的时候,序列对 for普世的,reduce是简洁的。 -为了锻炼思维,看这么一个问题,有两个list,a = [3,9,8,5,2],b=[1,4,9,2,6],计算:a[0]*b[0]+a[1]*b[1]+...的结果。 +为了锻炼思维,看这么一个问题,有两个list,`a = [3,9,8,5,2]`,`b=[1,4,9,2,6]`,计算:a[0]*b[0]+a[1]*b[1]+...的结果。 - >>> a - [3, 9, 8, 5, 2] - >>> b - [1, 4, 9, 2, 6] + >>> a = [3, 9, 8, 5, 2] + >>> b = [1, 4, 9, 2, 6] >>> zip(a,b) #复习一下zip,下面的方法中要用到 [(3, 1), (9, 4), (8, 9), (5, 2), (2, 6)] @@ -225,9 +226,9 @@ for普世的,reduce是简洁的。 >>> sum(x*y for x,y in zip(a,b)) #解析后直接求和 133 - >>> new_list = [x*y for x,y in zip(a,b)] #可以看做是上面方法的分布实施 + >>> new_list = [x*y for x,y in zip(a,b)] - >>> #这样解析也可以:new_tuple = (x*y for x,y in zip(a,b)) + >>> #这样也可以:new_tuple = (x*y for x,y in zip(a,b)),与上面的区别,后续会讲到 >>> new_list [3, 36, 72, 10, 12] >>> sum(new_list) #或者:sum(new_tuple) @@ -236,18 +237,20 @@ for普世的,reduce是简洁的。 >>> reduce(lambda sum,(x,y): sum+x*y,zip(a,b),0) #这个方法是在耍酷呢吗? 133 - >>> from operator import add,mul #耍酷的方法也不止一个 - >>> reduce(add,map(mul,a,b)) + >>> from operator import add, mul #耍酷的方法也不止一个 + >>> reduce(add, map(mul, a, b)) 133 >>> reduce(lambda x,y: x+y, map(lambda x,y: x*y, a,b)) #map,reduce,lambda都齐全了,更酷吗? 133 -最后,要特别提醒:如果读者使用的是python3,跟上面有点不一样,因为在python3中,reduce()已经从全局命名空间中移除,放到了functools模块中,如果要是用,需要用`from functools import reduce`引入之。 +在Python 2中,如果使用map/reduce之类,可能或遇到性能不稳定的情况,如果是Python 3,就放心多了,不仅性能稳定,而且速度足够快。 +但是,我还是更推荐使用列表解析,因为它可读性更好,你无法保证队友都跟你一样。 + ##filter -filter的中文含义是“过滤器”,在python中,它就是起到了过滤器的作用。首先看官方说明: +filter的中文含义是“过滤器”,在Python中,它就是起到了过滤器的作用。首先看官方说明: >filter(function, iterable) @@ -273,3 +276,11 @@ filter的中文含义是“过滤器”,在python中,它就是起到了过 'qwsr' #“If iterable is a string or a tuple, the result also has that type;” 至此,介绍了几个函数,这些函数在对程序的性能提高上,并没有显著或者稳定预期,但是,在代码的简洁上,是有目共睹的。有时候是可以用来秀一秀,彰显python的优雅和自己耍酷。如何用、怎么用,看你自己的喜好了。 + +不过,编程的时候,往往不能靠单纯自己的喜好,还得考虑队友。 + +------ + +[总目录](./index.md)   |   [上节:函数(4)](./204.md)   |   [下节:函数练习](./205.md) + +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file From 1760651b568fb2069e054d2f7e258070d7627295 Mon Sep 17 00:00:00 2001 From: SJ <hsj1992@gmail.com> Date: Tue, 12 Apr 2016 09:36:54 +0800 Subject: [PATCH 138/288] Add Python3 comment --- 128.md | 2 +- 201.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/128.md b/128.md index cf4706b..ab37d87 100644 --- a/128.md +++ b/128.md @@ -142,7 +142,7 @@ Bill正在介绍他的项目,嘴里不断蹦出“loop、iterate、traversal >>> f = open("208.txt") #从头再来 >>> for line in f: - ... print line, + ... print line, #Python 3: print(line,end='') ... Learn python with qiwsir. There is free python course. diff --git a/201.md b/201.md index 4d89d24..61a6883 100644 --- a/201.md +++ b/201.md @@ -99,7 +99,7 @@ if __name__ == "__main__": result = add_function(2, 3) - print result + print result #python3: print(result) 然后将文件保存,我把她命名为20101.py,你根据自己的喜好取个名字。 From 94a6b85f94f5cae6233a24f646cecddfe4655ad7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 12 Apr 2016 17:56:06 +0800 Subject: [PATCH 139/288] p3 --- 205.md | 189 ++++++++++++++++++++++++++++++++++++----------- 2code/20501p3.py | 28 +++++++ 2code/20502p3.py | 53 +++++++++++++ 3 files changed, 228 insertions(+), 42 deletions(-) create mode 100644 2code/20501p3.py create mode 100644 2code/20502p3.py diff --git a/205.md b/205.md index e82dc74..f0ea0b7 100644 --- a/205.md +++ b/205.md @@ -2,27 +2,33 @@ #函数练习 -已经学习了函数的基本知识,现在练习练习。完成下面练习的原则: +仅仅知道函数的知识,是远远不够的,必须要勤练习、多敲代码,才能有体会,熟能生巧,熟能有感悟。 -1. 请读者先根据自己的设想写下代码,然后运行调试,检查得到的结果是否正确 +首先声明,一下对每个问题的解决方案,不一定是最优的。 + +读者在完成本节练习的时候,请遵守如下规则(全看你的自我控制能力了,自控能力强的胜出,不要欺骗哦,因为上帝在看着你呢): + +1. 先根据自己的设想写下代码,然后运行调试,检查得到的结果是否正确 2. 我也给出参考代码,但是,参考代码并不是最终结果 -3. 读者可以在上述基础上对代码进行完善 +3. 可以在上述基础上对代码进行完善 4. 如果读者愿意,可以将代码提交到github上,或者到我的QQ群(群号:26913719)中跟大家分享讨论 ##解一元二次方程 -解一元二次方程,是初中数学中的基本知识,一般来讲解法有:公式法、因式分解法等。读者可以根据自己的理解,写一段求解一元二次方程的程序。 +解一元二次方程,是初中数学中的基本知识,一般来讲解法有公式法、因式分解法等。读者可以根据自己的理解,写一段求解一元二次方程的程序。 最简单的思路就是用公式法求解,这是普适法则(普世法则?普适是否等同于普世?)。 -古巴比伦留下的陶片显示,在大约公元前2000年(2000BC)古巴比伦的数学家就能解一元二次方程了。在大约公元前480年,中国人已经使用配方法求得了二次方程的正根,但是并没有提出通用的求解方法。公元前300年左右,欧几里得提出了一种更抽象的几何方法求解二次方程。 +>古巴比伦留下的陶片显示,在大约公元前2000年(2000BC)古巴比伦的数学家就能解一元二次方程了。在大约公元前480年,中国人已经使用配方法求得了二次方程的正根,但是并没有提出通用的求解方法。公元前300年左右,欧几里得提出了一种更抽象的几何方法求解二次方程。 -7世纪印度的婆罗摩笈多(Brahmagupta)是第一位懂得用使用代数方程,它同时容许有正负数的根。 +>7世纪印度的婆罗摩笈多(Brahmagupta)是第一位懂得用使用代数方程,它同时容许有正负数的根。 -11世纪阿拉伯的花拉子密 独立地发展了一套公式以求方程的正数解。亚伯拉罕·巴希亚(亦以拉丁文名字萨瓦索达著称)在他的著作Liber embadorum中,首次将完整的一元二次方程解法传入欧洲。。(源自《维基百科》) +>11世纪阿拉伯的花拉子密 独立地发展了一套公式以求方程的正数解。亚伯拉罕·巴希亚(亦以拉丁文名字萨瓦索达著称)在他的著作Liber embadorum中,首次将完整的一元二次方程解法传入欧洲。。(源自《维基百科》) 参考代码: +Python 2: + #!/usr/bin/env python # coding=utf-8 @@ -54,31 +60,66 @@ else: print "this equation has no solution." +Python 3: + + #!/usr/bin/env python + # coding=utf-8 + + """ + solving a quadratic equation + """ + + import math + + def quadratic_equation(a,b,c): + delta = b*b - 4*a*c + if delta<0: + return False + elif delta==0: + return -(b/(2*a)) + else: + sqrt_delta = math.sqrt(delta) + x1 = (-b + sqrt_delta)/(2*a) + x2 = (-b - sqrt_delta)/(2*a) + return x1, x2 + if __name__ == "__main__": + print("a quadratic equation: x^2 + 2x + 1 = 0") + coefficients = (1, 2, 1) + roots = quadratic_equation(*coefficients) + if roots: + print("the result is:{}".format(roots)) + else: + print("this equation has no solution.") + 保存为20501.py,并运行之: $ python 20501.py a quadratic equation: x^2 + 2x + 1 = 0 the result is: -1.0 -能够正常运行,求解方程。 +得到了方程的根。 -但是,如果再认真思考,发现上述代码是有很大改进空间的。至少我发现: +但是,如果再认真思考,发现上述代码是有很大改进空间的: - 如果不小心将第一个系数(a)的值输入了0,程序肯定会报错。如何避免之?要记住,任何人的输入都是不可靠的。 - 结果貌似只能是小数,这在某些情况下是近似值,能不能得到以分数形式表示的精确结果呢? -- 复数,python是可以表示复数的,如果delta<0,是不是写成复数更好,毕竟我是学过高中数学的。 +- 复数,Python是可以表示复数的,如果`delta<0`,是不是写成复数更好? -读者是否还有其它改进呢?你能不能进行改进,然后跟我和其他朋友一起来分享你的成就呢? +读者是否还有其它改进呢?希望你能优化它,并分享你的成果。 -至少要完成上述改进,可能需要其它的有关python知识,甚至于前面没有介绍。这都不要紧,掌握了基本知识之后,在编程的过程中,就要不断发挥google的优势,让她帮助你找寻完成任务的工具。 +至少要完成上述改进,可能需要其它的有关知识,甚至还没有介绍。这都不要紧,掌握了基本知识之后,在编程的过程中,就要不断发挥google的优势,让她帮助你找寻完成任务的工具。 ->python是一个开发的语言,很多大牛人都写了一些工具,让别人使用,减轻了后人的劳动负担。这就是所谓的第三方模块。虽然python中已经有一些“自带电池”,即默认安装的,比如上面程序中用到的math,但是我们还嫌不够。于是又很多第三方的模块来专门解决某个问题。比如这个解方程问题,就可以使用SymPy(www.sympy.org) 来解决,当然NumPy 也是非常强悍的工具。 +>Python是一个开放的语言,很多大牛人都写了一些工具,让别人使用,减轻了后人的劳动负担。这就是所谓的第三方模块。虽然Python中已经有一些“自带电池”,即默认安装的,比如上面程序中用到的math,但是我们还嫌不够。于是又很多第三方的模块来专门解决某个问题。比如这个解方程问题,就可以使用SymPy(www.sympy.org) 来解决,当然NumPy 也是非常强悍的工具。 ##统计考试成绩 -每次考试之后,教师都要统计考试成绩,一般包括:平均分,对所有人按成绩从高到低排队,谁成绩最好,谁成绩最差。还有其它的统计项,暂且不做了。只统计这几项吧。下面的任务就是读者转动脑筋,思考如何用程序实现上面的统计。为了简化,以字典形式表示考试成绩记录,例如:`{"zhangsan":90, "lisi":78, "wangermazi":39}`,当然,也许不止这三项,可能还有,每个老师所处理的内容稍有不同,因此字典里的键值对也不一样。 +每次考试之后,就知道年级一共有多少人了。 + +现在我们就帮着老师来做成绩统计,这项工作,对学霸来讲是快乐的,因为可以提前享受成功的喜悦;对学渣来讲是痛并快乐着,因为晚痛不如早痛。 + +所以,要快乐地敲代码。 -怎么做? +为了简化,以字典形式表示考试成绩记录,例如:`{"zhangsan":90, "lisi":78, "wangermazi":39}`,当然,也许不止这三项,可能还有,每个老师所处理的内容稍有不同,因此字典里的键值对也不一样。 有几种可能要考虑到: @@ -86,10 +127,14 @@ - 要实现不同长度的字典作为输入值。 - 输出结果中,除了平均分,其它的都要有姓名和分数两项,否则都匿名了,怎么刺激学渣,表扬学霸呢? -不管你是学渣还是学霸,都能学好python。请思考后敲代码调试你的程序,调试之后再阅读下文。 +不管是学渣还是学霸,都能学好Python。 + +请思考后敲代码调试你的程序,调试之后再阅读下文。 参考代码: +Python 2: + #!/usr/bin/env python # coding=utf-8 """ @@ -145,6 +190,62 @@ xuezha = min_score(examine_scores) print "Xuzha is: ",xuezha #学渣们 +Python 3: + + #!/usr/bin/env python + # coding=utf-8 + """ + 统计考试成绩 + """ + + def average_score(scores): + """ + 统计平均分. + """ + score_values = scores.values() + sum_scores = sum(score_values) + average = round(sum_scores/len(score_values), 2) # round(a,2) 保留两位小数 + return average + + def sorted_score(scores): + """ + 对成绩从高到低排队. + """ + score_lst = [(scores[k],k) for k in scores] + sort_lst = sorted(score_lst, reverse=True) + return [(i[1], i[0]) for i in sort_lst] + + def max_score(scores): + """ + 成绩最高的姓名和分数. + """ + lst = sorted_score(scores) #引用分数排序的函数sorted_score + max_score = lst[0][1] + return [(i[0],i[1]) for i in lst if i[1]==max_score] + + def min_score(scores): + """ + 成绩最低的姓名和分数. + """ + lst = sorted_score(scores) + min_score = lst[len(lst)-1][1] + return [(i[0],i[1]) for i in lst if i[1]==min_score] + + if __name__ == "__main__": + examine_scores = {"google":98, "facebook":99, "baidu":52, "alibaba":80, "yahoo":49, "IBM":70, "android":76, "apple":99, "amazon":99} + + ave = average_score(examine_scores) + print("the average score is:{}".format(ave)) #平均分 + + sor = sorted_score(examine_scores) + print("list of the scores:{}".format(sor)) #成绩表 + + xueba = max_score(examine_scores) + print("Xueba is:{}".format(xueba)) #学霸们 + + xuezha = min_score(examine_scores) + print("Xuzha is:{}".format(xuezha)) #学渣们 + 保存为20502.py,然后运行: $ python 20502.py @@ -153,19 +254,21 @@ Xueba is: [('facebook', 99), ('apple', 99), ('amazon', 99)] Xuzha is: [('yahoo', 49)] -貌似结果还不错。不过,还有改进余地,看看现实,就感觉不怎么友好了。看官能不能优化一下?当然,里面的函数也不一定是最好的方法,你也可以修改优化。期盼能够在我上面公布的途径中交流一二。 +貌似结果还不错。不过,还有改进余地,看看现实,就感觉不怎么友好了。能不能优化一下? ##找素数 这是一个比较常见的题目。我们姑且将范围缩小一下,找出100以内的素数吧。 -还是按照前面的管理,读者先做,然后我提供参考代码,然后自行优化。 +依照惯例,读者先做,然后我提供参考代码,最后思考如何优化。 ->质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数) +>质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数)。 >哥德巴赫猜想是数论中存在最久的未解问题之一。这个猜想最早出现在1742年普鲁士人克里斯蒂安·哥德巴赫与瑞士数学家莱昂哈德·欧拉的通信中。用现代的数学语言,哥德巴赫猜想可以陈述为:“任一大于2的偶数,都可表示成两个素数之和。”。哥德巴赫猜想在提出后的很长一段时间内毫无进展,直到二十世纪二十年代,数学家从组合数学与解析数论两方面分别提出了解决的思路,并在其后的半个世纪里取得了一系列突破。目前最好的结果是陈景润在1973年发表的陈氏定理(也被称为“1+2”)。(源自《维基百科》) -对这个练习,我的思路是先做一个函数,用它来判断某个整数是否是素数。然后循环即可。参考代码: +对这个练习,我的思路是先做一个函数,用它来判断某个整数是否是素数。然后循环即可。 + +参考代码: #!/usr/bin/env python # coding=utf-8 @@ -188,8 +291,8 @@ return True if __name__ == "__main__": - primes = [i for i in range(2,101) if is_prime(i)] #从2开始,因为1显然不是质数 - print primes + primes = [i for i in range(2, 101) if is_prime(i)] #从2开始,因为1显然不是质数 + print primes #Python 3: print(primes) 代码保存后运行: @@ -198,31 +301,33 @@ 打印出了100以内的质数。 -还是前面的观点,这个程序你或许也发现了需要进一步优化的地方,那就太好了。另外,关于判断质数的方法,还有好多种,读者可以自己创造或者网上搜索一些,拓展思路。 +你或许也发现了需要进一步优化的地方,那就太好了。 -#网友frankwang分享一段关于素数的代码,供各位参考: +另外,关于判断质数的方法,还有好多种,读者可以自己创造或者网上搜索一些,拓展思路。 -def find_primes(n): - primesList = [] - for x in range(2, n+1): - isPrime = True - for y in range(2, int(x**0.5) + 1): #x**0.5 相当于math.sqrt(x) - if x % y == 0: - isPrime = False - break - if isPrime: - primesList.append(x) +网友frankwang分享一段关于素数的代码,供各位参考: - print(primesList) -if __name__ == "__main__": - max = int(input('Find primes up to: ')) - find_primes(max) + def find_primes(n): + primes_list = [] + for x in range(2, n+1): + is_prime = True + for y in range(2, int(x**0.5) + 1): #x**0.5 相当于math.sqrt(x) + if x % y == 0: + is_prime = False + break + if is_prime: + primes_list.append(x) -代码保存后运行: -# 打印结果如下: -Find primes up to: 100 -[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] + print(primes_list) #Python 2: print primes_list + + if __name__ == "__main__": + max = int(input('Find primes up to: ')) + find_primes(max) +代码保存后运行,打印结果如下: + + Find primes up to: 100 + [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] ##编写函数的注意事项 diff --git a/2code/20501p3.py b/2code/20501p3.py new file mode 100644 index 0000000..95ca171 --- /dev/null +++ b/2code/20501p3.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding=utf-8 + +""" +solving a quadratic equation +""" + +import math + +def quadratic_equation(a,b,c): + delta = b*b - 4*a*c + if delta<0: + return False + elif delta==0: + return -(b/(2*a)) + else: + sqrt_delta = math.sqrt(delta) + x1 = (-b + sqrt_delta)/(2*a) + x2 = (-b - sqrt_delta)/(2*a) + return x1, x2 +if __name__ == "__main__": + print("a quadratic equation: x^2 + 2x + 1 = 0") + coefficients = (1, 2, 1) + roots = quadratic_equation(*coefficients) + if roots: + print("the result is:{}".format(roots)) + else: + print("this equation has no solution.") diff --git a/2code/20502p3.py b/2code/20502p3.py new file mode 100644 index 0000000..b565dec --- /dev/null +++ b/2code/20502p3.py @@ -0,0 +1,53 @@ +#!/usr/bin/env python +# coding=utf-8 +""" +统计考试成绩 +""" + +def average_score(scores): + """ + 统计平均分. + """ + score_values = scores.values() + sum_scores = sum(score_values) + average = round(sum_scores/len(score_values), 2) # round(a,2) 保留两位小数 + return average + +def sorted_score(scores): + """ + 对成绩从高到低排队. + """ + score_lst = [(scores[k],k) for k in scores] + sort_lst = sorted(score_lst, reverse=True) + return [(i[1], i[0]) for i in sort_lst] + +def max_score(scores): + """ + 成绩最高的姓名和分数. + """ + lst = sorted_score(scores) #引用分数排序的函数sorted_score + max_score = lst[0][1] + return [(i[0],i[1]) for i in lst if i[1]==max_score] + +def min_score(scores): + """ + 成绩最低的姓名和分数. + """ + lst = sorted_score(scores) + min_score = lst[len(lst)-1][1] + return [(i[0],i[1]) for i in lst if i[1]==min_score] + +if __name__ == "__main__": + examine_scores = {"google":98, "facebook":99, "baidu":52, "alibaba":80, "yahoo":49, "IBM":70, "android":76, "apple":99, "amazon":99} + + ave = average_score(examine_scores) + print("the average score is:{}".format(ave)) #平均分 + + sor = sorted_score(examine_scores) + print("list of the scores:{}".format(sor)) #成绩表 + + xueba = max_score(examine_scores) + print("Xueba is:{}".format(xueba)) #学霸们 + + xuezha = min_score(examine_scores) + print("Xuzha is:{}".format(xuezha)) #学渣们 From 094a2ede963a2d7e35bf7d17adc76bcd354bd2ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 12 Apr 2016 18:20:32 +0800 Subject: [PATCH 140/288] p3 --- 205.md | 2 +- 236.md | 22 ++++++++++++---------- 2 files changed, 13 insertions(+), 11 deletions(-) diff --git a/205.md b/205.md index f0ea0b7..f46811a 100644 --- a/205.md +++ b/205.md @@ -341,6 +341,6 @@ Python 3: ------ -[总目录](./index.md)   |   [上节:函数(4)](./204.md)   |   [下节:zip()补充](./236.md) +[总目录](./index.md)   |   [上节:函数(5)](./237.md)   |   [下节:zip()补充](./236.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/236.md b/236.md index 94edbe9..e35c96d 100644 --- a/236.md +++ b/236.md @@ -19,7 +19,7 @@ zip()的参数是可迭代对象。例如: >>> colors = ["red", "green", "blue"] >>> values = [234, 12, 89, 65] >>> for col, val in zip(colors, values): - ... print (col, val) + ... print (col, val) #Python 3: print((col, val)) ... ('red', 234) ('green', 12) @@ -27,9 +27,11 @@ zip()的参数是可迭代对象。例如: 注意观察,zip()自动进行了匹配,并且抛弃不对应的项。 -##参数*iterables +##参数`*iterables` -这是zip()的雕虫小技了,在前面的文档中,zip()的参数使`*iterables`,这是什么意思呢? +这是`zip()`的雕虫小技。 + +文档中显示`zip()`的参数使`*iterables`,这是什么意思呢? 在 [《函数(3)》](./203.md) 中,讲述“参数收集”和“另外一种传值”方法时,遇到过类似的参数,把其中一个例子再拿出来欣赏: @@ -42,7 +44,7 @@ zip()的参数是可迭代对象。例如: >>> add(*bars) 5 -zip()也类似上面示例中构造的那个add()函数。 +`zip()`也类似上面示例中构造的那个`add()`函数。 >>> dots = [(1, 2), (3, 4), (5, 6)] >>> x, y = zip(*dots) @@ -56,25 +58,25 @@ zip()也类似上面示例中构造的那个add()函数。 >>> m = [[1, 2], [3, 4], [5, 6]] - >>> zip(*m) + >>> zip(*m) #Python 3: list(zip(*m)) [(1, 3, 5), (2, 4, 6)] 下面再看一个有点绚丽的: >>> seq = range(1, 10) - >>> zip(*[iter(seq)]*3) + >>> zip(*[iter(seq)]*3) #Python 3: list(zip(*[iter(seq)]*3)) [(1, 2, 3), (4, 5, 6), (7, 8, 9)] 感觉有点太炫酷了,不是太好理解。其实,分解一下,就是: >>> x = iter(range(1, 10)) - >>> zip(x, x, x) + >>> zip(x, x, x) # Python 3: list(zip(x, x, x) ) [(1, 2, 3), (4, 5, 6), (7, 8, 9)] -这种炫酷的代码,我不提倡应用到编程实践中,这里仅仅使展示一下zip()的使用罢了。 +这种炫酷的代码,我不提倡应用到编程实践中,这里仅仅是展示一下`zip()`的使用罢了。 -关于在字典中使用zip()就不做过多介绍了,因为在 [《语句(4)》](./124.md) 中已经做了完整阐述。 +关于在字典中使用`zip()`就不做过多介绍了,因为在 [《语句(4)》](./124.md) 中已经做了完整阐述。 ##更酷的示例 @@ -82,7 +84,7 @@ zip()也类似上面示例中构造的那个add()函数。 >>> a = [1, 2, 3, 4, 5] >>> b = [2, 2, 9, 0, 9] - >>> map(lambda pair: max(pair), zip(a, b)) + >>> map(lambda pair: max(pair), zip(a, b)) #Python 3: list(map(lambda pair: max(pair), zip(a, b))) [2, 2, 9, 4, 9] 参考: From d2256fb2fc8b007649226a72508bc108f8bbe5bc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 12 Apr 2016 20:59:21 +0800 Subject: [PATCH 141/288] p3 --- 206.md | 42 ++++++++++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/206.md b/206.md index 582df56..8f21f6f 100644 --- a/206.md +++ b/206.md @@ -4,15 +4,21 @@ #类(1) -类,这个词如果是你第一次听到,把它作为一个单独的名词,总感觉怪怪的,因为在汉语体系中,很常见的是说“鸟类”、“人类”等词语,而单独说“类”,总感觉前面缺点修饰成分。其实,它对应的是英文单词class,“类”是这个class翻译过来的,你就把它作为一个翻译术语吧。 +类,这个词如果你第一次听到,把它作为一个单独的名词,会感觉怪怪的,因为在汉语中,常见的是说“鸟类”、“人类”等词语,而单独说“类”,总感觉前面缺点修饰成分。其实,它对应的是英文单词class,“类”是这个class翻译过来的,你就把它作为一个翻译术语吧。 除了“类”这个术语,从现在开始,还要经常提到一个OOP,即面向对象编程(或者“面向对象程序设计”)。 -为了理解类和OOP,需要对一些枯燥的名词有了解。 +为了理解类和OOP,需要对一些枯燥的名词术语有了解。 + +>“行百里路者半九十”,如果读者坚持阅读到本书的这个章节,已经对Python有了初步感受,而“类”就是能够让你在Python学习进程中再上台阶的标志。所以,一定要硬着头皮耐心地继续学下去。 ##术语 -必须了解这些术语的基本含义,因为后面经常用到。下面的术语定义均来自维基百科。 +所谓“术语”,可以粗浅地理解为某个领域的“行话”,比如在物理学里面,有专门定义的“质量”、“位移”、“速度”等,这些术语有的跟日常生活中的俗称名字貌似一样,但是所指有所不同。 + +“术语”的主要特征是具有一定的稳定性,并且严谨、简明,不是流行语。在谈到OOP的时候,会遇到一些术语,需要先明确它们的含义。 + +本节没有特别声明的术语定义均来自《维基百科》。 ###问题空间 @@ -36,9 +42,9 @@ 把object翻译为“对象”,是比较抽象的。因此,有人认为,不如翻译为“物件”更好。因为“物件”让人感到一种具体的东西。 -这种看法在某些语言中是非常适合的。但是,在Python中,则无所谓,不管怎样,python中的一切都是对象,不管是字符串、函数、模块还是类,都是对象。“万物皆对象”。 +我们不去追究翻译的名称,因为这是专家们的事情。我们需要知道的是“Python中的一切都是对象”,不管是字符串、函数、模块还是类,都是对象。“万物皆对象”。 -都是对象有什么优势吗?太有了。这说明python天生就是OOP的。也说明,python中的所有东西,都能够进行拼凑组合应用,因为对象就是可以拼凑组合应用的。 +都是对象有什么优势吗?太有了。这说明Python天生就是OOP的。 对于对象这个东西,OOP大师Grandy Booch的定义,应该是权威的,相关定义的内容包括: @@ -47,13 +53,15 @@ - **行为(behavior)**:是指一个对象如何影响外界及被外界影响,表现为对象自身状态的改变和信息的传递。 - **标识(identity)**:是指一个对象所具有的区别于所有其它对象的属性。(本质上指内存中所创建的对象的地址) -大师的话的确有水平,听起来非常高深。不过,初学者可能理解起来就有点麻烦了。我就把大师的话化简一下,但是化简了之后可能在严谨性上就不足了,我想对于初学者来讲,应该是影响不很大的。随着学习和时间的深入,就更能理解大师的严谨描述了。 +大师的话的确有水平,听起来非常高深。不过,初学者可能理解起来就有点麻烦了。 + +于是就需要“述而不作”的我了,我的任务就是就把大师的话化简,虽然化简了之后可能在严谨性上就不足了,但对于初学者来讲,应该是影响不很大的。随着学习和时间的深入,就更能理解大师的严谨描述了。那时候应当抛弃本书,去阅读大师的作品。 简化之,对象应该具有属性(就是上面的状态,因为属性更常用)、方法(就是上面的行为,方法更常被使用)和标识。因为标识是内存中自动完成的,所以,平时不用怎么管理它。主要就是属性和方法。 为了体现“深入浅出”的道理,还是讲故事吧。 -既然万物都是对象,那么,某个具体的人也是对象,这是当然的事情。假设这个具体的人就是德艺双馨的苍老师,她是一个对象。这个苍老师具有哪些特征呢?我错了,写到这里发现不能用苍老师为对象的例子,因为容易让读者不专心学习了。我换一个吧,以某个王美女为对象说明(这个王美女完全是虚构的,请不要对号入座,更不要想入非非,如果雷同,纯属巧合)。 +既然万物都是对象,那么,某个具体的人也是对象,这是当然的事情。假设这个具体的人就是德艺双馨的苍老师,她是一个对象。这个苍老师具有哪些特征呢?我错了,写到这里发现不能用苍老师为对象的例子,因为容易让读者不专心学习了。我换一个吧,选定的对象就是某个王美女(这个王美女完全是虚构的,请不要对号入座,更不要想入非非,如果雷同,纯属巧合,想入非非的后果自行担负)。 王美女这个对象具有某些特征,眼睛,大;腿,长;皮肤,白。当然,既然是美女,肯定还有别的显明特征,读者可以自己假设去。如果用“对象”的术语来说明,就说这些特征都是她的属性。也就是说**属性是一个对象做具有的特征,或曰:是什么。**。 @@ -93,7 +101,7 @@ >正如面向过程程序设计使得结构化程序设计的技术得以提升,现代的面向对象程序设计方法使得对设计模式的用途、契约式设计和建模语言(如UML)技术也得到了一定提升。 -列位看官,当您阅读到这句话的时候,我就姑且认为您已经对面向对象有了一个模糊的认识了。那么,类和OOP有什么关系呢? +至此,如果读者把前面的文字逐句读过,没有跳跃,则姑且认为你已经对“面向对象”有了一个模糊的认识了。那么,类和OOP有什么关系呢? ###类 @@ -105,7 +113,7 @@ >支持类的编程语言在支持与类相关的各种特性方面都多多少少有一些微妙的差异。大多数都支持不同形式的类继承。许多语言还支持提供封装性的特性,比如访问修饰符。类的出现,为面向对象编程的三个最重要的特性(封装性,继承性,多态性),提供了实现的手段。 -看到这里,看官或许有一个认识,要OOP编程,就得用到类。可以这么说,虽然不是很严格。但是,反过来就不能说了。不是说用了类就一定是OOP。 +看到这里,读者或许有一个认识,要OOP编程就得用到类。可以这么说,虽然不是很严格。但是,反过来就不能说了。不是说用了类就一定是OOP。 ##编写类 @@ -118,7 +126,7 @@ class 美女: #用class来声明,后面定义的是一个类 pass -好,现在就从这里开始,编写一个类,不过这次我们暂时不用python,而是用伪代码,当然,这个代码跟python相去甚远。如下: +从这里开始编写一个类,不过这次我们暂时不用Python,而是用貌似伪代码,当然,这个代码跟Python相去甚远。如下: class 美女: 胸围 = 90 @@ -128,21 +136,25 @@ 唱歌() 做饭() -定义了一个名称为“美女”的类,其中我约定,没有括号的是属性,带有括号的是方法。这个类仅仅是对美女的通常抽象,并不是某个具体美女. +定义了一个名称为“美女”的类,并约定,没有括号的是属性,带有括号的是方法。 + +这个类仅仅是对美女的通常抽象,并不是某个具体美女。 对于一个具体的美女,比如前面提到的苍老师或者王美女,她们都是上面所定义的“美女”那个类的具体化,这在编程中称为“美女类”的实例。 王美女 = 美女() -我用这样一种表达方式,就是将“美女类”实例化了,对“王美女”这个实例,就可以具体化一些属性,比如胸围;还可以具体实施一些方法,比如做饭。通常可以用这样一种方式表示: +用这样一种表达方式,就是将“美女类”实例化了,或者说创建了一个实例“王美女”。对“王美女”这个实例,就可以具体化一些属性,比如胸围;还可以具体实施一些方法,比如做饭。通常可以用这样一种方式表示: a = 王美女.胸围 -用点号`.`的方式,表示王美女胸围的属性,得到的变量a就是90.另外,还可以通过这种方式给属性赋值,比如 +用点号`.`的方式,表示王美女胸围的属性,得到的值就是90。 + +另外,还可以通过这种方式给属性赋值,比如 王美女.皮肤 = black -这样,这个实例(王美女)的皮肤就是黑色的了。 +这样,这个王美女(实例)的皮肤(属性)就是黑色(值)的了。 通过实例,也可以访问某个方法,比如: @@ -152,6 +164,8 @@ 至此,你是否对类和实例,类的属性和方法有初步理解了呢?如果没有理解,请用苍老师实例化美女类,你一定能理解的。 +当然,对类的认识不能仅仅停留在此,还要真刀真枪地写代码。 + ------ [总目录](./index.md)   |   [上节:函数练习](./205.md)   |   [下节:类(2)](./207.md) From 6ca9202b1a63c0bf3d63cd98c35a2dfa2b8b730d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 13 Apr 2016 21:55:50 +0800 Subject: [PATCH 142/288] p3 --- 207.md | 303 +++++++++++++++-------------------------------- 2code/20701p3.py | 27 +++++ 2 files changed, 125 insertions(+), 205 deletions(-) create mode 100644 2code/20701p3.py diff --git a/207.md b/207.md index c6d9384..1606119 100644 --- a/207.md +++ b/207.md @@ -6,34 +6,53 @@ ##新式类和旧式类 -因为python是一个不断发展的高级语言(似乎别的语言是不断发展的,甚至于自然语言也是),导致了在python2.x的版本中,有“新式类”和“旧式类(也叫做经典类)”之分。新式类是python2.2引进的,在此后的版本中,我们一般用的都是新式类。本着知其然还要知其所以然的目的,简单回顾一下两者的差别。 +Python是一个不断发展的高级语言(似乎别的语言也是不断发展的,甚至于自然语言也是),导致了Python 2和Python 3两个版本。 + +就是在Python 2中,还有“新式类”和“旧式类(也叫做经典类)”之分。这可真够分裂的。 + +新式类是Python 2.2引进的,在此后的版本中,我们一般用的都是新式类。 + +但是在Python 3中没有这种新旧的问题,它只是“类”。所以,如果你使用的是Python 3,并且也没有兴趣了解历史问题,可以跳过本节内容。不过,如果这样,如果有一天遇到老代码,你会后悔的。 + +书归正传,转到Python 2中,先写一个极简的旧式类。 >>> class AA: ... pass - ... -这是定义了一个非常简单的类,而且是旧式类。至于如何定义类,下面会详细说明。读者姑且囫囵吞枣似的的认同我刚才建立的名为`AA`的类,为了简单,这个类内部什么也不做,就是用`pass`一带而过。但不管怎样,是一个类,而且是一个旧式类(或曰经典类) +这就是一个旧式类。关于定义类的方法,下面会详细说明。读者姑且囫囵吞枣,认同我刚才建立的名为`AA`的类,为了简单,这个类内部什么也不做,就是用`pass`一带而过。但不管怎样,是一个类,而且是一个旧式类(它的另外一个名字是“经典类”,“旧”的时间长了就变成“经典”了)。 -然后,将这个类实例化(还记得上节中实例化吗?对,就是那个王美女干的事情): +然后,将这个类实例化或者说建立一个实例(还记得上节中实例化吗?对,就是那个王美女干的事情): >>> aa = AA() -不要忘记,实例化的时候,类的名称后面有一对括号。接下来做如下操作: +不要忘记,实例化的时候,类的名称后面有一对括号,这跟调用函数的方法是一样的。 + +接下来做如下操作: >>> type(AA) <type 'classobj'> + +`AA()`是调用类,但是`AA`指的就是那个类对象。 + +这一点非常类似于函数,比如函数`foo()`,而`foo`就是那个函数对象。在这里,“一切皆对象”应该再次浮现在你的脑海里。 + +`type(AA)`返回的是这个类对象的属性——`classobj`——`AA`是一个类对象。 + >>> aa.__class__ <class __main__.AA at 0xb71f017c> + +`aa`是一个实例,也是一个对象,每个对象都有`__class__`属性,用于显示它的类型。这里返回的结果是`<class __main__.AA at 0xb71f017c>`,从这个结果中可以读出的信息是,`aa`是类AA的实例。 + >>> type(aa) <type 'instance'> 解读一下上面含义: -- `type(AA)`:查看类`AA`的类型,返回的是`'classobj'` -- `aa.__class__`:aa是一个实例,也是一个对象,每个对象都有`__class__`属性,用于显示它的类型。这里返回的结果是`<class __main__.AA at 0xb71f017c>`,从这个结果中可以读出的信息是,aa是类AA的实例,并且类AA在内存中的地址是`0xb71f017c`。 -- `type(aa)`:是要看实例aa的类型,它显示的结果是`'instance`,意思是告诉我们它的类型是一个实例。 + `type(aa)`是要看实例`aa`的类型,显示的结果是`instance`,是告诉我们它是一个实例。 + +在这里是不是有点感觉不和谐呢?`aa.__class__`和`type(aa)`都可以查看对象类型,但是它们居然显示不一样的结果。 -在这里是不是有点感觉不和谐呢?`aa.__class__`和`type(aa)`都可以查看对象类型,但是它们居然显示不一样的结果。比如,查看这个对象: +看看我们已经熟悉的一个对象。 >>> a = 7 >>> a.__class__ @@ -41,9 +60,9 @@ >>> type(a) <type 'int'> -别忘记了,前面提到过的“万物皆对象”,那么一个整数7也是对象,用两种方式查看,返回的结果一样。为什么到类(严格讲是旧式类)这里,居然返回不一样呢?太不和谐了。 +对于整数7,毫无疑问,它是对象。用两种方式查看类型,返回的结果一样。为什么到类(严格讲是旧式类)这里,居然返回不一样呢?太不和谐了。 -于是乎,就有了新式类,从python2.2开始,变成这样了: +于是乎,就有了新式类,从Python2.2开始,变成这样了: >>> class BB(object): ... pass @@ -62,19 +81,9 @@ 当然,不同点绝非仅仅于此,这里只不过提到一个现在能够理解的不同罢了。另外的不同还在于两者对于多重继承的查找和调用方法不同,旧式类是深度优先,新式类是广度优先。可以先不理解,后面会碰到的。 -不管是新式类、还是旧式类,都可以通过这样的方法查看它们在内存中的存储空间信息 - - >>> print aa - <__main__.AA instance at 0xb71efd4c> - - >>> print bb - <__main__.BB object at 0xb71efe6c> - -分别告诉了我们两个实例是基于谁生成的,不过还是稍有区别。 +“喜新厌旧”是编程界的传统。所以,旧式类就不是我们讨论的内容了。 -知道了旧式类和新式类,那么下面的所有内容,就都是对新式类而言。“喜新厌旧”不是编程经常干的事情吗?所以,旧式类就不是我们讨论的内容了。 - -还要注意,如果你用的是python3,就不用为新式类和旧式类而担心了,因为在python3中压根儿就没有这个问题存在。 +在本书此后的内容中,所有Python 2代码中的类,都是新式类。 如何定义新式类呢? @@ -84,7 +93,7 @@ ... pass ... -跟旧式类的区别就在于类的名字后面跟上`(object)`,这其实是一种名为“继承”的类的操作,当前的类BB是以类object为上级的(object被称为父类),即BB是继承自类object的新类。在python3中,所有的类自然地都是类object的子类,就不用彰显出继承关系了。对了,这里说的有点让读者糊涂,因为冒出来了“继承”、“父类”、“子类”,不用着急,继续向下看。下面精彩,并且能解惑。 +跟旧式类的区别就在于类的名字后面跟上`(object)`,这其实是一种名为“继承”的类的操作,当前的类`BB`是以类`object`为上级的(object被称为父类),即`BB`是继承自类`object`的新类。在python 3中,所有的类自然地都是类`object`的子类,就不用彰显出继承关系了。对了,这里说的有点让读者糊涂,因为冒出来了“继承”、“父类”、“子类”,不用着急,继续向下看。下面精彩,并且能解惑。 第二种定义方法,在类的前面写上这么一句:`__metaclass__ == type`,然后定义类的时候,就不需要在名字后面写`(object)`了。 @@ -98,236 +107,120 @@ >>> type(cc) <class '__main__.CC'> -两种方法,任你选用,没有优劣之分。 +两种方法,任你选用,没有优劣之分。但在本书中,如果在Python 2里面定义新式类,都会采用第一种定义方法。 ##创建类 -因为在一般情况下,一个类都不是两三行能搞定的。所以,下面可能很少使用交互模式了,因为那样一旦有一点错误,就前功尽弃。我改用编辑界面。你用什么工具编辑?python自带一个IDE,可以使用。我习惯用vim。你用你习惯的工具即可。如果你没有别的工具,就用安装python时自带的那个IDE。 +前面我们创建了很简单的类,虽然没有什么太大的用途,但也是创建了类。为了更一般化地说明如何创建类,下面这个类,更具有通常类的结构。 + +Python2: #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type - - class Person: + class Person(object): + """ + This is a sample of class. + """ + def __init__(self, name): self.name = name - def getName(self): + def get_name(self): return self.name def color(self, color): - print "%s is %s" % (self.name, color) + d = {} + d[self.name] = color + return d -上面定义的是一个比较常见的类,一般情况下,都是这样子的。下面对这个“大众脸”的类一一解释。 - -###新式类 - -`__metaclass__ = type`,意味着下面的类是新式类。 - -###定义类 - -`class Person`,这是在声明创建一个名为"Person"的类。类的名称一般用大写字母开头,这是惯例。如果名称是两个单词,那么两个单词的首字母都要大写,例如`class HotPerson`,这种命名方法有一个形象的名字,叫做“驼峰式命名”。当然,如果故意不遵循此惯例,也未尝不可,但是,会给别人阅读乃至于自己以后阅读带来麻烦,不要忘记“代码通常是给人看的,只是偶尔让机器执行”。既然大家都是靠右走的,你就别非要在路中间睡觉了。 - -接下来,分别以缩进表示的,就是这个类的内容了。其实那些东西看起来并不陌生,你一眼就认出它们了——就是已经学习过的函数。没错,它们就是函数。不过,很多程序员喜欢把类里面的函数叫做“方法”。是的,就是上节中说到的对象的“方法”。我也看到有人撰文专门分析了“方法”和“函数”的区别。但是,我倒是认为这不重要,重要的是类的中所谓“方法”和前面的函数,在数学角度看,丝毫没有区别。所以,你尽可以称之为函数。当然,听到有人说方法,也不要诧异和糊涂。它们本质是一样的。 - -需要再次提醒,函数的命名方法是以`def`发起,并且函数名称首字母不要用大写,可以使用`aa_bb`的样式,也可以使用`aaBb`的样式,一切看你的习惯了。 - -不过,要注意的是,类中的函数(方法)的参数跟以往的参数样式有区别,那就是每个函数必须包括`self`参数,并且作为默认的第一个参数。这是需要注意的地方。至于它的用途,继续学习即可知道。 - -###初始化 - -`def __init__`,这个函数是一个比较特殊的,并且有一个名字,叫做**初始化函数**(注意,很多教材和资料中,把它叫做构造函数,这种说法貌似没有错误,但是一来从字面意义上看,它对应的含义是初始化,二来在python中它的作用和其它语言比如java中的构造函数还不完全一样,因为还有一个`__new__`的函数,是真正地构造。所以,在本教程中,我称之为初始化函数)。它是以两个下划线开始,然后是init,最后以两个下划线结束。 - ->所谓初始化,就是让类有一个基本的面貌,而不是空空如也。做很多事情,都要初始化,让事情有一个具体的起点状态。比如你要喝水,必须先初始化杯子里面有水。在python的类中,初始化就担负着类似的工作。这个工作是在类被实例化的时候就执行这个函数,从而将初始化的一些属性可以放到这个函数里面。 - -此例子中的初始化函数,就意味着实例化的时候,要给参数name提供一个值,作为类初始化的内容。通俗点啰嗦点说,就是在这个类被实例化的同时,要通过name参数传一个值,这个值被一开始就写入了类和实例中,成为了类和实例的一个属性。比如: - - girl = Person('canglaoshi') - -girl是一个实例对象,就如同前面所说的一样,它有属性和方法。这里仅说属性吧。当通过上面的方式实例化后,就自动执行了初始化函数,让实例girl就具有了name属性。 - - print girl.name - -执行这句话的结果是打印出`canglaoshi`。 - -这就是初始化的功能。简而言之,通过初始化函数,确定了这个实例(类)的“基本属性”(实例是什么样子的)。比如上面的实例化之后,就确立了实例girl的name是"canglaoshi"。 - -初始化函数,就是一个函数,所以,它的参数设置,也符合前面学过的函数参数设置规范。比如 - - def __init__(self,*args): - pass - -这种类型的参数:*args和前面讲述函数参数一样,就不多说了。忘了的看官,请去复习。但是,self这个参数是必须的。 - -很多时候,并不是每次都要从外面传入数据,有时候会把初始化函数的某些参数设置默认值,如果没有新的数据传入,就应用这些默认值。比如: +Python 3: class Person: - def __init__(self, name, lang="golang", website="www.google.com"): - self.name = name - self.lang = lang - self.website = website - self.email = "qiwsir@gmail.com" - - laoqi = Person("LaoQi") - info = Person("qiwsir",lang="python",website="qiwsir.github.io") - - print "laoqi.name=",laoqi.name - print "info.name=",info.name - print "-------" - print "laoqi.lang=",laoqi.lang - print "info.lang=",info.lang - print "-------" - print "laoqi.website=",laoqi.website - print "info.website=",info.website - - #运行结果 - - laoqi.name= LaoQi - info.name= qiwsir - ------- - laoqi.lang= golang - info.lang= python - ------- - laoqi.website= www.google.com - info.website= qiwsir.github.io - -在编程界,有这样一句话,说“类是实例工厂”,什么意思呢?工厂是干什么的?生产物品,比如生产电脑。一个工厂可以生产好多电脑。那么,类,就能“生产”好多实例,所以,它是“工厂”。比如上面例子中,就有两个实例。 - -###函数(方法) - -还是回到本节开头的那个类。构造函数下面的两个函数:`def getName(self)`,`def color(self, color)`,这两个函数和前面的初始化函数有共同的地方,即都是以self作为第一个参数。 - - def getName(self): - return self.name - -这个函数中的作用就是返回在初始化时得到的值。 - - girl = Person('canglaoshi') - name = girl.getName() - -`girl.getName()`就是调用实例girl的方法。调用该方法的时候特别注意,方法名后面的括号不可少,并且括号中不要写参数,在类中的`getName(self)`函数第一个参数self是默认的,当类实例化之后,调用此函数的时候,第一个参数不需要赋值。那么,变量name的最终结果就是`name = "canglaoshi"`。 - -同样道理,对于方法: - - def color(self, color): - print "%s is %s" % (self.name, color) - -也是在实例化之后调用: - - girl.color("white") - -这也是在执行实例化方法,只是由于类中的该方法有两个参数,除了默认的self之外,还有一个color,所以,在调用这个方法的时候,要为后面那个参数传值了。 - -至此,已经将这个典型的类和调用方法分解完毕,把全部代码完整贴出,请读者在从头到尾看看,是否理解了每个部分的含义: - - #!/usr/bin/env python - # coding=utf-8 - - __metaclass__ = type #新式类 - - class Person: #创建类 - def __init__(self, name): #构造函数 + """ + This is a sample of class. + """ + + def __init__(self, name): self.name = name - def getName(self): #类中的方法(函数) + def get_name(self): return self.name def color(self, color): - print "%s is %s" % (self.name, color) + d = {} + d[self.name] = color + return d + +这是一个具有“大众脸”的类,下面对它进行逐条解释。 - girl = Person('canglaoshi') #实例化 - name = girl.getName() #调用方法(函数) - print "the person's name is: ", name - girl.color("white") #调用方法(函数) +Python 2的代码中,使用了`class Person(object)`,代表着是新式类。而Python 3的代码中,不需要显示地继承object了。 - print "------" - print girl.name #实例的属性 - -保存后,运行得到如下结果: - - $ python 20701.py - the person's name is: canglaoshi - canglaoshi is white - ------ - canglaoshi +`class Person`,这是在声明创建一个名为"Person"的类,其关键词是`class`——对照着学习,创建函数的关键词是`def`——新旧知识类比,更容易理解。类的名称一般用大写字母开头,这是惯例。如果名称是两个单词,那么两个单词的首字母都要大写,例如`class HotPerson`。当然,如果故意不遵循此惯例,也未尝不可,但是,会给别人阅读乃至于自己以后阅读带来麻烦,不要忘记“代码通常是给人看的,只是偶尔让机器执行”。既然大家都是靠右走的,你就别非要在路中间睡觉了。对于Python 2,因为是要继承object,所以要在后面有一个类似函数的参数列表那样的样式`(object)`,Python 3则不需要,但是,不论是Python 2还是Python 3,要继承其它父类的时候,都要在后面写上`(father_class_name)`——当然,继承的问题是后文了。这一切结束之后,本行的最后就是冒号`:`。 -###类和实例 +声明了类的名字(或者也包括继承的父类),然后就是类里面的代码块。秉承函数的做法,类里面的代码块,相对类定义类的那一行,也是要缩进四个空格——四个空格,尽可能不适用tab键,老老实实敲四个空格,否则后患无穷,绝非危言耸听。 -有必要总结一下类和实例的关系: +再看类里面的代码,那些东西看起来并不陌生,你一眼就认出它们了——都是`def`这个关键词开头——就是已经学习过的函数。没错,它们就是函数。不过,仔细观察,会发现这些函数有点跟以往的函数不同,它们的参数中,都有`self`。这点差别,也是类中这种函数的特色,为了跟以往的函数有所却别,所以很多程序员喜欢把类里面的函数叫做“方法”——暂且不要纠结在名称上,虽然我看到过有人撰文专门分析了“方法”和“函数”的区别。但是,我倒是认为这不重要,重要的是类的中所谓“方法”和前面的函数,在数学角度看,丝毫没有区别。所以,你尽可以称之为函数。当然,听到有人说方法,也不要诧异和糊涂。它们本质是一样的。 -- “类提供默认行为,是实例的工厂”(源自Learning Python),这句话非常经典,一下道破了类和实例的关系。所谓工厂,就是可以用同一个模子做出很多具体的产品。类就是那个模子,实例就是具体的产品。所以,实例是程序处理的实际对象。 -- 类是由一些语句组成,但是实例,是通过调用类生成,每次调用一个类,就得到这个类的新的实例。 -- 对于类的:`class Person`,class是一个可执行的语句。如果执行,就得到了一个类对象,并且将这个类对象赋值给对象名(比如Person)。 - -也许上述比较还不足以让看官理解类和实例,没关系,继续学习,在前进中排除疑惑。 - -##self的作用 - -类里面的函数,第一个参数是self,但是在实例化的时候,似乎没有这个参数什么事儿,那么self是干什么的呢? +需要再次提醒,函数的命名方法是以`def`发起,并且函数名称首字母不要用大写,可以使用`aa_bb`的样式,也可以使用`aaBb`的样式,一切看你的习惯了。 -self是一个很神奇的参数。 +在上述代码示例中,函数(方法)的参数必须包括`self`参数,并且作为默认的第一个参数。这是需要注意的地方。至于它的用途,继续学习即可知道。 -在Person实例化的过程中`girl = Person("canglaoshi")`,字符串"canglaoshi"通过初始化函数(`__init__()`)的参数已经存入到内存中,并且以Person类型的面貌存在,组成了一个对象,这个对象和变量girl建立引用关系。这个过程也可说成这些数据附加到一个实例上。这样就能够以:`object.attribute`的形式,在程序中任何地方调用某个数据,例如上面的程序中以`girl.name`的方式得到`"canglaoshi"`。这种调用方式,在类和实例中经常使用,点号“.”后面的称之为类或者实例的属性。 +下面对类里面的每个方法(函数)做一个简要的阐述。 -这是在程序中,并且是在类的外面。如果在类的里面,想在某个地方使用实例化所传入的数据("canglaoshi"),怎么办? +`def __init__(self, name`,这个方法是比较特殊的。当从命名方式上看,就不一般——用双下划线开头和结尾——这样的方法,在类里面还有很多,我们统称为“特殊方法”。对于`__init__()`这个特殊方法,通常还给它取了一个名字——构造函数——这是通常的叫法,但是我觉得这个名字不好,在本书中我把它叫做做**初始化函数**,因为从字面意义上看,它对应的含义是初始化,并且在Python中它的作用和其它语言比如Java中的构造函数还不完全一样,Python中的真正构造函数是`__new__()`。 -在类内部,就是将所有传入的数据都赋给一个变量,通常这个变量的名字是self。注意,这是习惯,而且是共识,所以,看官不要另外取别的名字了。 +>所谓初始化,就是让类有一个基本的面貌,而不是空空如也。做很多事情,都要初始化,让事情有一个具体的起点状态。比如你要喝水,必须先初始化杯子里面有水。在Python的类中,初始化就担负着类似的工作。在类实例化时首先就执行初始化函数。 -在初始化函数中的第一个参数self,就是起到了这个作用——接收实例化过程中传入的所有数据,这些数据是初始化函数后面的参数导入的。显然,self应该就是一个实例(准确说法是应用实例),因为它所对应的就是具体数据。 +此例子中的初始化函数的参数除了`self`,还有一个`name`,在这个类被实例化的同时,要传给它一个值。 -如果将上面的类稍加修改,看看效果: +在初始化函数里面,`self.name = name`的含义是要建立实例的一个属性,这个属性的名字也是`name`,这个属性的值等于参数`name`所传入的值。特别注意,这里的属性`self.name`和参数`name`是纯属巧合,你也可以设置成`self.xxx = name`,只不过这样写,总感觉不是很方便。 - #!/usr/bin/env python - # coding=utf-8 +`def get_name(self)`和`def color(self, color)`是类里面的另外两个方法,这两个方法的除了第一个参数必须是`self`之外,别的跟函数就没有什么区别了。只是需要关注的是两个方法中都用到了`self.name`,这个属性只能在类里面这样使用。 - __metaclass__ = type +以上就将我们所建立的类进行了简要的分析。这也是建立一个类的基本方法。 - class Person: - def __init__(self, name): - self.name = name - print self #新增 - print type(self) #新增 +##实例 -其它部分省略。当初始化的时候,就首先要运行构造函数,同时就打印新增的两条。结果是: +类是对象的定义,实例才是真实的物件。比如“人”是一个类,但是“人”终究不是具体的某个活体,只有“张三”、“李四”才是具体的物件,但他们具有“人”所定义的属性和方法。“张三”、“李四”就是“人”的实例。 - <__main__.Person object at 0xb7282cec> - <class '__main__.Person'> +承接前面的类,先写出调用该类的代码。 -证实了推理。self就是一个实例(准确说是实例的引用变量)。 +Python 2: -self这个实例跟前面说的那个girl所引用的实例对象一样,也有属性。那么,接下来就规定其属性和属性对应的数据。上面代码中: + if __name__ == "__main__": + girl = Person("canglaoshi") + print girl.name + name = girl.get_name() + print name + her_color = girl.color("white") + print her_color - self.name = name - -就是规定了self实例的一个属性,这个属性的名字也叫做name,这个属性的值等于初始化函数的参数name所导入的数据。注意,`self.name`中的name和初始化函数的参数`name`没有任何关系,它们两个一样,只不过是一种起巧合(经常巧合,其实是为了省事和以后识别方便,故意让它们巧合。),或者说是写代码的人懒惰,不想另外取名字而已,无他。当然,如果写成`self.xxxooo = name`,也是可以的。 +Python 3: -其实,从效果的角度来理解,这么理解更简化:类的实例girl对应着self,girl通过self导入实例属性的所有数据。 + if __name__ == "__main__": + girl = Person("canglaoshi") + print(girl.name) + name = girl.get_name() + print(name) + her_color = girl.color("white") + print(her_color) -当然,self的属性数据,也不一定非得是由参数传入的,也可以在构造函数中自己设定。比如: +`girl = Person('canglaoshi')`是利用上面的类创建实例。 - #!/usr/bin/env python - #coding:utf-8 +创建实例,调用类`Person()`,首先就执行初始化函数,初始化函数有两个参数`self`和`name`,其中`self`是默认参数,不需要传值;`name`则需要给它传值,所以用`Person('canglaoshi')`的样式,就是为初始化函数中的`name`参数传值了,即`name = 'canglaoshi'`。 - __metaclass__ = type - - class Person: - def __init__(self, name): - self.name = name - self.email = "qiwsir@gmail.com" #这个属性不是通过参数传入的 +`girl`就是一个实例,它有属性和方法。 - info = Person("qiwsir") #换个字符串和实例化变量 - print "info.name=",info.name - print "info.email=",info.email #info通过self建立实例,并导入实例属性数据 +先说属性。实例化过程中,首先要执行`__init__()`,并通过参数`name`,使得实例属性`self.name = 'canglaoshi'`。这里先稍微提一下`self`的作用,它实质上就是实例对象本身,当你用实例调用方法的时候,由解释器将那个实例传递给方法,所以不需要显示地为这个参数传值。那么`self.name`也顺理成章地是实例的属性了。所以`print girl.name`或者`print(girl.name)`的结果应该是`canglaoshi`。 -运行结果 +这就是初始化的功能。简而言之,通过初始化函数,确定了这个实例的“基本属性”(实例是什么样子的)。 - info.name= qiwsir - info.email= qiwsir@gmail.com #打印结果 +`girl.get_name()`是通过实例来调用方法,也可以说建立了实例`girl`,这个实例就具有了`get_name()`方法。虽然在类里面,该方法的第一个参数是`self`,跟前面所述原因一样,通过实例调用该方法——实例方法——的时候,不需要显示地为`self`传递值,所以,在这里就不需要写任何参数。观察类中这个方法的代码可知,它的功能就是返回实例属性`self.name`的值,所以`print name`或者`print(name)`的结果是`canglaoshi`。 -通过这个例子,其实让我们拓展了对self的认识,也就是它不仅仅是为了在类内部传递参数导入的数据,还能在初始化函数中,通过`self.attribute`的方式,规定self实例对象的属性,这个属性也是类实例化对象的属性,即做为类通过初始化函数初始化后所具有的属性。所以在实例info中,通过info.email同样能够得到该属性的数据。在这里,就可以把self形象地理解为“内外兼修”了。或者按照前面所提到的,将info和self对应起来,self主内,info主外。 +`girl.color("white")`之所以要给参数传值,是因为`def color(self, color)`中有参数`color`。另外,这个方法里面也使用了`self.name`实例属性。最终该方法返回的是一个字典。所以`print her_color`或者`print(her_color)`的结果是`{'canglaoshi': 'white'}`。 -怎么样?在"canglaoshi"的陪伴下,是不是明白了类的奥妙? +这就是通过类建立实例,并且通过实例来调用其属性和方法的过程。 ------ diff --git a/2code/20701p3.py b/2code/20701p3.py new file mode 100644 index 0000000..7923143 --- /dev/null +++ b/2code/20701p3.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Person: + """ + This is a sample of class. + """ + + def __init__(self, name): + self.name = name + + def get_name(self): + return self.name + + def color(self, color): + d = {} + d[self.name] = color + return d + +if __name__ == "__main__": + girl = Person("canglaoshi") + print(girl.name) + name = girl.get_name() + print(name) + her_color = girl.color("white") + print(her_color) + From d4e6cea54113e1fe1d9254cbaa3b2ca9a43c4a55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Thu, 14 Apr 2016 23:24:37 +0800 Subject: [PATCH 143/288] p3 --- 208.md | 436 ++++++++++++++++++++++++++++++++--------------- 2code/20801p3.py | 7 + README.md | 4 +- index.md | 2 +- 4 files changed, 307 insertions(+), 142 deletions(-) create mode 100644 2code/20801p3.py diff --git a/208.md b/208.md index 91ba410..7edc9bb 100644 --- a/208.md +++ b/208.md @@ -4,34 +4,245 @@ 在上一节中,对类有了基本的或者说是模糊的认识,为了能够对类有更深刻的认识,本节要深入到一些细节。 -##类属性和实例属性 +##类属性 -正如上节的案例中,一个类实例化后,实例是一个对象,有属性。同样,类也是一个对象,它也有属性。 +在交互模式下,创建一个简单的类。 - >>> class A(object): - ... x = 7 + >>> class A(object): #Python 3: class A: + ... x = 7 ... -在交互模式下,定义一个很简单的类(注意观察,有`(object)`,是新式类),类中有一个变量`x = 7`,当然,如果愿意还可以写别的。因为一下操作中,只用到这个,我就不写别的了。 +这个类中的代码,没有任何方法,只有一个`x = 7`,当然,如果愿意还可以写别的。 + +先不用管为什么,继续在交互模式中敲代码。 >>> A.x 7 -在类A中,变量x所引用的数据,能够直接通过类来调用。或者说x是类A的属性,这种属性有一个名称,曰“类属性”。类属性仅限于此——类中的变量。它也有其他的名字,如静态数据。 +`A`是刚刚建立的类的名字,`x`是那个类中的一个变量,它引用的对象是整数`7`。通过`A.x`的方式,就能得到整数`7`。像这样的,类中的`x`被称为类的属性,而`7`是这个属性的值。`A.x`是调用类属性的方式。 + +这里谈到了“属性”,不要忽视这个词语,它是用在很多领域的一个术语,比如哲学有一些哲学家认为,属性所描述的是种类性质(例如颜色),属性的性质就是所谓的值(比如红色)。 + +哲学真的是“科学之母”呀,把上面的理解套用过来,就是我们现在讨论的类属性。`x`是类`A`的性质,它的值是`7`。如果还抽象,我就不得不寄出大招了。 + + >>> class Girl(object): #Python 3: class Girl: + breast = 90 + +在真实世界中,breast就是Girl的属性,你到某度上去搜索一下有关的关键词,就发现breast是一个重要属性了。所以,如果要建立类`Girl`,它必须有`breast`属性。那么这个属性的值,就关系到某类Girl的颜值了。这里的类`Girl`都是`breast`为90的,也就是所有符合此类的girl,其breast都是90。你可以想象其颜值高低了,是否符合你的喜好。 + +大招一处,为止一振,顿时困意消退。下面就请回到前面那个类`A`,继续枯燥地学习。 + +如果要调用类的某个属性——简称:类属性——其方法就是用半角的英文句号`.`,如前面所演示的`A.x`。类属性仅与其所定义的类绑定,并且这种属性,本质上说就是类中的变量,它的值不依赖于任何实例,只是由类中所写的变量赋值语句确定,比如`Girl`类,不管你用这个类建立的实例是东施还是西施,类属性`Girl.breast`都是90。所以,这个类属性还有别的名字,如静态变量或者静态数据。 + +在本书中,已经多次提到“万物皆对象”的观念,类也不例外,它也是对象。只有对象,才具有属性和方法。而属性是可以修改或者增加、删除的。既然如此,对刚才的类`A`或者类`Girl`,你都可以对目前其有的属性进行修改,也可以增加新的属性。 + + >>> A.y = 9 + >>> A.y + 9 + +对类`A`增加了一个新的属性,并且赋给了值。然后删除一个已有属性。 + + >>> del A.x + >>> A.x + Traceback (most recent call last): + File "<pyshell#14>", line 1, in <module> + A.x + AttributeError: type object 'A' has no attribute 'x' + +`A.x`属性删除之后,再调用,就出现异常了。但是`A.y`依然存在。 + + >>> A.y + 9 + +你也可以修改当前已有的类属性。 + + >>> Girl.breast = 40 + >>> Girl.breast + 40 + +`breast`是我们在类`Gril`中自己定义的属性,其实在一个类建立的同时,Python也让这个类具有了一些默认的属性。可以用我们熟知的`dir()`来查看类的所有属性(也包括方法)。 + + >>> dir(Girl) + ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'breast'] + +仔细观察,上面有一个特殊的属性`__dict__`,用“特殊”来修饰这个属性,是因为它也是以双下划线开头和结尾,就类似你已经见过的一个特殊方法`__init__()`一样。在类里面,凡以双下划线开头和结尾命名的属性或者方法,我们都会说它是“特殊”的。 + +对于Python 2和Python 3,上述显示结果会略有不同,其差别主要在于特殊属性和方法上。所以读者在自己的版本中操作的时候,不要执拗于上述结果。但是,自定义的属性`breast`是肯定都存在的。 + + >>> Girl.__dict__ + mappingproxy({'breast': 40, '__weakref__': <attribute '__weakref__' of 'Girl' objects>, '__dict__': <attribute '__dict__' of 'Girl' objects>, '__module__': '__main__', '__doc__': None}) + +对于不同版本的Python,上述显示结果也有所差异。但你都能看到属性的详细信息。类的特殊属性`__dict__`所显示的是这个类的属性名称以及该属性的完整数据。 + +下面列出类的几种特殊属性的含义,读者可以一一查看。 + +- `C.__name__`:以字符串的形式,返回类的名字,注意这时候得到的仅仅是一个字符串,它不是一个类对象 +- `C.__doc__`:显示类的文档 +- `C.__base__`:类C的所有父类。如果是按照上面方式定义的类,应该显示`object`,因为以上所有类都继承了它。等到学习了“继承”,再来看这个属性,内容就丰富了 +- `C.__dict__`:以字典形式显示类的所有属性 +- `C.__module__`:类所在的模块 + +稍微解释`C.__module__`。承接前面建立的类`Gril`,做如下操作: + + >>> Girl.__module__ + '__main__' + +说明这个类所述的模块是`__main__`,换个角度,类`Girl`的全称是`__main__.Girl`。还记得我们曾经用过标准库中的math吗?它是一个模块,它下面的内容都是用类似`math.pi`的样式读取。两者是同样道理,只不过模块名称变化了。 + + >>> from math import sin + >>> sin.__module__ + 'math' + +这里的`sin`全称就是`math.sin`,所以你也可以`import math`,然后使用`math.sin`。以上两者是一样的道理。 + +最后对类属性进行总结: + +1. 类属性跟类绑定,可以自定义、删除、修改值,也可以随时增加类属性 +2. 类属性不因为实例变化而发生变化 +3. 每个类都有一些特殊属性,通常情况特殊属性是不需要修改的,虽然有的特殊属性可以修改,比如`C.__doc__` + +对于类,除了属性,还有方法。但是类中的方法,因为牵扯到实例,所以,我们还是通过研究实例,理解类中的方法 + +##创建实例 + +创建实例并不是困难的事情,只需要通过调用类就能实现。 + + >>> canglaoshi = Girl() + >>> canglaoshi + <__main__.Girl object at 0x0000000003726C18> + +这就创建了一个实例`canglaoshi`。 + +请读者注意,调用类的方法和调用函数的方法类似。如果仅仅写`Girl()`也是创建了一个实例,如下所示: + + >>> Girl() + <__main__.Girl object at 0x00000000035262E8> + +但是,如果不将实例赋给某个变量,它就马上被Python视为垃圾回收了。只有把它赋给某个变量——实例也是对象——我们通过变量才能操作这个实例。 + +那么,一个实例的建立过程是怎样进行的呢? + +再次启用上节中写的类。 + +Python2: + + #!/usr/bin/env python + # coding=utf-8 + + class Person(object): + """ + This is a sample of class. + """ + + def __init__(self, name): + self.name = name + + def get_name(self): + return self.name + + def color(self, color): + d = {} + d[self.name] = color + return d + +Python 3: + + class Person: + """ + This is a sample of class. + """ + + def __init__(self, name): + self.name = name + + def get_name(self): + return self.name + + def color(self, color): + d = {} + d[self.name] = color + return d + +实例还是用`girl = Person('canglaoshi')`,当然,你建立别的实例也是可以的。利用一个类,可以建立无限多个实例,所以有一种说法,类是实例的工厂。 + +创建实例,就是调用类。当类被调用之后: + +1. 创建实例对象; +2. 检查是否有——专业的说法:是否实现——`__init__()`方法。如果没有,则返回实例对象; +3. 如果有`__init__()`,则调用该方法,并且将实例对象作为第一个参数`self`传递进去 + +`__init__()`作为一个特殊方法,是比较特殊的,在它里面,一般是规定一些属性或者做一些初始化要让类具有的一些特征,但是,它没有`return`语句。观察别的方法都是可以有这个的。 + + class Foo: + def __init__(self): + print("I am in init()") + return 1 + + bar = Foo() + +假如写了上面的代码,在初始化函数中有`return`语句,又会如何? + + I am in init() + Traceback (most recent call last): + File "F:/MyGitHub/StarterLearningPython/2code/20801p3.py", line 7, in <module> + bar = Foo() + TypeError: __init__() should return None, not 'int' + +这就是运行结果,出现了异常,并且明确告知“__init__() should return None”,所以不能有`return`,如果非要有,也得是`return None`,索性就不要写了。 + +由此可知,对于`__init__()`初始化函数,除了第一个参数是并且必须有`self`、不能有`return`语句这两个特征之外,其它方面和普通函数就没有什么异样了。比如参数和里面的属性,你可以这样来做: + + class Person: + def __init__(self, name, lang="golang", website="www.google.com"): + self.name = name + self.lang = lang + self.website = website + self.email = "qiwsir@gmail.com" + +实例创建好之后,就要研究关于实例的内容,首先看实例属性 + +##实例属性 + +与类属性类似,实例所具有的属性叫做“实例属性”。 + +还是用那个简单的类,虽然有点枯燥。 + >>> class A(object): #Python 3: class A: + ... x = 7 + ... >>> foo = A() + +类已经有一个属性`A.x = 7`,那么由这个类所建立的实例也具有这个属性。 + >>> foo.x 7 - -实例化,通过实例也可以得到这个属性,这个属性叫做“实例属性”。对于同一属性,可以用类来访问(类属性),在一般情况下,也可以通过实例来访问同样的属性。但是: + +除了`foo.x`这个属性之外,实例也具有其它的属性和方法,依然能使用`dir()`方法来查看。 + + >>> dir(foo) + ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'x'] + +不同Python版本显示结果稍微有差异,但是那个名为`x`的属性是都有的,这点上还是跟类属性类似的。并且实例也有一些特殊属性,比如: + + >>> foo.__dict__ + mappingproxy({'__dict__': <attribute '__dict__' of 'A' objects>, '__doc__': None, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__module__': '__main__', 'x': 7}) + +实例属性和类属性的一个最大不同,在于实例属性可以随意更改,不用有什么担心(前面我们建议,尽可能不要修改类属性)。 >>> foo.x += 1 >>> foo.x 8 + +这是把实例属性修改了。但是,类属性并没有因为实例属性修改而变化,正如前文所讲,类属性是跟类绑定,不受实例影响。 + >>> A.x 7 -实例属性更新了,类属性没有改变。这至少说明,类属性不会被实例属性左右,也可以进一步说“类属性与实例属性无关”。那么,`foo.x += 1`的本质是什么呢?其本质是该实例foo又建立了一个新的属性,但是这个属性(新的foo.x)居然与原来的属性(旧的foo.x)重名,所以,原来的foo.x就被“遮盖了”,只能访问到新的foo.x,它的值是8. +上述结果说明“类属性与实例属性无关”。 + +那么,`foo.x += 1`的本质是什么呢? + +其本质是该实例foo又建立了一个新的属性,但是这个属性(新的foo.x)居然与原来的属性(旧的foo.x)重名,所以,原来的foo.x就被“遮盖了”,只能访问到新的foo.x,它的值是8. >>> foo.x 8 @@ -39,7 +250,7 @@ >>> foo.x 7 -既然新的foo.x“遮盖”了旧的foo.x,如果删除它,旧的不久显现出来了?的确是。删除之后,foo.x就还是原来的值。此外,还可以通过建立一个不与它重名的实例属性: +既然新的foo.x“遮盖”了旧的foo.x,如果删除它,旧的不就显现出来了?的确是。删除之后,foo.x就还是原来的值。此外,还可以通过建立一个不与它重名的实例属性: >>> foo.y = foo.x + 1 >>> foo.y @@ -47,9 +258,9 @@ >>> foo.x 7 -foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo.x。 +foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo.x。其实,在这里你也完全可以依照变量和对象的关系来理解上述实例属性和数值(对象)的关系。 -但是,类属性能够影响实例属性,这点应该好理解,因为实例就是通过实例化调用类的。 +但是,类属性能够影响实例属性,这是因为实例就是通过调用类来建立的。 >>> A.x += 1 >>> A.x @@ -57,13 +268,14 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo >>> foo.x 8 -这时候实例属性跟着类属性而改变。 +如果是同一个属性`x`,实例属性跟着类属性而改变。 -以上所言,是指当类中变量引用的是不可变数据。如果类中变量引用可变数据,情形会有所不同。因为可变数据能够进行原地修改。 +以上所言,是指当类中变量引用的是不可变数据。 + +如果类中变量引用可变数据,情形会有所不同。因为可变数据能够进行原地修改。 >>> class B(object): ... y = [1,2,3] - ... 这次定义的类中,变量引用的是一个可变对象。 @@ -87,19 +299,13 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo 从上面的比较操作中可以看出,当类中变量引用的是可变对象是,类属性和实例属性都能直接修改这个对象,从而影响另一方的值。 -对于类属性和实例属性,除了上述不同之外,在下面的操作中,也会有差异。 - - >>> foo = A() - >>> dir(foo) - ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'x'] - -实例化类A,可以查看其所具有的属性(看最后一项,x),当然,执行`dir(A)`也是一样的。 +如果增加一个类属性,相应的也增加了一个实例属性, >>> A.y = "hello" >>> foo.y 'hello' -增加一个类属性,同时在实例属性中也增加了一样的名称和数据的属性。如果增加通过实例增加属性呢?看下面: +反过来,如果增加通过实例增加属性呢?看下面: >>> foo.z = "python" >>> foo.z @@ -109,20 +315,73 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo File "<stdin>", line 1, in <module> AttributeError: type object 'A' has no attribute 'z' -类并没有收纳这个属性。这进一步说明,类属性不受实例属性左右。另外,在类确定或者实例化之后,也可以增加和修改属性,其方法就是通过类或者实例的点号操作来实现,即`object.attribute`,可以实现对属性的修改和增加。 +类并没有收纳这个属性。 -##数据流转 +以上所显示的实例属性或者类属性,都源自于类中的变量所引用的值,或者说是静态数据,尽管能够通过类或者实例增加新的属性,其值也是静态的。 + +还有一类实例属性的生成方法,就是在实例创建的时候,通过`__init__()`初始化函数建立,这种建立则是动态。 -在类的应用中,最广泛的是将类实例化,通过实例来执行各种方法。所以,对此过程中的数据流转一定要弄明白。 +##`self`的作用 -回顾上节已经建立的那个类,做适当修改,并请出"canglaoshi"。但是,我将注释删除,读者是否能够写上必要的注释呢?如果你把注释写上,就已经理解了类的基本结构。 +类里面的任何方法,第一个参数是self,但是在实例化的时候,似乎没有这个参数什么事儿(不显示地写出来),那么self是干什么的呢? + +self是一个很神奇的参数。 + +将前文的`Person`类简化一下, #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type + class Person(object): #Python 3: class Person: + def __init__(self, name): + self.name = name + print self #Python 3: print(self) + print type(self) #Python 3: print(type(self)) - class Person: +其它部分省略。 + +当创建实例时候,首先要执行构造函数,同时就打印新增的两条。结果是: + + >>> girl = Person("canglaoshi") + <__main__.Person object at 0x0000000003146C50> + <class '__main__.Person'> + +这说明`self`就是实例,在看看刚刚建立的那个实例。 + + >>> girl + <__main__.Person object at 0x0000000003146C50> + >>> type(girl) + <class '__main__.Person'> + +`self`和`girl`所引用的实例对象一样。 + +当创建实例的时候,实例变量作为第一个参数,被Python解释器悄悄地传给了`self`,所以我们说在初始化函数中的`self.name`就是实例的属性。 + +注意,`self.name`中的name和初始化函数的参数`name`没有任何关系,它们两个一样,只不过是一种起巧合(经常巧合,其实是为了省事和以后识别方便,故意让它们巧合。),或者说是写代码的人懒惰,不想另外取名字而已,无他。当然,如果写成`self.xxxooo = name`,也是可以的。 + + >>> girl.name + 'canglaoshi' + +所以,我们得到实例属性,但是,在类的外面不能这样用: + + >>> self.name + Traceback (most recent call last): + File "<pyshell#23>", line 1, in <module> + self.name + NameError: name 'self' is not defined + +##数据流转 + +只有将类实例化,通过实例来执行各种方法,应用实例的属性,才是最常见的现象。 + +所以,对此过程中的数据流转一定要弄明白。 + +把前文的类再稍微修改,如下: + + #!/usr/bin/env python + # coding=utf-8 + + class Person(object): #Python 3: class Person: def __init__(self, name): self.name = name @@ -133,10 +392,10 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo self.breast = n def color(self, color): - print "%s is %s" % (self.name, color) + print "%s is %s" % (self.name, color) #Python 3: print("{0} is {1}".format(self.name, color)) def how(self): - print "%s breast is %s" % (self.name, self.breast) + print "%s breast is %s" % (self.name, self.breast) #Python 3: print("{0} breast is {1}".format(self.name, self.breast)) girl = Person('canglaoshi') girl.breast(90) @@ -154,20 +413,20 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo ![](./2images/20801.png) -创建实例`girl = Person('canglaoshi')`,注意观察图上的箭头方向。girl这个实例和Person类中的self对应,这正是应了上节所概括的“实例变量与self对应,实例变量主外,self主内”的概括。"canglaoshi"是一个具体的数据,通过初始化函数中的name参数,传给self.name,前面已经讲过,self也是一个实例,可以为它设置属性,`self.name`就是一个属性,经过初始化函数,这个属性的值由参数name传入,现在就是"canglaoshi"。 +创建实例`girl = Person('canglaoshi')`,注意观察图上的箭头方向。`girl`这个引用实例的变量传给了和类中的`self`,简单理解为:实例变量与self对应,实例变量主外,self主内。 -在类Person的其它方法中,都是以self为第一个或者唯一一个参数。注意,在python中,这个参数要显明写上,在类内部是不能省略的。这就表示所有方法都承接self实例对象,它的属性也被带到每个方法之中。例如在方法里面使用`self.name`即是调用前面已经确定的实例属性数据。当然,在方法中,还可以继续为实例self增加属性,比如`self.breast`。这样,通过self实例,就实现了数据在类内部的流转。 +`"canglaoshi"`是一个具体的数据,通过初始化函数中的`name`参数,传给`self.name`,前面已经讲过,`self`也是一个实例,可以为它设置属性,`self.name`就是一个属性,经过初始化函数,这个属性的值由参数`name`传入,现在就是`"canglaoshi"`。 + +在类`Person`的其它方法中,都是以`self`为第一个或者唯一一个参数。注意,在Python中,这个参数要显明写上,在类内部是不能省略的。这就表示所有方法都承接`self`实例对象,它的属性也被带到每个方法之中。例如在方法里面使用`self.name`即是调用前面已经确定的实例属性数据。当然,在方法中,还可以继续为实例`self`增加属性,比如`self.breast`。这样,通过`self`实例,就实现了数据在类内部的流转。 如果要把数据从类里面传到外面,可以通过`return`语句实现。如上例子中所示的`getName`方法。 -因为实例名称(girl)和self是对应关系,实际上,在类里面也可以用girl代替self。例如,做如下修改: +因为引用实例的变量`girl`和`self`是对应的,实际上,在类里面也可以用`girl`代替`self`。例如,做如下修改: #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type - - class Person: + class Person(object): #Python 3: class Person: def __init__(self, name): self.name = name @@ -183,108 +442,7 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo canglaoshi -这个例子说明,在实例化之后,实例变量girl和函数里面的那个self实例是完全对应的。但是,提醒读者,千万不要用上面的修改了的那个方式。因为那样写使类没有独立性,这是大忌。 - -##命名空间 - -命名空间,英文名字:namespaces。在研究类或者面向对象编程中,它常常被提到。虽然在[《函数(2)](./202.md)中已经对命名空间进行了解释,那时是在函数的知识范畴中对命名空间的理解。现在,我们在类的知识范畴中理解“类命名空间”——定义类时,所有位于class语句中的代码都在某个命名空间中执行,即类命名空间。 - -在研习命名空间以前,请打开在python的交互模式下,输入:`import this`,可以看到: - - >>> import this - The Zen of Python, by Tim Peters - - Beautiful is better than ugly. - Explicit is better than implicit. - Simple is better than complex. - Complex is better than complicated. - Flat is better than nested. - Sparse is better than dense. - Readability counts. - Special cases aren't special enough to break the rules. - Although practicality beats purity. - Errors should never pass silently. - Unless explicitly silenced. - In the face of ambiguity, refuse the temptation to guess. - There should be one-- and preferably only one --obvious way to do it. - Although that way may not be obvious at first unless you're Dutch. - Now is better than never. - Although never is often better than *right* now. - If the implementation is hard to explain, it's a bad idea. - If the implementation is easy to explain, it may be a good idea. - Namespaces are one honking great idea -- let's do more of those! - -这里列位看到的就是所谓《python之禅》,请看最后一句: Namespaces are one honking great idea -- let's do more of those! - -这是为了向看官说明Namespaces、命名空间值重要性。 - -把在[《函数(2)》](https://github.com/qiwsir/StarterLearningPython/blob/master/202.md)中已经阐述的命名空间用一句比较学术化的语言概括: - -**命名空间是从所定义的命名到对象的映射集合。** - -不同的命名空间,可以同时存在,当彼此相互独立互不干扰。 - -命名空间因为对象的不同,也有所区别,可以分为如下几种: - -- 内置命名空间(Built-in Namespaces):Python运行起来,它们就存在了。内置函数的命名空间都属于内置命名空间,所以,我们可以在任何程序中直接运行它们,比如前面的id(),不需要做什么操作,拿过来就直接使用了。 -- 全局命名空间(Module:Global Namespaces):每个模块创建它自己所拥有的全局命名空间,不同模块的全局命名空间彼此独立,不同模块中相同名称的命名空间,也会因为模块的不同而不相互干扰。 -- 本地命名空间(Function&Class: Local Namespaces):模块中有函数或者类,每个函数或者类所定义的命名空间就是本地命名空间。如果函数返回了结果或者抛出异常,则本地命名空间也结束了。 - -从网上盗取了一张图,展示一下上述三种命名空间的关系 - -![](./2images/20803.png) - -那么程序在查询上述三种命名空间的时候,就按照从里到外的顺序,即:Local Namespaces --> Global Namesspaces --> Built-in Namesspaces - - >>> def foo(num,str): - ... name = "qiwsir" - ... print locals() - ... - >>> foo(221,"qiwsir.github.io") - {'num': 221, 'name': 'qiwsir', 'str': 'qiwsir.github.io'} - >>> - -这是一个访问本地命名空间的方法,用`print locals()` 完成,从这个结果中不难看出,所谓的命名空间中的数据存储结构和dictionary是一样的。 - -根据习惯,看官估计已经猜测到了,如果访问全局命名空间,可以使用 `print globals()`。 - -##作用域 - -作用域是指 Python 程序可以直接访问到的命名空间。“直接访问”在这里意味着访问命名空间中的命名时无需加入附加的修饰符。(这句话是从网上抄来的) - -程序也是按照搜索命名空间的顺序,搜索相应空间的能够访问到的作用域。 - - def outer_foo(): - b = 20 - def inner_foo(): - c = 30 - a = 10 - -假如我现在位于inner_foo()函数内,那么c对我来讲就在本地作用域,而b和a就不是。如果我在inner_foo()内再做:b=50,这其实是在本地命名空间内新创建了对象,和上一层中的b=20毫不相干。可以看下面的例子: - - #!/usr/bin/env python - #coding:utf-8 - - def outer_foo(): - a = 10 - def inner_foo(): - a = 20 - print "inner_foo,a=",a #a=20 - - inner_foo() - print "outer_foo,a=",a #a=10 - - a = 30 - outer_foo() - print "a=",a #a=30 - - #运行结果 - - inner_foo,a= 20 - outer_foo,a= 10 - a= 30 - -如果要将某个变量在任何地方都使用,且能够关联,那么在函数内就使用global 声明,其实就是曾经讲过的全局变量。 +这个例子说明,在实例化之后,实例变量`girl`传给个`self`。但是,提醒读者,千万不要用上面的修改了的那个方式。因为那样写使类没有独立性,这是大忌。 ------ diff --git a/2code/20801p3.py b/2code/20801p3.py new file mode 100644 index 0000000..638857e --- /dev/null +++ b/2code/20801p3.py @@ -0,0 +1,7 @@ + +class Foo: + def __init__(self): + print("I am in init()") + return None + +bar = Foo() diff --git a/README.md b/README.md index 3f655cd..988c48d 100644 --- a/README.md +++ b/README.md @@ -69,8 +69,8 @@ ##第肆章 类 1. [类(1)](./206.md)==>类的初步认识和基本概念理解:问题空间、对象、面向对象、类和实例化类 -2. [类(2)](./207.md)==>新式类和旧式类,类的命名,构造函数,实例化及方法和属性,self的作用 -3. [类(3)](./208.md)==>类属性和实例属性,类内外数据流转,命名空间、作用域 +2. [类(2)](./207.md)==>新式类和旧式类,初步创建类和实例化 +3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./209.md)==>继承,多重继承,super函数 5. [类(5)](./210.md)==>静态方法和类方法,两者的区别,类的文档 6. [多态和封装](./211.md)==>多态,封装和私有化 diff --git a/index.md b/index.md index ba6bdc7..5eec086 100644 --- a/index.md +++ b/index.md @@ -70,7 +70,7 @@ 1. [类(1)](./206.md)==>类的初步认识和基本概念理解:问题空间、对象、面向对象、类和实例化类 2. [类(2)](./207.md)==>新式类和旧式类,类的命名,构造函数,实例化及方法和属性,self的作用 -3. [类(3)](./208.md)==>类属性和实例属性,类内外数据流转,命名空间、作用域 +3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./209.md)==>继承,多重继承,super函数 5. [类(5)](./210.md)==>静态方法和类方法,两者的区别,类的文档 6. [多态和封装](./211.md)==>多态,封装和私有化 From 48f85f486393acae03f3a44a09b0151ebe4a64f6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Thu, 14 Apr 2016 23:28:32 +0800 Subject: [PATCH 144/288] p3 --- 208.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/208.md b/208.md index 7edc9bb..e49c3f7 100644 --- a/208.md +++ b/208.md @@ -30,7 +30,7 @@ 在真实世界中,breast就是Girl的属性,你到某度上去搜索一下有关的关键词,就发现breast是一个重要属性了。所以,如果要建立类`Girl`,它必须有`breast`属性。那么这个属性的值,就关系到某类Girl的颜值了。这里的类`Girl`都是`breast`为90的,也就是所有符合此类的girl,其breast都是90。你可以想象其颜值高低了,是否符合你的喜好。 -大招一处,为止一振,顿时困意消退。下面就请回到前面那个类`A`,继续枯燥地学习。 +大招一出,为之一振,顿时困意消退。下面就请回到前面那个类`A`,继续枯燥地学习。 如果要调用类的某个属性——简称:类属性——其方法就是用半角的英文句号`.`,如前面所演示的`A.x`。类属性仅与其所定义的类绑定,并且这种属性,本质上说就是类中的变量,它的值不依赖于任何实例,只是由类中所写的变量赋值语句确定,比如`Girl`类,不管你用这个类建立的实例是东施还是西施,类属性`Girl.breast`都是90。所以,这个类属性还有别的名字,如静态变量或者静态数据。 From ab89420249e340b0199cc0ee2d709bdcf53bc353 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 18 Apr 2016 21:04:41 +0800 Subject: [PATCH 145/288] p3 --- 208.md | 2 +- 238.md | 272 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 17 ++-- index.md | 17 ++-- 4 files changed, 291 insertions(+), 17 deletions(-) create mode 100644 238.md diff --git a/208.md b/208.md index e49c3f7..707558f 100644 --- a/208.md +++ b/208.md @@ -446,6 +446,6 @@ self是一个很神奇的参数。 ------ -[总目录](./index.md)   |   [上节:类(2)](./207.md)   |   [下节:类(4)](./209.md) +[总目录](./index.md)   |   [上节:类(2)](./207.md)   |   [下节:类(4)](./238.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/238.md b/238.md new file mode 100644 index 0000000..bbc7c41 --- /dev/null +++ b/238.md @@ -0,0 +1,272 @@ +>爱人不可虚假,恶要厌恶,善要亲近。爱弟兄,要彼此亲热;恭敬人,要彼此推让。殷勤不可懒惰。要心里火热,常常服侍主。在指望中要有喜乐,在患难中要有忍耐,祷告要恒切。圣徒缺乏要帮补,客要一味地款待。逼迫你们的,要给他们祝福,只要祝福,不可诅咒。与喜乐的人要同乐,与哀哭的人要同哭。要彼此同心,不要志气高大,倒要俯就卑微的人。不要自以为聪明。不要以恶报恶。众人以为美的事,要留心去作。(ROMANS 12:9-17) + +#类(4) + +##方法 + +在类里面,除了属性,就是方法,当然还有注释和文档,但这些是计算机不看的,只是给人看的。 + +关于方法,在通常情况下用实例调用。但是,跟方法有关的一些深入的话题,还需要辨析。 + +###绑定方法和非绑定方法 + +除了特殊方法,类中的其它的普通方法,是经常要用到的,所以,要对这些普通方法进行研究。 + + >>> class Foo: #Python 2: class Foo(object): + def bar(self): + print("This is a normal method of class.") #Python 2 使用print 语句 + + + >>> f = Foo() + >>> f.bar() + This is a normal method of class. + +在类`Foo`中,方法`bar()`本质上是一个函数,只不过这个函数的第一个参数必须是`self`——在类中给它另外一个名字,叫“方法”——跟函数相比,没有本质的不同。 + +当建立了实例之后,用实例开调用这个方法的时候,因为Python解释器把实例已经作为第一参数隐式地传给了该方法,所以就不需要显示地写出`self`参数了——这个观点反复强调,就是让读者理解`self`就是实例。 + +如果要把实例显示地传给方法,可以用下面的方式进行, + + >>> Foo.bar(f) + This is a normal method of class. + +用这种方式,跟证实了前述观点,即实例化之后,`self`和实例`f`是相同的。通常,我们在类里面使用`self`,类外面使用`f`这个实例,两者有分工。 + +如果在用类调用方法的时候,不传实例,会怎样? + + >>> Foo.bar() + +这样执行,不同的Python版本,报错信息有所不同。 + +Python 2的报错信息是: + + Traceback (most recent call last): + File "<pyshell#7>", line 1, in <module> + Foo.bar() + TypeError: unbound method bar() must be called with Foo instance as first argument (got nothing instead) + +而Python 3下报错信息变成了: + + Traceback (most recent call last): + File "<pyshell#7>", line 1, in <module> + Foo.bar() + TypeError: bar() missing 1 required positional argument: 'self' + +不管你是用什么版本,最好都阅读上述两个报错信息。在Python 2的报错信息中,告诉我们`barr()`是非绑定方法,它必须以`Foo`的实例作为第一个参数;Python 3的报错信息也是告诉我们`bar()`缺少一个必须的参数`self`,它也是一个实例。所以,不管哪个版本,都要传一个实例。 + +Python中一切皆对象——又是老生常谈,都是因为此观念之重要。类`Foo`的方法`bar()`也是对象——函数对象,那么,我们就可以像这样来获得该对象了。 + + >>> Foo.bar + <unbound method Foo.bar> #Python 3的显示结果:<function Foo.bar at 0x00000000006AAC80> + +在Python 2的结果中,可以很清晰看出,通过类调用的方法对象,是一个非绑定方法——unbound method,又遇到这个词语了。 + +此外,还可以通过实例来得到该对象。 + + >>> f.bar + <bound method Foo.bar of <__main__.Foo object at 0x02A9BFB0>> + +用实例来得到这个方法对象,不管是Python 2还是Python 3,结果是一样的。在这里我们看到的是bound method——绑定方法。 + +下面就要逼近unbound method和bound method的概念本质了。 + +在类`Foo`的属性中,有一个`__dict__`的特殊属性,前文已经介绍过了。我们使用它,来窥探内部信息。 + + >>> Foo.__dict__['bar'] + <function bar at 0x02AA98F0> #Python 3显示结果:<function Foo.bar at 0x00000000006AAC80> + +从这个层面进一步说明`bar`是一个函数对象。 + +这个似乎是已经熟悉的了。 + +下面我们再看一个新的东西——描述器。 + +什么是描述器? + +Python中有几个特殊方法比较特殊,它们分别是`__get__()`、`__set__()`和`__delete__()`,简单地说,有这些方法的对象叫做描述器。 + +描述器是属性、实例方法、静态方法、类方法和继承中使用的`super`的背后实现机制,它在Python中使用广泛。这句话中的那些生疏的名词,以后都会用到,稍安勿躁。 + +如何使用? + +上述三个特殊方法,可以用下面的方式来使用——所谓的描述器协议。 + + descr.__get__(self, obj, type=None) --> value + + descr.__set__(self, obj, value) --> None + + descr.__delete__(self, obj) --> None + +关于描述器的内容,本节不重点阐述,这里提及它,目的是要解决“绑定方法”和“非绑定方法”的问题,所以,读者如果有兴趣深入了解描述器,可以去google。 + +弱水三千,只取一瓢。我们在这里也只看`__get__()`。 + + >>> Foo.__dict__['bar'].__get__(None, Foo) + <unbound method Foo.bar> #Python 3显示结果:<function Foo.bar at 0x00000000006AAC80> + +对照描述器协议,我将`self`赋以了`None`,其返回结果和`Foo.bar`的返回结果是一样的。让`self`为`None`的意思就是没有给定的实例,因此该方法被认为非绑定方法(unbound method)。 + +如果给定一个实例呢? + + >>> Foo.__dict__['bar'].__get__(f, Foo) + <bound method Foo.bar of <__main__.Foo object at 0x02A9BFB0>> + +这时候的显示结果和`f.bar`是相同的。 + +综上所述,可以认为: + +- 当通过类来获取方法的时候,得到的是非绑定方法对象。 +- 当通过实例获取方法的时候,得到的是绑定方法对象。 + +所以,通常用实例调用的方法,都是绑定方法。那么非绑定方法在哪里会用到呢?当学习“继承”相关内容的时候,它会再次登场。 + +###静态方法和类方法 + +先看下面的代码 + + #!/usr/bin/env python + #coding:utf-8 + + class Foo(object): + one = 0 + + def __init__(self): + Foo.one = Foo.one + 1 + + def get_class_attr(cls): + return cls.one + + if __name__ == "__main__": + f1 = Foo() + print "f1:",Foo.one #Python 3: print("f1:"+str(Foo.one)),下同,从略 + f2 = Foo() + print "f2:",Foo.one + + print get_class_attr(Foo) + +在上述代码中,有一个函数`get_class_attr()`,这个函数的参数我用`cls`,从函数体的代码中看,要求它引用的对象应该具有属性`one`,这就说明,不是随便一个对象就可以的。恰好,就是这么巧,我在前面定义的类`Foo`中,就有`one`这个属性。于是乎,我在调用这个函数的时候,就直接将该类对象传给了它`get_class_attr(Foo)`。 + +其运行结果如下: + + f1: 1 + f2: 2 + 2 + +在这个程序中,函数`get_class_attr()`写在了类的外面,但事实上,函数只能调用前面写的那个类对象,因为不是所有对象都有那个特别的属性的。所以,这种写法,使得类和函数的耦合性太强了,不便于以后维护。这种写法是应该避免的。避免的方法就是把函数与类融为一体。于是就有了下面的写法。 + + #!/usr/bin/env python + #coding:utf-8 + + class Foo(object): + one = 0 + + def __init__(self): + Foo.one = Foo.one + 1 + + @classmethod + def get_class_attr(cls): + return cls.one + + if __name__ == "__main__": + f1 = Foo() + print "f1:",Foo.one + f2 = Foo() + print "f2:",Foo.one + + print f1.get_class_attr() + print "f1.one",f1.one + print Foo.get_class_attr() + + print "*"* 10 + f1.one = 8 + Foo.one = 9 + print f1.one + print f1.get_class_attr() + print Foo.get_class_attr() + +在这个程序中,出现了`@classmethod`——装饰器——在函数那部分遇到过了。需要注意的是`@classmethod`所装饰的方法的参数中,第一个参数不是`self`,这是和我们以前看到的类中的方法是有区别的。这里我使用了参数`cls`,你用别的也可以,只不过习惯用`cls`。 + +再看对类的使用过程。先贴出上述程序的执行结果: + + f1: 1 + f2: 2 + 2 + f1.one 2 + 2 + ********** + 8 + 9 + 9 + +分别建立两个实例,此后类属性`Foo.one`的值是2,然后分别通过实例和类来调用`get_class_attr()`方法(没有显示写`cls` 参数),结果都相同。 + +当修改类属性和实例属性,再次通过实例和类调用`get_class_attr()`方法,得到的依然是类属性的结果。这说明,装饰器`@classmethod`所装饰的方法,其参数`cls`引用的对象是类对象`Foo`。 + +至此,可以下一个定义了。 + +所谓类方法,就是在类里面定义的方法,该方法由装饰器`@classmethod`所装饰,其第一个参数`cls`所引用的是这个类对象,即将类本身作为引用对象传入到此方法中。 + +理解了类方法之后,用同样的套路理解另外一个方法——静态方法。还是先看代码——一个有待优化的代码。 + + #!/usr/bin/env python + #coding:utf-8 + + T = 1 + + def check_t(): + T = 3 + return T + + class Foo(object): + def __init__(self,name): + self.name = name + + def get_name(self): + if check_t(): + return self.name + else: + return "no person" + + if __name__ == "__main__": + f = Foo("canglaoshi") + name = f.get_name() + print name #Python 3: print(name) + +先观察上面的程序,发现在类`Foo`里面使用了外面定义的函数`check_t()`。这种类和函数的关系,也是由于有密切关系,从而导致程序维护有困难,于是在和前面同样的理由之下,就出现了下面比较便于维护的程序。 + + #!/usr/bin/env python + #coding:utf-8 + + T = 1 + + class Foo(object): + def __init__(self,name): + self.name = name + + @staticmethod + def check_t(): + T = 1 + return T + + def get_name(self): + if self.check_t(): + return self.name + else: + return "no person" + + if __name__ == "__main__": + f = Foo("canglaoshi") + name = f.get_name() + print name #Python 3: print(name) + +经过优化,将原来放在类外面的函数,移动到了类里面,也就是函数`check_t()`现在位于类`Foo`的命名空间之内了。但是,不是简单的移动,还要在这个函数的前面加上`@staticmethod`装饰器,并且要注意的是,虽然这个函数位于类的里面,跟其它的方法不同,它不以`self`为第一个参数。当使用它的时候,可以通过实例调用,比如`self.check_t()`;也可以通过类调用这个方法,比如`Foo.check_t()`。 + +从上面的程序可以看出,尽管`check_t()`位于类的命名空间之内,它却是一个独立的方法,跟类没有什么关系,仅仅是为了免除前面所说的维护上的困难,写在类的作用域内的普通函数罢了。但,它的存在也是有道理的,以上的例子就是典型说明。当然,在类的作用域里面的时候,前面必须要加上一个装饰器`@staticmethod`。我们将这种方法也给予命名,称之为静态方法。 + +方法,是类的重要组成部分。本节专门讲述了方法中的几种特殊方法,它们为我们使用类的方法提供了更多便利的工具。但是,类的重要特征之一——继承,还没有亮相。 + +------ + +[总目录](./index.md)   |   [上节:类(3)](./208.md)   |   [下节:类(5)](./209.md) + +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/README.md b/README.md index 988c48d..497ac70 100644 --- a/README.md +++ b/README.md @@ -71,14 +71,15 @@ 1. [类(1)](./206.md)==>类的初步认识和基本概念理解:问题空间、对象、面向对象、类和实例化类 2. [类(2)](./207.md)==>新式类和旧式类,初步创建类和实例化 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 -4. [类(4)](./209.md)==>继承,多重继承,super函数 -5. [类(5)](./210.md)==>静态方法和类方法,两者的区别,类的文档 -6. [多态和封装](./211.md)==>多态,封装和私有化 -7. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` -8. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 -9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` -10. [生成器](./215.md)==>生成器定义,yield,生成器方法 -11. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 +4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 +5. [类(5)](./209.md)==>继承,多重继承,super函数 +6. [类(6)](./210.md)==>静态方法和类方法,两者的区别,类的文档 +7. [多态和封装](./211.md)==>多态,封装和私有化 +8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` +9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 +10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` +11. [生成器](./215.md)==>生成器定义,yield,生成器方法 +12. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 ##第伍章 错误和异常 diff --git a/index.md b/index.md index 5eec086..6d4fab1 100644 --- a/index.md +++ b/index.md @@ -71,14 +71,15 @@ 1. [类(1)](./206.md)==>类的初步认识和基本概念理解:问题空间、对象、面向对象、类和实例化类 2. [类(2)](./207.md)==>新式类和旧式类,类的命名,构造函数,实例化及方法和属性,self的作用 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 -4. [类(4)](./209.md)==>继承,多重继承,super函数 -5. [类(5)](./210.md)==>静态方法和类方法,两者的区别,类的文档 -6. [多态和封装](./211.md)==>多态,封装和私有化 -7. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` -8. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 -9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` -10. [生成器](./215.md)==>生成器定义,yield,生成器方法 -11. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 +4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 +5. [类(5)](./209.md)==>继承,多重继承,super函数 +6. [类(6)](./210.md)==>静态方法和类方法,两者的区别,类的文档 +7. [多态和封装](./211.md)==>多态,封装和私有化 +8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` +9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 +10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` +11. [生成器](./215.md)==>生成器定义,yield,生成器方法 +12. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 ##第伍章 错误和异常 From c707a61433f7bef5cd5ffbe095a1d9e044c1dc6f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 18 Apr 2016 21:11:39 +0800 Subject: [PATCH 146/288] p3 --- 238.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/238.md b/238.md index bbc7c41..c9a3046 100644 --- a/238.md +++ b/238.md @@ -13,8 +13,8 @@ 除了特殊方法,类中的其它的普通方法,是经常要用到的,所以,要对这些普通方法进行研究。 >>> class Foo: #Python 2: class Foo(object): - def bar(self): - print("This is a normal method of class.") #Python 2 使用print 语句 + def bar(self): + print("This is a normal method of class.") #Python 2 使用print 语句 >>> f = Foo() From e42acf78983d8ecac9930503d6458b310d6d7fd3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 18 Apr 2016 21:38:34 +0800 Subject: [PATCH 147/288] p3 --- 203.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/203.md b/203.md index 8c221cc..f42f161 100644 --- a/203.md +++ b/203.md @@ -151,7 +151,7 @@ 这是使用一个星号`*`,是以元组形式传值,如果用`**`的方式,是不是应该以字典的形式呢?理当如此。 >>> def book(author, name): - ... print "{0}}is writing {1}".format (author,name) #Python 3: print("{0}}is writing {1}".format (author,name)) + ... print "{0}is writing {1}".format (author,name) #Python 3: print("{0}}is writing {1}".format (author,name)) ... >>> bars = {"name":"Starter learning Python", "author":"Kivi"} >>> book(**bars) From 5ce3a4e2f509c1a340c216edd7d824297c2f5f1b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 18 Apr 2016 21:40:43 +0800 Subject: [PATCH 148/288] p3 --- 211.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/211.md b/211.md index f682ccb..05aa3ee 100644 --- a/211.md +++ b/211.md @@ -19,7 +19,7 @@ >>> f = lambda x,y:x+y -还记得这个lambda函数吗?如果忘记了,请复习[函数(4)](https://github.com/qiwsir/StarterLearningPython/blob/master/204.md)中对此的解释。 +还记得这个lambda函数吗?如果忘记了,请复习[函数(5)](./237.md)中对此的解释。 >>> f(2,3) 5 From 2c03aa96e7d47708d4813bde6c9fb7d85d4691ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 18 Apr 2016 22:55:04 +0800 Subject: [PATCH 149/288] p3 --- 201.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/201.md b/201.md index 61a6883..86a9aee 100644 --- a/201.md +++ b/201.md @@ -211,7 +211,7 @@ Python也很在乎名字问题,其实,所有高级语言对名字都有要 - 文件名:全小写,可使用下划线 -- 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。*注意*:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。有的人,喜欢用这样的命名风格:myFunction,除了第一个单词首字母外,后面的单词首字母大写。这也是可以的,因为在某些语言中就习惯如此。但我不提倡,这是我非常显明的观点。 +- 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。*注意*:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。有的人,喜欢用这样的命名风格:myFunction,除了第一个单词首字母外,后面的单词首字母大写。这也是可以的,因为在某些语言中就习惯如此。但我不提倡,这是我非常鲜明的观点。 - 函数的参数:命名方式同变量(本质上就是变量)。如果一个参数名称和Python保留的关键字冲突,通常使用一个后缀下划线会好于使用缩写或奇怪的拼写。 @@ -343,7 +343,7 @@ Python 3: 下面的若干条,是常见编写代码的注意事项: -1. 别忘了冒号。一定要记住符合语句首行末尾输入“:”(if,while,for等的第一行) +1. 别忘了冒号。一定要记住复合语句首行末尾输入“:”(if,while,for等的第一行) 2. 从第一行开始。要确定顶层(无嵌套)程序代码从第一行开始。 3. 空白行在交互模式提示符下很重要。模块文件中符合语句内的空白行常被忽视。但是,当你在交互模式提示符下输入代码时,空白行则是会结束语句。 4. 缩进要一致。避免在块缩进中混合制表符和空格。 From 6ba24b9f5c957c173ce2ac695ec748e18a080477 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 19 Apr 2016 16:49:47 +0800 Subject: [PATCH 150/288] p3 --- 209.md | 316 ++++++++++++++++++++++++++++++++--------------- 2code/20905.py | 30 +++++ 2code/20905p3.py | 28 +++++ README.md | 2 +- index.md | 2 +- 5 files changed, 274 insertions(+), 104 deletions(-) create mode 100644 2code/20905.py create mode 100644 2code/20905p3.py diff --git a/209.md b/209.md index 8c6e32c..41c9008 100644 --- a/209.md +++ b/209.md @@ -1,13 +1,19 @@ >你们仍是属肉体的,因为在你们中间有嫉妒分争,这岂不是属乎肉体,照着世人的样子行吗?...我栽种了,亚波罗浇灌了,惟有神叫他生长。(1 CORINTHIANS 3:3,6) -#类(4) +#类(5) -本节介绍类中一个非常重要的东西——继承,其实也没有那么重要,只是听起来似乎有点让初学者晕头转向,然后就感觉它属于很高级的东西,真是情况如何?学了之后你自然有感受。 +##继承 -在现实生活中,“继承”意味着一个人从另外一个人那里得到了一些什么,比如“继承革命先烈的光荣传统”、“某人继承他老爹的万贯家产”等。总之,“继承”之后,自己就在所继承的方面省力气、不用劳神费心,能轻松得到,比如继承了万贯家产,自己就一夜之间变成富豪。如果继承了“革命先烈的光荣传统”,自己是不是一下就变成革命者呢? +继承——OOP的三个特征:多态、继承、封装——是类的重要内容。 + +继承,也是人的贪欲。 + +在现实生活中,“继承”意味着一个人从另外一个人那里得到了一些什么,“继承”之后,自己就在所继承的方面省力气、不用劳神费心,能轻松得到。比如继承了万贯家产,就一夜之间变成富n代;如果继承了“革命先烈的光荣传统”,就红色? 当然,生活中的继承或许不那么严格,但是编程语言中的继承是有明确规定和稳定的预期结果的。 +###概念 + >继承(Inheritance)是面向对象软 件技术当中的一个概念。如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A的父类别”,也可以称“B是A的超类”。 >继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。另外,为子类别追加新的属性和方法也是常见的做法。 (源自维基百科) @@ -17,7 +23,7 @@ - 可以实现代码重用,但不是仅仅实现代码重用,有时候根本就没有重用 - 实现属性和方法继承 -诚然,以上也不是全部,随着后续学习,对继承的认识会更深刻。好友令狐虫曾经这样总结继承: +诚然,以上也不是全部,随着后续学习,对继承的认识会更深刻,例如网友令狐虫持有这样的观点: >从技术上说,OOP里,继承最主要的用途是实现多态。对于多态而言,重要的是接口继承性,属性和行为是否存在继承性,这是不一定的。事实上,大量工程实践表明,重度的行为继承会导致系统过度复杂和臃肿,反而会降低灵活性。因此现在比较提倡的是基于接口的轻度继承理念。这种模型里因为父类(接口类)完全没有代码,因此根本谈不上什么代码复用了。 @@ -29,153 +35,164 @@ 或许你也要问我的观点是什么?我的观点就是:走着瞧!怎么理解?继续向下看,只有你先深入这个问题,才能跳到更高层看这个问题。小马过河的故事还记得吧?只有亲自走入河水中,才知道河水的深浅。 -对于python中的继承,前面一直在使用,那就是我们写的类都是新式类,所有新式类都是继承自object类。不要忘记,新式类的一种写法: +在Python 2 中,我们这样定义新式类: class NewStyle(object): pass -这就是典型的继承。 +这就是典型的继承。这个类继承了`object`,`object`是所有类的父类。这种定义是从Python 2.2开始的,它解决了以往的类和类型的不统一的问题,自那以后,类就是一种数据类型了。 -##基本概念 +发展到Python 3,类的定义变为: - #!/usr/bin/env python - # coding=utf-8 + class NewStyle: + pass + +不再显示地写出`object`,是因为Python 3中的所有类,都隐式地继承了`object`。 - __metaclass__ = type +总而言之,`object`就是所有类的父类。 - class Person: - def speak(self): - print "I love you." +###单继承 - def setHeight(self): - print "The height is: 1.60m ." +这是只从一个父类那里继承。 - def breast(self, n): - print "My breast is: ",n + >>> class P(object): #Python 3: class P: + pass - class Girl(Person): - def setHeight(self): - print "The height is:1.70m ." + >>> class C(P): + pass - if __name__ == "__main__": - cang = Girl() - cang.setHeight() - cang.speak() - cang.breast(90) +寥寥数“键”,就实现了继承。 -上面这个程序,保存之后运行: - - $ python 20901.py - The height is:1.70m . - I love you. - My breast is: 90 - -对以上程序进行解释,从中体会继承的概念和方法。 +类`P`是一个通常的类,只不过在Python的两个版本中,定义样式稍微不同罢了。类`C`(注意字母大写)则是定义的一个子类,它用`C(P)`的形式继承了类`P`——称之为父类——虽然父类什么也没有。 -首先定义了一个类Person,在这个类中定义了三个方法。注意,没有定义初始化函数,初始化函数在类中不是必不可少的。 +子类`C`继承父类`P`的方式就是在类名称后面的括号里面写上父类的名字,不管是Python的哪个版本。既然继承了父类,那么父类的一切都带入到了子类,所以在Python 2中就没有必要重复写`object`了,它已经通过父类`P`被继承到子类`C`了;Python 3中,要显式的写上父类的名字,除了`object`,它不会隐式继承任何其它类。 -然后又定义了一个类Girl,这个类的名字后面的括号中,是上一个类的名字,这就意味着Girl继承了Person,Girl是Person的子类,Person是Girl的父类。 - -既然是继承了Person,那么Girl就全部拥有了Person中的方法和属性(上面的例子虽然没有列出属性)。但是,如果Girl里面有一个和Person同样名称的方法,那么就把Person中的同一个方法遮盖住了,显示的是Girl中的方法,这叫做方法的**重写**。 + >>> C.__base__ + <class '__main__.P'> + +还记得类的一个特殊属性吗?由`C.__base__`可以得到类的父类。刚才的操作,就显示出类`C`的父类是`P`。 -实例化类Girl之后,执行实例方法`cang.setHeight()`,由于在类Girl中重写了setHeight方法,那么Person中的那个方法就不显作用了,在这个实例方法中执行的是类Girl中的方法。 +为了深入理解“继承”的作用,让父类做一点点事情。 -虽然在类Girl中没有看到speak方法,但是因为它继承了Person,所以`cang.speak()`就执行类Person中的方法。同理`cang.breast(90)`,它们就好像是在类Girl里面已经写了这两个方法一样。既然继承了,就是我的了。 + >>> class P(object): #Python 3: class P: + def __init__(self): + print "I am a rich man." #Python 3: print("I am a rich man.") -##多重继承 + >>> class C(P): + pass + + >>> c = C() + I am a rich man. -所谓多重继承,就是指某一个类的父类,不止一个,而是多个。比如: +父类`P`中增加了初始化函数,然后子类`C`继承它。我们已经熟知,当建立实例的时候,首先要执行类中的初始化函数。因为子类`C`继承了父类,就把父类中的初始化函数拿到了子类里面,所以在`c = C()`的时候,执行了父类中定义的初始化函数——这就是继承,而且是从一个父类那里继承来的,所以也称之为单继承。 +看一个比较完成的程序示例。 + #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type - - class Person: - def eye(self): - print "two eyes" + class Person(object): #Python 3: class Person: + def __init__(self, name): + self.name = name + + def height(self, m): + h = dict((["height", m],)) + return h def breast(self, n): - print "The breast is: ",n - - class Girl: - age = 28 - def color(self): - print "The girl is white" + b = dict((["breast", n],)) + return b - class HotGirl(Person, Girl): - pass + class Girl(Person): + def get_name(self): + return self.name if __name__ == "__main__": - kong = HotGirl() - kong.eye() - kong.breast(90) - kong.color() - print kong.age + cang = Girl("canglaoshi") + print cang.get_name() #Python 3: print(cang.get_name()),下同,从略 + print cang.height(160) + print cang.breast(90) -在这个程序中,前面有两个类:Person和Girl,然后第三个类HotGirl继承了这两个类,注意观察继承方法,就是在类的名字后面的括号中把所继承的两个类的名字写上。但是第三个类中什么方法也没有。 +上面这个程序,保存之后运行: -然后实例化类HotGirl,既然继承了上面的两个类,那么那两个类的方法就都能够拿过来使用。保存程序,运行一下看看 + canglaoshi + {'height': 160} + {'breast': 90} - $ python 20902.py - two eyes - The breast is: 90 - The girl is white - 28 - -值得注意的是,这次在类Girl中,有一个`age = 28`,在对HotGirl实例化之后,因为继承的原因,这个类属性也被继承到HotGirl中,因此通过实例属性`kong.age`一样能够得到该数据。 +对以上程序进行解释: -由上述两个实例,已经清楚看到了继承的特点,即将父类的方法和属性全部承接到子类中;如果子类重写了父类的方法,就使用子类的该方法,父类的被遮盖。 +首先定义了一个类`Person`,把它作为父类。然后定义了一个子类`Girl`,继承了`Person`。 -##多重继承的顺序 +在子类`Girl`中,只写了一个方法`get_name()`,但是因为是继承了`Person`,那么`Girl`就全部拥有了`Person`中的方法和属性。子类`Girl`的方法`get_name()`中,使用了属性`self.name`,但是在类`Girl`中,并没有什么地方显示创建了这个属性,就是因为继承`Person`类,在父类中有初始化函数。所以,当使用子类创建实例的时候,必须传一个参数`cang = Girl("canglaoshi")`,然后调用实例方法`cang.get_name()`。对于实例方法`cang.height(160)`,也是因着继承的缘故使然。 -多重继承的顺序很必要了解。比如,如果一个子类继承了两个父类,并且两个父类有同样的方法或者属性,那么在实例化子类后,调用那个方法或属性,是属于哪个父类的呢?造一个没有实际意义,纯粹为了解决这个问题的程序: +在上面的程序中,子类`Gril`里面没有与父类`Person`重复的属性和方法,但有时候,会遇到这样的情况。 - #!/usr/bin/env python - # coding=utf-8 + class Girl(Person): + def __init__(self): + self.name = "Aoi sola" - class K1(object): - def foo(self): - print "K1-foo" + def get_name(self): + return self.name - class K2(object): - def foo(self): - print "K2-foo" - def bar(self): - print "K2-bar" +在子类里面,也写了一个初始化函数,并且定义了一个实例属性`self.name = "Aoi sola"`。在父类中,也有初始化函数。在这种情况下,再次执行程序。 - class J1(K1, K2): - pass +在Python 2中出现异常: - class J2(K1, K2): - def bar(self): - print "J2-bar" + TypeError: __init__() takes exactly 1 argument (2 given) - class C(J1, J2): - pass +Python 3中也有异常: + + TypeError: __init__() takes 1 positional argument but 2 were given + +不管哪个版本中的异常信息,都告诉我们,创建实例的时候,传入的参数个数多了。根源在于,子类`Girl`中的初始化函数,只有一个`self`。因为跟父类中的初始化函数重名,虽然继承了父类,但是将父类中的初始化函数覆盖了,导致父类中的`__init__()`在子类中不再实现。所以,实例化子类,不应该再显式地传参数。 if __name__ == "__main__": - print C.__mro__ - m = C() - m.foo() - m.bar() + cang = Girl() #不在显示地传参数 + print cang.get_name() #Python 3: print(cang.get_name()),下同,从略 + print cang.height(160) + print cang.breast(90) -这段代码,保存后运行: +如此修改之后,再运行,则显示结果: - $ python 20904.py - (<class '__main__.C'>, <class '__main__.J1'>, <class '__main__.J2'>, <class '__main__.K1'>, <class '__main__.K2'>, <type 'object'>) - K1-foo - J2-bar + Aoi sola + {'height': 160} + {'breast': 90} -代码中的`print C.__mro__`是要打印出类的继承顺序。从上面清晰看出来了。如果要执行foo()方法,首先看J1,没有,看J2,还没有,看J1里面的K1,有了,即C==>J1==>J2==>K1;bar()也是按照这个顺序,在J2中就找到了一个。 +从结果中不难看出,如果子类中的方法或属性覆盖了父类(即与父类同名),那么就不在继承父类的该方法或者属性。 + +像这样,子类`Girl`里面有与父类`Person`同样名称的方法和属性,也称之为对父类相应部分的重写。重写之后,父类的相应部分不再被继承到子类,没有重写的部分,在子类中依然被继承,从上面程序可以看出来此结果。 -这种对继承属性和方法搜索的顺序称之为“广度优先”。 +还有一种可能存在,就是重写之后,如果要在子类中继承父类中相应部分,怎么办? -新式类用以及python3.x中都是按照此顺序原则搜寻属性和方法的。 +##super函数 -但是,在旧式类中,是按照“深度优先”的顺序的。因为后面读者也基本不用旧式类,所以不举例。如果读者愿意,可以自己模仿上面代码,探索旧式类的“深度优先”含义。 +承接前面的问题和程序,可以对子类`Gril`做出这样的修改。 -##super函数 + class Girl(Person): + def __init__(self, name): + Person.__init__(self, name) + self.real_name = "Aoi sola" + + def get_name(self): + return self.name + +请读者注意观察`Girl`的初始化方法,与前面的有所不同。为了能够继续继承父类的初始化方法,以类方法的方式将父类的初始化函数再次调用`Person.__init__(self, name)`,同时,在子类的`__init__()`的参数中,要增加相应的参数`name`。这样就回答了前面的问题。 + +在实例化子类的时候,就以下面的方式进行: + + if __name__ == "__main__": + cang = Girl("canglaoshi") + print cang.real_name + print cang.get_name() + print cang.height(160) + print cang.breast(90) + +执行结果为: + + Aoi sola + canglaoshi + {'height': 160} + {'breast': 90} 对于初始化函数的继承,跟一般方法的继承,还有点不同。可以看下面的例子: @@ -261,6 +278,101 @@ python中有这样一种方法,这种方式是被提倡的方法:super函数 最后要提醒注意:super函数仅仅适用于新式类。当然,你一定是使用的新式类。“喜新厌旧”是程序员的嗜好。 + +##多重继承 + +所谓多重继承,就是指某一个类的父类,不止一个,而是多个。比如: + + #!/usr/bin/env python + # coding=utf-8 + + __metaclass__ = type + + class Person: + def eye(self): + print "two eyes" + + def breast(self, n): + print "The breast is: ",n + + class Girl: + age = 28 + def color(self): + print "The girl is white" + + class HotGirl(Person, Girl): + pass + + if __name__ == "__main__": + kong = HotGirl() + kong.eye() + kong.breast(90) + kong.color() + print kong.age + +在这个程序中,前面有两个类:Person和Girl,然后第三个类HotGirl继承了这两个类,注意观察继承方法,就是在类的名字后面的括号中把所继承的两个类的名字写上。但是第三个类中什么方法也没有。 + +然后实例化类HotGirl,既然继承了上面的两个类,那么那两个类的方法就都能够拿过来使用。保存程序,运行一下看看 + + $ python 20902.py + two eyes + The breast is: 90 + The girl is white + 28 + +值得注意的是,这次在类Girl中,有一个`age = 28`,在对HotGirl实例化之后,因为继承的原因,这个类属性也被继承到HotGirl中,因此通过实例属性`kong.age`一样能够得到该数据。 + +由上述两个实例,已经清楚看到了继承的特点,即将父类的方法和属性全部承接到子类中;如果子类重写了父类的方法,就使用子类的该方法,父类的被遮盖。 + +##多重继承的顺序 + +多重继承的顺序很必要了解。比如,如果一个子类继承了两个父类,并且两个父类有同样的方法或者属性,那么在实例化子类后,调用那个方法或属性,是属于哪个父类的呢?造一个没有实际意义,纯粹为了解决这个问题的程序: + + #!/usr/bin/env python + # coding=utf-8 + + class K1(object): + def foo(self): + print "K1-foo" + + class K2(object): + def foo(self): + print "K2-foo" + def bar(self): + print "K2-bar" + + class J1(K1, K2): + pass + + class J2(K1, K2): + def bar(self): + print "J2-bar" + + class C(J1, J2): + pass + + if __name__ == "__main__": + print C.__mro__ + m = C() + m.foo() + m.bar() + +这段代码,保存后运行: + + $ python 20904.py + (<class '__main__.C'>, <class '__main__.J1'>, <class '__main__.J2'>, <class '__main__.K1'>, <class '__main__.K2'>, <type 'object'>) + K1-foo + J2-bar + +代码中的`print C.__mro__`是要打印出类的继承顺序。从上面清晰看出来了。如果要执行foo()方法,首先看J1,没有,看J2,还没有,看J1里面的K1,有了,即C==>J1==>J2==>K1;bar()也是按照这个顺序,在J2中就找到了一个。 + +这种对继承属性和方法搜索的顺序称之为“广度优先”。 + +新式类用以及python3.x中都是按照此顺序原则搜寻属性和方法的。 + +但是,在旧式类中,是按照“深度优先”的顺序的。因为后面读者也基本不用旧式类,所以不举例。如果读者愿意,可以自己模仿上面代码,探索旧式类的“深度优先”含义。 + + ------ [总目录](./index.md)   |   [上节:类(3)](./208.md)   |   [下节:类(5)](./210.md) diff --git a/2code/20905.py b/2code/20905.py new file mode 100644 index 0000000..6bbfe82 --- /dev/null +++ b/2code/20905.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Person(object): + def __init__(self, name): + self.name = name + + def height(self, m): + h = dict((["height", m],)) + return h + + def breast(self, n): + b = dict((["breast", n],)) + return b + +class Girl(Person): + def __init__(self, name): + #Person.__init__(self, name) + super(Girl, self).__init__(name) + self.real_name = "Aoi sola" + + def get_name(self): + return self.name + +if __name__ == "__main__": + cang = Girl("canglaoshi") + print cang.real_name + print cang.get_name() + print cang.height(160) + print cang.breast(90) diff --git a/2code/20905p3.py b/2code/20905p3.py new file mode 100644 index 0000000..3dc2722 --- /dev/null +++ b/2code/20905p3.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Person: + def __init__(self, name): + self.name = name + + def height(self, m): + h = dict((["height", m],)) + return h + + def breast(self, n): + b = dict((["breast", n],)) + return b + +class Girl(Person): + def __init__(self,name): + super(Girl, self).__init__(name) + self.real_name = "Aoi sola" + + def get_name(self): + return self.name + +if __name__ == "__main__": + cang = Girl("canglaoshi") + print(cang.get_name()) + print(cang.height(160)) + print(cang.breast(90)) diff --git a/README.md b/README.md index 497ac70..c0cea69 100644 --- a/README.md +++ b/README.md @@ -72,7 +72,7 @@ 2. [类(2)](./207.md)==>新式类和旧式类,初步创建类和实例化 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 -5. [类(5)](./209.md)==>继承,多重继承,super函数 +5. [类(5)](./209.md)==>继承,super,多重继承 6. [类(6)](./210.md)==>静态方法和类方法,两者的区别,类的文档 7. [多态和封装](./211.md)==>多态,封装和私有化 8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` diff --git a/index.md b/index.md index 6d4fab1..8203bd2 100644 --- a/index.md +++ b/index.md @@ -72,7 +72,7 @@ 2. [类(2)](./207.md)==>新式类和旧式类,类的命名,构造函数,实例化及方法和属性,self的作用 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 -5. [类(5)](./209.md)==>继承,多重继承,super函数 +5. [类(5)](./209.md)==>继承,super,多重继承 6. [类(6)](./210.md)==>静态方法和类方法,两者的区别,类的文档 7. [多态和封装](./211.md)==>多态,封装和私有化 8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` From 7fabe93fc1a1fd1badceda94f97627a404beb8d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 19 Apr 2016 16:56:53 +0800 Subject: [PATCH 151/288] p3 --- 209.md | 128 ++++++++++++++------------------------------------------- 1 file changed, 31 insertions(+), 97 deletions(-) diff --git a/209.md b/209.md index 41c9008..eefa6db 100644 --- a/209.md +++ b/209.md @@ -164,7 +164,7 @@ Python 3中也有异常: 还有一种可能存在,就是重写之后,如果要在子类中继承父类中相应部分,怎么办? -##super函数 +##调用覆盖的方法 承接前面的问题和程序,可以对子类`Gril`做出这样的修改。 @@ -176,9 +176,9 @@ Python 3中也有异常: def get_name(self): return self.name -请读者注意观察`Girl`的初始化方法,与前面的有所不同。为了能够继续继承父类的初始化方法,以类方法的方式将父类的初始化函数再次调用`Person.__init__(self, name)`,同时,在子类的`__init__()`的参数中,要增加相应的参数`name`。这样就回答了前面的问题。 +请读者注意观察`Girl`的初始化方法,与前面的有所不同。为了能够使用父类的初始化方法,以类方法的方式调用`Person.__init__(self, name)`。另外,在子类的`__init__()`的参数中,要增加相应的参数`name`。这样就回答了前面的问题。 -在实例化子类的时候,就以下面的方式进行: +实例化子类,以下面的方式运行程序: if __name__ == "__main__": cang = Girl("canglaoshi") @@ -194,108 +194,40 @@ Python 3中也有异常: {'height': 160} {'breast': 90} -对于初始化函数的继承,跟一般方法的继承,还有点不同。可以看下面的例子: +就这样,使用类方法的方式,将父类中被覆盖的方法再次在子类中实现。 - #!/usr/bin/env python - # coding=utf-8 - - __metaclass__ = type - - class Person: - def __init__(self): - self.height = 160 - - def about(self, name): - print "{} is about {}".format(name, self.height) - - class Girl(Person): - def __init__(self): - self.breast = 90 - - def about(self, name): - print "{} is a hot girl, she is about {}, and her breast is {}".format(name, self.height, self.breast) - - if __name__ == "__main__": - cang = Girl() - cang.about("canglaoshi") - -在上面这段程序中,类Girl继承了类Person。在类Girl中,初始化设置了`self.breast = 90`,由于继承了Person,按照前面的经验,Person的初始化函数中的`self.height = 160`也应该被Girl所继承过来。然后在重写的about方法中,就是用`self.height`。 - -实例化类Girl,并执行`cang.about("canglaoshi")`,试图打印出一句话`canglaoshi is a hot girl, she is about 160, and her bereast is 90`。保存程序,运行之: - - $ python 20903.py - Traceback (most recent call last): - File "20903.py", line 22, in <module> - cang.about("canglaoshi") - File "20903.py", line 18, in about - print "{} is a hot girl, she is about {}, and her breast is {}".format(name, self.height, self.breast) - AttributeError: 'Girl' object has no attribute 'height' - -报错! - -程序员有一句名言:不求最好,但求报错。报错不是坏事,是我们长经验的时候,是在告诉我们,那么做不对。 - -重要的是看报错信息。就是我们要打印的那句话出问题了,报错信息显示`self.height`是不存在的。也就是说类Girl没有从Person中继承过来这个属性。 - -原因是什么?仔细观察类Girl,会发现,除了刚才强调的about方法重写了,`__init__`方法,也被重写了。不要认为它的名字模样奇怪,就不把它看做类中的方法(函数),它跟类Person中的`__init__`重名了,也同样是重写了那个初始化函数。 - -这就提出了一个问题。因为在子类中重写了某个方法之后,父类中同样的方法被遮盖了。那么如何再把父类的该方法调出来使用呢?纵然被遮盖了,应该还是存在的,不要浪费了呀。 - -python中有这样一种方法,这种方式是被提倡的方法:super函数。 - - #!/usr/bin/env python - # coding=utf-8 - - __metaclass__ = type - - class Person: - def __init__(self): - self.height = 160 - - def about(self, name): - print "{} is about {}".format(name, self.height) +但上述方式有一个问题,如果父类的名称因为某种目前你无法预料的原因修改了,子类中该父类的的名称也要修改,有如果程序比较复杂或者忘记了,就会出现异常。于是乎,就有了更巧妙的方法——`super`。再重写子类。 class Girl(Person): - def __init__(self): - super(Girl, self).__init__() - self.breast = 90 - - def about(self, name): - print "{} is a hot girl, she is about {}, and her breast is {}".format(name, self.height, self.breast) - super(Girl, self).about(name) - - if __name__ == "__main__": - cang = Girl() - cang.about("canglaoshi") - -在子类中,`__init__`方法重写了,为了调用父类同方法,使用`super(Girl, self).__init__()`的方式。super函数的参数,第一个是当前子类的类名字,第二个是self,然后是点号,点号后面是所要调用的父类的方法。同样在子类重写的about方法中,也可以调用父类的about方法。 + def __init__(self, name): + #Person.__init__(self, name) + super(Girl, self).__init__(name) + self.real_name = "Aoi sola" -执行结果: + def get_name(self): + return self.name - $ python 20903.py - canglaoshi is a hot girl, she is about 160, and her breast is 90 - canglaoshi is about 160 +仅仅修改一处,将`Person.__init__(self, name)`去掉,修改为`super(Girl, self).__init__(name)`。实行程序后,显示的结果与以前一样。 -最后要提醒注意:super函数仅仅适用于新式类。当然,你一定是使用的新式类。“喜新厌旧”是程序员的嗜好。 +关于`super`,有人做了非常深入的研究,推荐读者阅读[《Python’s super() considered super! 》](https://rhettinger.wordpress.com/2011/05/26/super-considered-super/),文中已经探究了`super`的工作过程。读者如果要深入了解,可以阅读这篇文章。 +###多重继承 -##多重继承 +前面所说的继承,父类都只有一个。但,继承可以来自多个“父”,这就是多重继承。 -所谓多重继承,就是指某一个类的父类,不止一个,而是多个。比如: +所谓多重继承,就是指某一个子类的父类,不止一个,而是多个。比如: #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type - - class Person: + class Person(object): #Python 3: class Person: def eye(self): - print "two eyes" + print "two eyes" #Python 3: print("two eyes"),下同,从略 def breast(self, n): print "The breast is: ",n - class Girl: + class Girl(object): #Python 3: class Gril: age = 28 def color(self): print "The girl is white" @@ -310,9 +242,9 @@ python中有这样一种方法,这种方式是被提倡的方法:super函数 kong.color() print kong.age -在这个程序中,前面有两个类:Person和Girl,然后第三个类HotGirl继承了这两个类,注意观察继承方法,就是在类的名字后面的括号中把所继承的两个类的名字写上。但是第三个类中什么方法也没有。 +在这个程序中,前面有两个类`Person`和`Girl`,然后第三个类`HotGirl`继承了这两个类,注意观察继承方法,就是在类的名字后面的括号中把所继承的两个类的名字写上。但是第三个类中什么方法也没有。 -然后实例化类HotGirl,既然继承了上面的两个类,那么那两个类的方法就都能够拿过来使用。保存程序,运行一下看看 +然后实例化类`HotGirl`,既然继承了上面的两个类,那么那两个类的方法就都能够拿过来使用。保存程序,运行一下看看 $ python 20902.py two eyes @@ -320,22 +252,22 @@ python中有这样一种方法,这种方式是被提倡的方法:super函数 The girl is white 28 -值得注意的是,这次在类Girl中,有一个`age = 28`,在对HotGirl实例化之后,因为继承的原因,这个类属性也被继承到HotGirl中,因此通过实例属性`kong.age`一样能够得到该数据。 +值得注意的是,这次在类`Girl`中,有一个`age = 28`,在对HotGirl实例化之后,因为继承的原因,这个类属性也被继承到`HotGirl`中,因此通过实例属性`kong.age`一样能够得到该数据。 由上述两个实例,已经清楚看到了继承的特点,即将父类的方法和属性全部承接到子类中;如果子类重写了父类的方法,就使用子类的该方法,父类的被遮盖。 -##多重继承的顺序 +多重继承的顺序很必要了解。 -多重继承的顺序很必要了解。比如,如果一个子类继承了两个父类,并且两个父类有同样的方法或者属性,那么在实例化子类后,调用那个方法或属性,是属于哪个父类的呢?造一个没有实际意义,纯粹为了解决这个问题的程序: +比如,如果一个子类继承了两个父类,并且两个父类有同样的方法或者属性,那么在实例化子类后,调用那个方法或属性,是属于哪个父类的呢?造一个没有实际意义,纯粹为了解决这个问题的程序: #!/usr/bin/env python # coding=utf-8 - class K1(object): + class K1(object): #Python 3: class K1: def foo(self): - print "K1-foo" + print "K1-foo" #Python 3: print("K1-foo"),下同,从略 - class K2(object): + class K2(object): #Python 3: class K2: def foo(self): print "K2-foo" def bar(self): @@ -364,14 +296,16 @@ python中有这样一种方法,这种方式是被提倡的方法:super函数 K1-foo J2-bar -代码中的`print C.__mro__`是要打印出类的继承顺序。从上面清晰看出来了。如果要执行foo()方法,首先看J1,没有,看J2,还没有,看J1里面的K1,有了,即C==>J1==>J2==>K1;bar()也是按照这个顺序,在J2中就找到了一个。 +代码中的`print C.__mro__`是要打印出类的继承顺序。从上面清晰看出来了。如果要执行`foo()`方法,首先看`J1`,没有,看`J2`,还没有,看`J1`里面的`K1`,有了,即C==>J1==>J2==>K1;`bar()`也是按照这个顺序,在`J2`中就找到了一个。 这种对继承属性和方法搜索的顺序称之为“广度优先”。 -新式类用以及python3.x中都是按照此顺序原则搜寻属性和方法的。 +Python 2的新式类,以及Python 3中都是按照此顺序原则搜寻属性和方法的。 但是,在旧式类中,是按照“深度优先”的顺序的。因为后面读者也基本不用旧式类,所以不举例。如果读者愿意,可以自己模仿上面代码,探索旧式类的“深度优先”含义。 +导致新式类和Python 3中继承顺序较旧式类有所变化,其原因是mro(Method Resolution Order)算法,读者对此若有兴趣,可以到网上搜索关于这个算法的内容进行了解。 + ------ From d2c6e7019d4505d5a8703450c762b19959816ffc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 19 Apr 2016 21:48:31 +0800 Subject: [PATCH 152/288] p3 --- 209.md | 3 +-- 211.md | 66 +++++++++++++++++++++++++++---------------------------- README.md | 3 +-- index.md | 3 +-- 4 files changed, 36 insertions(+), 39 deletions(-) diff --git a/209.md b/209.md index eefa6db..97394f7 100644 --- a/209.md +++ b/209.md @@ -306,9 +306,8 @@ Python 2的新式类,以及Python 3中都是按照此顺序原则搜寻属性 导致新式类和Python 3中继承顺序较旧式类有所变化,其原因是mro(Method Resolution Order)算法,读者对此若有兴趣,可以到网上搜索关于这个算法的内容进行了解。 - ------ -[总目录](./index.md)   |   [上节:类(3)](./208.md)   |   [下节:类(5)](./210.md) +[总目录](./index.md)   |   [上节:类(4)](./238.md)   |   [下节:多态和封装](./211.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/211.md b/211.md index 05aa3ee..e2600b3 100644 --- a/211.md +++ b/211.md @@ -2,24 +2,24 @@ #多态和封装 -前面讲过的“继承”,是类的一个重要特征,在编程中用途很多。这里要说两个在理解和实践上有争议的话题:多态和封装。所谓争议,多来自于对同一个现象不同角度的理解,特别是有不少经验丰富的程序员,还从其它语言的角度来诠释python的多态等。 +“多态”和“封装”是OOP的重要特征——前面说的“继承”也是。但是,对于Python而言,对这两个的理解也有很多不同。建议读者“吃百家宴”,到网上搜一搜有关话题,不少人写了文章来讨论。 ##多态 -在网上搜索一下,发现对python的多态问题,的确是仁者见仁智者见智。 +这里我仅仅针对初学者,按照自己的理解,谈谈零基础学Python的读者可以怎样理解“多态”,因为“多态”就如同其名字一样,在理解上也是“多态”的。 -作为一个初学者,不一定要也没有必要、或者还没有能力参与这种讨论。但是,应该理解python中关于多态的基本体现,也要对多态有一个基本的理解。 +先来看这样的例子: >>> "This is a book".count("s") 2 >>> [1,2,4,3,5,3].count(3) 2 -上面的`count()`的作用是数一数某个元素在对象中出现的次数。从例子中可以看出,我们并没有限定count的参数。类似的例子还有: +上面的`count()`的作用是数一数某个元素在对象中出现的次数。从例子中可以看出,我们并没有限定`count()`的参数类型。类似的例子还有: >>> f = lambda x,y:x+y -还记得这个lambda函数吗?如果忘记了,请复习[函数(5)](./237.md)中对此的解释。 +还记得这个`lambda`函数吗?如果忘记了,请复习[函数(5)](./237.md)中对此的解释。 >>> f(2,3) 5 @@ -28,9 +28,11 @@ >>> f(["python","java"],["c++","lisp"]) ['python', 'java', 'c++', 'lisp'] -在那个lambda函数中,我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能得到不报错的结果。当然,这样做之所以合法,更多的是来自于`+`的功能强悍。 +这里我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能得到不报错的结果。 -以上,就体现了“多态”。当然,也有人就此提出了反对意见,因为本质上是在参数传入值之前,python并没有确定参数的类型,只能让数据进入函数之后再处理,能处理则罢,不能处理就报错。例如: +以上,就体现了“多态”——同一种行为具有不同表现形式和形态的能力,换一种说法,就是对象多种表现形式的体现。 + +当然,也有人就此提出了反对意见,因为本质上是在参数传入值之前,Python并没有确定参数的类型,只能让数据进入函数之后再处理,能处理则罢,不能处理就报错。例如: >>> f("qiw", 2) Traceback (most recent call last): @@ -38,13 +40,13 @@ File "<stdin>", line 1, in <lambda> TypeError: cannot concatenate 'str' and 'int' objects -本教程由于不属于这种概念争论范畴,所以不进行这方面的深入探索,仅仅是告诉各位读者相关信息。并且,本教程也是按照“人云亦云”的原则,既然大多数程序员都在讨论多态,那么我们就按照大多数人说的去介绍(尽管有时候真理掌握在少数人手中)。 +本书由于不属于这种概念争论范畴,所以不进行这方面的深入探索,仅仅是告诉各位读者相关信息。并且,也是按照“人云亦云”的原则,既然大多数程序员都在讨论多态,那么我们就按照大多数人说的去介绍(尽管有时候真理掌握在少数人手中)。 “多态”,英文是:Polymorphism,在台湾被称作“多型”。维基百科中对此有详细解释说明。 >多型(英语:Polymorphism),是指物件導向程式執行時,相同的訊息可能會送給多個不同的類別之物件,而系統可依據物件所屬類別,引發對應類別的方法,而有不同的行為。簡單來說,所謂多型意指相同的訊息給予不同的物件會引發不同的動作稱之。 -再简化的说法就是“有多种形式”,就算不知道变量(参数)所引用的对象类型,也一样能进行操作,来者不拒。比如上面显示的例子。在python中,更为pythonic的做法是根本就不进行类型检验。 +再简化的说法就是“有多种形式”,就算不知道变量(参数)所引用的对象类型,也一样能进行操作,来者不拒。比如上面显示的例子。在Python中,更为pythonic的做法是根本就不进行类型检验。 例如著名的`repr()`函数,它能够针对输入的任何对象返回一个字符串。这就是多态的代表之一。 @@ -79,25 +81,27 @@ 报错了。看错误提示,明确告诉了我们`object of type 'int' has no len()`。 -在诸多介绍多态的文章中,都会有这样关于猫和狗的例子。这里也将代码贴出来,读者去体会所谓多态体现。其实,如果你进入了python的语境,有时候是不经意就已经在应用多态特性呢。 +上述的种种多态表现,皆因为Python是一种解释型的语言,不需要进行预编译,只在运行时才确定状态。所以,Python就被认为天生是一种多态的语言。也有人持相反观点,认为Python不支持多态,在理由中,也用了上述内容。看来,看着半杯水,的确能够有不同的结论——“还有半杯水呢!”和“还剩半杯水了!”。 + +争论,让给思想者。我们,围观。 + +在诸多介绍多态的文章中,都会有这样关于猫和狗的例子。这里也将代码贴出来,读者去体会所谓多态体现。其实,如果你进入了Python的语境,有时候是不经意就已经在应用多态特性呢。 #!/usr/bin/env python # coding=utf-8 "the code is from: http://zetcode.com/lang/python/oop/" - __metaclass__ = type - - class Animal: + class Animal(object): #Python 3: class Animal: def __init__(self, name=""): self.name = name def talk(self): pass - class Cat(Animal): + class Cat(Animal): def talk(self): - print "Meow!" + print "Meow!" #Python 3: print('Meow!'),下同,从略 class Dog(Animal): def talk(self): @@ -118,7 +122,11 @@ Meow! Woof! -代码中有Cat和Dog两个类,都继承了类Animal,它们都有`talk()`方法,输入不同的动物名称,会得出相应的结果。 +代码中有`Cat`和`Dog`两个类,都继承了类`Animal`,它们都有`talk()`方法,输入不同的动物名称,会得出相应的结果。 + +根据前面已经学习过的类和继承的知识,我们知道,对于实例`c`是Cat类型的对象,`d`是Dog类型的对象,但它们也都是Animal类型的对象——类,也是一种对象类型,这样,不论是谁,也都有`Animal`类所规定的方法和属性——多态就体现在这里——继承了`Animal`的子类,实例化之后都可以具有`Animal`的表现形式。 + +对“多态”的理解,还可以在实践中慢慢增加。 关于多态,有一个被称作“鸭子类型”(duck typeing)的东西,其含义在维基百科中被表述为: @@ -130,32 +138,26 @@ ##封装和私有化 -在正式介绍封装之前,先扯个笑话。 - ->某软件公司老板,号称自己懂技术。一次有一个项目要交付给客户,但是他有不想让客户知道实现某些功能的代码,但是交付的时候要给人家代码的。于是该老板就告诉程序员,“你们把那部分核心代码封装一下”。程序员听了之后,迷茫了。 - -不知道你有没有笑。 +“封装”,是不是把代码写到某个东西里面,“人”在编辑器中打开,就看不到了呢? -“封装”,是不是把代码写到某个东西里面,“人”在编辑器中打开,就看不到了呢?除非是你的显示器坏了。 +除非是你的显示器坏了。 -在程序设计中,封装(Encapsulation)是对object的一种抽象,即将某些部分隐藏起来,在程序外部看不到,即无法调用(不是人用眼睛看不到那个代码,除非用某种加密或者混淆方法,造成现实上的困难,但这不是封装)。 +在程序设计中,封装(Encapsulation)是对具体对象的一种抽象,即将某些部分隐藏起来,在程序外部看不到,即无法调用(不是人用眼睛看不到那个代码,除非用某种加密或者混淆方法,造成现实上的困难,但这不是封装)。 要了解封装,离不开“私有化”,就是将类或者函数中的某些属性限制在某个区域之内,外部无法调用。 -python中私有化的方法也比较简单,就是在准备私有化的属性(包括方法、数据)名字前面加双下划线。例如: +Python中私有化的方法也比较简单,就是在准备私有化的属性(包括方法、数据)名字前面加双下划线。例如: #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type - - class ProtectMe: + class ProtectMe(object): #Python 3: class ProtectMe: def __init__(self): self.me = "qiwsir" self.__name = "kivi" def __python(self): - print "I love Python." + print "I love Python." #Python 3: print("I love Python."),下同,从略 def code(self): print "Which language do you like?" @@ -201,9 +203,7 @@ python中私有化的方法也比较简单,就是在准备私有化的属性 #!/usr/bin/env python # coding=utf-8 - __metaclass__ = type - - class ProtectMe: + class ProtectMe(object): #Python 3: class ProtectMe: def __init__(self): self.me = "qiwsir" self.__name = "kivi" @@ -214,7 +214,7 @@ python中私有化的方法也比较简单,就是在准备私有化的属性 if __name__ == "__main__": p = ProtectMe() - print p.name + print p.name #Python 3: print(p.name) 运行结果: @@ -227,6 +227,6 @@ python中私有化的方法也比较简单,就是在准备私有化的属性 ------ -[总目录](./index.md)   |   [上节:类(5)](./210.md)   |   [下节:更多属性(1)](./212.md) +[总目录](./index.md)   |   [上节:类(5)](./209.md)   |   [下节:更多属性(1)](./212.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/README.md b/README.md index c0cea69..e54ee3a 100644 --- a/README.md +++ b/README.md @@ -73,8 +73,7 @@ 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 5. [类(5)](./209.md)==>继承,super,多重继承 -6. [类(6)](./210.md)==>静态方法和类方法,两者的区别,类的文档 -7. [多态和封装](./211.md)==>多态,封装和私有化 +6. [多态和封装](./211.md)==>多态,封装和私有化 8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` 9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` diff --git a/index.md b/index.md index 8203bd2..eaa1356 100644 --- a/index.md +++ b/index.md @@ -73,8 +73,7 @@ 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 5. [类(5)](./209.md)==>继承,super,多重继承 -6. [类(6)](./210.md)==>静态方法和类方法,两者的区别,类的文档 -7. [多态和封装](./211.md)==>多态,封装和私有化 +6. [多态和封装](./211.md)==>多态,封装和私有化 8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` 9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` From 9e10dc516d8c8e7d3a1af432c7847725012b59f4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 09:20:45 +0800 Subject: [PATCH 153/288] p3 --- 239.md | 263 +++++++++++++++++++++++++++++++++++++++++++++++ 2code/23901.py | 19 ++++ 2code/23901p3.py | 19 ++++ README.md | 1 + index.md | 1 + 5 files changed, 303 insertions(+) create mode 100644 239.md create mode 100644 2code/23901.py create mode 100644 2code/23901p3.py diff --git a/239.md b/239.md new file mode 100644 index 0000000..5eeb82d --- /dev/null +++ b/239.md @@ -0,0 +1,263 @@ +>Who are you to pass judgment on servants of anothers? It is before their own lord that they stand or fall. And they will be upheld, for the Lord is able to make them stand. + +#定制类 + +类是对象,类也是对象类型。字符串、列表、字典等是Python中内置的对象类型,除此之外,我们可以编写类,自定义对象类型。 + +##类和对象类型 + +如果时至今日,你还没有充分理解类和对象类型的问题,可以再看看如下内容。 + + >>> class C1(object): pass #Python 3: class C1: pass + + >>> class C2(object): pass #Python 3: class C2: pass + + >>> a = C1() + >>> b = C2() + >>> type(a) + <class '__main__.C1'> + >>> type(b) + <class '__main__.C2'> + +`type()`是我们已经知晓了的内建函数,它返回的是对象类型。`a = C1()`,是实例化,创建了一个实例,也是一个赋值语句,将变量`a`与类`C1()`建立了引用关系,这就和以前`a = 2`的效果是一样的。所以,我们可以通过`type(a)`来得到实例或者说是这个变量所引用对象的类型。 + +在Python中,还有一个函数,专门来判断一个对象是不是另一个给定类的实例。 + + >>> help(isinstance) + Help on built-in function isinstance in module __builtin__: + + isinstance(...) + isinstance(object, class-or-type-or-tuple) -> bool + + Return whether an object is an instance of a class or of a subclass thereof. + With a type as second argument, return whether that is the object's type. + The form using a tuple, isinstance(x, (A, B, ...)), is a shortcut for + isinstance(x, A) or isinstance(x, B) or ... (etc.). + +这是Python 2下的帮助文档信息,Python 3下的内容与之类似。 + +从`isinstance()`的名字上就能知道它是干什么的。 + +用它可以判断一个对象是否是一个类或者子类的实例,如果第二个参数是类型,也可以判断是否为该类型。 + + >>> isinstance(a, C1) + True + >>> isinstance(a, C2) + False + +`a`是类`C1`的实例,不是`C2` 的实例。类似操作,还可以这么做: + + >>> m = 1 + >>> isinstance(m, int) + True + >>> isinstance(m, float) + False + +用以前的话说,`m`所引用的对象是整数型,简说成`m`是整数型。但是,如果从`instance()`的操作中看,`m`和`a`是等效的,你可以认为`a`是C1类型的对象。 + +由此,我们进一步理解了类就是一种对象类型的。 + +##定制类 + +必须要定制类,因为这个世界太复杂。 + +定制类,就要用到类的特殊方法,比如初始化函数`__init__`,虽然用途很 广泛,但仅仅用它还嫌不够,还要用到其它的特殊方法。 + +在Python的官方网站上,专门有介绍[Special method names](https://docs.python.org/2/reference/datamodel.html#special-method-names)的章节,读者可以去仔细阅读。恕我不一一介绍。 + +本节中,仅根据例子中的问题,使用某个特殊方法。 + + #!/usr/bin/env python + + class RoundFloat(object): #Python 3: class RoundFloat: + def __init__(self, val): + assert isinstance(val, float), "value must be a float." + self.value = round(val, 2) + + def __str__(self): + return "{:.2f}".format(self.value) + + __repr__ = __str__ + + if __name__ == "__main__": + r = RoundFloat(2.185) + print r #Python 3: print(r) + print type(r) #Python 3: print(type(r)) + +上述程序中的类`RoundFloat`的作用是定义了一种两位小数的浮点数类型,利用这个类,能够得到两位小数的浮点数。 + +在初始化函数中`assert isinstance(val, float), "value must be a float."`是对输入的数据类型进行判断,如果不是浮点数就会抛出异常提示。关于`assert`(断言)可以参看后续内容。 + +方法`__str__()`是一个特殊方法。实现这个方法,目的就是能够得到打印的内容。这里就是将前面四舍五入保留了两位小数的浮点数,以小数点后有两位小数的形式输出。 + +`__repr__ = __str__` 的含义是在类被调用,即向变量提供`__str__()`里的内容。 + +执行程序,结果是: + + 2.19 + <class '__main__.RoundFloat'> + +如果是`RoundFloat(2.185)`,返回的结果是`2.00`。 + +对比看,`int(2.34)`和`RoundFloat(2.185)`完全等效,即`int`是对象类型,也是数据转换的函数;`RoundFloat`具有同样的功能。`RoundFloat`就是我们新定义的对象类型。 + +仿照上面的做法,我们还可以定制一个专门显示分数的类。 + +如你所知,如果在Python中直接输入状如3/2,它不会是一个分数,而是按照除法进行处理。但,分数的显示和使用,是显而易见的,Python的内置对象类型中又没有分数类型(不仅Python,相当多的高级语言都没有)。所以,有必要自定义一个相关的类型。 + +仿照前面定制类的方式,写出这样一段代码。 + + #!/usr/bin/env python + #coding: utf-8 + + class Fraction(object): #Python 3: class Fraction: + def __init__(self, number, denom=1): + self.number = number + self.denom = denom + + def __str__(self): + return str(self.number) + '/' + str(self.denom) + + __repr__ = __str__ + + + if __name__ == "__main__": + f = Fraction(2, 3) + print f #Python 3: print(f) + + #output: 2/3 + +类`Fraction`就是自定义的分数类型。由此可见,自定义类是相当重要和必要的。 + +在这个基础上,继续将分数问题深入研究——分数相加。`1/2 + 1/3 = 5/6`,计算过程如下: + +1. 通分,即分母为原来两个分数的分母的最小公倍数,得到`3/6 + 2/6`; +2. 分子相加,得到上述两个分数的和。 + +这样,我们将问题分解,找出一个关键,就是“通分”,而通分的关键是找出两个整数的最小公倍数。 + +如何找最小公倍数?步骤如下: + +1. 计算两个数的最大公约数,假设a和b,最大公约数(greatest common divisor)用gcd(a, b)表示; +2. 最小公倍数和最大公约数的关系是:lcm(a, b) = |a * b| / gcd(a, b),lcm(a, b)表示这两个数的最小公倍数(lowest common multiple)。 + +读者不妨从新审视一番上述问题解决的思路。原始问题是计算两个分数的加法,然后将这个问题分解,再将分解之后的问题再分解。最终我们解决问题的基石是计算最大公约数。像这样解决问题的方法,我们称之为分治法,即一个复杂问题,分解为若干个简单问题,然后把简单问题组合起来,就解决了那个复杂问题——分而治之。 + +分解到最小的问题,就可以用编写函数的方式解决了。所以,先计算最大公约数和最小公倍数。 + + #!/usr/bin/env python + #coding: utf-8 + + def gcd(a, b): #最大公约数 + if not a > b: + a, b = b, a + while b != 0: + remainder = a % b + a, b = b, remainder + return a + + def lcm(a, b): #最小公倍数 + return (a * b) / gcd(a,b) + + if __name__ == "__main__": + print gcd(8, 20) #Python 3: print(gcd(8, 20)) + print lcm(8, 20) #Python 3: print(lcm(8, 20)) + + #output: + #4 + #40 + +如此,完成了最小公倍数的计算。然后,在前面定制的分数类的基础上,就可以制作两个分数相加的计算了。 + + #!/usr/bin/env python + #coding: utf-8 + def gcd(a, b): + if not a > b: + a, b = b, a + while b != 0: + remainder = a % b + a, b = b, remainder + return a + + def lcm(a, b): + return (a * b) / gcd(a,b) + + class Fraction(object): #Python 3: class Frraction: + def __init__(self, number, denom=1): + self.number = number + self.denom = denom + + def __str__(self): + return str(self.number) + '/' + str(self.denom) + + __repr__ = __str__ + + def __add__(self, other): + lcm_num = lcm(self.denom, other.denom) + number_sum = (lcm_num / self.denom * self.number) + (lcm_num / other.denom * other.number) + return Fraction(number_sum, lcm_num) + + if __name__ == "__main__": + m = Fraction(1, 3) + n = Fraction(1, 2) + s = m + n + print m,"+",n,"=",s + +较之以前,增加了一个特殊方法`__add__()`,它就是实现相加的特殊方法。在类中,有规定了加减乘除等运算的特殊方法。 + +在Python中,如果要实现某种运算,必须要有运算符,这是毫无疑问已经很熟悉的了。但是,这些运算符之所以能够被使用,都是因为有一些特殊方法才得以实现的。 + +|二元运算符 | 特殊方法| +|---------------------|-------------------| +| + | __add__,__radd__ | +| - | __sub__,__rsub__ | +| * | __mul__,__rmul__ | +| / | __div__,__rdiv__,__truediv__,__rtruediv__ | +| // | __floordiv__,__rfloordiv__ | +| % | __mod__,__rmod__ | +| ** | __pow__,__rpow__ | +| << | __lshift__,__rlshift__ | +| >> | __rshift__,__rrshift__ | +| & | __and__,__rand__ | +| ^ | __xor__,__rxor__ | +| | | __or__,__ror__ | +| += | __iaddr__ | +| -= | __isub__ | +| *= | __imul__ | +| /= | __idiv__,__itruediv__ | +| //= | __ifloordiv__ | +| %= | __imod__ | +| **= | __ipow__ | +| <<= | __ilshift__ | +| >>= | __irshift__ | +| &= | __iand__ | +| ^= | __ixor__ | +| |= | __ior__ | +| == | __eq__ | +| !=,<> | __ne__ | +| > | __get__ | +| < | __lt__ | +| >= | __ge__ | +| <= | __le__ | + +以“+”为例,不论是实现`1 + 2`还是`'abc' + 'xyz'`,都是要执行`1.__add__(2)`或者`'abc'.__add__('xyz')`操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有`__add__()`方法(读者不妨在交互模式中使用`dir()`,看一看整数、字符串是否有`__add__()`方法),一旦相应的对象有__add__()方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达`obj.__add__()`所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。 + +所以,在刚才自定义的类`Fraction`中,为了实现分数加法,我们重写了`__add__()`方法,也可以称之为运算符重载(对于Python是否支持重载,也是一个争论话题)。 + +就这样,我们解决了分数相加的问题。 + +但,上述加法还不是很完美,还可以有很多优化的地方,比如分数结果要化成最简分数等等。真正要做好一个分数运算的类,还有很多工作。 + +不过,在Python中,其实不用你自己做了,自由高手做好。标准库中就有相应模块解决此问题。 + + >>> from fractions import Fraction + >>> m, n = Fraction(1, 3), Fraction(1, 2) + >>> m + n + Fraction(5, 6) + >>> print m + n #Python 3: print(m + n) + 5/6 + >>> a, b = Fraction(1, 3), Fraction(1, 6) + >>> print a + b #Python 3: print(a + b) + 1/2 + +Python的魅力之一,就是它强大的标准库和第三方库,让你省心省力。 \ No newline at end of file diff --git a/2code/23901.py b/2code/23901.py new file mode 100644 index 0000000..346600f --- /dev/null +++ b/2code/23901.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python + +class RoundFloat(object): + def __init__(self, val): + assert isinstance(val, float), "value must be a float." + self.value = round(val, 2) + + def __str__(self): + return "{:.2f}".format(self.value) + + __repr__ = __str__ + + #def __repr__(self): + # return self.__str__() + +if __name__ == "__main__": + r = RoundFloat(2.185) + print r + print type(r) diff --git a/2code/23901p3.py b/2code/23901p3.py new file mode 100644 index 0000000..6a38fe7 --- /dev/null +++ b/2code/23901p3.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python + +class RoundFloat: + def __init__(self, val): + assert isinstance(val, float), "value must be a float." + self.value = round(val, 2) + + def __str__(self): + return "{:.2f}".format(self.value) + + __repr__ = __str__ + + #def __repr__(self): + # return self.__str__() + +if __name__ == "__main__": + r = RoundFloat(2.0) + print(r) + print(type(r)) diff --git a/README.md b/README.md index e54ee3a..a78d21e 100644 --- a/README.md +++ b/README.md @@ -74,6 +74,7 @@ 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 5. [类(5)](./209.md)==>继承,super,多重继承 6. [多态和封装](./211.md)==>多态,封装和私有化 +7. [定制类](./239.md)==>类和类型,定制类 8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` 9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` diff --git a/index.md b/index.md index eaa1356..bb4b91d 100644 --- a/index.md +++ b/index.md @@ -74,6 +74,7 @@ 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 5. [类(5)](./209.md)==>继承,super,多重继承 6. [多态和封装](./211.md)==>多态,封装和私有化 +7. [定制类](./239.md)==>类和类型,定制类 8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` 9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` From caa339755a6a4c6f8f5e6eb94f63a978741d3818 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 09:28:08 +0800 Subject: [PATCH 154/288] p3 --- 239.md | 56 ++++++++++++++++++++++++-------------------------------- 1 file changed, 24 insertions(+), 32 deletions(-) diff --git a/239.md b/239.md index 5eeb82d..9fab380 100644 --- a/239.md +++ b/239.md @@ -205,40 +205,26 @@ 较之以前,增加了一个特殊方法`__add__()`,它就是实现相加的特殊方法。在类中,有规定了加减乘除等运算的特殊方法。 -在Python中,如果要实现某种运算,必须要有运算符,这是毫无疑问已经很熟悉的了。但是,这些运算符之所以能够被使用,都是因为有一些特殊方法才得以实现的。 +在Python中,如果要实现某种运算,必须要有运算符,这是毫无疑问已经很熟悉的了。但是,这些运算符之所以能够被使用,都是因为有一些特殊方法才得以实现的。以下表格中列出几种常见运算符所对应的特殊方法,供参考。 |二元运算符 | 特殊方法| |---------------------|-------------------| -| + | __add__,__radd__ | -| - | __sub__,__rsub__ | -| * | __mul__,__rmul__ | -| / | __div__,__rdiv__,__truediv__,__rtruediv__ | -| // | __floordiv__,__rfloordiv__ | -| % | __mod__,__rmod__ | -| ** | __pow__,__rpow__ | -| << | __lshift__,__rlshift__ | -| >> | __rshift__,__rrshift__ | -| & | __and__,__rand__ | -| ^ | __xor__,__rxor__ | -| | | __or__,__ror__ | -| += | __iaddr__ | -| -= | __isub__ | -| *= | __imul__ | -| /= | __idiv__,__itruediv__ | -| //= | __ifloordiv__ | -| %= | __imod__ | -| **= | __ipow__ | -| <<= | __ilshift__ | -| >>= | __irshift__ | -| &= | __iand__ | -| ^= | __ixor__ | -| |= | __ior__ | -| == | __eq__ | -| !=,<> | __ne__ | -| > | __get__ | -| < | __lt__ | -| >= | __ge__ | -| <= | __le__ | +| + | `__add__`, `__radd__` | +| - | `__sub__`, `__rsub__` | +| * | `__mul__` , `__rmul__` | +| / | `__div__` , `__rdiv__`, `__truediv__`, `__rtruediv__` | +| // | `__floordiv__`, `__rfloordiv__` | +| % | `__mod__`, `__rmod__` | +| ** | `__pow__`, `__rpow__` | +| << | `__lshift__`, `__rlshift__` | +| >> | ` __rshift__`, `__rrshift__` | +| & | `__and__`, `__rand__` | +| == | `__eq__` | +| !=,<> | `__ne__` | +| > | `__get__` | +| < | `__lt__` | +| >= | `__ge__` | +| <= | `__le__` | 以“+”为例,不论是实现`1 + 2`还是`'abc' + 'xyz'`,都是要执行`1.__add__(2)`或者`'abc'.__add__('xyz')`操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有`__add__()`方法(读者不妨在交互模式中使用`dir()`,看一看整数、字符串是否有`__add__()`方法),一旦相应的对象有__add__()方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达`obj.__add__()`所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。 @@ -260,4 +246,10 @@ >>> print a + b #Python 3: print(a + b) 1/2 -Python的魅力之一,就是它强大的标准库和第三方库,让你省心省力。 \ No newline at end of file +Python的魅力之一,就是它强大的标准库和第三方库,让你省心省力。 + +------ + +[总目录](./index.md)   |   [上节:多态和封装](./211.md)   |   [下节:特殊方法(1)](./212.md) + +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file From 90e7df0ef9e8b3be3bb876c9fa85e1c4214fa823 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 09:29:24 +0800 Subject: [PATCH 155/288] p3 --- 239.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/239.md b/239.md index 9fab380..63108fe 100644 --- a/239.md +++ b/239.md @@ -226,7 +226,7 @@ | >= | `__ge__` | | <= | `__le__` | -以“+”为例,不论是实现`1 + 2`还是`'abc' + 'xyz'`,都是要执行`1.__add__(2)`或者`'abc'.__add__('xyz')`操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有`__add__()`方法(读者不妨在交互模式中使用`dir()`,看一看整数、字符串是否有`__add__()`方法),一旦相应的对象有__add__()方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达`obj.__add__()`所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。 +以“+”为例,不论是实现`1 + 2`还是`'abc' + 'xyz'`,都是要执行`1.__add__(2)`或者`'abc'.__add__('xyz')`操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有`__add__()`方法(读者不妨在交互模式中使用`dir()`,看一看整数、字符串是否有`__add__()`方法),一旦相应的对象有`__add__()`方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达`obj.__add__()`所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。 所以,在刚才自定义的类`Fraction`中,为了实现分数加法,我们重写了`__add__()`方法,也可以称之为运算符重载(对于Python是否支持重载,也是一个争论话题)。 From 17ceeedeb055193dd0b519d8bcaf2ef6cd4df4b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 16:58:30 +0800 Subject: [PATCH 156/288] p3 --- 240.md | 282 +++++++++++++++++++++++++++++++++++++++++++++++ 2code/24001p3.py | 22 ++++ README.md | 7 +- index.md | 6 +- 4 files changed, 312 insertions(+), 5 deletions(-) create mode 100644 240.md create mode 100644 2code/24001p3.py diff --git a/240.md b/240.md new file mode 100644 index 0000000..c39d659 --- /dev/null +++ b/240.md @@ -0,0 +1,282 @@ +>我们既蒙怜悯,受了这职分,就不丧胆,乃将那些暗昧可耻的事弃绝了,不行诡诈,不谬讲神的道理,只将真理表明出来,好在神面前把自己荐与各人的良心。(2 CORINTHIANS 4:1-2) + +#黑魔法 + +围绕类的话题,真实说也说不完,仅特殊方法,除了前面遇到过的`__init__()`,`__new__()`,`__str__()`等之外,还有很多。虽然它们仅仅是在某些特殊情景中使用,但是,因为本教程是“From Beginner to Master”。当然,不是学习了类的更多特殊方法就能达到Master水平,但是这是通往Master的一步。 + +本节试图再介绍一些点“黑魔法”,既能窥探到Python的更高境界,也能感受到Master的未来能力。俗话说“艺不压身”,还是多学点好。 + +##优化内存的`__slots__` + +首先声明,`__slots__`能够限制属性的定义,但是这不是它存在终极目标,它存在的终极目标更应该是一个在编程中非常重要的方面:优化内存使用。 + + >>> class Spring(object): + ... __slots__ = ("tree", "flower") + ... + >>> dir(Spring) + ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', 'flower', 'tree'] + +仔细看看`dir()`的结果,还有`__dict__`属性吗?没有了,的确没有了。也就是说`__slots__`把`__dict__`挤出去了,它进入了类的属性。 + + >>> Spring.__slots__ + ('tree', 'flower') + +这里可以看出,类Spring有且仅有两个属性。 + + >>> t = Spring() + >>> t.__slots__ + ('tree', 'flower') + +实例化之后,实例的`__slots__`与类的完全一样,这跟前面的`__dict__`大不一样了。 + + >>> Spring.tree = "liushu" + +通过类,先赋予一个属性值。然后,检验一下实例能否修改这个属性: + + >>> t.tree = "guangyulan" + Traceback (most recent call last): + File "<stdin>", line 1, in <module> + AttributeError: 'Spring' object attribute 'tree' is read-only + +看来,我们的意图不能达成,报错信息中显示,`tree`这个属性是只读的,不能修改了。 + + >>> t.tree + 'liushu' + +因为前面已经通过类给这个属性赋值了。不能用实例属性来修改。只能: + + >>> Spring.tree = "guangyulan" + >>> t.tree + 'guangyulan' + +用类属性修改。但是对于没有用类属性赋值的,可以通过实例属性赋值。 + + >>> t.flower = "haitanghua" + >>> t.flower + 'haitanghua' + +但此时: + + >>> Spring.flower + <member 'flower' of 'Spring' objects> + +实例属性的值并没有传回到类属性,你也可以理解为新建立了一个同名的实例属性。如果再给类属性赋值,那么就会这样了: + + >>> Spring.flower = "ziteng" + >>> t.flower + 'ziteng' + +当然,此时在给`t.flower`重新赋值,就会爆出跟前面一样的错误了。 + + >>> t.water = "green" + Traceback (most recent call last): + File "<stdin>", line 1, in <module> + AttributeError: 'Spring' object has no attribute 'water' + +这里试图给实例新增一个属性,也失败了。 + +看来`__slots__`已经把实例属性牢牢地管控了起来,但更本质是的是优化了内存。诚然,这种优化会在大量的实例时候显出效果。 + +书接上回,不管是实例还是类,都用`__dict__`来存储属性和方法,可以笼统地把属性和方法称为成员或者特性,一句话概括,就是`__dict__`存储对象成员。但,有时候访问的对象成员没有存在其中,就是这样: + + >>> class A(object): + ... pass + ... + >>> a = A() + >>> a.x + Traceback (most recent call last): + File "<stdin>", line 1, in <module> + AttributeError: 'A' object has no attribute 'x' + +`x`不是实例的成员,用`a.x`访问,就出错了,并且错误提示中报告了原因:“'A' object has no attribute 'x'” + +在很多情况下,这种报错是足够的了。但是,在某种我现在还说不出的情况下,你或许不希望这样报错,或许希望能够有某种别的提示、操作等。也就是我们更希望能在成员不存在的时候有所作为,不是等着报错。 + +要处理类似的问题,就要用到本节中的知识了。 + +##属性拦截 + +有时候,访问某个类或者实例属性,它不存在,就会异常。对于异常,总是要处理的。就好像“寻隐者不遇”,却被童子“遥指杏花村”,将你“拦截”了,不至于因为“不遇”而垂头丧气。 + +在Python中,有一些方法就具有这种“拦截”能力。 + +- `__setattr__(self, name,value)`:如果要给name赋值,就调用这个方法。 +- `__getattr__(self, name)`:如果name被访问,同时它不存在的时候,此方法被调用。 +- `__getattribute__(self, name)`:当name被访问时自动被调用(注意:这个仅能用于新式类),无论name是否存在,都要被调用。 +- `__delattr__(self, name)`:如果要删除name,这个方法就被调用。 + +用例子说明。 + + >>> class A(object): #Python 3: class A: + ... def __getattr__(self, name): + ... print "You use getattr" #Python 3: print("You use getattr"),下同,从略 + ... def __setattr__(self, name, value): + ... print "You use setattr" + ... self.__dict__[name] = value + ... + +类`A`除了两个方法,没有别的了。 + + >>> a = A() + >>> a.x + You use getattr + +`a.x`这个实例属性,本来是不存在的,但是,由于类中有了`__getattr__(self, name)`方法,当发现属性`x`不存在于对象的`__dict__`中的时候,就调用了`__getattr__`,即所谓“拦截成员”。 + + >>> a.x = 7 + You use setattr + +给对象的属性赋值时候,调用了`__setattr__(self, name, value)`方法,这个方法中有一句`self.__dict__[name] = value`,通过这个语句,就将属性和数据保存到了对象的`__dict__`中,如果再调用这个属性: + + >>> a.x + 7 + +它已经存在于对象的`__dict__`之中。 + +在上面的类中,当然可以使用`__getattribute__(self, name)`,并且,只要访问属性就会调用它。例如: + + >>> class B(object): + ... def __getattribute__(self, name): + ... print "you are useing getattribute" + ... return object.__getattribute__(self, name) + +为了与前面的类区分,新命名一个类名字。需要提醒注意,在这里返回的内容用的是`return object.__getattribute__(self, name)`,而没有使用`return self.__dict__[name]`样式。因为如果用`return self.__dict__[name]`这样的方式,就是访问`self.__dict__`,只要访问这个属性,就要调用`__getattribute__``,这样就导致了无线递归下去(死循环)。要避免之。 + + >>> b = B() + >>> b.y + you are useing getattribute + Traceback (most recent call last): + File "<stdin>", line 1, in <module> + File "<stdin>", line 4, in __getattribute__ + AttributeError: 'B' object has no attribute 'y' + >>> b.two + you are useing getattribute + Traceback (most recent call last): + File "<stdin>", line 1, in <module> + File "<stdin>", line 4, in __getattribute__ + AttributeError: 'B' object has no attribute 'two' + +访问不存在的成员,可以看到,已经被`__getattribute__`拦截了,虽然最后还是要报错的。 + + >>> b.y = 8 + >>> b.y + you are useing getattribute + 8 + +当给其赋值后,意味着已经在`__dict__`里面了,再调用,依然被拦截,但是由于已经在`__dict__`内,会把结果返回。 + +当你看到这里,是不是觉得上面的方法有点魔力呢?不错,的确是“黑魔法”。但是,它有什么具体应用呢?看下面的例子,能给你带来启发。 + + #!/usr/bin/env python + # coding=utf-8 + + """ + study __getattr__ and __setattr__ + """ + + class Rectangle(object): #Python 3: class Rectangle: + """ + the width and length of Rectangle + """ + def __init__(self): + self.width = 0 + self.length = 0 + + def setSize(self, size): + self.width, self.length = size + def getSize(self): + return self.width, self.length + + if __name__ == "__main__": + r = Rectangle() + r.width = 3 + r.length = 4 + print r.getSize() #Python 3: print(r.getSize()) + r.setSize( (30, 40) ) + print r.width #Python 3: print(r.width) + print r.length #Python 3: print(r.length) + +上面代码来自《Beginning Python:From Novice to Professional,Second Edittion》(by Magnus Lie Hetland),根据本教程的需要,稍作修改。 + + $ python 21301.py + (3, 4) + 30 + 40 + +这段代码已经可以正确运行了。但是,作为一个精益求精的程序员。总觉得那种调用方式还有可以改进的空间。比如,要给长宽赋值的时候,必须赋予一个元组,里面包含长和宽。这个能不能改进一下呢? + + #!/usr/bin/env python + # coding=utf-8 + + """ + study __getattr__ and __setattr__ + """ + + class Rectangle(object): #Python 3: class Rectangle: + """ + the width and length of Rectangle + """ + def __init__(self): + self.width = 0 + self.length = 0 + + def setSize(self, size): + self.width, self.length = size + def getSize(self): + return self.width, self.length + + size = property(getSize, setSize) + + if __name__ == "__main__": + r = Rectangle() + r.width = 3 + r.length = 4 + print r.size + r.size = 30, 40 + print r.width + print r.length + +以上代码的运行结果同上。但是,因为加了一句`size = property(getSize, setSize)`,使得调用方法是不是更优雅了呢?原来用`r.getSize()`,现在使用`r.size`,就好像调用一个属性一样。难道你不觉得眼熟吗?在[《多态和封装》](./211.md)中已经用到过property函数了,虽然写法略有差别,但是作用一样。 + +本来,这样就已经足够了。但是,因为本节中出来了特殊方法,所以,一定要用这些特殊方法从新演绎一下这段程序。虽然重新演绎的不一定比原来的好,主要目的是演示本节的特殊方法应用。 + + #!/usr/bin/env python + # coding=utf-8 + + class NewRectangle(object): + def __init__(self): + self.width = 0 + self.length = 0 + + def __setattr__(self, name, value): + if name == "size": + self.width, self.length = value + else: + self.__dict__[name] = value + + def __getattr__(self, name): + if name == "size": + return self.width, self.length + else: + raise AttributeError + + if __name__ == "__main__": + r = NewRectangle() + r.width = 3 + r.length = 4 + print r.size #Python 3: print(r.size) + r.size = 30, 40 + print r.width #Python 3: print(r.width) + print r.length #Python 3: print(r.length) + +除了类的样式变化之外,调用样式没有变。结果是一样的。 + +如果要对于这种黑魔法有更深的理解,可以阅读:[Python Attributes and Methods](http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html),读了这篇文章,对Python的对象属性和方法会有更深入的理解。 + +至此,是否注意到,我们使用了很多以双下划线开头和结尾的方法或者属性,比如`__dict__`,`__init__()`等。在Python中,用这种方法表示特殊的方法和属性,当然,这是一个惯例,之所以这样做,主要是确保这些特殊的名字不会跟你自己所定义的名称冲突,我们自己定义名称的时候,是绝少用双划线开头和结尾的。如果你需要重写这些方法,当然是可以的。 + +------ + +[总目录](./index.md)   |   [上节:定制类](./239.md)   |   [下节:迭代器](./214.md) + +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/2code/24001p3.py b/2code/24001p3.py new file mode 100644 index 0000000..1e6d469 --- /dev/null +++ b/2code/24001p3.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Rectangle(object): + + def __init__(self): + self.width = 0 + self.length = 0 + + def setSize(self, size): + self.width, self.length = size + def getSize(self): + return self.width, self.length + +if __name__ == "__main__": + r = Rectangle() + r.width = 3 + r.length = 4 + print(r.getSize()) + r.setSize( (30, 40) ) + print(r.width) + print(r.length) diff --git a/README.md b/README.md index a78d21e..de1239b 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,9 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《跟老齐学Python》(第二版):From beginner to master. +#《跟老齐学Python》(第二版) + +From beginner to master. 针对零基础的学习者,试图实现从基础到精通,还要看自己的造化。 @@ -75,8 +77,7 @@ 5. [类(5)](./209.md)==>继承,super,多重继承 6. [多态和封装](./211.md)==>多态,封装和私有化 7. [定制类](./239.md)==>类和类型,定制类 -8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` -9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 +8. [黑魔法](./240.md)==>优化内存的`__slots__`,属性拦截 10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` 11. [生成器](./215.md)==>生成器定义,yield,生成器方法 12. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 diff --git a/index.md b/index.md index bb4b91d..506811f 100644 --- a/index.md +++ b/index.md @@ -2,7 +2,9 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《跟老齐学Python》(第二版):From beginner to master. +#《跟老齐学Python》(第二版) + +From beginner to master. 针对零基础的学习者,试图实现从基础到精通,还要看自己的造化。 @@ -75,7 +77,7 @@ 5. [类(5)](./209.md)==>继承,super,多重继承 6. [多态和封装](./211.md)==>多态,封装和私有化 7. [定制类](./239.md)==>类和类型,定制类 -8. [特殊方法(1)](./212.md)==>`__dict__`和`__slots__` +8. [黑魔法](./240.md)==>优化内存的`__slots__`,属性拦截 9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` 11. [生成器](./215.md)==>生成器定义,yield,生成器方法 From c62bc4c2f415a088f4f52be859d6f3fa8d78bd3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 17:24:56 +0800 Subject: [PATCH 157/288] p3 --- 238.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/238.md b/238.md index c9a3046..bc9afb8 100644 --- a/238.md +++ b/238.md @@ -127,7 +127,7 @@ Python中有几个特殊方法比较特殊,它们分别是`__get__()`、`__set #!/usr/bin/env python #coding:utf-8 - class Foo(object): + class Foo(object): #Python 3: class Foo: one = 0 def __init__(self): @@ -157,7 +157,7 @@ Python中有几个特殊方法比较特殊,它们分别是`__get__()`、`__set #!/usr/bin/env python #coding:utf-8 - class Foo(object): + class Foo(object): #Python 3: class Foo: one = 0 def __init__(self): @@ -217,7 +217,7 @@ Python中有几个特殊方法比较特殊,它们分别是`__get__()`、`__set T = 3 return T - class Foo(object): + class Foo(object): #Python 3: class Foo: def __init__(self,name): self.name = name @@ -239,7 +239,7 @@ Python中有几个特殊方法比较特殊,它们分别是`__get__()`、`__set T = 1 - class Foo(object): + class Foo(object): #Python 3: class Foo: def __init__(self,name): self.name = name From ce1031862663ad52211bb07641938f2b26c09a26 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 17:27:16 +0800 Subject: [PATCH 158/288] p3 --- 204.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/204.md b/204.md index 7bb2278..6b55f3a 100644 --- a/204.md +++ b/204.md @@ -319,6 +319,6 @@ ------ -[总目录](./index.md)   |   [上节:函数(3)](./203.md)   |   [下节:函数练习](./205.md) +[总目录](./index.md)   |   [上节:函数(3)](./203.md)   |   [下节:函数(5)](./237.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 95ca802af8dcc4b71d41d46054595cbb39c8bd1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 20 Apr 2016 21:29:46 +0800 Subject: [PATCH 159/288] p3 --- 214.md | 219 ++++++++++++++++++++++++++++++++++------------- 2code/21401.py | 29 +++++-- 2code/21401p3.py | 31 +++++++ README.md | 2 +- index.md | 5 +- 5 files changed, 213 insertions(+), 73 deletions(-) create mode 100644 2code/21401p3.py diff --git a/214.md b/214.md index 765108b..7880f34 100644 --- a/214.md +++ b/214.md @@ -6,17 +6,63 @@ 迭代,对于读者已经不陌生了,曾有专门一节来讲述,如果印象不深,请复习[《迭代》](./128.md)。 -正如读者已知,对序列(列表、元组)、字典和文件都可以用`iter()`方法生成迭代对象,然后用`next()`方法访问。当然,这种访问不是自动的,如果用for循环,就可以自动完成上述访问了。 + >>> hasattr(list, '__iter__') + True -如果用`dir(list)`,`dir(tuple)`,`dir(file)`,`dir(dict)`来查看不同类型对象的属性,会发现它们都有一个名为`__iter__`的东西。这个应该引起读者的关注,因为它和迭代器(iterator)、内置的函数iter()在名字上是一样的,除了前后的双下划线。望文生义,我们也能猜出它肯定是跟迭代有关的东西。当然,这种猜测也不是没有根据的,其重要根据就是英文单词,如果它们之间没有一点关系,肯定不会将命名搞得一样。 +不仅仅是列表,文件、字典都有一个名为`__iter__`的方法,这说明它们都是可迭代的。 -猜对了。`__iter__`就是对象的一个特殊方法,它是迭代规则(iterator potocol)的基础。或者说,对象如果没有它,就不能返回迭代器,就没有`next()`方法,就不能迭代。 +`__iter__()`是对象的一个特殊方法,它是迭代规则(iterator potocol)的基础,有了它,说明对象是可迭代的。 ->提醒注意,如果读者用的是python3.x,迭代器对象实现的是`__next__()`方法,不是`next()`。并且,在python3.x中有一个内建函数next(),可以实现`next(it)`,访问迭代器,这相当于于python2.x中的`it.next()`(it是迭代对象)。 +跟迭代有关的一个内建函数`iter()`,它的文档中这样描述: -那些类型是list、tuple、file、dict对象有`__iter__()`方法,标着他们能够迭代。这些类型都是python中固有的,我们能不能自己写一个对象,让它能够迭代呢? + >>> help(iter) + Help on built-in function iter in module __builtin__: -当然呢!要不然python怎么强悍呢。 + iter(...) + iter(collection) -> iterator + iter(callable, sentinel) -> iterator + + Get an iterator from an object. In the first form, the argument must + supply its own iterator, or be a sequence. + In the second form, the callable is called until it returns the sentinel. + +这个函数前文介绍过,它返回一个迭代器对象。比如: + + >>> lst = [1, 2, 3, 4] + >>> iter_lst = iter(lst) + >>> iter_lst + <listiterator object at 0x02BE8D50> #Python 3返回结果:<list_iterator object at 0x00000000034CD6D8> + +从返回结果中可以看出,`iter_lst`引用的是迭代器对象。那么,`iter_lst`和`lst`有区别吗? + + >>> hasattr(lst, "__iter__") + True + >>> hasattr(iter_lst, "__iter__") + True + +它们都有`__iter__`,这是相同点,说明它们都是可迭代的。 + +但是: + +Python 2: + + >>> hasattr(lst, "next") + False + >>> hasattr(iter_lst, "next") + True + +Python 3: + + >>> hasattr(lst, "__next__") + False + >>> hasattr(iter_lst, "__next__") + True + +这就是两者的区别。我们像`iter_lst`所引用的对象那样,具有`next()`(Python 2)或者`__next__()`(Python 3)方法的对象,称之为迭代器对象。显见,迭代器对象必然是可迭代的,反之则不然。 + +Python 3中迭代器对象实现的是`__next__()`方法,不是`next()`。并且,在Python 3中有一个内建函数`next()`,可以实现`next(it)`访问迭代器,这相当于于Python 2中的`it.next()`(it是迭代对象)。 + +为了体现Python强悍,自己写一个迭代器对象。 #!/usr/bin/env python # coding=utf-8 @@ -24,16 +70,16 @@ """ the interator as range() """ - class MyRange(object): + class MyRange(object): #Python 3: class MyRange: def __init__(self, n): - self.i = 0 + self.i = 1 self.n = n def __iter__(self): return self - def next(self): - if self.i < self.n: + def next(self): #Python 3: def __next__(self): + if self.i <= self.n: i = self.i self.i += 1 return i @@ -42,65 +88,71 @@ if __name__ == "__main__": x = MyRange(7) - print "x.next()==>", x.next() - print "x.next()==>", x.next() - print "------for loop--------" - for i in x: - print i + print [i for i in x] #Python 3中使用print()函数,下同,从略 将代码保存,并运行,结果是: - $ python 21401.py - x.next()==> 0 - x.next()==> 1 - ------for loop-------- - 2 - 3 - 4 - 5 - 6 + [1, 2, 3, 4, 5, 6, 7] -以上代码的含义,是自己仿写了拥有`range()`的对象,这个对象是可迭代的。分析如下: +以上代码的含义,是自己仿写了类似`range()`的类,但是跟`range()`又有所不同,除了结果不同之外,还有: -类MyRange的初始化方法`__init__()`就不用赘述了,因为前面已经非常详细分析了这个方法,如果复习,请阅读[《类(2)》](./207md)相关内容。 +- 类`MyRange`的初始化方法`__init__()`就不用赘述了,因为前面已经非常详细分析了这个方法,如果复习,请阅读[《类(2)》](./207md)相关内容。 -`__iter__()`是类中的核心,它返回了迭代器本身。一个实现了`__iter__()`方法的对象,即意味着其实可迭代的。 +- `__iter__()`是类中的核心,它返回了迭代器本身。一个实现了`__iter__()`方法的对象,即意味着它是可迭代的。 -含有`next()`的对象,就是迭代器,并且在这个方法中,在没有元素的时候要发起`StopIteration()`异常。 +- 实现`next()`或者`__next__()`方法,从而使得这个对象是迭代器对象,并且方法中判断,在不满足条件的时候要发起`StopIteration()`异常。 -如果对以上类的调用换一种方式: +再来看`range()`(以下仅仅限于Python 2): - if __name__ == "__main__": - x = MyRange(7) - print list(x) - print "x.next()==>", x.next() + >>> a = range(7) + >>> hasattr(a, "__iter__") + True + >>> hasattr(a, "next") + False + >>> print a + [0, 1, 2, 3, 4, 5, 6] -运行后会出现如下结果: +所以我写的类和`range()`还是有很大区别的。 + +为了能深入理解迭代器的工作过程,我们这样来操作: + + if __name__ == "__main__": + x = MyRange(3) + print "self.n=",x.n,";","self.i=",x.i #Python 3中使用print()函数,下同,从略 + x.next() + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + +运行结果如下: + + self.n= 3 ; self.i= 1 + self.n= 3 ; self.i= 2 + self.n= 3 ; self.i= 3 + self.n= 3 ; self.i= 4 - $ python 21401.py - [0, 1, 2, 3, 4, 5, 6] - x.next()==> Traceback (most recent call last): - File "21401.py", line 26, in <module> - print "x.next()==>", x.next() - File "21401.py", line 21, in next + File "F:\MyGitHub\StarterLearningPython\2code\21401.py", line 32, in <module> + x.next() + File "F:\MyGitHub\StarterLearningPython\2code\21401.py", line 21, in next raise StopIteration() StopIteration -说明什么呢?`print list(x)`将对象返回值都装进了列表中并打印出来,这个正常运行了。此时指针已经移动到了迭代对象的最后一个,正如在[《迭代》](./128.md)中描述的那样,`next()`方法没有检测也不知道是不是要停止了,它还要继续下去,当继续下一个的时候,才发现没有元素了,于是返回了`StopIteration()`。 - -为什么要将用这种可迭代的对象呢?就像上面例子一样,列表不是挺好的吗? - -列表的确非常好,在很多时候效率很高,并且能够解决相当普遍的问题。但是,不要忘记一点,在某些时候,列表可能会给你带来灾难。因为在你使用列表的时候,需要将列表内容一次性都读入到内存中,这样就增加了内存的负担。如果列表太大太大,就有内存溢出的危险了。这时候需要的是迭代对象。比如斐波那契数列(在本教程多处已经提到这个著名的数列:[《练习》的练习4](./129.md),[《函数(4)》中递归举例](./204.md)): +当`next()`或者`__next__()`中的`self.i <= self.n`为假,就`raise StopIteration()`,结束迭代过程。 + +还记得斐波那契数列吗?前文已经多次用到,这里我们再次使用它,不过是要用它来做一个迭代器对象。 #!/usr/bin/env python # coding=utf-8 """ compute Fibonacci by iterator """ - __metaclass__ = type - class Fibs: + class Fibs(object): #Python 3: class Fibs: def __init__(self, max): self.max = max self.a = 0 @@ -109,7 +161,7 @@ def __iter__(self): return self - def next(self): + def next(self): #Python 3: def __next__(self): fib = self.a if fib > self.max: raise StopIteration @@ -118,7 +170,7 @@ if __name__ == "__main__": fibs = Fibs(5) - print list(fibs) + print list(fibs) #Python 3: print(list(fibs)) 运行结果是: @@ -127,16 +179,61 @@ >给读者一个思考问题:要在斐波那契数列中找出大于1000的最小的数,能不能在上述代码基础上改造得出呢? -关于列表和迭代器之间的区别,还有两个非常典型的内建函数:`range()`和`xrange()`,研究一下这两个的差异,会有所收获的。 +以上演示了迭代器的一个具体应用。综合本节上面的内容和前文对迭代的讲述,对迭代器做一个概括: + +1. 在 Python 中,迭代器是遵循迭代协议的对象。 +2. 可以使用`iter()` 以从任何序列得到迭代器(如 list, tuple, dictionary, set 等)。 +3. 编写类,实现`__iter__()`方法,以及 `next()`(Python 2)或`__next__()`(Python 3) 。当没有元素时,则引发 `StopIteration`异常。 +4. 如果有很多值,列表就会占用太多的内存,而迭代器则占用更少内存。 +5. 迭代器从第一个元素开始访问,直到所有的元素被访问完结束,只能往前不会后退。 + +迭代器不仅实用,也很有趣。看下面的操作: - range(...) - range(stop) -> list of integers - range(start, stop[, step]) -> list of integers + >>> my_lst = [x**x for x in range(4)] + >>> my_lst + [1, 1, 4, 27] + >>> for i in my_lst: print i #Python 3: print(i) - >>> dir(range) - ['__call__', '__class__', '__cmp__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__self__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__'] + 1 + 1 + 4 + 27 + >>> for i in my_lst: print i + + 1 + 1 + 4 + 27 + +我连续两次调用列表`my_lst`进行循环,都能正常进行。这个列表相当于一个耐用品,可以反复使用。 -从`range()`的帮助文档和方法中可以看出,它的结果是一个列表。但是,如果用`help(xrange)`查看: +在Python中,除了列表解析式,还可以做元组解析式,方法非常简单: + + >>> my_tup = (x**x for x in range(4)) + >>> my_tup + <generator object <genexpr> at 0x02B7C2B0> + >>> for i in my_tup: print i + + 1 + 1 + 4 + 27 + >>> for i in my_tup: print i + +对于`my_tup`,我们已经看到,它是generator对象,关于这个名称先不管它,后面会讲解。当把它用到循环中,它明显是一次性用品,只能使用一次,再次使用,就什么也不显示了。 + + >>> type(my_lst) + <type 'list'> + >>> type(my_tup) + <type 'generator'> + +`my_lst`和`my_tup`是两种不同的对象,并且`my_tup`也不是元组,它是一个generator。其它先不管,请读者在你的Python交互模式中输入`dir(my_tup)`,如果是Python 2,请查找是否有`__iter__`和`next`;如果是Python 3则查看是否有`__iter__`和`__next__`。答案是肯定的。这也是`my_lst`和`my_tup`所引用对象的区别。 + +因此,`my_tup`引用的是一个迭代器对象。它的`next()`或者`__next__()`方法,使得它只能向前。 + +关于列表和迭代器之间的区别,还有两个非常典型的内建函数:`range()`和`xrange()`,研究一下这两个的差异,会有所收获的。 + +`range()`的结果是一个列表。但是,如果用`help(xrange)`查看(仅限于Python 2): class xrange(object) | xrange(stop) -> xrange object @@ -146,14 +243,16 @@ | generates the numbers in the range on demand. For looping, this is | slightly faster than range() and more memory efficient. -`xrange()`返回的是对象,并且进一步告诉我们,类似`range()`,但不是列表。在循环的时候,它跟`range()`相比“slightly faster than range() and more memory efficient”,稍快并更高的内存效率(就是省内存呀)。查看它的方法: +`xrange()`类似`range()`,但返回的不是列表。在循环的时候,它跟`range()`相比“slightly faster than range() and more memory efficient”,稍快并更高的内存效率(就是省内存呀)。查看它的方法: >>> dir(xrange) ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__getitem__', '__hash__', '__init__', '__iter__', '__len__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__'] 看到令人兴奋的`__iter__`了吗?说明它是可迭代的,它返回的是一个可迭代的对象。 -也就是说,通过`range()`得到的列表,会一次性被读入内存,而`xrange()`返回的对象,则是需要一个数值才从返回一个数值。比如这样一个应用: +也就是说,通过`range()`得到的列表,会一次性被读入内存,而`xrange()`返回的对象,则是需要一个数值才从返回一个数值。 + +上述论述仅适用于Python 2,因为在Python 3里面,将`range()`优化了,相当于Python 2里面`xrange()`,所以,在Python 3中就不再有`xrange()`。 还记得`zip()`吗? @@ -164,7 +263,7 @@ 如果两个列表的个数不一样,就会以短的为准了,比如: - >>> zip(range(4), xrange(100000000)) + >>> zip(range(4), xrange(100000000)) #适用于Python 2 [(0, 0), (1, 1), (2, 2), (3, 3)] 第一个`range(4)`产生的列表被读入内存;第二个是不是也太长了?但是不用担心,它根本不会产生那么长的列表,因为只需要前4个数值,它就提供前四个数值。如果你要修改为`range(100000000)`,就要花费时间了,可以尝试一下哦。 @@ -173,6 +272,6 @@ ------ -[总目录](./index.md)   |   [上节:特殊方法(2)](./213.md)   |   [下节:生成器](./215.md) +[总目录](./index.md)   |   [上节:黑魔法](./240.md)   |   [下节:生成器](./215.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/2code/21401.py b/2code/21401.py index 7425ebe..9a1924d 100644 --- a/2code/21401.py +++ b/2code/21401.py @@ -6,14 +6,14 @@ """ class MyRange(object): def __init__(self, n): - self.i = 0 + self.i = 1 self.n = n def __iter__(self): return self def next(self): - if self.i < self.n: + if self.i <= self.n: i = self.i self.i += 1 return i @@ -21,10 +21,21 @@ def next(self): raise StopIteration() if __name__ == "__main__": - x = MyRange(7) - print list(x) - print "x.next()==>", x.next() - print "x.next()==>", x.next() - print "------for loop--------" - for i in x: - print i + x = MyRange(3) + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + x.next() + print "self.n=",x.n,";","self.i=",x.i + + #print [i for i in x] + #print list(x) + #print "x.next()==>", x.next() + #print "x.next()==>", x.next() + #print "------for loop--------" + #for i in x: + # print i diff --git a/2code/21401p3.py b/2code/21401p3.py new file mode 100644 index 0000000..107b94e --- /dev/null +++ b/2code/21401p3.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# coding=utf-8 + +""" +the interator as range() +""" +class MyRange(object): + def __init__(self, n): + self.i = 1 + self.n = n + + def __iter__(self): + return self + + def __next__(self): + if self.i <= self.n: + i = self.i + self.i += 1 + return i + else: + raise StopIteration() + +if __name__ == "__main__": + x = MyRange(7) + print([i for i in x]) + #print list(x) + #print "x.next()==>", x.next() + #print "x.next()==>", x.next() + #print "------for loop--------" + #for i in x: + # print i diff --git a/README.md b/README.md index de1239b..3575361 100644 --- a/README.md +++ b/README.md @@ -78,7 +78,7 @@ From beginner to master. 6. [多态和封装](./211.md)==>多态,封装和私有化 7. [定制类](./239.md)==>类和类型,定制类 8. [黑魔法](./240.md)==>优化内存的`__slots__`,属性拦截 -10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` +9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` 11. [生成器](./215.md)==>生成器定义,yield,生成器方法 12. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 diff --git a/index.md b/index.md index 506811f..2b925e0 100644 --- a/index.md +++ b/index.md @@ -71,15 +71,14 @@ From beginner to master. ##第肆章 类 1. [类(1)](./206.md)==>类的初步认识和基本概念理解:问题空间、对象、面向对象、类和实例化类 -2. [类(2)](./207.md)==>新式类和旧式类,类的命名,构造函数,实例化及方法和属性,self的作用 +2. [类(2)](./207.md)==>新式类和旧式类,初步创建类和实例化 3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 5. [类(5)](./209.md)==>继承,super,多重继承 6. [多态和封装](./211.md)==>多态,封装和私有化 7. [定制类](./239.md)==>类和类型,定制类 8. [黑魔法](./240.md)==>优化内存的`__slots__`,属性拦截 -9. [特殊方法(2)](./213.md)==>`__getattr__`,`__setattr__`以及查找属性顺序,双划线解释 -10. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` +9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` 11. [生成器](./215.md)==>生成器定义,yield,生成器方法 12. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 From 47008d1aacf77417ebcf8195f87b2a842645efef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Sun, 24 Apr 2016 20:18:54 +0800 Subject: [PATCH 160/288] p3 --- 214.md | 2 +- 215.md | 178 ++++++++++++++++----------------------------------------- 2 files changed, 49 insertions(+), 131 deletions(-) diff --git a/214.md b/214.md index 7880f34..43ebcb8 100644 --- a/214.md +++ b/214.md @@ -263,7 +263,7 @@ Python 3中迭代器对象实现的是`__next__()`方法,不是`next()`。并 如果两个列表的个数不一样,就会以短的为准了,比如: - >>> zip(range(4), xrange(100000000)) #适用于Python 2 + >>> zip(range(4), xrange(100000000)) #适用于Python 2,Python 3中的range()已经具有了Python 2的xrange()功能 [(0, 0), (1, 1), (2, 2), (3, 3)] 第一个`range(4)`产生的列表被读入内存;第二个是不是也太长了?但是不用担心,它根本不会产生那么长的列表,因为只需要前4个数值,它就提供前四个数值。如果你要修改为`range(100000000)`,就要花费时间了,可以尝试一下哦。 diff --git a/215.md b/215.md index e706717..ee05773 100644 --- a/215.md +++ b/215.md @@ -2,88 +2,35 @@ #生成器 -生成器(英文:generator)是一个非常迷人的东西,也常被认为是python的高级编程技能。不过,我依然很乐意在这里跟读者——尽管你可能是一个初学者——探讨这个话题,因为我相信读者看本教程的目的,绝非仅仅将自己限制于初学者水平,一定有一颗不羁的心——要成为python高手。那么,开始了解生成器吧。 +上节中,我们曾经做过这样的操作: -还记得上节的“迭代器”吗?生成器和迭代器有着一定的渊源关系。生成器必须是可迭代的,诚然它又不仅仅是迭代器,但除此之外,又没有太多的别的用途,所以,我们可以把它理解为非常方便的自定义迭代器。 - -最这个关系实在感觉有点糊涂了。稍安勿躁,继续阅读即明了。 - -##简单的生成器 - - >>> my_generator = (x*x for x in range(4)) - -这是不是跟列表解析很类似呢?仔细观察,它不是列表,如果这样的得到的才是列表: - - >>> my_list = [x*x for x in range(4)] - -以上两的区别在于是`[]`还是`()`,虽然是细小的差别,但是结果完全不一样。 - - >>> dir(my_generator) - ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', - '__iter__', - '__name__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'gi_code', 'gi_frame', 'gi_running', - 'next', - 'send', 'throw'] - -为了容易观察,我将上述结果进行了重新排版。是不是发现了在迭代器中必有的方法`__iter__()`和`next()`,这说明它是迭代器。如果是迭代器,就可以用for循环来依次读出其值。 - - >>> for i in my_generator: - ... print i - ... - 0 - 1 - 4 - 9 - >>> for i in my_generator: - ... print i - ... - -当第一遍循环的时候,将my_generator里面的值依次读出并打印,但是,当再读一次的时候,就发现没有任何结果。这种特性也正是迭代器所具有的。 - -如果对那个列表,就不一样了: - - >>> for i in my_list: - ... print i - ... - 0 - 1 - 4 - 9 - >>> for i in my_list: - ... print i - ... - 0 - 1 - 4 - 9 - -难道生成器就是把列表解析中的`[]`换成`()`就行了吗?这仅仅是生成器的一种表现形式和使用方法罢了,仿照列表解析式的命名,可以称之为“生成器解析式”(或者:生成器推导式、生成器表达式)。 - -生成器解析式是有很多用途的,在不少地方替代列表,是一个不错的选择。特别是针对大量值的时候,如上节所说的,列表占内存较多,迭代器(生成器是迭代器)的优势就在于少占内存,因此无需将生成器(或者说是迭代器)实例化为一个列表,直接对其进行操作,方显示出其迭代的优势。比如: + >>> my_tup = (x**x for x in range(4)) + >>> my_tup + <generator object <genexpr> at 0x02B7C2B0> + +generator,翻译过来是生成器。 - >>> sum(i*i for i in range(10)) - 285 +生成器是一个非常迷人的东西,也常被认为是Python的高级编程技能。不过,我依然很乐意在这里跟读者——尽管你可能是一个初学者——探讨这个话题,因为我相信读者看本教程的目的,绝非仅仅将自己限制于初学者水平,一定有一颗不羁的心——要成为Python高手。那么,开始了解生成器吧。 -请读者注意观察上面的`sum()`运算,不要以为里面少了一个括号,就是这么写。是不是很迷人?如果列表,你不得不: +既然在探讨“迭代器”的时候出现了生成器,这就说明生成器和迭代器有着一定的渊源关系。 - >>> sum([i*i for i in range(10)]) - 285 +没错!生成器必须是可迭代的,它首先是迭代器。 -通过生成器解析式得到的生成器,掩盖了生成器的一些细节,并且适用领域也有限。下面就要剖析生成器的内部,深入理解这个魔法工具。 +但,它毕竟还是生成器,具有生成器的特质。 -##定义和执行过程 +##定义生成器 -yield这个词在汉语中有“生产、出产”之意,在python中,它作为一个关键词(你在变量、函数、类的名称中就不能用这个了),是生成器的标志。 +定义生成器,必须使用`yield`关键词。yield这个词在汉语中有“生产、出产”之意,在Python中,它作为一个关键词,是生成器的标志。 >>> def g(): ... yield 0 ... yield 1 ... yield 2 - ... + >>> g <function g at 0xb71f3b8c> -建立了一个非常简单的函数,跟以往看到的函数唯一不同的地方是用了三个yield语句。然后进行下面的操作: +建立了一个非常简单的函数,里面有`yield`发起的三个语句。下面看如何使用它: >>> ge = g() >>> ge @@ -91,14 +38,23 @@ yield这个词在汉语中有“生产、出产”之意,在python中,它作 >>> type(ge) <type 'generator'> -上面建立的函数返回值是一个生成器(generator)类型的对象。 +调用函数,得到了一个生成器(generator)对象。 + +Python 2: >>> dir(ge) ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__name__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'gi_code', 'gi_frame', 'gi_running', 'next', 'send', 'throw'] -在这里看到了`__iter__()`和`next()`,说明它是迭代器。既然如此,当然可以: +Python 3: - >>> ge.next() + >>> dir(ge) + ['__class__', '__del__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__lt__', '__name__', '__ne__', '__new__', '__next__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'gi_code', 'gi_frame', 'gi_running', 'gi_yieldfrom', 'send', 'throw'] + +在这里看到了`__iter__()`和`next()`或`__next__()`,虽然我们在函数体内并没有显示地写出`__iter__()`、`next()`和`__next__()`,仅仅写了`yield`语句,它就已经成为迭代器了。 + +既然如此,当然可以: + + >>> ge.next() #Python 3: ge.__next__(),下同,从略 0 >>> ge.next() 1 @@ -109,14 +65,18 @@ yield这个词在汉语中有“生产、出产”之意,在python中,它作 File "<stdin>", line 1, in <module> StopIteration -从这个简单例子中可以看出,那个含有yield关键词的函数返回值是一个生成器类型的对象,这个生成器对象就是迭代器。 +从这个简单例子中可以看出,那个含有`yield`关键词的函数是一个生成器对象,这个生成器对象也是迭代器。 + +于是可以这样定义:把含有`yield`语句的函数称作生成器。 -我们把含有yield语句的函数称作生成器。生成器是一种用普通函数语法定义的迭代器。通过上面的例子可以看出,这个生成器(也是迭代器),在定义过程中并没有像上节迭代器那样写`__iter__()`和`next()`,而是只要用了yield语句,那个普通函数就神奇般地成为了生成器,也就具备了迭代器的功能特性。 +生成器是一种用普通函数语法定义的迭代器。 -yield语句的作用,就是在调用的时候返回相应的值。详细剖析一下上面的运行过程: +通过上面的例子可以看出,这个生成器(也是迭代器),在定义过程中并没有像上节迭代器那样写`__iter__()`和`next()`,而是只要用了yield语句,那个普通函数就神奇般地成为了生成器,也就具备了迭代器的功能特性。 -1. `ge = g()`:除了返回生成器之外,什么也没有操作,任何值也没有被返回。 -2. `ge.next()`:直到这时候,生成器才开始执行,遇到了第一个yield语句,将值返回,并暂停执行(有的称之为挂起)。 +`yield`语句的作用,就是在调用的时候返回相应的值。详细剖析一下上面的运行过程: + +1. `ge = g()`:返回生成器之外。 +2. `ge.next()`:生成器才开始执行,遇到了第一个yield语句,将值返回,并暂停执行(有的称之为挂起)。 3. `ge.next()`:从上次暂停的位置开始,继续向下执行,遇到yield语句,将值返回,又暂停。 4. `gen.next()`:重复上面的操作。 5. `gene.next()`:从上面的挂起位置开始,但是后面没有可执行的了,于是`next()`发出异常。 @@ -125,10 +85,12 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 ##yield -为了弄清楚yield和return的区别,我们写两个没有什么用途的函数: +函数返回值,本来已经有了一个`return`,现在又出现了`yield`,这两个有什么区别? + +为了区别,我们写两个没有什么用途的函数: >>> def r_return(n): - ... print "You taked me." + ... print "You taked me." #Python 3: print("You taked me."),下同,从略 ... while n > 0: ... print "before return" ... return n @@ -141,12 +103,12 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 >>> rr 3 -从函数被调用的过程可以清晰看出,`rr = r_return(3)`,函数体内的语句就开始执行了,遇到return,将值返回,然后就结束函数体内的执行。所以return后面的语句根本没有执行。这是return的特点,关于此特点的详细说明请阅读[《函数(2)》中的返回值相关内容](./202)。 +从函数被调用的过程可以清晰看出,`rr = r_return(3)`,函数体内的语句就开始执行了,遇到`return`,将值返回,然后就结束函数体内的执行。所以`return`后面的语句根本没有执行。这是`return`的特点,关于此特点的详细说明请阅读[《函数(2)》中的返回值相关内容](./202.md)。 下面将return改为yield: >>> def y_yield(n): - ... print "You taked me." + ... print "You taked me." #Python 3: print("You taked me."),下同,从略 ... while n > 0: ... print "before yield" ... yield n @@ -154,7 +116,7 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 ... print "after yield" ... >>> yy = y_yield(3) #没有执行函数体内语句 - >>> yy.next() #开始执行 + >>> yy.next() #Python 3: yy.__next__(),下同,从略 You taked me. before yield 3 #遇到yield,返回值,并暂停 @@ -172,11 +134,11 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 File "<stdin>", line 1, in <module> StopIteration -结合注释和前面对执行过程的分析,读者一定能理解yield的特点了,也深知与return的区别了。 +结合注释和前面对执行过程的分析,读者一定能理解`yield`的特点了,也深知与`return`的区别了。 -一般的函数,都是止于return。作为生成器的函数,由于有了yield,则会遇到它挂起,如果还有return,遇到它就直接抛出SoptIteration异常而中止迭代。 +一般的函数,都是止于`return`。作为生成器的函数,由于有了`yield`,则会遇到它挂起。 -斐波那契数列已经是老相识了。不论是循环、迭代都用它举例过,现在让我们还用它吧,只不过是要用上yield: +斐波那契数列已经是老相识了。不论是循环、迭代都用它举例过,现在让我们还用它吧,只不过是要用上`yield`。 #!/usr/bin/env python # coding=utf-8 @@ -194,60 +156,16 @@ yield语句的作用,就是在调用的时候返回相应的值。详细剖析 if __name__ == "__main__": f = fibs(10) for i in f: - print i , + print i , #Python 3: print(i, end=',') 运行结果如下: $ python 21501.py 1 1 2 3 5 8 13 21 34 55 -用生成器方式实现的斐波那契数列是不是跟以前的有所不同了呢?读者可以将本教程中已经演示过的斐波那契数列实现方式做一下对比,体会各种方法的差异。 - -经过上面的各种例子,已经明确,一个函数中,只要包含了yield语句,它就是生成器,也是迭代器。这种方式显然比前面写迭代器的类要简便多了。但,并不意味着上节的就被抛弃。是生成器还是迭代器,都是根据具体的使用情景而定。 - -##生成器方法 - -在python2.5以后,生成器有了一个新特征,就是在开始运行后能够为生成器提供新的值。这就好似生成器和“外界”之间进行数据交流。 - - >>> def repeater(n): - ... while True: - ... n = (yield n) - ... - >>> r = repeater(4) - >>> r.next() - 4 - >>> r.send("hello") - 'hello' - -当执行到`r.next()`的时候,生成器开始执行,在内部遇到了`yield n`挂起。注意在生成器函数中,`n = (yield n)`中的`yield n`是一个表达式,并将结果赋值给n,虽然不严格要求它必须用圆括号包裹,但是一般情况都这么做,请读者也追随这个习惯。 - -当执行`r.send("hello")`的时候,原来已经被挂起的生成器(函数)又被唤醒,开始执行`n = (yield n)`,也就是将send()方法发送的值返回。这就是在运行后能够为生成器提供值的含义。 - -如果接下来再执行`r.next()`会怎样? - - >>> r.next() - -什么也没有,其实就是返回了None。按照前面的叙述,读者可以看到,这次执行`r.next()`,由于没有传入任何值,yield返回的就只能是None. - -还要注意,send()方法必须在生成器运行后并挂起才能使用,也就是yield至少被执行一次。如果不是这样: - - >>> s = repeater(5) - >>> s.send("how") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: can't send non-None value to a just-started generator - -就报错了。但是,可将参数设为None: - - >>> s.send(None) - 5 - -这时返回的是调用函数的时传入的值。 - -此外,还有两个方法:close()和throw() +用生成器方式实现的斐波那契数列是不是跟以前的有所不同了呢?读者可以将本书中已经演示过的斐波那契数列实现方式做一下对比,体会各种方法的差异。 -- throw(type, value=None, traceback=None):用于在生成器内部(生成器的当前挂起处,或未启动时在定义处)抛出一个异常(在yield表达式中)。 -- close():调用时不用参数,用于关闭生成器。 +经过上面的各种例子,已经明确,一个函数中,只要包含了`yield`语句,它就是生成器,也是迭代器。这种方式显然比前面写迭代器的类要简便多了。但,并不意味着上节的就被抛弃。是生成器还是迭代器,都是根据具体的使用情景而定。 最后一句,你在编程中,不用生成器也可以。 From b5af585933a603cdab9bf4f0ccbbb0fd15617142 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Sun, 24 Apr 2016 21:02:09 +0800 Subject: [PATCH 161/288] p3 --- 235.md | 32 ++++++++++++++++---------------- 2code/23502p3.py | 27 +++++++++++++++++++++++++++ 2 files changed, 43 insertions(+), 16 deletions(-) create mode 100644 2code/23502p3.py diff --git a/235.md b/235.md index 855157e..680270e 100644 --- a/235.md +++ b/235.md @@ -14,7 +14,7 @@ 如果把它作为一个概念来阐述,似乎有点多余,因为从字面上也可以有一丝的体会,但是,我要说的是,那点直觉的体会不一定等于理性的严格定义,特别是周遭事物越来越复杂的时候。 -“上下文”的英文是context,在网上检索了一下关于“上下文”的说法,发现没有什么严格的定义,另外,不同的语言环境,对“上下文管理”有不同的说法。根据我个人的经验和能看到的某些资料,我以为可以把“上下文”理解为某一些语句构成的一个环境(也可以说是代码块),所谓“管理”就是要在这个环境中做一些事情,做什么事情呢?就Python而言,是要将前面某个语句(“上文”)干的事情独立成为对象,然后在后面(“下文”)中使用这个对象来做事情。 +“上下文”的英文是context,在网上检索了一下关于“上下文”的说法,发现没有什么严格的定义,另外,不同的语言环境,对“上下文管理”有不同的说法。根据我个人的经验和能看到的某些资料,窃以为可以把“上下文”理解为某一些语句构成的一个环境(也可以说是代码块),所谓“管理”就是要在这个环境中做一些事情,做什么事情呢?就Python而言,是要将前面某个语句(“上文”)干的事情独立成为对象,然后在后面(“下文”)中使用这个对象来做事情。 **上下文管理协议** @@ -32,12 +32,12 @@ >>> name = "laoqi" >>> if name == "laoqi": - ... print name + ... print name #Python 3: print(name) ... laoqi >>> if name == "laoqi": ... for i in name: - ... print i, + ... print i, #Python 3: print(i, end=',') ... l a o q i @@ -72,7 +72,6 @@ 然后写出下面的代码,实现上述目的: - #!/usr/bin/env python # coding=utf-8 @@ -97,26 +96,25 @@ 可见上下文管理器是必要的,因为它让代码优雅了,当然优雅只是表象,还有更深层次的含义,继续阅读下面的内容能有深入体会。 -**更深入** +##深入理解 前面已经说了,上下文管理器执行了`__enter__()`和`__exit__()`方法,可是在`with`语句中哪里看到了这两个方法呢? 为了解把这个问题解释清楚,需要先做点别的操作,虽然工程中一般不需要做。 - #!/usr/bin/env python # coding=utf-8 class ContextManagerOpenDemo(object): def __enter__(self): - print "Starting the Manager." + print "Starting the Manager." #Python 3: print("Starting the Manager.") def __exit__(self, *others): - print "Exiting the Manager." + print "Exiting the Manager." #Python 3: print("Exiting the Manager.") with ContextManagerOpenDemo(): - print "In the Manager." + print "In the Manager." #Python 3: print("In the Manager.") 在上面的代码示例中,我们写了一个类`ContextManagerOpenDemo()`,你就把它理解为我自己写的`Open()`吧,当然使最简版本了。在这个类中,`__enter__()`方法和`__exit__()`方法都比较简单,就是要检测是否执行该方法。 @@ -142,18 +140,18 @@ self.mode = mode def __enter__(self): - print "Starting the Manager." + print "Starting the Manager." #Python 3: print("Starting the Manager.") self.open_file = open(self.filename, self.mode) return self.open_file def __exit__(self, *others): self.open_file.close() - print "Exiting the Manager." + print "Exiting the Manager." #Python 3: print("Exiting the Manager.") with ContextManagerOpenDemo("23501.txt", 'r') as reader: - print "In the Manager." + print "In the Manager." #Python 3: print("In the Manager.") for line in reader: - print line + print line #Python 3: print(line) 这段代码的意图主要是: @@ -173,7 +171,7 @@ Exiting the Manager. -在上述代码中,我们没有对异常进行处理,也就是把异常隐藏了,不管在代码块执行时候遇到什么异常,都是要离开代码块,那么就立刻让`__exit__()`方法接管了。 +在上述代码中,我们没有显示地写捕获异常的语句,不管在代码块执行时候遇到什么异常,都是要离开代码块,那么就立刻让`__exit__()`方法接管了。 如果要把异常显现出来,也使可以,可以改写`__exit__()`方法。例如: @@ -206,7 +204,7 @@ Python中的这个模块使上下文管理中非常好用的东东,这也是 ###contextlib.closing() -要想知道`contextlib.closing()`的使用方法,最常用的方法就是`help()`,这是我们的一贯做法,胜过查阅其它任何资料。 +要想知道`contextlib.closing()`的使用方法,最常用的方法就是`help()`,这是我们的一贯做法。 Help on class closing in module contextlib: @@ -260,13 +258,15 @@ contextlib.contextmanager是一个装饰器,它作用于生成器函数(也 @contextmanager def demo(): - print "before yield." + print "before yield." yield "contextmanager demo." print "after yield." with demo() as dd: print "the word is: %s" % dd +尊重引用的文章,所以上述代码就不再注释Python 3下如何修改了。如果读者是使用Python 3的,可以自行将代码中的`print`语句修改为`print()`函数式样。 + 运行结果是: $ python 23504.py diff --git a/2code/23502p3.py b/2code/23502p3.py new file mode 100644 index 0000000..220098e --- /dev/null +++ b/2code/23502p3.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python +# coding=utf-8 + +class ContextManagerOpenDemo(object): + def __init__(self, filename, mode): + self.filename = filename + self.mode = mode + + def __enter__(self): + print("Starting the Manager.") + self.open_file = open(self.filename, self.mode) + return self.open_file + + def __exit__(self, *others): + self.open_file.close() + print("Exiting the Manager.") + + #def __exit__(self, exc_type, exc_value, exc_traceback): + #return SyntaxError != exc_type + #return False + +with ContextManagerOpenDemo("23501.txt", 'r') as reader: +#with ContextManagerOpenDemo(): + print("In the Manager.") + for line in reader: + print(line) + From 889f0309e2e6150ce8e6418319e634e5730bc090 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 09:29:03 +0800 Subject: [PATCH 162/288] p3 --- 202.md | 84 +------------------------ 207.md | 2 + 236.md | 2 +- 241.md | 179 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 4 +- index.md | 3 +- 6 files changed, 187 insertions(+), 87 deletions(-) create mode 100644 241.md diff --git a/202.md b/202.md index d740450..0c75e77 100644 --- a/202.md +++ b/202.md @@ -186,11 +186,7 @@ 所有这些属性,都可以用句点的方式调用。 -##概念辨析 - -有几个概念,是编程的时候常用到的。从某个角度讲,世界就是用概念构成的。如果没有概念,很难准确描述清楚世界。 - -###参数和变量 +##参数和变量 函数的参数,还是很有话题的。比如在别的程序员嘴里,你或许听说过“形参”、“实参”、“参数”等名词,到底指什么呢? @@ -257,84 +253,6 @@ 结合前面学习过的列表能够被原地修改知识,加上刚才说的参数特点,你是不是能理解上面的操作呢? -###全局变量和局部变量 - -虽然是讲参数,但是关于全局变量和局部变量的区别也要先弄清楚,因为关系到函数内外有别的大事。 - -下面是一段代码,注意这段代码中有一个函数`funcx()`,这个函数里面有一个`x=9`,在函数的前面也有一个`x=2`。 - - x = 2 - - def funcx(): - x = 9 - print "this x is in the funcx:-->", x #Python 3请自动修改为print(),下同,从略 - - funcx() - print "--------------------------" - print "this x is out of funcx:-->", x - -这段代码输出的结果是什么呢?看: - - this x is in the funcx:--> 9 - -------------------------- - this x is out of funcx:--> 2 - -从输出中可以看出,运行`funcx()`,输出了`funcx()`里面的变量`x`引用的对象9;然后执行代码中的最后一行`print "this x is out of funcx:-->",x`。 - -特别要关注的是,前一个`x`输出的是函数内部的变量`x`;后一个`x`输出的是函数外面的变量`x`。两个变量彼此没有互相影响,虽然都是`x`。两个`x`各自在各自的领域内起到作用。 - -把那个只在函数体内(某个范围内)起作用的变量称之为**局部变量**。 - -有局部,就有对应的全部,在汉语中,全部变量,似乎有歧义,幸亏汉语丰富,于是又取了一个名词:**全局变量** - - x = 2 - def funcx(): - global x #跟上面函数的不同之处 - x = 9 - print "this x is in the funcx:-->",x - - funcx() - print "--------------------------" - print "this x is out of funcx:-->",x - -以上两段代码的不同之处在于,后者在函数内多了一个`global x`,这句话的意思是在声明`x`是全局变量,也就是说这个`x`跟函数外面的那个`x`同一个,接下来通过`x=9`将x的引用对象变成了9。所以,就出现了下面的结果。 - - this x is in the funcx:--> 9 - -------------------------- - this x is out of funcx:--> 9 - -好似全局变量能力很强悍,能够统统率函数内外。但是,要注意,这个东西要慎重使用,因为往往容易带来变量的混乱。内外有别,在程序中一定要注意的。 - -###命名空间 - -这是一个比较不容易理解的概念,特别是对于初学者而言,似乎它很飘渺。我在维基百科中看到对它的定义,不仅定义比较好,连里面的例子都不错。所以,抄录下来,帮助读者理解这个名词。 - ->命名空间(英语:Namespace)表示标识符(identifier)的可见范围。一个标识符可在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。这样,在一个新的命名空间中可定义任何标识符,它们不会与任何已有的标识符发生冲突,因为已有的定义都处于其它命名空间中。 - ->例如,设Bill是X公司的员工,工号为123,而John是Y公司的员工,工号也是123。由于两人在不同的公司工作,可以使用相同的工号来标识而不会造成混乱,这里每个公司就表示一个独立的命名空间。如果两人在同一家公司工作,其工号就不能相同了,否则在支付工资时便会发生混乱。 - ->这一特点是使用命名空间的主要理由。在大型的计算机程序或文档中,往往会出现数百或数千个标识符。命名空间(或类似的方法,见“命名空间的模拟”一节)提供一隱藏區域標識符的機制。通过将逻辑上相关的标识符组织成相应的命名空间,可使整个系统更加模块化。 - ->在编程语言中,命名空间是对作用域的一种特殊的抽象,它包含了处于该作用域内的标识符,且本身也用一个标识符来表示,这样便将一系列在逻辑上相关的标识符用一个标识符组织了起来。许多现代编程语言都支持命名空间。在一些编程语言(例如C++和Python)中,命名空间本身的标识符也属于一个外层的命名空间,也即命名空间可以嵌套,构成一个命名空间树,树根则是无名的全局命名空间。 - ->函数和类的作用域可被視作隱式命名空间,它們和可見性、可訪問性和对象生命周期不可分割的联系在一起。 - -显然,用“命名空间”或者“作用域”这样的名词,就是因为有了函数(后面还会有类)之后,在函数内外都可能有外形一样的符号(标识符),在python中(乃至于其它高级语言),通常就是变量,为了区分此变量非彼变量(虽然外形一样),需要用这样的东西来框定每个变量所对应的值(发生作用的范围)。 - -前面已经讲过,变量和对象(就是所变量所对应的值)之间的关系是:变量类似标签,贴在了对象上。也就是,通过赋值语句实现了一个变量标签对应一个数据对象(值),这种对应关系让你想起了什么?映射!python中唯一的映射就是dict,里面有“键值对”。变量和值得关系就有点像“键”和“值”的关系。有一个内建函数vars,可以帮助我们研究一下这种对应关系。 - - >>> x = 7 - >>> scope = vars() - >>> scope['x'] - 7 - >>> scope['x'] += 1 - >>> x - 8 - >>> scope['x'] - 8 - -既然如此,诚如前面的全局变量和局部变量,即使是同样一个变量名称。但是它在不同范围(还是用“命名空间”这个词是不是更专业呢?)对应不同的值。 - ------ [总目录](./index.md)   |   [上节:函数(1)](./201.md)   |   [下节:函数(3)](./203.md) diff --git a/207.md b/207.md index 1606119..772b490 100644 --- a/207.md +++ b/207.md @@ -220,6 +220,8 @@ Python 3: `girl.color("white")`之所以要给参数传值,是因为`def color(self, color)`中有参数`color`。另外,这个方法里面也使用了`self.name`实例属性。最终该方法返回的是一个字典。所以`print her_color`或者`print(her_color)`的结果是`{'canglaoshi': 'white'}`。 +刚才以`girl = Person("canglaoshi")`的方式,建立了一个实例,仿照它,还可以建立更多的实例,比如`boy = Person("zhangsan")`等等。也就是一个类,可以建立多个实例。所以“类提供默认行为,是实例的工厂”(源自Learning Python),这句话道破了类和实例的关系。所谓工厂,就是可以用同一个模子做出很多具体的产品。类就是那个模子,实例就是具体的产品。 + 这就是通过类建立实例,并且通过实例来调用其属性和方法的过程。 ------ diff --git a/236.md b/236.md index e35c96d..53964b0 100644 --- a/236.md +++ b/236.md @@ -94,6 +94,6 @@ zip()的参数是可迭代对象。例如: ------ -[总目录](./index.md)   |   [上节:函数练习](./205.md)   |   [下节:类(1)](./206.md) +[总目录](./index.md)   |   [上节:函数练习](./205.md)   |   [下节:命名空间](./241.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/241.md b/241.md new file mode 100644 index 0000000..0c7bad7 --- /dev/null +++ b/241.md @@ -0,0 +1,179 @@ +>Let the word of Christ dwell in you richly in all wisdom; teaching and admonishing one another in psalms and hymns and spiritual songs, singing with grrace in your hearts tto the Lord. And whatsoever ye do in word or deed, do all in the name of the Lord Jesus, giving thanks to God and the Father by him. (COLOSSIANS 3:14-15) + +#命名空间 + +命名空间,英语叫做namespace,是很多编程语言中都会出现的术语。所以,有必要了解。 + +##全局变量和局部变量 + +全局变量和局部变量,是理解命名空间的起始。 + +下面是一段代码,注意这段代码中有一个函数`funcx()`,这个函数里面有一个`x=9`,在函数的前面也有一个`x=2`。 + + x = 2 + + def funcx(): + x = 9 + print "this x is in the funcx:-->", x #Python 3请自动修改为print(),下同,从略 + + funcx() + print "--------------------------" + print "this x is out of funcx:-->", x + +这段代码输出的结果是什么呢?看: + + this x is in the funcx:--> 9 + -------------------------- + this x is out of funcx:--> 2 + +从输出中可以看出,运行`funcx()`,输出了`funcx()`里面的变量`x`引用的对象9;然后执行代码中的最后一行`print "this x is out of funcx:-->",x`。 + +特别要关注的是,前一个`x`输出的是函数内部的变量`x`;后一个`x`输出的是函数外面的变量`x`。两个变量彼此没有互相影响,虽然都是`x`。两个`x`各自在各自的领域内起到作用。 + +把那个只在函数体内(某个范围内)起作用的变量称之为**局部变量**。 + +有局部,就有对应的全部,在汉语中,全部变量,似乎有歧义,幸亏汉语丰富,于是又取了一个名词:**全局变量** + + x = 2 + def funcx(): + global x #跟上面函数的不同之处 + x = 9 + print "this x is in the funcx:-->",x + + funcx() + print "--------------------------" + print "this x is out of funcx:-->",x + +以上两段代码的不同之处在于,后者在函数内多了一个`global x`,这句话的意思是在声明`x`是全局变量,也就是说这个`x`跟函数外面的那个`x`同一个,接下来通过`x=9`将x的引用对象变成了9。所以,就出现了下面的结果。 + + this x is in the funcx:--> 9 + -------------------------- + this x is out of funcx:--> 9 + +好似全局变量能力很强悍,能够统统率函数内外。但是,要注意,这个东西要慎重使用,因为往往容易带来变量的混乱。内外有别,在程序中一定要注意的。 + +局部变量和全局变量是在不同的范围内起作用。所谓的不同范围,就是变量产生作用的区域,简称作用域。 + +##作用域 + +所谓作用域,是“名字与实体的绑定保持有效的那部分计算机程序”(引自《维基百科》),用直白的方式说,就是程序中变量与对象存在关联的那段程序。如果用前面的例子说明,`x = 2`和`x = 9`是处在两个不同的作用域中。 + +通常,把作用域还分为静态作用域和动态作用域两种,虽然Python是所谓的动态语言(不很严格的划分),但它的作用域属于静态作用域,意即Python中变量的作用域由它在程序中的位置决定,如同上面例子中的`x = 9`位于函数体内,它的作用域和`x = 2`就不同。 + +那么,Python的作用域是怎么划分的呢?可以划分为四个层级: + +1. Local:局部作用域,或称本地作用域 +2. Enclosing:嵌套作用域 +3. Global:全局作用域 +4. Built-in:内建作用域 + +对于一个变量,Python也是按照上述从前到后的顺序,在不同作用域中查找。在刚才的例子中,对于`x`,首先搜索的是函数体内的本地作用域,然后是函数体外的全局作用域。 + + #!/usr/bin/env python + #coding:utf-8 + + def outer_foo(): + a = 10 + def inner_foo(): + a = 20 + print "inner_foo,a=", a #a=20 + #Python 3的读者,请自行修改为print()函数形式,下同,从略 + inner_foo() + print "outer_foo,a=", a #a=10 + + a = 30 + outer_foo() + print "a=", a #a=30 + +运行结果 + + inner_foo,a= 20 + outer_foo,a= 10 + a= 30 + +仔细观察上述程序和运行结果,你会看出对变量在不同范围进行搜索的规律的。 + +在Python程序中,变量的作用域是有在函数、类中才能被改变,或者说,如果不是在函数或者类中,比如在循环或者条件语句中,变量都是在同一层级的作用域中。可以再次参考上述的示例,并且可以在上述示例中修改,检测你的理解。 + +##命名空间 + +“命名空间是对作用域的一种特殊的抽象”(引自《维基百科》)。下面就继续理解这种抽象。 + +先看来自《维基百科》的定义,这个定义通俗易懂。 + +>命名空间(英语:Namespace)表示标识符(identifier)的可见范围。一个标识符可在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。这样,在一个新的命名空间中可定义任何标识符,它们不会与任何已有的标识符发生冲突,因为已有的定义都处于其它命名空间中。 + +>例如,设Bill是X公司的员工,工号为123,而John是Y公司的员工,工号也是123。由于两人在不同的公司工作,可以使用相同的工号来标识而不会造成混乱,这里每个公司就表示一个独立的命名空间。如果两人在同一家公司工作,其工号就不能相同了,否则在支付工资时便会发生混乱。 + +>这一特点是使用命名空间的主要理由。在大型的计算机程序或文档中,往往会出现数百或数千个标识符。命名空间(或类似的方法,见“命名空间的模拟”一节)提供一隱藏區域標識符的機制。通过将逻辑上相关的标识符组织成相应的命名空间,可使整个系统更加模块化。 + +>在编程语言中,命名空间是对作用域的一种特殊的抽象,它包含了处于该作用域内的标识符,且本身也用一个标识符来表示,这样便将一系列在逻辑上相关的标识符用一个标识符组织了起来。许多现代编程语言都支持命名空间。在一些编程语言(例如C++和Python)中,命名空间本身的标识符也属于一个外层的命名空间,也即命名空间可以嵌套,构成一个命名空间树,树根则是无名的全局命名空间。 + +>函数和类的作用域可被視作隱式命名空间,它們和可見性、可訪問性和对象生命周期不可分割的联系在一起。 + +在这段定义中,已经非常清晰地描述了命名空间的含义,特别是如果你已经理解了作用域之后,对命名空间就没有什么陌生感了。 + +为了凸显命名空间之对Python程序员的重要价值,请在交互模式下,输入:`import this`,可以看到: + + >>> import this + The Zen of Python, by Tim Peters + + Beautiful is better than ugly. + Explicit is better than implicit. + Simple is better than complex. + Complex is better than complicated. + Flat is better than nested. + Sparse is better than dense. + Readability counts. + Special cases aren't special enough to break the rules. + Although practicality beats purity. + Errors should never pass silently. + Unless explicitly silenced. + In the face of ambiguity, refuse the temptation to guess. + There should be one-- and preferably only one --obvious way to do it. + Although that way may not be obvious at first unless you're Dutch. + Now is better than never. + Although never is often better than *right* now. + If the implementation is hard to explain, it's a bad idea. + If the implementation is easy to explain, it may be a good idea. + Namespaces are one honking great idea -- let's do more of those! + +这就是所谓《python之禅》,请看最后一句: Namespaces are one honking great idea -- let's do more of those! + +简而言之,命名空间是从所定义的命名到对象的映射集合。 + +不同的命名空间,可以同时存在,当彼此相互独立互不干扰。 + +命名空间因为对象的不同,也有所区别,可以分为如下几种: + +1. 本地命名空间(Function&Class: Local Namespaces):模块中有函数或者类,每个函数或者类所定义的命名空间就是本地命名空间。如果函数返回了结果或者抛出异常,则本地命名空间也结束了。 +2. 全局命名空间(Module:Global Namespaces):每个模块创建它自己所拥有的全局命名空间,不同模块的全局命名空间彼此独立,不同模块中相同名称的命名空间,也会因为模块的不同而不相互干扰。 +3. 内置命名空间(Built-in Namespaces):Python运行起来,它们就存在了。内置函数的命名空间都属于内置命名空间,所以,我们可以在任何程序中直接运行它们,比如前面的id(),不需要做什么操作,拿过来就直接使用了。 + +从网上盗取了一张图,展示一下上述三种命名空间的关系 + +![](./2images/20803.png) + +那么程序在查询上述三种命名空间的时候,就按照从里到外的顺序,即:Local Namespaces --> Global Namesspaces --> Built-in Namesspaces + + >>> def foo(num,str): + ... name = "qiwsir" + ... print locals() + ... + >>> foo(221,"qiwsir.github.io") + {'num': 221, 'name': 'qiwsir', 'str': 'qiwsir.github.io'} + >>> + +这是一个访问本地命名空间的方法,用`print locals()` 完成,从这个结果中不难看出,所谓的命名空间中的数据存储结构和字典是一样的。 + +根据习惯,读者一定已经猜测到了,如果访问全局命名空间,可以使用 `print globals()`。 + +对于不同的命名空间,除了存在查找的顺序之外,还有不同的生命周期,即什么时候它存在,什么时候它消失了。对此,在理解上比较简单,那就是哪个部分被读入内存,它相应的命名空间就存在了。比如程序启动,内置命名空间就创建,一直到程序结束;而其它的,比如本地命名空间,就是在函数调用时开始创建,函数执行结束或者抛出异常时结束。 + +关于命名空间,读者还需要在日后的开发实践中慢慢体会,它会融会到你的编程过程中,有时候你是觉察不到的,正所谓“随风潜入夜,润物细无声”。 + +------ + +[总目录](./index.md)   |   [上节:zip()补充](./201.md)   |   [下节:类(1)](./206.md) + +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/README.md b/README.md index 3575361..0e417cf 100644 --- a/README.md +++ b/README.md @@ -59,13 +59,13 @@ From beginner to master. ##第叁章 函数 1. [函数(1)](./201.md)==>定义函数方法,调用函数方法,命名方法,使用函数注意事项 -2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参,命名空间,全局变量和局部变量 +2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参 3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 5. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield 6. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 7. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 - +8. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 #第贰季 进阶 ##第肆章 类 diff --git a/index.md b/index.md index 2b925e0..d2e7953 100644 --- a/index.md +++ b/index.md @@ -59,12 +59,13 @@ From beginner to master. ##第叁章 函数 1. [函数(1)](./201.md)==>定义函数方法,调用函数方法,命名方法,使用函数注意事项 -2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参,命名空间,全局变量和局部变量 +2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参 3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 5. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield 6. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 7. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 +8. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 #第贰季 进阶 From d1e2e2bdb774dc2c38fe52b73ee46633e9f89923 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 10:55:26 +0800 Subject: [PATCH 163/288] p3 --- 216.md | 79 +++++++++++++++++++++++++++++++++--------------- 2code/21601p3.py | 17 +++++++++++ 2 files changed, 71 insertions(+), 25 deletions(-) create mode 100644 2code/21601p3.py diff --git a/216.md b/216.md index f76f5e7..c1baa9b 100644 --- a/216.md +++ b/216.md @@ -2,11 +2,13 @@ #错误和异常(1) -虽然在前面的学习中,已经遇到了错误和异常问题,但是一直没有很认真的研究它。现在来近距离观察错误和异常。 +对于程序在执行过程中因为错误或者别的原因而中止的现象,已经看过多次了,那些都可以归为“错误和异常”现象。本章就要对这种现象进行近距离观察。 ##错误 -python中的错误之一是语法错误(syntax errors),比如: +不管是小白还是高手,在编写程序的时候,错误往往是难以避免的。可能是因为语法用错了,也可能是拼写做了,当然还可能其它莫名其妙的错误,比如冒号写成了全角的了,等等。总之,编程中有相当一部分工作就是要不停地修改错误。 + +Python中的错误之一是语法错误(syntax errors),比如: >>> for i in range(10) File "<stdin>", line 1 @@ -14,11 +16,11 @@ python中的错误之一是语法错误(syntax errors),比如: ^ SyntaxError: invalid syntax -上面那句话因为缺少冒号`:`,导致解释器无法解释,于是报错。这个报错行为是由python的语法分析器完成的,并且检测到了错误所在文件和行号(`File "<stdin>", line 1`),还以向上箭头`^`标识错误位置(后面缺少`:`),最后显示错误类型。 +上面那句话因为缺少冒号`:`,导致解释器无法解释,于是报错。这个报错行为是由Python的语法分析器完成的,并且检测到了错误所在文件和行号(`File "<stdin>", line 1`),还以向上箭头`^`标识错误位置(后面缺少`:`),最后显示错误类型。 -错误之二是在没有语法错误之后,会出现逻辑错误。逻辑错误可能会由于不完整或者不合法的输入导致,也可能是无法生成、计算等,或者是其它逻辑问题。 +另一种常见错误是逻辑错误。逻辑错误可能是由于不完整或者不合法的输入导致,也可能是无法生成、计算等,或者是其它逻辑问题。 -当python检测到一个错误时,解释器就无法继续执行下去,于是抛出异常。 +当Python检测到一个错误时,解释器就无法继续执行下去,于是抛出提示信息,即为异常。 ##异常 @@ -27,12 +29,16 @@ python中的错误之一是语法错误(syntax errors),比如: >>> 1/0 Traceback (most recent call last): File "<stdin>", line 1, in <module> - ZeroDivisionError: integer division or modulo by zero + ZeroDivisionError: integer division or modulo by zero #Python 3: ZeroDivisionError: division by zero -当python抛出异常的时候,首先有“跟踪记录(Traceback)”,还可以给它取一个更优雅的名字“回溯”。后面显示异常的详细信息。异常所在位置(文件、行、在某个模块)。 +当Python抛出异常的时候,首先有“跟踪记录(Traceback)”,还可以给它取一个更优雅的名字“回溯”。后面显示异常的详细信息。异常所在位置(文件、行、在某个模块)。 最后一行是错误类型以及导致异常的原因。 +在刚才的例子中,明确告诉我们一场的类型是`ZeroDivisionError`,并且对此异常类型做了解释(虽然Python 2和Python 3的解释不完全一致,但意思是一样的)。 + +>为什么0不能作除数(分母)?虽然小学生都知道不能作,但是不一定知道为什么不能作。读者对此有兴趣思考思考吗? + 下表中列出常见的异常 |异常 | 描述| @@ -54,7 +60,7 @@ python中的错误之一是语法错误(syntax errors),比如: File "<stdin>", line 1, in <module> NameError: name 'bar' is not defined -python中变量需要初始化,即要赋值。虽然不需要像某些语言那样声明,但是要赋值先。因为变量相当于一个标签,要把它贴到对象上才有意义。 +Python中变量虽然不需在使用变量之前先声明类型,但也需要对变量进行赋值,然后才能使用。不被赋值的变量,不能再Python中存在,因为变量相当于一个标签,要把它贴到对象上才有意义。 ###ZeroDivisionError @@ -63,7 +69,7 @@ python中变量需要初始化,即要赋值。虽然不需要像某些语言 File "<stdin>", line 1, in <module> ZeroDivisionError: integer division or modulo by zero -貌似这样简单的错误时不会出现的,但在实际情境中,可能没有这么容易识别,所以,依然要小心为妙。 +你或许已经有足够的信心,貌似这样简单的错误在你的程序中是不会出现的,但在实际情境中,可能没有这么容易识别,所以,依然要小心为妙。 ###SyntaxError @@ -73,9 +79,9 @@ python中变量需要初始化,即要赋值。虽然不需要像某些语言 ^ SyntaxError: invalid syntax -这种错误发生在python代码编译的时候,当编译到这一句时,解释器不能讲代码转化为python字节码,就报错。只有改正才能继续。所以,它是在程序运行之前就会出现的(如果有错)。现在有不少编辑器都有语法校验功能,在你写代码的时候就能显示出语法的正误,这多少会对编程者有帮助。 +这种错误发生在Python代码编译的时候,当编译到这一句时,解释器不能讲代码转化为Python字节码,就报错。它只在程序运行之前出现。现在有不少编辑器都有语法校验功能,在你写代码的时候就能显示出语法的正误,这多少会对编程者有帮助。 -###IndexError +###IndexError和KeyError >>> a = [1,2,3] >>> a[4] @@ -98,11 +104,11 @@ python中变量需要初始化,即要赋值。虽然不需要像某些语言 File "<stdin>", line 1, in <module> IOError: [Errno 2] No such file or directory: 'foo' -如果你确认有文件,就一定要把路径写正确,因为你并没有告诉python对你的computer进行全身搜索,所以,python会按照你指定位置去找,找不到就异常。 +如果你确认有文件,就一定要把路径写正确,因为你并没有告诉Python要对你的Computer进行全身搜查。所以,Python会按照你指定位置去找,找不到就异常。 ###AttributeError - >>> class A(object): pass + >>> class A(object): pass #Python 3: class A: pass ... >>> a = A() >>> a.foo @@ -112,18 +118,22 @@ python中变量需要初始化,即要赋值。虽然不需要像某些语言 属性不存在。这种错误前面多次见到。 -其实,python内建的异常也不仅仅上面几个,上面只是列出常见的异常中的几个。比如还有: +Python内建的异常也不仅仅上面几个,上面只是列出常见的异常中的几个。比如还有: >>> range("aaa") Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: range() integer end argument expected, got str. - + #Python 3: + #TypeError: 'str' object cannot be interpreted as an integer + 总之,如果读者在调试程序的时候遇到了异常,不要慌张,这是好事情,是python在帮助你修改错误。只要认真阅读异常信息,再用`dir()`,`help()`或者官方网站文档、google等来协助,一定能解决问题。 ##处理异常 -在一段程序中,为了能够让程序健壮,必须要处理异常。举例: +如果在程序运行过程中,出现了“抛出异常”的现象,程序就会中止运行。这样的程序是不“健壮”的,“健壮”的程序应该是不为各种“异常”所击倒,所以,要在程序里面对各种异常进行处理。 + +Python 2: #!/usr/bin/env python # coding=utf-8 @@ -142,6 +152,25 @@ python中变量需要初始化,即要赋值。虽然不需要像某些语言 print "*************************" else: break +Python 3: + + #!/usr/bin/env python + # coding=utf-8 + + while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except ZeroDivisionError: + print("The second number can't be zero!") + print("*************************") + else: + break 运行这段程序,显示如下过程: @@ -162,15 +191,15 @@ python中变量需要初始化,即要赋值。虽然不需要像某些语言 input 'c' continue, otherwise logout:d $ -从运行情况看,当在第二个数,即除数为0时,程序并没有因为这个错误而停止,而是给用户一个友好的提示,让用户有机会改正错误。这完全得益于程序中“处理异常”的设置,如果没有“处理异常”,异常出现,就会导致程序终止。 +从运行情况看,当在第二个数,即除数为0时,程序并没有因为这个错误而停止,而是给用户一个友好的提示,让用户有机会改正错误。这完全得益于程序中“处理异常”的设置,如果没有“处理异常”,当异常出现时就会导致程序中止。 -处理异常的方式之一,使用`try...except...`。 +###`try...except...`。 -对于上述程序,只看try和except部分,如果没有异常发生,except子句在try语句执行之后被忽略;如果try子句中有异常可,该部分的其它语句被忽略,直接跳到except部分,执行其后面指定的异常类型及其子句。 +对于上述程序,只看`try`和`except`部分,如果没有异常发生,`except`子句在`try`语句执行之后被忽略;如果`try`子句中有异常可,该部分的其它语句被忽略,直接跳到`except`部分,执行其后面指定的异常类型及其子句。 -except后面也可以没有任何异常类型,即无异常参数。如果这样,不论try部分发生什么异常,都会执行except。 +`except`后面也可以没有任何异常类型,即无异常参数。如果这样,不论`try`部分发生什么异常,都会执行`except`。 -在except子句中,可以根据异常或者别的需要,进行更多的操作。比如: +在`except`子句中,可以根据异常或者别的需要,进行更多的操作。比如: #!/usr/bin/env python # coding=utf-8 @@ -182,7 +211,7 @@ except后面也可以没有任何异常类型,即无异常参数。如果这 return eval(express) except ZeroDivisionError: if self.is_raise: - print "zero can not be division." + print "zero can not be division." #Python 3: "zero can not be division." else: raise @@ -203,13 +232,13 @@ except后面也可以没有任何异常类型,即无异常参数。如果这 >>> eval("3+5") 8 -另外,在except子句中,有一个`raise`,作为单独一个语句。它的含义是将异常信息抛出。并且,except子句用了一个判断语句,根据不同的情况确定走不同分支。 +另外,在`except`子句中,有一个`raise`,作为单独一个语句。它的含义是将异常信息抛出。并且,`except`子句用了一个判断语句,根据不同的情况确定走不同分支。 if __name__ == "__main__": c = Calculator() print c.calc("8/0") -这时候`is_raise = False`,则会: +故意出现0做分母的情况。这时候`is_raise = False`,则会: $ python 21602.py Traceback (most recent call last): @@ -218,7 +247,7 @@ except后面也可以没有任何异常类型,即无异常参数。如果这 File "21602.py", line 8, in calc return eval(express) File "<string>", line 1, in <module> - ZeroDivisionError: integer division or modulo by zero + ZeroDivisionError: integer division or modulo by zero #Python 3的信息略有差异 如果将`is_raise`的值改为True,就是这样了: diff --git a/2code/21601p3.py b/2code/21601p3.py new file mode 100644 index 0000000..e3cef24 --- /dev/null +++ b/2code/21601p3.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except ZeroDivisionError: + print("The second number can't be zero!") + print("*************************") + else: + break From 0172fb579a181de0cd3859945a0e007b757fec98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 11:41:57 +0800 Subject: [PATCH 164/288] p3 --- 217.md | 117 +++++++++++++++++++++++++++++++++++------------ 2code/21701.py | 27 +++++------ 2code/21703p3.py | 14 ++++++ 3 files changed, 116 insertions(+), 42 deletions(-) create mode 100644 2code/21703p3.py diff --git a/217.md b/217.md index 2e26de2..9d2fcb1 100644 --- a/217.md +++ b/217.md @@ -2,11 +2,13 @@ #错误和异常(2) -try...except...是处理异常的基本方式。在原来的基础上,还可有扩展。 +###处理多个异常 -##处理多个异常 +`try...except...`是处理异常的基本方式。在此基础上,还可有扩展,能够处理多个异常。 -处理多个异常,并不是因为同时报出多个异常。程序在运行中,只要遇到一个异常就会有反应,所以,每次捕获到的异常一定是一个。所谓处理多个异常的意思是可以容许捕获不同的异常,有不同的except子句处理。 +处理多个异常,并不是因为同时报出多个异常。程序在运行中,只要遇到一个异常就会有反应,所以,每次捕获到的异常一定是一个。所谓处理多个异常的意思是可以容许捕获不同的异常,由不同的`except`子句处理。 + +Python 2: #!/usr/bin/env python # coding=utf-8 @@ -29,6 +31,29 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 else: break +Python 3: + + #!/usr/bin/env python + # coding=utf-8 + + while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except ZeroDivisionError: + print("The second number can't be zero!") + print("*************************") + except ValueError: + print("please input number.") + print("************************") + else: + break + 将上节的一个程序进行修改,增加了一个except子句,目的是如果用户输入的不是数字时,捕获并处理这个异常。测试如下: $ python 21701.py @@ -46,11 +71,10 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 ************************* this is a division program. input 'c' continue, otherwise logout:4 - $ -如果有多个except,在try里面如果有一个异常,就转到相应的except子句,其它的忽略。如果except没有相应的异常,该异常也会抛出,不过这是程序就要中止了,因为异常“浮出”程序顶部。 +如果有多个`except`,try里面遇到一个异常,就转到相应的`except`子句,其它的忽略。如果`except`没有相应的异常,该异常也会抛出,不过这是程序就要中止了,因为异常“浮出”程序顶部。 -除了用多个except之外,还可以在一个except后面放多个异常参数,比如上面的程序,可以将except部分修改为: +除了用多个`except`之外,还可以在一个`except`后面放多个异常参数,比如上面的程序,可以将`except`部分修改为: except (ZeroDivisionError, ValueError): print "please input rightly." @@ -75,9 +99,13 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 input 'c' continue, otherwise logout:d $ -需要注意的是,except后面如果是多个参数,一定要用圆括号包裹起来。否则,后果自负。 +需要注意的是,`except`后面如果是多个参数,一定要用圆括号包裹起来。否则,后果自负。 -突然有一种想法,在对异常的处理中,前面都是自己写一个提示语,发现自己写的不如内置的异常错误提示更好。希望把它打印出来。但是程序还能不能中断。python提供了一种方式,将上面代码修改如下: +在对异常的处理中,前面都是自己写一个提示语,发现自己写的不如内置的异常错误提示好。希望把它打印出来。但是程序还能不能中断,怎么办? + +Python提供了一种方式,将上面代码修改如下: + +Python 2: while 1: print "this is a division program." @@ -94,6 +122,23 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 else: break +Python 3: + + while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except (ZeroDivisionError, ValueError) as e: + print(e) + print("********************") + else: + break + 运行一下,看看提示信息。 $ python 21702.py @@ -113,16 +158,16 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 input 'c' continue, otherwise logout:d $ ->在python3.x中,常常这样写:`except (ZeroDivisionError, ValueError) as e:` +注意Python 3中的写法`except (ZeroDivisionError, ValueError) as e:` -以上程序中,之处理了两个异常,还可能有更多的异常呢?如果要处理,怎么办?可以这样:`execpt:`或者`except Exception, e`,后面什么参数也不写就好了。 +在上面程序中,只处理了两个异常,还可能有更多的异常,如果要处理,怎么办?可以这样:`execpt:`或者`except Exception, e`、`except Exception as e`,后面什么参数也不写就好了。 -##else子句 +###else子句 -有了`try...except...`,在一般情况下是够用的,但总有不一般的时候出现,所以,就增加了一个else子句。其实,人类的自然语言何尝不是如此呢?总要根据需要添加不少东西。 +有了`try...except...`,在一般情况下是够用的,但总有不一般的时候出现,所以,就增加了一个`else`子句。其实,人类的自然语言何尝不是如此呢?总要根据需要添加不少东西。 >>> try: - ... print "I am try" + ... print "I am try" #Python 3: print("I am try"),下同,从略 ... except: ... print "I am except" ... else: @@ -131,7 +176,7 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 I am try I am else -这段演示,能够帮助读者理解else的执行特点。如果执行了try,则except被忽略,但是else被执行。 +这段演示,能够帮助读者理解else的执行特点。如果执行了`try`,则`except`被忽略,但是else被执行。 >>> try: ... print 1/0 @@ -144,9 +189,11 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 这时候else就不被执行了。 -理解了else的执行特点,可以写这样一段程序,还是类似于前面的计算,只不过这次要求,如果输入的有误,就不断要求从新输入,知道输入正确,并得到了结果,才不再要求输入内容,程序结束。 +理解了else的执行特点,可以写这样一段程序,还是类似于前面的计算,只是如果输入的有误,就不断要求从新输入,直到输入正确并得到了结果,才不再要求输入内容,然后程序结束。 -在看下面的参考代码之前,读者是否可以先自己写一段呢?并调试一下,看看结果如何。 +在看下面的参考代码之前,读者是否可以先自己写一段并调试?看看结果如何。 + +Python 2: #!/usr/bin/env python # coding=utf-8 @@ -163,6 +210,23 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 else: break +Python 3: + + #!/usr/bin/env python + # coding=utf-8 + while 1: + try: + x = input("the first number:") + y = input("the second number:") + + r = float(x)/float(y) + print(r) + except Exception as e: + print(e) + print("try again.") + else: + break + 先看运行结果: $ python 21703.py @@ -177,37 +241,36 @@ try...except...是处理异常的基本方式。在原来的基础上,还可 the first number:4 the second number:2 #正常,执行try 2.0 #然后else:break,退出程序 - $ 相当满意的执行结果。 -需要对程序中的except简单说明,这次没有像前面那样写,而是`except Exception, e`,意思是不管什么异常,这里都会捕获,并且传给变量e,然后用`print e`把异常信息打印出来。 +程序中的`except Exception, e`或`except Exception as e:`的含义是不管什么异常,这里都会捕获,并且传给变量`e`,然后用`print e`或者`print(e)`把异常信息打印出来。 -##finally +###finally -finally子句,一听这个名字,就感觉它是做善后工作的。的确如此,如果有了finally,不管前面执行的是try,还是except,它都要执行。因此一种说法是用finally用来在可能的异常后进行清理。比如: +`finally`子句,一听这个名字,就感觉它是做善后工作的。的确如此,如果有了`finally`,不管前面执行的是`try`,还是`except`,最终都要执行它。因此一种说法是将`finally`用在可能的异常后进行清理。比如: >>> x = 10 >>> try: ... x = 1/0 - ... except Exception, e: - ... print e + ... except Exception, e: #Python 3: except Exception as e: + ... print e #Python 3: print(e) ... finally: - ... print "del x" + ... print "del x" #Python 3: print(e) ... del x ... integer division or modulo by zero del x -看一看x是否被删除? +看一看`x`是否被删除? >>> x Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'x' is not defined -当然,在应用中,可以将上面的各个子句都综合起来使用,写成如下样式: +当然,在应用中可以将上面的各个子句都综合起来使用,写成如下样式: try: do something @@ -217,10 +280,6 @@ finally子句,一听这个名字,就感觉它是做善后工作的。的确 do something finally do something - -##和条件语句相比 - -`try...except...`在某些情况下能够替代`if...else..`的条件语句。这里我无意去比较两者的性能,因为看到有人讨论这个问题。我个人觉得这不是主要的,因为它们之间性能的差异不大。主要是你的选择。一切要根据实际情况而定,不是说用一个就能包打天下。 ------ diff --git a/2code/21701.py b/2code/21701.py index dc8bd72..c0441af 100644 --- a/2code/21701.py +++ b/2code/21701.py @@ -6,23 +6,24 @@ """ while 1: - print "this is a division program." - c = raw_input("input 'c' continue, otherwise logout:") + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") if c == 'c': - a = raw_input("first number:") - b = raw_input("second number:") + a = input("first number:") + b = input("second number:") try: - print float(a)/float(b) - print "*************************" + print(float(a)/float(b)) + print("*************************") #except ZeroDivisionError: - # print "The second number can't be zero!" - # print "*************************" + # print("The second number can't be zero!") + # print("*************************") #except ValueError: - # print "please input number." - # print "************************" - except (ZeroDivisionError, ValueError): - print "please input rightly." - print "********************" + # print("please input number.") + # print("************************") + except (ZeroDivisionError, ValueError) as e: + print(e) + #print("please input rightly.") + print("********************") else: break diff --git a/2code/21703p3.py b/2code/21703p3.py new file mode 100644 index 0000000..1bd4040 --- /dev/null +++ b/2code/21703p3.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 +while 1: + try: + x = input("the first number:") + y = input("the second number:") + + r = float(x)/float(y) + print(r) + except Exception as e: + print(e) + print("try again.") + else: + break From 7e30f631a45c8423fdfbd0436d93b9491cf90271 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 14:14:58 +0800 Subject: [PATCH 165/288] p3 --- 218.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/218.md b/218.md index d08ab9b..7c4fbc4 100644 --- a/218.md +++ b/218.md @@ -2,9 +2,9 @@ #错误和异常(3) -按照一般的学习思路,掌握了前两节内容,已经足够编程所需了。但是,我还想再多一步,还是因为本教程的读者是要from beginner to master。 +###assert -##assert +从代码中理解`assert`。 >>> assert 1==1 >>> assert 1==0 @@ -12,11 +12,9 @@ File "<stdin>", line 1, in <module> AssertionError -从上面的举例中可以基本了解了assert的特点。 +assert,翻译过来是“断言”之意。`assert`是一句等价于布尔真的判定,发生异常就意味着表达式为假。 -assert,翻译过来是“断言”之意。assert是一句等价于布尔真的判定,发生异常就意味着表达式为假。 - -assert的应用情景就有点像汉语的意思一样,当程序运行到某个节点的时候,就断定某个变量的值必然是什么,或者对象必然拥有某个属性等,简单说就是断定什么东西必然是什么,如果不是,就抛出错误。 +`assert`的应用情景就有点像汉语的意思一样,当程序运行到某个节点的时候,就断定某个变量的值必然是什么,或者对象必然拥有某个属性等,简单说就是断定什么东西必然是什么,如果不是,就抛出异常。 #!/usr/bin/env python # coding=utf-8 @@ -35,9 +33,9 @@ assert的应用情景就有点像汉语的意思一样,当程序运行到某 if amount <= self.balance: self.balance -= amount else: - print "balance is not enough." + print "balance is not enough." #Python 3: print("balance is not enough.") -上面的程序中,deposit()和withdraw()方法的参数amount值必须是大于零的,这里就用断言,如果不满足条件就会报错。比如这样来运行: +上面的程序中,`deposit()`和`withdraw()`方法的参数`amount`必须是大于零的,这里就用断言,如果不满足条件就会报错。比如这样来运行: if __name__ == "__main__": a = Account(1000) From 5ec3169bf6d4ebd3f3da6d15eba7385865b29c04 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 18:59:14 +0800 Subject: [PATCH 166/288] p3 --- 211.md | 2 +- 239.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/211.md b/211.md index e2600b3..0841727 100644 --- a/211.md +++ b/211.md @@ -227,6 +227,6 @@ Python中私有化的方法也比较简单,就是在准备私有化的属性 ------ -[总目录](./index.md)   |   [上节:类(5)](./209.md)   |   [下节:更多属性(1)](./212.md) +[总目录](./index.md)   |   [上节:类(5)](./209.md)   |   [下节:定制类](./239.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/239.md b/239.md index 63108fe..d402625 100644 --- a/239.md +++ b/239.md @@ -250,6 +250,6 @@ Python的魅力之一,就是它强大的标准库和第三方库,让你省 ------ -[总目录](./index.md)   |   [上节:多态和封装](./211.md)   |   [下节:特殊方法(1)](./212.md) +[总目录](./index.md)   |   [上节:多态和封装](./211.md)   |   [下节:黑魔法](./240.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file From e7ffd5046c7336c015f19ea97593a1159b230616 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 20:45:38 +0800 Subject: [PATCH 167/288] p3 --- 219.md | 84 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/219.md b/219.md index 397b09f..0d8f2d6 100644 --- a/219.md +++ b/219.md @@ -1,8 +1,6 @@ >生气却不可犯罪,不可含怒到日落,也不可给魔鬼留地步。从前偷窃的,不要再偷。总要劳力,亲手作正经事,就可有余,分给那缺少的人。污秽的言语,一句不可出口,只要随事说造就人的好话,叫听见的人得益处。(EPHESIANS 4:26-29) -#编写模块 - -在本章之前,Python还没有显示出太突出的优势。本章开始,读者就会越来越感觉到Python的强大了。这种强大体现在“模块自信”上,因为Python不仅有很强大的自有模块(或者包、库,比如为标准库),还有海量的第三方模块(或者包、库),任何人还都能自己开发模块(或者包、库),正是有了这么强大的“模块自信”,才体现了Python的优势所在。并且这种方式也正在不断被更多其它语言所借鉴。 +随着对Python学习的深入,其优点日渐突出,让读者也感觉到Python的强大了。这种强大体现在“模块自信”上,因为Python不仅有很强大的自有模块(标准库),还有海量的第三方模块(或者包、库),并且很多开发者还在不断贡献自己开发的新模块(或者包、库),正是有了这么强大的“模块自信”,Python才被很多人钟爱。并且这种方式也正在不断被其它更多语言所借鉴,几乎成为普世行为了(不知道Python是不是首倡者)。 “模块自信”的本质是:**开放**。 @@ -14,23 +12,25 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 >根据熵的统计学定义, 热力学第二定律说明一个孤立系统的倾向于增加混乱程度。换句话说就是对于封闭系统而言,会越来越趋向于无序化。反过来,开放系统则能避免无序化。 -##回忆过去 +#编写模块 -在本教程的[《语句(1)》](./121.md)中,曾经介绍了import语句,有这样一个例子: +想必读者已经熟悉了`import`语句,曾经有这样一个例子: >>> import math >>> math.pow(3,2) 9.0 -这里的math就是一个库,用import引入这个库,然后可以使用库里面的函数,比如这个pow()函数。显然,这里我们是不需要自己动手写具体函数的,我们的任务就是拿过来使用。这就是库的好处:拿过来就用,不用自己重写。 +这里的`math`就是Python标准库中的一个,用import引入这个模块,然后可以使用它里面的函数(方法),比如这个`pow()`函数。显然,这里不需要自己动手写具体函数的,我们的任务就是拿过来使用。这就是模块的好处:拿过来就用,不用自己重写。 -请读者注意,到现在为止,我们看到了模块、库、包这些名词,并且在开发实践中,也会常常遇到。它们有区别吗?有!只不过,现在我们暂时不区分,就笼统地说,阅读下面的内容,就理解它们之间的区分了。 +请读者注意,我们会在实践中用到模块、库、包这些名词。它们有区别吗?有!只不过,现在我们暂时不区分,就笼统地说,阅读下面的内容,就理解它们之间的区分了。 ##模块是程序 -这个标题,一语道破了模块的本质,它就是一个扩展名为`.py`的Python程序。我们能够在应该使用它的时候将它引用过来,节省精力,不需要重写雷同的代码。 +“模块是程序”一语道破了模块的本质,它就是一个扩展名为`.py`的Python程序。 -但是,如果我自己写一个`.py`文件,是不是就能作为模块import过来呢?还不那么简单。必须得让Python解释器能够找到你写的模块。比如:在某个目录中,我写了这样一个文件: +我们能够在应该使用它的时候将它引用过来,节省精力,不需要重写雷同的代码。 + +但是,如果我自己写一个`.py`文件,是不是就能作为模块`import`过来呢?还不那么简单。必须得让Python解释器能够找到你写的模块。比如:在某个目录中,我写了这样一个文件: #!/usr/bin/env python # coding=utf-8 @@ -42,38 +42,38 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 >>> import sys >>> sys.path.append("~/Documents/VBS/StartLearningPython/2code/pm.py") -用这种方式就是告诉Python解释器,我写的那个文件在哪里。在这个告诉方法中,也用了Python标准库中的sys,即`import sys`,不过由于sys是Python被安装的时候就有的,所以不用特别告诉,Python解释器就知道它在哪里了。 +用这种方式就是告诉Python解释器,我写的那个文件在哪里。在这个告诉方法中,也用`import sys`,不过由于`sys`是Python标准库之一,所以不用特别告诉Python解释器其位置。 -上面那个一长串的地址,是Ubuntu系统的地址格式,如果读者使用的windows系统,请写你所保存的文件路径。 +上面那个一长串的地址,是Ubuntu系统的地址格式,如果读者使用的windows系统,请注意文件路径的写法。 >>> import pm >>> pm.lang 'python' -本来在pm.py文件中,有一个变量`lang = "python"`,这次它作为模块引入(注意作为模块引入的时候,不带扩展名),就可以通过模块名字来访问变量`pm.py`,当然,如果不存在的属性这么去访问,肯定是要报错的。 +本来在pm.py文件中有一个赋值语句,即`lang = "python"`,现在将pm.py作为模块引入(注意作为模块引入的时候不带扩展名),就可以通过“模块名字”+“.”+“属性或类、方法名称”来访问变量`pm.py`中的东西。当然,如果不存在的,肯定是要报错的。 >>> pm.xx Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'module' object has no attribute 'xx' -请读者回到pm.py文件的存储目录,是不是多了一个扩展名是.pyc的文件?如果不是,你那个可能是外星人用的Python。 +请读者回到pm.py文件的存储目录,查看是不是多了一个扩展名是.pyc的文件?应该是。 >解释器,英文是:interpreter,港台翻译为:直译器。在Python中,它的作用就是将.py的文件转化为.pyc文件,而.pyc文件是由字节码(bytecode)构成的,然后计算机执行.pyc文件。关于这方面的详细解释,请参阅维基百科的词条:[直譯器](http://zh.wikipedia.org/zh/%E7%9B%B4%E8%AD%AF%E5%99%A8) -不少人喜欢将这个世界简化简化再简化。比如人,就分为好人还坏人,比如编程语言就分为解释型和编译型,不但如此,还将两种类型的语言分别贴上运行效率高低的标签,解释型的运行速度就慢,编译型的就快。一般人都把Python看成解释型的,于是就得出它运行速度慢的结论。不少人都因此上当受骗了,认为Python不值得学,或者做不了什么“大事”。这就是将本来复杂的多样化的世界非得划分为“黑白”的结果。这种喜欢用“非此即彼”的思维方式考虑问题的现象可以说在现在很常见,比如一提到“日本人”,除了苍老师,都该杀,这基本上是小孩子的思维方法,可惜在某国大行其道。 +不少人喜欢将这个世界简化简化再简化。比如人,就分为好人还坏人;比如编程语言就分为解释型和编译型,不但如此,还将两种类型的语言分别贴上运行效率高低的标签,解释型的运行速度就慢,编译型的就快。一般人都把Python看成解释型的,于是就得出它运行速度慢的结论。不少人都因此上当受骗了,认为Python不值得学,或者做不了什么“大事”。这就是将本来复杂的多样化的世界非得划分为“黑白”的结果,喜欢用“非此即彼”的思维方式考虑问题,比如一提到“日本人”,除了苍老师,都该杀。这基本上是小孩子的思维方法,可惜在某国大行其道。 世界是复杂的,“敌人的敌人就是朋友”是幼稚的,“一分为二”是机械的。当然,苍老师是德艺双馨的,无可辩驳、毋庸置疑。 -就如同刚才看到的那个.pyc文件一样,当Python解释器读取了.py文件,先将它变成由字节码组成的.pyc文件,然后这个.pyc文件交给一个叫做Python虚拟机的东西去运行(那些号称编译型的语言也是这个流程,不同的是它们先有一个明显的编译过程,编译好了之后再运行)。如果.py文件修改了,Python解释器会重新编译,只是这个编译过程不是完全显示给你看的。 +就如同刚才看到的那个`.pyc`文件一样,当Python解释器读取了`.py`文件,先将它变成由字节码组成的`.pyc`文件,然后这个`.pyc`文件交给一个叫做Python虚拟机的东西去运行(那些号称编译型的语言也是这个流程,不同的是它们先有一个明显的编译过程,编译好了之后再运行)。如果`.py`文件修改了,Python解释器会重新编译,只是这个编译过程不是完全显示给你看的。 我这里说的比较笼统,要深入了解Python程序的执行过程,可以阅读这篇文章:[说说Python程序的执行过程](http://www.cnblogs.com/kym/archive/2012/05/14/2498728.html) -总之,有了.pyc文件后,每次运行,就不需要从新让解释器来编译.py文件了,除非.py文件修改了。这样,Python运行的就是那个编译好了的.pyc文件。 +有了`.pyc`文件后,每次运行就不需要重新让解释器来编译`.py`文件了,除非`.py`文件修改了。这样,Python运行的就是那个编译好了的`.pyc`文件。 -是否还记得,我们在前面写有关程序,然后执行,常常要用到`if __name__ == "__main__"`。那时我们写的.py文件是来执行的,这时我们同样写了.py文件,是作为模块引入的。这就得深入探究一下,同样是.py文件,它是怎么知道是被当做程序执行还是被当做模块引入? +是否还记得前面写有关程序然后执行时常常要用到`if __name__ == "__main__"`。那时我们直接用`python filename.py`的格式来运行该程序,此时我们也同样有了`.py`文件,不过是作为模块引入的。这就得深入探究一下,同样是`.py`文件,它是怎么知道是被当做程序执行还是被当做模块引入? -为了便于比较,将pm.py文件进行改造,稍微复杂点。 +为了便于比较,将pm.py文件进行改造。 #!/usr/bin/env python # coding=utf-8 @@ -82,9 +82,9 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 return "python" if __name__ == "__main__": - print lang() + print lang() #Python 3: print(lang()) -如以前做的那样,可以用这样的方式: +沿用先前的做法: $ python pm.py python @@ -97,27 +97,27 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 >>> pm.lang() 'python' -因为这时候pm.py中的函数lang()就是一个属性: +用`dir()`来查看它: >>> dir(pm) ['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'lang'] -同样一个.py文件,可以把它当做程序来执行,还可以将它作为模块引入。 +同样一个`.py`文件,可以把它当做程序来执行,还可以将它作为模块引入。 >>> __name__ '__main__' >>> pm.__name__ 'pm' -如果要作为程序执行,则`__name__ == "__main__"`;如果作为模块引入,则`pm.__name__ == "pm"`,即变量`__name__`的值是模块名称。 +如果要作为程序执行,则`__name__ == "__main__"`;如果作为模块引入,则`pm.__name__ == "pm"`,即属性`__name__`的值是模块名称。 用这种方式就可以区分是执行程序还是作为模块引入了。 -在一般情况下,如果仅仅是用作模块引入,可以不写`if __name__ == "__main__"`。 +在一般情况下,如果仅仅是用作模块引入,不必写`if __name__ == "__main__"`。 ##模块的位置 -为了让我们自己写的模块能够被Python解释器知道,需要用`sys.path.append("~/Documents/VBS/StarterLearningPython/2code/pm.py")`。其实,在Python中,所有模块都被加入到了sys.path里面了。用下面的方法可以看到模块所在位置: +为了让我们自己写的模块能够被Python解释器知道,需要用`sys.path.append("~/Documents/VBS/StarterLearningPython/2code/pm.py")`。其实,在Python中,所有模块都被加入到了`sys.path`里面了。用下面的方法可以看到模块所在位置: >>> import sys >>> import pprint @@ -137,7 +137,9 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 '/usr/lib/python2.7/dist-packages/ubuntu-sso-client', '~/Documents/VBS/StarterLearningPython/2code/pm.py'] -从中也发现了我们自己写的那个文件。凡在上面列表所包括位置内的.py文件都可以作为模块引入。不妨举个例子。把前面自己编写的pm.py文件修改为pmlib.py,然后把它复制到`'/usr/lib/python2.7/dist-packages`中。(这是以ubuntu为例说明,如果是其它操作系统,读者用类似方法也能找到。) +从中也发现了我们自己写的那个文件。 + +凡在上面列表所包括位置内的`.py`文件都可以作为模块引入。不妨举个例子。把前面自己编写的`pm.py`文件修改为`pmlib.py`,然后把它复制到`'/usr/lib/python2.7/dist-packages`中。(这是以ubuntu为例说明,如果是其它操作系统,读者用类似方法也能找到。) $ sudo cp pm.py /usr/lib/python2.7/dist-packages/pmlib.py [sudo] password for qw: @@ -153,11 +155,9 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 >>> pmlib.lang() 'python' -也就是,要将模块文件放到合适的位置——就是sys.path包括位置——就能够直接用import引入了。 - -##PYTHONPATH环境变量 +将模块文件放到指定位置是一种不错的方法。当程序员都喜欢自由,能不能放到别处呢? -将模块文件放到指定位置是一种不错的方法。当程序员都喜欢自由,能不能放到别处呢?当然能,用`sys.path.append()`就是不管把文件放哪里,都可以把其位置告诉Python解释器。但是,这种方法不是很常用。因为它也有麻烦的地方,比如在交互模式下,如果关闭了,然后再开启,还得从新告知。 +当然能,用`sys.path.append()`就是不管把文件放哪里,都可以把其位置告诉Python解释器。虽然这种方法在前面使用了,但其实是很不常用。因为它也有麻烦的地方,比如在交互模式下,如果关闭当前的terminal了,再开启(或者从新开启一个),还得重新告知。 比较常用的告知方法是设置PYTHONPATH环境变量。 @@ -194,7 +194,7 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 但是,问题并没有结束。正如[Hsinwe](https://github.com/Hsinwe)所指出的那样,我上面的操作使进入了模块所在的目录,如果进入别的目录呢?能不能正常引入呢?这是一个非常好的问题,恭请各位读者来试一试。 -##'__all__'在模块中的作用 +##`__all__`在模块中的作用 上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为pp.py @@ -205,12 +205,12 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 _private_variable = "Hi, I am a private variable." def public_teacher(): - print "I am a public teacher, I am from JP." + print "I am a public teacher, I am from JP." #Python 3: print("I am a public teacher, I am from JP.") def _private_teacher(): - print "I am a private teacher, I am from CN." + print "I am a private teacher, I am from CN." #Python 3: print("I am a private teacher, I am from CN.") -接下来就是熟悉的操作了,进入到交互模式中。pp.py这个文件就是一个模块,这个模块中包含了变量和函数。 +接下来就是熟悉的操作了,进入到交互模式中。`pp.py`这个文件就是一个模块,这个模块中包含了变量和函数。 >>> import sys >>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") @@ -234,7 +234,7 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 File "<stdin>", line 1, in <module> NameError: name '_private_teacher' is not defined -但也不是绝对的,如果要访问具有私有性质的东西,可以这样做啦。 +这不是绝对的,如果要访问具有私有性质的东西,可以这样做啦。 >>> import pp >>> pp._private_teacher() @@ -242,7 +242,7 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 >>> pp._private_variable 'Hi, I am a private variable.' -下面再对pp.py文件改写,增加一点东西,注意观察。 +下面再对`pp.py`文件改写,增加一点东西。 # /usr/bin/env python # coding:utf-8 @@ -253,12 +253,12 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 _private_variable = "Hi, I am a private variable." def public_teacher(): - print "I am a public teacher, I am from JP." + print "I am a public teacher, I am from JP." #Python 3: print("I am a public teacher, I am from JP.") def _private_teacher(): - print "I am a private teacher, I am from CN." + print "I am a private teacher, I am from CN." #Python 3: print("I am a private teacher, I am from CN.") -在修改之后的pp.py中,增加了`__all__`以它的值,在列表中包含了一个私有变量的名字和一个函数的名字。这是在告诉引用本模块的解释器,这两个东西是有权限被访问的,而且只有这两个东西。 +在修改之后的`pp.py`中,增加了`__all__`属性以及相应的值,在列表中包含了一个私有变量的名字和一个函数的名字。这是在告诉引用本模块的解释器,这两个东西是有权限被访问的,而且只有这两个东西。 >>> import sys >>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") @@ -286,9 +286,9 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 ##包或者库 -顾名思义,包或者库,应该是比“模块”大的。也的确如此,一般来讲,一个“包”里面会有多个模块,当然,“库”是一个更大的概念了,比如Python标准库中的每个库,都可以看成有好多个包,每个包,都有若干个模块。或许这个概念不是很明确,这么理解不会耽误你使用。 +顾名思义,包或者库,应该是比“模块”大的。也的确如此,一般来讲,一个“包”里面会有多个模块,当然,“库”是一个更大的概念了,比如Python标准库中的每个库都有好多个包,每个包都有若干个模块。 -对于一个包,因为它是由多个模块组成,也就是说是多个`.py`的文件,那么这个所谓“包”也就是我们熟悉的一个目录罢了。现在就需要解决如何引用某个目录中的模块问题了。解决方法就是在该目录中放一个`__init__.py`文件。`__init__.py`是一个空文件,将它放在某个目录中,就可以将该目录中的其它.py文件作为模块被引用。 +一个包是由多个模块组成,即多个`.py`的文件,那么这个所谓“包”也就是我们熟悉的一个目录罢了。现在就需要解决如何引用某个目录中的模块问题了。解决方法就是在该目录中放一个`__init__.py`文件。`__init__.py`是一个空文件,将它放在某个目录中,就可以将该目录中的其它`.py`文件作为模块被引用。 例如,我建立了一个目录,名曰:package_qi,里面依次放了pm.py和pp.py两个文件,然后建立一个空文件`__init__.py` @@ -306,7 +306,7 @@ Python不是一个封闭的体系,是一个开放系统。开放系统的最 >>> pm.lang() 'python' -在后续制作网站的实战中,还会经常用到这种方式,届时会了解更多。 +在后续制作网站的实战中,还会经常用到这种方式,届时会了解更多。请保持兴趣继续阅读,不要半途而废,不然疑惑得不到解决,好东西就看不到了。 ------ From 51088212736cad408fba3ee114d1a2c053ecd9b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Mon, 25 Apr 2016 22:17:19 +0800 Subject: [PATCH 168/288] p3 --- 220.md | 66 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 33 insertions(+), 33 deletions(-) diff --git a/220.md b/220.md index 60d7093..24b8fa5 100644 --- a/220.md +++ b/220.md @@ -2,19 +2,17 @@ #标准库(1) -“python自带‘电池’”,听说过这种说法吗? +“Python自带‘电池’”,听说过这种说法吗? -在python被安装的时候,就有不少模块也随着安装到本地的计算机上了。这些东西就如同“能源”、“电力”一样,让python拥有了无限生机,能够非常轻而易举地免费使用很多模块。所以,称之为“自带电池”。 +在Python被安装的时候,就有不少模块也随着安装到本地的计算机上了。这些东西就如同“能源”、“电力”一样,让Python拥有了无限生机,能够非常轻而易举地免费使用很多模块。所以,称之为“自带电池”。 -它们被称为“标准库”。 +那些在安装Python时就默认已经安装好的模块被统称为“标准库”。 -熟悉标准库,是进行编程的必须。 +熟悉标准库编程之必须。 ##引用的方式 -不仅是标准库的模块,所有模块都服从下述引用方式。 - -最基本的、也是最常用的,还是可读性非常好的: +所有模块都服从下述引用方式,是最基本的、也是最常用的,还是可读性非常好的: import modulename @@ -28,17 +26,19 @@ 'lang': 'python', 'teacher': 'qiwsir'} -在对模块进行说明的过程中,我以标准库pprint为例。以`pprint.pprint()`的方式应用了一种方法,这种方法能够让dict格式化输出。看看结果,是不是比原来更容易阅读了你? +在对模块进行说明的过程中,以标准库pprint为例。 + +以`pprint.pprint()`的方式使用模块中的一种方法,这种方法能够让字典格式化输出。看看结果是不是比原来更容易阅读了呢? -在import后面,理论上可以跟好多模块名称。但是在实践中,我还是建议大家一次一个名称吧。这样简单明了,容易阅读。 +在`import`后面,理论上可以跟好多模块名称。但是在实践中,我还是建议大家一次一个名称,太多了看着头晕眼花,不容易阅读。 -这是用`import pprint`样式引入模块,并以`.`点号的形式引用其方法。 +这是用`import pprint`样式引入模块,并以`.`点号(英文半角)的形式引用其方法。 -还可以: +还有下面的方式: >>> from pprint import pprint -意思是从`pprint`模块中之将`pprint()`引入,然后就可以这样来应用它: +意思是从`pprint`模块中之将`pprint()`引入,之后就可以直接使用它了。 >>> pprint(a) {'book': 'www.itdiffer.com', @@ -50,9 +50,9 @@ >>> from pprint import * -这就将pprint模块中的一切都引入了,于是可以像上面那样直接使用每个函数。但是,这样造成的结果是可读性不是很好,并且,有用没用的都拿过来,是不是太贪婪了?贪婪的结果是内存就消耗了不少。所以,这种方法,可以用于常用并且模块属性或方法不是很多的情况。 +这就将pprint模块中的一切都引入了,于是可以像上面那样直接使用模块中的所有可用的内容。但是,这样造成的结果是可读性不是很好,并且,不管是不是在程序中用上,都拿过来,是不是太贪婪了?贪婪的结果是消耗内存。所以,这种方法,可以用于常用的并且模块属性或方法不是很多的情况。莫贪婪。 -诚然,如果很明确使用那几个,那么使用类似`from modulename import name1, name2, name3...`也未尝不可。一再提醒的是不能因为引入了模块东西而降低了可读性,让别人不知道呈现在眼前的方法是从何而来。如果这样,就要慎用这种方法。 +诚然,如果很明确使用模块中的哪些方法或属性,那么使用类似`from modulename import name1, name2, name3...`也未尝不可。需要再次提醒的是不能因为引入了模块而降低了可读性,让别人不知道呈现在眼前的方法是从何而来。 有时候引入的模块或者方法名称有点长,可以给它重命名。如: @@ -72,22 +72,22 @@ 'lang': 'python', 'teacher': 'qiwsir'} -但是不管怎么样,一定要让人看懂,过了若干时间,自己也还能看懂。记住:“软件很多时候是给人看的,只是偶尔让机器执行”。 +但是不管怎么样,一定要让人看懂,且要过了若干时间,自己也还能看懂。记住:“软件很多时候是给人看的,只是偶尔让机器执行”。 ##深入探究 -继续以pprint为例,深入研究: +继续以`pprint`为例,深入研究: >>> import pprint >>> dir(pprint) ['PrettyPrinter', '_StringIO', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_commajoin', '_id', '_len', '_perfcheck', '_recursion', '_safe_repr', '_sorted', '_sys', '_type', 'isreadable', 'isrecursive', 'pformat', 'pprint', 'saferepr', 'warnings'] -对dir()并不陌生。从结果中可以看到pprint的属性和方法。其中有不少是双划线、电话线开头的。为了不影响我们的视觉,先把它们去掉。 +对`dir()`并不陌生。从结果中可以看到`pprint`的属性和方法。其中有有的是双划线、单划线开头的。为了不影响我们的视觉,先把它们去掉。 >>> [ m for m in dir(pprint) if not m.startswith('_') ] ['PrettyPrinter', 'isreadable', 'isrecursive', 'pformat', 'pprint', 'saferepr', 'warnings'] -对这几个,为了能够搞清楚它们的含义,可以使用`help()`,比如: +针对这几个,为了能够搞清楚它们的含义,可以使用`help()`,比如: >>> help(isreadable) Traceback (most recent call last): @@ -98,7 +98,7 @@ >>> help(pprint.isreadable) -别忘记了,我前面是用`import pprint`方式引入模块的。 +前面是用`import pprint`方式引入模块的。 Help on function isreadable in module pprint: @@ -109,18 +109,18 @@ 注意的是`pprint.PrettyPrinter`是一个类,后面的是函数(方法)。 -在回头看看`dir(pprint)`的结果,关注一个: +再回头看看`dir(pprint)`的结果: >>> pprint.__all__ ['pprint', 'pformat', 'isreadable', 'isrecursive', 'saferepr', 'PrettyPrinter'] 这个结果是不是眼熟?除了"warnings",跟前面通过列表解析式得到的结果一样。 -其实,当我们使用`from pprint import *`的时候,就是将`__all__`里面的方法引入,如果没有这个,就会将其它所有属性、方法等引入,包括那些以双划线或者单划线开头的变量、函数,这些东西事实上很少被在引入模块时使用。 +其实,当我们使用`from pprint import *`的时候,就是将`__all__`里面的方法引入,如果没有这个,就会将其它所有属性、方法等引入,包括那些以双划线或者单划线开头的变量、函数,事实上这些东西很少在引入模块时被使用。 ##帮助、文档和源码 -不知道读者是否能够记住看过的上述内容?反正我记不住。所以,我非常喜欢使用dir()和help(),这也是本教程从开始到现在,乃至到以后,总在提倡的方式。 +你能记住每个模块的属性和方法吗?比如前面刚刚查询过的`pprint`模块中的属性和方法,现在能背诵出来吗?我的记忆力不行,都记不住。所以,我非常喜欢使用`dir()`和`help()`,这也是本书从开始到现在,乃至到以后,总在提倡的方式。 >>> print pprint.__doc__ Support to pretty-print lists, tuples, & dictionaries recursively. @@ -149,8 +149,6 @@ `pprint.__doc__`是查看整个类的文档,还知道整个文档是写在什么地方的吗? -关于文档的问题,曾经在[《类(5)》](./210.md)、[《自省》](./130.md)中有介绍。但是,现在出现的是模块文档。 - 还是使用pm.py那个文件,增加如下内容: #!/usr/bin/env python @@ -163,27 +161,27 @@ def lang(): ... #省略了,后面的也省略了 -在这个文件的开始部分,所有类和方法、以及import之前,写一个用三个引号包括的字符串。那就是文档。 +在这个文件的开始部分,所有类、方法和`import`之前,写一个用三个引号包括的字符串,这就是文档。 >>> import sys >>> sys.path.append("~/Documents/VBS/StarterLearningPython/2code") >>> import pm - >>> print pm.__doc__ + >>> print pm.__doc__ #Python 3: print(pm.__doc__) This is a document of the python module. -这就是撰写模块文档的方法,即在.py文件的最开始写相应的内容。这个要求应该成为开发习惯。 +这就是撰写模块文档的方法,即在`.py`文件的最开始写相应的内容。这个要求应该成为开发者的习惯。 -python的模块,不仅可以看帮助信息和文档,还能够查看源码,因为它是开放的。 +对于Python的标准库和第三方模块,不仅可以看帮助信息和文档,还能够查看源码,因为它是开放的。 -还是回头到`dir(pprint)`中找一找,有一个`__file__`,它就告诉我们这个模块的位置: +还是回头到`dir(pprint)`中找一找,有一个`__file__`属性,它就告诉我们这个模块的位置: - >>> print pprint.__file__ + >>> print pprint.__file__ #Python 3: print(pprint.__file__) /usr/lib/python2.7/pprint.pyc -我是在ubuntu中为例,读者要注意观察自己的操作系统结果。 +我是在Ubuntu中为例,读者要注意观察自己的操作系统结果。 -虽然是.pyc文件,但是不用担心,根据现实的目录,找到相应的.py文件即可。 +虽然是`.pyc文件,但是不用担心,根据显示的目录,找到相应的.py文件即可。 $ ls /usr/lib/python2.7/pp* /usr/lib/python2.7/pprint.py /usr/lib/python2.7/pprint.pyc @@ -216,7 +214,9 @@ python的模块,不仅可以看帮助信息和文档,还能够查看源码 我只查抄了文档中的部分信息,是不是跟前面通过`__doc__`查看的结果一样一样的呢? -请读者在闲暇时间,阅读以下源码。事实证明,这种标准库中的源码是质量最好的。 +请读者在闲暇时间阅读源码。 + +事实证明,这种标准库中的源码是质量最好的。阅读高质量的代码,是提高编程水平的途径之一。 ------ From 6df7332ae457aacf3f39b4fe17833434b19b9360 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Tue, 26 Apr 2016 20:56:37 +0800 Subject: [PATCH 169/288] p3 --- 126.md | 2 +- 221.md | 70 +++++++++++++++++++++++++----------------------- 2code/22102p3.py | 11 ++++++++ 2code/22103.py | 2 +- 4 files changed, 50 insertions(+), 35 deletions(-) create mode 100644 2code/22102p3.py diff --git a/126.md b/126.md index f81c874..9f2110d 100644 --- a/126.md +++ b/126.md @@ -57,7 +57,7 @@ >>> f = open('130.txt') >>> for line in f: - ... print line, #Python 3: print(line, end=',') + ... print line, #Python 3: print(line, end='') ... learn python http://qiwsir.github.io diff --git a/221.md b/221.md index ef17a6d..11578b3 100644 --- a/221.md +++ b/221.md @@ -2,25 +2,25 @@ #标准库(2) -python标准库内容非常多,有人专门为此写过一本书。在本教程中,由于我的原因,不会将标准库进行完整的详细介绍,但是,我根据自己的理解和喜好,选几个呈现出来,一来显示标准库之强大功能,二来演示如何理解和使用标准库。 +python标准库内容非常多,有人专门为此写过一本书。在本教程中,我将根据自己的理解和喜好,选几个呈现出来,一来显示标准库之强大功能,二来演示如何理解和使用标准库。 ##sys -这是一个跟python解释器关系密切的标准库,上一节中我们使用过`sys.path.append()`。 +这是一个跟Python解释器关系密切的标准库,前面已经使用过`sys.path.append()`。 >>> import sys >>> print sys.__doc__ -显示了sys的基本文档,看第一句话,概括了本模块的基本特点。 +显示了`sys`的基本文档,第一句话概括了本模块的基本特点。 This module provides access to some objects used or maintained by the interpreter and to functions that interact strongly with the interpreter. -在诸多sys函数和变量中,选择常用的(应该说是我觉得常用的)来说明。 +在诸多`sys`函数和属性中,选择常用的(应该说是我觉得常用的)来说明。 ###sys.argv -sys.argv是变量,专门用来向python解释器传递参数,所以名曰“命令行参数”。 +sys.argv是专门用来向python解释器传递参数,名曰“命令行参数”。 先解释什么是命令行参数。 @@ -48,18 +48,18 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ 只选择了部分内容摆在这里。所看到的如`-B, -h`之流,都是参数,比如`python -h`,其功能同上。那么`-h`也是命令行参数。 -`sys.arg`在python中的作用就是这样。通过它可以向解释器传递命令行参数。比如: +`sys.arg`在Python中的作用就是这样。通过它可以向解释器传递命令行参数。比如: #!/usr/bin/env python # coding=utf-8 import sys - print "The file name: ", sys.argv[0] + print "The file name: ", sys.argv[0] #Python 3的读者,请自行修改为print()函数形式,下同,从略 print "The number of argument", len(sys.argv) print "The argument is: ", str(sys.argv) -将上述代码保存,文件名是22101.py(这名称取的,多么数字化)。然后如此做: +将上述代码保存,文件名是22101.py。然后如此做: $ python 22101.py The file name: 22101.py @@ -71,18 +71,18 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ - 在`$ python 22101.py`中,“22101.py”是要运行的文件名,同时也是命令行参数,是前面的`python`这个指令的参数。其地位与`python -h`中的参数`-h`是等同的。 - sys.argv[0]是第一个参数,就是上面提到的`22101.py`,即文件名。 -如果我们这样来试试,看看结果: +如果这样来试试: $ python 22101.py beginner master www.itdiffer.com The file name: 22101.py The number of argument 4 The argument is: ['22101.py', 'beginner', 'master', 'www.itdiffer.com'] -如果在这里,用`sys.arg[1]`得到的就是`beginner`,依次类推。 +在这里用`sys.arg[1]`得到的就是`beginner`,依次类推。 ###sys.exit() -这是一个方法,意思是退出当前的程序。 +这个方法的意思是退出当前程序。 Help on built-in function exit in module sys: @@ -95,7 +95,7 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ If it is another kind of object, it will be printed and the system exit status will be one (i.e., failure). -从文档信息中可知,如果用`sys.exit()`退出程序,会返回SystemExit异常。这里先告知读者,还有另外一退出方式,是`os._exit()`,这两个有所区别。后者会在后面介绍。 +从文档信息中可知,如果用`sys.exit()`退出程序,会返回`SystemExit`异常。这里先告知读者,还有另外一退出方式,是`os._exit()`,这两个有所区别。 #!/usr/bin/env python # coding=utf-8 @@ -106,7 +106,7 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ if i == 5: sys.exit() else: - print i + print i #Python 3: print(i) 这段程序的运行结果就是: @@ -117,36 +117,40 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ 3 4 -需要提醒读者注意的是,在函数中,用到return,这个的含义是终止当前的函数,并返回相应值(如果有,如果没有就是None)。但是sys.exit()的含义是退出当前程序,并发起SystemExit异常。这就是两者的区别了。 +在大多数函数中会用到return,其含义是终止当前的函数,并向调用函数的位置返回相应值(如果没有就是None)。但是`sys.exit()`的含义是退出当前程序——不仅仅是函数,并发起`SystemExit`异常。这就是两者的区别了。 -如果使用`sys.exit(0)`表示正常退出。如果读者要测试,需要在某个地方退出的时候有一个有意义的提示,可以用`sys.exit("I wet out at here.")`,那么字符串信息就被打印出来。 +如果使用`sys.exit(0)`表示正常退出。若需要在退出的时候有一个对人友好的提示,可以用`sys.exit("I wet out at here.")`,那么字符串信息就被打印出来。 ###sys.path -`sys.path`已经不陌生了,前面用过。它可以查找模块所在的目录,以列表的形式显示出来。如果用`append()`方法,就能够向这个列表增加新的模块目录。如前所演示。不在赘述。不理解的读者可以往前复习。 +`sys.path`已经不陌生了,它可以查找模块所在的目录,以列表的形式显示出来。如果用`append()`方法,就能够向这个列表增加新的模块目录。如前所演示。不在赘述。 -###sys.stdin, sys.stdout, sys.stderr +###sys.stdout -这三个放到一起,因为他们的变量都是类文件流对象,分别表示标准UNIX概念中的标准输入、标准输出和标准错误。与python功能对照,sys.stdin获得输入(用raw_input()输入的通过它获得,python3.x中是imput()),sys.stdout负责输出了。 +`sys.stdin`,`sys.stdout`,`sys.stderr`这三个有相似之处,它们所实现的都是类文件流,分别表示标准UNIX概念中的标准输入、标准输出和标准错误。 + +与Python中的函数功能对照,`sys.stdin`获得输入(等价于Python 2中的raw_input(),Python 3中的input()),`sys.stdout`负责输出。 >流是程序输入或输出的一个连续的字节序列,设备(例如鼠标、键盘、磁盘、屏幕、调制解调器和打印机)的输入和输出都是用流来处理的。程序在任何时候都可以使用它们。一般来讲,stdin(输入)并不一定来自键盘,stdout(输出)也并不一定显示在屏幕上,它们都可以重定向到磁盘文件或其它设备上。 -还记得`print()`吧,在这个学习过程中,用的很多。它的本质就是`sys.stdout.write(object + '\n')`。 +此处仅就`sys.stdout`做一个简要说明。 >>> for i in range(3): - ... print i + ... print i #Python 3: print(i) ... 0 1 2 +`print`语句或者函数,你一定很熟悉,此前用的很多。并且,特别说明,在默认情况下,不管是语句还是函数,最后都是有`\n`换行的。这种输入,本质上是用`sys.stdout.write(object + '\n')`实现。 + >>> import sys >>> for i in range(3): ... sys.stdout.write(str(i)) ... 012>>> -造成上面输出结果在表象上如此差异,原因就是那个`'\n'`的有无。 +跟前面的不同,是因为没有加上那个`\n`。 >>> for i in range(3): ... sys.stdout.write(str(i) + '\n') @@ -155,27 +159,25 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ 1 2 -从这看出,两者是完全等效的。如果仅仅止于此,意义不大。关键是通过sys.stdout能够做到将输出内容从“控制台”转到“文件”,称之为重定向。这样也许控制台看不到(很多时候这个不重要),但是文件中已经有了输出内容。比如: +从这看出,两者是完全等效的。如果仅仅止于此,意义不大。关键是通过`sys.stdout`能够做到将输出内容从“控制台”转到“文件”,称之为重定向。这样也许控制台看不到(很多时候这个不重要),但是文件中已经有了输出内容。比如: >>> f = open("stdout.md", "w") >>> sys.stdout = f - >>> print "Learn Python: From Beginner to Master" + >>> print "Learn Python: From Beginner to Master" #Python 3: print("Learn Python: From Beginner to Master") >>> f.close() -当`sys.stdout = f`之后,就意味着将输出目的地转到了打开(建立)的文件中,如果使用print(),即将内容输出到这个文件中,在控制台并无显现。 +当`sys.stdout = f`之后,就意味着将输出目的地转到了打开(建立)的文件中,如果使用`print`,即将内容输出到这个文件中,在控制台并无显现。 打开文件看看便知: $ cat stdout.md Learn Python: From Beginner to Master -这是标准输出。另外两个,输入和错误,也类似。读者可以自行测试。 - -关于对文件的操作,虽然前面这这里都涉及到一些。但是,远远不足,后面我会专门讲授对某些特殊但常用的文件读写操作。 - +以上,对标准库中的`sys`有了粗浅的了解。更详细内容,请读者运用本书已经反复使用的`dir()`、`help()`去探究,当然还有Google。 + ##copy -在[《字典(2)》](./117.md)中曾经对copy做了讲授,这里再次提出,即是复习,又是凑数,以显得我考虑到了这个常用模块,还有: +前面对浅拷贝和深拷贝做了研究,这里再次提出,温故知新。 >>> import copy >>> copy.__all__ @@ -183,14 +185,14 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ 这个模块中常用的就是copy和deepcopy。 -为了具体说明,看这样一个例子: +为了具体说明,看这样一个例子,这个例子跟以前讨论浅拷贝和深拷贝略有不同,请读者认真推敲结果,并对照代码。 #!/usr/bin/env python # coding=utf-8 import copy - class MyCopy(object): + class MyCopy(object): #Python 3: class MyCopy: def __init__(self, value): self.value = value @@ -208,7 +210,9 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ a.append("abc") foo.value = 17 - print "original: %r\n slice: %r\n list(): %r\n copy(): %r\n deepcopy(): %r\n" % (a,b,c,d,e) + print "original: {0}\n slice: {1}\n list(): {2}\n copy(): {3}\n deepcopy(): {4}\n".forrmat(a,b,c,d,e) + #Python 3: + #print("original: {0}\n slice: {1}\n list(): {2}\n copy(): {3}\n deepcopy(): {4}\n".format(a,b,c,d,e)) 保存并运行: @@ -219,7 +223,7 @@ sys.argv是变量,专门用来向python解释器传递参数,所以名曰“ copy(): ['foo', 17] deepcopy(): ['foo', 7] -读者可以对照结果和程序,就能理解各种拷贝的实现方法和含义了。 +尽在不言中,请读者认真对邵上面的显示结果,体会深拷贝和浅拷贝。 ------ diff --git a/2code/22102p3.py b/2code/22102p3.py new file mode 100644 index 0000000..df4ecb0 --- /dev/null +++ b/2code/22102p3.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# coding=utf-8 + +import sys + +#sys.exit("hello") +for i in range(10): + if i == 5: + sys.exit() + else: + print(i) diff --git a/2code/22103.py b/2code/22103.py index f874581..be9c3d6 100644 --- a/2code/22103.py +++ b/2code/22103.py @@ -21,4 +21,4 @@ def __repr__(self): a.append("abc") foo.value = 17 -print "original: %r\n slice: %r\n list(): %r\n copy(): %r\n deepcopy(): %r\n" % (a,b,c,d,e) +print("original: {0}\n slice: {1}\n list(): {2}\n copy(): {3}\n deepcopy(): {4}\n".format(a,b,c,d,e)) From 492b5b40466d6057daf37f53ec57952dbf777976 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 27 Apr 2016 09:58:00 +0800 Subject: [PATCH 170/288] p3 --- 222.md | 99 ++++++++++++++++++++++++++++++++-------------------------- 1 file changed, 55 insertions(+), 44 deletions(-) diff --git a/222.md b/222.md index 5b6c7f9..5037539 100644 --- a/222.md +++ b/222.md @@ -4,17 +4,19 @@ ##OS -os模块提供了访问操作系统服务的功能,它所包含的内容比较多。 +os模块提供了访问操作系统服务的功能,它所包含的内容比较多,有时候感觉很神秘。 >>> import os >>> dir(os) ['EX_CANTCREAT', 'EX_CONFIG', 'EX_DATAERR', 'EX_IOERR', 'EX_NOHOST', 'EX_NOINPUT', 'EX_NOPERM', 'EX_NOUSER','EX_OK', 'EX_OSERR', 'EX_OSFILE', 'EX_PROTOCOL', 'EX_SOFTWARE', 'EX_TEMPFAIL', 'EX_UNAVAILABLE', 'EX_USAGE', 'F_OK', 'NGROUPS_MAX', 'O_APPEND', 'O_ASYNC', 'O_CREAT', 'O_DIRECT', 'O_DIRECTORY', 'O_DSYNC', 'O_EXCL', 'O_LARGEFILE', 'O_NDELAY', 'O_NOATIME', 'O_NOCTTY', 'O_NOFOLLOW', 'O_NONBLOCK', 'O_RDONLY', 'O_RDWR', 'O_RSYNC', 'O_SYNC', 'O_TRUNC', 'O_WRONLY', 'P_NOWAIT', 'P_NOWAITO', 'P_WAIT', 'R_OK', 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'ST_APPEND', 'ST_MANDLOCK', 'ST_NOATIME', 'ST_NODEV', 'ST_NODIRATIME', 'ST_NOEXEC', 'ST_NOSUID', 'ST_RDONLY', 'ST_RELATIME', 'ST_SYNCHRONOUS', 'ST_WRITE', 'TMP_MAX', 'UserDict', 'WCONTINUED', 'WCOREDUMP', 'WEXITSTATUS', 'WIFCONTINUED', 'WIFEXITED', 'WIFSIGNALED', 'WIFSTOPPED', 'WNOHANG', 'WSTOPSIG', 'WTERMSIG', 'WUNTRACED', 'W_OK', 'X_OK', '_Environ', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_copy_reg', '_execvpe', '_exists', '_exit', '_get_exports_list', '_make_stat_result', '_make_statvfs_result', '_pickle_stat_result', '_pickle_statvfs_result', '_spawnvef', 'abort', 'access', 'altsep', 'chdir', 'chmod', 'chown', 'chroot', 'close', 'closerange', 'confstr', 'confstr_names', 'ctermid', 'curdir', 'defpath', 'devnull', 'dup', 'dup2', 'environ', 'errno', 'error', 'execl', 'execle', 'execlp', 'execlpe', 'execv', 'execve', 'execvp', 'execvpe', 'extsep', 'fchdir', 'fchmod', 'fchown', 'fdatasync', 'fdopen', 'fork', 'forkpty', 'fpathconf', 'fstat', 'fstatvfs', 'fsync', 'ftruncate', 'getcwd', 'getcwdu', 'getegid', 'getenv', 'geteuid', 'getgid', 'getgroups', 'getloadavg', 'getlogin', 'getpgid', 'getpgrp', 'getpid', 'getppid', 'getresgid', 'getresuid', 'getsid', 'getuid', 'initgroups', 'isatty', 'kill', 'killpg', 'lchown', 'linesep', 'link', 'listdir', 'lseek', 'lstat', 'major', 'makedev', 'makedirs', 'minor', 'mkdir', 'mkfifo', 'mknod', 'name', 'nice', 'open', 'openpty', 'pardir', 'path', 'pathconf', 'pathconf_names', 'pathsep', 'pipe', 'popen', 'popen2', 'popen3', 'popen4', 'putenv', 'read', 'readlink', 'remove', 'removedirs', 'rename', 'renames', 'rmdir', 'sep', 'setegid', 'seteuid', 'setgid', 'setgroups', 'setpgid', 'setpgrp', 'setregid', 'setresgid', 'setresuid', 'setreuid', 'setsid', 'setuid', 'spawnl', 'spawnle', 'spawnlp', 'spawnlpe', 'spawnv', 'spawnve', 'spawnvp', 'spawnvpe', 'stat', 'stat_float_times', 'stat_result', 'statvfs', 'statvfs_result', 'strerror', 'symlink', 'sys', 'sysconf', 'sysconf_names', 'system', 'tcgetpgrp', 'tcsetpgrp', 'tempnam', 'times', 'tmpfile', 'tmpnam', 'ttyname', 'umask', 'uname', 'unlink', 'unsetenv', 'urandom', 'utime', 'wait', 'wait3', 'wait4', 'waitpid', 'walk', 'write'] -这么多内容不能都介绍,况且不少方法在实践中用的不多,比如`os.popen()`在实践中用到了,但是os模块还有popen2、popen3、popen4,这三个我在实践中都没有用过,或者有别人用了,也请补充。不过,我下面介绍的都是自认为用的比较多的,至少是我用的比较多或者用过的。如果没有读者要是用,但是我这里没有介绍,读者也完全可以自己用我们常用的`help()`来自学明白其应用方法,当然,还有最好的工具——google(内事不决问google,外事不明问谷歌,须梯子)。 +这么多内容不能都介绍,列出来纯粹是要吓唬你一下,先混个脸熟,将来用到哪个了,可以到这里来找。 + +下面选择几个介绍一番,目的是不断强化我已经常用但是不知道你是否熟悉的学习方法,当然,还有最好的工具——google(内事不决问google,外事不明问谷歌,须梯子)。 ###操作文件:重命名、删除文件 -在对文件操作的时候,`open()`这个内建函数可以建立、打开文件。但是,如果对文件进行改名、删除操作,就要是用os模块的方法了。 +在对文件进行操作的时候,`open()`这个内建函数可以打开文件。但是,如果对文件进行改名、删除操作,就要是用os模块的方法了。 首先建立一个文件,文件名为22201.py,文件内容是: @@ -23,17 +25,23 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 print "This is a tmp file." -然后将这个文件名称修改为其它的名称。 +然后将这个文件名称修改为别的名称。 >>> import os >>> os.rename("22201.py", "newtemp.py") -注意,我是先进入到了文件22201.py的目录,然后进入到python交互模式,所以,可以直接写文件名,如果不是这样,需要将文件名的路径写上。`os.rename("22201.py", "newtemp.py")`中,第一个文件是原文件名称,第二个是打算修改成为的文件名。 +注意,我是先进入到了文件22201.py的目录,然后进入交互模式,所以,可以直接写文件名,如果不是这样,需要将文件名的路径写上。 + +`os.rename("22201.py", "newtemp.py")`中,第一个文件是原文件名称,第二个是打算修改成为的文件名。 + +然后查看,能够看到这个文件。 $ ls new* newtemp.py -查看,能够看到这个文件。并且文件内容可以用`cat newtemp.py`看看(这是在ubuntu系统,如果是windows系统,可以用其相应的编辑器打开文件看内容)。 +文件内容可以用`cat newtemp.py`看看(这是在ubuntu系统,如果是windows系统,可以用其相应的编辑器打开文件看内容)。 + +除了修改文件名称,还可以修改目录名称。请注意阅读帮助信息。 Help on built-in function rename in module posix: @@ -42,8 +50,6 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 Rename a file or directory. -除了修改文件名称,还可以修改目录名称。请注意阅读帮助信息。 - 另外一个os.remove(),首先看帮助信息,然后再实验。 Help on built-in function remove in module posix: @@ -53,7 +59,7 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 Remove a file (same as unlink(path)). -比较简单。那就测试一下。为了测试,先建立一些文件吧。 +为了测试,先建立一些文件。 $ pwd /home/qw/Documents/VBS/StarterLearningPython/2code/rd @@ -80,13 +86,15 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 File "<stdin>", line 1, in <module> OSError: [Errno 21] Is a directory: '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' -报错了。我打算将这个目录下的所剩文件删光光。这么做不行。注意帮助中一句话`Remove a file`,os.remove()就是用来删除文件的。并且从报错中也可以看到,告诉我们错误的原因在于那个参数是一个目录。 +报错了。 + +我打算将这个目录下的所剩文件删光光,但这么做不行。注意帮助中一句话`Remove a file`,os.remove()就是用来删除文件的。并且从报错中也可以看到,错误的原因在于那个参数是一个目录。 要删除目录,还得继续向下学习。 ###操作目录 -**os.listdir**:显示目录中的文件 +**os.listdir**:显示目录中的内容(包括文件和子目录)。 Help on built-in function listdir in module posix: @@ -100,7 +108,7 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 The list is in arbitrary order. It does not include the special entries '.' and '..' even if they are present in the directory. -看完帮助信息,读者一定觉得这是一个非常简单的方法,不过,特别注意它返回的值是列表,还有就是如果文件夹中有那样的特殊格式命名的文件,不显示。在linux中,用ls命令也看不到这些隐藏的东东。 +看完帮助信息,读者一定觉得这是一个非常简单的方法,不过,特别注意它返回的值是列表,且不显示目录中某些隐藏文件或子目录。 >>> os.listdir("/home/qw/Documents/VBS/StarterLearningPython/2code/rd") ['b.py', 'c.py'] @@ -111,9 +119,9 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 b.py c.py -**os.getcwd, os.chdir**:当前工作目录,改变当前工作目录 +**os.getcwd**:当前工作目录;**os.chdir**:改变当前工作目录 -这两个函数怎么用?惟有通过`help()`看文档啦。请读者自行看看。我就不贴出来了,仅演示一个例子: +这两个函数怎么用?唯有通过`help()`看文档啦。请读者自行看看。就不贴出来了,仅演示一个例子: >>> cwd = os.getcwd() #当前目录 >>> print cwd @@ -133,10 +141,9 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 >>> os.pardir '..' - **os.makedirs, os.removedirs**:创建和删除目录 -废话少说,路子还是前面那样,就省略看帮助了,读者可以自己看。直接上例子: +直接上例子: >>> dir = os.getcwd() >>> dir @@ -148,7 +155,7 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 rmdir(name) OSError: [Errno 39] Directory not empty: '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' -什么时候都不能得意忘形,一定要谦卑。那就是从看文档开始一点一点地理解。不能像上面那样,自以为是、贸然行事。看报错信息,要删除某个目录,那个目录必须是空的。 +什么时候都不能得意忘形,一定要谦卑,从看文档开始一点一点地理解。看报错信息,要删除某个目录,那个目录必须是空的。 >>> os.getcwd() '/home/qw/Documents/VBS/StarterLearningPython/2code' @@ -160,31 +167,31 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 >>> os.getcwd() '/home/qw/Documents/VBS/StarterLearningPython/2code/newrd' -建立了一个。下面把这个删除了。这个是空的。 +建立了一个。下面把刚刚建立的这个目录删除了,毫无疑问它是空的。 >>> os.listdir(os.getcwd()) [] >>> newdir = os.getcwd() >>> os.removedirs(newdir) -按照我的理解,这里应该报错。因为我是在当前工作目录删除当前工作目录。如果这样能够执行,总觉得有点别扭。但事实上,就行得通了。就算是python的规定吧。不过,让我来确定这个功能的话,还是习惯不能在本地删除本地。 +按照我的理解,这里应该报错。因为我是在当前工作目录删除当前工作目录。如果这样能够执行,总觉得有点别扭。但事实上行得通。就算是Python的规定吧。不过,让我来确定这个功能的话,还是习惯不能在本地删除本地。 -按照上面的操作,在看当前工作目录: +按照上面的操作,再看当前的工作目录: >>> os.getcwd() Traceback (most recent call last): File "<stdin>", line 1, in <module> OSError: [Errno 2] No such file or directory -目录被删了,当然没有啦。只能回到父级。 +目录被删了,只能回到父级。 >>> os.chdir(os.pardir) >>> os.getcwd() '/home/qw/Documents/VBS/StarterLearningPython/2code' -有点不可思议。本来没有当前工作目录,怎么会有“父级”的呢?但python就是这样。 +有点不可思议,本来没有当前工作目录,怎么会有“父级”的呢?但显示就是这样。 -补充一点,前面说的如果目录不空,就不能用`os.removedirs()`删除。但是,可以用模块shutil的retree方法。 +补充一点,前面说的如果目录不空,就不能用`os.removedirs()`删除。但是,可以用模块`shutil`的`retree()`方法。 >>> os.getcwd() '/home/qw/Documents/VBS/StarterLearningPython/2code' @@ -201,7 +208,7 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 File "<stdin>", line 1, in <module> OSError: [Errno 2] No such file or directory -请读者注意的是,对于os.makedirs()还有这样的特点: +请读者注意的是,对于`os.makedirs()`还有这样的特点: >>> os.getcwd() '/home/qw/Documents/VBS/StarterLearningPython/2code' @@ -214,39 +221,41 @@ os模块提供了访问操作系统服务的功能,它所包含的内容比较 >>> os.getcwd() '/home/qw/Documents/VBS/StarterLearningPython/2code/ndir1/ndir2/ndir3' -中间不存在的目录也被建立起来,直到做右边的目录为止。与os.makedirs()类似的还有os.mkdir(),不过,`os.mkdir()`没有上面这个功能,它只能一层一层地建目录。 - -`os.removedirs()`和`os.rmdir()`也类似,区别也类似上面。 +不存在的目录也被建立起来,直到最右边的目录为止。与`os.makedirs()`类似的还有`os.mkdir()`,不过,`os.mkdir()`没有上面这个功能,它只能一层一层地建目录。`os.removedirs()`和`os.rmdir()`也类似,区别也类似上面。 ###文件和目录属性 -不管是在什么操作系统,都能看到文件或者目录的有关属性,那么,在os模块中,也有这样的一个方法:`os.stat()` +不管是哪种操作系统,都能看到文件或者目录的有关属性,那么,在os模块中,也有这样的一个方法:`os.stat()` >>> p = os.getcwd() #当前目录 >>> p '/home/qw/Documents/VBS/StarterLearningPython' - #这个目录的有关信息 +显示这个目录的有关信息: + >>> os.stat(p) posix.stat_result(st_mode=16895, st_ino=4L, st_dev=26L, st_nlink=1, st_uid=0, st_gid=0, st_size=12288L, st_atime=1430224935, st_mtime=1430224935, st_ctime=1430224935) - #指定一个文件 +再指定一个文件: + >>> pf = p + "/README.md" - #此文件的信息 + +显示此文件的信息: + >>> os.stat(pf) posix.stat_result(st_mode=33279, st_ino=67L, st_dev=26L, st_nlink=1, st_uid=0, st_gid=0, st_size=50L, st_atime=1429580969, st_mtime=1429580969, st_ctime=1429580969) -从结果中看,可能看不出什么来,先不用着急。这样的结果是对computer姑娘友好的,对读者可能不友好。如果用下面的方法,就友好多了: +从结果中看,可能看不出什么来,先不用着急。这样的结果是对computer姑娘是友好的,但对读者可能不友好。如果用下面的方法,就友好多了: >>> fi = os.stat(pf) >>> mt = fi[8] -fi[8]就是st_mtime的值,它代表最后modified(修改)文件的时间。看结果: +`fi[8]`就是`st_mtime`的值,它代表最后modified(修改)文件的时间。看结果: >>> mt 1429580969 -还是不友好。下面就用time模块来友好一下: +还是不友好,下面就用`time`模块来友好一下: >>> import time >>> time.ctime(mt) @@ -254,13 +263,15 @@ fi[8]就是st_mtime的值,它代表最后modified(修改)文件的时间 现在就对读者友好了。 -用`os.stat()`能够查看文件或者目录的属性。如果要修改呢?比如在部署网站的时候,常常要修改目录或者文件的权限等。这种操作在python的os模块能做到吗? +用`os.stat()`能够查看文件或者目录的属性。如果要修改呢?比如在部署网站的时候,常常要修改目录或者文件的权限等。这种操作在Python的`os`模块能做到吗? -要求越来越多了。在一般情况下,不在python里做这个呀。当然,世界是复杂的。肯定有人会用到的,所以os模块提供了`os.chmod()` +要求越来越多了。在一般情况下,不在Python里做这个,当然,世界是复杂的,肯定有人会用到的,所以`os`模块提供了`os.chmod()`。 ###操作命令 -读者如果使用某种linux系统,或者曾经用过dos(恐怕很少),或者再windows里面用过command,对敲命令都不陌生。通过命令来做事情的确是很酷的。比如,我是在ubuntu中,要查看文件和目录,只需要`ls`就足够了。我并不是否认图形界面,而是在某些情况下,还是离不开命令的,比如用程序来完成查看文件和目录的操作。所以,os模块中提供了这样的方法,许可程序员在python程序中使用操作系统的命令。(以下是在ubuntu系统,如果读者是windows,可以将命令换成DOS命令。) +读者如果使用某种Linux系统,或者曾经用过DOS(恐怕很少),或者在Windows里面用过command,对敲命令都不陌生。通过命令来做事情的确是很酷的。比如,我是在Ubuntu中,要查看文件和目录,只需要`ls`就足够了。我并不是否认图形界面,对于某些人(比如程序员)在某些情况下,命令是不错的选项,甚至是离不开的。 + +`os`模块中提供了这样的方法,许可程序员在Python程序中使用操作系统的命令。(以下是在Ubuntu系统,如果读者是Windows,可以将命令换成DOS命令。) >>> p '/home/qw/Documents/VBS/StarterLearningPython' @@ -268,7 +279,7 @@ fi[8]就是st_mtime的值,它代表最后modified(修改)文件的时间 >>> command 'ls /home/qw/Documents/VBS/StarterLearningPython' -为了输入方便,我采用了前面例子中已经有的那个目录,并且,用拼接字符串的方式,将要输入的命令(查看某文件夹下的内容)组装成一个字符串,赋值给变量command,然后: +为了输入方便,采用了前面例子中已经有的那个目录,并且,用拼接字符串的方式,将要输入的命令(查看某文件夹下的内容)组装成一个字符串,赋值给变量command,然后: >>> os.system(command) 01.md 101.md 105.md 109.md 113.md 117.md 121.md 125.md 129.md 201.md 205.md 209.md 213.md 217.md 221.md index.md @@ -279,11 +290,11 @@ fi[8]就是st_mtime的值,它代表最后modified(修改)文件的时间 这样就列出来了该目录下的所有内容。 -需要注意的是,`os.system()`是在当前进程中执行命令,直到它执行结束。如果需要一个新的进程,可以使用`os.exec`或者`os.execvp`。对此有兴趣详细了解的读者,可以查看帮助文档了解。另外,`os.system()`是通过shell执行命令,执行结束后将控制权返回到原来的进程,但是`os.exec()`及相关的函数,则在执行后不将控制权返回到原继承,从而使python失去控制。 +需要注意的是,`os.system()`是在当前进程中执行命令,直到它执行结束。如果需要一个新的进程,可以使用`os.exec`或者`os.execvp`。对此有兴趣详细了解的读者,可以查看帮助文档了解。另外,`os.system()`是通过shell执行命令,执行结束后将控制权返回到原来的进程,但是`os.exec()`及相关的函数,则在执行后不将控制权返回到原继承,从而使Python失去控制。 -关于python对进程的管理,此处暂不过多介绍。 +关于Python对进程的管理,此处暂不过多介绍,读者可以查阅有关专门资料。 -`os.system()`是一个用途不少的函数。曾有一个朋友网上询问,用它来启动浏览器。不过,这个操作的确要非常仔细。为什么呢?演示一下就明白了。 +`os.system()`是一个用途很多的方法。曾有一个朋友网上询问,用它来启动浏览器。不过,这个操作的确要非常仔细。为什么呢?演示一下就明白了。 >>> os.system("/usr/bin/firefox") @@ -292,15 +303,15 @@ fi[8]就是st_mtime的值,它代表最后modified(修改)文件的时间 (firefox:4002): GLib-GObject-WARNING **: Attempt to add property GnomeProgram::sm-connect after class was initialised ...... -我是在ubuntu上操作的,浏览器的地址是`/usr/bin/firefox`,可是,那个朋友是windows,他就要非常小心了,因为在windows里面,表示路径的斜杠是跟上面显示的是反着的,可是在python中`\`这种斜杠代表转义。解决这个问题可以参看[《字符串(1)》](./106)的转义符以及[《字符串(2)》](./107)的原始字符串讲述。比较简单的一个方法用`r"c:\user\firfox.exe"`的样式,因为在`r" "`中的,都是被认为原始字符了。还没完,因为windows系统中,一般情况下那个文件不是安装在我演示的那个简单样式的文件夹中,而是`C:\Program Files`,这中间还有空格,所以还要注意,空格问题。简直有点晕头转向了。读者按照这些提示,看看能不能完成用`os.system()`启动firefox的操作呢? +我是在Ubuntu上操作的,浏览器的地址是`/usr/bin/firefox`,可是,那个朋友是Windows系统,那么就要非常小心了,因为在Windows里面,表示路径的斜杠是跟上面显示的是反着的,可是在Python中`\`代表转义。比较简单的一个方法是用`r"c:\user\firfox.exe"`的样式,因为在`r" "`中的,都被认为是原始字符。而且Windows系统中,一般情况下那个文件不是安装在我演示的那个简单样式的文件夹中,而是`C:\Program Files`,这中间还有空格,所以还要注意空格问题。读者按照这些提示,看看能不能完成用`os.system()`启动firefox的操作。 -凡事感觉麻烦的东西,必然有另外简单的来替代。于是又有了一个webbrowser模块。可以专门用来打开指定网页。 +凡事感觉麻烦的东西,必然有另外简单的来替代。于是又有了一个`webbrowser`模块。可以专门用来打开指定网页。 >>> import webbrowser >>> webbrowser.open("http://www.itdiffer.com") True -不管是什么操作系统,只要如上操作就能打开网页了。 +不管是什么操作系统,只要如上操作就能打开网页。 真是神奇的标准库,有如此多的工具,能不加速开发进程吗?能不降低开发成本吗?“人生苦短,我用python”! From 8b0db44cb73b5ee27ed50be17e84f349d63eebb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 27 Apr 2016 11:32:45 +0800 Subject: [PATCH 171/288] p3 --- 223.md | 71 ++++++++++++++++++++++++++++------------------------------ 1 file changed, 34 insertions(+), 37 deletions(-) diff --git a/223.md b/223.md index 584a21a..a8e2db2 100644 --- a/223.md +++ b/223.md @@ -4,35 +4,35 @@ ##heapq -堆(heap),是一种数据结构。用维基百科中的说明: +堆(heap),是一种数据结构,引用维基百科中的说明: >堆(英语:heap),是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。 -对于这个新的概念,读者不要感觉心慌意乱或者恐惧,因为它本质上不是新东西,而是在我们已经熟知的知识基础上的扩展。 +对于这个新的概念,读者不要心慌意乱或者恐惧,因为它本质上不是新东西,而是在我们已经熟知的知识基础上的扩展出来的内容。 堆的实现是通过构造二叉堆,也就是一种二叉树。 ###基本知识 -这是一颗在苏州很常见的香樟树,马路两边、公园里随处可见。 +这是一棵在苏州很常见的香樟树,马路两边、公园里随处可见,特别是在艳阳高照的时候,它的树荫能把路面遮盖。 ![](./2images/22301.jpg) -但是,在编程中,我们常说的树通常不是上图那样的,而是这样的: +但是,在编程中,我们常说的树是这样的: ![](./2images/22302.jpg) -跟真实现实生活中看到的树反过来,也就是“根”在上面。为什么这样呢?我想主要是画着更方便吧。但是,我觉这棵树,是完全写实的作品。我本人做为一名隐姓埋名多年的抽象派画家,不喜欢这样的树,我画出来的是这样的: +这是一棵“根”在上面树,也是编程中常说的树。为什么这样呢?我想主要是画着更方便吧。上面那棵树虽然根在上面了,还完全是写实的作品,本人做为一名隐姓埋名多年的抽象派画家,不喜欢这样的树,我画出来的是这样的: ![](./2images/22303.jpg) 这棵树有两根枝杈,可不要小看这两根枝杈哦,《道德经》上不是说“一生二,二生三,三生万物”。一就是下面那个干,二就是两个枝杈,每个枝杈还可以看做下一个一,然后再有两个枝杈,如此不断重复(这简直就是递归呀),就成为了一棵大树。 -我的确很佩服我自己的后现代抽象派的作品。但是,我更喜欢把这棵树画成这样: +这棵树画成这样就更符合编程的习惯了,可以向下不断延伸。 ![](./2images/22304.jpg) -并且给它一个正规的名字:二叉树 +并且给它一个正规的名字:二叉树。 ![](./2images/22305.jpg) @@ -40,19 +40,19 @@ >在计算机科学中,二叉樹(英语:Binary tree)是每個節點最多有兩個子樹的樹結構。通常子樹被稱作「左子樹」(left subtree)和「右子樹」(right subtree)。二叉樹常被用於實現二叉查找樹和二叉堆。 -在上图的二叉树中,最顶端的那个数字就相当于树根,也就称作“根”。每个数字所在位置成为一个节点,每个节点向下分散出两个“子节点”。就上图的二叉树,在最后一层,并不是所有节点都有两个子节点,这类二叉树又称为完全二叉树(Complete Binary Tree),也有的二叉树,所有的节点都有两个子节点,这类二叉树称作满二叉树(Full Binarry Tree),如下图: +在上图的二叉树中,最顶端的那个数字就相当于树根,也就称作“根”。每个数字所在位置成为一个节点,每个节点向下分散出两个“子节点”。并不是所有节点都有两个子节点。这类二叉树又称为完全二叉树(Complete Binary Tree)。 + +也有的二叉树,所有的节点都有两个子节点,这类二叉树称作满二叉树(Full Binarry Tree),如下图: ![](./2images/22306.jpg) -下面讨论的对象是实现二叉堆就是通过二叉树实现的。其应该具有如下特点: +下面讨论的对象是通过二叉树实现的,其具有如下特点: - 节点的值大于等于(或者小于等于)任何子节点的值。 - 节点左子树和右子树是一个二叉堆。如果父节点的值总大于等于任何一个子节点的值,其为最大堆;若父节点值总小于等于子节点值,为最小堆。上面图示中的完全二叉树,就表示一个最小堆。 堆的类型还有别的,如斐波那契堆等,但很少用。所以,通常就将二叉堆也说成堆。下面所说的堆,就是二叉堆。而二叉堆又是用二叉树实现的。 -###堆的存储 - 堆用列表(有的语言中成为数组)来表示。如下图所示: ![](./2images/22307.jpg) @@ -63,11 +63,11 @@ 如果将上面的逻辑结构转换为存储结构,读者就能看出来了,不再是按照顺序排列的了。 -关于堆的各种,如插入、删除、排序等,本节不会专门讲授编码方法,读者可以参与有关资料。但是,下面要介绍如何用python中的模块heapq来实现这些操作。 +关于堆的各种,如插入、删除、排序等,本节不会专门讲授编码方法,读者可以参与有关资料。但是,下面要介绍如何用Python中的模块`heapq`来实现这些操作。 ###heapq模块 -heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: +`heapq`中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> import heapq >>> heapq.__all__ @@ -75,7 +75,7 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: 依次查看这些函数的使用方法。 -**heappush(heap, x)**:将x压入对heap(这是一个列表) +**heappush(heap, x)**:将x压入堆heap Help on built-in function heappush in module _heapq: @@ -94,7 +94,7 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> heap [0, 2, 3, 9, 4, 8] -请读者注意我上面的操作,在向堆增加数值的时候,我并没有严格按照什么顺序,是随意的。但是,当我查看堆的数据时,显示给我的是一个有一定顺序的数据结构。这种顺序不是按照从小到大,而是按照前面所说的完全二叉树的方式排列。显示的是存储结构,可以把它还原为逻辑结构,看看是不是一颗二叉树。 +请读者注意上面的操作,在向堆增加数值的时候并没有严格按照什么顺序,是随意的。但是,当查看堆的数据时,显示的是一个有一定顺序的数据结构。这种顺序不是按照从小到大,而是按照前面所说的完全二叉树的方式排列,显示的是存储结构,可以把它还原为逻辑结构,看看是不是一棵二叉树。 ![](./2images/22309.jpg) @@ -120,7 +120,7 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> hl [0, 3, 1, 4, 9, 6, 2, 5, 8] -经过这样的操作,列表hl就变成了堆(注意观察堆的顺序,和列表不同),可以对hl(堆)使用heappop()或者heappush()等函数了。否则,不可。 +经过这样的操作,列表`hl`就变成了堆(堆的顺序和列表不同),可以对`hl`(堆)使用`heappop()`或者`heappush()`等函数了。否则,不可。 >>> heapq.heappop(hl) 0 @@ -132,7 +132,7 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> hl [2, 3, 5, 4, 9, 6, 8, 9] -不要认为堆里面只能放数字,之所以用数字,是因为对它的逻辑结构比较好理解。 +不要认为堆里面只能放数字,举例中之所以用数字,是因为对它的逻辑结构比较好理解。 >>> heapq.heappush(hl, "q") >>> hl @@ -143,7 +143,7 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: **heapreplace()** -是heappop()和heappush()的联合,也就是删除一个,同时加入一个。例如: +是`heappop()`和`heappush()`的联合,也就是删除一个,同时加入一个。例如: >>> heap [2, 4, 3, 9, 8] @@ -152,19 +152,17 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> heap [3, 4, 3.14, 9, 8] -先简单罗列关于对的几个常用函数。那么堆在编程实践中的用途在哪方面呢?主要在排序上。一提到排序,读者肯定想到的是sorted()或者列表中的sort(),不错,这两个都是常用的函数,而且在一般情况下已经足够使用了。如果再使用堆排序,相对上述方法应该有优势。 - -堆排序的优势不仅更快,更重要的是有效地使用内存,当然,另外一个也不同忽视,就是简单易用。比如前面操作的,删除数列中最小的值,就是在排序基础上进行的操作。 +先简单罗列关于堆的几个常用函数。那么堆在编程实践中的用途有哪些呢?排序是一个应用方面。一提到排序,读者肯定想到的是`sorted()`或者列表中的`sort()`,这两个都是常用的函数,而且在一般情况下已经足够使用了。但如果使用堆排序,相对于其他排序,也有自己的优势。不同的排序方法有不同的特点,读者可以自行深入研究不同排序的优劣。 -##deque模块 +##deque -有这样一个问题:一个列表,比如是`[1,2,3]`,我打算在最右边增加一个数字。 +有这样一个问题:一个列表,比如是`[1, 2, 3]`,在最右边增加一个数字。 -这也太简单了,不就是用`append()`这个内建函数,追加一个吗? +这也太简单了,不就是用`append()`追加一个吗? -这是简单,我要得寸进尺,能不能在最左边增加一个数字呢? +这是简单。但,得寸进尺,能不能在最左边增加一个数字呢? -这个嘛,应该有办法。不过得想想了。读者在向下阅读的时候,能不能想出一个方法来? +这个应该有办法,不过得想想了。读者在向下阅读之前候,能不能想出一个方法来? >>> lst = [1, 2, 3] >>> lst.append(4) @@ -175,20 +173,19 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> nl [7, 1, 2, 3, 4] -你或许还有别的方法。但是,python为我们提供了一个更简单的模块,来解决这个问题。 +你或许还有别的方法。但是,Python为我们提供了一个更简单的模块,来解决这个问题。 >>> from collections import deque -这次用这种引用方法,因为collections模块中东西很多,我们只用到deque。 +这次用这种引用方法是因为`collections`模块中东西很多,我们只用到`deque`。 - >>> lst - [1, 2, 3, 4] + >>> lst = [1, 2, 3, 4] -还是这个列表。试试分别从右边和左边增加数 +还是这个列表,试试分别从右边和左边增加数字。 >>> qlst = deque(lst) -这是必须的,将列表转化为deque。deque在汉语中有一个名字,叫做“双端队列”(double-ended queue)。 +这是必需的,将列表转化为deque。deque在汉语中有一个名字,叫做“双端队列”(double-ended queue)。 >>> qlst.append(5) #从右边增加 >>> qlst @@ -208,13 +205,13 @@ heapq中的heap是堆,q就是queue(队列)的缩写。此模块包括: >>> qlst deque([1, 2, 3, 4]) -删除也分左右。下面这个,请读者仔细观察,更有点意思。 +删除也分左右。下面这个,请读者仔细观察。 >>> qlst.rotate(3) >>> qlst deque([2, 3, 4, 1]) -rotate()的功能是将[1, 2, 3, 4]的首位连起来,你就想象一个圆环,在上面有1,2,3,4几个数字。如果一开始正对着你的是1,依顺时针方向排列,就是从1开始的数列,如下图所示: +rotate()的功能是将[1, 2, 3, 4]的首尾连起来,你就想象一个圆环,在上面有1, 2, 3, 4几个数字。如果一开始正对着你的是1,依顺时针方向排列,就是从1开始的数列,如下图所示: ![](./2images/22310.jpg) @@ -222,7 +219,7 @@ rotate()的功能是将[1, 2, 3, 4]的首位连起来,你就想象一个圆环 ![](./2images/22311.jpg) -请原谅我的后现代注意超级抽象派作图方式。从图中可以看出,数列变成了[2, 3, 4, 1]。rotate()作用就好像在拨转这个圆环。 +请原谅我的后现代注意超级抽象派作图方式。从图中可以看出,数列变成了`[2, 3, 4, 1]`。`rotate()`作用就好像在拨转这个圆环。 >>> qlst deque([3, 4, 1, 2]) @@ -230,9 +227,9 @@ rotate()的功能是将[1, 2, 3, 4]的首位连起来,你就想象一个圆环 >>> qlst deque([4, 1, 2, 3]) -如果参数是复数,那么就逆时针转。 +如果参数是负数,那么就逆时针转。 -在deque中,还有extend和extendleft方法。读者可自己调试。 +在deque中,还有`extend()`和`extendleft()`方法。读者可自己调试。 ------ From 624c836244236d0ce4b2343699562e5449902984 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Wed, 27 Apr 2016 23:13:18 +0800 Subject: [PATCH 172/288] p3 --- 224.md | 111 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 58 insertions(+), 53 deletions(-) diff --git a/224.md b/224.md index 085a5df..6c90af4 100644 --- a/224.md +++ b/224.md @@ -4,7 +4,7 @@ “一寸光阴一寸金,寸金难买寸光阴”,时间是宝贵的。 -在日常生活中,“时间”这个属于是比较笼统和含糊的。在物理学中,“时间”是一个非常明确的概念。在python中,“时间”可以通过相关模块实现。 +在日常生活中,“时间”这个术语是比较笼统和含糊的。在物理学中,“时间”是一个非常明确的概念。在Python中,“时间”可以通过相关模块实现。 ##calendar @@ -19,11 +19,11 @@ 19 20 21 22 23 24 25 26 27 28 29 30 31 -轻而易举得到了2015年1月的日历,并且排列的还那么整齐。这就是calendar模块。读者可以用dir()去查看这个模块下的所有内容。为了让读者阅读方便,将常用的整理如下: +轻而易举得到了2015年1月的日历,并且排列的还那么整齐。这就是`calendar`模块。读者可以用`dir()`去查看这个模块下的所有内容。为了让读者阅读方便,将常用的整理如下: **calendar(year,w=2,l=1,c=6)** -返回year年年历,3个月一行,间隔距离为c。 每日宽度间隔为w字符。每行长度为21* W+18+2* C。l是每星期行数。 +返回year年的年历,3个月一行,间隔距离为c。 每日宽度间隔为w字符。每行长度为`21* w+18+2* c`。l是每星期行数。 >>> year = calendar.calendar(2015) >>> print year @@ -64,6 +64,8 @@ 26 27 28 29 30 31 23 24 25 26 27 28 29 28 29 30 31 30 +其它部分就是按照上面的样式,将2015年度的各个月份日历完全显示出来。 + **isleap(year)** 判断是否为闰年,是则返回true,否则false. @@ -75,18 +77,18 @@ 怎么判断一年是闰年,常常见诸于一些编程语言的练习题,现在用一个方法搞定。 -**leapdays(y1,y2)** +**leapdays(y1, y2)** -返回在Y1,Y2两年之间的闰年总数,包括y1,但不包括y2,这有点如同序列的切片一样。 +返回在y1,y2两年之间的闰年总数,包括y1,但不包括y2,这有点如同序列的切片一样。 - >>> calendar.leapdays(2000,2004) + >>> calendar.leapdays(2000, 2004) 1 - >>> calendar.leapdays(2000,2003) + >>> calendar.leapdays(2000, 2003) 1 -**month(year,month,w=2,l=1)** +**month(year, month, w=2, l=1)** -返回year年month月日历,两行标题,一周一行。每日宽度间隔为w字符。每行的长度为7* w+6。l是每星期的行数。 +返回year年month月日历,两行标题,一周一行。每日宽度间隔为w字符。每行的长度为7* w+6,l是每星期的行数。 >>> print calendar.month(2015, 5) May 2015 @@ -99,14 +101,14 @@ **monthcalendar(year,month)** -返回一个列表,列表内的元素还是列表,这叫做嵌套列表。每个子列表代表一个星期,都是从星期一到星期日,如果没有本月的日期,则为0。 +返回一个列表,列表内的元素还是列表。每个子列表代表一个星期,都是从星期一到星期日,如果没有本月的日期,则为0。 >>> calendar.monthcalendar(2015, 5) [[0, 0, 0, 0, 1, 2, 3], [4, 5, 6, 7, 8, 9, 10], [11, 12, 13, 14, 15, 16, 17], [18, 19, 20, 21, 22, 23, 24], [25, 26, 27, 28, 29, 30, 31]] 读者可以将这个结果和`calendar.month(2015, 5)`去对照理解。 -**monthrange(year,month)** +**monthrange(year, month)** 返回一个元组,里面有两个整数。第一个整数代表着该月的第一天从星期几是(从0开始,依次为星期一、星期二,直到6代表星期日)。第二个整数是该月一共多少天。 @@ -128,19 +130,20 @@ **time()** -time模块是常用的。 +`time`模块很常用,比如记录某个程序运行时间的长短等,下面一一道来其中的方法。 + +- `time()` >>> import time >>> time.time() 1430745298.391026 -`time.time()`获得的是当前时间(严格说是时间戳),只不过这个时间对人不友好,它是以1970年1月1日0时0分0秒为计时起点,到当前的时间长度(不考虑闰秒) +`time.time()`获得的是当前时间(严格说是时间戳),只不过这个时间对人不友好,它是以1970年1月1日0时0分0秒为计时起点,到当前的时间长度(不考虑闰秒)。 >UNIX時間,或稱POSIX時間是UNIX或類UNIX系統使用的時間表示方式:從協調世界時1970年1月1日0時0分0秒起至現在的總秒數,不考慮閏秒 >現時大部分使用UNIX的系統都是32位元的,即它們會以32位二進制數字表示時間。但是它們最多只能表示至協調世界時間2038年1月19日3時14分07秒(二進制:01111111 11111111 11111111 11111111,0x7FFF:FFFF),在下一秒二進制數字會是10000000 00000000 00000000 00000000,(0x8000:0000),這是負數,因此各系統會把時間誤解作1901年12月13日20時45分52秒(亦有說回歸到1970年)。這時可能會令軟體發生問題,導致系統癱瘓。 - >目前的解決方案是把系統由32位元轉為64位元系統。在64位系統下,此時間最多可以表示到292,277,026,596年12月4日15時30分08秒。 有没有对人友好一点的时间显示呢? @@ -168,7 +171,7 @@ time模块是常用的。 >>> t[1] 5 -通过索引,能够得到相应的属性,上面的例子中就得到了当前时间的月份。 +通过索引能够得到相应的属性,上面的例子中就得到了当前时间的月份。 其实,`time.localtime()`不是没有参数,它在默认情况下,以`time.time()`的时间戳为参数。言外之意就是说可以自己输入一个时间戳,返回那个时间戳所对应的时间(按照公元和时分秒计时)。例如: @@ -185,7 +188,7 @@ localtime()得到的是本地时间,如果要国际化,就最好使用格林 >格林威治標準時間(中國大陸翻譯:格林尼治平均時間或格林尼治標準時間,台、港、澳翻譯:格林威治標準時間;英语:Greenwich Mean Time,GMT)是指位於英國倫敦郊區的皇家格林威治天文台的標準時間,因為本初子午線被定義在通過那裡的經線。 -还有更友好的: +还有更友好的,请继续阅读。 **asctime()** @@ -200,7 +203,7 @@ localtime()得到的是本地时间,如果要国际化,就最好使用格林 >>> time.asctime(h) 'Mon Jan 12 21:46:40 1970' -注意,`time.asctime()`的参数必须是时间元组,类似上面那种。不是时间戳,通过`time.time()`得到的时间戳,也可以转化为上面形式: +注意,`time.asctime()`的参数必须是时间元组,类似上面那种。不是时间戳,通过`time.time()`得到的时间戳也可以转化为上面形式。 **ctime()** @@ -212,9 +215,9 @@ localtime()得到的是本地时间,如果要国际化,就最好使用格林 >>> time.ctime(1000000) 'Mon Jan 12 21:46:40 1970' -跟前面得到的结果是一样的。只不过是用了时间戳作为参数。 +跟前面得到的结果是一样的,只不过用了时间戳作为参数。 -在前述函数中,通过localtime()、gmtime()得到的是时间元组,通过time()得到的是时间戳。有的函数如asctime()是以时间元组为参数,有的如ctime()是以时间戳为函数。这样做的目的是为了满足编程中多样化的需要。 +在前述函数中,通过`localtime()`、`gmtime()`得到的是时间元组,通过`time()`得到的是时间戳。有的函数如`asctime()`是以时间元组为参数,有的如`ctime()`是以时间戳为参数,这样做的目的是为了满足编程中多样化的需要。 **mktime()** @@ -226,24 +229,24 @@ mktime()也是以时间元组为参数,但是它返回的不是可读性更好 >>> time.mktime(lt) 1430783729.0 -返回了时间戳。就类似于localtime()的逆过程(localtime()是以时间戳为参数)。 +返回了时间戳。就类似于`localtime()`的逆过程(`localtime()`是以时间戳为参数)。 -以上基本能够满足编程需要了吗?好像还缺点什么,因为在编程中,用的比较多的是“字符串”,似乎还没有将时间转化为字符串的函数。这个应该有。 +好像还缺点什么,因为在编程中,用的比较多的是“字符串”,似乎还没有将时间转化为字符串的函数。这个应该有。 **strftime()** 函数格式稍微复杂一些。 ->Help on built-in function strftime in module time: -> ->strftime(...) -> strftime(format[, tuple]) -> string -> -> Convert a time tuple to a string according to a format specification. -> See the library reference manual for formatting codes. When the time tuple -> is not present, current time as returned by localtime() is used. + Help on built-in function strftime in module time: + + strftime(...) + strftime(format[, tuple]) -> string + + Convert a time tuple to a string according to a format specification. + See the library reference manual for formatting codes. When the time tuple + is not present, current time as returned by localtime() is used. -将时间元组按照指定格式要求转化为字符串。如果不指定时间元组,就默认为localtime()值。我说复杂,是在于其format,需要用到下面的东西。 +将时间元组按照指定格式要求转化为字符串。如果不指定时间元组,就默认为`localtime()`值。说复杂,是在于其format,需要用到下面的东西。 | 格式| 含义| 取值范围(格式)| |------|-------|-------------------| @@ -279,15 +282,17 @@ mktime()也是以时间元组为参数,但是它返回的不是可读性更好 **strptime()** ->Help on built-in function strptime in module time: -> ->strptime(...) -> strptime(string, format) -> struct_time -> -> Parse a string to a time tuple according to a format specification. -> See the library reference manual for formatting codes (same as strftime()). + Help on built-in function strptime in module time: + + strptime(...) + strptime(string, format) -> struct_time + + Parse a string to a time tuple according to a format specification. + See the library reference manual for formatting codes (same as strftime()). + +`strptime()`的作用是将字符串转化为时间元组。 -strptime()的作用是将字符串转化为时间元组。请注意的是,其参数要指定两个,一个是时间字符串,另外一个是时间字符串所对应的格式,格式符号用上表中的。例如: +请注意的是,其参数要指定两个,一个是时间字符串,另外一个是时间字符串所对应的格式,格式符号用上表中的。例如: >>> today = time.strftime("%y/%m/%d") >>> today @@ -297,9 +302,9 @@ strptime()的作用是将字符串转化为时间元组。请注意的是,其 ##datetime -虽然time模块已经能够把有关时间方面的东西搞定了,但是,在某些调用的时候,还感觉不是很直接,于是又出来了一个datetime模块,供程序猿和程序媛们选择使用。 +虽然`time`模块已经能够把有关时间方面的东西搞定了,但是,有时调用起来感觉不是很直接,于是又出来了一个`datetime`模块,供程序猿和程序媛们选择使用。 -datetime模块中有几个类: +`datetime`模块中有几个类: - datetime.date:日期类,常用的属性有year/month/day - datetime.time:时间类,常用的有hour/minute/second/microsecond @@ -307,7 +312,7 @@ datetime模块中有几个类: - datetime.timedelta:时间间隔,即两个时间点之间的时间长度 - datetime.tzinfo:时区类 -###date类 +###`date`类 通过实例了解常用的属性: @@ -316,15 +321,15 @@ datetime模块中有几个类: >>> today datetime.date(2015, 5, 5) -这里其实生成了一个日期对象,然后操作这个对象的各种属性。用print语句,可以是视觉更佳: +其实这里生成了一个日期对象,然后操作这个对象的各种属性。可以用`print`,以获得更佳视觉: - >>> print today + >>> print today #Python 3: print(today) 2015-05-05 - >>> print today.ctime() + >>> print today.ctime() #Python 3: print(today.ctime()) Tue May 5 00:00:00 2015 - >>> print today.timetuple() + >>> print today.timetuple() #Python 3: print(today.timetuple()) time.struct_time(tm_year=2015, tm_mon=5, tm_mday=5, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=125, tm_isdst=-1) - >>> print today.toordinal() + >>> print today.toordinal() #Python 3: print(today.toordinal()) 735723 特别注意,如果你妄图用`datetime.date.year()`,是会报错的,因为year不是一个方法,必须这样行: @@ -386,27 +391,27 @@ datetime模块中有几个类: 主要用来做时间的运算。比如: >>> now = datetime.datetime.now() - >>> print now + >>> print now #Python 3: print(now) 2015-05-05 09:22:43.142520 -没有讲述datetime类,因为在有了date和time类知识之后,这个类比较简单,我最喜欢这个now方法了。 +没有讲述`datetime`类,因为在有了date和time类知识之后,这个类比较简单。 -对now增加5个小时 +对`now`增加5个小时; >>> b = now + datetime.timedelta(hours=5) - >>> print b + >>> print b #Python 3: print(b) 2015-05-05 14:22:43.142520 -增加两周 +增加两周; >>> c = now + datetime.timedelta(weeks=2) - >>> print c + >>> print c #Python 3: print(c) 2015-05-19 09:22:43.142520 计算时间差: >>> d = c - b - >>> print d + >>> print d #Python 3: print(d) 13 days, 19:00:00 ------ From 85873aee96854a4f24b040279b843adff935fcea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= <qiwsir@gmail.com> Date: Thu, 28 Apr 2016 10:16:37 +0800 Subject: [PATCH 173/288] p3 --- 225.md | 161 +++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 116 insertions(+), 45 deletions(-) diff --git a/225.md b/225.md index b27e5de..08372b1 100644 --- a/225.md +++ b/225.md @@ -4,55 +4,61 @@ ##urllib -urllib模块用于读取来自网上(服务器上)的数据,比如不少人用python做爬虫程序,就可以使用这个模块。先看一个简单例子: +`urllib`模块用于读取来自网上(服务器上)的数据,比如不少人用Python做爬虫程序,就可以使用这个模块。先看一个简单例子: + +在Python 2中,这样操作: >>> import urllib >>> itdiffer = urllib.urlopen("http://www.itdiffer.com") -这样就已经把我的网站[www.itdiffer.com](http://www.itdiffer.com)首页的内容拿过来了,得到了一个类似文件的对象。接下来的操作跟操作一个文件一样(如果忘记了文件怎么操作,可以参考:[《文件(1)](./126.md)) +但是如果读者使用的是Python 3,必须换个姿势: + + >>> import urllib.request + >>> itdiffer = urllib.request.urlopen("http://www.itdiffer.com") + +这样就已经把我的网站[www.itdiffer.com](http://www.itdiffer.com)首页的内容拿过来了,得到了一个类似文件的对象。接下来的操作跟操作一个文件一样。 - >>> print itdiffer.read() + >>> print itdiffer.read() #Python 3: print(itdiffer.read()) <!DOCTYPE HTML> <html> <head> <title>I am Qiwsir ....//因为内容太多,下面就省略了 -就这么简单,完成了对一个网页的抓取。当然,如果你真的要做爬虫程序,还不是仅仅如此。这里不介绍爬虫程序如何编写,仅说明urllib模块的常用属性和方法。 +这样就完成了对网页的抓取。当然,如果你真的要做爬虫程序,还不是仅仅如此。这里不介绍爬虫程序如何编写,仅说明`urllib`模块的常用属性和方法。 + +Python 2: >>> dir(urllib) ['ContentTooShortError', 'FancyURLopener', 'MAXFTPCACHE', 'URLopener', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', '_asciire', '_ftperrors', '_have_ssl', '_hexdig', '_hextochr', '_hostprog', '_is_unicode', '_localhost', '_noheaders', '_nportprog', '_passwdprog', '_portprog', '_queryprog', '_safe_map', '_safe_quoters', '_tagprog', '_thishost', '_typeprog', '_urlopener', '_userprog', '_valueprog', 'addbase', 'addclosehook', 'addinfo', 'addinfourl', 'always_safe', 'base64', 'basejoin', 'c', 'ftpcache', 'ftperrors', 'ftpwrapper', 'getproxies', 'getproxies_environment', 'i', 'localhost', 'noheaders', 'os', 'pathname2url', 'proxy_bypass', 'proxy_bypass_environment', 'quote', 'quote_plus', 're', 'reporthook', 'socket', 'splitattr', 'splithost', 'splitnport', 'splitpasswd', 'splitport', 'splitquery', 'splittag', 'splittype', 'splituser', 'splitvalue', 'ssl', 'string', 'sys', 'test1', 'thishost', 'time', 'toBytes', 'unquote', 'unquote_plus', 'unwrap', 'url2pathname', 'urlcleanup', 'urlencode', 'urlopen', 'urlretrieve'] -选几个常用的介绍,其它的如果读者用到,可以通过查看文档了解。 +Python 3: + + >>> dir(urllib.request) + ['AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'AbstractHTTPHandler', 'BaseHandler', 'CacheFTPHandler', 'ContentTooShortError', 'DataHandler', 'FTPHandler', 'FancyURLopener', 'FileHandler', 'HTTPBasicAuthHandler', 'HTTPCookieProcessor', 'HTTPDefaultErrorHandler', 'HTTPDigestAuthHandler', 'HTTPError', 'HTTPErrorProcessor', 'HTTPHandler', 'HTTPPasswordMgr', 'HTTPPasswordMgrWithDefaultRealm', 'HTTPPasswordMgrWithPriorAuth', 'HTTPRedirectHandler', 'HTTPSHandler', 'MAXFTPCACHE', 'OpenerDirector', 'ProxyBasicAuthHandler', 'ProxyDigestAuthHandler', 'ProxyHandler', 'Request', 'URLError', 'URLopener', 'UnknownHandler', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '__version__', '_cut_port_re', '_ftperrors', '_have_ssl', '_localhost', '_noheaders', '_opener', '_parse_proxy', '_proxy_bypass_macosx_sysconf', '_randombytes', '_safe_gethostbyname', '_thishost', '_url_tempfiles', 'addclosehook', 'addinfourl', 'base64', 'bisect', 'build_opener', 'collections', 'contextlib', 'email', 'ftpcache', 'ftperrors', 'ftpwrapper', 'getproxies', 'getproxies_environment', 'getproxies_registry', 'hashlib', 'http', 'install_opener', 'io', 'localhost', 'noheaders', 'os', 'parse_http_list', 'parse_keqv_list', 'pathname2url', 'posixpath', 'proxy_bypass', 'proxy_bypass_environment', 'proxy_bypass_registry', 'quote', 're', 'request_host', 'socket', 'splitattr', 'splithost', 'splitpasswd', 'splitport', 'splitquery', 'splittag', 'splittype', 'splituser', 'splitvalue', 'ssl', 'sys', 'tempfile', 'thishost', 'time', 'to_bytes', 'unquote', 'unquote_to_bytes', 'unwrap', 'url2pathname', 'urlcleanup', 'urljoin', 'urlopen', 'urlparse', 'urlretrieve', 'urlsplit', 'urlunparse', 'warnings'] + +选几个常用的介绍,如果读者用到其它的,可以通过查看文档了解。 **urlopen()** -urlopen()主要用于打开url文件,然后就获得指定url的数据,接下来就如同在本地操作文件那样来操作。 +`urlopen()`主要用于打开url文件,然后就获得指定url的数据,然后就如同在操作文件那样来操作。 ->Help on function urlopen in module urllib: + Help on function urlopen in module urllib: ->urlopen(url, data=None, proxies=None) -> Create a file-like object for the specified URL to read from. + urlopen(url, data=None, proxies=None) + Create a file-like object for the specified URL to read from. +查看文档信息,在Python 2下使用`help(urllib.urlopen)`,在Python 3下使用`help(urllib.request.urlopen)`。两者查询结果略有差异,上述显示的是Python 2下的查询结果。 + 得到的对象被叫做类文件。从名字中也可以理解后面的操作了。先对参数说明一下: - url:远程数据的路径,常常是网址 - data:如果使用post方式,这里就是所提交的数据 - proxies:设置代理 -关于参数的详细说明,还可以参考[python的官方文档](https://docs.python.org/2/library/urllib.html),这里仅演示最常用的,如前面的例子那样。 - -当得到了类文件对象之后,就可以对它进行操作。变量itdiffer引用了得到的类文件对象,通过它查看: - - >>> dir(itdiffer) - ['__doc__', '__init__', '__iter__', '__module__', '__repr__', 'close', 'code', 'fileno', 'fp', 'getcode', 'geturl', 'headers', 'info', 'next', 'read', 'readline', 'readlines', 'url'] - -读者从这个结果中也可以看出,这个类文件对象也是可迭代的。常用的方法: +关于参数的详细说明,还可以参考[Python的官方文档](https://docs.python.org/2/library/urllib.html),这里仅演示最常用的,如前面的例子那样。 -- read(),readline(),readlines(),fileno(),close():都与文件操作一样,这里不再赘述。可以参考前面有关文件章节 -- info():返回头信息 -- getcode():返回http状态码 -- geturl():返回url +当得到了类文件对象之后,即变量`itdiffer`引用了得到的类文件对象,依然可以用老办法`dir(itdiffer)`查看它的属性和方法,但在不同的Python版本下,显示结果是有所不同的,区别的原因是两个版本对文件对象的不同处理。 简单举例: @@ -67,7 +73,7 @@ urlopen()主要用于打开url文件,然后就获得指定url的数据,接 **对url编码、解码** -url对其中的字符有严格要求,不许可某些特殊字符,这就要对url进行编码和解码了。这个在进行web开发的时候特别要注意。urllib模块提供这种功能。 +url对其中的字符有严格的编码要求,要对url进行编码和解码。在进行web开发的时候特别要注意。`urllib`或者`urllib.request`模块提供这种功能。 - quote(string[, safe]):对字符串进行编码。参数safe指定了不需要编码的字符 - urllib.unquote(string) :对字符串进行解码 @@ -77,14 +83,23 @@ url对其中的字符有严格要求,不许可某些特殊字符,这就要 - pathname2url(path):将本地路径转换成url路径 - url2pathname(path):将url路径转换成本地路径 -看例子就更明白了: +看例子就更明白了。下面的操作是在Python 2中进行的, >>> du = "http://www.itdiffer.com/name=python book" - >>> urllib.quote(du) + >>> urllib.quote(du) 'http%3A//www.itdiffer.com/name%3Dpython%20book' >>> urllib.quote_plus(du) 'http%3A%2F%2Fwww.itdiffer.com%2Fname%3Dpython+book' +如果是Python 3的读者,请注意,该方法不在前述所引用的`urllib.request`中,尽管它里面有`quote()`方法,但最好的操作是`import urllib.parrse`,所以,Python 3下应该这么操作: + + >>> import urllib.parse + >>> du = 'http://www.itdiffer.com/name=python book' + >>> urllib.parse.quote(du) + 'http%3A//www.itdiffer.com/name%3Dpython%20book' + >>> urllib.parse.quote_plus(du) + 'http%3A%2F%2Fwww.itdiffer.com%2Fname%3Dpython+book' + 注意看空格的变化,一个被编码成`%20`,另外一个是`+` 再看解码的,假如在google中搜索`零基础 python`,结果如下图: @@ -95,29 +110,51 @@ url对其中的字符有严格要求,不许可某些特殊字符,这就要 这不是重点,重点是看url,它就是用`+`替代空格了。 +Python 2: + >>> dup = urllib.quote_plus(du) >>> urllib.unquote_plus(dup) 'http://www.itdiffer.com/name=python book' +Python 3: + + >>> dup = urllib.parse.quote_plus(du) + >>> urllib.parse.unquote_plus(dup) + 'http://www.itdiffer.com/name=python book' + 从解码效果来看,比较完美地逆过程。 +Python 2: + >>> urllib.urlencode({"name":"qiwsir","web":"itdiffer.com"}) 'web=itdiffer.com&name=qiwsir' -这个在编程中,也会用到,特别是开发网站时候。 +Python 3: + + >>> urllib.parse.urlencode({"name":"qiwsir","web":"itdiffer.com"}) + 'name=qiwsir&web=itdiffer.com' + +如果将来你要做一个网站,上面的方法或许会用到。 **urlretrieve()** -虽然urlopen()能够建立类文件对象,但是,那还不等于将远程文件保存在本地存储器中,urlretrieve()就是满足这个需要的。先看实例: +虽然urlopen()能够建立类文件对象,但是,那还不等于将远程文件保存在本地存储器中,`urlretrieve()`就是满足这个需要的。先看实例。 + +以下是在Python 2中的操作: >>> import urllib - >>> urllib.urlretrieve("http://www.itdiffer.com/images/me.jpg","me.jpg") + >>> urllib.urlretrieve("http://www.itdiffer.com/images/me.jpg", "me.jpg") ('me.jpg', ) - >>> -me.jpg是一张存在于服务器上的图片,地址是:http://www.itdiffer.com/images/me.jpg,把它保存到本地存储器中,并且仍旧命名为me.jpg。注意,如果只写这个名字,表示存在启动python交互模式的那个目录中,否则,可以指定存储具体目录和文件名。 +如果在Python 3中,则要使用`urllib.request`: + + >>> import urllib.request + >>> urllib.request.urlretrieve("http://www.itdiffer.com/images/me.jpg", "me.jpg") + ('me.jpg', ) -在[urllib官方文档](https://docs.python.org/2/library/urllib.html)中有一大段相关说明,读者可以去认真阅读。这里仅简要介绍一下相关参数。 +`me.jpg`是一张存在于服务器上的图片,地址是:http://www.itdiffer.com/images/me.jpg,把它保存到本地存储器中,并且仍旧命名为me.jpg。注意,如果只写这个名字,表示存在启动Python交互模式的那个目录中,否则,可以指定存储具体目录和文件名。 + +在urllib官方文档([Python 2文档](https://docs.python.org/2/library/urllib.html),[Python 3文档](https://docs.python.org/3/library/urllib.html))中有一大段相关说明,读者可以去认真阅读。这里仅简要介绍一下相关参数。 `urllib.urlretrieve(url[, filename[, reporthook[, data]]])` @@ -132,6 +169,8 @@ me.jpg是一张存在于服务器上的图片,地址是:http://www.itdiffer. # coding=utf-8 import urllib + #Python 3 + #import urllib.request def go(a,b,c): per = 100.0 * a * b / c @@ -139,11 +178,13 @@ me.jpg是一张存在于服务器上的图片,地址是:http://www.itdiffer. per = 100 print "%.2f%%" % per - url = "http://youxi.66wz.com/uploads/1046/1321/11410192.90d133701b06f0cc2826c3e5ac34c620.jpg" + url = "http://ww2.sinaimg.cn/mw690/8e4023f8gw1f34gs20b4ij20qo0zkthw.jpg" local = "/home/qw/Pictures/g.jpg" urllib.urlretrieve(url, local, go) + #Python 3 + #urllib.request.urlrretrieve(url, local, go) -这段程序就是要下载指定的图片,并且保存为本地指定位置的文件,同时要显示下载的进度。上述文件保存之后,执行,显示如下效果: +这段程序就是要下载指定的图片,并且保存为本地指定位置的文件,同时要显示下载的进度。上述文件保存之后执行,显示如下效果: $ python 22501.py 0.00% @@ -161,7 +202,7 @@ me.jpg是一张存在于服务器上的图片,地址是:http://www.itdiffer. 97.59% 100.00% -到相应目录中查看,能看到与网上地址一样的文件。我这里就不对结果截图了,唯恐少部分读者鼻子流血。 +到相应目录中查看,能看到与网上地址一样的文件。我这里就不对结果截图了,读者自行查看(或许在本书出版的时候,这张什么的图片已经看不到了,你应该把这视为正常现象,可以换一张图片地址)。 ##urllib2 @@ -178,39 +219,69 @@ urllib2是另外一个模块,它跟urllib有相似的地方——都是对url >>> dir(urllib2) ['AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'AbstractHTTPHandler', 'BaseHandler', 'CacheFTPHandler', 'FTPHandler', 'FileHandler', 'HTTPBasicAuthHandler', 'HTTPCookieProcessor', 'HTTPDefaultErrorHandler', 'HTTPDigestAuthHandler', 'HTTPError', 'HTTPErrorProcessor', 'HTTPHandler', 'HTTPPasswordMgr', 'HTTPPasswordMgrWithDefaultRealm', 'HTTPRedirectHandler', 'HTTPSHandler', 'OpenerDirector', 'ProxyBasicAuthHandler', 'ProxyDigestAuthHandler', 'ProxyHandler', 'Request', 'StringIO', 'URLError', 'UnknownHandler', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', '_cut_port_re', '_opener', '_parse_proxy', '_safe_gethostbyname', 'addinfourl', 'base64', 'bisect', 'build_opener', 'ftpwrapper', 'getproxies', 'hashlib', 'httplib', 'install_opener', 'localhost', 'mimetools', 'os', 'parse_http_list', 'parse_keqv_list', 'posixpath', 'proxy_bypass', 'quote', 'random', 'randombytes', 're', 'request_host', 'socket', 'splitattr', 'splithost', 'splitpasswd', 'splitport', 'splittag', 'splittype', 'splituser', 'splitvalue', 'sys', 'time', 'toBytes', 'unquote', 'unwrap', 'url2pathname', 'urlopen', 'urlparse', 'warnings'] -比较常用的比如urlopen()跟urllib.open()是完全类似的。 +比较常用的比如`urlopen()`跟`urllib.open()`是完全类似的。 + +但是,要注意,上述言论仅仅是针对Python 2的,在Python 3中,已经没有`urllib2`这个模块了,取代它的是`urllib.request`。 **Request类** 正如前面区别urllib和urllib2所讲,利用urllib2模块可以建立一个Request对象。方法就是: +Python 2: + >>> req = urllib2.Request("http://www.itdiffer.com") -建立了Request对象之后,它的最直接应用就是可以作为urlopen()方法的参数 +Python 3: + + >>> import urllib.request + >>> req = urllib.request.Request("http://www.itdiffer.com") + +建立了Request对象之后,它的最直接应用就是可以作为`urlopen()`方法的参数 + +Python 2: >>> response = urllib2.urlopen(req) >>> page = response.read() >>> print page -因为与前面的`urllib.open("http://www.itdiffer.com")`结果一样,就不浪费篇幅了。 +Python 3: + + >>> response = urllib.request.urlopen(req) + >>> page = response.read() + >>> print(page) + +显示结果从略。但是,如果Request对象仅仅局限于此,似乎还没有什么太大的优势。因为刚才的访问仅仅是满足以get方式请求页面,并建立类文件对象。如果是通过post向某地址提交数据,也可以建立Request对象。 -但是,如果Request对象仅仅局限于此,似乎还没有什么太大的优势。因为刚才的访问仅仅是满足以get方式请求页面,并建立类文件对象。如果是通过post向某地址提交数据,也可以建立Request对象。 +Python 2: import urllib import urllib2 url = 'http://www.itdiffer.com/register.py' - values = {'name' : 'qiwsir', - 'location' : 'China', - 'language' : 'Python' } + values = {'name' : 'qiwsir', 'location' : 'China', 'language' : 'Python' } data = urllib.urlencode(values) # 编码 req = urllib2.Request(url, data) # 发送请求同时传data表单 response = urllib2.urlopen(req) #接受反馈的信息 the_page = response.read() #读取反馈的内容 -注意,读者不能照抄上面的程序,然后运行代码。因为那个url中没有相应的接受客户端post上去的data的程序文件。上面的代码只是以一个例子来显示Request对象的另外一个用途,还有就是在这个例子中是以post方式提交数据。 +Python 3: + + + import urllib.request + import urllib.parse + + url = 'http://www.itdiffer.com/register.py' + + values = {'name' : 'qiwsir', 'location' : 'China', 'language' : 'Python' } + + data = urllib.parse.urlencode(values) # 编码 + req = urllib.request.Request(url, data) # 发送请求同时传data表单 + response = urllib.request.urlopen(req) #接受反馈的信息 + the_page = response.read() #读取反馈的内容 + +如果读者照抄上面的程序,然后运行代码,肯定报错。因为那个url中没有相应的接受客户端post上去的data的程序文件,为了让程序运行,读者可以开发接受数据的程序。上面的代码只是以一个例子来显示Request对象的另外一个用途,并且在这个例子中是以post方式提交数据。 在网站中,有的会通过User-Agent来判断访问者是浏览器还是别的程序,如果通过别的程序访问,它有可能拒绝。这时候,我们编写程序去访问,就要设置headers了。设置方法是: @@ -219,13 +290,13 @@ urllib2是另外一个模块,它跟urllib有相似的地方——都是对url 然后重新建立Request对象: - req = urllib2.Request(url, data, headers) + req = urllib2.Request(url, data, headers) #Python 3: req = urllib.request.Request(url, data, headers) -再用urlopen()方法访问: +再用·urlopen()·方法访问: - response = urllib2.urlopen(req) + response = urllib2.urlopen(req) #Python 3: response = urllib.request.urlopen(req) -除了上面演示之外,urllib2模块的东西还很多,比如还可以: +除了上面演示之外,`urllib2`或者`urllib.request`的东西还很多,比如还可以: - 设置HTTP Proxy - 设置Timeout值 From 1ad16e38fbb2c64f15b85be26d0920a5e0191ce7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Fri, 29 Apr 2016 08:49:27 +0800 Subject: [PATCH 174/288] p3 --- 226.md | 78 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 39 insertions(+), 39 deletions(-) diff --git a/226.md b/226.md index 32e16b7..359c5fc 100644 --- a/226.md +++ b/226.md @@ -2,15 +2,15 @@ #标准库(7) -##xml +##XML -xml在软件领域用途非常广泛,有名人曰: +XML在软件领域用途非常广泛,有名人曰: >“当 XML(扩展标记语言)于 1998 年 2 月被引入软件工业界时,它给整个行业带来了一场风暴。有史以来第一次,这个世界拥有了一种用来结构化文档和数据的通用且适应性强的格式,它不仅仅可以用于 WEB,而且可以被用于任何地方。” >---《Designing With Web Standards Second Edition》, Jeffrey Zeldman -对于xml如果要做一个定义式的说明,就不得不引用w3school里面简洁而明快的说明: +如果要对XML做一个定义式的说明,就不得不引用w3school里面简洁而明快的说明: - XML 指可扩展标记语言(EXtensible Markup Language) - XML 是一种标记语言,很类似 HTML @@ -19,38 +19,38 @@ xml在软件领域用途非常广泛,有名人曰: - XML 被设计为具有自我描述性。 - XML 是 W3C 的推荐标准 -如果读者要详细了解和学习有关xml,可以阅读[w3school的教程](http://www.w3school.com.cn/xml/xml_intro.asp) +如果读者要详细了解和学习XML,可以阅读[w3school的教程](http://www.w3school.com.cn/xml/xml_intro.asp) -xml的重要,关键在于它是用来传输数据,因为传输数据,特别是在web编程中,经常要用到的。有了这样一种东西,就让数据传输变得简单了。对于这么重要的,python当然有支持。 +XML的重要在于它是用来传输数据的,因此,特别是在web编程中,经常要用到的。有了它让数据传输变得简单了。这么重要,Python当然支持。 -一般来讲,一个引人关注的东西,总会有很多人从不同侧面去关注。在编程语言中也是如此,所以,对xml这个明星式的东西,python提供了多种模块来处理。 +一般来讲,一个引人关注的东西,总会有很多人从不同侧面去研究。在编程语言中也是如此,所以,对XML这个明星式的东西,Python提供了多种模块来处理。 -- xml.dom.* 模块:Document Object Model。适合用于处理 DOM API。它能够将xml数据在内存中解析成一个树,然后通过对树的操作来操作xml。但是,这种方式由于将xml数据映射到内存中的树,导致比较慢,且消耗更多内存。 -- xml.sax.* 模块:simple API for XML。由于SAX以流式读取xml文件,从而速度较快,切少占用内存,但是操作上稍复杂,需要用户实现回调函数。 +- xml.dom.* 模块:Document Object Model。适合用于处理 DOM API。它能够将XML数据在内存中解析成一个树,然后通过对树的操作来操作XML。但是,这种方式由于将XML数据映射到内存中的树,导致比较慢,且消耗更多内存。 +- xml.sax.* 模块:simple API for XML。由于SAX以流式读取XML文件,从而速度较快,切少占用内存,但是操作上稍复杂,需要用户实现回调函数。 - xml.parser.expat:是一个直接的,低级一点的基于 C 的 expat 的语法分析器。 expat接口基于事件反馈,有点像 SAX 但又不太像,因为它的接口并不是完全规范于 expat 库的。 -- xml.etree.ElementTree (以下简称 ET):元素树。它提供了轻量级的python式的API,相对于DOM,ET快了很多 +- xml.etree.ElementTree (以下简称 ET):元素树。它提供了轻量级的Python式的API,相对于DOM,ET快了很多 ,而且有很多令人愉悦的API可以使用;相对于SAX,ET也有ET.iterparse提供了 “在空中” 的处理方式,没有必要加载整个文档到内存,节省内存。ET的性能的平均值和SAX差不多,但是API的效率更高一点而且使用起来很方便。 -所以,我用xml.etree.ElementTree +所以,我用`xml.etree.ElementTree`。 -ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree.ElementTree ,另外一种是速度快一点:xml.etree.cElementTree 。 +`ElementTree`在标准库中有两种实现。一种是纯Python实现:`xml.etree.ElementTree` ,另外一种是速度快一点:`xml.etree.cElementTree` 。 -如果读者使用的是python2.x,可以像这样引入模块: +如果读者使用的是Python 2,可以像这样引入模块: try: import xml.etree.cElementTree as ET except ImportError: import xml.etree.ElementTree as ET -如果是Python3.3以上,就没有这个必要了,只需要一句话`import xml.etree.ElementTree as ET`即可,然后由模块自动来寻找适合的方式。显然python3.x相对python2.x有了很大进步。但是,本教程碍于很多工程项目还没有升级换代,暂且忍受了。 +如果是Python 3以上,就没有这个必要了,只需要一句话`import xml.etree.ElementTree as ET`即可,然后由模块自动来寻找适合的方式。显然Python 3相对Python 2有了很大进步。 ###遍历查询 -先要搞一个xml文档。为了图省事,我就用w3school中的一个例子: +先要做一个XML文档。图省事,就用w3school中的一个例子: ![](./2images/22601.jpg) -这是一个xml树,只不过是用图来表示的,还没有用ET解析呢。把这棵树写成xml文档格式: +这是一棵树,先把这棵树写成XML文档格式: @@ -73,19 +73,19 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree -将xml保存为名为22601.xml的文件,然后对其进行如下操作: +将其保存并命名为22601.xml的文件,接下来就是以它为对象,练习各种招数了。 - >>> import xml.etree.cElementTree as ET + >>> import xml.etree.ElementTree as ET -为了简化,我用这种方式引入,如果在编程实践中,推荐读者使用try...except...方式。 +如果读者使用Python 2,推荐使用如前所述的`try...except...`方式引入模块;如果是Python 3,按照刚才的方式引入即可。 >>> tree = ET.ElementTree(file="22601.xml") >>> tree -建立起xml解析树。然后可以通过根节点向下开始读取各个元素(element对象)。 +建立起XML解析树对象。然后通过根节点向下开始读取各个元素(element对象)。 -在上述xml文档中,根元素是,它没有属性,或者属性为空。 +在上述XML文档中,根元素是,它没有属性,或者属性为空。 >>> root = tree.getroot() #获得根 >>> root.tag @@ -96,7 +96,7 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree 要想将根下面的元素都读出来,可以: >>> for child in root: - ... print child.tag, child.attrib + ... print child.tag, child.attrib #Python 3: print(child.tag, child.attrib) ... book {'category': 'COOKING'} book {'category': 'CHILDREN'} @@ -111,7 +111,7 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree >>> root[0].text #无内容 '\n ' -再深点,就有感觉了: +再深入一层,就有内容了: >>> root[0][0].tag 'title' @@ -120,17 +120,17 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree >>> root[0][0].text 'Everyday Italian' -对于ElementTree对象,有一个iter方法可以对指定名称的子节点进行深度优先遍历。例如: +对于ElementTree对象,有一个`iter()`方法可以对指定名称的子节点进行深度优先遍历。例如: >>> for ele in tree.iter(tag="book"): #遍历名称为book的节点 - ... print ele.tag, ele.attrib + ... print ele.tag, ele.attrib #Python 3: print(ele.tag, ele.attrib) ... book {'category': 'COOKING'} book {'category': 'CHILDREN'} book {'category': 'WEB'} >>> for ele in tree.iter(tag="title"): #遍历名称为title的节点 - ... print ele.tag, ele.attrib, ele.text + ... print ele.tag, ele.attrib, ele.text #Python 3: print(ele.tag, ele.attrib, ele.text) ... title {'lang': 'en'} Everyday Italian title {'lang': 'en'} Harry Potter @@ -139,7 +139,7 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree 如果不指定元素名称,就是将所有的元素遍历一边。 >>> for ele in tree.iter(): - ... print ele.tag, ele.attrib + ... print ele.tag, ele.attrib #Python 3: print(ele.tag, ele.attrib) ... bookstore {} book {'category': 'COOKING'} @@ -158,22 +158,22 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree year {} price {} -除了上面的方法,还可以通过路径,搜索到指定的元素,读取其内容。这就是xpath。此处对xpath不详解,如果要了解可以到网上搜索有关信息。 +除了上面的方法,还可以通过路径搜索到指定的元素,读取其内容,这就是xpath。此处对xpath不详解,如果要了解可以到网上搜索有关信息。 >>> for ele in tree.iterfind("book/title"): - ... print ele.text + ... print ele.text #Python 3: print(ele.text) ... Everyday Italian Harry Potter Learning XML -利用findall()方法,也可以是实现查找功能: +利用`findall()`方法,也可以是实现查找功能: >>> for ele in tree.findall("book"): ... title = ele.find('title').text ... price = ele.find('price').text ... lang = ele.find('title').attrib - ... print title, price, lang + ... print title, price, lang #Python 3: print(title, price, lang) ... Everyday Italian 30.00 {'lang': 'en'} Harry Potter 29.99 {'lang': 'en'} @@ -181,20 +181,20 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree ###编辑 -除了读取有关数据之外,还能对xml进行编辑,即增删改查功能。还是以上面的xml文档为例: +除了读取有关数据之外,还能对XML进行编辑,即增、删、改、查功能。还是以上面的XML文档为例: >>> root[1].tag 'book' >>> del root[1] >>> for ele in root: - ... print ele.tag + ... print ele.tag #Python 3: print(ele.tag) ... book book 如此,成功删除了一个节点。原来有三个book节点,现在就还剩两个了。打开源文件再看看,是不是正好少了第二个节点呢?一定很让你失望,源文件居然没有变化。 -的确如此,源文件没有变化,这就对了。因为至此的修改动作,还是停留在内存中,还没有将修改结果输出到文件。不要忘记,我们是在内存中建立的ElementTree对象。再这样做: +的确如此,源文件没有变化,因为至此的修改动作,还是停留在内存中,还没有将修改结果输出到文件。不要忘记,我们是在内存中建立的ElementTree对象。再这样做: >>> import os >>> outpath = os.getcwd() @@ -209,7 +209,7 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree 除了删除,也能够修改: >>> for price in root.iter("price"): #原来每本书的价格 - ... print price.text + ... print price.text #Python 3: print(pice.text) ... 30.00 39.95 @@ -239,7 +239,7 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree 不仅价格修改了,而且在price标签里面增加了属性标记。干得不错。 -上面用`del`来删除某个元素,其实,在编程中,这个用的不多,更喜欢用remove()方法。比如我要删除`price > 40`的书。可以这么做: +上面用`del`来删除某个元素,其实,在编程中用的不多,更喜欢用`remove()`方法。比如我要删除`price > 40`的书。可以这么做: >>> for book in root.findall("book"): ... price = book.find("price").text @@ -261,13 +261,13 @@ ElementTree在标准库中有两种实现。一种是纯Python实现:xml.etree 接下来就要增加元素了。 - >>> import xml.etree.cElementTree as ET + >>> import xml.etree.ElementTree as ET >>> tree = ET.ElementTree(file="22601.xml") >>> root = tree.getroot() >>> ET.SubElement(root, "book") #在root里面添加book节点 >>> for ele in root: - ... print ele.tag + ... print ele.tag #Python 3: print(ele.tag) ... book book @@ -336,9 +336,9 @@ ET里面的属性和方法不少,这里列出常用的,供使用中备查。 最后,提供一个参考,这是一篇来自网络的文章:[Python xml属性、节点、文本的增删改](http://blog.csdn.net/wklken/article/details/7603071),本文的源码我也复制到下面,请读者参考: ->实现思想: +实现思想: ->使用ElementTree,先将文件读入,解析成树,之后,根据路径,可以定位到树的每个节点,再对节点进行修改,最后直接将其输出. +使用ElementTree,先将文件读入,解析成树,之后,根据路径,可以定位到树的每个节点,再对节点进行修改,最后直接将其输出. #!/usr/bin/python # -*- coding=utf-8 -*- From 52a035be8c01f0c3a187c344abc8f8cfaad007d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Fri, 29 Apr 2016 10:19:35 +0800 Subject: [PATCH 175/288] p3 --- 227.md | 65 ++++++++++++++++++---------------------------------------- 1 file changed, 20 insertions(+), 45 deletions(-) diff --git a/227.md b/227.md index 391030a..885b419 100644 --- a/227.md +++ b/227.md @@ -2,62 +2,52 @@ #标准库(8) -##json +##JSON -就传递数据而言,xml是一种选择,还有另外一种,就是json,它是一种轻量级的数据交换格式,如果读者要做web编程,是会用到它的。根据维基百科的相关内容,对json了解一二: +就传递数据而言,XML是一种选择,还有另外一种——JSON,它是一种轻量级的数据交换格式,如果读者要做web编程,则会用到它的。根据维基百科的相关内容,对JSON做如下简介: >JSON(JavaScript Object Notation)是一種由道格拉斯·克羅克福特構想設計、輕量級的資料交換語言,以文字為基礎,且易於讓人閱讀。儘管JSON是Javascript的一個子集,但JSON是獨立於語言的文本格式,並且採用了類似於C語言家族的一些習慣。 -关于json更为详细的内容,可以参考其官方网站:http://www.json.org +关于JSON更为详细的内容,可以参考其官方网站:http://www.json.org -从官方网站上摘取部分,了解一下json的结构: +从上述网站摘取部分内容,了解一下JSON的结构: ->JSON建构于两种结构: +JSON建构于两种结构: - “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 - 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 -python标准库中有json模块,主要是执行序列化和反序列化功能: +python标准库中有JSON模块,主要是执行序列化和反序列化功能: -- 序列化:encoding,把一个python对象编码转化成json字符串 -- 反序列化:decoding,把json格式字符串解码转换为python数据对象 +- 序列化:encoding,把一个Python对象编码转化成JSON字符串 +- 反序列化:decoding,把JSON格式字符串解码转换为Python数据对象 ###基本操作 -json模块相对xml单纯了很多: +JSON模块相对XML单纯了很多: >>> import json >>> json.__all__ ['dump', 'dumps', 'load', 'loads', 'JSONDecoder', 'JSONEncoder'] + #Python 3的显示结果如下: + ['dump', 'dumps', 'load', 'loads', 'JSONDecoder', 'JSONDecodeError', 'JSONEncoder'] **encoding: dumps()** >>> data = [{"name":"qiwsir", "lang":("python", "english"), "age":40}] - >>> print data + >>> data [{'lang': ('python', 'english'), 'age': 40, 'name': 'qiwsir'}] >>> data_json = json.dumps(data) - >>> print data_json - [{"lang": ["python", "english"], "age": 40, "name": "qiwsir"}] + >>> data_json + '[{"lang": ["python", "english"], "name": "qiwsir", "age": 40}]' -encoding的操作是比较简单的,请注意观察data和data_json的不同——lang的值从元组变成了列表,还有不同: +encoding的操作是比较简单的,请注意观察`data`和`data_json`的不同——lang的值从元组变成了列表,还有不同: >>> type(data_json) >>> type(data) -将python对象转化为json类型,是按照下表所示对照关系转化的: - -|python==>|json| -|------|----| -|dict|object| -|list, tuple|array| -|str, unicode|string| -|int, long, float|number| -|True|true| -|False|false| -|None|null| - **decoding: loads()** decoding的过程也像上面一样简单: @@ -68,25 +58,10 @@ decoding的过程也像上面一样简单: 需要注意的是,解码之后,并没有将元组还原。 -解码的数据类型对应关系: - -|json==>|python| -|-------|------| -|object|dict| -|array|list| -|string|unicode| -|number(int)|int, long| -|number(real)|float| -|true|True| -|false|False| -|null|None| - -**对人友好** - -上面的data都不是很长,还能凑合阅读,如果很长了,阅读就有难度了。所以,json的dumps()提供了可选参数,利用它们能在输出上对人更友好(这对机器是无所谓的)。 +上面的data都不是很长,还能凑合阅读,如果很长了,阅读就有难度了。所以,JSON的`dumps()`提供了可选参数,利用它们能在输出上对人更友好(这对机器是无所谓的)。 >>> data_j = json.dumps(data, sort_keys=True, indent=2) - >>> print data_j + >>> print data_j #Python 3: print(data_j) [ { "age": 40, @@ -102,7 +77,7 @@ decoding的过程也像上面一样简单: ###大json字符串 -如果数据不是很大,上面的操作足够了。但是,上面操作是将数据都读入内存,如果太大就不行了。怎么办?json提供了`load()`和`dump()`函数解决这个问题,注意,跟上面已经用过的函数相比,是不同的,请仔细观察。 +如果数据不是很大,上面的操作足够了。但现在是所谓“大数据”时代了,随便一个什么业务都在说自己是大数据,显然不能总让JSON很小,事实上真正的大数据,再“大”的JSON也不行了。前面的操作方法是将数据都读入内存,如果数据太大了就会内存溢出。怎么办?JSON提供了`load()`和`dump()`函数解决这个问题,注意,跟上面已经用过的函数相比,是不同的,请仔细观察。 >>> import tempfile #临时文件模块 >>> data @@ -110,12 +85,12 @@ decoding的过程也像上面一样简单: >>> f = tempfile.NamedTemporaryFile(mode='w+') >>> json.dump(data, f) >>> f.flush() - >>> print open(f.name, "r").read() + >>> print open(f.name, "r").read() #Python 3: print(open(f.name, "r").read()) [{"lang": ["python", "english"], "age": 40, "name": "qiwsir"}] ###自定义数据类型 -一般情况下,用的数据类型都是python默认的。但是,我们学习过类后,就知道,自己可以定义对象类型的。比如: +一般情况下,用的数据类型都是Python默认的。但是,我们学习过类后,就知道,自己可以定义对象类型的。比如: 以下代码参考:[Json概述以及python对json的相关操作](http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html) From 54fd058608fafc325f657158f53a4842890411b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Fri, 29 Apr 2016 11:59:47 +0800 Subject: [PATCH 176/288] p3 --- 228.md | 57 +++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 39 insertions(+), 18 deletions(-) diff --git a/228.md b/228.md index a89b207..7e8d8b9 100644 --- a/228.md +++ b/228.md @@ -2,35 +2,46 @@ #第三方库 -标准库的内容已经非常多了,前面仅仅列举几个,但是python给编程者的支持还不仅仅在于标准库,它还有不可胜数的第三方库。因此,如果作为一个python编程者,即使你达到了master的水平,最好的还是要在做某个事情之前,在网上搜一下是否有标准库或者第三方库替你完成那件事。因为,伟大的艾萨克·牛顿爵士说过: +标准库的内容已经非常多了,前面仅仅列举几个,但是Python给编程者的支持不仅仅在于标准库,它还有不可胜数的第三方库。因此,如果作为一个Pythoner,即使你达到了master的水平,在做某个事情之前最好在网上搜一下是否有标准库或者第三方库替你完成。因为,伟大的艾萨克·牛顿爵士说过: >如果我比别人看得更远,那是因为我站在巨人的肩上。 -编程,就要站在巨人的肩上。标准库和第三方库以及其提供者,就是巨人,我们本应当谦卑地向其学习,并应用其成果。 +编程,就要站在巨人的肩上。标准库和第三方库及其提供者,就是巨人,我们本应当谦卑地向其学习,并应用其成果。 ##安装第三方库 -要是用第三方库,第一步就是要安装,在本地安装完毕,就能如同标准库一样使用了。其安装方法如下: +安装第三方库的方法有几种,不同方法有不同的优缺点,读者可以根据自己的喜好或者实际的工作情景来选择。 **方法一:利用源码安装** -在github.com网站可以下载第三方库的源码(或者其它途径),得到源码之后,在本地安装。 +在github.com网站可以下载第三方库的源码(注意:github不是源码的唯一来源,只不过很多源码都在这个网站上,我也喜欢罢了),得到源码之后,在本地安装。 -一般情况,得到的码格式大概都是 zip 、 tar.zip、 tar.bz2格式的压缩包。解压这些包,进入其文件夹,通常会看见一个 setup.py 的文件。如果是Linux或者Mac(我是用ubuntu,特别推荐哦),就在这里运行shell,执行命令: +如果你下载的是一个文件包,即得到的源码格式为 zip 、 tar.zip、 tar.bz2的压缩文件,需要先解压缩,然后进入其目录;如果你能熟练使用git命令,可以直接从github中clone源码到本地计算机上,然后进入该目录。 + +通常会看见一个 setup.py 的文件。 python setup.py install -如果用的是windows,需要打开命令行模式,执行上述指令即可。 +在这里可能对某些操作系统的读者就漠视了,因为我用的是Ubuntu,读者可以根据自己的操作系统确定安装方法。 + +如此,就能把这个第三库安装到系统里。具体位置,要视操作系统和你当初安装Python环境时设置的路径而定。 + +这种安装方法有时候麻烦一些,但是比较灵活,主要体现在: -如此,就能把这个第三库安装到系统里。具体位置,要视操作系统和你当初安装python环境时设置的路径而定。默认条件下,windows是在`C:\Python2.7\Lib\site-packages`,Linux在`/usr/local/lib/python2.7/dist-packages`(这个只是参考,不同发行版会有差别,具体请读者根据自己的操作系统,自己找找),Mac在 `/Library/Python/2.7/site-packages`。 +- 可以下载安装自己选定的任意版本的第三方库,比如最新版,或者更早的某个版本,所以在某些有特殊需要的时候,常常使用这种方式安装。 +- 通过安装设置可以指定安装目录,自由度比较高。 有安装就要有卸载,卸载所安装的库非常简单,只需要到相应系统的site-packages目录,直接删掉库文件即卸载。 **方法二:pip** -用源码安装,不是我推荐的,我推荐的是用第三方库的管理工具安装。有一个网站,是专门用来存储第三方库的,所有在这个网站上的,都能用pip或者easy_install这种安装工具来安装。这个网站的地址:https://pypi.python.org/pypi +用源码安装,不是我推荐的,我推荐的是用第三方库的管理工具安装。 + +有一个网站,是专门用来存储第三方库的,所有在这个网站上的,都能用pip或者easy_install这种安装工具来安装。网站的地址:https://pypi.python.org/pypi + +>pip是一个以Python计算机程序语言写成的软件包管理系统,它可以安装和管理软件包,另外不少的软件包也可以在“Python软件包索引”(英语:Python Package Index,简称PyPI)中找到。(源自《维基百科》) -首先,要安装pip(python官方推荐这个,我当然要顺势了,所以,就只介绍并且后面也只使用这个工具)。如果读者跟我一样,用的是ubuntu或者其它某种Linux,基本不用这个操作,在安装操作系统的时候已经默认把这个东西安装好了(这还不是用ubuntu的理由吗?)。如果因为什么原因,没有安装,可以使用如下方法: +首先,要安装pip。读者可以先检查一下,在你的操作系统中是否已经有了pip,因为有的操作系统,或者已经预先安装了,或者在安装Python的时候安装了。如果你确信没有安装,可以使用如下方法: Debian and Ubuntu: @@ -42,7 +53,9 @@ Fedora and CentOS: 当然,也可以这里下载文件[get-pip.py](https://bootstrap.pypa.io/get-pip.py),然后执行`python get-pip.py`来安装。这个方法也适用于windows。 -pip安装好了。如果要安装第三方库,只需要执行`pip install XXXXXX`(XXXXXX代表第三方库的名字)即可。 +pip就这样安装好了,非常简单吧。 + +然后你就可以淋漓尽致地安装第三方库了,之所以如此,是因为只需要执行`pip install XXXXXX`(XXXXXX代表第三方库的名字)即可。当然前提是那个库已经在PyPI里面了。 当第三方库安装完毕,接下来的使用就如同前面标准库一样。 @@ -79,7 +92,9 @@ pip安装好了。如果要安装第三方库,只需要执行`pip install XXXX >>> r.cookies <[Cookie(version=0, name='PHPSESSID', value='buqj70k7f9rrg51emsvatveda2', port=None, port_specified=False, domain='www.1world0x00.com', domain_specified=False, domain_initial_dot=False, path='/', path_specified=True, secure=False, expires=None, discard=True, comment=None, comment_url=None, rest={}, rfc2109=False)]> -原来这样呀。继续,还有别的属性可以看看。 +仔细观察,是不是看到了cookie的name和value,结合对网络有关知识的理解,是不是有一种豁然开朗恍然大悟的感觉? + +继续,还有别的属性可以看看。 >>> r.headers {'x-powered-by': 'PHP/5.3.3', 'transfer-encoding': 'chunked', 'set-cookie': 'PHPSESSID=buqj70k7f9rrg51emsvatveda2; path=/', 'expires': 'Thu, 19 Nov 1981 08:52:00 GMT', 'keep-alive': 'timeout=15, max=500', 'server': 'Apache/2.2.15 (CentOS)', 'connection': 'Keep-Alive', 'pragma': 'no-cache', 'cache-control': 'no-store, no-cache, must-revalidate, post-check=0, pre-check=0', 'date': 'Mon, 10 Nov 2014 01:39:03 GMT', 'content-type': 'text/html; charset=UTF-8', 'x-pingback': 'http://www.1world0x00.com/index.php/action/xmlrpc'} @@ -90,7 +105,9 @@ pip安装好了。如果要安装第三方库,只需要执行`pip install XXXX >>> r.status_code 200 -下面这个比较长,是网页的内容,仅仅截取显示部分: +这些都是在客户端看到的网页基本属性。 + +下面这个比较长,是网页的内容,仅仅截取部分显示: >>> print r.text @@ -118,29 +135,29 @@ pip安装好了。如果要安装第三方库,只需要执行`pip install XXXX ###post请求 -requests发送post请求,通常你会想要发送一些编码为表单的数据——非常像一个html表单。要实现这个,只需要简单地传递一个字典给data参数。你的数据字典在发出请求时会自动编码为表单形式。 +假如你向某个服务器发送一些数据,可能会谁用post的方式,用requests模块实现这种请求比较简单,只需要传递一个字典给data参数。 >>> import requests >>> payload = {"key1":"value1","key2":"value2"} >>> r = requests.post("http://httpbin.org/post") >>> r1 = requests.post("http://httpbin.org/post", data=payload) -r没有加data的请求,看看效果: +r没有加data的请求,得到的效果是: ![](http://wxpictures.qiniudn.com/requets-post1.jpg) -r1是加了data的请求,看效果: +r1为data提供了值,再看效果: ![](http://wxpictures.qiniudn.com/requets-post2.jpg) -多了form项。喵。 +新闻比较看才有意思,代码也如此。比较上面两个结果,发现后者当data被赋值之后,在结果中form的值即为data所传入的数据,它就是post给服务器的内容。喵... ###http头部 >>> r.headers['content-type'] 'application/json' -注意,在引号里面的内容,不区分大小写`'CONTENT-TYPE'`也可以。 +注意,在引号里面的内容,不区分大小写(`'CONTENT-TYPE'`也可以)。 还能够自定义头部: @@ -148,10 +165,14 @@ r1是加了data的请求,看效果: >>> r.headers['content-type'] 'adad' -注意,当定制头部的时候,如果需要定制的项目有很多,需要用到数据类型为字典。 +注意,当定制头部的时候,如果需要定制的项目有很多,一般用到字典类型的数据。 网上有一个更为详细叙述有关requests模块的网页,可以参考:[http://requests-docs-cn.readthedocs.org/zh_CN/latest/index.html](http://requests-docs-cn.readthedocs.org/zh_CN/latest/index.html) +通过一个实例,展示第三方模块的应用方法,其实没有什么特殊的地方,只要安装了,就和用标注库模块一样了。 + +根据我的个人经验,第三方模块常常在某个方面做得更好,或者性能更优化,所以,不要将其放在我们的视野之外。 + ------ [总目录](./index.md)   |   [上节:标准库(8)](./227.md)   |   [下节:存入文件](./229.md) From 2011254bd8f41577880fea9a05689eab3875abf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 2 May 2016 20:38:32 +0800 Subject: [PATCH 177/288] p3 --- 229.md | 62 +++++++++++++++++++++++++++------------------------------- 1 file changed, 29 insertions(+), 33 deletions(-) diff --git a/229.md b/229.md index 5ece390..a4a6605 100644 --- a/229.md +++ b/229.md @@ -4,15 +4,15 @@ 在[《文件(1)》](./126.md)和[《文件(2)》](./127.md)中,已经学习了如何读写文件。 -如果在程序中,有数据要保存到磁盘中,放到某个文件中是一种不错的方法。但是,如果像以前那样存,未免有点凌乱,并且没有什么良好的存储格式,导致数据以后被读出来的时候遇到麻烦,特别是不能让另外的使用者很好地理解。不要忘记了,编程是一个合作的活。还有,存储的数据不一定都是类似字符串、整数那种基础类型的。 +程序执行结果,就是产生一些数据,一般情况下,这些数据数据要保存到磁盘中,最简单的方法就是写入到某个文件。但是,如果仅仅是简单地把数据写入文件,不是最佳的存储机构。为此,就有了诸多不同的数据存储方式,这些方式不仅能够保证数据被存储,还能够让数据便于读取,此外,还有很多其它方面的优势。 -总而言之,需要将要存储的对象格式化(或者叫做序列化),才好存好取。这就有点类似集装箱的作用。 - -所以,要用到本讲中提供的方式。 +简而言之,就是要将存储的对象格式化(或者叫做序列化),才好存好取。这就有点类似集装箱的作用。 ##pickle -pickle是标准库中的一个模块,还有跟它完全一样的叫做cpickle,两者的区别就是后者更快。所以,下面操作中,不管是用`import pickle`,还是用`import cpickle as pickle`,在功能上都是一样的。 +pickle是标准库中的一个模块,在Python 2中还有一个cpickle,两者的区别就是后者更快。所以,下面操作中,不管是用`import pickle`,还是用`import cpickle as pickle`,在功能上都是一样的。 + +而在Python 3中,你只需要`import pickle`即可,因为它已经在Python 3中具备了Python 2中的cpickle同样的性能。 >>> import pickle >>> integers = [1, 2, 3, 4, 5] @@ -20,20 +20,18 @@ pickle是标准库中的一个模块,还有跟它完全一样的叫做cpickle >>> pickle.dump(integers, f) >>> f.close() -用`pickle.dump(integers, f)`将数据integers保存到了文件22901.dat中。如果你要打开这个文件,看里面的内容,可能有点失望,但是,它对计算机是友好的。这个步骤,可以称之为将对象序列化。用到的方法是: +用`pickle.dump(integers, f)`将数据integers保存到了文件22901.dat中。如果你要打开这个文件,看里面的内容,可能有点失望,但是,它对计算机是友好的。这个步骤可以称之为将对象序列化。用到的方法是:`pickle.dump(obj,file[,protocol])` -`pickle.dump(obj,file[,protocol])` - -- obj:序列化对象,上面的例子中是一个列表,它是基本类型,也可以序列化自己定义的类型。 -- file:一般情况下是要写入的文件。更广泛地可以理解为为拥有write()方法的对象,并且能接受字符串为为参数,所以,它还可以是一个StringIO对象,或者其它自定义满足条件的对象。 +- obj:序列化对象,在上面的例子中是一个列表,它是基本类型,也可以序列化自己定义的对象。 +- file:要写入的文件。可以更广泛地可以理解为为拥有`write()`方法的对象,并且能接受字符串为为参数,所以,它还可以是一个`StringIO`对象,或者其它自定义满足条件的对象。 - protocol:可选项。默认为False(或者说0),是以ASCII格式保存对象;如果设置为1或者True,则以压缩的二进制格式保存对象。 -下面换一种数据格式,并且做对比: +换一种数据格式,并且做对比: >>> import pickle >>> d = {} >>> integers = range(9999) - >>> d["i"] = integers #下面将这个dict格式的对象存入文件 + >>> d["i"] = integers #下面将这个字典类型的对象存入文件 >>> f = open("22902.dat", "wb") >>> pickle.dump(d, f) #文件中以ascii格式保存数据 @@ -47,20 +45,20 @@ pickle是标准库中的一个模块,还有跟它完全一样的叫做cpickle >>> s1 = os.stat("22902.dat").st_size #得到两个文件的大小 >>> s2 = os.stat("22903.dat").st_size - >>> print "%d, %d, %.2f%%" % (s1, s2, (s2+0.0)/s1*100) + >>> print "%d, %d, %.2f%%" % (s1, s2, (s2+0.0)/s1*100) #Python 3: print("{0:d}, {1:d}, {2:.2f}".format (s1, s2, (s2+0.0)/s1*100)) 68903, 29774, 43.21% 比较结果发现,以二进制方式保存的文件比以ascii格式保存的文件小很多,前者约是后者的43%。 -所以,在序列化的时候,特别是面对较大对象时,建议将dump()的参数True设置上,虽然现在存储设备的价格便宜,但是能省还是省点比较好。 +所以,在序列化的时候,特别是面对较大对象时,建议将`dump()`的参数True设置上,虽然现在存储设备的价格便宜,但是能省还是省点比较好。 -存入文件,仅是一个目标,还有另外一个目标,就是要读出来,也称之为反序列化。 +将数据保存入文件,还有另外一个目标,就是要读出来,也称之为反序列化。 >>> integers = pickle.load(open("22901.dat", "rb")) - >>> print integers + >>> print integers #Python 3: print(integers) [1, 2, 3, 4, 5] -就是前面存入的那个列表。再看看被以二进制存入的那个文件: +再看看以二进制存入的那个文件: >>> f = open("22903.dat", "rb") >>> d = pickle.load(f) @@ -68,16 +66,16 @@ pickle是标准库中的一个模块,还有跟它完全一样的叫做cpickle {'i': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, .... #省略后面的数字} >>> f.close() -还是有自己定义数据类型的需要,这种类型是否可以用上述方式存入文件并读出来呢?看下面的例子: +如果是自己定义的对象,是否可以用上述方式存入文件并读出来呢?看下面的例子: - >>> import cPickle as pickle #cPickle更快 + >>> import cPickle as pickle #这是Python 2的引入方式,如果是Python 3,直接使用import pickle >>> import StringIO #标准库中的一个模块,跟file功能类似,只不过是在内存中操作“文件” >>> class Book(object): #自定义一种类型 ... def __init__(self,name): ... self.name = name ... def my_book(self): - ... print "my book is: ", self.name + ... print "my book is: ", self.name #Python 3: print("my book is: ", self.name) ... >>> pybook = Book("") @@ -130,9 +128,9 @@ pickle是标准库中的一个模块,还有跟它完全一样的叫做cpickle ##shelve -pickle模块已经表现出它足够好的一面了。不过,由于数据的复杂性,pickle只能完成一部分工作,在另外更复杂的情况下,它就稍显麻烦了。于是,又有了shelve。 +`pickle`模块已经表现出它足够好的一面了。不过,由于数据的复杂性,`pickle`只能完成一部分工作,在另外更复杂的情况下,它就稍显麻烦了。于是,又有了`shelve`。 -shelve模块也是标准库中的。先看一下基本操作:写入和读取 +`shelve`模块也是标准库中的。先看一下基本写、读操作。 >>> import shelve >>> s = shelve.open("22901.db") @@ -142,17 +140,17 @@ shelve模块也是标准库中的。先看一下基本操作:写入和读取 >>> s["contents"] = {"first":"base knowledge","second":"day day up"} >>> s.close() -以上完成了数据写入的过程。其实,这更接近数据库的样式了。下面是读取。 +以上完成了数据写入的过程,其实,这很接近数据库的样式了。下面是读。 >>> s = shelve.open("22901.db") >>> name = s["name"] - >>> print name + >>> print name #Python 3: print(name) www.itdiffer.com >>> contents = s["contents"] - >>> print contents + >>> print contents #Python 3: print(contents) {'second': 'day day up', 'first': 'base knowledge'} -当然,也可以用for语句来读: +看到输出的内容,你一定想到,肯定可以用`for`语句来读,想到了就用代码来测试,这就是Python交互模式的便利之处。 >>> for k in s: ... print k, s[k] @@ -162,7 +160,7 @@ shelve模块也是标准库中的。先看一下基本操作:写入和读取 pages 1000 name www.itdiffer.com -不管是写,还是读,都似乎要简化了。所建立的对象s,就如同字典一样,可称之为类字典对象。所以,可以如同操作字典那样来操作它。 +不管是写还是读,都似乎要简化了。所建立的对象被变量`s`所引用,就如同字典一样,可称之为类字典对象。所以,可以如同操作字典那样来操作它。 但是,要小心坑: @@ -174,7 +172,7 @@ shelve模块也是标准库中的。先看一下基本操作:写入和读取 ['qiwsir'] >>> f.close() -当试图修改一个已有键的值时,没有报错,但是并没有修改成功。要填平这个坑,需要这样做: +当试图修改一个已有键的值时没有报错,但是并没有修改成功。要填平这个坑,需要这样做: >>> f = shelve.open("22901.db", writeback=True) #多一个参数True >>> f["author"].append("Hetz") @@ -182,11 +180,11 @@ shelve模块也是标准库中的。先看一下基本操作:写入和读取 ['qiwsir', 'Hetz'] >>> f.close() -还用for循环一下: +还用`for`循环一下: >>> f = shelve.open("22901.db") >>> for k,v in f.items(): - ... print k,": ",v + ... print k,": ",v #Python 3: print(k,": ",v) ... contents : {'second': 'day day up', 'first': 'base knowledge'} lang : python @@ -194,9 +192,7 @@ shelve模块也是标准库中的。先看一下基本操作:写入和读取 author : ['qiwsir', 'Hetz'] name : www.itdiffer.com -shelve更像数据库了。 - -不过,它还不是真正的数据库。真正的数据库在后面。 +`shelve`更像数据库了。不过,它还不是真正的数据库。真正的数据库在后面。 ------ From 43c3a2fa8c26a83caec6e25fe73d10d6d1b971a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 2 May 2016 22:23:31 +0800 Subject: [PATCH 178/288] p3 --- 230.md | 120 +++++++++++++++++++++++---------------------------------- 1 file changed, 49 insertions(+), 71 deletions(-) diff --git a/230.md b/230.md index dcea2e7..c4136e8 100644 --- a/230.md +++ b/230.md @@ -2,21 +2,19 @@ #MySQL数据库(1) -尽管用文件形式将数据保存到磁盘,已经是一种不错的方式。但是,人们还是发明了更具有格式化特点,并且写入和读取更快速便捷的东西——数据库(如果阅读港台的资料,它们称之为“资料库”)。维基百科对数据库有比较详细的说明: +尽管用文件形式将数据保存到磁盘,已经是一种不错的方式。但是,人们还是发明了更具有格式化特点,并且写入和读取更快速便捷的东西——数据库(如果阅读港台的资料,称之为“资料库”)。维基百科对数据库有比较详细的说明: >数据库指的是以一定方式储存在一起、能为多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。 -到目前为止,地球上有三种类型的数据: +到目前为止,地球上的数据库主要有三种: - 关系型数据库:MySQL、Microsoft Access、SQL Server、Oracle、... - 非关系型数据库:MongoDB、BigTable(Google)、... - 键值数据库:Apache Cassandra(Facebook)、LevelDB(Google) ... -在本教程中,我们主要介绍常用的开源的数据库,其中MySQL是典型代表。 +##概况 -###概况 - -MySQL是一个使用非常广泛的数据库,很多网站都是用它。关于这个数据库有很多传说。例如[维基百科上这么说:](http://zh.wikipedia.org/wiki/MySQL) +MySQL是一个使用非常广泛的数据库,很多网站都使用它。关于这个数据库有很多传说,例如[维基百科上有这么一段:](http://zh.wikipedia.org/wiki/MySQL) >MySQL(官方发音为英语发音:/maɪ ˌɛskjuːˈɛl/ "My S-Q-L",[1],但也经常读作英语发音:/maɪ ˈsiːkwəl/ "My Sequel")原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被升阳微系统(Sun Microsystems)收购。2009年,甲骨文公司(Oracle)收购升阳微系统公司,MySQL成为Oracle旗下产品。 @@ -24,47 +22,41 @@ MySQL是一个使用非常广泛的数据库,很多网站都是用它。关于 >但被甲骨文公司收购后,Oracle大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目OpenSolaris的发展,因此导致自由软件社区们对于Oracle是否还会持续支持MySQL社区版(MySQL之中唯一的免费版本)有所隐忧,因此原先一些使用MySQL的开源软件逐渐转向其它的数据库。例如维基百科已于2013年正式宣布将从MySQL迁移到MariaDB数据库。 -不管怎么着,MySQL依然是一个不错的数据库选择,足够支持读者完成一个相当不小的网站。 +不管怎么着,MySQL依然是一个不错的数据库选择,足够支持读者完成一个不小的网站。 -###安装 +##安装 -你的电脑或许不会天生就有MySQL(是不是有的操作系统,在安装的时候就内置了呢?的确有,所以特别推荐Linux的某发行版),它本质上也是一个程序,若有必要,须安装。 +你的电脑或许不会天生就有MySQL,它本质上也是一个程序,若有必要,须安装。 -我用ubuntu操作系统演示,因为我相信读者将来在真正的工程项目中,多数情况下是要操作Linux系统的服务器,并且,我酷爱用ubuntu。还有,本教程的目标是from beginner to master,不管是不是真的master,总要装得像,Linux能够给你撑门面。 +我用Ubuntu操作系统演示,因为我相信读者将来在真正的工程项目中,多数情况下是要操作Linux系统的服务器,并且,我酷爱用Ubuntu。本书的目标是from beginner to master,不管是不是真的master,总要装得像,Linux能够给你撑门面,这也是推荐使用Ubuntu的原因。 第一步,在shell端运行如下命令: sudo apt-get install mysql-server -运行完毕,就安装好了这个数据库。是不是很简单呢?当然,当然,还要进行配置。 - -第二步,配置MySQL +运行完毕就安装好了这个数据库。是不是很简单呢?当然,还要进行配置。 -安装之后,运行: +第二步,配置MySQL。安装之后,运行: service mysqld start -启动mysql数据库。然后进行下面的操作,对其进行配置。 +启动MySQL数据库,然后进行下面的操作,对其进行配置。 -默认的MySQL安装之后根用户是没有密码的,注意,这里有一个名词“根用户”,其用户名是:root。运行: +默认的MySQL安装之后根用户(root)是没有密码的,注意,这里有一个名词“根用户”,其用户名是:root。运行: $mysql -u root -在这里之所以用-u root是因为我现在是一般用户(firehare),如果不加-u root的话,mysql会以为是firehare在登录。 - -进入mysql之后,会看到>符号开头,这就是mysql的命令操作界面了。 +进入MySQL之后,会看到`>`符号开头,这就是MySQL的命令操作界面了。 -下面设置Mysql中的root用户密码了,否则,Mysql服务无安全可言了。 +下面设置MySQL中的root用户密码,否则,MySQL服务无安全可言了。 mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456"; -用123456做为root用户的密码,应该是非常愚蠢的,如果在真正的项目中,最好别这样做,要用大小写字母与数字混合的密码,且不少于8位。 +用123456做为root用户的密码,应该是非常愚蠢的,如果在真正的项目中最好别这样做,要用大小写字母与数字混合的密码,且不少于8位。以后如果再登录数据库,就可以用刚才设置的密码了。 -以后如果在登录数据库,就可以用刚才设置的密码了。 +##运行 -###运行 - -安装之后,就要运行它,并操作这个数据库。 +安装完就要运行它,并操作这个数据库。 $ mysql -u root -p Enter password: @@ -85,7 +77,7 @@ MySQL是一个使用非常广泛的数据库,很多网站都是用它。关于 mysql> -看到这个界面内容,就说明你已经进入到数据里面了。接下来就可以对这个数据进行操作。例如: +恭喜你,已经进入到数据库操作界面了,接下来就可以对这个数据进行操作。例如: mysql> show databases; +--------------------+ @@ -100,27 +92,25 @@ MySQL是一个使用非常广泛的数据库,很多网站都是用它。关于 | test | +--------------------+ -用这个命令,就列出了当前已经有的数据库。 +`show databases;`(最后的半角分号别忘记了)命令表示列出当前已经有的数据库。 对数据库的操作,除了用命令之外,还可以使用一些可视化工具。比如phpmyadmin就是不错的。 更多数据库操作的知识,这里就不介绍了,读者可以参考有关书籍。 -MySQL数据库已经安装好,但是Python还不能操作它,还要继续安装python操作数据库的模块——python-MySQLdb - -###安装python-MySQLdb +MySQL数据库已经安装好,但是Python还不能操作它,还要继续安装Python操作数据库的模块——`python-MySQLdb`。 -python-MySQLdb是一个接口程序,python通过它对mysql数据实现各种操作。 +##安装`python-MySQLdb` -在编程中,会遇到很多类似的接口程序,通过接口程序对另外一个对象进行操作。接口程序就好比钥匙,如果要开锁,人直接用手指去捅,肯定是不行的,那么必须借助工具,插入到锁孔中,把锁打开,之后,门开了,就可以操作门里面的东西了。那么打开锁的工具就是接口程序。谁都知道,用对应的钥匙开锁是最好的,如果用别的工具(比如锤子),或许不便利(其实还分人,也就是人开锁的水平,如果是江洋大盗或者小毛贼什么的,擅长开锁,用别的工具也便利了),也就是接口程序不同,编码水平不同,都是考虑因素。 +`python-MySQLdb`是一个接口程序,Python通过它对MySQL数据实现各种操作。 -啰嗦这么多,一言蔽之,python-MySQLdb就是打开MySQL数据库的钥匙。 +在编程中会遇到很多类似的接口程序,通过接口程序对另外一个对象进行操作。接口程序就好比钥匙,如果要开锁,直接用手指去捅肯定是不行的,必须借助工具插入到锁孔中,把锁打开,门开了,就可以操作门里面的东西了,那么打开锁的工具就是接口程序。谁都知道,用对应的钥匙开锁是最好的,如果用别的工具(比如锤子)或许不便利(当然,具有特殊开锁能力的人除外),也就是接口程序,编码水平等都是考虑因素。 -如果要源码安装,可以这里下载python-mysqldb:[https://pypi.python.org/pypi/MySQL-python/](https://pypi.python.org/pypi/MySQL-python/) +python-MySQLdb就是打开MySQL数据库的钥匙。 -下载之后就可以安装了。 +如果要源码安装,可以这里下载python-mysqldb:[https://pypi.python.org/pypi/MySQL-python/](https://pypi.python.org/pypi/MySQL-python/),下载之后就可以安装了。 -ubuntu下可以这么做: +在Ubuntu操作系统下还可以用软件仓库来安装。 sudo apt-get install build-essential python-dev libmysqlclient-dev sudo apt-get install python-MySQLdb @@ -129,13 +119,13 @@ ubuntu下可以这么做: pip install mysql-python -安装之后,在python交互模式下: +安装之后,在Python交互模式下: >>> import MySQLdb -如果不报错,恭喜你,已经安装好了。如果报错,恭喜你,可以借着错误信息提高自己的计算机水平了,请求助于google大神。 +如果不报错,恭喜你,已经安装好了。如果报错,那么恭喜你,可以借着错误信息提高自己的计算机水平了,请求助于google大神。 -###连接数据库 +##连接数据库 要先找到老婆,才能谈如何养育自己的孩子,同理连接数据库之先要建立数据库。 @@ -144,18 +134,6 @@ ubuntu下可以这么做: 进入到数据库操作界面: - Welcome to the MySQL monitor. Commands end with ; or \g. - Your MySQL connection id is 373 - Server version: 5.5.38-0ubuntu0.14.04.1 (Ubuntu) - - Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. - - Oracle is a registered trademark of Oracle Corporation and/or its - affiliates. Other names may be trademarks of their respective - owners. - - Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. - mysql> 输入如下命令,建立一个数据库: @@ -163,29 +141,29 @@ ubuntu下可以这么做: mysql> create database qiwsirtest character set utf8; Query OK, 1 row affected (0.00 sec) -注意上面的指令,如果仅仅输入:create database qiwsirtest,也可以,但是,我在后面增加了character set utf8,意思是所建立的数据库qiwsirtest,编码是utf-8的,这样存入汉字就不是乱码了。 +注意上面的指令,如果仅仅输入`create database qiwsirtest`也可以,但是我在后面增加了`character set utf8`,意思是所建立的数据库qiwsirtest,编码是utf-8,这样存入汉字就不是乱码了。 -看到那一行提示:Query OK, 1 row affected (0.00 sec),就说明这个数据库已经建立好了,名字叫做:qiwsirtest +看到那一行提示:Query OK, 1 row affected (0.00 sec),说明这个数据库已经建立好了,名字叫qiwsirtest。 -数据库建立之后,就可以用python通过已经安装的mysqldb来连接这个名字叫做qiwsirtest的库了。 +数据库建立之后,就可以用Python通过已经安装的`python-MySQLdb`来连接这个名字叫做qiwsirtest的库了。 >>> import MySQLdb >>> conn = MySQLdb.connect(host="localhost",user="root",passwd="123123",db="qiwsirtest",port=3306,charset="utf8") -逐个解释上述命令的含义: +下面逐个解释上述命令的含义: -- host:等号的后面应该填写mysql数据库的地址,因为就数据库就在本机上(也称作本地),所以使用localhost,注意引号。如果在其它的服务器上,这里应该填写ip地址。一般中小型的网站,数据库和程序都是在同一台服务器(计算机)上,就使用localhost了。 -- user:登录数据库的用户名,这里一般填写"root",还是要注意引号。当然,如果读者命名了别的用户名,数据库管理者提供了专有用户名,就更改为相应用户。但是,不同用户的权限可能不同,所以,在程序中,如果要操作数据库,还要注意所拥有的权限。在这里用root,就放心了,什么权限都有啦。不过,这样做,在大型系统中是应该避免的。 -- passwd:上述user账户对应的登录mysql的密码。我在上面的例子中用的密码是"123123"。不要忘记引号。 -- db:就是刚刚通create命令建立的数据库,我建立的数据库名字是"qiwsirtest",还是要注意引号。看官如果建立的数据库名字不是这个,就写自己所建数据库名字。 -- port:一般情况,mysql的默认端口是3306,当mysql被安装到服务器之后,为了能够允许网络访问,服务器(计算机)要提供一个访问端口给它。 -- charset:这个设置,在很多教程中都不写,结果在真正进行数据存储的时候,发现有乱码。这里我将qiwsirtest这个数据库的编码设置为utf-8格式,这样就允许存入汉字而无乱码了。注意,在mysql设置中,utf-8写成utf8,没有中间的横线。但是在python文件开头和其它地方设置编码格式的时候,要写成utf-8。切记! +- host:等号的后面应该填写MySQL数据库的地址,因为就数据库就在本机上(也称作本地),所以使用localhost,注意引号。如果在其它的服务器上,这里应该填写IP地址。一般中小型的网站,数据库和程序都是在同一台服务器(计算机)上,就使用localhost了。 +- user:登录数据库的用户名,这里一般填写"root",还是要注意引号。当然,如果读者命名了别的用户名,就更改为相应用户。但是,不同用户的权限可能不同,所以,在程序中,如果要操作数据库,还要注意所拥有的权限。在这里用root,不过,这样种做法在大型系统中是应该避免的。 +- passwd:user账户登录MySQL的密码。例子中用的密码是"123123"。不要忘记引号。 +- db:就是刚刚通create命令建立的数据库,我建立的数据库名字是"qiwsirtest",还是要注意引号。看官如果建立的数据库名字不是这个,就写自己所建数据库名字。 +- port:一般情况,MySQLdb的默认端口是3306,当MySQLdb被安装到服务器之后,为了能够允许网络访问,服务器(计算机)要提供一个访问端口给它(服务器管理员可以进行端口配置)。 +- charset:这个设置,在很多教程中都不写,结果在真正进行数据存储的时候,发现有乱码。这里将qiwsirtest这个数据库的编码设置为utf-8格式,这样就允许存入汉字而无乱码了。注意,在MySQLdb设置中,utf-8写成utf8,没有中间的横线。但是在Python文件开头和其它地方设置编码格式的时候,要写成utf-8。 -注:connect中的host、user、passwd等可以不写,只要在写的时候按照host、user、passwd、db(可以不写)、port顺序写就可以,端口号port=3306还是不要省略的为好,如果没有db在port前面,直接写3306会报错. +注:connect中的所有参数,可以只按照顺序把值写入。但是,我推荐读者还是按照上面的方式,以免出了乱子自己还糊涂。 -其实,关于connect的参数还不少,下面摘抄来自[mysqldb官方文档的内容](http://mysql-python.sourceforge.net/MySQLdb.html),把所有的参数都列出来,还有相关说明,请看官认真阅读。不过,上面几个是常用的,其它的看情况使用。 +其实,关于connect的参数还有别的,下面摘抄来自[mysqldb官方文档的内容](http://mysql-python.sourceforge.net/MySQLdb.html),把所有的参数都列出来,还有相关说明,请看官认真阅读。不过,上面几个是常用的,其它的看情况使用。 -connect(parameters...) +>connect(parameters...) >Constructor for creating a connection to the database. Returns a Connection Object. Parameters are the same as for the MySQL C API. In addition, there are a few additional keywords that correspond to what you would pass mysql_options() before connecting. Note that some parameters must be specified as keyword arguments! The default value for each parameter is NULL or zero, as appropriate. Consult the MySQL documentation for more details. The important parameters are: @@ -205,25 +183,25 @@ connect(parameters...) - cursorclass: cursor class that cursor() uses, unless overridden. Default: MySQLdb.cursors.Cursor. This must be a keyword parameter. - use_unicode: If True, CHAR and VARCHAR and TEXT columns are returned as Unicode strings, using the configured character set. It is best to set the default encoding in the server configuration, or client configuration (read with read_default_file). If you change the character set after connecting (MySQL-4.1 and later), you'll need to put the correct character set name in connection.charset. -If False, text-like columns are returned as normal strings, but you can always write Unicode strings. +>If False, text-like columns are returned as normal strings, but you can always write Unicode strings. -This must be a keyword parameter. +>This must be a keyword parameter. - charset: If present, the connection character set will be changed to this character set, if they are not equal. Support for changing the character set requires MySQL-4.1 and later server; if the server is too old, UnsupportedError will be raised. This option implies use_unicode=True, but you can override this with use_unicode=False, though you probably shouldn't. -If not present, the default character set is used. +>If not present, the default character set is used. -This must be a keyword parameter. +>This must be a keyword parameter. - sql_mode: If present, the session SQL mode will be set to the given string. For more information on sql_mode, see the MySQL documentation. Only available for 4.1 and newer servers. -If not present, the session SQL mode will be unchanged. +>If not present, the session SQL mode will be unchanged. -This must be a keyword parameter. +>This must be a keyword parameter. - ssl: This parameter takes a dictionary or mapping, where the keys are parameter names used by the mysql_ssl_set MySQL C API call. If this is set, it initiates an SSL connection to the server; if there is no SSL support in the client, an exception is raised. This must be a keyword parameter. -已经完成了数据库的连接。 +至此,已经完成了数据库的连接。 ------ From 58be6ad2c8b3813470ec0b2c74b25d383a79f078 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 4 May 2016 10:52:23 +0800 Subject: [PATCH 179/288] p3 --- 231.md | 125 +++++++++++++++++++++++++++------------------------------ 1 file changed, 60 insertions(+), 65 deletions(-) diff --git a/231.md b/231.md index 4ed0e48..1e1aaab 100644 --- a/231.md +++ b/231.md @@ -2,32 +2,32 @@ #MySQL数据库(2) -就数据库而言,连接之后就要对其操作。但是,目前那个名字叫做qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄自维基百科对数据库表的简要解释,要想详细了解,需要看官在找一些有关数据库的教程和书籍来看看。 +就数据库而言,连接之后就要对其操作。但是,目前名字叫作qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄维基百科对数据库表的简要解释。 >在关系数据库中,数据库表是一系列二维数组的集合,用来代表和储存数据对象之间的关系。它由纵向的列和横向的行组成,例如一个有关作者信息的名为 authors 的表中,每个列包含的是所有作者的某个特定类型的信息,比如“姓氏”,而每行则包含了某个特定作者的所有信息:姓、名、住址等等。 >对于特定的数据库表,列的数目一般事先固定,各列之间可以由列名来识别。而行的数目可以随时、动态变化,每行通常都可以根据某个(或某几个)列中的数据来识别,称为候选键。 -我打算在qiwsirtest中建立一个存储用户名、用户密码、用户邮箱的表,其结构用二维表格表现如下: +在qiwsirtest中建立一个存储用户名、用户密码、用户邮箱的表,其结构用二维表格表现如下: |username|password|email| |--------|--------|-----| |qiwsir|123123|qiwsir@gmail.com| -特别说明,这里为了简化细节,突出重点,对密码不加密,直接明文保存,虽然这种方式是很不安全的。但是,有不少网站还都这么做的,这么做的目的是比较可恶的。就让我在这里,仅仅在这里可恶一次。 +特别说明,这里为了简化细节,突出重点,对密码不加密,直接明文保存,虽然这种方式是很不安全的。据小道消息,有的网站居然用明文保存密码,这么做是比较可恶的。就让我在这里,仅仅在这里可恶一次。 ##数据库表 -因为直接操作数据部分,不是本教重点,但是关联到后面的操作,为了让读者在阅读上连贯,也快速地说明建立数据库表并输入内容。 +因为直接操作数据库不是本书重点,但是关联到后面的操作,为了让读者在阅读上连贯,快速地说明建立数据库表并输入内容。 mysql> use qiwsirtest; Database changed mysql> show tables; Empty set (0.00 sec) -用`show tables`命令显示这个数据库中是否有数据表了。查询结果显示为空。 +用`show tables`命令显示这个数据库中是否有数据表了,查询结果显示为空。 -下面就用如下命令建立一个数据表,这个数据表的内容就是上面所说明的。 +用如下命令建立一个数据表,这个数据表的内容就是上面所说明的。 mysql> create table users(id int(2) not null primary key auto_increment,username varchar(40),password text,email text)default charset=utf8; Query OK, 0 rows affected (0.12 sec) @@ -64,7 +64,7 @@ mysql> select * from users; Empty set (0.01 sec) -向里面插入点信息,就只插入一条吧。 +向里面插入一条信息。 mysql> insert into users(username,password,email) values("qiwsir","123123","qiwsir@gmail.com"); Query OK, 1 row affected (0.05 sec) @@ -79,21 +79,23 @@ 这样就得到了一个有内容的数据库表。 -##python操作数据库 +##操作数据库 -连接数据库,必须的。 +首先要连接数据库。 >>> import MySQLdb >>> conn = MySQLdb.connect(host="localhost",user="root",passwd="123123",db="qiwsirtest",charset="utf8") -Python建立了与数据的连接,其实是建立了一个`MySQLdb.connect()`的实例对象,或者泛泛地称之为连接对象,python就是通过连接对象和数据库对话。这个对象常用的方法有: +Python建立了与数据库的连接,其实是建立了一个`MySQLdb.connect()`的实例对象,或者泛泛地称之为连接对象,Python就是通过连接对象和数据库对话。这个对象常用的方法有: - commit():如果数据库表进行了修改,提交保存当前的数据。当然,如果此用户没有权限就作罢了,什么也不会发生。 - rollback():如果有权限,就取消当前的操作,否则报错。 - cursor([cursorclass]):返回连接的游标对象。通过游标执行SQL查询并检查结果。游标比连接支持更多的方法,而且可能在程序中更好用。 - close():关闭连接。此后,连接对象和游标都不再可用了。 -Python和数据之间的连接建立起来之后,要操作数据库,就需要让python对数据库执行SQL语句。Python是通过游标执行SQL语句的。所以,连接建立之后,就要利用连接对象得到游标对象,方法如下: +Python和数据库之间的连接建立起来之后,若要操作它,就需要让Python对数据库执行SQL语句。 + +Python是通过游标执行SQL语句的,所以,连接建立之后,就要利用连接对象得到游标对象,方法如下: >>> cur = conn.cursor() @@ -112,12 +114,12 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 ###插入 -例如,要在数据表users中插入一条记录,使得:username="python",password="123456",email="python@gmail.com",这样做: +例如,要在数据表users中插入一条记录,使得username="python",password="123456",email="python@gmail.com",这样做: >>> cur.execute("insert into users (username,password,email) values (%s,%s,%s)",("python","123456","python@gmail.com")) 1L -没有报错,并且返回一个"1L"结果,说明有一行记录操作成功。不妨用"mysql>"交互方式查看一下: +没有报错,并且返回一个"1L"结果,说明有一行记录操作成功。不妨进入到"mysql>"交互方式查看。 mysql> select * from users; +----+----------+----------+------------------+ @@ -129,11 +131,11 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 咦,奇怪呀。怎么没有看到增加的那一条呢?哪里错了?可是上面也没有报错呀。 -特别注意,通过"cur.execute()"对数据库进行操作之后,没有报错,完全正确,但是不等于数据就已经提交到数据库中了,还必须要用到"MySQLdb.connect"的一个属性:commit(),将数据提交上去,也就是进行了"cur.execute()"操作,要将数据提交,必须执行: +特别注意,通过`cur.execute()`对数据库进行操作之后,没有报错,完全正确,但是不等于数据就已经提交到数据库中了,还必须要用到"MySQLdb.connect"的一个方法:commit(),将数据提交上去,也就是进行了`cur.execute()`操作,要将数据提交才能有效改变数据库的内容。 >>> conn.commit() -再到"mysql>"中运行"select * from users"试一试: +再到"mysql>"中运行`"select * from users"`试一试: mysql> select * from users; +----+----------+----------+------------------+ @@ -144,9 +146,11 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 +----+----------+----------+------------------+ 2 rows in set (0.00 sec) -果然如此。这就如同编写一个文本一样,将文字写到文本上,并不等于文字已经保留在文本文件中了,必须执行"CTRL-S"才能保存。也就是在通过python操作数据库的时候,以"execute()"执行各种sql语句之后,要让已经执行的效果保存,必须运行连接对象的"commit()"方法。 +果然如此。 + +这就如同编写一个文本一样,将文字写到文本上,并不等于文字已经保留在文本文件中了,必须执行`CTRL-S`才能保存。所有以`execute()`执行各种sql语句之后,要让已经执行的效果保存,必须运行连接对象的`commit()`方法。 -再尝试一下插入多条的那个命令"executemany(query,args)". +再尝试一下插入多条的那个命令`executemany(query,args)`。 >>> cur.executemany("insert into users (username,password,email) values (%s,%s,%s)",(("google","111222","g@gmail.com"),("facebook","222333","f@face.book"),("github","333444","git@hub.com"),("docker","444555","doc@ker.com"))) 4L @@ -167,9 +171,9 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 +----+----------+----------+------------------+ 6 rows in set (0.00 sec) -成功插入了多条记录。在"executemany(query, pseq)"中,query还是一条sql语句,但是pseq这时候是一个tuple,这个tuple里面的元素也是tuple,每个tuple分别对应sql语句中的字段列表。这句话其实被执行多次。只不过执行过程不显示给我们看罢了。 +成功插入了多条记录。在"executemany(query, pseq)"中,query还是一条sql语句,但是`pseq`这时候是一个元组,特别注意括号——一环套一环的括号,这个元组里面的元素也是元组,每个元组分别对应sql语句中的字段列表。 -除了插入命令,其它对数据操作的命了都可用类似上面的方式,比如删除、修改等。 +除了插入命令,其它对数据操作的命令都可用类似上面的方式,比如删除、修改等。 ###查询 @@ -178,18 +182,18 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 >>> cur.execute("select * from users") 7L -这说明从users表汇总查询出来了7条记录。但是,这似乎有点不友好,告诉我7条记录查出来了,但是在哪里呢,如果在'mysql>'下操作查询命令,一下就把7条记录列出来了。怎么显示python在这里的查询结果呢? +这说明从users表汇总查询出来了7条记录。但是,这似乎有点不友好,7条记录在哪里呢,如果在'mysql>'下操作查询命令,一下就把7条记录列出来了。怎么显示Python的查询结果呢? -要用到游标对象的fetchall()、fetchmany(size=None)、fetchone()、scroll(value, mode='relative')等方法。 +要用到游标对象的`fetchall()`、`fetchmany(size=None)`、`fetchone()`、`scroll(value, mode='relative')`等方法。 >>> cur.execute("select * from users") 7L >>> lines = cur.fetchall() -到这里,已经将查询到的记录赋值给变量lines了。如果要把它们显示出来,就要用到曾经学习过的循环语句了。 +至此已经将查询到的记录赋值给变量`lines`了。如果要把它们显示出来,就要用到曾经学习过的循环语句。 >>> for line in lines: - ... print line + ... print line #Python 3: print(line) ... (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') (2L, u'python', u'123456', u'python@gmail.com') @@ -199,52 +203,50 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 (6L, u'docker', u'444555', u'doc@ker.com') (7L, u'\u8001\u9f50', u'9988', u'qiwsir@gmail.com') -很好。果然是逐条显示出来了。列位注意,第七条中的u'\\u8001\\u95f5',这里是汉字,只不过由于我的shell不能显示罢了,不必惊慌,不必搭理它。 +很好,果然逐条显示出来了。请读者注意,第七条中的`u'\u8001\u95f5'`是汉字,只不过由于我的shell不能显示罢了,不必惊慌,不必搭理它。 -只想查出第一条,可以吗?当然可以!看下面的: +只想查出第一条,可以吗?当然可以,再看下面: >>> cur.execute("select * from users where id=1") 1L >>> line_first = cur.fetchone() #只返回一条 - >>> print line_first + >>> print line_first #Python 3: print(line_first) (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') 为了对上述过程了解深入,做下面实验: >>> cur.execute("select * from users") 7L - >>> print cur.fetchall() + >>> print cur.fetchall() #Python 3: print(cur.fetchall()) ((1L, u'qiwsir', u'123123', u'qiwsir@gmail.com'), (2L, u'python', u'123456', u'python@gmail.com'), (3L, u'google', u'111222', u'g@gmail.com'), (4L, u'facebook', u'222333', u'f@face.book'), (5L, u'github', u'333444', u'git@hub.com'), (6L, u'docker', u'444555', u'doc@ker.com'), (7L, u'\u8001\u9f50', u'9988', u'qiwsir@gmail.com')) -原来,用cur.execute()从数据库查询出来的东西,被“保存在了cur所能找到的某个地方”,要找出这些被保存的东西,需要用cur.fetchall()(或者fechone等),并且找出来之后,做为对象存在。从上面的实验探讨发现,被保存的对象是一个tuple中,里面的每个元素,都是一个一个的tuple。因此,用for循环就可以一个一个拿出来了。 - -接着看,还有神奇的呢。 +原来,用`cur.execute()`从数据库查询出来的东西,被“保存在了cur所能找到的某个地方”,要找出这些被保存的东西,需要用`cur.fetchall()`(或者`fechone`等),并且找出来之后,作为对象存在。从上面的实验探讨发现,返回值是一个元组对象,里面的每个元素,都是一个一个的元组。因此,用`for`循环就可以一个一个拿出来了。 -接着上面的操作,再打印一遍 +继续,可以看到神奇。接着上面的操作,再打印一遍。 - >>> print cur.fetchall() + >>> print cur.fetchall() #Python 3: print(cur.fetchall()) () -晕了!怎么什么是空?不是说做为对象已经存在了内存中了吗?难道这个内存中的对象是一次有效吗? +晕了!怎么什么是空?不是说作为对象已经存在了内存中了吗?难道这个内存中的对象是一次有效吗? -不要着急。 +不要着急,这就是神奇所在。 -通过游标找出来的对象,在读取的时候有一个特点,就是那个游标会移动。在第一次操作了print cur.fetchall()后,因为是将所有的都打印出来,游标就从第一条移动到最后一条。当print结束之后,游标已经在最后一条的后面了。接下来如果再次打印,就空了,最后一条后面没有东西了。 +通过游标找出来的对象,在读取的时候有一个特点,就是那个游标会移动。在第一次操作了`print cur.fetchall()`后,因为是将所有的都打印出来,游标就从第一条移动到最后一条。当`print`结束之后,游标已经在最后一条的后面了。接下来如果再次打印,就空了,最后一条后面没有东西了。这如同什么?能不能与本书前面已经有的知识关联起来? 下面还要实验,检验上面所说: >>> cur.execute('select * from users') 7L - >>> print cur.fetchone() + >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') - >>> print cur.fetchone() + >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) (2L, u'python', u'123456', u'python@gmail.com') - >>> print cur.fetchone() + >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) (3L, u'google', u'111222', u'g@gmail.com') -这次我不一次全部打印出来了,而是一次打印一条,看官可以从结果中看出来,果然那个游标在一条一条向下移动呢。注意,我在这次实验中,是重新运行了查询语句。 +这次不再一次性全部打印出来了,而是一次打印一条,从结果中看出来,果然那个游标在一条一条向下移动呢。注意,这次实验中重新运行了查询语句。 -那么,既然在操作存储在内存中的对象时候,游标会移动,能不能让游标向上移动,或者移动到指定位置呢?这就是那个scroll() +那么,既然操作存储在内存中的对象时游标会移动,能不能让游标向上移动,或者移动到指定位置呢?这就是那个`scroll()`。 >>> cur.scroll(1) >>> print cur.fetchone() @@ -253,36 +255,34 @@ Python和数据之间的连接建立起来之后,要操作数据库,就需 >>> print cur.fetchone() (4L, u'facebook', u'222333', u'f@face.book') -果然,这个函数能够移动游标,不过请仔细观察,上面的方式是让游标相对与当前位置向上或者向下移动。即: +果然,能够移动游标,不过请仔细观察,上面的方式是让游标相对与当前位置向上或者向下移动。即`cur.scroll(n)`或者`cur.scroll(n,"relative")`,意思是相对当前位置向上或者向下移动,n为正数,表示向下(向前),n为负数,表示向上(向后)。 -cur.scroll(n),或者,cur.scroll(n,"relative"):意思是相对当前位置向上或者向下移动,n为正数,表示向下(向前),n为负数,表示向上(向后) +还有一种方式可以实现“绝对”移动,不是“相对”移动——增加一个参数"absolute"。 -还有一种方式,可以实现“绝对”移动,不是“相对”移动:增加一个参数"absolute" +但在Python中,序列对象是的顺序是从0开始的。 -特别提醒看官注意的是,在python中,序列对象是的顺序是从0开始的。 - - >>> cur.scroll(2,"absolute") #回到序号是2,但指向第三条 - >>> print cur.fetchone() #打印,果然是 + >>> cur.scroll(2, "absolute") #回到序号是2,但指向第三条 + >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) (3L, u'google', u'111222', u'g@gmail.com') - >>> cur.scroll(1,"absolute") - >>> print cur.fetchone() + >>> cur.scroll(1, "absolute") + >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) (2L, u'python', u'123456', u'python@gmail.com') - >>> cur.scroll(0,"absolute") #回到序号是0,即指向tuple的第一条 - >>> print cur.fetchone() + >>> cur.scroll(0, "absolute") #回到序号是0,即指向tuple的第一条 + >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') -至此,已经熟悉了cur.fetchall()和cur.fetchone()以及cur.scroll()几个方法,还有另外一个,接这上边的操作,也就是游标在序号是1的位置,指向了tuple的第二条 +至此,已经熟悉了`cur.fetchall()`和`cur.fetchone()`以及`cur.scroll()`几个方法,还有另外一个——`cur.fetchmany()`,在前面操作的基础上继续。 >>> cur.fetchmany(3) ((2L, u'python', u'123456', u'python@gmail.com'), (3L, u'google', u'111222', u'g@gmail.com'), (4L, u'facebook', u'222333', u'f@face.book')) -上面这个操作,就是实现了从当前位置(游标指向tuple的序号为1的位置,即第二条记录)开始,含当前位置,向下列出3条记录。 +上面这个操作,就是实现了从当前位置(游标指向序号为1的位置,即第二条记录)开始,含当前位置,向下列出3条记录。 -读取数据,好像有点啰嗦呀。细细琢磨,还是有道理的。你觉得呢? +读取数据,好像有点啰嗦呀。细细琢磨,还是有道理的。 -不过,python总是能够为我们着想的,在连接对象的游标方法中提供了一个参数,可以实现将读取到的数据变成字典形式,这样就提供了另外一种读取方式了。 +Python总是能够为我们着想的,在连接对象的游标方法中提供了一个参数,可以实现将读取到的数据变成字典形式,这样就提供了另外一种读取方式。 >>> cur = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor) >>> cur.execute("select * from users") @@ -294,21 +294,18 @@ cur.scroll(n),或者,cur.scroll(n,"relative"):意思是相对当前位置 >>> cur.scroll(0,"absolute") >>> for line in cur.fetchall(): - ... print line["username"] + ... print line["username"] #Python 3: print(line["username"]) ... qiwsir mypython google - facebook - github - docker - 老齐 + ... 根据字典对象的特点来读取了“键-值”。 ###更新数据 -经过前面的操作,这个就比较简单了,不过需要提醒的是,如果更新完毕,和插入数据一样,都需要commit()来提交保存。 +熟悉了前面的操作,再到这里,一切都显得简单了,但仍要提醒的是,如果更新完毕,和插入数据一样,都需要`commit()`来提交保存。 >>> cur.execute("update users set username=%s where id=2",("mypython")) 1L @@ -319,13 +316,11 @@ cur.scroll(n),或者,cur.scroll(n,"relative"):意思是相对当前位置 从操作中看出来了,已经将数据库中第二条的用户名修改为mypython了,用的就是update语句。 -不过,要真的实现在数据库中更新,还要运行: +不过,要真的实现在数据库中的更新,还要运行: >>> conn.commit() -这就大事完吉了。 - -应该还有个小尾巴,那就是当你操作数据完毕,不要忘记关门: +还有个小尾巴,当你操作数据完毕,不要忘记关门: >>> cur.close() >>> conn.close() From 0120b6ef79673ce65082c69e2a78dffb91d2155f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 4 May 2016 15:51:06 +0800 Subject: [PATCH 180/288] p3 --- 232.md | 110 +++++++++++++++++++++++++++++---------------------------- 1 file changed, 56 insertions(+), 54 deletions(-) diff --git a/232.md b/232.md index 0402df4..96a4061 100644 --- a/232.md +++ b/232.md @@ -1,14 +1,14 @@ >大哉!敬虔的奥秘,无人不以为然,就是:神在肉身显现,被圣灵称义,被天使看见,被传于外邦,被世人信服,被接在荣耀里。(1 TIMOTHY 3:16) -#mongodb数据库(1) +#MongoDB数据库(1) -MongoDB开始火了,这是时代发展的需要。为此,本教程也要涉及到如何用python来操作mongodb。考虑到读者对这种数据库可能比mysql之类的更陌生,所以,要用多一点的篇幅稍作介绍,当然,更完备的内容还是要去阅读专业的mongodb书籍。 +MongoDB开始火了,这是时代发展的需要。为此,在这里也要探讨一下如何用Python来操作此数据库。考虑到读者对这种数据库的了解可能比关系型数据库陌生,所以,要用多一点的篇幅来介绍。 -mongodb是属于NoSql的。 +MongoDB是属于NoSql的。 -NoSql,全称是 Not Only Sql,指的是非关系型的数据库。它是为了大规模web应用而生的,其特征诸如模式自由、支持简易复制、简单的API、大容量数据等等。 +NoSql(Not Only Sql)指的是非关系型的数据库。它是为了大规模Web应用而生的,其特征诸如模式自由、支持简易复制、简单的API、大容量数据等。 -MongoDB是其一,选择它,主要是因为我喜欢,否则我不会列入我的教程。数说它的特点,可能是: +MongoDB是NoSql其一,选择它,主要是因为我喜欢,下面说说它的特点。 - 面向文档存储 - 对任何属性可索引 @@ -17,30 +17,32 @@ MongoDB是其一,选择它,主要是因为我喜欢,否则我不会列入 - 丰富的查询 - 快速就地更新 -也许还能列出更多,基于它的特点,擅长领域就在于: +基于它的特点,擅长的领域就在于: -- 大数据(太时髦了!以下可以都不看,就要用它了。) +- 大数据(太时髦了!以下可以都不看,有这么一条就足够了) - 内容管理和交付 - 移动和社交基础设施 - 用户数据管理 - 数据平台 -##安装mongodb +##安装MongoDB -先演示在ubuntu系统中的安装过程: +先演示在Ubuntu系统中的安装过程: sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list sudo apt-get update sudo apt-get install mongodb-10gen -如此就安装完毕。上述安装流程来自:[Install MongoDB](http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/) +如此就安装完毕。上述安装流程可以参考:[Install MongoDB](http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/) -如果你用的是其它操作系统,可以到官方网站下载安装程序:[http://www.mongodb.org/downloads](http://www.mongodb.org/downloads),能满足各种操作系统。 +如果你用的是其它操作系统,可以到官方网站下载安装程序:[http://www.mongodb.org/downloads](http://www.mongodb.org/downloads),该网站能满足各种操作系统。 ![](./2images/23201.jpg) ->难免在安装过程中遇到问题,推荐几个资料,供参考: +如果在安装过程中遇到了问题,建议去问Google大神(如果有读者心存疑虑或者愤愤不平,请不要发怒,这是我的个人建议,不同意可以略过,我当然也尊重读者的个人选择)。 + +>推荐几个资料,供参考: >[window平台安装 MongoDB](http://www.w3cschool.cc/mongodb/mongodb-window-install.html) @@ -52,13 +54,13 @@ MongoDB是其一,选择它,主要是因为我喜欢,否则我不会列入 >[在Ubuntu下进行MongoDB安装步骤](www.cnblogs.com/alexqdh/archive/2011/11/25/2263626.html) -##启动mongodb +##启动 -安装完毕,就可以启动数据库。因为本教程不是专门讲数据库,所以,这里不设计数据库的详细讲解,请读者参考有关资料。下面只是建立一个简单的库,并且说明mongodb的基本要点,目的在于为后面用python来操作它做个铺垫。 +安装完毕就可以启动数据库。因为本书不是专门讲数据库,所以这里不涉及数据库的详细讲解,下面只是建立一个简单的库,并且说明MongoDB的基本要点,目的在于为后面用Python来操作它做个铺垫。 执行`mongo`启动shell,显示的也是`>`,有点类似mysql的状态。在shell中,可以实现与数据库的交互操作。 -在shell中,有一个全局变量db,使用哪个数据库,那个数据库就会被复制给这个全局变量db,如果那个数据库不存在,就会新建。 +在shell中,有一个全局变量db,使用哪个数据库,那个数据库作为对象被赋给这个全局变量db,如果那个数据库不存在,就会新建。 > use mydb switched to db mydb @@ -70,7 +72,7 @@ MongoDB是其一,选择它,主要是因为我喜欢,否则我不会列入 > show dbs; local 0.03125GB -向这个数据库增加点东西。mongodb的基本单元是文档,所谓文档,就类似与python中的字典,以键值对的方式保存数据。 +向这个数据库增加点东西。MongoDB的基本单元是文档,所谓文档,就类似与Python中的字典,以“键/值对”的方式保存数据。 > book = {"title":"from beginner to master", "author":"qiwsir", "lang":"python"} { @@ -82,21 +84,21 @@ MongoDB是其一,选择它,主要是因为我喜欢,否则我不会列入 > db.books.find() { "_id" : ObjectId("554f0e3cf579bc0767db9edf"), "title" : "from beginner to master", "author" : "qiwsir", "lang" : "python" } -db指向了数据库mydb,books是这个数据库里面的一个集合(类似mysql里面的表),向集合books里面插入了一个文档(文档对应mysql里面的记录)。“数据库、集合、文档”构成了mongodb数据库。 +db指向了数据库mydb,books是这个数据库里面的一个集合(类似mysql里面的表),向集合books里面插入了一个文档(文档对应mysql里面的记录)。“数据库、集合、文档”构成了MongoDB数据库。 -从上面操作,还发现一个有意思的地方,并没有类似create之类的命令,用到数据库,就通过`use xxx`,如果不存在就建立;用到集合,就通过`db.xxx`来使用,如果没有就建立。可以总结为“随用随取随建立”。是不是简单的有点出人意料。 +从上面操作还发现一个有意思的地方,并没有类似create之类的命令,用到数据库,就通过`use xxx`,如果不存在就建立;用到集合,就通过`db.xxx`来使用,如果没有就建立。可以总结为“随用随取随建立”。是不是简单的有点出人意料。 > show dbs local 0.03125GB mydb 0.0625GB -当有了充实内容之后,也看到刚才用到的数据库mydb了。 +当有了充实内容之后,会看到刚才用到的数据库mydb了。 -在mongodb的shell中,可以对数据进行“增删改查”等操作。但是,我们的目的是用python来操作,所以,还是把力气放在后面用。 +在shell中,可以对数据进行“增删改查”等操作。但是,我们的目的是用Python来操作,所以,还是把力气放在后面用。 ##安装pymongo -要用python来驱动mongodb,必须要安装驱动模块,即pymongo,这跟操作mysql类似。安装方法,我最推荐如下: +要用Python来驱动MongoDB,必须要安装驱动模块,即pymongo,这跟操作mysql类似。安装方法推荐如下: $ sudo pip install pymongo @@ -105,49 +107,49 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 Successfully installed pymongo Cleaning up... -如果不选择版本,安装的应该是最新版本的,我在本教程测试的时候,安装的是: +写本书的时候,安装版本号如下,如果读者的版本不一样,也无大碍。 >>> import pymongo >>> pymongo.version '3.0.1' -这个版本在后面给我挖了一个坑。如果读者要指定版本,比如安装2.8版本的,可以: +如果读者要指定版本,比如安装2.8版本的,可以: $ sudo pip install pymongo==2.8 - -如果用这个版本,我后面遇到的坑能够避免。 -安装好之后,进入到python的交互模式里面: +安装好之后,进入到Python的交互模式: >>> import pymongo 说明模块没有问题。 -##连接mongodb +##连接 -既然python驱动mongdb的模块pymongo业已安装完毕,接下来就是连接,也就是建立连接对象。 +既然Python驱动MongoDB的模块pymongo业已安装完毕,接下来就是连接,即建立连接对象。 >>> pymongo.Connection("localhost",27017) Traceback (most recent call last): File "", line 1, in AttributeError: 'module' object has no attribute 'Connection' -报错!我在去年做的项目中,就是这样做的,并且网上查看很多教程都是这么连接。 +报错!我在写本书之前做项目时,就是按照上面方法连接的,读者可以查一下,会发现很多教程是这么连接的。但是,眼睁睁地看到了报错。 + +所以,一定要注意这里的坑。 -所以,读者如果用的是旧版本的pymongo,比如2.8,仍然可以使用上面的连接方法,如果是像我一样,是用的新的(我安装时没有选版本),就得注意这个问题了。 +如果读者用的是旧版本的pymongo,比如2.8,仍然可以使用上面的连接方法。如果是像我一样,是用的新的(我安装时没有选版本),就得注意这个问题了。 经验主义害死人。必须看看下面有哪些方法可以用: >>> dir(pymongo) ['ALL', 'ASCENDING', 'CursorType', 'DESCENDING', 'DeleteMany', 'DeleteOne', 'GEO2D', 'GEOHAYSTACK', 'GEOSPHERE', 'HASHED', 'IndexModel', 'InsertOne', 'MAX_SUPPORTED_WIRE_VERSION', 'MIN_SUPPORTED_WIRE_VERSION', 'MongoClient', 'MongoReplicaSetClient', 'OFF', 'ReadPreference', 'ReplaceOne', 'ReturnDocument', 'SLOW_ONLY', 'TEXT', 'UpdateMany', 'UpdateOne', 'WriteConcern', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '_cmessage', 'auth', 'bulk', 'client_options', 'collection', 'command_cursor', 'common', 'cursor', 'cursor_manager', 'database', 'errors', 'get_version_string', 'has_c', 'helpers', 'ismaster', 'message', 'mongo_client', 'mongo_replica_set_client', 'monitor', 'monotonic', 'network', 'operations', 'periodic_executor', 'pool', 'read_preferences', 'response', 'results', 'server', 'server_description', 'server_selectors', 'server_type', 'settings', 'son_manipulator', 'ssl_context', 'ssl_support', 'thread_util', 'topology', 'topology_description', 'uri_parser', 'version', 'version_tuple', 'write_concern'] -瞪大我的那双浑浊迷茫布满血丝渴望惊喜的眼睛,透过近视镜的玻璃片,怎么也找不到Connection()这个方法。原来,刚刚安装的pymongo变了,“他变了”。 +瞪大我的那双浑浊迷茫、布满血丝、渴望惊喜的眼睛,透过近视镜的玻璃片,怎么也找不到`Connection()`这个方法。原来,刚刚安装的pymongo,“他变了”。 -不过,我发现了它:MongoClient() +不过,我发现了`MongoClient()`,真乃峰回路转。 >>> client = pymongo.MongoClient("localhost", 27017) -很好。python已经和mongodb建立了连接。 +很好。Python已经和MongoDB建立了连接。 刚才已经建立了一个数据库mydb,并且在这个库里面有一个集合books,于是: @@ -157,12 +159,12 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 >>> db = client['mydb'] -获得数据库mydb,并赋值给变量db(这个变量不是mongodb的shell中的那个db,此处的db就是python中一个寻常的变量)。 +获得数据库mydb,并赋值给变量db(这个变量不是MongoDB的shell中的那个db,此处的db就是Python中一个寻常的变量)。 >>> db.collection_names() [u'system.indexes', u'books'] -查看集合,发现了我们已经建立好的那个books,于是在获取这个集合,并赋值给一个变量books: +查看集合,发现了我们已经建立好的那个books,于是再获取这个集合,并赋值给一个变量books: >>> books = db["books"] @@ -174,7 +176,7 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 ###编辑 -刚刚的books所引用的是一个mongodb的集合对象,它就跟前面学习过的其它对象一样,有一些方法供我们来驱使。 +刚刚的books所引用的是一个MongoDB的集合对象,它就跟前面学习过的其它对象一样,有一些方法供我们来驱使。 >>> type(books) @@ -182,12 +184,12 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 >>> dir(books) ['_BaseObject__codec_options', '_BaseObject__read_preference', '_BaseObject__write_concern', '_Collection__create', '_Collection__create_index', '_Collection__database', '_Collection__find_and_modify', '_Collection__full_name', '_Collection__name', '__call__', '__class__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattr__', '__getattribute__', '__getitem__', '__hash__', '__init__', '__iter__', '__module__', '__ne__', '__new__', '__next__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_command', '_count', '_delete', '_insert', '_socket_for_primary_reads', '_socket_for_reads', '_socket_for_writes', '_update', 'aggregate', 'bulk_write', 'codec_options', 'count', 'create_index', 'create_indexes', 'database', 'delete_many', 'delete_one', 'distinct', 'drop', 'drop_index', 'drop_indexes', 'ensure_index', 'find', 'find_and_modify', 'find_one', 'find_one_and_delete', 'find_one_and_replace', 'find_one_and_update', 'full_name', 'group', 'index_information', 'initialize_ordered_bulk_op', 'initialize_unordered_bulk_op', 'inline_map_reduce', 'insert', 'insert_many', 'insert_one', 'list_indexes', 'map_reduce', 'name', 'next', 'options', 'parallel_scan', 'read_preference', 'reindex', 'remove', 'rename', 'replace_one', 'save', 'update', 'update_many', 'update_one', 'with_options', 'write_concern'] -这么多方法不会一一介绍,只是按照“增删改查”的常用功能,介绍几种。读者可以使用help()去查看每一种方法的使用说明。 +这么多方法不会一一介绍,只是按照“增删改查”的常用功能介绍几种。读者可以使用`help()`去查看每一种方法的使用说明。 >>> books.find_one() {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} -提醒读者注意的是,如果你熟悉了mongodb的shell中的命令,跟pymongo中的方法稍有差别,比如刚才这个,在mongodb的shell中是这样子的: +提醒读者注意的是,MongoDB的shell中的命令与pymongo中的方法有时候会稍有差别,务必小心。比如刚才这个,在shell中是这样子的: > db.books.findOne() { @@ -199,7 +201,7 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 请注意区分。 -目前在集合books中,有一个文档,还想再增加,于是插入一条: +目前在集合books中,有一个文档,还想再增加,于是就进入到了“增删改查”的常规操作。 **新增和查询** @@ -207,7 +209,7 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 >>> books.insert(b2) ObjectId('554f28f465db941152e6df8b') -成功地向集合中增加了一个文档。得看看结果(我们就是充满好奇心的小孩子,我记得女儿小时候,每个给她照相,拍了一张,她总要看一看。现在我们似乎也是这样,如果不看看,总觉得不放心),看看就是一种查询。 +成功地向集合中增加了一个文档。得看看结果(我们就是充满好奇心的小孩子,我记得女儿小时候,每次给她照相,每拍了一张,她总要看一看。现在我们似乎也是这样,如果不看看,总觉得不放心),看看就是一种查询。 >>> books.find().count() 2 @@ -220,14 +222,14 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 这个命令就不行了,因为它只返回第一条。必须要: >>> for i in books.find(): - ... print i + ... print i #Python 3: print(i) ... {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} -在books引用的对象中有find()方法,它返回的是一个可迭代对象,包含着集合中所有的文档。 +在books引用的对象中有`find()`方法,它返回的是一个可迭代对象,包含着集合中所有的文档。 -由于文档是键值对,也不一定每条文档都要结构一样,比如,也可以插入这样的文档进入集合。 +由于文档是“键/值”对,不一定每条文档都要结构一样,比如,也可以在集合中插入这样的文档。 >>> books.insert({"name":"Hertz"}) ObjectId('554f2b4565db941152e6df8c') @@ -238,7 +240,7 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} {u'_id': ObjectId('554f2b4565db941152e6df8c'), u'name': u'Hertz'} -如果有多个文档,想一下子插入到集合中(在mysql中,可以实现多条数据用一条命令插入到表里面,还记得吗?忘了看[上一节](./231.md)),可以这么做: +如果有多个文档,想一下子插入到集合中(在MySQL中,可以实现多条数据用一条命令插入到表里面),可以这么做: >>> n1 = {"title":"java", "name":"Bush"} >>> n2 = {"title":"fortran", "name":"John Warner Backus"} @@ -254,7 +256,7 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 >>> books.find().count() 6 -但是,要提醒读者,批量插入的文档大小是有限制的,网上有人说不要超过20万条,有人说不要超过16MB,我没有测试过。在一般情况下,或许达不到上线,如果遇到极端情况,就请读者在使用时多注意了。 +提醒读者,批量插入的文档大小是有限制的,有人说不要超过20万条,有人说不要超过16MB,我没有测试过。在一般情况下,或许达不到上限,如果遇到极端情况,就请读者在使用时多注意了。 如果要查询,除了通过循环之外,能不能按照某个条件查呢?比如查找`'name'='Bush'`的文档: @@ -264,7 +266,7 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 对于查询结果,还可以进行排序: >>> for i in books.find().sort("title", pymongo.ASCENDING): - ... print i + ... print i #Python 3: print(i) ... {u'_id': ObjectId('554f2b4565db941152e6df8c'), u'name': u'Hertz'} {u'_id': ObjectId('554f30be65db941152e6df8e'), u'name': u'John Warner Backus', u'title': u'fortran'} @@ -273,10 +275,10 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 {u'_id': ObjectId('554f30be65db941152e6df8f'), u'name': u'John McCarthy', u'title': u'lisp'} {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} -这是按照"title"的值的升序排列的,注意sort()中的第二个参数,意思是升序排列。如果按照降序,就需要将参数修改为`pymongo.DESCEDING`,也可以指定多个排序键。 +这是按照"title"的值的升序排列的,注意`sort()`中的第二个参数,意思是升序排列。如果按照降序,就需要将参数修改为`pymongo.DESCEDING`,也可以指定多个排序键。 >>> for i in books.find().sort([("name",pymongo.ASCENDING),("name",pymongo.DESCENDING)]): - ... print i + ... print i #Python 3: print(i) ... {u'_id': ObjectId('554f30be65db941152e6df8e'), u'name': u'John Warner Backus', u'title': u'fortran'} {u'_id': ObjectId('554f30be65db941152e6df8f'), u'name': u'John McCarthy', u'title': u'lisp'} @@ -285,11 +287,11 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} -读者如果看到这里,请务必注意一个事情,那就是mongodb中的每个文档,本质上都是“键值对”的类字典结构。这种结构,一经python读出来,就可以用字典中的各种方法来操作。与此类似的还有一个名为json的东西,可以阅读本教程第贰季进阶的第陆章模块中的[《标准库(8)](./227.md)。但是,如果用python读过来之后,无法直接用json模块中的json.dumps()方法操作文档。其中一种解决方法就是将文档中的`'_id'`键值对删除(例如:`del doc['_id']`),然后使用json.dumps()即可。读者也可是使用json_util模块,因为它是“Tools for using Python’s json module with BSON documents”,请阅读[http://api.mongodb.org/python/current/api/bson/json_util.html](http://api.mongodb.org/python/current/api/bson/json_util.html)中的模块使用说明。 +如果读者看到这里,请务必注意,MongoDB中的每个文档,本质上都是“键/值”对的类字典结构。这种结构,一经Python读出来,就可以用字典中的各种方法来操作。与此类似的还有一个名为JSON的东西,但是,如果用Python读过来之后,无法直接用JSON中的`json.dumps()`方法操作文档。其中一种解决方法就是将文档中的`'_id'`“键/值”对删除(例如:`del doc['_id']`),然后使用`json.dumps()`即可。读者也可是使用`json_util`模块,因为它是“Tools for using Python’s json module with BSON documents”,请阅读[http://api.mongodb.org/python/current/api/bson/json_util.html](http://api.mongodb.org/python/current/api/bson/json_util.html)中的模块使用说明。 **更新** -对于已有数据,进行更新,是数据库中常用的操作。比如,要更新name为Hertz那个文档: +对于已有数据,更新是数据库中常用的操作。比如,要更新name为Hertz那个文档: >>> books.update({"name":"Hertz"}, {"$set": {"title":"new physics", "author":"Hertz"}}) {u'updatedExisting': True, u'connectionId': 4, u'ok': 1.0, u'err': None, u'n': 1} @@ -309,23 +311,23 @@ db指向了数据库mydb,books是这个数据库里面的一个集合(类似 **删除** -删除可以用remove()方法: +删除可以用`remove()`方法,稍一演示,读者必会。 >>> books.remove({"name":"Bush"}) {u'connectionId': 4, u'ok': 1.0, u'err': None, u'n': 1} >>> books.find_one({"name":"Bush"}) >>> -这是将那个文档全部删除。当然,也可以根据mongodb的语法规则,写个条件,按照条件删除。 +这是将那个文档全部删除。当然,也可以根据MongoDB的语法规则写个条件,按照条件删除。 **索引** -索引的目的是为了让查询速度更快,当然,在具体的项目开发中,要视情况而定是否建立索引。因为建立索引也是有代价的。 +索引的目的是为了让查询速度更快,当然,在具体的项目开发中,是否建立索引要视情况而定是否建立索引。因为建立索引也是有代价的。 >>> books.create_index([("title", pymongo.DESCENDING),]) u'title_-1' -我这里仅仅是对pymongo模块做了一个非常简单的介绍,在实际使用过程中,上面知识是很有限的,所以需要读者根据具体应用场景再结合mongodb的有关知识去尝试新的语句。 +这里仅仅是对pymongo模块做了一个非常简单的介绍,在实际使用过程中,上面知识是很有限的,所以需要读者根据具体应用场景再结合MongoDB的有关知识去尝试新的语句。 ------ From 3ed91f0516bc25995756eb47134ccfe8e5620cb1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 4 May 2016 17:33:46 +0800 Subject: [PATCH 181/288] p3 --- 233.md | 48 +++++++++++++++++++++++------------------------- 1 file changed, 23 insertions(+), 25 deletions(-) diff --git a/233.md b/233.md index fa2529a..a3e1ea7 100644 --- a/233.md +++ b/233.md @@ -2,11 +2,13 @@ #SQLite数据库 -SQLite是一个小型的关系型数据库,它最大的特点在于不需要服务器、零配置。在前面的两个服务器,不管是MySQL还是MongoDB,都需要“安装”,安装之后,它运行起来,其实是已经有一个相应的服务器在跑着呢。而SQLite不需要这样,首先python已经将相应的驱动模块作为标准库一部分了,只要安装了python,就可以使用;另外,它也不需要服务器,可以类似操作文件那样来操作SQLite数据库文件。还有一点也不错,SQLite源代码不受版权限制。 +SQLite是一个小型的关系型数据库,它最大的特点在于不需要服务器、零配置。前面的两个数据库,不管是MySQL还是MongoDB,都需要“安装”,安装之后,运行起来,其实是已经有一个相应的服务器在跑着呢。 -SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使用。 +而SQLite不需要这样。首先Python已经将相应的驱动模块作为标准库一部分了,只要安装了Python,就可以使用;另外,它也不需要服务器,可以类似操作文件那样来操作SQLite数据库文件。还有一点也不错,SQLite源代码不受版权限制。 -跟操作mysql数据库类似,对于SQLite数据库,也要通过以下几步: +SQLite也是一个关系型数据库,所以SQL语句可以在里面使用。 + +跟操作MySQL数据库类似,对于SQLite数据库,也要通过以下几步: - 建立连接对象 - 连接对象方法:建立游标对象 @@ -14,60 +16,56 @@ SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使 ##建立连接对象 -由于SQLite数据库的驱动已经在python里面了,所以,只要引用就可以直接使用 +由于SQLite数据库的驱动已经在Python里面了,所以,只要引用就可以直接使用。并且在学过MySQL的基础上,理解本节能容就容易多了。 >>> import sqlite3 >>> conn = sqlite3.connect("23301.db") -这样就得到了连接对象,是不是比mysql连接要简化了很多呢。在`sqlite3.connect("23301.db")`语句中,如果已经有了那个数据库,就连接上它;如果没有,就新建一个。注意,这里的路径可以随意指定的。 +这样就得到了连接对象,是不是比MySQL连接要简化了很多呢。在`sqlite3.connect("23301.db")`中,如果已经有了那个数据库,就连接上它;如果没有,就新建一个。注意,这里的路径可以随意指定的。 不妨到目录中看一看,是否存在了刚才建立的数据库文件。 /2code$ ls 23301.db 23301.db -果然有了一个文件。 - -连接对象建立起来之后,就要使用连接对象的方法继续工作了。 +果然有了一个文件。连接对象建立起来之后,就要使用连接对象的方法继续工作了。 >>> dir(conn) ['DataError', 'DatabaseError', 'Error', 'IntegrityError', 'InterfaceError', 'InternalError', 'NotSupportedError', 'OperationalError', 'ProgrammingError', 'Warning', '__call__', '__class__', '__delattr__', '__doc__', '__enter__', '__exit__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'commit', 'create_aggregate', 'create_collation', 'create_function', 'cursor', 'enable_load_extension', 'execute', 'executemany', 'executescript', 'interrupt', 'isolation_level', 'iterdump', 'load_extension', 'rollback', 'row_factory', 'set_authorizer', 'set_progress_handler', 'text_factory', 'total_changes'] ##游标对象 -这步跟mysql也类似,要建立游标对象。 +这一步跟MySQL也类似,要建立游标对象。 >>> cur = conn.cursor() -接下来对数据库内容的操作,都是用游标对象方法来实现了: +接下来对数据库内容的操作,都是用游标对象方法来实现: >>> dir(cur) ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'arraysize', 'close', 'connection', 'description', 'execute', 'executemany', 'executescript', 'fetchall', 'fetchmany', 'fetchone', 'lastrowid', 'next', 'row_factory', 'rowcount', 'setinputsizes', 'setoutputsize'] -是不是看到熟悉的名称了:`close(), execute(), executemany(), fetchall()` +看到熟悉的名称了:`close(), execute(), executemany(), fetchall()` ###创建数据库表 -在mysql中,我们演示的是利用mysql的shell来创建的表。其实,当然可以使用sql语句,在python中实现这个功能。这里对sqlite数据库,就如此操作一番。 +面对SQLite数据库,读者曾经数据的sql指令都可以照样使用。 >>> create_table = "create table books (title text, author text, lang text) " >>> cur.execute(create_table) -这样就在数据库23301.db中建立了一个表books。对这个表可以增加数据了: +这样就在数据库23301.db中建立了一个表books。对这个表可以增加数据了。 >>> cur.execute('insert into books values ("from beginner to master", "laoqi", "python")') -为了保证数据能够保存,还要(这是多么熟悉的操作流程和命令呀): +为了保证数据能够保存,还要如下操作(这是多么熟悉的操作流程和命令呀): >>> conn.commit() >>> cur.close() >>> conn.close() -支持,刚才建立的那个数据库中,已经有了一个表books,表中已经有了一条记录。 - -整个流程都不陌生。 +在刚才建立的那个数据库中,已经有了一个表books,表中已经有了一条记录。 ###查询 @@ -77,7 +75,7 @@ SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使 >>> cur = conn.cursor() >>> cur.execute('select * from books') - >>> print cur.fetchall() + >>> print cur.fetchall() #Python 3: print(cur.fetchall()) [(u'from beginner to master', u'laoqi', u'python')] ###批量插入 @@ -86,17 +84,17 @@ SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使 >>> books = [("first book","first","c"), ("second book","second","c"), ("third book","second","python")] -这回来一个批量插入 +这回来一个批量插入: >>> cur.executemany('insert into books values (?,?,?)', books) >>> conn.commit() -用循环语句打印一下查询结果: +用循环语句打印查询结果: >>> rows = cur.execute('select * from books') >>> for row in rows: - ... print row + ... print row #Python 3: print(row) ... (u'from beginner to master', u'laoqi', u'python') (u'first book', u'first', u'c') @@ -105,7 +103,7 @@ SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使 ###更新 -正如前面所说,在cur.execute()中,你可以写SQL语句,来操作数据库。 +正如前面所说,在`cur.execute()`中,你可以写SQL语句来操作数据库。 >>> cur.execute("update books set title='physics' where author='first'") @@ -120,7 +118,7 @@ SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使 ###删除 -在sql语句中,这也是常用的。 +删除也是操作数据库必须的动作。 >>> cur.execute("delete from books where author='second'") @@ -131,12 +129,12 @@ SQLite也是一个关系型数据库,所以SQL语句,都可以在里面使 >>> cur.fetchall() [(u'from beginner to master', u'laoqi', u'python'), (u'physics', u'first', u'c')] -不要忘记,在你完成对数据库的操作是,一定要关门才能走人: +不要忘记,在完成对数据库的操作后,一定要关门才能走人: >>> cur.close() >>> conn.close() -作为基本知识,已经介绍差不多了。当然,在实践的编程中,或许会遇到问题,就请读者多参考官方文档:[https://docs.python.org/2/library/sqlite3.html](https://docs.python.org/2/library/sqlite3.html) +基本知识已经介绍差不多了。当然,在实践的编程中,或许会遇到问题,就请读者多参考官方文档:[https://docs.python.org/2/library/sqlite3.html](https://docs.python.org/2/library/sqlite3.html) ------ From b88bd61e752f1a31478bf2c2fa37c9f7d40570ad Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 4 May 2016 20:14:22 +0800 Subject: [PATCH 182/288] p3 --- 234.md | 61 +++++++++++++++++++++++++++++----------------------------- 1 file changed, 31 insertions(+), 30 deletions(-) diff --git a/234.md b/234.md index 6da1d0a..42b7ebe 100644 --- a/234.md +++ b/234.md @@ -2,7 +2,7 @@ #电子表格 -一提到电子表格,可能立刻想到的是excel。殊不知,电子表格,还是“历史悠久”的呢,比word要长久多了。根据维基百科的记载整理一个简史: +一提到电子表格,可能立刻想到的是excel。殊不知,电子表格“历史悠久”,比Word要长久多了。根据维基百科的记载整理一个简史: >VisiCalc是第一个电子表格程序,用于苹果II型电脑。由丹·布李克林(Dan Bricklin)和鮑伯·法蘭克斯頓(Bob Frankston)發展而成,1979年10月跟著蘋果二號電腦推出,成為蘋果二號電腦上的「殺手應用軟體」。 @@ -20,15 +20,15 @@ >其实,除了微软的电子表格,在Linux系统中也有很好的电子表格,google也提供了不错的在线电子表格(可惜某国内不能正常访问)。 -从历史到现在,电子表格都很广泛的用途。所以,python也要操作一番电子表格,因为有的数据,或许就是存在电子表格中。 +从历史到现在,电子表格都很广泛的用途。所以,Python也要操作一番电子表格,因为有些数据,就存在电子表格中。 -##openpyl +##openpyxl -openpyl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel 2010 xlsx/xlsm/xltx/xltm的文件的读写的第三方库。(差点上不来气,这句话太长了。) +openpyxl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel 2010 xlsx/xlsm/xltx/xltm的文件的读写的第三方库。 ###安装 -安装第三方库,当然用法力无边的pip install +安装第三方库,当然用法力无边的pip install。 $ sudo pip install openpyxl @@ -39,7 +39,7 @@ openpyl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel ###workbook和sheet -第一步,当然是要引入模块,用下面的方式: +第一步,引入模块,用下面的方式: >>> from openpyxl import Workbook @@ -47,7 +47,7 @@ openpyl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel >>> wb = Workbook() -请回忆Excel文件,如果想不起来,就打开Excel,我们第一眼看到的是一个称之为工作簿(workbook)的东西,里面有几个sheet,默认是三个,当然可以随意增删。默认又使用第一个sheet。 +请回忆Excel文件,如果想不起来,就打开Excel,我们第一眼看到的是一个称之为工作簿(workbook)的东西,里面有几个sheet,默认是三个,当然可以随意增删。默认使用第一个sheet。 >>> ws = wb.active @@ -57,19 +57,19 @@ openpyl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel >>> ws1 = wb.create_sheet() -甚至,还可以加塞: +甚至,还可以插队: >>> ws2 = wb.create_sheet(1) -排在了第二个位置。 +在第二个位置插入了一个sheet。 在Excel文件中一样,创建了sheet之后,默认都是以"Sheet1"、"Sheet2"样子来命名的,然后我们可以给其重新命名。在这里,依然可以这么做。 >>> ws.title = "python" -ws所引用的sheet对象名字就是"python"了。 +`ws`所引用的sheet对象名字就是"python"了。 -此时,可以使用下面的方式从工作簿对象中得到sheet +此时,可以使用下面的方式从工作簿对象中得到sheet。 >>> ws01 = wb['python'] #sheet和工作簿的关系,类似键值对的关系 >>> ws is ws01 @@ -83,41 +83,41 @@ ws所引用的sheet对象名字就是"python"了。 整理一下到目前为止我们已经完成的工作:建立了工作簿(wb),还有三个sheet。还是显示一下比较好: - >>> print wb.get_sheet_names() + >>> print wb.get_sheet_names() #Python 3: print(wb.get_sheet_names()) ['python', 'Sheet2', 'Sheet1'] -Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用了一个加塞的方法。这跟Excel中差不多少,如果sheet命名了,就按照那个名字显示,否则就默认为名字是"Sheet1"形状的(注意,第一个字母大写)。 +Sheet2之所以排在了第二位,是因为在建立的时候,用了一个插队的方法。这跟在Excel中差不多少,如果Sheet命名了,就按照那个名字显示,否则就默认为名字是"Sheet1"形状的(注意,第一个字母大写)。 -也可以用循环语句,把所有的sheet名字打印出来。 +也可以用循环语句,把所有的Sheet名字打印出来。 >>> for sh in wb: - ... print sh.title + ... print sh.title #Python 3: print(sh.title) ... python Sheet2 Sheet1 -如果读者去`dir(wb)`工作簿对象的属性和方法,会发现它具有迭代的特征`__iter__`方法。说明,工作簿是可迭代的。 +如果读者`dir(wb)`工作簿对象的属性和方法,会发现它具有迭代的特征`__iter__`。说明,工作簿对象是可迭代的。 ###cell -为了能够清楚理解填数据的过程,将电子表中约定的名称以下图方式说明: +为了能够清楚理解向电子表格中增加数据的过程,将电子表中约定的名称以下图方式说明: ![](./2images/23401.jpg) -对于sheet,其中的cell是它的下级单位。所以,要得到某个cell,可以这样: +对于sheet,其中的cell是它的下级单位。所以,要得到某个cell可以这样: b4 = ws['B4'] -如果B4这个cell已经有了,用这种方法就是将它的值赋给了变量b4;如果sheet中没有这个cell,那么就创建这个cell对象。 +如果B4这个cell已经有了,用这种方法就是将它的值赋给了变量`b4`;如果sheet中没有这个cell,那么就创建这个cell对象。 -请读者注意,当我们打开Excel,默认已经画好了好多cell。但是,在python操作的电子表格中,不会默认画好那样一个表格,一切都要创建之后才有。所以,如果按照前面的操作流程,上面就是创建了B4这个cell,并且把它作为一个对象被b4变量引用。 +请读者注意,当我们打开Excel,默认已经画好了好多cell。但是,在Python操作的电子表格的情况中,不会默认画好那样一个表格,一切都要创建之后才有。所以,如果按照前面的操作流程,上面就是创建了B4这个cell,并且把它作为一个对象被b4变量引用。 如果要给B4添加数据,可以这么做: >>> ws['B4'] = 4444 -因为b4引用了一个cell对象,所以可以利用这个对象的属性来查看其值: +因为`b4`引用了一个cell对象,所以可以利用这个对象的属性来查看其值: >>> b4.value 4444 @@ -130,9 +130,10 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 >>> a2 = ws.cell(row = 2, column = 1) -刚才已经提到,在建立了sheet之后,内存中的它并没有cell,需要程序去建立。上面都是一个一个地建立,能不能一下建立多个呢?比如要类似下面的: +刚才已经提到,在建立了Sheet之后,内存中的它并没有cell,需要程序去建立。上面都是一个一个地建立,能不能一下建立多个呢?比如要类似下面的: |A1|B1|C1| +|----|----|---| |A2|B2|C2| |A3|B3|C3| @@ -147,11 +148,11 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 (, , ), (, , )) -这是按照横向顺序数过来来的,即A1-B1-C1,然后下一横行。还可以用下面的循环方法,一个一个地读到每个cell对象: +这是按照横向顺序读过来的,即A1-B1-C1,作为一个元组,然后读下一横行,再组成一个元组。还可以用下面的循环方法,一个一个地读到每个cell对象: >>> for row in ws.iter_rows("A1:C3"): ... for cell in row: - ... print cell + ... print cell #Python 3: print(cell) ... @@ -163,7 +164,7 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 -也可以用sheet对象的`rows`属性,得到按照横向顺序依次排列的cell对象(注意观察结果,因为没有进行范围限制,所以是目前sheet中所有的cell,前面已经建立到第四行了B4,所以,要比上面的操作多一个row): +也可以用Sheet对象的`rows`属性,得到按照横向顺序依次排列的cell对象(注意观察结果,因为没有进行范围限制,所以是当前Sheet中所有的cell,前面已经建立到第四行了B4,所以,要比上面的操作多一个row): >>> ws.rows ((, , ), @@ -171,7 +172,7 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 (, , ), (, , )) -用sheet对象的`columns`属性,得到的是按照纵向顺序排列的cell对象(注意观察结果): +用Sheet对象的`columns`属性,得到的是按照纵向顺序排列的cell对象(注意观察结果): >>> ws.columns ((, , , ), @@ -189,7 +190,7 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 File "", line 2, in AttributeError: 'tuple' object has no attribute 'value' -报错了。什么错误。关键就是没有注意观察上面的结果。tuple里面是以tuple为元素,再里面才是cell对象。所以,必须要“时时警醒”,常常谨慎。 +报错了。关键是没有注意观察上面的结果。元组里面是以元组为元素,再里面才是cell对象。所以,必须要“时时警醒”,常常谨慎。 >>> for row in ws.rows: ... for cell in row: @@ -197,7 +198,7 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 ... i += 1 ... -如此,就给每个cell添加了数据。查看一下,不过要换一个属性: +如此,就给每个cell添加了数据。查看一下,不过可以换一个属性: >>> for col in ws.columns: ... for cell in col: @@ -236,12 +237,12 @@ Sheet2这个sheet之所以排在了第二位,是因为在建立的时候,用 >>> from openpyxl import load_workbook >>> wb2 = load_workbook("23401.xlsx") - >>> print wb2.get_sheet_names() + >>> print wb2.get_sheet_names() #Python 3: print(wb2.get_sheet_names()) ['python', 'Sheet2', 'Sheet1'] >>> ws_wb2 = wb2["python"] >>> for row in ws_wb2.rows: ... for cell in row: - ... print cell.value + ... print cell.value #Python 3: print(cell.value) ... 1 2 From 54f8cf8073a6dae64df92e283e0da3c0b8550834 Mon Sep 17 00:00:00 2001 From: Kyle Zheng Date: Thu, 5 May 2016 11:48:26 +0800 Subject: [PATCH 183/288] Update 120.md --- 120.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/120.md b/120.md index de0fa86..bc5c709 100644 --- a/120.md +++ b/120.md @@ -112,7 +112,7 @@ >由于其在符号逻辑运算中的特殊贡献,很多计算机语言中将逻辑运算称为布尔运算,将其结果称为布尔值。 -请读者认真阅读布尔的生平,立志呀。 +请读者认真阅读布尔的生平,励志呀。 布尔所创立的这套逻辑被称之为“布尔代数”。其中规定只有两种值,True和False,正好对应这计算机上二进制数的1和0。所以,布尔代数和计算机是天然吻合的。 From 8330be766a39408b35290dc4e0db41e0bd236c24 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 5 May 2016 22:56:01 +0800 Subject: [PATCH 184/288] p3 --- 221.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/221.md b/221.md index 11578b3..f62df2b 100644 --- a/221.md +++ b/221.md @@ -223,7 +223,7 @@ sys.argv是专门用来向python解释器传递参数,名曰“命令行参数 copy(): ['foo', 17] deepcopy(): ['foo', 7] -尽在不言中,请读者认真对邵上面的显示结果,体会深拷贝和浅拷贝。 +尽在不言中,请读者认真对照上面的显示结果,体会深拷贝和浅拷贝。 ------ From 9ed42c1f55e2251d7ec3e032e3aab5a5e506b39f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Fri, 6 May 2016 09:24:16 +0800 Subject: [PATCH 185/288] p3 --- 228.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/228.md b/228.md index 7e8d8b9..5cd0fb4 100644 --- a/228.md +++ b/228.md @@ -41,15 +41,15 @@ >pip是一个以Python计算机程序语言写成的软件包管理系统,它可以安装和管理软件包,另外不少的软件包也可以在“Python软件包索引”(英语:Python Package Index,简称PyPI)中找到。(源自《维基百科》) -首先,要安装pip。读者可以先检查一下,在你的操作系统中是否已经有了pip,因为有的操作系统,或者已经预先安装了,或者在安装Python的时候安装了。如果你确信没有安装,可以使用如下方法: +首先,要安装pip。读者可以先检查一下,在你的操作系统中是否已经有了pip,因为有的操作系统,或者已经预先安装了,或者在安装Python的时候安装了。如果你确信没有安装,就要针对你的操作系统进行安装,例如在Ubutun中: -Debian and Ubuntu: +Python 2: sudo apt-get install python-pip -Fedora and CentOS: +Python 3: - sudo yum install python-pip + sudo apt-get install python3-pip 当然,也可以这里下载文件[get-pip.py](https://bootstrap.pypa.io/get-pip.py),然后执行`python get-pip.py`来安装。这个方法也适用于windows。 From 51ee68ae93ab6d2d9281bc0bd218922c9098f7b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Sun, 8 May 2016 12:05:54 +0800 Subject: [PATCH 186/288] p3 --- 228.md | 6 ++++++ 238.md | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/228.md b/228.md index 5cd0fb4..8f3ae61 100644 --- a/228.md +++ b/228.md @@ -67,7 +67,13 @@ pip就这样安装好了,非常简单吧。 ###安装 +Python 2: + pip install requests + +Python 3: + + pip3 install requests 安装好之后,在交互模式下: diff --git a/238.md b/238.md index bc9afb8..bf71fdc 100644 --- a/238.md +++ b/238.md @@ -4,7 +4,7 @@ ##方法 -在类里面,除了属性,就是方法,当然还有注释和文档,但这些是计算机不看的,只是给人看的。 +在类里面,除了属性,就是方法,当然还有注释和文档,但计算机不看它们的,只是人看的。 关于方法,在通常情况下用实例调用。但是,跟方法有关的一些深入的话题,还需要辨析。 @@ -52,7 +52,7 @@ Python 2的报错信息是: Foo.bar() TypeError: bar() missing 1 required positional argument: 'self' -不管你是用什么版本,最好都阅读上述两个报错信息。在Python 2的报错信息中,告诉我们`barr()`是非绑定方法,它必须以`Foo`的实例作为第一个参数;Python 3的报错信息也是告诉我们`bar()`缺少一个必须的参数`self`,它也是一个实例。所以,不管哪个版本,都要传一个实例。 +不管你是用什么版本,最好都阅读上述两个报错信息。在Python 2的报错信息中,告诉我们`bar()`是非绑定方法,它必须以`Foo`的实例作为第一个参数;Python 3的报错信息也是告诉我们`bar()`缺少一个必须的参数`self`,它也是一个实例。所以,不管哪个版本,都要传一个实例。 Python中一切皆对象——又是老生常谈,都是因为此观念之重要。类`Foo`的方法`bar()`也是对象——函数对象,那么,我们就可以像这样来获得该对象了。 From 74a576f4074416e1fca3dd1d4cb384e7fdb400c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Sun, 8 May 2016 21:16:09 +0800 Subject: [PATCH 187/288] p3 --- 209.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/209.md b/209.md index 97394f7..7e4b684 100644 --- a/209.md +++ b/209.md @@ -125,7 +125,7 @@ 在子类`Girl`中,只写了一个方法`get_name()`,但是因为是继承了`Person`,那么`Girl`就全部拥有了`Person`中的方法和属性。子类`Girl`的方法`get_name()`中,使用了属性`self.name`,但是在类`Girl`中,并没有什么地方显示创建了这个属性,就是因为继承`Person`类,在父类中有初始化函数。所以,当使用子类创建实例的时候,必须传一个参数`cang = Girl("canglaoshi")`,然后调用实例方法`cang.get_name()`。对于实例方法`cang.height(160)`,也是因着继承的缘故使然。 -在上面的程序中,子类`Gril`里面没有与父类`Person`重复的属性和方法,但有时候,会遇到这样的情况。 +在上面的程序中,子类`Girl`里面没有与父类`Person`重复的属性和方法,但有时候,会遇到这样的情况。 class Girl(Person): def __init__(self): @@ -207,7 +207,7 @@ Python 3中也有异常: def get_name(self): return self.name -仅仅修改一处,将`Person.__init__(self, name)`去掉,修改为`super(Girl, self).__init__(name)`。实行程序后,显示的结果与以前一样。 +仅仅修改一处,将`Person.__init__(self, name)`修改为`super(Girl, self).__init__(name)`。执行程序后,显示的结果与以前一样。 关于`super`,有人做了非常深入的研究,推荐读者阅读[《Python’s super() considered super! 》](https://rhettinger.wordpress.com/2011/05/26/super-considered-super/),文中已经探究了`super`的工作过程。读者如果要深入了解,可以阅读这篇文章。 From c32b7b99783412a47719e5fa721359a28170872f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Mon, 16 May 2016 15:50:54 +0800 Subject: [PATCH 188/288] modify --- 303.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/303.md b/303.md index 11ff95c..7285bc9 100644 --- a/303.md +++ b/303.md @@ -20,9 +20,9 @@ MVC模式是一个非常好的软件架构模式,在网站开发中,也常 >MVC模式最早由Trygve Reenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式。MVC模式的目的是实现一种动态的程式设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部分分离的同时也赋予了各个基本部分应有的功能。专业人员可以通过自身的专长分组: -> - (控制器 Controller)- 负责转发请求,对请求进行处理。 -> - (视图 View) - 界面设计人员进行图形界面设计。 -> -(模型 Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。 +- (控制器 Controller)- 负责转发请求,对请求进行处理。 +- (视图 View) - 界面设计人员进行图形界面设计。 +- (模型 Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。 所谓“前端”,就对大概对应着View部分,之所以说是大概,因为MVC是站在一个软件系统的角度进行划分的,上图中的前后端,与其说是系统部分的划分,不如严格说是系统功能的划分。 From e72f193e416433563abe7faf7277d440acff102a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Tue, 17 May 2016 21:47:11 +0800 Subject: [PATCH 189/288] p3 --- 208.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/208.md b/208.md index 707558f..54966ed 100644 --- a/208.md +++ b/208.md @@ -28,7 +28,7 @@ >>> class Girl(object): #Python 3: class Girl: breast = 90 -在真实世界中,breast就是Girl的属性,你到某度上去搜索一下有关的关键词,就发现breast是一个重要属性了。所以,如果要建立类`Girl`,它必须有`breast`属性。那么这个属性的值,就关系到某类Girl的颜值了。这里的类`Girl`都是`breast`为90的,也就是所有符合此类的girl,其breast都是90。你可以想象其颜值高低了,是否符合你的喜好。 +在真实世界中,breast就是Girl的属性,你到某度上去搜索一下有关的关键词,就发现breast是一个重要属性了。所以,如果要建立类`Girl`,它必须有`breast`属性。那么这个属性的值,就关系到某类Girl的颜值了。这里的类`Girl`都是`breast`为90的,你可以想象其颜值高低了,是否符合你的喜好。 大招一出,为之一振,顿时困意消退。下面就请回到前面那个类`A`,继续枯燥地学习。 @@ -72,7 +72,7 @@ >>> Girl.__dict__ mappingproxy({'breast': 40, '__weakref__': , '__dict__': , '__module__': '__main__', '__doc__': None}) -对于不同版本的Python,上述显示结果也有所差异。但你都能看到属性的详细信息。类的特殊属性`__dict__`所显示的是这个类的属性名称以及该属性的完整数据。 +对于不同版本的Python,上述显示结果也有所差异,但你都能看到属性的详细信息。类的特殊属性`__dict__`所显示的是这个类的属性名称以及该属性的完整数据。 下面列出类的几种特殊属性的含义,读者可以一一查看。 @@ -118,7 +118,7 @@ >>> Girl() <__main__.Girl object at 0x00000000035262E8> -但是,如果不将实例赋给某个变量,它就马上被Python视为垃圾回收了。只有把它赋给某个变量——实例也是对象——我们通过变量才能操作这个实例。 +而`canglaoshi = Girl()`本质上就是将变量`canglaoshi`与实例对象`Girl()`建立引用关系,这种关系同以前见过的赋值语句`a = 2`是同样的效果。 那么,一个实例的建立过程是怎样进行的呢? @@ -275,7 +275,7 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo 如果类中变量引用可变数据,情形会有所不同。因为可变数据能够进行原地修改。 >>> class B(object): - ... y = [1,2,3] + ... y = [1, 2, 3] 这次定义的类中,变量引用的是一个可变对象。 @@ -323,9 +323,9 @@ foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo ##`self`的作用 -类里面的任何方法,第一个参数是self,但是在实例化的时候,似乎没有这个参数什么事儿(不显示地写出来),那么self是干什么的呢? +类里面的任何方法,第一个参数是self,但是在创建实例的时候,似乎没有这个参数什么事儿(不显示地写出来),那么`self`是干什么的呢? -self是一个很神奇的参数。 +`self`是一个很神奇的参数。 将前文的`Person`类简化一下, @@ -346,7 +346,7 @@ self是一个很神奇的参数。 <__main__.Person object at 0x0000000003146C50> -这说明`self`就是实例,在看看刚刚建立的那个实例。 +这说明`self`就是类`Person`的实例,再看看刚刚建立的那个实例`girl`。 >>> girl <__main__.Person object at 0x0000000003146C50> @@ -357,12 +357,12 @@ self是一个很神奇的参数。 当创建实例的时候,实例变量作为第一个参数,被Python解释器悄悄地传给了`self`,所以我们说在初始化函数中的`self.name`就是实例的属性。 -注意,`self.name`中的name和初始化函数的参数`name`没有任何关系,它们两个一样,只不过是一种起巧合(经常巧合,其实是为了省事和以后识别方便,故意让它们巧合。),或者说是写代码的人懒惰,不想另外取名字而已,无他。当然,如果写成`self.xxxooo = name`,也是可以的。 +注意,`self.name`中的name和初始化函数的参数`name`没有任何关系,它们两个一样,只不过是一种起巧合(经常巧合,其实是为了省事和以后识别方便,故意让它们巧合),或者说是写代码的人懒惰,不想另外取名字而已,无他。当然,如果写成`self.xxxooo = name`,也是可以的。 >>> girl.name 'canglaoshi' -所以,我们得到实例属性,但是,在类的外面不能这样用: +这是我们得到的实例属性,但是,在类的外面不能这样用: >>> self.name Traceback (most recent call last): @@ -372,7 +372,7 @@ self是一个很神奇的参数。 ##数据流转 -只有将类实例化,通过实例来执行各种方法,应用实例的属性,才是最常见的现象。 +将类实例化,通过实例来执行各种方法,应用实例的属性,是最常见的操作。 所以,对此过程中的数据流转一定要弄明白。 @@ -413,15 +413,15 @@ self是一个很神奇的参数。 ![](./2images/20801.png) -创建实例`girl = Person('canglaoshi')`,注意观察图上的箭头方向。`girl`这个引用实例的变量传给了和类中的`self`,简单理解为:实例变量与self对应,实例变量主外,self主内。 +创建实例`girl = Person('canglaoshi')`,注意观察图上的箭头方向。`girl`这个引用实例对象的变量传给了`self`,即`self`也引用了实例对象。简化理解为:self是实例(不求准确,只求表面现象),实例变量主外,self主内。 -`"canglaoshi"`是一个具体的数据,通过初始化函数中的`name`参数,传给`self.name`,前面已经讲过,`self`也是一个实例,可以为它设置属性,`self.name`就是一个属性,经过初始化函数,这个属性的值由参数`name`传入,现在就是`"canglaoshi"`。 +`"canglaoshi"`是一个具体的数据,通过初始化函数中的`name`参数,传给`self.name`——准确地说谁传了对象引用给实例的属性`name`。前面已经讲过,`self`是一个实例,可以为它设置属性,`self.name`就是一个属性,经过初始化函数,这个属性的值由参数`name`传入,现在就是`"canglaoshi"`。 在类`Person`的其它方法中,都是以`self`为第一个或者唯一一个参数。注意,在Python中,这个参数要显明写上,在类内部是不能省略的。这就表示所有方法都承接`self`实例对象,它的属性也被带到每个方法之中。例如在方法里面使用`self.name`即是调用前面已经确定的实例属性数据。当然,在方法中,还可以继续为实例`self`增加属性,比如`self.breast`。这样,通过`self`实例,就实现了数据在类内部的流转。 如果要把数据从类里面传到外面,可以通过`return`语句实现。如上例子中所示的`getName`方法。 -因为引用实例的变量`girl`和`self`是对应的,实际上,在类里面也可以用`girl`代替`self`。例如,做如下修改: +因为引用实例对象的变量`girl`和`self`,所以,在类里面也可以用`girl`代替`self`。例如,做如下修改: #!/usr/bin/env python # coding=utf-8 @@ -442,7 +442,7 @@ self是一个很神奇的参数。 canglaoshi -这个例子说明,在实例化之后,实例变量`girl`传给个`self`。但是,提醒读者,千万不要用上面的修改了的那个方式。因为那样写使类没有独立性,这是大忌。 +这个例子说明,在实例化之后,`girl`和`self`都引用了实例对象。但是,提醒读者,千万不要用上面的修改了的那个方式。因为那样写使类没有独立性,这是大忌。 ------ From 0a6f96e7018f023406fd355b43caaf0f36f141b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Tue, 17 May 2016 23:08:02 +0800 Subject: [PATCH 190/288] new --- 01.md | 85 +++++++++++++---------------------------------------------- 02.md | 75 +++++++++++++++++++++++++++++++++++++++++++++++----- 2 files changed, 88 insertions(+), 72 deletions(-) diff --git a/01.md b/01.md index 6b4705f..c69baf2 100644 --- a/01.md +++ b/01.md @@ -4,86 +4,43 @@ #关于Python的故事 -我已经在[《零基础学Python(第一版)》](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/index.md)中写了一个专门讲述Python故事的——[唠叨一些关于Python的事情](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/001.md)——章节,今天再写类似的标题,不打算完全重复原来的,只是把部分认为重要的或者不可或缺的东西复制过来。 +如同学习任何一种自然语言比如英语、或者其它编程语言比如汇编一样,总要说一说有关这种语言的事情,有的可能就是八卦,越八卦的越容易传播。当然,以下的所有说法中,难免充满了自恋,因为你看不到说Python的坏话。这也好理解,如果要挑缺点是比较容易的事情,但是找优点,不管是对人还是对其它事物,都是困难的。这也许是人的劣根之所在吧,喜欢挑别人的刺儿,从而彰显自己在那方面高于对方。特别是在我们这个麻将文化充斥的神奇地方,更多了。 -原来写了第一版,现在又写第二版,显然是对第一版不满意。不满意在哪里呢? +废话少说点(已经不少了),进入有关Python的话题。 -- 第一版的有些知识阐述还不完善,也有不严谨之处,当然,第二版也会有,但试图修正 -- 第二版较第一版,在内容上要进行大幅度扩展 +##Python的昨天今天和明天 -总之,第二版要有优于第一版的地方,所以,请读者还是阅读此版。 +这个题目有点大了,似乎回顾过去、考察现在、张望未来,都是那些掌握方向的大人物(司机吗?)做的。那就让我们每个人都成为大人物吧。因为如果不回顾一下历史,似乎无法满足学习者的好奇心;如果不考察一下现在,学习者不放心(担心学了之后没有什么用途);如果不张望一下未来,怎么能吸引(也算是一种忽悠吧)学习者或者未来的开发者呢? -##越来越火的Python +###Python的历史 -在前几年(before 2011),我跟一些朋友介绍python的时候,看到的常常是一种很诧异的眼神,通常会听到: +Python的创始人为吉多·范罗苏姆(Guido van Rossum)。关于这个人开发这种语言的过程,很多资料里面都要记录下面的故事: - “那时什么东西?” - “解释性语言会不会很慢?” - “没听说谁用呀?” - “能像php,java,c#那样用来做网站吗?” - “什么?你说的是pascal?你还在用这个老古董?” - “哦,我听说过,有一些老外在用,不过我们这还没有人用呢。” - -时过境迁,现在已经有了很大变化。 - -2014年初,我开始写《零基础学Python》系列,就得到了很多朋友的支持,而且吸引了不少学习Python的朋友,特别是在我的那个QQ群里面,集中了不少学习者和爱好者,当然也有高手深藏不露。 - -获得我发布的有关Python信息途径: - -1. 加入QQ群,里面可以跟很多人交流。QQ群:Code Craft:26913719 -2. 关注我的新浪微博,名称是:老齐Py。地址:http://weibo.com/qiwsir -3. 到github.com上直接follow我,名称是:qiwsir。地址:https://github.com/qiwsir -4. 经常关注我的网站:www.itdiffer.com - -特别是2015年一开始,在QQ群(26913719)里面,就有朋友说,他在上海找工作,看到好多公司都要有Python开发经验的。也有朋友委托我推荐Python程序员的。 - -从我自己的经历中也感受到,用Python的领域越来越多,找Pythoner的公司和机构也越来越多了。 - -所以,学习Python,挺好(包括女生,也是“挺”好)。更何况,Python还是适合于更多领域的语言,学习者可以涵盖从小学生到大学生,应用领域更是覆盖了从web开发到GUI,在大数据、机器学习等这些领域,更是独树一帜。推荐阅读[《大数据全栈式开发语言 – Python》](http://insights.thoughtworkers.org/full-stack-python/)。 - -所以,学习Python性价比最高,划算。 - -但是,有一个在我来看不是问题,但是在很多初学者来看,是一个天大问题:是学习Python 2还是学习Python 3? - -##Python的版本 - -不管出于什么原因,我认为Python给自己搞了两个版本,是败笔。 - -虽然如此,但幸亏两个版本并非天壤之别,绝大部分是一样的。所以,学习者可以选择任何一种版本进行学习,然后在具体应用的时候,用到什么版本,只要稍加注意,或者到网上搜索一下,即可。 - -我在这里还整理了一篇文章:[Python2.7.x和3.x版本的重要区别](https://github.com/qiwsir/StarterLearningPython/blob/master/n005.md),不知是否愿意阅读? - -但是,总有不放心的初学者。 - -我曾被无数次的拷问:教程是Python 2还是Python 3? - -我非常想告诉他什么都支持,但是,我的代码的确是在Python 2下调试的,总不能撒谎吧。于是当我如实奉告的时候,他会说要学习Python 3,转头找那些号称是Python 3的教程。 - -无奈。 +>1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python作为程序的名字,是因为他是一个蒙提·派森的飞行马戏团的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并取得了非常好的效果,完美结合了C和其他一些语言。 -为了迎合学习者胃口,我的教程,**从即日起,逐渐修改代码,适合于Python 3**。 +这个故事我是从维基百科里面直接复制过来的,很多讲Python历史的资料里面,也都转载这段。但是,在我来看,这段故事有点忽悠人的味道。其实,上面这段中提到的,吉多为了打发时间而决定开发Python的说法,来自他自己的这样一段自述: -从此,本教程宣称:**支持Python 2和Python 3**。如遇到不符合此宣称的地方,是因为还没有修改到那里呢。 +>Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office (a government-run research lab in Amsterdam) would be closed, but I had a home computer, and not much else on my hands. I decided to write an interpreter for the new scripting language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python's Flying Circus).(原文地址:https://www.python.org/doc/essays/foreword/) -还要说一句,上述宣称的最终解释权归本教程作者。 +首先,必须承认,这个哥们儿是一个牛人,非常牛的人。此处献上我的崇拜。 -不管是2还是3,总要从零开始学习,从零开始学,就意味着不需要基础。这个我有信心。 +其次,读者千万别认为Python就是一个随随便便就做出来的东西,就是一个牛人一冲动搞出来的东西。人家也是站在巨人的肩膀上的。 -##需要什么基础吗 +第三,牛人在成功之后,往往把奋斗的过程描绘的比较简单,或者是谦虚?或者是让人听起来他更牛?反正,我们看最后结果的时候,很难感受过程中的酸甜苦辣。 -这是很多初学者都会问的一个问题。诚然,在计算机方面的基础越好,对学习任何一门新的编程语言,都是更有利的。如果,你在编程语言的学习上属于零基础,也不用担心,不管用哪门语言作为学习编程的入门语言,总要有一个开始吧。 +不管怎么样,牛人在那时刻开始创立了Python,而且,他更牛的在于具有现代化的思维:开放。通过Python社区,吸引来自世界各地的开发者,参与Python的建设。在这里,请读者一定要联想到Linux和它的创始人芬兰人林纳斯·托瓦兹。两者都秉承“开放”思想,得到了来自世界各地开发者和应用者的欢呼和尊敬。也请大家再联想到另外一个在另外领域秉承开放思想的人——邓小平先生,他让一个封闭的破旧老水车有了更新。 -就我个人来看,Python是比较适合作为学习编程的入门语言的(作为学习编程的入门语言,我现在最不理解的是用C,因为很多曾经立志学习编程的人学了C语言之后,才知道自己不适合编程。难道是用C来筛选这个行业的从业者吗?)。总之,不用担心自己的所谓基础问题。 +###Python的现在 -看我这个教程的标题,就是强调“零基础”的。 +应该说Python现在表现不错。除了在Web开发方面有很多应用之外(当然PHP在这方面也是很不错),在数据分析、机器学习、大数据、云计算等这些时髦的领域,都有它的身影,并且影响力越来越大了。此外,还有自动化运维、自动化测试。 -不仅我这么认为,美国有不少高校也这么认为,纷纷用Python作为编程专业甚至是非编程专业的大学生入门语言。 +读者可以到这个网站看一看Python的应用案例:[https://www.python.org/about/success/](https://www.python.org/about/success/)。 -最后的结论是:学习python,你不用担心基础问题。 +不过,因为赵国大学教育的问题,致使很多青年才俊对Python了解甚少;更因为赵国的功利化优良传统,青年才俊们最大担心的是学了Python——这种学校老师很少甚至从没有提及的怪东西——没有什么用途,因为才俊们已经通过铺天盖地的广告了解到android、iOS开发,于是就认为“软件开发==Android or iOS”,其它都过时了——最希望才俊能够跳出四角天空,用自己的头脑思考、用自己的眼睛看世界,形成独立的判断,不要听信广告——也包括我这里的各种对Python的溢美之词。 -**特别是看我的教程,我的目标就是要跟你一起从零基础开始,直到高手境界**。 +###Python的未来 -所以,尽管放胆来学,不用犹豫、不要惧怕。还有一个原因,是因为她优雅。 +这个不需要描述,它的未来在所有使用者和学习者手中。 ##优雅的Python @@ -171,10 +128,6 @@ Python号称是优雅的。但是这种说法仁者见仁智者见智。比如 Guido van Rossum 是值得所有pythoner感谢和尊重的,因为他发明了这个优雅的编程语言。他发明python的过程是那么让人称赞和惊叹,显示出牛人的风采。 ->1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python作为程序的名字,是因为他是一个蒙提·派森的飞行马戏团的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并取得了非常好的效果,完美结合了C和其他一些语言。 - -这段故事的英文刊载在:[https://www.python.org/doc/essays/foreword/](https://www.python.org/doc/essays/foreword/) - Python已经让人心动了。除了心动,还要行动;只有行动,才能“从小工到专家”。 ------- diff --git a/02.md b/02.md index bcfed24..0e5ec44 100644 --- a/02.md +++ b/02.md @@ -8,19 +8,82 @@ 有一本书的名字就是《程序员修炼之道:从小工到专家》,我借用此书的标题。 -如何能实现这个梦想?那本书中,给出了非常好的建议,值得借鉴。 +但是,本书或许能够是你成为专家路上的一块铺路石,如果真能如此,我感到荣幸之至。 -我在这里倒是想到了另外一个问题,也是学习Python的朋友给我提出来的: +##关于本书 ->“书已经看了,书上的代码也运行过了,习题也能解答了,但是还不知如何开发一个真正的应用程序,不知从何处下手。” +我曾经在网上写过[《零基础学Python(第一版)》](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/index.md),完成之后,发现有一些错误,并且整体结构对零基础的学习者还不是很适合。于是,就重新写了本教程,力图为零基础的学习者提供一个入门的教程。 -工作中,也遇到过一些大学生毕业生,虽然相关专业的考试分数是不错的(我一般是相信那些成绩是真的),但是,一讨论到专业问题,常常让我大跌眼镜,特别是当他面对真实的工作对象时,所表现出来的能力要比成绩单上的数字差太多了。 +本教程有幸得到了电工业出版社的认可,已经集结成为《跟老齐学Python》一书出版(读者可以在各大网络书店搜索,欢迎购买)。但是,当书出版之后,我又萌生了进一步就该的设想,于是在2016年3月到5月期间,对网络教程进行了再次修订,并且定名为现在的名称——《跟老齐学Python:入门教程》——言外之意,还有别的教程。的确,在我计划之中,还要编写针对相关方面应用的教程。 + +对于本书,我再次强调,其对象零基础的学习者。之所以再次强调,是因为已经有读者误解了本书的目的。购买了之后,发现比较基础,于是就狂喷一通,并言之凿凿,“还不如看官方文档”。的确,Python的官方文档是最好的。如果能够直接阅读官方文档来学习,当然是一种不错的方法,并且这样的学习者也一定是高手,所以不是本书的读者。就此也建议才俊们,请看完成内容再喷无妨。 + +或许书中“干货”不多——人体约70%是水分,木乃伊才是干货——水是一种很好的溶剂,它存在书中,目的是别那么枯燥——或许这个目标没有完全实现,只能说是力争了,毕竟编程语言还是不如讲故事精彩。 + +我也非常欢迎读者能够以心平气和的方式跟我交流,以帮助我改进本书。所以,提供如下联系到我的途径: + +1. 加入QQ群,里面可以跟很多人交流。QQ群:Code Craft:26913719 +2. 关注我的新浪微博,名称是:老齐Py。地址:http://weibo.com/qiwsir +3. 到github.com上直接follow我,名称是:qiwsir。地址:https://github.com/qiwsir +4. 经常关注我的网站:www.itdiffer.com + +现在的年代是一个“东风吹战鼓擂”的年代,能够心平气和讲话的本来就不多,但是气大伤肾,特别是年轻人,一定要小心啦。 + +##Python的版本 + +关于Python的版本问题,是必须要交代的。 + +不管出于什么原因,我认为Python给自己搞了两个版本,是败笔。 + +虽然如此,但幸亏两个版本并非天壤之别,绝大部分是一样的。所以,学习者可以选择任何一种版本进行学习,然后在具体应用的时候,用到什么版本,只要稍加注意,或者到网上搜索一下,即可。 + +我在这里还整理了一篇文章:[Python2.7.x和3.x版本的重要区别](https://github.com/qiwsir/StarterLearningPython/blob/master/n005.md),不知是否愿意阅读? + +但是,总有不放心的初学者。 + +我曾被无数次的拷问:教程是Python 2还是Python 3? + +我非常想告诉他什么都支持,但是,我的代码的确是在Python 2下调试的,总不能撒谎吧。于是当我如实奉告的时候,他会说要学习Python 3,转头找那些号称是Python 3的教程。 + +无奈。 + +为了迎合学习者胃口,我的教程,**从即日起,适合于Python 3**。 + +从此,本教程宣称:**支持Python 2和Python 3**。如遇到不符合此宣称的地方,请告知我,我立刻修改。 + +还要说一句,上述宣称的最终解释权归本教程作者。 + +不管是2还是3,总要从零开始学习,从零开始学,就意味着不需要基础。这个我有信心。 + +##需要什么基础吗 + +这是很多初学者都会问的一个问题。诚然,在计算机方面的基础越好,对学习任何一门新的编程语言,都是更有利的。如果,你在编程语言的学习上属于零基础,也不用担心,不管用哪门语言作为学习编程的入门语言,总要有一个开始吧。 + +就我个人来看,Python是比较适合作为学习编程的入门语言的(作为学习编程的入门语言,我现在最不理解的是用C,因为很多曾经立志学习编程的人学了C语言之后,才知道自己不适合编程。难道是用C来筛选这个行业的从业者吗?)。总之,不用担心自己的所谓基础问题。 + +这个教程,就是强调“零基础”的。 + +不仅我这么认为,美国有不少高校也这么认为,纷纷用Python作为编程专业甚至是非编程专业的大学生入门语言。 + +最后的结论是:学习python,你不用担心基础问题。 + +**特别是看我的教程,我的目标就是要跟你一起从零基础开始,直到高手境界**——不是我夸口,是你要有信心。 + +所以,尽管放胆来学,不用犹豫、不要惧怕。还有一个原因,是因为她优雅。 + +##从小工到专家 + +有不少学习Python的朋友询问: + +>“书已经看了,书上的代码也运行过了,但是还不知如何开发一个真正的应用程序,不知从何处下手。” + +也遇到过一些大学生毕业生,虽然相关专业的考试分数是不错的(我一般是相信那些成绩是真的),但是,一讨论到专业问题,常常让我大跌眼镜,特别是当他面对真实的工作对象时,所表现出来的能力要比成绩单上的数字差太多了。 我一般会武断地下一个结论:练的少。 因此,从小工到专家,就要多练。当不是盲目地练习,如果找不到方向,可以从阅读代码开始。 -##阅读代码 +###阅读代码 有句话说的好:“读书破万卷,下笔如有神”。这也适用于编程。阅读别人的代码,是必须的。通过阅读,“站在巨人的肩膀上”,让自己眼界开阔,思维充实。 @@ -32,7 +95,7 @@ 之所以run,使要看看这个程序运行结果是什么。除了调试别人的程序,还要调试自己的程序。 -##调试程序 +###调试程序 首先要自己动手写程序。 From 42de0791d1caffc1325cea9862e371537ce41a52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Tue, 17 May 2016 23:15:43 +0800 Subject: [PATCH 191/288] new --- README.md | 4 ++-- index.md | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 0e417cf..16b27e1 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《跟老齐学Python》(第二版) +#《跟老齐学Python》(入门教程) From beginner to master. @@ -10,7 +10,7 @@ From beginner to master. 原名叫做《零基础学Python》,后来由于图书出版,更名为《跟老齐学Python》。 -《跟老齐学Python:从入门到精通》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 +《跟老齐学Python》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 #第壹季 基础 diff --git a/index.md b/index.md index d2e7953..45dad85 100644 --- a/index.md +++ b/index.md @@ -2,7 +2,7 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《跟老齐学Python》(第二版) +#《跟老齐学Python》(入门教程) From beginner to master. @@ -10,7 +10,7 @@ From beginner to master. 原名叫做《零基础学Python》,后来由于图书出版,更名为《跟老齐学Python》。 -《跟老齐学Python:从入门到精通》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 +《跟老齐学Python》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 #第壹季 基础 From 70a282f90e89f71b9524ffa27194289441418009 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 18 May 2016 10:00:49 +0800 Subject: [PATCH 192/288] poly --- 211.md | 118 +++++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 86 insertions(+), 32 deletions(-) diff --git a/211.md b/211.md index 0841727..925e043 100644 --- a/211.md +++ b/211.md @@ -85,54 +85,108 @@ 争论,让给思想者。我们,围观。 -在诸多介绍多态的文章中,都会有这样关于猫和狗的例子。这里也将代码贴出来,读者去体会所谓多态体现。其实,如果你进入了Python的语境,有时候是不经意就已经在应用多态特性呢。 +为了让读者能够进一步理解Python的多态特点,必须要比较,不跟世界上三分之二尚处于水深火热的劳苦大众比较,怎能体会到自己生活在幸福的祖国大花园内。 - #!/usr/bin/env python - # coding=utf-8 +《Thinking in Java》的作者Bruce Eckel在2003年5月2日发表了一篇题为[《Strong Typing vs. Strong Testing》](https://docs.google.com/document/d/1aXs1tpwzPjW9MdsG5dI7clNFyYayFBkcXwRDo-qvbIk/preview)的博客,在其中将Java和Python的多态特征进行了比较,在此我选摘部分内容,重温大师的论述。 - "the code is from: http://zetcode.com/lang/python/oop/" +先来欣赏大师所撰写的一段Java代码: - class Animal(object): #Python 3: class Animal: - def __init__(self, name=""): - self.name = name - - def talk(self): - pass + // Speaking pets in Java: + interface Pet { + void speak(); + } + + class Cat implements Pet { + public void speak() { System.out.println("meow!"); } + } + + class Dog implements Pet { + public void speak() { System.out.println("woof!"); } + } + + public class PetSpeak { + static void command(Pet p) { p.speak(); } + public static void main(String[] args) { + Pet[] pets = { new Cat(), new Dog() }; + for(int i = 0; i < pets.length; i++) + command(pets[i]); + } + } + +如果读者没有学习过Java,对上述代码理解可能不是很顺畅,这不重要。主要观察`command(Pet p)`,这种写法意味着函数`command()`所能接受的参数的类型必须是`Pet`类型,其它类型不行。所以,必须创建`interface Pet`这个接口并且类Cat和Dog继承它,然后才能upcast them to the generic command() method。(原文: I must create a hierarchy of Pet, and inherit Dog and Cat so that I can upcast them to the generic command() method.) + +与上面的代码相对应,大师提供了Python代码,如下所示: + + # Speaking pets in Python: + class Pet: + def speak(self): pass + + class Cat(Pet): + def speak(self): + print "meow!" + + class Dog(Pet): + def speak(self): + print "woof!" + + def command(pet): + pet.speak() + + pets = [ Cat(), Dog() ] + + for pet in pets: + command(pet) + +注意这段Python代码中的`command()`函数,其参数`pet`并没有要求必须是前面的`Pet`类型(注意区分大小写),仅仅是一个名字为`pet`的对象引用罢了。Python不关心引用的对象是什么类型,只要改对象有`speak()`方法即可。提醒读者注意的是,因为历史原因(2003年),大师当时写的是旧式类。 + +根据我们对Python的理解,上面代码中的类`Pet`其实是多余的。是的,大师也这么认为,只是因为大师当时是完全模仿Java程序而写的。随后,大师就修改了上面的代码。 + + # Speaking pets in Python, but without base classes: + class Cat: + def speak(self): + print "meow!" + + class Dog: + def speak(self): + print "woof!" + + class Bob: + def bow(self): + print "thank you, thank you!" + def speak(self): + print "hello, welcome to the neighborhood!" + def drive(self): + print "beep, beep!" + + def command(pet): + pet.speak() - class Cat(Animal): - def talk(self): - print "Meow!" #Python 3: print('Meow!'),下同,从略 + pets = [ Cat(), Dog(), Bob() ] - class Dog(Animal): - def talk(self): - print "Woof!" + for pet in pets: + command(pet) - a = Animal() - a.talk() +不仅去掉了没什么用的类`Pet`,又增加了一个新的类`Bob`,这个类根本不是如`Cat`和`Dog`那样的类型,只是它碰巧也有一个名字为`speak()`的方法罢了。但是,也依然能够在`command()`函数中被调用。 - c = Cat("Missy") - c.talk() +这就是Python中的多态特点,大师Brue Eckel通过非常有说明了的代码说明了Java和Python的区别,并充分展示了Python中的多态特征。 - d = Dog("Rocky") - d.talk() +诚如前面所述,Python不检查传入对象的类型(上面大师所写的代码中非常清晰表明了这点),这种方式被称之为“隐式类型”(laten typing)或者“结构式类型”(structural typing),也被通俗的称为“鸭子类型”(duck typeing),其含义在维基百科中被表述为: -保存后运行之: +>在程序设计中,鸭子类型(英语:duck typing)是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由当前方法和属性的集合决定。这个概念的名字来源于由James Whitcomb Riley提出的鸭子测试,“鸭子测试”可以这样表述:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。” - $ python 21101.py - Meow! - Woof! +鸭子类型就意味着可以向任何对象发送任何消息,语言只关心该对象能否接受该消息,不强求该对象是否某一种特定的类型——该对象的多态表现。 -代码中有`Cat`和`Dog`两个类,都继承了类`Animal`,它们都有`talk()`方法,输入不同的动物名称,会得出相应的结果。 +对于Python的这种特征,有一批程序员不接受,他们认为在程序被执行的时候,可能收到错误的对象,而且这种错误还可能潜伏在程序的某个角落。因此在编程领域就有了“强类型”(如Java)和“弱类型”(如Python)之争。 -根据前面已经学习过的类和继承的知识,我们知道,对于实例`c`是Cat类型的对象,`d`是Dog类型的对象,但它们也都是Animal类型的对象——类,也是一种对象类型,这样,不论是谁,也都有`Animal`类所规定的方法和属性——多态就体现在这里——继承了`Animal`的子类,实例化之后都可以具有`Animal`的表现形式。 +对于此类争论,大师Brue Eckel在上面所提到的博客中,给出了非常明确的回答。下面原文恭录于此: -对“多态”的理解,还可以在实践中慢慢增加。 +>Strong testing, not strong typing. -关于多态,有一个被称作“鸭子类型”(duck typeing)的东西,其含义在维基百科中被表述为: +>So this, I assert, is an aspect of why Python works. C++ tests happen at compile time (with a few minor special cases). Some Java tests happen at compile time (syntax checking), and some happen at run time (array-bounds checking, for example). Most Python tests happen at runtime rather than at compile time, but they do happen, and that's the important thing (not when). And because I can get a Python program up and running in far less time than it takes you to write the equivalent C++/Java/C# program, I can start running the real tests sooner: unit tests, tests of my hypothesis, tests of alternate approaches, etc. And if a Python program has adequate unit tests, it can be as robust as a C++, Java or C# program with adequate unit tests (although the tests in Python will be faster to write). ->在程序设计中,鸭子类型(英语:duck typing)是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由当前方法和属性的集合决定。这个概念的名字来源于由James Whitcomb Riley提出的鸭子测试(见下面的“历史”章节),“鸭子测试”可以这样表述:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。” +读大师的话,醍醐灌顶,豁然开朗,再也不去参与那些浪费唾沫的争论了。 -对于鸭子类型,也是有争议的。这方面的详细信息,读者可以去看有关维基百科的介绍。 +顺便再告诉读者,从发表于2003年5月2日的[《Strong Typing vs. Strong Testing》](https://docs.google.com/document/d/1aXs1tpwzPjW9MdsG5dI7clNFyYayFBkcXwRDo-qvbIk/preview)中可以看出,大师在那时已经开始在授课的过程中给学生使用Python了。2003年,那时候赵国程序员,有多少知道这个星球上有一种名为Python的计算机高级语言。 对于多态问题,最后还要告诫读者,类型检查是毁掉多态的利器,比如type、isinstance以及isubclass函数,所以,一定要慎用这些类型检查函数。 From 40353c07cbb8631c93608f2b4a1f138e1a0e114b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 19 May 2016 09:14:15 +0800 Subject: [PATCH 193/288] modify --- 204.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/204.md b/204.md index 6b55f3a..2bb5e97 100644 --- a/204.md +++ b/204.md @@ -94,17 +94,17 @@ 前面已经多次提到函数也是对象。 -对于函数的参数,我们也做了一些探究。通过参数,可以将数字、字符串、列表等等那些已经学习过的Python中默认类型的对象以引用的方式传入函数。 +对于函数的参数,我们也做了一些探究。通过参数,可以将数字、字符串、列表等等那些已经学习过的Python中默认类型的对象以引用的方式传入函数——也可以传入以后要学习过的自定义类型的对象引用。 -阅读了上面两句话,你是否有一个疑惑?都是对象,函数能不能作为参数传给函数呢? +阅读了上面两句话,你是否有一个疑惑?都是对象,函数对象的引用能不能作为参数传给函数呢? 看这样一个举例: >>> def bar(): - print "I am in bar()" + print "I am in bar()" >>> def foo(func): - func() + func() 这里定义了两个函数,`bar()`就是我们熟悉的函数;而`foo()` 则有些许变化,其参数要求是一个函数,否则函数体内的代码块无法执行`func()`,因为这就是调用一个函数。 @@ -241,7 +241,7 @@ def maker(n): def action(x): return x ** n - return action + return action 在`maker()`函数中,`return action`返回的是`action()`函数对象。 From 0169abd352ab009e7b1e766f202e3d447d0eb0b1 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 19 May 2016 22:43:59 +0800 Subject: [PATCH 194/288] sunsulei told me two mistakes, and edited them --- 109.md | 6 +++--- 113.md | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/109.md b/109.md index 673821f..f087176 100644 --- a/109.md +++ b/109.md @@ -237,7 +237,7 @@ Python考虑到有不少人可能有这个习惯,因此就帮助程序员把 >>> b = a.upper() >>> b 'QIWSIR,PYTHON' - >>> c = b.lower() #将所有的小写字母变成大写字母 + >>> c = b.lower() #将所有的字母变成小写字母 >>> c 'qiwsir,python' @@ -251,7 +251,7 @@ Python考虑到有不少人可能有这个习惯,因此就帮助程序员把 >>> b 'Qiwsir,python' - >>> a = "qiwsir,github" #这里的问题就是网友白羽毛指出的,非常感谢他。 + >>> a = "qiwsir,github" >>> a.istitle() False >>> a = "QIWSIR" #当全是大写的时候,返回False @@ -280,7 +280,7 @@ Python考虑到有不少人可能有这个习惯,因此就帮助程序员把 >>> a.lower().islower() True -顺着白羽毛网友指出的,再探究一下,可以这么做: +再探究一下,可以这么做: >>> a = "This is a Book" >>> a.istitle() diff --git a/113.md b/113.md index 7edf524..512bea3 100644 --- a/113.md +++ b/113.md @@ -114,7 +114,7 @@ >>> lst ['java', 'python', 'c'] -仔细观察,变量的名字`lst`,不是`list`,不能用`list`作为变量名字。因为`list`是Python的保留字。 +仔细观察,变量的名字`lst`,不是`list`,最好不要用`list`作为变量名字,因为它是Python中内置的对象类型的名字,如果你非要用它做变量名字,很可能引起后续的麻烦。 再仔细观察,这个列表中有两个'python'字符串,当删除后,发现结果只删除了第一个'python'字符串,第二个还在。请仔细看前面的文档说明:**remove the first item ...** From 232c6c02a628fcaf799414f57124c499a5275cde Mon Sep 17 00:00:00 2001 From: zen-young-chan Date: Sun, 22 May 2016 20:02:07 +0800 Subject: [PATCH 195/288] Update 235.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 把 angle 条件 改为 >0.2 或者更少,多跑几次循环,树叉就多了 --- 235.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/235.md b/235.md index 680270e..8dbe3c1 100644 --- a/235.md +++ b/235.md @@ -302,7 +302,7 @@ contextlib.contextmanager是一个装饰器,它作用于生成器函数(也 cr.line_to(0, 0) cr.stroke() cr.scale(0.72, 0.72) - if angle > 0.72: + if angle > 0.2: for a in [-angle, angle]: with saved(cr): cr.rotate(a) From 4546415f2a8a6f4c661d682435b58a0b866b1b85 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Sun, 22 May 2016 20:47:47 +0800 Subject: [PATCH 196/288] add clouser --- 237.md | 4 +-- 242.md | 95 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2code/24201.py | 9 +++++ 2code/24202.py | 10 ++++++ README.md | 10 +++--- index.md | 9 ++--- 6 files changed, 127 insertions(+), 10 deletions(-) create mode 100644 242.md create mode 100644 2code/24201.py create mode 100644 2code/24202.py diff --git a/237.md b/237.md index 664d57d..15213f9 100644 --- a/237.md +++ b/237.md @@ -1,6 +1,6 @@ >Ever since the creation of the world his eternal power dan divine nature, invisible though they are , have been understood and seen through the things ha has made. So they are without excuse; for they knew God, they did not honor him as God or give thanks to him, but they became futile in their thinking, and their senseless minds were darkened. Claiming to be wise, they became fools; and they exchange the glory of the immorrtal God for images resembling a mortal human being or birds or four-footed animals or reptiles. (ROMANS 1:20-23) -#函数(5) +#函数(6) ##几个特殊函数 @@ -281,6 +281,6 @@ filter的中文含义是“过滤器”,在Python中,它就是起到了过 ------ -[总目录](./index.md)   |   [上节:函数(4)](./204.md)   |   [下节:函数练习](./205.md) +[总目录](./index.md)   |   [上节:函数(5)](./242.md)   |   [下节:函数练习](./205.md) 如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/242.md b/242.md new file mode 100644 index 0000000..853a935 --- /dev/null +++ b/242.md @@ -0,0 +1,95 @@ +>In the same way, husbands should love their wives as they do their own bodies. He who loves his wife loves himself. For no one ever hates his own body, but he nourishes and tenderly cares for it, just as Christ does for the church, because we are members of his body. "For this reason a man will leave his father and mother and be joined to his wife,and the two will become on flesh." This is a great mystery, and I am applying it to Christ and the church. Each of you, however, should love his wife as himself, and a wife should respect her husband. (EPHESIANS 6:28-33) + +#函数(5) + +“闭包”是一个很酷的名词,不是吗?你听说过“烧包”、“豆包”、“脓包”等词语,“闭包”跟它们比起来,更有点神秘色彩。 + +##什么是闭包 + +在数学上,有“闭包”,但此处讨论的是计算机高级语言中的“闭包”,维基百科上有这样的定义: + +>在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure)或函数闭包(function closures),是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。闭包在运行时可以有多个实例,不同的引用环境和相同的函数组合可以产生不同的实例。 + +>闭包的概念出现于60年代,最早实现闭包的程序语言是Scheme。之后,闭包被广泛使用于函数式编程语言如ML语言和LISP。很多命令式程序语言也开始支持闭包。 + +上面的定义是很严格的,也是比较难理解的。所以,要用简单的例子来说明。 + +毋庸置疑,下面这段程序是能够顺利运行的。 + + a = 3 + + def foo(): + print a #Python 3: print(a) + + foo() + +`a = 3`定义的变量在函数里面能够被调用,但是反过来,如下所示: + + def foo(): + a = 3 + + print a #Python 3: print(a) + +这段程序会毋庸置疑地报错了。其原因就可以用变量的作用域来解释了,详细见[命名空间](./241.md)。 + +在函数`foo()`里面可以直接使用函数外面的`a = 3`,但是在函数`foo()`外面不能使用它里面的所定义的`a = 3`。根据作用域的关系,是合情合理的。然而,也许在某种特殊情况下,我们需要在函数外面使用函数里面的变量,怎么办? + + + def foo(): + a = 3 + def bar(): + return a + return bar + + f = foo() + print f() #Python 3: print(f()) + #output: + 3 + +用上面的方式,就实现了在函数外面得到函数里面所定义的对象。这种写法的本质就是[嵌套函数](./204.md)。 + +在函数`foo()`里面,有`a = 3`和另外一个函数`bar()`,它们两个都在函数`foo()`的环境里面,但是,它们两个是互不统属的,所以变量`a`相对函数`bar()`是自由变量,并且在函数`bar()`中应用了这个自由变量——函数`bar()`就是我们所定义的闭包。 + +闭包是一个函数,并且这个函数具有以下特点: + +- 定义在另外一个函数里面(嵌套函数) +- 引用其所在函数环境的自由变量 + +从上述代码的运行效果上看,通过闭包,能够在定义自由变量`a = 3`的环境`foo()`之外的地方得到该自由变量所引用的对象,或者说`foo()`执行完毕,但`a = 3`依然可以在`f()`即`bar()`函数中存在,而没有被收回。所以,`print f()`才得到了其结果。 + +##使用闭包 + +为什么要是用闭包? + +如果不使用必要,也能编程,这是确认无疑的。 + +只不过,在某些时候,需要对事务做更高层次的抽象,这就可能用到闭包。 + +比如要写一个关于抛物线的函数。如不使用闭包,对于读者来讲应该能够轻易完成,现在使用闭包的方式,可以这么做。 + + #!/usr/bin/env python + # coding:utf-8 + + def parabola(a, b, c): + def para(x): + return a*x**2 + b*x + c + return para + + p = parabola(2, 3, 4) + print p(5) #Python 3: print(p(5)) + +在上面的函数中,`p = parabola(2, 3, 4)`定义了一个抛物线的函数对象——状如y = 2x^2 + 3x + 4,如果要计算`x = 5`时,该抛物线函数的值,只需要`p(5)`即可。这种写法是不是让函数只用起来更简洁? + +读者在学习了[类](./206.md)的有关知识之后,再回来阅读这个闭包的应用,会认识到,此处以`p = parabola(2, 3, 4)`的形式,就如同类中创建实例一样。可以利用上面的函数创建多个实例,也就是得到多个不同的抛物线函数对象。 + +这就是闭包应用的典型案例之一。 + +另外,装饰器,本质上就是闭包的一种应用——可以再次阅读[装饰器](./204.md) + +当然,闭包在实践中还有其它方面的应用,作为入门教程,此处不做深究。读者如果有意愿,可以去Google有关内容,有不少大神在这方面撰写了文章。 + +------ + +[总目录](./index.md)   |   [上节:函数(4)](./204.md)   |   [下节:函数(6)](./237.md) + +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/2code/24201.py b/2code/24201.py new file mode 100644 index 0000000..7db5964 --- /dev/null +++ b/2code/24201.py @@ -0,0 +1,9 @@ + +def foo(): + a = 3 + def bar(): + return a + return bar + +f = foo() +print f() diff --git a/2code/24202.py b/2code/24202.py new file mode 100644 index 0000000..7062c93 --- /dev/null +++ b/2code/24202.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +# coding:utf-8 + +def parabola(a, b, c): + def para(x): + return a*x**2 + b*x + c + return para + +p = parabola(2, 3, 4) +print p(5) diff --git a/README.md b/README.md index 16b27e1..fe5d2f1 100644 --- a/README.md +++ b/README.md @@ -62,10 +62,12 @@ From beginner to master. 2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参 3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 -5. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield -6. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 -7. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 -8. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 +5. [函数(5)](./242.md)==>闭包 +6. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield +7. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 +8. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 +9. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 + #第贰季 进阶 ##第肆章 类 diff --git a/index.md b/index.md index 45dad85..3d4b586 100644 --- a/index.md +++ b/index.md @@ -62,10 +62,11 @@ From beginner to master. 2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参 3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 -5. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield -6. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 -7. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 -8. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 +5. [函数(5)](./242.md)==>闭包 +6. [函数(6)](./237.md)==>filter、map、reduce、lambda、yield +7. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 +8. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 +9. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 #第贰季 进阶 From f7840d819629cc713831986ad5e3c9dfc33adb9f Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 24 May 2016 17:52:20 +0800 Subject: [PATCH 197/288] try --- n001.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/n001.md b/n001.md index 7201f47..6b18554 100644 --- a/n001.md +++ b/n001.md @@ -1,6 +1,6 @@ #如何成为Python高手 -这篇文章主要是对我收集的一些文章的摘要。因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章。 +这篇文章是我收集的一些文章的摘要。因为已经有很多比我有才华的人写出了大量关于如何成为优秀Python程序员的好文章。 我的总结主要集中在四个基本题目上: @@ -54,4 +54,4 @@ 祝你学习旅途顺利。 ->本文来源:http://blogread.cn/it/article/3892?f=wb \ No newline at end of file +>本文来源:http://blogread.cn/it/article/3892?f=wb From 4a1884e675d19bd238824c84189032e2174e0a34 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 25 May 2016 21:17:33 +0800 Subject: [PATCH 198/288] new --- README.md | 25 ++----------------------- index.md | 25 ++----------------------- 2 files changed, 4 insertions(+), 46 deletions(-) diff --git a/README.md b/README.md index fe5d2f1..4fd40b6 100644 --- a/README.md +++ b/README.md @@ -12,6 +12,8 @@ From beginner to master. 《跟老齐学Python》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 +此处的在线版与上述印刷的版本有所不同。在印刷出来之后,又发觉有一些地方需要修改,于是就对一部分进行了重写,并且在和朋友们交流后,也会吸收很多意见和建议,用之于修改在线版。其中改动最大的在于,本教程不再包括“实战”部分,而是专门叫做面向零基础的“入门教程”。对于实战部分,我会在适当时候专门撰写。 + #第壹季 基础 ##第零章 预备 @@ -112,29 +114,6 @@ From beginner to master. 5. [SQLite数据库](./233.md)==>通过sqlite3模块操作SQLite数据库:连接对象方法,游标对象方法,数据库增删改查 6. [电子表格](./234.md)==>python操作Excel文件的第三方库openpyxl使用方法,以及其它与Excel相关的第三方库 -#第叁季 实战 - -0. [引](./300.md) - -##第捌章 用Tornado做网站 - -1. [为做网站而准备](./301.md)==>开发框架,python的常用web框架,tornado框架介绍和安装 -2. [分析Hello](./302.md)==>发布tornado做的网站,并剖析基本结构 -3. [用tornado做网站(1)](./303.md)==>网站的基本结构,一个基于tornado框架的网站架子 -4. [用tornado做网站(2)](./304.md)==>前端模板,静态文件引入 -5. [用tornado做网站(3)](./305.md)==>ajax传输数据,get_argument()接收数据,验证用户名和密码 -6. [用tornado做网站(4)](./306.md)==>render()方法使用,模板语法,转义(自动转义,不转义) -7. [用tornado做网站(5)](./307.md)==>模板继承和块语句,CSS文件,cookie以及XSRF安全防护方法 -8. [用tornado做网站(6)](./308.md)==>用户验证 -9. [用tornado做网站(7)](./309.md)==>概念:同步和异步、阻塞和非阻塞,tornado的同步,tornado的异步设置,实践中的异步 - -##第五部分:科学计算 - -1. [为计算做准备](./310.md)==>相关模块的安装,ipython notebook -2. [Pandas使用(1)](./311.md)==>Series数据类型:定义和基本属性,DataFrame数据类型:定义和基本属性 -3. [Pandas使用(2)](./312.md)==>读取csv文件,excel文件,以及其它格式数据和从数据库加载数据方法 -4. [处理股票数据](./313.md)==>下载yahoo股票数据,matplotlib模块绘图 - ##附:网络文摘 1. [如何成为python高手](./n001.md) diff --git a/index.md b/index.md index 3d4b586..ae5f326 100644 --- a/index.md +++ b/index.md @@ -12,6 +12,8 @@ From beginner to master. 《跟老齐学Python》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 +此处的在线版与上述印刷的版本有所不同。在印刷出来之后,又发觉有一些地方需要修改,于是就对一部分进行了重写,并且在和朋友们交流后,也会吸收很多意见和建议,用之于修改在线版。其中改动最大的在于,本教程不再包括“实战”部分,而是专门叫做面向零基础的“入门教程”。对于实战部分,我会在适当时候专门撰写。 + #第壹季 基础 ##第零章 预备 @@ -112,29 +114,6 @@ From beginner to master. 5. [SQLite数据库](./233.md)==>通过sqlite3模块操作SQLite数据库:连接对象方法,游标对象方法,数据库增删改查 6. [电子表格](./234.md)==>python操作Excel文件的第三方库openpyxl使用方法,以及其它与Excel相关的第三方库 -#第叁季 实战 - -0. [引](./300.md) - -##第捌章 用Tornado做网站 - -1. [为做网站而准备](./301.md)==>开发框架,python的常用web框架,tornado框架介绍和安装 -2. [分析Hello](./302.md)==>发布tornado做的网站,并剖析基本结构 -3. [用tornado做网站(1)](./303.md)==>网站的基本结构,一个基于tornado框架的网站架子 -4. [用tornado做网站(2)](./304.md)==>前端模板,静态文件引入 -5. [用tornado做网站(3)](./305.md)==>ajax传输数据,get_argument()接收数据,验证用户名和密码 -6. [用tornado做网站(4)](./306.md)==>render()方法使用,模板语法,转义(自动转义,不转义) -7. [用tornado做网站(5)](./307.md)==>模板继承和块语句,CSS文件,cookie以及XSRF安全防护方法 -8. [用tornado做网站(6)](./308.md)==>用户验证 -9. [用tornado做网站(7)](./309.md)==>概念:同步和异步、阻塞和非阻塞,tornado的同步,tornado的异步设置,实践中的异步 - -##第玖章 科学计算 - -1. [为计算做准备](./310.md)==>相关模块的安装,ipython notebook -2. [Pandas使用(1)](./311.md)==>Series数据类型:定义和基本属性,DataFrame数据类型:定义和基本属性 -3. [Pandas使用(2)](./312.md)==>读取csv文件,excel文件,以及其它格式数据和从数据库加载数据方法 -4. [处理股票数据](./313.md)==>下载yahoo股票数据,matplotlib模块绘图 - ##附:网络文摘 1. [如何成为python高手](./n001.md) From 1b7f76e1e1814f28fcfeb0539f855ad0b1026d91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 25 May 2016 23:35:01 +0800 Subject: [PATCH 199/288] python 3 pymysql --- 230.md | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/230.md b/230.md index c4136e8..4e01b1b 100644 --- a/230.md +++ b/230.md @@ -100,26 +100,35 @@ MySQL是一个使用非常广泛的数据库,很多网站都使用它。关于 MySQL数据库已经安装好,但是Python还不能操作它,还要继续安装Python操作数据库的模块——`python-MySQLdb`。 -##安装`python-MySQLdb` +##安装`python-MySQLdb`或`pymysql` -`python-MySQLdb`是一个接口程序,Python通过它对MySQL数据实现各种操作。 +`python-MySQLdb`是一个接口程序,Python通过它对MySQL数据实现各种操作。但是,这仅适用于Python 2,如果你使用Python 3,那就要用到`pymysql`了。 在编程中会遇到很多类似的接口程序,通过接口程序对另外一个对象进行操作。接口程序就好比钥匙,如果要开锁,直接用手指去捅肯定是不行的,必须借助工具插入到锁孔中,把锁打开,门开了,就可以操作门里面的东西了,那么打开锁的工具就是接口程序。谁都知道,用对应的钥匙开锁是最好的,如果用别的工具(比如锤子)或许不便利(当然,具有特殊开锁能力的人除外),也就是接口程序,编码水平等都是考虑因素。 -python-MySQLdb就是打开MySQL数据库的钥匙。 +`python-MySQLdb`/`pymysql`就是打开MySQL数据库的钥匙。 如果要源码安装,可以这里下载python-mysqldb:[https://pypi.python.org/pypi/MySQL-python/](https://pypi.python.org/pypi/MySQL-python/),下载之后就可以安装了。 在Ubuntu操作系统下还可以用软件仓库来安装。 sudo apt-get install build-essential python-dev libmysqlclient-dev + +然后可以: + sudo apt-get install python-MySQLdb -也可以用pip来安装: +最推荐是使用pip: pip install mysql-python -安装之后,在Python交互模式下: +如果是Python 3,则要安装`pymysql`: + + pip3 install pymysql + +下面的演示中,我使用Python 2,如果读者使用Python 3,请自行`import pymysql`,其它函数部分,基本一致,所以就不重复写代码了。请读者务必注意。 + +安装之后,在Python 2交互模式下: >>> import MySQLdb From f66097b6741c6f3b5a1781fec78241d08c057285 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Wed, 25 May 2016 23:40:26 +0800 Subject: [PATCH 200/288] pymysql --- 230.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/230.md b/230.md index 4e01b1b..ba58685 100644 --- a/230.md +++ b/230.md @@ -100,7 +100,7 @@ MySQL是一个使用非常广泛的数据库,很多网站都使用它。关于 MySQL数据库已经安装好,但是Python还不能操作它,还要继续安装Python操作数据库的模块——`python-MySQLdb`。 -##安装`python-MySQLdb`或`pymysql` +##`python-MySQLdb`或`pymysql` `python-MySQLdb`是一个接口程序,Python通过它对MySQL数据实现各种操作。但是,这仅适用于Python 2,如果你使用Python 3,那就要用到`pymysql`了。 From 14efc25bd0763558ddf62d84cfe6edd24ad001e2 Mon Sep 17 00:00:00 2001 From: zen-young-chan Date: Sun, 29 May 2016 12:10:53 +0800 Subject: [PATCH 201/288] Update 225.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 打错了,urllib 的open 也是 urlopen(python 2 中) --- 225.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/225.md b/225.md index 08372b1..170d9d5 100644 --- a/225.md +++ b/225.md @@ -219,7 +219,7 @@ urllib2是另外一个模块,它跟urllib有相似的地方——都是对url >>> dir(urllib2) ['AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'AbstractHTTPHandler', 'BaseHandler', 'CacheFTPHandler', 'FTPHandler', 'FileHandler', 'HTTPBasicAuthHandler', 'HTTPCookieProcessor', 'HTTPDefaultErrorHandler', 'HTTPDigestAuthHandler', 'HTTPError', 'HTTPErrorProcessor', 'HTTPHandler', 'HTTPPasswordMgr', 'HTTPPasswordMgrWithDefaultRealm', 'HTTPRedirectHandler', 'HTTPSHandler', 'OpenerDirector', 'ProxyBasicAuthHandler', 'ProxyDigestAuthHandler', 'ProxyHandler', 'Request', 'StringIO', 'URLError', 'UnknownHandler', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', '_cut_port_re', '_opener', '_parse_proxy', '_safe_gethostbyname', 'addinfourl', 'base64', 'bisect', 'build_opener', 'ftpwrapper', 'getproxies', 'hashlib', 'httplib', 'install_opener', 'localhost', 'mimetools', 'os', 'parse_http_list', 'parse_keqv_list', 'posixpath', 'proxy_bypass', 'quote', 'random', 'randombytes', 're', 'request_host', 'socket', 'splitattr', 'splithost', 'splitpasswd', 'splitport', 'splittag', 'splittype', 'splituser', 'splitvalue', 'sys', 'time', 'toBytes', 'unquote', 'unwrap', 'url2pathname', 'urlopen', 'urlparse', 'warnings'] -比较常用的比如`urlopen()`跟`urllib.open()`是完全类似的。 +比较常用的比如`urlopen()`跟`urllib.urlopen()`是完全类似的。 但是,要注意,上述言论仅仅是针对Python 2的,在Python 3中,已经没有`urllib2`这个模块了,取代它的是`urllib.request`。 @@ -309,4 +309,4 @@ Python 3: [总目录](./index.md)   |   [上节:标准库(5)](./224.md)   |   [下节:标准库(7)](./226.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 From 204d3458946144c3ad27c050b8f01204dfbe5a6e Mon Sep 17 00:00:00 2001 From: Yu Longjun Date: Sun, 5 Jun 2016 14:11:24 +0800 Subject: [PATCH 202/288] =?UTF-8?q?Google=E7=9A=84G=E7=94=A8=E7=9A=84?= =?UTF-8?q?=E5=85=A8=E8=A7=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 更改为半角 --- 02.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/02.md b/02.md index 0e5ec44..9c0b446 100644 --- a/02.md +++ b/02.md @@ -109,7 +109,7 @@ 办法就是应用网络,看看类似的问题别人如何解决,不要仅仅局限于自己的思维范围。 -利用网络就少不了搜索引擎。我特别向那些要想成为专家的小工们说:只有Google能够帮助你成为专家,其它的搜索引擎,只能让你成为“砖家”,乃至于“砖工”。所以,请用:**google.com**。 +利用网络就少不了搜索引擎。我特别向那些要想成为专家的小工们说:只有Google能够帮助你成为专家,其它的搜索引擎,只能让你成为“砖家”,乃至于“砖工”。所以,请用:**google.com**。 此外,还有其它的好网站,我会陆续向有意成为专家的朋友提供。 From 024fe41325a018a9161faf91db843fa694904de5 Mon Sep 17 00:00:00 2001 From: Yu Longjun Date: Sun, 5 Jun 2016 14:15:23 +0800 Subject: [PATCH 203/288] =?UTF-8?q?Ubuntu=E6=8B=BC=E5=86=99=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 03.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/03.md b/03.md index 2a26d01..71ad8ca 100644 --- a/03.md +++ b/03.md @@ -96,7 +96,7 @@ windows系统中安装程序,就是不断地“下一步”。 ##Mac OS X系统的安装 -其实根本就不用再写怎么安装了,因为用Mac OS X 的朋友,肯定是高手中的高高手了,至少我一直很敬佩那些用Mac OS X 并坚持没有更换为windows的。麻烦用Mac OS X 的朋友自己网上搜吧,跟前面Ubutu差不多。 +其实根本就不用再写怎么安装了,因为用Mac OS X 的朋友,肯定是高手中的高高手了,至少我一直很敬佩那些用Mac OS X 并坚持没有更换为windows的。麻烦用Mac OS X 的朋友自己网上搜吧,跟前面Ubuntu差不多。 按照以上方法,顺利安装成功,只能说明幸运,无它。 From ddf126b7f5610af865537df18dedd5c7ef4df747 Mon Sep 17 00:00:00 2001 From: u2 Date: Tue, 9 Aug 2016 14:26:17 +0800 Subject: [PATCH 204/288] Typo --- 116.md | 2 +- 216.md | 4 ++-- 235.md | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/116.md b/116.md index 2887443..97fbe7a 100644 --- a/116.md +++ b/116.md @@ -203,7 +203,7 @@ ##字符串格式化输出 -这是一个前面已经探讨过的话题,请参看[《字符串(4)》](./109),这里再次提到,就是因为用字典也可以实现格式化字符串的目的。 +这是一个前面已经探讨过的话题,请参看[《字符串(4)》](./109.md),这里再次提到,就是因为用字典也可以实现格式化字符串的目的。 >>> city_code = {"suzhou":"0512", "tangshan":"0315", "hangzhou":"0571"} >>> " Suzhou is a beautiful city, its area code is %(suzhou)s" % city_code diff --git a/216.md b/216.md index c1baa9b..4c195df 100644 --- a/216.md +++ b/216.md @@ -35,7 +35,7 @@ Python中的错误之一是语法错误(syntax errors),比如: 最后一行是错误类型以及导致异常的原因。 -在刚才的例子中,明确告诉我们一场的类型是`ZeroDivisionError`,并且对此异常类型做了解释(虽然Python 2和Python 3的解释不完全一致,但意思是一样的)。 +在刚才的例子中,明确告诉我们异常的类型是`ZeroDivisionError`,并且对此异常类型做了解释(虽然Python 2和Python 3的解释不完全一致,但意思是一样的)。 >为什么0不能作除数(分母)?虽然小学生都知道不能作,但是不一定知道为什么不能作。读者对此有兴趣思考思考吗? @@ -268,4 +268,4 @@ Python 3: [总目录](./index.md)   |   [上节:生成器](./215.md)   |   [下节:错误和异常(2)](./217.md) -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file +如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/235.md b/235.md index 8dbe3c1..63ff167 100644 --- a/235.md +++ b/235.md @@ -247,7 +247,7 @@ nested的汉语意思是“嵌套的,内装的”,从字面上读者也可 ###contextlib.contextmanager -contextlib.contextmanager是一个装饰器,它作用于生成器函数(也就是带有yield的函数),一单生成器函数被装饰以后,就返回一个上下文管理器,即contextlib.contextmanager因为装饰了一个生成器函数而产生了`__enter__()`和`__exit__()`方法。例如: +contextlib.contextmanager是一个装饰器,它作用于生成器函数(也就是带有yield的函数),一旦生成器函数被装饰以后,就返回一个上下文管理器,即contextlib.contextmanager因为装饰了一个生成器函数而产生了`__enter__()`和`__exit__()`方法。例如: 特别要提醒,被装饰的生成器函数只能产生一个值,否则就会抛出RuntimeError异常;如果有as子句,则所产生的值,会通过as子句赋给某个变量,就如同前面那样,例如下面的示例(本示例来自:http://www.ibm.com/developerworks/cn/opensource/os-cn-pythonwith/index.html)。 @@ -274,7 +274,7 @@ contextlib.contextmanager是一个装饰器,它作用于生成器函数(也 the word is: contextmanager demo. after yield. -为了好玩,再借用网上的一个示例,理解这个装饰器的作用(下面代码来自:http://preshing.com/20110920/the-python-with-statement-by-example/),代码中用到了`cairo`模块,该模块的安装方法是: +为了好玩,再借用网上的一个示例,理解这个装饰器的作用(下面代码来自:http://preshing.com/20110920/the-python-with-statement-by-example ),代码中用到了`cairo`模块,该模块的安装方法是: sudo apt-get install libcairo2-dev From 874c1d863c68ae911eaebd5b4caa525b821227b2 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 14 Aug 2016 22:23:18 +0800 Subject: [PATCH 205/288] python3 --- 1code/helloworld.py | 4 ++++ 1code/nameage.py | 12 ++++++++++++ 1code/simplemath.py | 10 ++++++++++ 3 files changed, 26 insertions(+) create mode 100644 1code/helloworld.py create mode 100644 1code/nameage.py create mode 100644 1code/simplemath.py diff --git a/1code/helloworld.py b/1code/helloworld.py new file mode 100644 index 0000000..8178faa --- /dev/null +++ b/1code/helloworld.py @@ -0,0 +1,4 @@ +#!/usr/bin/env python +# coding=utf-8 + +print("Hello, World") diff --git a/1code/nameage.py b/1code/nameage.py new file mode 100644 index 0000000..c9ad92c --- /dev/null +++ b/1code/nameage.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +# coding=utf-8 + +name = input("What is your name?") +age = input("How old are you?") + +print("Your name is: ", name) +print("You are " + age + " years old.") + +after_ten = int(age) + 10 +print("You will be " + str(after_ten) + " years old after ten years.") + diff --git a/1code/simplemath.py b/1code/simplemath.py new file mode 100644 index 0000000..ad248f6 --- /dev/null +++ b/1code/simplemath.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +#coding: utf-8 + +""" +请计算:19+2*4-8/2 +""" + +a = 19 + 2 * 4 - 8 / 2 +print(a) + From 94112c4466ce3ecaa33585c73318453423203c03 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 19 Aug 2016 10:06:47 +0800 Subject: [PATCH 206/288] new --- 1code/130.txt | 4 +++- 1code/aliquot.py | 10 ++++++++++ 1code/guessnumber.py | 25 +++++++++++++++++++++++++ 1code/guessnumber2.py | 29 +++++++++++++++++++++++++++++ 1code/judgenumber.py | 16 ++++++++++++++++ 1code/simplewhileloop.py | 12 ++++++++++++ 1code/simplewhileloop2.py | 12 ++++++++++++ 7 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 1code/aliquot.py create mode 100644 1code/guessnumber.py create mode 100644 1code/guessnumber2.py create mode 100644 1code/judgenumber.py create mode 100644 1code/simplewhileloop.py create mode 100644 1code/simplewhileloop2.py diff --git a/1code/130.txt b/1code/130.txt index a52799d..38fb458 100644 --- a/1code/130.txt +++ b/1code/130.txt @@ -1 +1,3 @@ -learn pythonhttp://qiwsir.github.ioqiwsir@gmail.com \ No newline at end of file +learn python +http://qiwsir.github.io +qiwsir@gmail.com diff --git a/1code/aliquot.py b/1code/aliquot.py new file mode 100644 index 0000000..541f677 --- /dev/null +++ b/1code/aliquot.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +# coding=utf-8 + +aliquot = [] + +for n in range(1, 100): + if n % 3 == 0: + aliquot.append(n) + +print(aliquot) diff --git a/1code/guessnumber.py b/1code/guessnumber.py new file mode 100644 index 0000000..43ebeae --- /dev/null +++ b/1code/guessnumber.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python +# coding=utf-8 + +import random + +i=0 +while i < 4: + print('********************************') + num = input('请您输入0到9任一个数:') + + xnum = random.randint(0,9) + + x = 3 - i + + if num == xnum: + print('运气真好,您猜对了!') + break + elif num > xnum: + print('''您猜大了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x)) + elif num < xnum: + print('''您猜小了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x)) + print('********************************') + + i += 1 + diff --git a/1code/guessnumber2.py b/1code/guessnumber2.py new file mode 100644 index 0000000..52fea10 --- /dev/null +++ b/1code/guessnumber2.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python +# coding=utf-8 + +import random + +number = random.randint(1,100) + +guess = 0 + +while True: + + num_input = input("please input one integer that is in 1 to 100:") + guess += 1 + + if not num_input.isdigit(): + print("Please input interger.") + elif int(num_input) < 0 or int(num_input) >= 100: + print("The number should be in 1 to 100.") + else: + if number == int(num_input): + print("OK, you are good.It is only %d, then you successed." % guess) + break + elif number > int(num_input): + print("your number is smaller.") + elif number < int(num_input): + print("your number is bigger.") + else: + print("There is something bad, I will not work") + diff --git a/1code/judgenumber.py b/1code/judgenumber.py new file mode 100644 index 0000000..965c057 --- /dev/null +++ b/1code/judgenumber.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python +# coding=utf-8 + +print("请输入任意一个整数数字:") +number = int(input()) + +if number == 10: + print("您输入的数字是:{}".format(number)) + print("You are SMART.") +elif number > 10: + print("您输入的数字是:{}".format(number)) + print("This number is more than 10.") +else: + print("您输入的数字是:{}".format(number)) + print("This number is less than 10.") + diff --git a/1code/simplewhileloop.py b/1code/simplewhileloop.py new file mode 100644 index 0000000..70e7fe9 --- /dev/null +++ b/1code/simplewhileloop.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +# coding=utf-8 + +a = 1 +while a: + if a%2 == 0: + break + else: + print("{} is odd number".format(a)) + a -= 1 +print("{} is even number".format(a)) + diff --git a/1code/simplewhileloop2.py b/1code/simplewhileloop2.py new file mode 100644 index 0000000..a215b28 --- /dev/null +++ b/1code/simplewhileloop2.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +# coding=utf-8 + +a = 9 +while a: + if a%2 == 0: + a -=1 + continue #如果是偶数,就返回循环的开始 + else: + print("{} is odd number".format(a)) #如果是奇数,就打印出来 + a -=1 + From de4a5157a314f52e5f07cc35347daaf5bf36cf45 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 19 Aug 2016 16:34:52 +0800 Subject: [PATCH 207/288] newfiles --- newfiles/mdfile.md | 3 +++ newfiles/txtfile.txt | 2 ++ newfiles/you.md | 9 +++++++++ 3 files changed, 14 insertions(+) create mode 100644 newfiles/mdfile.md create mode 100644 newfiles/txtfile.txt create mode 100644 newfiles/you.md diff --git a/newfiles/mdfile.md b/newfiles/mdfile.md new file mode 100644 index 0000000..f13e1c4 --- /dev/null +++ b/newfiles/mdfile.md @@ -0,0 +1,3 @@ +Python can help you to be a great programmer. +Are you a PHPer? +I am a Pythoner. \ No newline at end of file diff --git a/newfiles/txtfile.txt b/newfiles/txtfile.txt new file mode 100644 index 0000000..ff6bbf8 --- /dev/null +++ b/newfiles/txtfile.txt @@ -0,0 +1,2 @@ +Life is short, you need python. +Aha, I like program. \ No newline at end of file diff --git a/newfiles/you.md b/newfiles/you.md new file mode 100644 index 0000000..d4716fe --- /dev/null +++ b/newfiles/you.md @@ -0,0 +1,9 @@ +You Raise Me Up +When I am down and, oh my soul, so weary; +When troubles come and my heart burdened be; +Then, I am still and wait here in the silence, +Until you come and sit awhile with me. +You raise me up, so I can stand on mountains; +You raise me up, to walk on stormy seas; +I am strong, when I am on your shoulders; +You raise me up: To more than I can be. From 82452e107f832a8b1af0323d603d169d5d72230c Mon Sep 17 00:00:00 2001 From: Longfei Li Date: Sun, 21 Aug 2016 17:11:03 -0700 Subject: [PATCH 208/288] 126.md typo --- 126.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/126.md b/126.md index 9f2110d..dfbfb55 100644 --- a/126.md +++ b/126.md @@ -66,7 +66,7 @@ 如果读者完成了上述操作,紧接着做下面的操作: >>> for line2 in f: #在前面通过for循环读取了文件内容之后,再次读取, - ... print line2 #然后打印,结果就什么也显示,这是什么问题? + ... print line2 #然后打印,结果就什么也不显示,这是什么问题? ... >>> From 4866322cbb200e15cd2ae0476c7eee68ac3e1183 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 22 Aug 2016 10:25:40 +0800 Subject: [PATCH 209/288] newcodes --- newcodes/add_function.py | 9 +++++++++ newcodes/fibs.py | 15 +++++++++++++++ newcodes/fibs_rec.py | 14 ++++++++++++++ 3 files changed, 38 insertions(+) create mode 100644 newcodes/add_function.py create mode 100644 newcodes/fibs.py create mode 100644 newcodes/fibs_rec.py diff --git a/newcodes/add_function.py b/newcodes/add_function.py new file mode 100644 index 0000000..074c6db --- /dev/null +++ b/newcodes/add_function.py @@ -0,0 +1,9 @@ +#!/usr/bin/env python +# coding=utf-8 +def add_function(a, b): + c = a + b + return c + +if __name__ == "__main__": + result = add_function(2, 3) + print(result) diff --git a/newcodes/fibs.py b/newcodes/fibs.py new file mode 100644 index 0000000..022c22d --- /dev/null +++ b/newcodes/fibs.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +# coding=utf-8 + +def fibs(n): + """ + This is a Fibonacci sequence. + """ + result = [0, 1] + for i in range(n-2): + result.append(result[-2] + result[-1]) + return result + +if __name__ == "__main__": + lst = fibs(10) + print(lst) diff --git a/newcodes/fibs_rec.py b/newcodes/fibs_rec.py new file mode 100644 index 0000000..df24765 --- /dev/null +++ b/newcodes/fibs_rec.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 + +def fib(n): + if n == 0: + return 0 + elif n == 1: + return 1 + else: + return fib(n-1) + fib(n-2) + +if __name__ == "__main__": + f = fib(3) + print(f) From 99f4a28851cd7585ee6158dc8a33dfccad9ad6c2 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 22 Aug 2016 14:13:00 +0800 Subject: [PATCH 210/288] function --- newcodes/cal_power.py | 14 ++++++++++++++ newcodes/nest_func1.py | 10 ++++++++++ newcodes/nest_func2.py | 13 +++++++++++++ newcodes/weight.py | 16 ++++++++++++++++ newcodes/wrap1.py | 17 +++++++++++++++++ 5 files changed, 70 insertions(+) create mode 100644 newcodes/cal_power.py create mode 100644 newcodes/nest_func1.py create mode 100644 newcodes/nest_func2.py create mode 100644 newcodes/weight.py create mode 100644 newcodes/wrap1.py diff --git a/newcodes/cal_power.py b/newcodes/cal_power.py new file mode 100644 index 0000000..f31c831 --- /dev/null +++ b/newcodes/cal_power.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 + +def power_seq(func, seq): + return [func(i) for i in seq] + +def pingfang(x): + return x ** 2 + +if __name__ == "__main__": + num_seq = [111, 3.14, 2.91] + r = power_seq(pingfang, num_seq) + print(num_seq) + print(r) diff --git a/newcodes/nest_func1.py b/newcodes/nest_func1.py new file mode 100644 index 0000000..bbd3e4e --- /dev/null +++ b/newcodes/nest_func1.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +# coding=utf-8 + +def foo(): + def bar(): + print("bar() is running") + bar() + print("foo() is running") + +foo() diff --git a/newcodes/nest_func2.py b/newcodes/nest_func2.py new file mode 100644 index 0000000..71cec8c --- /dev/null +++ b/newcodes/nest_func2.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +# coding=utf-8 + +def foo(): + a = 1 + def bar(): + nonlocal a + a = a + 1 + print("bar()a=", a) + bar() + print("foo()a=", a) + +foo() diff --git a/newcodes/weight.py b/newcodes/weight.py new file mode 100644 index 0000000..0ccf983 --- /dev/null +++ b/newcodes/weight.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python +# coding=utf-8 + +def weight(g): + def cal_mg(m): + return m * g + return cal_mg + +w = weight(10) +mg = w(10) +print(mg) + +g0 = 9.78046 #赤道海平面上的重力加速度 +w0 = weight(g0) +mg0 = w0(10) +print(mg0) diff --git a/newcodes/wrap1.py b/newcodes/wrap1.py new file mode 100644 index 0000000..bf8f7e3 --- /dev/null +++ b/newcodes/wrap1.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +def foo(fun): + def wrap(): + print("start") + fun() + print("end") + print(fun.__name__) + return wrap + +@foo +def bar(): + print("I am in bar()") + +bar() + From d5cfeb9cc12f0d76096213c38eafb60781d1f44d Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 24 Aug 2016 07:23:41 +0800 Subject: [PATCH 211/288] method --- newcodes/about_self.py | 26 ++++++++++++++++++++++++++ newcodes/class_method.py | 20 ++++++++++++++++++++ newcodes/static_method.py | 26 ++++++++++++++++++++++++++ 3 files changed, 72 insertions(+) create mode 100644 newcodes/about_self.py create mode 100644 newcodes/class_method.py create mode 100644 newcodes/static_method.py diff --git a/newcodes/about_self.py b/newcodes/about_self.py new file mode 100644 index 0000000..9a7ba40 --- /dev/null +++ b/newcodes/about_self.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Person: + def __init__(self, name): + self.name = name + + def get_name(self): + return self.name + + def breast(self, n): + self.breast = n + + def color(self, color): + print("{0} is {1}".format(self.name, color)) + + def how(self): + print("{0} breast is {1}".format(self.name, self.breast)) + +girl = Person('canglaoshi') +girl.breast(90) + +girl.color("white") + +girl.how() + diff --git a/newcodes/class_method.py b/newcodes/class_method.py new file mode 100644 index 0000000..b4342c0 --- /dev/null +++ b/newcodes/class_method.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Foo: + lang = "Java" + def __init__(self): + self.lang = "python" + + @classmethod + def get_class_attr(cls): + return cls.lang + +if __name__ == "__main__": + print("Foo.lang:", Foo.lang) + r = Foo.get_class_attr() + print("get class attribute:", r) + + f = Foo() + print("instance attribute:", f.lang) + print("instance get_class_attr:", f.get_class_attr()) diff --git a/newcodes/static_method.py b/newcodes/static_method.py new file mode 100644 index 0000000..0d46f5c --- /dev/null +++ b/newcodes/static_method.py @@ -0,0 +1,26 @@ +#!/usr/bin/env python +# coding=utf-8 + +import random + + +class Foo: + def __init__(self, name): + self.name = name + + def get_name(self, age): + if self.select(age): + return self.name + else: + return "the name is secret." + + @staticmethod + def select(n): + a = random.randint(1, 100) + return a - n > 0 + + +if __name__ == "__main__": + f = Foo("luolaoshi") + name = f.get_name(22) + print(name) From 6005b22360ab8d6dee52b6cab2697b467c0960fc Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 24 Aug 2016 08:30:16 +0800 Subject: [PATCH 212/288] inhance --- newcodes/mro.py | 28 ++++++++++++++++++++++++++++ newcodes/multi_inhance.py | 24 ++++++++++++++++++++++++ newcodes/single_inhance.py | 28 ++++++++++++++++++++++++++++ 3 files changed, 80 insertions(+) create mode 100644 newcodes/mro.py create mode 100644 newcodes/multi_inhance.py create mode 100644 newcodes/single_inhance.py diff --git a/newcodes/mro.py b/newcodes/mro.py new file mode 100644 index 0000000..9433ebe --- /dev/null +++ b/newcodes/mro.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding=utf-8 + +class K1: + def foo(self): + print("K1-foo") + +class K2: + def foo(self): + print("K2-foo") + def bar(self): + print("K2-bar") + +class J1(K1, K2): + pass + +class J2(K1, K2): + def bar(self): + print("J2-bar") + +class C(J1, J2): + pass + +if __name__ == "__main__": + print(C.__mro__) + m = C() + m.foo() + m.bar() diff --git a/newcodes/multi_inhance.py b/newcodes/multi_inhance.py new file mode 100644 index 0000000..88a2f50 --- /dev/null +++ b/newcodes/multi_inhance.py @@ -0,0 +1,24 @@ +#! /usr/bin/env python +# coding:utf-8 + +class Person: + def eye(self): + print("two eyes") + + def breast(self, n): + print("The breast is: ",n) + +class Girl: + age = 28 + def color(self): + print("The girl is white") + +class HotGirl(Person, Girl): + pass + +if __name__ == "__main__": + kong = HotGirl() + kong.eye() + kong.breast(90) + kong.color() + print(kong.age) diff --git a/newcodes/single_inhance.py b/newcodes/single_inhance.py new file mode 100644 index 0000000..85a1127 --- /dev/null +++ b/newcodes/single_inhance.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Person: + def __init__(self, name): + self.name = name + + def height(self, m): + h = dict((["height", m],)) + return h + + def breast(self, n): + b = dict((["breast", n],)) + return b + +class Girl(Person): + def __init__(self): + self.name = "Aoi sola" + + def get_name(self): + return self.name + +if __name__ == "__main__": + cang = Girl("canglaoshi") + print(cang.get_name()) + print(cang.height(160)) + print(cang.breast(90)) + From 1fe87c031eaf76616582de3a11d47ed1146e96be Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 24 Aug 2016 09:43:27 +0800 Subject: [PATCH 213/288] private --- newcodes/private.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 newcodes/private.py diff --git a/newcodes/private.py b/newcodes/private.py new file mode 100644 index 0000000..7e27236 --- /dev/null +++ b/newcodes/private.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +# coding=utf-8 + +class ProtectMe: + def __init__(self): + self.me = "qiwsir" + self.__name = "kivi" + + def __python(self): + print("I love Python.") + + def code(self): + print("Which language do you like?") + self.__python() + + @property + def name(self): + return self.__name + +if __name__ == "__main__": + p = ProtectMe() + print(p.name) From ff3265ff97018b0cde11d3c0201db3f90b6f1c3a Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 24 Aug 2016 23:08:13 +0800 Subject: [PATCH 214/288] define class --- newcodes/fraction.py | 43 +++++++++++++++++++++++++++++++++++++++++ newcodes/round_float.py | 17 ++++++++++++++++ 2 files changed, 60 insertions(+) create mode 100644 newcodes/fraction.py create mode 100644 newcodes/round_float.py diff --git a/newcodes/fraction.py b/newcodes/fraction.py new file mode 100644 index 0000000..2c66b8a --- /dev/null +++ b/newcodes/fraction.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python +#coding=utf-8 + +class Fraction: + def __init__(self, number, denom=1): + self.number = number + self.denom = denom + + def __str__(self): + return str(self.number) + '/' + str(self.denom) + + __repr__ = __str__ + + def __add__(self, other): + lcm_num = lcm(self.denom, other.denom) + number_sum = (lcm_num / self.denom * self.number) + (lcm_num / other.denom * other.number) + return Fraction(number_sum, lcm_num) + + + +def gcd(a, b): #最大公约数 + if not a > b: + a, b = b, a + while b != 0: + remainder = a % b + a, b = b, remainder + return a + +def lcm(a, b): #最小公倍数 + return (a * b) / gcd(a,b) + + +if __name__ == "__main__": + #f = Fraction(2, 3) + #print(f) + + #print(gcd(8, 20)) + #print(lcm(8, 20)) + + m = Fraction(1, 3) + n = Fraction(1, 2) + s = m + n + print(m,"+",n,"=",s) diff --git a/newcodes/round_float.py b/newcodes/round_float.py new file mode 100644 index 0000000..b94b629 --- /dev/null +++ b/newcodes/round_float.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +class RoundFloat: + def __init__(self, val): + assert isinstance(val, float), "value must be a float." + self.value = round(val, 2) + + def __str__(self): + return "{:.2f}".format(self.value) + + __repr__ = __str__ + +if __name__ == "__main__": + r = RoundFloat(2.185) + print(r) + print(type(r)) From ff3092b77bd501452f549efaea0633cfc7c293d7 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 25 Aug 2016 16:25:47 +0800 Subject: [PATCH 215/288] try --- newcodes/account.py | 25 +++++++++++++++++++++++++ newcodes/calculator.py | 18 ++++++++++++++++++ newcodes/fibs_iter.py | 22 ++++++++++++++++++++++ newcodes/fibs_yield.py | 17 +++++++++++++++++ newcodes/myrange.py | 22 ++++++++++++++++++++++ newcodes/normal_rectangle.py | 28 ++++++++++++++++++++++++++++ newcodes/special_rectangle.py | 28 ++++++++++++++++++++++++++++ newcodes/try_else.py | 14 ++++++++++++++ newcodes/try_except.py | 20 ++++++++++++++++++++ 9 files changed, 194 insertions(+) create mode 100644 newcodes/account.py create mode 100644 newcodes/calculator.py create mode 100644 newcodes/fibs_iter.py create mode 100644 newcodes/fibs_yield.py create mode 100644 newcodes/myrange.py create mode 100644 newcodes/normal_rectangle.py create mode 100644 newcodes/special_rectangle.py create mode 100644 newcodes/try_else.py create mode 100644 newcodes/try_except.py diff --git a/newcodes/account.py b/newcodes/account.py new file mode 100644 index 0000000..be81ad2 --- /dev/null +++ b/newcodes/account.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Account(object): + def __init__(self, number): + self.number = number + self.balance = 0 + + def deposit(self, amount): + try: + assert amount > 0 + self.balance += amount + except: + print("The money should be bigger than zero.") + + def withdraw(self, amount): + assert amount > 0 + if amount <= self.balance: + self.balance -= amount + else: + print("balance is not enough.") + +if __name__ == "__main__": + a = Account(1000) + a.deposit(-10) diff --git a/newcodes/calculator.py b/newcodes/calculator.py new file mode 100644 index 0000000..ce38ae1 --- /dev/null +++ b/newcodes/calculator.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Calculator(object): + is_raise = False + def calc(self, express): + try: + return eval(express) + except ZeroDivisionError: + if self.is_raise: + return "zero can not be division." + else: + raise + +if __name__ == "__main__": + c = Calculator() + c.is_raise = True + print(c.calc("8/0")) diff --git a/newcodes/fibs_iter.py b/newcodes/fibs_iter.py new file mode 100644 index 0000000..40d5165 --- /dev/null +++ b/newcodes/fibs_iter.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Fibs: + def __init__(self, max): + self.max = max + self.a = 0 + self.b = 1 + + def __iter__(self): + return self + + def __next__(self): + fib = self.a + if fib > self.max: + raise StopIteration + self.a, self.b = self.b, self.a + self.b + return fib + +if __name__ == "__main__": + fibs = Fibs(5) + print(list(fibs)) diff --git a/newcodes/fibs_yield.py b/newcodes/fibs_yield.py new file mode 100644 index 0000000..4c1e53d --- /dev/null +++ b/newcodes/fibs_yield.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +def fibs(max): + """ + 斐波那契数列的生成器 + """ + n, a, b = 0, 0, 1 + while n < max: + yield b + a, b = b, a + b + n = n + 1 + +if __name__ == "__main__": + f = fibs(10) + for i in f: + print(i, end=',') diff --git a/newcodes/myrange.py b/newcodes/myrange.py new file mode 100644 index 0000000..c73d9ce --- /dev/null +++ b/newcodes/myrange.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +# coding=utf-8 + +class MyRange: + def __init__(self, n): + self.i = 1 + self.n = n + + def __iter__(self): + return self + + def __next__(self): + if self.i <= self.n: + i = self.i + self.i += 1 + return i + else: + raise StopIteration() + +if __name__ == "__main__": + x = MyRange(7) + print([i for i in x]) diff --git a/newcodes/normal_rectangle.py b/newcodes/normal_rectangle.py new file mode 100644 index 0000000..95a8722 --- /dev/null +++ b/newcodes/normal_rectangle.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding=utf-8 + +""" +study __getattr__ and __setattr__ +""" + +class Rectangle: + """ + the width and length of Rectangle + """ + def __init__(self): + self.width = 0 + self.length = 0 + + def setSize(self, size): + self.width, self.length = size + def getSize(self): + return self.width, self.length + +if __name__ == "__main__": + r = Rectangle() + r.width = 3 + r.length = 4 + print(r.getSize()) + r.setSize( (30, 40) ) + print(r.width) + print(r.length) diff --git a/newcodes/special_rectangle.py b/newcodes/special_rectangle.py new file mode 100644 index 0000000..40840b7 --- /dev/null +++ b/newcodes/special_rectangle.py @@ -0,0 +1,28 @@ +#!/usr/bin/env python +# coding=utf-8 + +class NewRectangle: + def __init__(self): + self.width = 0 + self.length = 0 + + def __setattr__(self, name, value): + if name == "size": + self.width, self.length = value + else: + self.__dict__[name] = value + + def __getattr__(self, name): + if name == "size": + return self.width, self.length + else: + raise AttributeError + +if __name__ == "__main__": + r = NewRectangle() + r.width = 3 + r.length = 4 + print(r.size) + r.size = 30, 40 + print(r.width) + print(r.length) diff --git a/newcodes/try_else.py b/newcodes/try_else.py new file mode 100644 index 0000000..1bd4040 --- /dev/null +++ b/newcodes/try_else.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 +while 1: + try: + x = input("the first number:") + y = input("the second number:") + + r = float(x)/float(y) + print(r) + except Exception as e: + print(e) + print("try again.") + else: + break diff --git a/newcodes/try_except.py b/newcodes/try_except.py new file mode 100644 index 0000000..6a1c132 --- /dev/null +++ b/newcodes/try_except.py @@ -0,0 +1,20 @@ +#!/usr/bin/env python +# coding=utf-8 + +while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except (ZeroDivisionError, ValueError) as e: + print(e) + print("*************************") + #except ValueError: + # print("please input number.") + # print("************************") + else: + break From 15655f4686e1aeae8941a45ca2c300407984ac68 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 16 Sep 2016 09:15:04 +0800 Subject: [PATCH 216/288] answer 8 --- newcodes/answers/q8.py | 8 ++++++++ newcodes/exit_file.py | 10 ++++++++++ newcodes/pm.py | 7 +++++++ newcodes/sys_file.py | 8 ++++++++ 4 files changed, 33 insertions(+) create mode 100644 newcodes/answers/q8.py create mode 100644 newcodes/exit_file.py create mode 100644 newcodes/pm.py create mode 100644 newcodes/sys_file.py diff --git a/newcodes/answers/q8.py b/newcodes/answers/q8.py new file mode 100644 index 0000000..d637a7f --- /dev/null +++ b/newcodes/answers/q8.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python +# coding=utf-8 + +name = input("what is your name?") +age = input("how old are you?") +new_age = int(age) + 10 + +print("{0} will be {1} yeas old in ten yeas.".format(name, new_age)) diff --git a/newcodes/exit_file.py b/newcodes/exit_file.py new file mode 100644 index 0000000..7e46334 --- /dev/null +++ b/newcodes/exit_file.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +# coding=utf-8 + +import sys + +for i in range(10): + if i == 5: + sys.exit() + else: + print(i) diff --git a/newcodes/pm.py b/newcodes/pm.py new file mode 100644 index 0000000..9c2f5f7 --- /dev/null +++ b/newcodes/pm.py @@ -0,0 +1,7 @@ +#!/usr/bin/env python +# coding=utf-8 + +lang = "python" + +if __name__ == "__main__": + print(lang()) diff --git a/newcodes/sys_file.py b/newcodes/sys_file.py new file mode 100644 index 0000000..b99b978 --- /dev/null +++ b/newcodes/sys_file.py @@ -0,0 +1,8 @@ +#!/usr/bin/env python +# coding=utf-8 + +import sys + +print("The file name: ", sys.argv[0]) +print("The number of argument", len(sys.argv)) +print("The argument is: ", str(sys.argv)) From 792beb8c95b07ed08c5deb7a0693bb109cbd7e48 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 16 Sep 2016 21:01:40 +0800 Subject: [PATCH 217/288] input name then sorted and print --- newcodes/answers/q13.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 newcodes/answers/q13.py diff --git a/newcodes/answers/q13.py b/newcodes/answers/q13.py new file mode 100644 index 0000000..f623e6e --- /dev/null +++ b/newcodes/answers/q13.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +# coding=utf-8 + +name_lst = [] +while True: + name = input("Please input an English name(input 'q' then exit)") + if name == "q": + break + else: + name_lst.append(name) + +name_lst.sort() +print(name_lst) From 904185cf7b056450c605c301a91aacbe76700df3 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 16 Sep 2016 21:46:30 +0800 Subject: [PATCH 218/288] random int --- newcodes/answers/q16.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 newcodes/answers/q16.py diff --git a/newcodes/answers/q16.py b/newcodes/answers/q16.py new file mode 100644 index 0000000..f56ef73 --- /dev/null +++ b/newcodes/answers/q16.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 + +import random + +lst = [random.randint(0,9) for i in range(100)] +print(lst) + +only_int = set(lst) + +num = [ lst.count(i) for i in only_int ] + +dct = dict(zip(only_int, num)) +print(dct) From 031b304c5920bdcf5d0b92d3fbbecd3357f9745c Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 16 Sep 2016 22:13:30 +0800 Subject: [PATCH 219/288] is leap year --- newcodes/answers/q17.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 newcodes/answers/q17.py diff --git a/newcodes/answers/q17.py b/newcodes/answers/q17.py new file mode 100644 index 0000000..2df81d7 --- /dev/null +++ b/newcodes/answers/q17.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +# coding=utf-8 + +import calendar + +years = range(1840, 2016) +leap_years = [] +for year in years: + if calendar.isleap(year): + leap_years.append(year) + +print(leap_years) From 8b7cfe5e782477053c3f579bf1d808f6a66f980d Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 17 Sep 2016 21:25:45 +0800 Subject: [PATCH 220/288] answer --- newcodes/answers/q15.py | 11 +++++++++++ newcodes/answers/q21.py | 30 ++++++++++++++++++++++++++++++ newcodes/answers/q22.py | 16 ++++++++++++++++ newcodes/answers/q40.py | 17 +++++++++++++++++ 4 files changed, 74 insertions(+) create mode 100644 newcodes/answers/q15.py create mode 100644 newcodes/answers/q21.py create mode 100644 newcodes/answers/q22.py create mode 100644 newcodes/answers/q40.py diff --git a/newcodes/answers/q15.py b/newcodes/answers/q15.py new file mode 100644 index 0000000..5fe4c87 --- /dev/null +++ b/newcodes/answers/q15.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# coding=utf-8 + +lst = ["canglaoshi", "sola", 23, 12, 3.14, [1,2,3]] +print(lst) +new_lst = [] +for i in lst: + if isinstance(i, str): + new_lst.append(i) + +print(new_lst) diff --git a/newcodes/answers/q21.py b/newcodes/answers/q21.py new file mode 100644 index 0000000..d3fc3c8 --- /dev/null +++ b/newcodes/answers/q21.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# coding=utf-8 + +def f_and_c(value): + unite = value[-1] + v = int(value[:-1]) + try: + if unite == "F": + c = (5*v - 32)/9 + return round(c, 2) + elif unite == "C": + f = 9*v/5 + 32 + return round(f, 2) + else: + return False + except: + return False + +if __name__ == "__main__": + while True: + print("you should input the tempreture like: 23C or 65F, NOTE: F and C is upper.") + t = input("input the tempreture:('q'-exit)") + if t == "q": + break + else: + result = f_and_c(t) + if result: + print("the tempreture is {}".format(result)) + else: + print("your value is not right") diff --git a/newcodes/answers/q22.py b/newcodes/answers/q22.py new file mode 100644 index 0000000..177ef7d --- /dev/null +++ b/newcodes/answers/q22.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python +# coding=utf-8 + +def add(x, y): + return x + y + +if __name__ == "__main__": + while True: + print("please input two number and then the program will add them.'q'-exit.") + v_1 = input("input a number:") + v_2 = input("input another number:") + if v_1 == "q" or v_2 == "q": + break + else: + result = add(v_1, v_2) + print("{0} + {1} = {2}".format(v_1, v_2, result)) diff --git a/newcodes/answers/q40.py b/newcodes/answers/q40.py new file mode 100644 index 0000000..4c99817 --- /dev/null +++ b/newcodes/answers/q40.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +the_num = input("Please enter a number to check:") +the_num = int(the_num) + +divisor = 1 +sum_of_divisors = 0 +while divisor < the_num: + if the_num % divisor == 0: + sum_of_divisors = sum_of_divisors + divisor + divisor = divisor + 1 + +if the_num == sum_of_divisors: + print(the_num, "is perfect") +else: + print(the_num, "is not perfect") From 3509eff8ecdc32d5855d574408bb7ccfba7e6bf2 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 18 Sep 2016 18:52:47 +0800 Subject: [PATCH 221/288] length of word --- newcodes/answers/q12.py | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 newcodes/answers/q12.py diff --git a/newcodes/answers/q12.py b/newcodes/answers/q12.py new file mode 100644 index 0000000..1870fdb --- /dev/null +++ b/newcodes/answers/q12.py @@ -0,0 +1,6 @@ +#!/usr/bin/env python +# coding=utf-8 + +word = input("please input a word:") +length_word = len(word) +print("the length of {0} is {1}".format(word, length_word)) From 01083a47186829f64102ccd060c3f85aa3c0e66b Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 18 Sep 2016 20:08:17 +0800 Subject: [PATCH 222/288] split init --- newcodes/answers/q22-2.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 newcodes/answers/q22-2.py diff --git a/newcodes/answers/q22-2.py b/newcodes/answers/q22-2.py new file mode 100644 index 0000000..7a7743f --- /dev/null +++ b/newcodes/answers/q22-2.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +def split_number(num): + w = len(str(num)) + w_lst = [10**i for i in range(w)] + num_lst = [] + for n in w_lst: + a = (num // n) % 10 + num_lst.append(a) + return num_lst + +if __name__ == "__main__": + n = 2016 + r = split_number(n) + r.reverse() + print(r) From 063f011ad8ceb76382320e0f0c922fe7ab5676ce Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 18 Sep 2016 23:27:42 +0800 Subject: [PATCH 223/288] find aeiou --- newcodes/answers/dictionary.txt | 349900 +++++++++++++++++++++++++++++ newcodes/answers/q58.py | 25 + 2 files changed, 349925 insertions(+) create mode 100755 newcodes/answers/dictionary.txt create mode 100644 newcodes/answers/q58.py diff --git a/newcodes/answers/dictionary.txt b/newcodes/answers/dictionary.txt new file mode 100755 index 0000000..1139e40 --- /dev/null +++ b/newcodes/answers/dictionary.txt @@ -0,0 +1,349900 @@ +aaaa +aaaaa +aaaaaa +aaaaaaa +aaaaaaaa +aaaaaaaah +aaaaaaauugh +aaaaaagh +aaaaaahhhhh +aaaaaaugh +aaaaagh +aaaaah +aaaarthur +aaaaw +aaagghhhh +aaah +aaaugh +aaccf +aachen +aacr +aadland +aaem +aagate +aage +aagh +aahed +aahing +aahs +aahz +aaimasa +aaiun +aaker +aakhwe +aalders +aaleira +aalen +aali +aalii +aaltje +aalto +aamers +aames +aamrl +aana +aand +aani +aappmedic +aara +aarai +aaran +aardvark +aardvarks +aardwolf +aaren +aargau +aargh +aarhus +aari +aarika +aariya +aarnet +aaron +aaronic +aaronical +aaronite +aaronites +aaronitic +aarons +aaronsburg +aaronson +aarthur +aartjan +aaru +aaryn +aase +aasen +aastveit +aasvogel +aaugh +aavasaksa +aaye +aazq +ababdeh +ababua +abac +abaca +abacab +abacama +abacate +abacay +abacha +abachidze +abaci +abacinate +abacination +abaciscus +abacist +aback +abaco +abactinal +abactinally +abaction +abactor +abaculus +abacus +abacuses +abadaba +abadah +abadam +abadan +abaddon +abadekh +abadi +abadia +abadie +abadines +abadite +abadzex +abaff +abaft +abaga +abagael +abagail +abagtha +abahri +abai +abaiang +abaisance +abaiser +abaissed +abajo +abak +abaka +abakaka +abakaliki +abakan +abakay +abake +abakentshori +abaketshori +abaknon +abakoum +abakpa +abakuks +abakum +abakumov +abakwariga +abal +abala +abalakin +abalakovo +abalardi +abaletti +abali +abalienate +abalienation +abalkin +abalones +abam +abama +abamet +abampere +abana +abanderada +abandon +abandonable +abandoned +abandonedly +abandonee +abandoner +abandoners +abandoning +abandonment +abandonments +abandons +abangba +abanic +abanliku +abante +abantes +abanyom +abanyum +abaptiston +abarambo +abari +abarim +abaris +abarthrosis +abarticular +abas +abasakur +abasango +abascal +abase +abased +abasedly +abasedness +abasement +abasements +abaser +abasers +abases +abasest +abasgi +abashed +abashedly +abashedness +abashes +abashing +abashless +abashlessly +abashment +abashments +abasia +abasic +abasing +abask +abassin +abastardize +abastumani +abatable +abate +abated +abatement +abatements +abaters +abates +abathwa +abating +abatis +abatised +abatises +abatjour +abaton +abator +abatsa +abattis +abattoir +abattoirs +abatua +abature +abau +abave +abaw +abaxial +abaxile +abaya +abayongo +abaza +abazari +abaze +abazin +abazintsy +abba +abbacies +abbacomes +abbacy +abbadabba +abbadide +abbas +abbasi +abbass +abbassi +abbasside +abbatantuono +abbate +abbati +abbatial +abbatical +abbatiello +abbatis +abbaz +abbe +abbes +abbess +abbesse +abbesses +abbeville +abbey +abbeys +abbeystede +abbi +abbie +abbington +abbo +abbos +abbotcies +abbotcy +abbotnullius +abbots +abbotsbury +abbotsford +abbotship +abbotships +abbott +abbottstown +abbotvillage +abbr +abbrev +abbreviate +abbreviated +abbreviately +abbreviates +abbreviating +abbreviation +abbreviator +abbreviators +abbreviatory +abbreviature +abbrevs +abbruzzesi +abbsconv +abby +abbye +abbyville +abbyy +abcd +abcde +abcdef +abcdefabcdef +abcdefg +abcdh +abcfm +abch +abcissa +abcoulomb +abda +abdal +abdala +abdalimov +abdalla +abdallah +abdat +abdedal +abdeel +abdel +abdelaziz +abdelhakim +abdelhamid +abdeljawad +abdelkuri +abdellah +abdellatif +abdelrazek +abdenage +abdenour +abderian +abderite +abderrahim +abderrahmane +abdeslam +abdest +abdi +abdicable +abdicant +abdicated +abdicates +abdicating +abdication +abdications +abdicative +abdicator +abdiel +abdikarim +abdin +abditive +abditory +abdo +abdollahi +abdomens +abdominal +abdominales +abdominalian +abdominally +abdominous +abdon +abdou +abdoul +abdoulaye +abduce +abducens +abducent +abducted +abducting +abduction +abductions +abductive +abductor +abductors +abducts +abdul +abdulahi +abdulkalek +abdulkarim +abdulkhalek +abdulla +abdullah +abdulov +abdushilov +abeam +abear +abearance +abebe +abecedarian +abecedarians +abecedarium +abecedary +abeche +abedi +abednego +abeel +abefang +abeigh +abel +abelam +abeldini +abele +abelia +abelicea +abelite +abell +abella +abello +abelmaim +abelmeholah +abelmizraim +abelmoschus +abelmosk +abelonian +abelow +abelshittim +abeltree +abemama +aben +abenago +abenaki +abenaqui +abencerrages +abend +abends +abeng +abengourou +abengya +abenlen +abenteric +abenteuer +abepithymia +aber +aberaud +abercombie +abercrombie +aberdeen +aberdein +aberdevine +aberdonian +aberg +aberia +abermud +abernant +abernathy +abernethy +aberrance +aberrancies +aberrancy +aberrantly +aberrants +aberration +aberrational +aberrations +aberrator +aberrometer +aberroscope +aberson +aberto +aberu +aberuncator +abetment +abets +abettal +abettals +abetter +abetters +abetti +abettor +abettors +abeus +abevacuation +abewa +abey +abeyance +abeyances +abeyancies +abeyancy +abez +abfarad +abfff +abfm +abfms +abgehende +abgelegt +abgeschickt +abha +abhart +abhenry +abhiseka +abhm +abhominable +abhor +abhorred +abhorrence +abhorrences +abhorrency +abhorrently +abhorrer +abhorrers +abhorrest +abhorreth +abhorrible +abhorring +abhors +abhorson +abia +abiah +abialang +abialbon +abiasaph +abiathar +abib +abico +abicos +abid +abida +abidah +abidal +abidan +abidance +abiddul +abide +abided +abider +abiders +abides +abideth +abidi +abidine +abiding +abidingly +abidingness +abidjan +abidji +abie +abiel +abiem +abies +abietate +abietene +abietic +abietin +abietineae +abietineous +abietinic +abiezer +abiezrite +abiezrites +abigael +abigail +abigailship +abigale +abigar +abigeat +abigeus +abighanem +abigira +abihail +abihu +abihud +abiibarik +abijah +abijam +abiji +abilao +abilene +abilities +ability +abilla +abilo +abim +abimael +abimelech +abinadab +abineri +abingdon +abington +abini +abinoam +abinsi +abintestate +abiogenesis +abiogenesist +abiogenetic +abiogenist +abiogenous +abiogeny +abiological +abiology +abiosis +abiotic +abiotrophic +abiotrophy +abipon +abiquira +abiquiu +abir +abira +abiram +abiri +abirnet +abirritant +abirritate +abirritation +abirritative +abishag +abishai +abishalom +abishira +abishua +abishur +abisi +abismos +abiston +abital +abitasprings +abitibi +abito +abitoir +abitub +abiu +abiud +abiuret +abiyi +abiyu +abject +abjectedness +abjection +abjections +abjective +abjectly +abjectness +abjects +abjoint +abjudge +abjudicate +abjudication +abjunction +abjunctive +abjuration +abjurations +abjuratory +abjure +abjured +abjurement +abjurer +abjurers +abjures +abjuring +abkar +abkari +abkhas +abkhasian +abkhaz +abkhazabazin +abkhazia +abkill +ablach +ablactate +ablactation +ablanca +ablare +ablastemic +ablastous +ablated +ablates +ablating +ablation +ablations +ablatitious +ablatival +ablative +ablatively +ablatives +ablator +ablaut +ablaze +able +ablebodied +ableeze +ablegate +ableness +ablepharia +ablepharon +ablepharous +ablepharus +ablepsia +ablepsy +ableptical +ableptically +abler +ables +ablest +ablewhackets +ablility +ablings +ablins +abloom +ablow +ablude +ablue +abluent +ablulescu +ablush +ablute +abluted +ablution +ablutionary +ablutions +abluvion +ably +abmho +abmu +abnaki +abnegate +abnegated +abnegates +abnegating +abnegation +abnegations +abnegative +abnegator +abnegators +abner +abnerval +abnet +abneural +abnoba +abnormal +abnormalism +abnormalist +abnormality +abnormalize +abnormally +abnormalness +abnormals +abnormity +abnormous +abnumerable +aboa +aboard +abobra +abode +aboded +abodement +abodes +abodest +aboding +abodunde +abody +aboh +abohi +abohm +aboideau +aboil +aboisso +aboiteau +abolish +abolishable +abolished +abolisher +abolishers +abolishes +abolishing +abolishment +abolishments +abolition +abolitionary +abolitionism +abolitionist +abolitionize +abolla +abom +aboma +abomasum +abomasus +abominable +abominably +abominated +abominates +abominating +abomination +abominations +abominator +abominators +abomine +abon +abondolo +abong +abongmbang +abongo +abonu +abonwa +aboo +aboon +abor +aborad +aboral +aborally +abord +aboriginal +aboriginally +aboriginals +aboriginary +aborigines +aborigones +aborlan +aboro +abort +aborted +aborter +aborters +aborticide +abortient +abortin +aborting +abortion +abortional +abortionist +abortionists +abortions +abortive +abortively +abortiveness +abortivity +abortogenic +aborts +abortus +abotee +abou +abouchement +abouelata +abound +abounded +abounder +aboundeth +abounding +aboundingly +abounds +aboure +aboussouan +about +aboutbox +aboutelfan +abouts +above +aboveaverage +abovedeck +abovelevel +aboveproof +aboves +abovesaid +abovestairs +aboville +abovyan +abox +abpsa +abra +abracadabra +abrachia +abradant +abradants +abraded +abradeilog +abrader +abraders +abrades +abrading +abragam +abraham +abrahamic +abrahamidae +abrahamite +abrahamitic +abrahams +abrahim +abraid +abrako +abram +abramis +abramo +abramov +abramow +abramowitz +abrams +abranchial +abranchian +abranchiata +abranchiate +abranchious +abrasax +abrase +abrash +abrasiometer +abrasions +abrasively +abrasiveness +abrasives +abrastol +abraum +abraxas +abreacted +abreacting +abreaction +abreactions +abreacts +abrege +abrenounce +abreption +abresch +abret +abreviations +abri +abribus +abrico +abridge +abridgeable +abridged +abridgedly +abridgement +abridgements +abridger +abridgers +abridges +abridging +abridgments +abrikosov +abrikossov +abril +abrim +abrin +abris +abristle +abritalodi +abroach +abroad +abrocoma +abrocome +abrogable +abrogate +abrogated +abrogates +abrogating +abrogation +abrogations +abrogative +abrogator +abrogators +abroma +abron +abronia +abrook +abrotanum +abrotine +abrownian +abrupt +abruptedly +abrupter +abruptest +abruption +abruptly +abruptness +abrus +abruzzese +abruzzi +absaddr +absalom +absampere +absaraka +absaroka +absarokee +absarokite +abscam +abscessed +abscesses +abscessing +abscession +abscessroot +abscind +abscise +abscised +abscises +abscising +abscision +absciss +abscissa +abscissas +abscisse +abscission +abscissions +absconce +abscond +absconded +abscondedly +abscondence +absconder +absconders +absconding +absconds +absconsa +abscoulomb +absecon +absence +absences +absent +absentation +absented +absentees +absenteeship +absenter +absenters +absenting +absently +absentment +absentness +absents +absfarad +absharin +abshenry +absi +absinth +absinthes +absinthial +absinthian +absinthiate +absinthic +absinthin +absinthine +absinthism +absinthismic +absinthium +absinthol +absinths +absit +absmho +absohm +absolon +absolut +absolute +absoluteftp +absolutely +absoluteness +absoluter +absolutes +absolutest +absolution +absolutions +absolutism +absolutist +absolutistic +absolutists +absolutive +absolutize +absolutly +absolutory +absolvable +absolvatory +absolved +absolvent +absolver +absolvers +absolves +absolving +absolvitor +absolvitory +absonant +absonous +absorb +absorbable +absorbatex +absorbed +absorbedly +absorbedness +absorbencies +absorbency +absorbents +absorber +absorbers +absorbing +absorbingly +absorbition +absorbs +absorpt +absorptance +absorptions +absorptively +absorptivity +absquatulate +abstain +abstained +abstainer +abstainers +abstaining +abstainment +abstains +abstemious +abstemiously +abstentions +abstentious +absterge +abstergent +abstersion +abstersive +abstertion +abstinence +abstinency +abstinential +abstinently +abstract +abstracted +abstractedly +abstracters +abstracting +abstraction +abstractions +abstractive +abstractly +abstractness +abstractors +abstracts +abstrahent +abstrict +abstricted +abstriction +abstricts +abstrusely +abstruseness +abstruser +abstrusest +abstrusion +abstrusity +absume +absumption +absurd +absurder +absurdest +absurdities +absurdity +absurdly +absurdness +absurds +absurdum +absvolt +absyrtus +abtbooks +abterminal +abthain +abthainrie +abthainry +abthanage +abua +abuan +abuaodual +abubakar +abubble +abubukar +abucco +abuel +abui +abuja +abujhmadia +abujhmaria +abujmaria +abujmariya +abuju +abukeia +abul +abulas +abuldugu +abule +abulela +abulia +abulic +abuloma +abulomania +abumanga +abun +abuna +abundance +abundances +abundancy +abundant +abundantia +abundantly +abung +abura +aburabozu +aburban +abure +aburi +aburlin +aburst +aburton +abusage +abuse +abused +abusedly +abusee +abuseful +abusefully +abusefulness +abuser +abusers +abuses +abusing +abusion +abusious +abusively +abusiveness +abut +abuta +abutilon +abutment +abutments +abuts +abuttal +abuttals +abutted +abutter +abutters +abutting +abuya +abuzz +abvolt +abwab +abwe +abweise +abwetee +abwor +abxazo +abyan +abyar +abyes +abysm +abysmally +abysms +abyss +abyssa +abyssal +abysses +abyssinian +abyssinians +abyssolith +abzhui +abzug +acaba +acacatechin +acacatechol +acacetin +acacia +acacian +acacias +acaciin +acacin +acad +acadamey +acadamy +academes +academia +academial +academian +academias +academic +academical +academically +academicals +academicians +academicism +academics +academies +academism +academist +academite +academize +academus +academy +acadialite +acadian +acadie +acadien +acaena +acahuayo +acaiuba +acajou +acajutla +acal +acaleph +acalepha +acalephae +acalephan +acalephoid +acalycal +acalycine +acalycinous +acalyculate +acalypha +acalypterae +acalyptrata +acalyptratae +acalyptrate +acamar +acamarian +acampo +acampsia +acana +acanaceous +acang +acanonical +acanth +acantha +acanthaceae +acanthaceous +acanthad +acantharia +acanthi +acanthia +acanthial +acanthin +acanthine +acanthion +acanthite +acanthodea +acanthodean +acanthodei +acanthodes +acanthodian +acanthodidae +acanthodii +acanthodini +acanthoid +acantholimon +acanthology +acantholysis +acanthoma +acanthon +acanthopanax +acanthophis +acanthopod +acanthopore +acanthopteri +acanthosis +acanthous +acanthuridae +acanthurus +acanthuses +acapnia +acapnial +acapsular +acapu +acara +acarapis +acardia +acardiac +acari +acarian +acariasis +acaricidal +acaricide +acarid +acarida +acaridea +acaridean +acariform +acarina +acarine +acarinosis +acaro +acaroid +acarol +acarologist +acarology +acarophilous +acarophobia +acarotoxic +acarpellous +acarpelous +acarpous +acarus +acastus +acata +acatalectic +acatalepsia +acatalepsy +acataleptic +acatallactic +acataphasia +acataposis +acatastasia +acatastatic +acate +acateco +acategorical +acatenango +acatepec +acatery +acatharsia +acatharsy +acatholic +acatla +acaudal +acaudate +acaulescent +acauline +acaulose +acaulous +acawayo +acbb +acbd +acbf +acbg +acbh +acbl +acbw +acca +accad +acceded +accedence +acceder +acceders +accedes +acceding +accelerable +accelerando +accelerant +accelerate +accelerated +accelerates +accelerating +acceleration +accelerative +accelerator +accelerators +acceleratory +accend +accendible +accension +accensor +accent +accented +accenting +accentless +accentor +accents +accentuable +accentuality +accentually +accentuated +accentuates +accentuating +accentuation +accentuator +accentus +accept +accepta +acceptable +acceptably +acceptance +acceptances +acceptancy +acceptation +accepted +acceptedly +acceptee +acceptees +accepter +accepters +acceptest +accepteth +acceptilate +accepting +acception +acceptive +acceptor +acceptors +acceptress +accepts +accerse +accersition +accersitor +acces +access +accessable +accessall +accessaries +accessarily +accessary +accessed +accesses +accessible +accessibly +accessing +accessional +accessioner +accessions +accessive +accessively +accessless +accessor +accessorial +accessories +accessorily +accessorius +accessors +accessthe +acch +acchami +accho +acciaccatura +accidence +accidency +accident +accidental +accidentally +accidentals +accidented +accidential +accidently +accidents +accidia +accidie +accidies +accinge +accipient +accipitral +accipitrary +accipitres +accipitrine +accismus +accite +acclaim +acclaimable +acclaimed +acclaimer +acclaimers +acclaiming +acclaims +acclamate +acclamations +acclamator +acclamatory +acclimatable +acclimated +acclimates +acclimating +acclimation +acclimatize +acclimatized +acclimatizer +acclimatizes +acclimature +acclinal +acclinate +acclivities +acclivitous +acclivity +acclivous +accloy +accm +accnetrouter +accoast +accoil +accokeek +accolade +accoladed +accolades +accolan +accolated +accolent +accolle +accomac +accommodable +accommodate +accommodated +accommodates +accommodator +accomodate +accompanied +accompanier +accompanies +accompanists +accompany +accompanying +accompanyist +accompletive +accompli +accomplice +accomplices +accomplicity +accomplis +accomplish +accomplished +accomplisher +accomplishes +accomplisht +accompt +accompts +accord +accordable +accordance +accordances +accordancy +accordantly +accorded +accorder +accorders +accordian +according +accordingly +accordino +accordionist +accordions +accords +accorporate +accostable +accosted +accosting +accosts +accouche +accouchement +accoucheur +accoucheuse +account +accountable +accountably +accountancy +accountants +accounted +accounter +accounters +accounting +accountment +accounts +accouple +accouplement +accouter +accoutered +accoutering +accouterment +accouters +accoutre +accoutred +accoutrement +accoutres +accoutring +accoville +accoy +accra +accredited +accreditee +accrediting +accreditment +accredits +accresce +accrescence +accrescent +accretal +accrete +accreted +accretes +accreting +accretionary +accretions +accretive +accroach +accroides +accross +accrossa +accruable +accruals +accrued +accruement +accruer +accrues +accruing +accrust +acct +accts +accubation +accubitum +accubitus +accueil +accultural +acculturated +acculturates +acculturize +accumbency +accumbent +accumber +accumulable +accumulate +accumulated +accumulates +accumulating +accumulation +accumulativ +accumulative +accumulator +accumulators +accupy +accuracies +accuracy +accurate +accurately +accurateness +accurse +accursed +accursedly +accursedness +accurst +accusable +accusably +accusal +accusals +accusant +accusation +accusations +accusatival +accusatively +accusatives +accusatorial +accusatrix +accusatrixes +accuse +accused +accuser +accusers +accuses +accuseth +accusing +accusingly +accusive +accusoft +accusor +accustomary +accustomed +accustomedly +accustoming +accustoms +accutest +accutrans +accuvax +acdnotes +acdpicaview +acdsee +aceanthrene +acebes +acecaffine +aceconitic +aced +acedia +acediamine +acediast +acedy +aceexpert +aceftp +aceh +aceite +aceituno +aceldama +acelvari +acemetae +acemetic +acenaphthene +acentric +acentrous +aceologic +aceology +acephal +acephala +acephalan +acephali +acephalia +acephalina +acephaline +acephalism +acephalist +acephalite +acephalocyst +acephalous +acephalus +acequia +acequiador +acequiamadre +acer +aceraceae +aceraceous +acerae +acerata +acerate +acerates +acerathere +aceratherium +aceration +aceratosis +acerb +acerbas +acerbate +acerbated +acerbates +acerbating +acerber +acerbest +acerbities +acerdol +acereader +acerin +acerola +acerose +acerous +acerra +acertannin +acervate +acervately +acervatim +acervation +acervative +acervose +acervuline +acervulus +aces +acescence +acescency +acescent +aceship +acesodyne +acessible +acessing +acestes +acetabular +acetabularia +acetabulous +acetabulum +acetacetic +acetal +acetaldehyde +acetalize +acetamide +acetamidin +acetamidine +acetamido +acetaminol +acetanilid +acetanilide +acetanion +acetaniside +acetannin +acetarious +acetarsone +acetate +acetated +acetates +acetation +acetenyl +acetified +acetifier +acetifies +acetify +acetifying +acetimeter +acetimetry +acetin +acetize +acetoacetate +acetoacetic +acetobacter +acetobenzoic +acetochloral +acetoin +acetol +acetolysis +acetolytic +acetometer +acetometry +acetonate +acetonation +acetonemia +acetonemic +acetones +acetonic +acetonitrile +acetonize +acetonuria +acetonyl +acetophenin +acetophenine +acetophenone +acetopyrin +acetose +acetosity +acetosoluble +acetotoluide +acetous +acetoxime +acetoxyl +acetphenetid +acetract +acettoluide +acetum +aceturic +acetyl +acetylamine +acetylate +acetylation +acetylator +acetylbiuret +acetylenic +acetylenyl +acetylic +acetylide +acetyliodide +acetylizable +acetylize +acetylizer +acetylphenol +acetylsalol +acetyltannin +acetylthymol +acetylurea +acevedo +aceves +acewaio +acey +acfcluster +acfis +acfp +acfpatterns +acfplot +acftu +achaean +achaemenian +achaemenid +achaemenidae +achaenodon +achaeta +achaetous +achage +achagua +achaia +achaicus +achakzai +achal +achalasia +achalta +achamma +achamoth +achan +achang +achango +achanti +achar +achard +achariaceae +achariaceous +acharnement +acharya +acharyya +achate +achates +achatina +achatinella +achatinidae +achawa +achaz +achbor +achcar +ache +ached +achehnese +acheilia +acheilous +acheiria +acheirous +acheirus +achen +achene +achenes +achenial +achenium +achenocarp +achenodium +acher +achernar +acheron +acheronian +acherontic +acherontical +aches +acheson +achete +achetidae +acheulean +acheweed +achham +achi +achick +achier +achiest +achievable +achieve +achieved +achievement +achievements +achiever +achievers +achieves +achieving +achigan +achik +achilary +achill +achillas +achille +achillea +achillean +achilleid +achilleine +achilles +achillize +achillodynia +achim +achime +achimenes +achinese +achiness +aching +achingly +achipa +achipanchi +achipawa +achira +achish +achitophel +achive +achkar +achlamydate +achlamydeae +achlamydeous +achlo +achlorhydria +achloropsia +achmad +achmed +achmetha +acho +achode +acholi +acholia +acholic +acholoe +acholous +acholuria +acholuric +achomawi +achondrite +achondritic +achoo +achor +achordal +achordata +achordate +achorion +achras +achree +achroacyte +achroanthes +achrodextrin +achroglobin +achroite +achroma +achromacyte +achromasia +achromat +achromate +achromatin +achromatinic +achromatism +achromatium +achromatize +achromatope +achromatopia +achromatopsy +achromatosis +achromatous +achromats +achromaturia +achromia +achromic +achromoderma +achromous +achronical +achroous +achropsia +achsa +achsah +achshaph +achtehalber +achtel +achtelthaler +achternbusch +achtman +achtung +achtzehn +achual +achuale +achuar +achuara +achuas +achumawi +achung +achy +achylia +achylous +achymia +achymous +achyranthes +achyrodes +achzib +acichloride +aciclo +acicula +acicular +acicularly +aciculate +aciculated +aciculum +acid +acidalia +acidanthera +acidaspis +acidemia +acider +acidhead +acidheads +acidiferous +acidifiable +acidifiant +acidific +acidified +acidifier +acidifiers +acidifies +acidify +acidifying +acidimeter +acidimetric +acidimetry +acidite +acidities +acidity +acidize +acidly +acidman +acidness +acidoid +acidology +acidometer +acidometry +acidophile +acidophilic +acidophilous +acidophilus +acidoses +acidosis +acidotic +acidproof +acids +acidulate +acidulated +acidulates +acidulating +acidulation +acidulent +acidulously +aciduric +acidy +acidyl +acier +acierage +acieral +acierate +acieration +aciform +aciliate +aciliated +acilio +acilius +acilowe +acinaceous +acinaces +acinaciform +acinaform +acinar +acinarious +acinary +acineta +acinetae +acinetan +acinetaria +acinetarian +acinetic +acinetiform +acinetina +acinetinan +acing +acinic +aciniform +acinose +acinotubular +acinous +acinus +acipenser +acipenseres +acipenserid +acipenserine +acipenseroid +acira +acis +acito +aciurgy +ackaouy +ackbar +acked +ackenthorpe +acker +ackerbody +ackerhead +ackeridge +ackerly +ackerman +ackermann +ackernum +ackeroptlev +ackers +ackertabbody +ackertabhdr +ackertabhead +ackertabnum +ackertop +ackey +ackland +ackles +acklin +acklins +ackman +acknow +acknowledge +acknowledged +acknowledger +acknowledges +ackridge +ackroyd +acks +ackva +ackwood +ackworth +acland +aclastic +acle +acleidian +acleistous +aclemon +aclidian +aclinal +aclinic +aclm +acloud +aclu +aclys +acmaea +acmaeidae +acmatic +acmes +acmesthesia +acmetonia +acmic +acmispon +acmite +acne +acned +acneform +acneiform +acnemia +acnes +acnida +acnodal +acnode +acns +acocanthera +acocantherin +acock +acockbill +acocotl +acoela +acoelomata +acoelomate +acoelomatous +acoelomi +acoelomous +acoelous +acoemetae +acoemeti +acoemetic +acoff +acoin +acoine +acolapissa +acold +acolhua +acolhuan +acoli +acologic +acology +acolothyst +acolous +acoluthic +acolyte +acolytes +acolyth +acolythate +acoma +acome +acomia +acommand +acomous +acon +aconative +aconcagua +acondylose +acondylous +acone +aconic +aconin +aconine +aconital +aconite +aconites +aconitia +aconitic +aconitin +aconitine +aconitum +acontias +acontium +acontius +aconuresis +acooli +acopic +acopon +acopyrin +acopyrine +acor +acord +acorea +acores +acoria +acorn +acorned +acorns +acorus +acosh +acosmic +acosmism +acosmist +acosmistic +acosta +acotyledon +acouasm +acouchi +acouchy +acoumeter +acoumetry +acount +acouometer +acouophonia +acoupa +acousmata +acousmatic +acoustic +acoustical +acoustically +acoustician +acousticon +acoustics +acoy +acquaint +acquaintance +acquaintancy +acquaintant +acquainted +acquainting +acquaints +acquanetta +acquard +acquaviva +acqueous +acquest +acquiesce +acquiesced +acquiescence +acquiescency +acquiescer +acquiesces +acquiescing +acquiesence +acquirable +acquire +acquired +acquirement +acquirements +acquirenda +acquirer +acquirers +acquires +acquiring +acquisible +acquisite +acquisited +acquisition +acquisitions +acquisitor +acquisitum +acquist +acquisto +acquit +acquitment +acquits +acquittals +acquittance +acquitted +acquitter +acra +acrab +acracy +acraein +acraeinae +acraldehyde +acrania +acranial +acraniate +acrasia +acrasiaceae +acrasiales +acrasida +acrasieae +acraspeda +acraspedote +acratia +acraturesis +acrawl +acraze +acre +acreable +acreages +acreak +acream +acred +acredula +acree +acreman +acres +acrestaff +acridan +acrider +acridest +acridian +acridic +acrididae +acridiidae +acridine +acridinic +acridinium +acridities +acridity +acridium +acridly +acridness +acridone +acridonium +acridophagus +acridyl +acriflavin +acriflavine +acrimonies +acrimonious +acrindoline +acrinyl +acrisia +acrisius +acrita +acritan +acrite +acritical +acritol +acritude +acroa +acroama +acroamatic +acroamatical +acroamatics +acroasphyxia +acroataxia +acroatic +acrobat +acrobates +acrobatical +acrobatics +acrobatism +acrobats +acroblast +acrobryous +acrobystitis +acrocarpi +acrocarpous +acrocephalia +acrocephalic +acrocephaly +acrocera +acroceridae +acrochordon +acroclinium +acrocomia +acroconidium +acrocoracoid +acrocyanosis +acrocyst +acrodactylum +acrodont +acrodontism +acrodrome +acrodromous +acrodus +acrodynia +acroesthesia +acrogamous +acrogamy +acrogen +acrogenic +acrogenous +acrogenously +acrography +acrogynae +acrogynous +acrolein +acrolith +acrolithan +acrolithic +acroliths +acrologic +acrologism +acrologue +acrology +acromania +acromastitis +acromatic +acromegalia +acromegalic +acromegalies +acromegaly +acromelalgia +acrometer +acromial +acromicria +acromiohyoid +acromion +acromphalus +acromyodi +acromyodian +acromyodic +acromyodous +acromyotonia +acromyotonus +acron +acronarcotic +acroneurosis +acronical +acronically +acronyc +acronych +acronycta +acronyctous +acronym +acronymic +acronymize +acronymized +acronymous +acronyms +acronyx +acrook +acropathy +acropetal +acropetally +acrophobia +acrophonetic +acrophonic +acrophony +acropodium +acropoleis +acropolises +acropolitan +acropora +acrorhagus +acrorrheuma +acrosarc +acrosarcum +acroscopic +acrose +acrosome +acrospire +acrospore +acrosporous +across +acrostic +acrostical +acrostically +acrostichal +acrosticheae +acrostichic +acrostichoid +acrostichum +acrosticism +acrostics +acrostolion +acrostolium +acrotarsial +acrotarsium +acroteleutic +acroterial +acroteric +acroterium +acrotic +acrotism +acrotomous +acrotreta +acrotretidae +acrotrophic +acrress +acrux +acrydium +acryl +acrylic +acrylics +acrylyl +acrypt +acrz +acsc +acscsun +acscvax +acsedency +acss +acsu +acta +actability +actable +actaea +actaeaceae +actaeonidae +actc +acte +acted +actiad +actian +actic +actif +actification +actifier +actify +actin +actinal +actinally +actine +actinenchyma +acting +actings +actinia +actinian +actiniaria +actiniarian +actinically +actinides +actinidia +actiniferous +actiniform +actinine +actinism +actinistia +actiniums +actinoblast +actinobranch +actinocarp +actinocarpic +actinocrinid +actinocrinus +actinodrome +actinogram +actinograph +actinography +actinoid +actinoida +actinoidea +actinolitic +actinologous +actinologue +actinology +actinomere +actinomeric +actinometers +actinometric +actinometry +actinomorphy +actinomyces +actinomycete +actinomycin +actinomycoma +actinon +actinonema +actinophone +actinophonic +actinophore +actinophryan +actinophrys +actinopoda +actinopraxis +actinopteran +actinopteri +actinoscopy +actinosoma +actinosome +actinost +actinostomal +actinostome +actinotrocha +actinozoa +actinozoal +actinozoan +actinozoon +actinula +action +actionable +actionably +actional +actionary +actioner +actionize +actionless +actions +actionteam +actipylea +actium +activable +activate +activated +activates +activating +activation +activations +activator +activators +active +activehigh +activelow +actively +activeness +activeoffice +activeperl +actives +activex +activin +activisms +activist +activistic +activists +activital +activites +activities +activity +activize +actless +actnm +actomyosin +acton +actor +actorish +actors +actorship +actresses +acts +actu +actual +actualism +actualist +actualistic +actualities +actuality +actualize +actualized +actualizes +actualizing +actually +actualness +actuals +actualvalue +actuarially +actuarian +actuaries +actuary +actuaryship +actuated +actuates +actuating +actuation +actuator +actuators +acture +acturience +actutate +acua +acuaesthesia +acuan +acuate +acuation +acubens +acuclosure +acuductor +acuesthesia +acuff +acuities +aculea +aculeata +aculeate +aculeated +aculeiform +aculeolate +aculeolus +aculeus +aculo +acumens +acuminate +acuminated +acumination +acuminose +acuminous +acuminulate +acupress +acupressure +acupunctuate +acupuncture +acurative +acusd +acushla +acushnet +acutal +acutangular +acutate +acute +acutely +acutenaculum +acuteness +acuter +acutes +acutest +acutiator +acutifoliate +acutilinguae +acutilingual +acutilobate +acutiplantar +acutish +acutograve +acutonodose +acutorsion +acworth +acyanopsia +acyclically +acye +acyesis +acyetic +acyl +acylamido +acylamino +acylate +acylation +acylogen +acyloin +acyloxy +acyrological +acyrology +acystia +aczel +adabas +adabe +adactyl +adactylia +adactylism +adactylous +adad +adadah +adaga +adagency +adages +adagial +adagietto +adagios +adah +adai +adaiah +adair +adairsville +adairville +adaize +adal +adalat +adalbert +adalberta +adalberto +adalgisa +adalia +adaline +adam +adama +adamah +adamance +adamances +adamancies +adamancy +adamant +adamantean +adamantine +adamantinoma +adamantly +adamantoid +adamantoma +adamants +adamaoua +adamas +adamastor +adamawa +adambulacral +adamczyk +adamec +adamellite +adamhood +adami +adamic +adamical +adamically +adamine +adamira +adamite +adamitic +adamitical +adamitism +adamkowski +adamo +adamorobe +adamou +adamovska +adamowicz +adams +adamsbasin +adamsburg +adamscenter +adamsia +adamsite +adamski +adamsmills +adamson +adamsrun +adamss +adamsson +adamstown +adamsville +adamyk +adan +adana +adance +adang +adangbe +adangle +adangme +adani +adansonia +adanusa +adap +adapa +adapid +adapis +adapt +adaptability +adaptable +adaptably +adaptation +adaptational +adaptations +adaptative +adaptec +adapted +adaptedness +adapter +adapters +adapting +adaption +adaptional +adaptionism +adaptions +adaptitude +adaptive +adaptively +adaptiveness +adaptometer +adaptor +adaptorial +adaptors +adapts +adar +adara +adarawa +adare +adarene +adarme +adaru +adas +adasen +adashevsky +adat +adati +adatom +adaunt +adaut +adaw +adawe +adawi +adawlut +adawn +adaxial +aday +adays +adazzle +adbeel +adccp +adclus +adcock +adcon +adcons +adcox +adcraft +adda +addability +addable +addams +addan +addar +addasen +addax +addb +addd +addebted +added +addedly +addend +addends +addendum +adder +adderbolt +adderfish +adders +adderspit +adderwort +addeth +addetia +addf +addg +addh +addi +addia +addibility +addible +addicent +addict +addicted +addictedness +addicting +addiction +addictions +addictive +addictively +addictives +addicts +addie +addieville +addilog +addiment +adding +addinga +addington +addio +addis +addisababa +addison +addisonian +addisoniana +additament +addition +additional +additionally +additionary +additionist +additions +addititious +additively +additives +additivity +additory +additum +addiu +addl +addlebrain +addlebrained +addlecombe +addled +addlehead +addleheaded +addlement +addleness +addlepate +addlepated +addleplot +addles +addling +addlings +addlins +addo +addock +addoms +addon +addona +addons +addorsed +addp +addr +addrbody +addres +address +addressable +addressbook +addressed +addressee +addressees +addresser +addressers +addresses +addressful +addressing +addressor +addrest +addrmain +addrmode +addrsubj +addrsum +adds +addsa +addsnwesly +addsoft +addsome +addthe +addu +adduceable +adduced +adducent +adducer +adducers +adduces +adducible +adducing +adduct +adducted +adducting +adduction +adductive +adductor +adductors +adducts +adduu +addvax +addw +addweb +addy +addyston +adea +adead +adecimal +adedunvo +adeem +adeep +adeeyah +adejobi +adel +adela +adelaida +adelaide +adelanto +adelard +adelarthra +adelbert +adele +adelea +adeleidae +adelfo +adelges +adelgunde +adelheid +adeli +adelia +adelice +adelie +adelin +adelina +adelind +adelinda +adeline +adeling +adelita +adelite +adeliza +adell +adella +adelle +adelman +adelmo +adelocerous +adelochorda +adelocodonic +adelomorphic +adelopod +adelops +adelphi +adelphia +adelphian +adelphogamy +adelphoi +adelpholite +adelphophagy +adelson +adem +ademario +ademonist +ademprom +adempted +ademption +adena +adenalgia +adenalgy +adenanthera +adenase +adenasthenia +adendric +adendritic +adenectomy +adenectopia +adenectopic +adeney +adeni +adenia +adeniform +adenitis +adeniyi +adenization +adenoblast +adenocele +adenochrome +adenocyst +adenocystoma +adenodermia +adenodynia +adenofibroma +adenogenesis +adenogenous +adenographer +adenographic +adenography +adenoid +adenoidal +adenoidism +adenoiditis +adenoids +adenolipoma +adenological +adenology +adenomalacia +adenomatome +adenomatous +adenomycosis +adenomyoma +adenomyxoma +adenoncus +adenoneural +adenoneure +adenopathy +adenophora +adenophore +adenophorous +adenophyma +adenopodous +adenosarcoma +adenose +adenosis +adenostoma +adenotome +adenotomic +adenotomy +adenotyphoid +adenotyphus +adenyl +adenylic +adeodatus +adeology +adeona +adephaga +adephagan +adephagia +adephagous +adept +adepter +adeptest +adeptly +adeptness +adepts +adeptship +adeptxbbs +adequacies +adequate +adequately +adequateness +adequation +adequative +ader +adere +aderhold +aderinya +adermia +adermin +ades +adespotic +adessenarian +adeste +adet +adevaroh +adevcomp +adevcpp +adevida +adevism +adey +adfa +adfected +adfix +adflt +adfluxion +adgawan +adge +adger +adgered +adglutinate +adhackery +adhafera +adhaka +adham +adhamant +adhara +adharma +adhem +adhere +adhered +adherence +adherences +adherency +adherent +adherently +adherents +adherer +adherers +adheres +adherescence +adherescent +adhering +adhesional +adhesions +adhesively +adhesiveness +adhesives +adhiang +adhibit +adhibition +adhikari +adhikary +adhoc +adhocity +adhockery +adhok +adhola +adhortation +adhos +adhvaryu +adia +adiabolist +adiactinic +adiagnostic +adiake +adiana +adiangok +adiantiform +adiantum +adiaphanous +adiaphon +adiaphonon +adiaphoral +adiaphoresis +adiaphoretic +adiaphorism +adiaphorist +adiaphorite +adiaphoron +adiaphorous +adiarte +adiate +adiathermal +adiathermic +adiathetic +adiation +adib +adicea +adicity +adidas +adidition +adie +adiel +adiemus +adieus +adieux +adigalo +adige +adigei +adighe +adigranth +adija +adijaya +adik +adikimmu +adil +adilabad +adile +adim +adimari +adimin +adin +adina +adinf +adinida +adinidan +adino +adinole +adio +adion +adios +adioukrou +adipate +adipescent +adipinic +adipocele +adipocere +adipocerous +adipocyte +adipofibroma +adipogenic +adipogenous +adipoid +adipolysis +adipolytic +adipoma +adipomatous +adipometer +adipopexia +adipopexis +adipose +adiposeness +adiposis +adiposities +adiposity +adiposuria +adipous +adipsia +adipsic +adipsous +adipsy +adipyl +adis +adit +adital +adithaim +adits +aditus +aditya +adiutori +adivasi +adiwasi +adix +adiyaman +adiyan +adiye +adja +adjacency +adjacent +adjacently +adjag +adjangba +adjani +adjar +adjection +adjectional +adjectitious +adjectival +adjectivally +adjective +adjectively +adjectives +adjectivism +adjectivitis +adjei +adjer +adjiga +adjiger +adjio +adjoin +adjoined +adjoinedly +adjoining +adjoins +adjoints +adjora +adjoria +adjournal +adjourned +adjourning +adjournment +adjournments +adjourns +adjr +adjudgeable +adjudged +adjudger +adjudges +adjudging +adjudgment +adjudicated +adjudicates +adjudicating +adjudication +adjudicative +adjudicator +adjudicators +adjudicatory +adjudicature +adjukru +adjumba +adjunct +adjunction +adjunctive +adjunctively +adjunctly +adjuncts +adjuntas +adjuration +adjurations +adjuratory +adjure +adjured +adjurer +adjurers +adjures +adjuring +adjuror +adjurors +adjust +adjustable +adjustably +adjustage +adjustation +adjusted +adjuster +adjusters +adjusting +adjustive +adjustment +adjustments +adjustor +adjustors +adjusts +adjutage +adjutancy +adjutants +adjutantship +adjutorious +adjutorum +adjutory +adjutrice +adjuvandum +adjuvant +adjuvants +adke +adkibba +adkiller +adkinson +adkuri +adlai +adlakha +adlard +adlay +adler +adless +adlet +adlib +adlmsc +adlon +adlumia +adlumidine +adlumine +adly +admah +adman +admarginate +admatha +admaxillary +admeasure +admeasurer +admedial +admedian +admen +admete +admi +admin +adminicle +adminicula +adminicular +adminiculary +adminiculate +adminiculum +administer +administerd +administered +administers +administrant +admins +admirability +admirable +admirably +admiral +admirals +admiralship +admiralships +admiralties +admiralty +admiration +admirations +admirative +admirator +admire +admired +admiredly +admirer +admirers +admires +admiring +admiringly +admissable +admissible +admissibly +admission +admissions +admissive +admissory +admit +admitedly +admits +admittable +admittance +admittances +admitted +admittedly +admittee +admitter +admitters +admittible +admitting +admixed +admixes +admixing +admixt +admixtion +admixture +admixtures +admlration +admon +admonfaye +admonish +admonished +admonisher +admonishers +admonishes +admonishing +admonishment +admonition +admonitioner +admonitions +admonitive +admonitively +admonitor +admonitorial +admonitorily +admonitory +admonitrix +admsg +adna +adnah +adnan +adnascence +adnascent +adnate +adnation +adnephrine +adnerval +adneural +adnex +adnexal +adnexed +adnexitis +adnexopexy +adnominal +adnominally +adnomination +adnoun +adnrews +adobe +adobes +adoka +adolar +adole +adolesce +adolescence +adolescency +adolescent +adolescente +adolescently +adolescents +adolf +adolfie +adolfine +adolfo +adolph +adolphe +adolpho +adolphson +adom +adoma +adomian +adona +adonai +adonais +adonara +adonean +adong +adonia +adoniad +adonian +adonibezek +adonic +adonidin +adonijah +adonikam +adonin +adoniram +adonis +adonite +adonitol +adonize +adonizedec +adoor +adoperate +adoperation +adopt +adoptability +adoptable +adoptant +adoptative +adopted +adoptedly +adoptee +adoptees +adopter +adopters +adoptian +adoptianism +adoptianist +adopting +adoption +adoptional +adoptionism +adoptionist +adoptions +adoptious +adoptively +adopts +ador +adora +adorability +adorable +adorableness +adorables +adorably +adoraim +adoral +adorally +adoram +adorant +adorantes +adoration +adoratory +adore +adorea +adored +adoree +adorer +adorers +adores +adoretus +adorf +adoring +adoringly +adorn +adornato +adorne +adorned +adorner +adorners +adorneth +adorning +adorningly +adornment +adornments +adorno +adorns +adort +ados +adosculation +adossed +adoulaye +adoulie +adoum +adouma +adour +adowen +adown +adoxa +adoxaceae +adoxaceous +adoxography +adoxy +adoyo +adoze +adpao +adpcm +adpress +adpromission +adradial +adradially +adradius +adramelech +adrammelech +adramyttium +adrar +adraste +adrastea +adre +adrea +adread +adream +adreamed +adreamt +adrectal +adrenal +adrenalin +adrenalize +adrenalone +adrenals +adrenergic +adrenin +adrenine +adrenix +adrenne +adreno +adrenochrome +adrenolysis +adrenolytic +adrenotropic +adres +adresa +adress +adressbook +adressed +adressing +adri +adria +adriaansen +adriaens +adrian +adriana +adriane +adriani +adrianna +adrianne +adriano +adrie +adriel +adrien +adriena +adrienne +adrift +adrims +adrip +adroiter +adroitest +adroitly +adroitness +adrolepsy +adroop +adrop +adrostral +adrowse +adrp +adrs +adrue +adry +adsawa +adsbud +adscendent +adscititious +adscript +adscripted +adscription +adscriptive +adsessor +adsheart +adsignify +adsmith +adsmithing +adso +adsoa +adsorbable +adsorbates +adsorbed +adsorbent +adsorbents +adsorbing +adsorbs +adsorptively +adspeak +adstipulate +adstipulator +adterminal +adtevac +aduche +adul +adular +adularia +adulated +adulates +adulating +adulation +adulator +adulators +adulatory +adulatress +adullam +adullamite +adult +adulter +adulterant +adulterants +adulterated +adulterately +adulterates +adulterating +adulteration +adulterator +adulterators +adulterer +adulterers +adulteress +adulteresses +adulteries +adulterine +adulterio +adulterize +adulterous +adulterously +adultery +adulticidal +adulticide +adultism +adultly +adultness +adultoid +adultress +adults +adulyadej +aduma +adumbral +adumbrant +adumbrate +adumbrated +adumbrates +adumbrating +adumbration +adumbrations +adumbrative +adummim +adun +adunarea +adunc +aduncate +aduncated +aduncity +aduncous +adunu +adusk +adust +adustion +adustiosis +advaita +advance +advanceable +advanced +advancedness +advancement +advancements +advancer +advancers +advances +advancing +advancingly +advancive +advani +advantage +advantaged +advantageous +advantages +advantageth +advantaging +advatages +advection +advectitious +advective +advehent +advene +advenience +advenient +advent +advential +adventism +adventist +adventists +adventitia +adventive +advents +adventual +adventure +adventured +adventureful +adventurer +adventurers +adventures +adventuress +adventuring +adventurish +adventurous +adverbiality +adverbialize +adverbially +adverbiation +adverbs +advergothic +adversant +adversaria +adversarial +adversaries +adversarious +adversary +adversative +adversely +adverseness +adversities +adversity +adverted +advertence +advertency +advertent +advertently +adverting +advertisable +advertise +advertised +advertisee +advertiser +advertisers +advertises +advertising +advertize +advertized +advertizer +advertizes +advertizing +adverts +advice +adviceful +advices +advisability +advisably +advisal +advisatory +advise +advised +advisedly +advisedness +advisees +advisemement +advisement +advisements +adviser +advisers +advisership +advises +advising +advisive +advisiveness +advisor +advisories +advisorily +advisors +advisory +advocacies +advocate +advocated +advocates +advocateship +advocatess +advocating +advocation +advocator +advocatory +advocatress +advocatrice +advocatrix +advokat +advokata +advolution +advoutress +advoutry +advowee +advowson +advp +advt +adware +adwc +adwiper +adyaktye +adygei +adygey +adyghe +adynamia +adynamic +adynamy +adyoukrou +adyta +adyton +adytum +adyukru +adyukuru +adyumba +adzaneni +adze +adzer +adzera +adzerma +adzes +adzhimushkaj +adzooks +adzope +adzrac +aeacides +aeacus +aeaean +aecc +aechmophorus +aecial +aecidiaceae +aecidial +aecidioform +aecidiospore +aecidiostage +aecidium +aeciospore +aeciostage +aeciotelium +aecium +aeckerle +aecom +aedeagus +aedes +aedf +aedicula +aedile +aedileship +aedilian +aedilic +aedilitian +aedility +aedma +aedoeagus +aefald +aefaldness +aefaldy +aefauld +aegagropila +aegagropile +aegagrus +aegean +aegerian +aegeriid +aegeriidae +aegialitis +aegicrania +aegina +aeginetan +aeginetic +aegipan +aegirine +aegirinolite +aegirite +aegis +aegises +aegisthus +aegithalos +aegle +aegopodium +aegrotant +aegyptilla +aegyrite +aehlita +aeight +aeinstein +aeiou +aeiouyw +aeiouzc +aejauroh +aeka +aeke +aekyom +aelhswith +aeligature +aella +aelskade +aelst +aeluroid +aeluroidea +aelurophobe +aelurophobia +aeluropodous +aemilia +aems +aenach +aenahu +aendenboom +aendert +aenean +aeneas +aeneolithic +aeneous +aeng +aenigmatite +aenna +aennchen +aenne +aenon +aeolia +aeolian +aeolic +aeolicism +aeolid +aeolidae +aeolididae +aeolina +aeoline +aeolipile +aeolis +aeolism +aeolist +aeolistic +aeolodicon +aeolodion +aeolotropic +aeolotropism +aeolotropy +aeolsklavier +aeolus +aeon +aeonial +aeonian +aeonic +aeonist +aeons +aepli +aepryus +aepyceros +aepyornis +aequi +aequian +aequiculi +aequipalpia +aequoreal +aerage +aerarian +aerarium +aerated +aerates +aerating +aeration +aerations +aerator +aerators +aerea +aerenchyma +aeria +aerial +aerialist +aerialists +aeriality +aerially +aerialness +aerials +aeric +aerical +aerides +aerie +aeried +aeriel +aeriela +aeriell +aerier +aeries +aeriest +aerifaction +aeriferous +aerification +aerifiction +aerified +aerifies +aeriform +aerify +aerifying +aerily +aero +aeroacoustic +aerobate +aerobatic +aerobatics +aerobe +aerobes +aerobia +aerobian +aerobically +aerobics +aerobiologic +aerobiology +aerobion +aerobiont +aerobioscope +aerobiosis +aerobiotic +aerobious +aerobium +aeroboat +aerobrake +aerobraked +aerobraking +aerobranchia +aerobus +aerocamera +aerocharidae +aerocolpos +aerocraft +aerocurve +aerocyst +aerodone +aerodonetic +aerodonetics +aerodrome +aerodromes +aerodromics +aerodynamics +aerodyne +aeroembolism +aerofoil +aerofoils +aerogel +aerogels +aerogen +aerogenes +aerogenesis +aerogenic +aerogenous +aerogeology +aerognosy +aerogram +aerograms +aerograph +aerographer +aerographic +aerographics +aerography +aerogun +aerohydrous +aeroides +aerolattice +aerolite +aerolites +aerolith +aeroliths +aerolitic +aerolitics +aerologic +aerological +aerologist +aerologists +aerology +aeromancer +aeromancy +aeromantic +aeromarine +aerometer +aerometric +aerometry +aeromotor +aeronat +aeronatics +aeronaut +aeronautic +aeronautical +aeronautics +aeronautism +aeronauts +aeronaval +aeronef +aeroneurosis +aeropathy +aerope +aerophagia +aerophagist +aerophagy +aerophane +aerophile +aerophilic +aerophilous +aerophobia +aerophobic +aerophone +aerophor +aerophore +aerophysical +aerophysics +aerophyte +aeroplane +aeroplaner +aeroplanes +aeroplanist +aeropleustic +aeroporotomy +aeroran +aeroscepsis +aeroscepsy +aeroscope +aeroscopic +aeroscopy +aerose +aerosiderite +aerosmith +aerosol +aerosolize +aerosolized +aerosolizing +aerosols +aerospace +aerosphere +aerosporin +aerostat +aerostatic +aerostatical +aerostatics +aerostation +aerosteam +aerotactic +aerotaxis +aerotherapy +aerotropic +aerotropism +aeroyacht +aeruginous +aerugo +aery +aeschines +aeschylean +aeschylus +aeschynomene +aesculaceae +aesculaceous +aesculapia +aesculapian +aesculapius +aesculus +aesop +aesopian +aesopic +aesta +aestb +aestc +aestd +aestethic +aesthesia +aesthetes +aesthetic +aesthetical +aesthetician +aestheticism +aestheticist +aestheticize +aesthetics +aesthiology +aestii +aestivate +aestivated +aestivates +aestivating +aestsc +aeta +aeternam +aeternitas +aeternum +aethalioid +aethalium +aetheogam +aetheogamic +aetheogamous +aether +aethered +aetheric +aethers +aethionema +aethogen +aethra +aethrioscope +aethusa +aetian +aetiogenic +aetiology +aetiotropic +aetobatidae +aetobatus +aetolia +aetolian +aetomorphae +aetosaur +aetosaurian +aetosaurus +aevia +aface +afaced +afacing +afade +afadeh +afafc +afaint +afak +afakani +afal +afalc +afan +afanasev +afanasy +afanasyev +afanci +afande +afango +afansyev +afao +afar +afara +afaraf +afars +afast +afatime +afawa +afbf +afcc +afdb +afdecho +afear +afeard +afeared +afebrile +afem +afenil +afenmai +aferike +afernan +afes +afesd +afetal +afew +affa +affability +affable +affableness +affably +affabrous +affade +affaf +affair +affaire +affaires +affairs +affaite +affect +affectable +affectation +affectations +affected +affectedly +affectedness +affecter +affecters +affecteth +affectible +affecting +affectingly +affection +affectional +affectionate +affectioned +affections +affectious +affective +affectively +affectivity +affector +affects +affeer +affeerer +affeerment +affeir +affenspalte +afferently +affery +affettuoso +affff +affi +affianced +affiancer +affiances +affiancing +affiant +affiche +affidation +affidavit +affidavits +affidavy +affiliable +affiliate +affiliated +affiliates +affiliating +affiliation +affiliations +affinal +affination +affined +affinely +affinitative +affinite +affinities +affinition +affinitive +affinity +affirm +affirmable +affirmably +affirmance +affirmant +affirmation +affirmations +affirmatives +affirmatory +affirmed +affirmer +affirmers +affirming +affirmingly +affirms +affitti +affix +affixal +affixation +affixed +affixer +affixers +affixes +affixing +affixion +affixture +afflation +afflatus +afflick +afflict +afflicted +afflicter +afflictest +afflicting +afflictingly +affliction +afflictions +afflictive +afflictively +afflicts +affluently +affluentness +affluents +afflux +affluxes +affluxion +affolter +affonso +afforce +afforcement +afford +affordable +afforded +affording +affords +afforestable +afforested +afforesting +afforestment +afforests +afformative +affranchise +affray +affrayed +affrayer +affrayers +affraying +affrayment +affrays +affreight +affreighter +affricated +affricates +affrication +affricative +affriction +affright +affrighted +affrightedly +affrighter +affrightful +affrightment +affrights +affris +affronte +affronted +affrontedly +affronter +affronting +affrontingly +affrontive +affrontment +affronts +affuse +affusion +affusions +affy +afganistan +afghan +afghanayi +afghani +afghanis +afghanistan +afghans +afghantsy +afghanussr +afgl +aficionados +afif +afifi +afikomen +afikpo +afinstd +afip +afire +afisc +afishe +afishi +afit +afitnet +afitti +afive +afizarek +afkabiye +afkareti +afke +afkham +aflagellar +aflare +aflat +aflatoxin +aflaunt +aflc +aflex +aflicker +aflight +aflmc +aflow +aflower +afluking +aflush +aflutter +afmpc +afoam +afoot +afore +aforehand +aforenamed +aforetime +aforetimes +aforit +aformin +aforo +afortiori +afotec +afoul +afour +afra +afraid +afraidness +aframerican +afrasia +afrasian +afreet +afreets +afresh +afret +afriat +afric +africa +africaine +africaines +african +africana +africander +africanism +africanist +africanistes +africanize +africanoid +africans +afridi +afrika +afrikaaner +afrikaaners +afrikaans +afrikander +afrikaner +afrikanskoy +afrike +afrique +afrit +afrits +afro +afroarab +afroasian +afroasiatic +afrochinese +afrodite +afroeast +afroeuropean +afrogaea +afrogaean +afromalagasy +afront +afros +afroseminole +afrown +afrpl +afrts +afsar +afsc +afshah +afshar +afshari +afsoomaali +afstat +aftaba +aftac +aften +after +afteract +afterage +afterasm +afterattack +afterband +afterbeat +afterbirth +afterbirths +afterblow +afterbody +afterbrain +afterbreach +afterbreast +afterburden +afterburn +afterburner +afterburners +afterburning +aftercare +aftercareer +aftercast +aftercause +afterchance +afterchrome +afterchurch +afterclap +afterclause +aftercome +aftercomer +aftercoming +aftercooler +aftercost +aftercourse +aftercrop +aftercure +afterdamp +afterdate +afterdays +afterdeck +afterdecks +afterdinner +afterdrain +afterdrops +aftereffects +afterend +afterentry +afterexpand +aftereye +afterfall +afterfame +afterfeed +afterform +afterfriend +afterfruits +afterfuture +aftergame +aftergas +afterglide +afterglow +afterglows +aftergo +aftergood +aftergrass +aftergrave +aftergrief +aftergrind +aftergrowth +afterguard +afterguns +afterhand +afterharm +afterhatch +afterhelp +afterhend +afterhold +afterhope +afterhours +afterimage +afterimages +afterings +afterking +afterlife +afterlight +afterlinking +afterlives +afterloss +afterlove +aftermark +aftermarket +aftermass +aftermast +aftermath +aftermaths +aftermatter +aftermeal +aftermilk +aftermost +afternight +afternoon +afternoons +afternose +afternote +afteroar +afterpain +afterpart +afterpast +afterpeak +afterpiece +afterplay +afterproof +afterrake +afterreorg +afterrider +afterroll +afters +aftersale +afterschool +aftersend +aftershaft +aftershafted +aftershave +aftershaves +aftershine +aftership +aftershock +aftershocks +aftersong +aftersound +afterspeech +afterspring +afterstain +afterstate +afterstep +afterstepa +afterstorm +afterstrain +afterstretch +afterstudy +afterswarm +afterswell +aftertan +aftertask +aftertaste +aftertastes +afterthinker +afterthrift +aftertime +aftertimes +aftertouch +aftertrial +afterturn +aftervision +afterwale +afterwar +afterward +afterwards +afterwash +afterwhile +afterwisdom +afterwise +afterwit +afterwitted +afterwords +afterwork +afterworking +afterworld +afterwrath +afterwrd +afterwrist +aftmost +aftnbink +aftncrazy +aftnged +aftnmisc +aftnmmed +afton +aftonian +aftosa +aftward +aftwards +afughe +afunata +afunction +afunctional +afusare +afutu +afvr +afwal +afwillite +afwl +afyon +afzal +afzelia +agaalenbold +agababyan +agabanee +agabus +agacante +agace +agacella +agacerie +agaces +agade +agadem +agadez +agadi +agadir +agag +agagite +agaielapai +again +againily +agains +against +againstand +agaisnt +agajani +agal +agala +agalactia +agalactic +agalactous +agalawood +agalaxia +agalaxy +agalega +agalena +agalenidae +agalinis +agalite +agalloch +agallochium +agallochum +agallop +agalma +agalmatolite +agalwood +agam +agama +agamae +agamas +agamemmon +agamemnon +agamete +agami +agamian +agamic +agamically +agamid +agamidae +agamist +agamobium +agamogenesis +agamogenetic +agamogony +agamoid +agamont +agamoru +agamospore +agamous +agamy +agana +aganglionic +aganice +aganippe +aganist +agao +agaonidae +agapae +agapanthus +agape +agapeic +agapemone +agapemonian +agapemonist +agapemonite +agapetae +agapeti +agapetid +agapetidae +agapornis +agar +agarabe +agarabi +agaraiwa +agard +agardy +agari +agaric +agaricaceae +agaricaceous +agaricales +agaricic +agariciform +agaricin +agaricine +agaricoid +agarics +agaricus +agaristidae +agarita +agariya +agars +agarum +agarwal +agasandyan +agasp +agassiz +agastache +agastreae +agastric +agat +agata +agate +agates +agateware +agatha +agathaea +agathaumas +agathe +agathin +agathis +agathism +agathist +agathodaemon +agathology +agathon +agathosma +agatiferous +agatiform +agatine +agatize +agato +agatoid +agats +agatu +agaty +agau +agauss +agaves +agavose +agavotokueng +agaw +agawam +agay +agaz +agaze +agazed +agba +agbaragba +agbarho +agbawi +agbayani +agbiri +agbo +agbodome +agbokum +agbor +agboro +agbotandu +agboville +agcenturion +agcoopertino +agcrown +agcrownstyle +agdistis +ageadjusted +agean +aged +agedependent +agedly +agedness +agee +ageer +ageing +ageings +ageir +ageism +ageist +ageists +agelaius +agelaus +ageless +agelessly +agelessness +agelia +agelong +agematsu +agen +agena +agence +agencies +agency +agenda +agendas +agendum +agendums +agenesia +agenesic +agenesis +agenia +agennetic +agenor +agenore +agensoe +agent +agente +agentess +agential +agentival +agentive +agentry +agents +agentship +ageofonset +ageold +ageometrical +ager +ageratum +ageratums +agerlep +agerloo +agers +agert +ages +agespecific +ageusia +ageusic +ageustia +agewmidir +agfa +aggalleon +aggarwal +agger +aggerate +aggeration +aggerose +aggi +aggie +aggies +agglomerant +agglomerate +agglomerated +agglomerates +agglomeratic +agglomerator +aggloria +agglutinable +agglutinant +agglutinated +agglutinates +agglutinator +agglutinins +agglutinize +agglutinogen +agglutinoid +agglutogenic +aggnes +aggradation +aggrade +aggrandize +aggrandized +aggrandizer +aggrandizers +aggrandizes +aggrandizing +aggrate +aggravable +aggravated +aggravates +aggravating +aggravation +aggravations +aggravative +aggravator +aggregable +aggregant +aggregata +aggregatae +aggregate +aggregated +aggregately +aggregates +aggregating +aggregation +aggregations +aggregative +aggregator +aggregatory +aggress +aggressed +aggresses +aggressin +aggressing +aggression +aggressions +aggressive +aggressively +aggressor +aggressors +aggrievance +aggrieved +aggrievedly +aggrievement +aggrieves +aggrieving +aggroup +aggroupment +aggry +agguato +aggur +aggy +aggzent +agha +aghan +aghanee +agharia +aghas +aghastness +aghem +aghi +aghili +aghlabite +aghorapanthi +aghori +aghu +aghul +aghulshuy +aghumsa +agialid +agian +agianst +agib +agiba +agiel +agilawood +agile +agilely +agileness +agiletp +agilities +agility +agillawood +agily +agim +agin +aging +agings +agio +agiotage +agiryama +agis +agist +agistator +agistment +agistor +agists +agitable +agitant +agitated +agitatedly +agitates +agitating +agitation +agitational +agitationist +agitations +agitative +agitato +agitator +agitatorial +agitators +agitatrix +agitprop +agitprops +agius +agiven +agiyan +agkistrodon +agla +aglaia +aglaja +aglance +aglaonema +aglaos +aglaozonia +aglare +aglaspis +aglauros +agleaf +aglee +aglega +aglet +aglethead +aglets +agley +aglimmer +aglint +aglipayan +aglipayano +aglitter +aglobulia +aglossa +aglossal +aglossate +aglossia +aglow +aglucon +aglutition +aglyamoff +aglycosuric +aglypha +aglyphodont +aglyphodonta +aglyphous +agmatine +agmatology +agmelanie +agminate +agminated +agna +agnagan +agnail +agname +agnamed +agnang +agnano +agnate +agnatha +agnathia +agnathic +agnathous +agnatic +agnatically +agnation +agnel +agnella +agnes +agnese +agness +agnesse +agneta +agnettools +agnew +agni +agnia +agnieska +agnieszka +agnification +agnihotri +agniola +agnition +agnize +agnizing +agnoetae +agnoete +agnoetism +agnoiology +agnoite +agnola +agnoll +agnomical +agnominal +agnomination +agnosia +agnosis +agnostically +agnosticism +agnostics +agnostus +agnosy +agnotozoic +agnus +agob +agog +agoge +agogic +agogics +agoho +agoi +agoing +agolok +agoma +agomensin +agomes +agomphiasis +agomphious +agomphosis +agon +agona +agonal +agone +agoniada +agoniadin +agoniatite +agoniatites +agonic +agonied +agonies +agonise +agonised +agonises +agonism +agonist +agonista +agonistarch +agonistic +agonistics +agonists +agonium +agonize +agonized +agonizedly +agonizer +agonizes +agonizing +agonizingly +agonostomus +agonothete +agonothetic +agons +agony +agood +agora +agorae +agoranome +agoraphobia +agoraphobic +agoras +agoria +agorot +agoshkova +agostadero +agosti +agostina +agostini +agostino +agou +agouara +agouisiri +agourahills +agouta +agouties +agoutis +agouty +agpaite +agpaitic +agpalatial +agpresquire +agps +agra +agraffee +agrah +agrajag +agral +agram +agrame +agrammatical +agrammatism +agrandi +agrania +agranulocyte +agrapha +agraphia +agraphic +agrarianism +agrarianize +agrarianly +agrarians +agrauleum +agre +agreat +agree +agreeability +agreeable +agreeably +agreed +agreedupon +agreeing +agreeingly +agreement +agreements +agreer +agreers +agrees +agreeth +agregar +agregation +agrege +agren +agrenenov +agrep +agressive +agrestal +agresti +agrestial +agrestian +agrestic +agrestis +agretha +agreverence +agri +agria +agric +agricere +agricole +agricolist +agricolite +agricolous +agricultor +agricultural +agriculture +agriculturer +agricultures +agrihan +agrilus +agrimonia +agrimotor +agrin +agriochoerus +agriological +agriologist +agriology +agrionia +agrionid +agrionidae +agriotes +agriotypidae +agriotypus +agrippa +agrippina +agrise +agrito +agro +agroan +agrobased +agrobiologic +agrobiology +agrogeology +agrologic +agrological +agrology +agrom +agromyza +agromyzid +agromyzidae +agronome +agronomial +agronomic +agronomical +agronomics +agronomies +agronomist +agronomists +agronomy +agroof +agrope +agropyron +agrostemma +agrosteral +agrostis +agrostologic +agrostology +agrotechny +agrotis +aground +agrufe +agruif +agry +agrypnia +agrypnotic +agsam +agsi +agsouvenir +agsun +agta +agtbasic +agterberg +agua +aguacate +aguacateca +aguacateco +aguada +aguadilla +aguadulce +aguajun +agualinda +aguanga +aguano +aguanu +aguardiente +aguarico +aguaruna +aguas +aguasbuenas +aguavina +aguaytia +agudat +agudist +agudo +ague +aguecheek +agueev +aguelike +agueproof +aguerro +agues +agueweed +aguey +agufi +aguglia +aguiar +aguila +aguilar +aguilarite +aguilawood +aguillar +aguillon +aguinaldo +aguinsky +aguirage +aguirre +aguish +aguishly +aguishness +agul +agulis +aguly +aguna +agunaco +agunah +agunda +agung +aguntina +agur +agural +agurial +aguro +agusan +agush +agust +agusta +agusti +agustin +agustinas +agutaya +agutaynen +agutayno +agutaynon +agutter +agwaguna +agwagwune +agwana +agwara +agwarra +agwatashi +agweagwa +agwok +agwolok +agwot +agyieus +agynarious +agynary +agynous +agyrate +agyria +agzeppelin +ahaaina +ahab +ahad +ahafo +ahaggaren +ahahaha +ahahnelin +ahamb +ahan +ahandlerfor +ahankara +ahanta +ahantchuyuk +ahar +aharah +aharhel +ahariolation +aharon +ahartalav +ahasa +ahasai +ahasbai +ahasuerus +ahaunch +ahava +ahaz +ahaziah +ahban +ahchan +ahchoo +ahdieh +ahead +aheap +ahearn +ahearne +aheave +aheima +ahelp +ahems +ahenkro +ahepatokla +aher +ahern +aherne +ahet +ahev +aheve +ahey +ahgwahching +ahhahhaa +ahhh +ahhhh +ahiah +ahiam +ahian +ahiden +ahiezer +ahihud +ahijah +ahikam +ahilud +ahimaaz +ahiman +ahimelech +ahimoth +ahimsa +ahimsas +ahinadab +ahind +ahinoam +ahint +ahio +ahir +ahira +ahiram +ahiramites +ahirani +ahiri +ahisamach +ahishahar +ahishar +ahithophel +ahitophel +ahitub +ahizi +ahka +ahkali +ahkcus +ahlab +ahlai +ahlberg +ahlehaqq +ahlers +ahlo +ahlon +ahlonbogo +ahlstadt +ahlsted +ahlstedt +ahluwalia +ahmad +ahmadi +ahmadiya +ahmadu +ahmadzai +ahmar +ahme +ahmed +ahmeek +ahmet +ahna +ahndist +ahnert +ahnfeltia +ahoada +ahoah +ahohite +aholah +ahold +aholiab +aholibah +aholibamah +aholio +ahom +ahong +ahonlan +ahorse +ahorseback +ahoskie +ahost +ahousaht +ahras +ahrends +ahrens +ahrensa +ahriman +ahrimanian +ahrteeefem +ahrteeem +ahrteeie +ahsahka +ahsan +ahsanullah +ahtena +ahti +ahtna +ahuachapan +ahuajun +ahuaruna +ahuatempan +ahuatle +ahuehuete +ahuja +ahull +ahum +ahumai +ahungered +ahungry +ahunt +ahura +ahus +ahush +ahuzam +ahuzzath +ahvenanmaa +ahvheigh +ahwahnee +ahwal +ahypnia +aiadmk +aiah +aian +aias +aiath +aiawong +aibondeni +aibonito +aica +aicha +aicher +aichi +aichmophobia +aicomplete +aida +aidable +aidamina +aidan +aidance +aidant +aidarous +aide +aided +aidedecamp +aideen +aiden +aidenn +aider +aiders +aides +aideth +aidful +aiding +aidless +aidman +aidmanmen +aidmen +aids +aidstest +aiduma +aiea +aiel +aiello +aiewomba +aiff +aiga +aigailetai +aigang +aight +aigialosaur +aigle +aiglet +aiglets +aiglos +aigneis +aigner +aigon +aigremore +aigret +aigrets +aigrette +aigrettes +aiguille +aiguillesque +aiguillette +aiguilletted +aiguillon +aigulet +aihacker +aihsun +aihui +aiighhh +aija +aijalon +aikana +aikane +aike +aiken +aikewara +aikido +aikidos +aikinite +aiko +aikoa +aiku +aikwakai +aikwe +aila +ailab +ailantery +ailanthic +ailanthuses +ailantine +ailanto +ailao +aile +ailed +ailee +aileen +ailene +ailerons +aileth +ailette +aileu +ailey +aili +ailie +ailina +ailing +ailis +ailleurs +aillt +ailment +ailments +ails +ailsun +ailsyte +ailuaki +ailuridae +ailuro +ailuroid +ailuroidea +ailurophobe +ailurophobia +ailuropoda +ailuropus +ailurus +ailweed +ailyn +aimag +aimags +aimak +aimaks +aimaq +aimara +aimarsen +aime +aimed +aimee +aimele +aimer +aimers +aimes +aimful +aimfully +aimi +aimil +aiming +aimini +aimless +aimlessly +aimlessness +aimm +aimol +aimoli +aimone +aimore +aimos +aims +aimsley +aimsto +aimwell +aina +ainaleh +ainaro +ainbai +aindrea +aine +ainhum +aini +ainley +aino +ainoi +ainsell +ainsi +ainslee +ainsley +ainslie +ainsworth +aint +ainus +aioec +aiome +aion +aionial +aira +airable +airampo +airan +airani +airbag +airbags +airbill +airbills +airboat +airboats +airborn +airborne +airbound +airbrained +airbrush +airbrushed +airbrushes +airbrushing +airbubble +airbuilt +airbursts +airbus +airbusses +aircheck +aircraft +aircraftman +aircrafts +aircraftsman +aircrew +aircrewman +aird +airdock +airdrome +airdromes +airdropped +airdropping +airdrops +aire +aired +airedale +airedales +airer +airers +aires +airest +airey +airfares +airfields +airflows +airfoils +airforce +airframes +airfreight +airfreighter +airgel +airglow +airgraphics +airhart +airhead +airheads +airhole +airier +airiest +airiferous +airified +airily +airiman +airiness +airing +airings +airish +airless +airlessly +airlessness +airlifted +airlifting +airlifts +airlike +airline +airliner +airliners +airlines +airlock +airlocks +airmailed +airmailing +airmails +airmanship +airmark +airmarker +airmati +airmics +airmobile +airmonger +airmont +airohydrogen +airoldi +airometer +airoran +airpart +airphobia +airplane +airplanes +airplanist +airport +airports +airpost +airproof +airproofed +airs +airscape +airschool +airscrew +airscrews +airship +airships +airsick +airsickness +airspaces +airspeeds +airstream +airstrip +airstrips +airt +airtank +airtight +airtightly +airtightness +airtrek +airville +airward +airwards +airwave +airwaves +airwayman +airways +airwind +airwolf +airwoman +airwomen +airworthier +airworthiest +airworthy +airy +airym +aisan +aise +aisen +aiseweed +aisgill +aisha +aisle +aisled +aisleen +aisleless +aisles +aisling +aiso +aisor +aissa +aissaoua +aissor +aissuari +aisteoir +aistopoda +aistopodes +aita +aitape +aitch +aitchbone +aitches +aitchison +aitchless +aitchpiece +aitd +aiter +aitesis +aithochroi +aithorized +aition +aitiotropic +aitken +aitkenite +aitkin +aitkins +aitolia +aitutaki +aitutakian +aiutami +aivax +aiwan +aiwanat +aiwin +aiwo +aiword +aixpub +aiya +aiyappan +aiye +aiyegunle +aizawa +aizi +aizle +aizoaceae +aizoaceous +aizoon +aizuare +ajaccio +ajagbe +ajagua +ajah +ajaja +ajak +ajalon +ajamaru +ajami +ajandek +ajangle +ajanji +ajari +ajatasatru +ajau +ajava +ajawa +ajax +ajay +ajaye +ajdabiya +ajee +ajeno +ajer +ajersch +ajhar +ajibba +ajie +ajiga +ajiri +ajit +ajita +ajiva +ajivika +ajjer +ajmal +ajman +ajmeri +ajog +ajoint +ajokoot +ajomang +ajong +ajowan +ajowans +ajoy +ajpo +ajtay +ajuga +ajuh +ajujure +ajukru +ajumba +ajur +ajuran +ajure +ajuru +ajutage +ajutment +ajvaz +akab +akaba +akababee +akababiwach +akabafa +akabea +akabeada +akabo +akabusi +akacari +akad +akademie +akadeth +akahira +akahsemuka +akai +akaike +akaikes +akajeru +akajo +akajuk +akaka +akakede +akakol +akakora +akal +akala +akalak +akali +akalimba +akamai +akamatsu +akamkpa +akamnik +akampka +akan +akanda +akanekunik +akangba +akani +akania +akaniaceae +akany +akaplass +akar +akara +akaraseni +akarbale +akarkhel +akarkus +akarnania +akaroa +akarore +akaruru +akasa +akasaka +akasele +akaselem +akashi +akaska +akassa +akau +akawai +akawaio +akawati +akayon +akaza +akazga +akazgine +akbar +akbas +akbulut +akca +akcheh +akdkiado +akeake +akebi +akebia +akebou +aked +akee +akei +akeki +akel +akele +akeley +akemi +aken +akenes +akenfield +akenobeite +akens +akepiro +aker +akerite +akern +akeroa +akerre +akers +akershus +akersten +akert +aketi +akey +akfm +akfmr +akha +akhaia +akhavan +akhdar +akheimar +akhenaton +akhissar +akhlame +akhmadullina +akhmarov +akhmatova +akhmimic +akhoe +akhoond +akhrot +akhtangul +akhtar +akhty +akhu +akhvakh +akhyana +akia +akiachak +akiak +akiapmin +akido +akie +akihiko +akihito +akiki +akiko +akil +akim +akimbo +akimov +akin +akindle +akinesia +akinesic +akinesis +akinete +akinetic +akins +akio +akira +akis +akit +akita +akium +akiumpare +akiva +akiyama +akiyenik +akiyo +akjuet +akka +akkad +akkadian +akkadist +akkerboom +akkermans +akkhusha +akkin +akkub +aklan +aklano +aklanon +akli +akmudar +akmuddar +aknee +aknot +akoasm +akoasma +akobo +akoerio +akoff +akoiyang +akoka +akoko +akokoedo +akokolemu +akola +akolet +akoli +akoluthia +akonge +akono +akonolinga +akontae +akonto +akoon +akoose +akori +akos +akosi +akosua +akoulalion +akoupe +akov +akovbyan +akoyi +akpa +akpafu +akpafulolobi +akpafuodomi +akpafutodzi +akpambe +akpanzhi +akparabong +akpayache +akpe +akpek +akpes +akpese +akpet +akpetehom +akpl +akpml +akposo +akposso +akpoto +akpwakum +akra +akrabattine +akrabbim +akram +akran +akranes +akrawi +akritas +akroasis +akrochordite +akron +akronvax +akroterion +akrukay +aksana +aksaray +aksel +akselerator +aksenov +aksent +akshay +aksnes +akst +aksu +akta +aktistetae +aktistete +aktivem +aktivismus +aktivist +akto +aktolga +aktorzy +aktuelle +aktuellste +akuammine +akuapem +akuapim +akue +akuku +akula +akule +akuliyo +akum +akunakuna +akund +akunnu +akurakura +akureyri +akuri +akurijo +akurio +akuriyo +akurmi +akurumi +akusha +akutagawa +akutan +akuwagel +akvavit +akvavits +akwa +akwaala +akwang +akwanga +akwapem +akwapi +akwapim +akwawa +akwaya +akweto +akweya +akwo +akyab +akye +akyem +akyode +akyurekli +akzhan +alab +alaba +alabalaba +alabam +alabama +alabaman +alabamians +alabamide +alabamine +alabandite +alabarch +alabaster +alabastos +alabastrian +alabastrine +alabastrites +alabastron +alabastrum +alabat +alabias +alacaluf +alacalufan +alacatlazala +alacha +alachua +alack +alackaday +alacon +alacran +alacreatine +alacrify +alacrities +alacritous +alactaga +alada +aladagbe +aladangady +aladdin +aladdinize +aladfar +aladian +aladin +aladinist +aladyan +alagappan +alagasta +alagbako +alagi +alagia +alagian +alago +alagoas +alagretti +alagwa +alahmad +alaihi +alaimo +alain +alaine +alaini +alaite +alajuela +alak +alakaman +alakanuk +alakazam +alakhdar +alaki +alakong +alala +alalao +alalapadu +alalau +alalite +alalonga +alalouf +alalunga +alalus +alam +alama +alaman +alamance +alamanni +alamannian +alamannic +alamatu +alamblak +alambuk +alameda +alamedas +alameth +alamin +alammelech +alamo +alamodality +alamode +alamodes +alamogordo +alamonti +alamos +alamosa +alamosite +alamota +alamoth +alan +alana +alanah +aland +alane +alangan +alangiaceae +alangin +alangine +alangium +alani +alanine +alanis +alaniz +alanna +alannah +alanoly +alanreed +alans +alanson +alante +alantic +alantika +alantin +alantol +alantolic +alanturing +alantz +alanyl +alapaha +alaquines +alar +alarbus +alarcon +alares +alari +alaria +alaric +alarie +alarm +alarmable +alarmclock +alarmed +alarmedly +alarming +alarmingly +alarmism +alarmisms +alarmist +alarmists +alarms +alarodian +alarum +alarumed +alaruming +alarums +alary +alas +alasai +alascan +alasdair +alases +alaska +alaskacanada +alaskaite +alaskan +alaskans +alaskas +alaskite +alaskluet +alassad +alastair +alaster +alastrim +alasu +alat +alataghwa +alate +alated +alatening +alatern +alaternus +alatesu +alatil +alatining +alation +alatorre +alattas +alauagat +alauda +alaudidae +alaudine +alaunian +alavi +alaw +alawa +alawi +alawic +alawite +alaya +alayaan +alayne +alaziz +alazreal +alba +albach +albacores +albahaca +albaicin +albainn +albajara +albalak +alban +albane +albanenses +albanensian +albanese +albania +albanian +albanians +albanite +albano +albanos +albans +albany +albanycs +albarco +albardine +albarello +albaret +albarium +albarn +albarradas +albashir +albasiny +albaspidin +albata +albatros +albatross +albatrosses +albay +albe +albea +albedo +albedograph +albedos +albee +albeit +albemarle +alberca +alberdeen +alberene +alberghetti +alberic +alberich +albern +alberni +albers +alberse +albert +alberta +albertazzi +albertcity +alberti +albertian +albertin +albertina +albertine +albertini +albertinian +albertist +albertite +albertlea +alberton +alberts +albertson +albertus +albertville +alberty +albertype +albery +albescence +albescent +albespine +albetad +albi +albia +albian +albicans +albicant +albication +albiculi +albie +albification +albificative +albiflorous +albify +albigenses +albigensian +albin +albina +albinal +albineri +albiness +albinic +albinism +albinisms +albinistic +albino +albinoism +albinos +albinotic +albinuria +albion +albireo +albiston +albite +albitic +albitite +albitization +albitophyre +albitskij +albizzia +albm +albo +albocarbon +albococcus +albocracy +alboin +albolite +albolith +albom +albopannin +albopruinose +alboranite +alborg +alborn +albottom +alboyna +albrecht +albright +albritton +albronze +albrook +albruna +albs +albtentac +albuca +albuginaceae +albuginea +albugineous +albuginitis +albugo +albuin +albulescu +album +albumean +albumen +albumenize +albumenizer +albumens +albumimeter +albuminate +albuminiform +albuminize +albuminoid +albuminoidal +albuminone +albuminose +albuminosis +albuminous +albumins +albuminuria +albuminuric +albumoid +albumoscope +albumose +albumosuria +albums +albuquerque +alburg +alburger +alburn +alburnett +alburnous +alburnum +alburtis +albury +albus +albutannin +alby +albyn +alca +alcaaba +alcae +alcaic +alcaid +alcaide +alcalde +alcaldes +alcaldeship +alcaldia +alcaligenes +alcalizate +alcalzar +alcamine +alcanir +alcanna +alcantara +alcantaranon +alcantarines +alcapone +alcaraz +alcarraza +alcatras +alcatraz +alcayde +alcazar +alcazars +alcedines +alcedinidae +alcedininae +alcedo +alcelaphine +alcelaphus +alceo +alcerro +alces +alcester +alchemic +alchemica +alchemical +alchemically +alchemies +alchemilla +alchemist +alchemistic +alchemistry +alchemists +alchemize +alchemy +alchera +alcheringa +alchimy +alchitran +alchochoden +alchornea +alchymies +alchymy +alcibiadean +alcibiades +alcicornium +alcidae +alcide +alcidine +alcine +alcinoe +alcippe +alcira +alclad +alco +alcoa +alcoate +alcock +alcogel +alcogene +alcohate +alcohol +alcoholate +alcoholature +alcoholdom +alcoholemia +alcoholic +alcoholicity +alcoholics +alcoholist +alcoholize +alcoholized +alcoholizing +alcoholmeter +alcohols +alcoholuria +alcoholysis +alcoholytic +alcolu +alcom +alcon +alconbry +alconbury +alcor +alcoran +alcoranic +alcoranist +alcoriza +alcornoco +alcornoque +alcos +alcosol +alcotate +alcott +alcova +alcoved +alcover +alcoves +alcuinian +alcutt +alcyon +alcyonacea +alcyonacean +alcyonaria +alcyonarian +alcyone +alcyones +alcyoniaceae +alcyonic +alcyoniform +alcyonium +alcyonoid +alda +aldabra +aldama +aldamine +aldan +aldane +aldas +aldazin +aldazine +aldea +aldeament +aldeans +aldebaranium +aldehol +aldehydase +aldehydes +aldehydic +aldehydine +aldehydrol +alden +aldena +aldenville +alder +alderamin +aldercreek +alderdice +alderfer +aldermanate +aldermancy +aldermaness +aldermanic +aldermanical +aldermanity +aldermanlike +aldermanly +aldermanry +aldermanship +aldern +alderney +alderpoint +alders +alderson +alderwoman +alderwomen +aldhafara +aldhafera +aldhizer +aldie +aldim +aldime +aldimine +aldin +aldine +aldinha +aldncf +aldo +aldoheptose +aldohexose +aldoketene +aldol +aldolfo +aldolization +aldolize +aldon +aldononose +aldopentose +aldor +aldose +aldoside +aldoukhov +aldous +aldoxime +aldredge +aldridge +aldrin +aldrins +aldrovanda +aldunx +aldus +alea +aleak +alealum +aleander +aleandro +aleatory +alebench +aleberry +alebion +alec +alecia +alecithal +alecize +alecki +aleconner +alecos +alecost +alecs +alecto +alectoria +alectorides +alectoridine +alectorioid +alectoris +alectrion +alectryon +alecup +aleda +aledo +aledore +alee +aleece +aleen +alef +alefnull +alefs +aleft +alefzero +alegar +alege +alegi +alegre +alehoof +alehouse +alehouses +aleinikov +aleinstein +alejandra +alejandre +alejandrina +alejandro +aleje +alejo +alekano +alekhin +aleknagik +aleko +aleksa +aleksandar +aleksander +aleksandr +aleksandrov +aleksandur +alekseev +aleksey +aleksic +alekto +alem +aleman +alemana +alemanni +alemannia +alemannian +alemannic +alemannish +alemanov +alembic +alembicate +alembics +alembroth +alemeth +alemite +alemmal +alemonger +alemu +alen +alena +alencon +alende +alene +aleng +alenka +alentours +aleochara +aleong +alepa +alepe +aleph +alephs +alephzero +alepidote +alepole +alepot +aleppine +aleppo +alerce +alere +alerme +alers +alerse +alert +alerted +alertedly +alerter +alerters +alertest +alerting +alertly +alertness +alerts +ales +alesan +alesana +alese +alesha +aleshin +aleshire +alessandra +alessandro +alestake +aleta +aletap +aletaster +aletha +alethea +aletheia +alethiology +alethopteis +alethoscope +aletocyte +aletris +aletta +alette +aletter +aleukemic +aleurites +aleuritic +aleurobius +aleurodes +aleurodidae +aleuromancy +aleurometer +aleuron +aleuronat +aleurone +aleuronic +aleuroscope +aleut +aleutian +aleutians +aleutic +aleutite +aleuts +alev +alevi +alevica +alevin +alewife +alewives +alex +alexa +alexan +alexana +alexander +alexanders +alexandr +alexandra +alexandrakis +alexandreid +alexandria +alexandrian +alexandrians +alexandridis +alexandrina +alexandrine +alexandrines +alexandrite +alexandro +alexandroff +alexandros +alexandrov +alexandrova +alexandrovna +alexandru +alexas +alexei +alexej +alexey +alexi +alexia +alexian +alexic +alexin +alexina +alexine +alexinic +alexipharmic +alexipyretic +alexis +alexiteric +alexiterical +alexius +alexix +alexson +alexy +aleyard +aleynikova +aleyrodes +aleyrodid +aleyrodidae +alfa +alfaje +alfalfa +alfalfas +alfano +alfaqui +alfaquin +alfardaws +alfarist +alfaro +alfas +alfaterna +alfendio +alfenide +alferova +alfet +alfi +alfie +alfier +alfieri +alfiero +alfilaria +alfileria +alfilerilla +alfilerillo +alfio +alfiona +alfirk +alfo +alfold +alfons +alfonse +alfonsi +alfonsin +alfonso +alfonsus +alfonzo +alford +alforja +alfrd +alfre +alfred +alfreda +alfredo +alfredtech +alfridaric +alfridary +alfur +alfurese +alfuro +alfven +alfy +algae +algaeologist +algaeology +algaesthesia +algaesthesis +algalia +algama +algan +algar +algaroth +algarroba +algarrobilla +algarrobin +algarsife +algarsyf +algas +algate +algebar +algebra +algebraical +algebraist +algebraists +algebraize +algebras +algeciras +algedi +algedo +algedonic +algedonics +algefacient +algergare +algeria +algerian +algerians +algerine +algernon +algesia +algesic +algesis +algesthesis +algetic +alghani +algharbi +alghero +algic +algicide +algicides +algid +algidity +algidness +algie +algieba +algiers +algific +algin +algina +alginates +algine +alginic +algins +alginuresis +algist +algivorous +algner +algoa +algocyan +algodon +algodoncillo +algodonite +algogenic +algoid +algolagnia +algolagnic +algolagnist +algolagny +algological +algologist +algology +algoma +algoman +algometer +algometric +algometrical +algometry +algomian +algomic +algona +algonac +algonkian +algonkin +algonquian +algonquians +algonquins +algood +algophilia +algophilist +algophobia +algor +algora +algorab +algores +algorism +algorismic +algorisms +algorist +algoristic +algorithm +algorithmic +algorithms +algosis +algot +algous +algout +algovite +algraphic +algraphy +algren +alguazil +alguire +algum +algunde +algy +alhagi +alhaji +alhalim +alhambra +alhambraic +alhambresque +alhawa +alhayat +alhed +alhena +alhenna +alhousseyni +alhucemas +alhuss +alhussaini +alia +aliab +aliah +alian +aliance +alianse +aliap +alias +aliase +aliased +aliases +aliasing +alibamu +alibangbang +alibert +alibied +alibies +alibiing +alibility +alibis +alibisi +alible +alibut +alica +alicant +alicante +alice +alicea +alices +aliceville +alichel +alichino +alicia +alick +alicoche +alictisal +alicyclic +alida +alidade +alidia +alidina +alids +alie +alief +alien +alienability +alienable +alienage +alienages +alienate +alienated +alienates +alienating +alienation +alienator +aliency +aliene +aliened +alienee +alienees +aliener +alieners +alienicola +alienigenate +aliening +alienism +alienisms +alienist +alienists +alienize +alienly +alienor +alienors +aliens +alienship +alieskine +aliethmoid +aliethmoidal +alif +aliferous +aliff +aliform +aligarh +aligerous +alight +alighted +alighting +alights +align +aligned +aligner +aligners +aligning +alignit +alignment +alignments +aligns +aligreek +alii +aliipoe +alik +alika +alike +alikee +alikeness +alikewise +alikhan +aliki +alikoski +alikuluf +alikulufan +alile +alilonghi +alim +alima +aliment +alimental +alimentally +alimentary +alimentation +alimentative +alimented +alimenter +alimentic +alimenting +alimentive +aliments +alimentum +alimonied +alimonies +alin +alina +alinasal +alinda +alinder +aline +alineation +alined +alinedes +alinement +aliner +aliners +alines +aling +alinga +alingar +alining +alink +alintatao +aliocha +aliofar +alione +alioth +aliou +alipata +aliped +alipterion +aliptes +aliptic +aliquant +aliquippa +aliquots +alis +alisa +alisande +alisary +alise +alised +aliseptal +alish +alisha +alisheng +alisier +alisik +alisma +alismaceae +alismaceous +alismad +alismal +alismales +alismataceae +alismoid +aliso +alison +alisonite +alisp +alisphenoid +alissa +alist +alister +alisun +alit +alite +aliter +alito +alitrunk +aliturgic +aliturgical +aliunde +aliutor +alive +aliveness +alivincular +aliwas +alix +alixe +aliya +aliyah +aliyu +aliza +alizabeth +alizarate +alizari +alizarine +alizarins +aljabir +aljoba +aljoshin +alka +alkabo +alkahest +alkahestic +alkahestica +alkahestical +alkaid +alkalal +alkalamide +alkalay +alkalemia +alkalescence +alkalescency +alkalescent +alkalic +alkalies +alkaliferous +alkalifiable +alkalify +alkaligen +alkaligenous +alkalimeter +alkalimetric +alkalimetry +alkalin +alkalinities +alkalinity +alkalinize +alkalinized +alkalinizes +alkalinizing +alkalinuria +alkalis +alkalise +alkalizable +alkalizate +alkalization +alkalize +alkalized +alkalizer +alkalizes +alkalizing +alkaloidal +alkaloids +alkalometry +alkalosis +alkalous +alkalurops +alkamin +alkamine +alkanes +alkanet +alkanna +alkannin +alkaphrah +alkapton +alkaptonuria +alkaptonuric +alkargen +alkarim +alkarsin +alkawari +alkekengi +alkenna +alkenyl +alkermes +alkes +alkeste +alkhums +alkide +alkies +alkin +alkine +alkire +alkis +alkmene +alkol +alkool +alkoran +alkoranic +alkoxide +alkoxy +alkoxyl +alky +alkyd +alkyds +alkyl +alkylamine +alkylate +alkylation +alkylene +alkylic +alkylidene +alkylize +alkylogen +alkyloxy +alkyls +alkyne +alla +allaaba +allabsorbing +allabuta +allactite +alladdin +alladian +alladyan +allaeanthus +allaert +allagir +allagite +allah +allahdin +allahs +allahsan +allahyar +allahyari +allain +allaire +allalinite +allam +allaman +allamanda +allamerican +allamotti +allamuchy +allan +alland +allang +allanite +allanitic +allantiasis +allantoic +allantoid +allantoidal +allantoidea +allantoidean +allantoidian +allantoin +allantoinase +allantois +allanturic +allar +allard +allardice +allardt +allardyce +allasch +allascii +allasia +allason +allassotonic +allative +allatrate +allaway +allayed +allayer +allayers +allaying +allaylis +allayment +allays +allbde +allbone +allbrecht +allbritton +allchina +allcolumns +alldevouring +alldredge +alle +allec +allecret +allectation +allective +allectory +alledonia +allee +alleen +alleene +alleg +allegan +allegany +allegations +allegator +allegeable +alleged +allegedly +allegement +alleger +allegers +alleges +alleghany +alleghenia +alleghenian +allegheny +allegiance +allegiances +allegiancy +allegiantly +alleging +allegorical +allegorie +allegories +allegorism +allegorist +allegorister +allegoristic +allegorists +allegorize +allegorized +allegorizer +allegorizing +allegory +allegra +allegre +allegresse +allegret +allegretti +allegretto +allegrettos +allegros +alleira +allelbows +alleles +allelic +allelism +allelomorph +allelopathy +allelotropic +allelotropy +alleluia +alleluias +alleluiatic +allelujah +alleman +allemande +allemontite +allen +allenarly +allenbury +allenby +allendale +allende +allendorf +allene +allengulfing +allenhurst +allenpark +allenport +allenspark +allensville +allentiac +allentiacan +allenton +allentown +allentuck +allenunwin +allenwere +allenwood +aller +allerby +allergen +allergenic +allergens +allergia +allergic +allergies +allergin +allergist +allergists +allergology +allerion +allerson +allerton +alles +allessio +allesthesia +alleu +alleva +alleviate +alleviated +alleviater +alleviaters +alleviates +alleviating +alleviation +alleviations +alleviative +alleviator +alleviators +alleviatory +alley +alleyed +alleyite +alleyne +alleys +alleyways +allfiles +allfix +allfixwc +allfours +allgood +allhallow +allhallowmas +allhallows +allheal +allheals +alli +alliable +alliably +alliaceae +alliaceous +alliana +alliance +alliancer +alliances +allianora +alliaria +allibert +allicampane +allice +allicholly +alliciency +allicient +allie +allied +allies +alligate +alligation +alligations +alligator +alligatored +alligators +allignment +allina +allindia +allineate +allineation +allionia +allioniaceae +alliot +allis +allisan +allision +allison +allisonpark +allissa +allister +alliteral +alliterated +alliterates +alliterating +alliteration +alliterative +alliterator +allium +alliums +allivalite +allix +allknowing +alllowercase +allman +allmouth +allnational +allness +allnight +allnighter +allnut +allo +allobroges +alloc +allocability +allocaffeine +allocatable +allocate +allocated +allocatee +allocates +allocating +allocation +allocations +allocative +allocator +allocators +allochetia +allochetite +allochezia +allochiral +allochirally +allochiria +allochroic +allochroite +allochroous +allocinnamic +allock +alloclase +alloclasite +allocldptr +allocochick +allocrotonic +allocryptic +allocute +allocution +allocutive +allocyanine +allodelphite +allodesmism +allodial +allodium +allods +alloeosis +alloeotic +alloerotic +alloerotism +allogamous +allogamy +allogene +allogeneity +allogeneous +allogenic +allograph +alloisomer +alloisomeric +allokinesis +allokinetic +allokurtic +allomerism +allomerous +allometric +allometry +allomo +allomorph +allomorphic +allomorphism +allomorphite +allomucic +allon +allonbachuth +allonomous +allons +allonsy +allonym +allonymous +allopath +allopathetic +allopathic +allopathies +allopathist +allopaths +allopathy +allopatric +allopatry +allopelagic +allophanates +allophane +allophanic +allophone +allophones +allophonic +allophyle +allophylian +allophylic +allophylus +allophytoid +alloplasm +alloplasmic +alloplast +alloplastic +alloplasty +alloploidy +allopsychic +alloquial +alloquialism +alloquy +allorhythmia +allorrhyhmia +allosaur +allosaurus +allose +allosematic +allosome +allosyndesis +allosyndetic +allot +alloted +allotee +allotelluric +allotheism +allotheria +allothigene +allothigenic +allothimorph +allothogenic +alloting +allotment +allotments +allotriuria +allotrope +allotropes +allotrophic +allotropical +allotropies +allotropism +allotropize +allotropous +allotropy +allotrylic +allots +allottable +allotted +allottee +allottees +allotter +allotters +allotype +allotypes +allotypic +allotypical +allouez +allover +allovers +allow +allowable +allowably +allowance +allowanced +allowances +allowancing +alloway +allowed +allowedat +allowedly +allower +alloweth +allowing +allowingyou +allows +allowyou +alloxan +alloxanate +alloxanic +alloxantin +alloxuraemia +alloxuremia +alloxuric +alloy +alloyage +alloyed +alloying +alloys +allozooid +allphaville +allport +allpress +allred +allright +alls +allscreen +allseed +allseeing +allshard +allsouls +allspice +allspices +allstairs +allsun +alltech +allthing +allthorn +alltogether +alltud +alluded +alludes +alluding +allunion +allure +allured +allurement +allurements +allurer +allurers +allures +alluring +alluringly +alluringness +allusion +allusions +allusively +allusiveness +alluvia +alluvial +alluvials +alluviate +alluviation +alluvion +alluvious +alluviums +alluvivia +alluviviums +allways +allweather +allwhere +allwhither +allwin +allwise +allwood +allwork +allworth +allworthy +allwyn +allx +ally +allyce +allying +allylamine +allylate +allylation +allylene +allylic +allyls +allyn +allynbacon +allys +allyson +alma +almacenter +almach +almaciga +almacigo +almada +almadia +almadie +almagor +almagra +almain +alman +almanac +almanack +almanacs +almandine +almandines +almandite +almashat +almassy +almasy +almata +almathera +almatson +almaviva +almayer +almaz +alme +almeda +almeddahim +almeida +almeidas +almeidina +almelda +almemar +almena +almeria +almerian +almeriite +almerinda +almeta +almeyda +almgren +almida +almightily +almightiness +almighty +almique +almira +almirah +almirante +almire +almner +almners +almo +almochoden +almodad +almohad +almohade +almohades +almoign +almolonga +almon +almond +almondlike +almonds +almondy +almoner +almoners +almonership +almonry +almont +almora +almoravid +almoravide +almoravides +almos +almost +almous +almquist +alms +almsa +almsdeed +almsdeeds +almsfolk +almsful +almsgiver +almsgiving +almshouse +almshouses +almsman +almsmen +almswoman +almucantar +almuce +almud +almude +almug +almuntasir +almuredin +almut +almuten +almyra +alna +alnage +alnager +alnagership +alnahayyan +alnaschar +alnascharism +alnein +alnico +alnicoes +alnilam +alniresinol +alnitak +alnitham +alniviridol +alnoite +alnoor +alnuin +alnus +alnutt +alnuwab +alnuwwab +aloadae +aloapam +alocasia +alochia +alod +alodial +alodialism +alodialist +alodiality +alodially +alodian +alodiary +alodium +alody +aloe +aloed +aloekoe +aloelike +aloemodin +aloeroot +aloes +aloesol +aloeswood +aloetic +aloetical +aloewood +aloff +alofi +aloft +alogia +alogian +alogical +alogically +alogism +alogy +alohas +aloi +aloid +aloin +alois +aloise +aloisia +aloisiite +aloisio +alok +aloma +alomancy +alomari +alomwe +alon +alone +aloneness +along +alongshore +alongside +alongst +aloni +alonso +alonsoa +alonzo +aloof +aloofly +aloofness +aloose +alop +alopecia +alopecias +alopecic +alopecist +alopecoid +alopecurus +alopeke +alopias +alopiidae +alor +alora +alorese +aloro +alosa +alose +alot +alotau +alotenango +aloth +alouatta +alouatte +aloud +alouette +alow +alowe +aloxite +aloys +aloyshina +aloysia +aloysius +alpaca +alpacas +alpar +alparslan +alpaslan +alpasotes +alpaugh +alpax +alpay +alpeen +alpen +alpena +alpenglow +alpenhorn +alpenhorns +alpenstocker +alpenstocks +alper +alperovich +alpes +alpestral +alpestrian +alpestrine +alpg +alph +alpha +alphabet +alphabeted +alphabetic +alphabetical +alphabetics +alphabetism +alphabetist +alphabetize +alphabetized +alphabetizer +alphabetizes +alphabets +alphaeus +alphan +alphand +alphans +alphanumic +alphard +alpharetta +alphas +alphatoluic +alphaville +alphean +alphecca +alphen +alphenic +alphitomancy +alphol +alphonist +alphonsina +alphonsine +alphonsism +alphonso +alphonz +alphorn +alphorns +alphos +alphosis +alphyl +alpian +alpid +alpieu +alpigene +alpine +alpinely +alpinery +alpines +alpinesque +alpinia +alpiniaceae +alpinism +alpinisms +alpinist +alpinists +alpist +alpoca +alps +alptraum +alpuente +alpujarra +alqadhafi +alqosh +alqueire +alquier +alquifou +alquist +alqusaybi +alraun +alraune +alreadiness +already +alred +alrick +alright +alrighty +alroot +alruna +alsaadi +alsabah +alsabahi +alsace +alsalala +alsaleh +alsalim +alsatia +alsbachite +alscal +alschmitt +alsea +alsen +alsertine +alsey +alshaab +alshabout +alshain +alshanfari +alshihuh +alshura +alsina +alsinaceae +alsinaceous +alsine +alsiyayli +alska +also +alsogaray +alsohas +alsoon +alsop +alsophila +alsoran +alsotest +alspaugh +alstead +alstede +alstine +alston +alstonia +alstonidine +alstonine +alstonite +alstroemeria +alstyne +alsudan +alsweill +alswiti +alta +altadena +altadonna +altaf +altagracia +altai +altaian +altaic +altaid +altaikizhi +altair +altaira +altaite +altaj +altaloma +altamahaw +altamira +altamirano +altamont +altan +altar +altarage +altared +altariba +altarist +altarlet +altarpiece +altarpieces +altars +altarwise +altas +altavista +altay +altazimuth +altbug +altdorf +alte +alteen +altekar +altena +altenburg +altenhaus +altenkerken +alter +alterability +alterable +alterably +alterant +alterants +alterating +alteration +alterations +alterative +alteratively +altercated +altercating +altercation +altercations +altercative +altered +alteregoism +alterer +alterers +altereth +altering +alterio +alterity +altermann +altermen +alternacy +alternance +alternant +alternaria +alternariose +alternate +alternated +alternately +alternates +alternating +alternation +alternations +alternative +alternatives +alternator +alternators +alterne +alternity +alternize +alters +altfaq +altfeed +altgr +altgraph +altha +althaea +althaein +althaus +althea +altheimer +althein +altheine +althene +altherr +althing +althionic +altho +althoff +althome +althorn +althorns +although +althought +altica +alticamelus +altigraph +altilik +altiloquence +altiloquent +altimeter +altimeters +altimetrical +altimetry +altimirano +altin +altincar +altinfo +altingiaceae +altininck +altiplano +altiris +altiscope +altisonant +altisonous +altissimo +altitude +altitudes +altitudinal +altman +altmann +altmar +altmark +altmode +alto +altoadige +altogeher +altogether +altometer +altona +altonbay +altoona +altop +altopass +altorilievo +altorivievo +altos +altoun +altovice +altovise +altproducts +altrices +altrichter +altricial +altro +altropathy +altrose +altruism +altruisms +altruistic +altruists +altschin +altschul +altscore +altsub +altun +altunsub +altuntas +altura +alturas +alturing +altus +alua +aluben +aluco +aluconidae +aluconinae +aludel +aludra +aluku +alukuyana +alula +alular +alulet +alulim +alulu +alumbank +alumbis +alumbloom +alumbridge +alumcreek +alumel +alumic +alumiferous +alumin +aluminaphone +aluminas +alumine +alumines +aluminic +aluminide +aluminiform +aluminish +aluminite +aluminium +aluminize +aluminized +aluminizes +aluminizing +aluminose +aluminosis +aluminosity +aluminotype +aluminous +alumins +aluminum +aluminums +aluminyl +alumish +alumite +alumium +alumnal +alumniate +alumno +alumnol +alumroot +alumroots +alums +alun +alune +aluniferous +alunite +alunogen +alupag +alupka +alur +alure +alurgite +alush +alushtite +aluta +alutaceous +alutor +alutorskij +aluu +alva +alvada +alvadore +alvah +alvan +alvanley +alvar +alvarado +alvardo +alvarez +alvaro +alvarsson +alvaton +alve +alvearium +alveary +alveloz +alveola +alveolars +alveolary +alveolate +alveolated +alveolation +alveole +alveolectomy +alveoli +alveoliform +alveolite +alveolites +alveolitis +alveolonasal +alveolotomy +alveopal +alveopalatal +alvera +alverda +alverna +alverta +alverton +alves +alveus +alvi +alviducous +alvin +alvina +alvine +alvinia +alvino +alvion +alvir +alvira +alvise +alviso +alvissmal +alvite +alvo +alvord +alvordton +alvsborgs +alvus +alvy +alwa +alwasy +alway +always +alwin +alwine +alwis +alwiyah +alwood +alworo +alwy +alwyn +alya +alyawarra +alyce +alycia +alycompaine +alyda +alyk +alymer +alymphia +alyn +alypin +alyque +alys +alysa +alyse +alysia +alysis +alyson +alyss +alyssa +alysson +alyssums +alytarch +alytes +alyutor +alzada +alzamora +alzey +alzheimer +alzofon +alzubayr +alzucaray +amaalia +amaarro +amaas +amabel +amabelle +amabi +amability +amable +amabusmana +amac +amacacore +amacratic +amacrinal +amacrine +amacuro +amad +amadato +amadavat +amade +amadee +amadelphous +amadeo +amadeus +amadi +amadin +amadis +amadiya +amado +amador +amadorcity +amadou +amadu +amaethon +amafingo +amaga +amagansett +amage +amagon +amaguaco +amagues +amagula +amah +amahai +amaharinya +amahei +amahs +amahuaca +amai +amaimon +amain +amaister +amaizuho +amaje +amajo +amajofe +amajur +amakebe +amakere +amakosa +amal +amala +amalaita +amalaka +amalasuntha +amalaswintha +amalchi +amale +amalea +amalee +amalek +amalekite +amalekites +amaleta +amalfian +amalfitan +amalgamable +amalgamated +amalgamates +amalgamating +amalgamation +amalgamative +amalgamatize +amalgamator +amalgamators +amalgamist +amalgamize +amalgams +amalgram +amalia +amalie +amalings +amalita +amalka +amalle +amalrician +amaltas +amalthea +amalu +amalumute +amam +amamau +amambay +amami +amamioshima +amamiosima +amamoto +amampa +amampondo +aman +amana +amanab +amanage +amanaje +amanatun +amanavil +amanaye +amand +amanda +amandapark +amandi +amandie +amandin +amandine +amandip +amando +amands +amandus +amandy +amanecer +amanfro +amang +amangbetu +amani +amania +amanist +amanitas +amanitin +amanitine +amanitopsis +amann +amanori +amanous +amant +amantado +amanti +amantillo +amants +amanuban +amanubang +amanuenses +amanye +amap +amapa +amapari +amapola +amapondo +amar +amara +amaracaire +amarag +amaragic +amarakaeri +amarakaire +amaral +amarantaceae +amaranth +amaranthine +amaranthoid +amaranths +amaranthus +amarantite +amarantus +amarasi +amarcocche +amare +amarelle +amaretto +amarettos +amarevole +amargo +amargoso +amari +amariah +amariba +amarie +amarilla +amarillo +amarin +amarine +amarinya +amaritude +amarity +amarjit +amarna +amaroid +amaroidal +amarosa +amarro +amarsi +amart +amarthritis +amaryllid +amaryllis +amaryllises +amasa +amasai +amasesis +amashai +amasi +amasiah +amasova +amass +amassable +amassed +amasser +amassers +amasses +amassi +amassing +amassings +amassment +amassments +amasta +amasthenic +amastia +amasty +amasya +amata +amatan +amatembu +amatenango +amateur +amateurishly +amateurism +amateurs +amateurship +amati +amative +amatively +amativeness +amatla +amato +amatol +amatorial +amatorially +amatorian +amatorious +amatri +amatrice +amatsu +amatuer +amatungula +amau +amaurosis +amaurotic +amavisca +amawa +amawaca +amawaka +amawalk +amax +amay +amaz +amaza +amaze +amazed +amazedly +amazedness +amazeful +amazement +amazer +amazers +amazes +amazia +amaziah +amazigh +amazilia +amazing +amazingly +amazon +amazona +amazonas +amazone +amazones +amazonia +amazonian +amazonis +amazonism +amazonite +amazons +amazulu +amba +ambabiko +ambach +ambae +ambage +ambages +ambagiosity +ambagious +ambagiously +ambagitory +ambai +ambaimenawi +ambala +ambalam +ambali +ambambo +amban +ambang +ambaquista +ambar +ambaree +ambarella +ambari +ambartsumian +ambary +ambash +ambasi +ambasila +ambassade +ambassadeur +ambassadeurs +ambassador +ambassadors +ambassadress +ambassage +ambassy +ambatch +ambato +ambawang +ambay +ambeer +ambelau +ambele +ambeng +ambengat +ambeno +ambenos +ambenu +amber +amberbaken +ambercolored +ambercrombie +amberdawn +amberfish +amberg +ambergrease +ambergris +amberi +amberiack +amberiferous +amberite +amberjack +amberly +amberoid +amberous +ambers +ambersham +amberson +ambersons +amberton +ambery +ambhu +ambia +ambiance +ambicolorate +ambidexter +ambidextral +ambience +ambiences +ambiency +ambiens +ambient +ambients +ambier +ambigenous +ambigu +ambiguities +ambiguity +ambiguous +ambiguously +ambilateral +ambilevous +ambilian +ambilogy +ambiloquy +ambiopia +ambiparous +ambisinister +ambisyllabic +ambit +ambital +ambitendency +ambition +ambitioned +ambitionist +ambitionless +ambitions +ambitious +ambitiously +ambitty +ambitus +ambivalence +ambivalency +ambivalent +ambivalently +ambivert +ambiverts +amblau +ambled +ambler +amblers +ambles +amblingly +amblong +amblotic +amblyacousia +amblyaphia +amblydactyla +amblygeusia +amblygon +amblygonal +amblygonite +amblyomma +amblyope +amblyopia +amblyopic +amblyopsidae +amblyopsis +amblyoscope +amblypod +amblypoda +amblypodous +amblystegite +amblystoma +ambo +amboceptoid +amboceptor +ambocoelia +ambodhi +amboim +amboina +amboinese +amboise +ambomalleal +ambon +ambonese +ambonite +ambonnay +ambopasco +ambora +amborse +ambos +ambosexous +ambosexual +amboy +ambrain +ambrein +ambrette +ambrica +ambricourt +ambridge +ambriosine +ambrite +ambroid +ambroise +ambrology +ambrose +ambrosia +ambrosiac +ambrosiaceae +ambrosially +ambrosian +ambrosias +ambrosiate +ambrosin +ambrosine +ambrosio +ambrosse +ambrosterol +ambrotype +ambrus +ambruster +ambry +ambrym +ambsace +ambual +ambuella +ambul +ambulacral +ambulacrum +ambulance +ambulancemen +ambulancer +ambulances +ambulas +ambulated +ambulates +ambulating +ambulatio +ambulation +ambulative +ambulator +ambulatoria +ambulatorial +ambulatories +ambulatorium +ambulators +ambuling +ambulomancy +ambumi +ambunti +ambur +amburbial +amburgey +ambury +ambuscaded +ambuscader +ambuscades +ambuscading +ambush +ambushed +ambusher +ambushers +ambushes +ambushing +ambushment +ambushments +ambustion +ambwela +ambystoma +ambystomidae +amceur +amchoor +amchy +amclpc +amdahl +amdo +ameagle +ameba +amebae +ameban +amebas +amebean +amebic +amebiform +ameboid +ameche +amedeboue +amedee +amedeo +amedzofe +ameed +ameen +ameena +ameer +ameerate +ameers +amegi +ameisen +ameiuridae +ameiurus +ameiva +amelanchier +amelcorn +amele +amelia +amelie +amelina +ameline +amelio +ameliorable +ameliorant +ameliorated +ameliorates +ameliorating +amelioration +ameliorativ +ameliorative +ameliorator +amelita +amelkar +amellus +ameloblast +ameloblastic +amelu +amelus +amem +amemiya +amen +amenability +amenable +amenableness +amenably +amend +amendable +amendatory +amended +amender +amenders +amending +amendment +amendments +amends +amene +amenfi +amengi +amenguaca +amenia +amenism +amenite +amenities +amenity +amenorrhea +amenorrheal +amenorrheic +amenorrhoea +amens +ament +amentaceous +amental +amentia +amentiferae +amentiferous +amentiform +aments +amentulum +amentum +amer +amerasena +amerce +amerceable +amerced +amercement +amercements +amercer +amerces +amerciament +amercing +america +americain +americaine +american +americana +americanese +americanfork +americanisms +americanist +americanitis +americanize +americanized +americanizer +americanizes +americanly +americanoid +americans +americanum +americas +americaward +americawards +americomania +americophobe +americus +amerigo +amerikanki +amerikanskie +ameriki +amerimnon +amerind +amerindian +amerindians +amerindic +amerinds +amerism +ameristic +amermaths +amershan +amerson +amersterdam +amery +ames +amesbury +ameshdesh +amesite +amesville +amesvm +ametabola +ametabole +ametabolia +ametabolian +ametabolic +ametabolism +ametabolous +ametaboly +ametallous +amethodical +amethyst +amethysts +ametoecious +ametria +ametrometer +ametrope +ametropia +ametropic +ametrous +ameuhaque +amex +amflung +amfm +amfoan +amfohare +amfuang +amganad +amgarn +amhar +amhara +amharic +amharicbased +amherst +amherstdale +amherstia +amherstite +amhran +amia +amiability +amiable +amiableness +amiably +amiangba +amiangbwa +amianth +amianthiform +amianthine +amianthium +amianthoid +amianthoidal +amianthus +amias +amibios +amic +amicability +amicableness +amicably +amical +amice +amiced +amichand +amici +amicicide +amicitia +amick +amico +amicrobic +amicron +amicus +amid +amidase +amidate +amidation +amides +amidic +amidid +amidide +amidin +amidine +amidism +amidist +amido +amidoacetal +amidoacetic +amidoazo +amidocapric +amidofluorid +amidogen +amidohexose +amidoketone +amidol +amidomyelin +amidon +amidophenol +amidoplast +amidoplastid +amidopyrine +amidou +amidoxime +amidoxy +amidoxyl +amidrazone +amids +amidship +amidships +amidstream +amidulin +amie +amiel +amies +amiespicard +amiga +amigados +amigas +amigauucp +amigos +amii +amiidae +amikoana +amil +amilcar +amilcare +amiles +amiloun +amimia +amimide +amin +amina +aminadab +aminata +aminate +amination +amindivi +amine +amines +amini +aminic +aminity +aminization +aminize +amino +aminoacetal +aminoacetic +aminoacetone +aminobenzene +aminocaproic +aminoff +aminoformic +aminogen +aminoid +aminoketone +aminolipin +aminolysis +aminolytic +aminomalonic +aminomyelin +aminophenol +aminoplast +aminoplastic +aminopurine +aminopyrine +aminosis +aminovaleric +aminoxylol +aminta +amintor +aminzadeh +amioidei +amiol +amiot +amir +amira +amiranha +amirante +amirate +amirates +amiray +amire +amiret +amiris +amirs +amirship +amis +amisetup +amish +amishgo +amiss +amissibility +amissible +amissness +amissville +amistad +amit +amita +amitabh +amitabha +amitava +amite +amiti +amitie +amities +amitosis +amitotic +amitotically +amittai +amity +amityville +amixer +amixia +amizilis +amjad +amkwe +amla +amlame +amlani +amletto +amli +amlikar +amlin +amlodipine +amlong +amma +ammah +ammamaria +amman +ammanite +ammann +ammar +ammelide +ammelin +ammeline +ammelrooy +ammer +ammers +ammerson +ammeters +ammi +ammiaceae +ammiaceous +ammiel +ammihud +amminadab +amminadib +ammine +ammino +amminolysis +amminolytic +ammiolite +ammirati +ammishaddai +ammizabad +ammo +ammobium +ammochaeta +ammochryse +ammocoete +ammocoetes +ammocoetid +ammocoetidae +ammocoetoid +ammodytes +ammodytidae +ammodytoid +ammon +ammonal +ammonate +ammonation +ammonea +ammonia +ammoniacal +ammoniacs +ammoniacum +ammonias +ammoniate +ammoniating +ammoniation +ammonic +ammonical +ammoniemia +ammonifier +ammonify +ammonion +ammonite +ammonites +ammonitess +ammonitic +ammoniticone +ammonitish +ammonitoid +ammonitoidea +ammonium +ammoniums +ammoniuria +ammonization +ammono +ammonobasic +ammonoid +ammonoidea +ammonoidean +ammonolysis +ammonolytic +ammonolyze +ammophila +ammophilous +ammoresinol +ammos +ammotherapy +ammu +ammunition +ammus +ammusnet +amnemonic +amneris +amnesia +amnesiac +amnesiacs +amnesias +amnesic +amnesics +amnestia +amnestic +amnestied +amnesties +amnesty +amnestying +amniac +amniape +amniatic +amnic +amnigenia +amninia +amninions +amniochorial +amnioclepsis +amniomancy +amnion +amnionata +amnionate +amnionic +amnions +amniorrhea +amniota +amniote +amniotes +amniotic +amniotitis +amniotome +amnish +amnon +amnuayporn +amober +amobyr +amock +amoeba +amoebaea +amoebaean +amoebaeum +amoebalike +amoeban +amoebas +amoebean +amoebeaum +amoebeeic +amoebian +amoebiasis +amoebic +amoebicide +amoebid +amoebida +amoebidae +amoebiform +amoebobacter +amoebocyte +amoebogeniae +amoeboid +amoeboidism +amoebous +amoebula +amoi +amoishe +amok +amoke +amoks +amoldo +amole +amoles +amolilla +amolt +amoltepec +amomal +amomales +amomis +amomum +amon +amonate +amondawa +among +amongst +amonhem +amono +amonra +amonsul +amontillado +amontillados +amor +amora +amorado +amoraic +amoraim +amoral +amoralism +amoralist +amorality +amoralize +amorally +amore +amores +amoret +amorette +amoretti +amoretto +amoreuxia +amorim +amorism +amorist +amoristic +amorists +amorita +amorite +amorites +amoritic +amoritish +amoro +amorosity +amoroso +amorously +amorousness +amorpha +amorphia +amorphic +amorphinism +amorphism +amorphophyte +amorphotae +amorphous +amorphously +amorphus +amorphy +amortise +amortisseur +amortizable +amortization +amortize +amortized +amortizement +amortizes +amortizing +amortova +amorua +amory +amos +amosi +amoskeag +amosov +amosova +amota +amotion +amott +amotu +amotus +amotz +amou +amoukar +amount +amounted +amounter +amounters +amounting +amounts +amouoblo +amour +amourette +amourouy +amours +amouzgar +amovability +amovable +amove +amoy +amoyan +amoyese +amoz +ampah +ampalaya +ampale +ampalea +ampan +ampana +ampanang +ampanatete +ampangabeite +amparai +amparito +amparo +ampas +ampasimenite +ampat +ampele +ampelidaceae +ampelidae +ampelideous +ampelis +ampelite +ampelitic +ampella +ampelography +ampelopsidin +ampelopsin +ampelopsis +ampelosicyos +amper +amperages +ampere +amperemeter +amperes +amperian +amperometer +ampersands +ampery +ampeyi +ampha +amphanthium +amphaparint +ampheclexis +ampherotoky +amphetamines +amphiaster +amphibalus +amphibia +amphibial +amphibians +amphibiety +amphibiology +amphibion +amphibiotic +amphibiotica +amphibiously +amphibium +amphiblastic +amphibola +amphiboles +amphibolia +amphibolic +amphiboline +amphibolite +amphibolitic +amphibolous +amphiboly +amphibrach +amphibrachic +amphibryous +amphicarpa +amphicarpaea +amphicarpic +amphicarpium +amphicarpous +amphicentric +amphichroic +amphichrom +amphichrome +amphicoelian +amphicoelous +amphicondyla +amphicrania +amphicribral +amphictyon +amphictyonic +amphictyony +amphicyon +amphicyrtic +amphicyrtous +amphicytula +amphid +amphide +amphidesmous +amphidetic +amphidiploid +amphidisc +amphierotic +amphierotism +amphigaea +amphigam +amphigamae +amphigamous +amphigean +amphigen +amphigene +amphigenesis +amphigenetic +amphigenous +amphigonic +amphigonium +amphigonous +amphigony +amphigoric +amphigory +amphigouri +amphikaryon +amphilogism +amphilogy +amphimacer +amphimictic +amphimixis +amphimorula +amphinesian +amphineura +amphineurous +amphinucleus +amphion +amphionic +amphioxi +amphioxidae +amphioxides +amphioxus +amphipeptone +amphiphloic +amphiplatyan +amphipleura +amphiploid +amphiploidy +amphipneust +amphipneusta +amphipnous +amphipod +amphipoda +amphipodal +amphipodan +amphipodous +amphipolis +amphiprotic +amphipyrenin +amphirhina +amphirhinal +amphirhine +amphisarca +amphisbaena +amphisbaenic +amphiscians +amphiscii +amphisile +amphisilidae +amphispore +amphistoma +amphistome +amphistomoid +amphistomous +amphistomum +amphistylar +amphistylic +amphistyly +amphitene +amphitheater +amphitheatre +amphithecial +amphithecium +amphithect +amphithyron +amphitokal +amphitokous +amphitoky +amphitriaene +amphitrite +amphitropal +amphitropous +amphitruo +amphitryon +amphiuma +amphiumidae +amphivasal +amphivorous +amphizoidae +amphlett +amphodarch +amphodelite +amphogenous +ampholyte +amphopeptone +amphophil +amphophile +amphophilic +amphophilous +amphora +amphorae +amphoral +amphoras +amphore +amphorette +amphoric +amphoricity +amphoriloquy +amphorophony +amphorous +amphoteric +amphoux +amphrysian +ampibabo +ampicillin +ampika +ampitheater +ampiyacu +amplas +ample +amplectant +amplegiving +ampleness +ampler +amplest +amplexation +amplexicaul +amplexus +amplias +ampliate +ampliation +ampliative +amplicative +amplidyne +amplifiable +amplificator +amplified +amplifiers +amplifies +amplify +amplifying +amplitude +amplitudes +amply +ampollosity +ampongue +ampoule +ampoules +amps +ampul +ampule +ampules +ampulla +ampullaceous +ampullar +ampullaria +ampullary +ampullate +ampullated +ampulliform +ampullitis +ampullula +ampuls +amputated +amputates +amputating +amputation +amputational +amputations +amputative +amputator +amputees +ampuyacu +ampyx +amrah +amram +amramites +amrani +amraphel +amrath +amravati +amreeta +amreetas +amrf +amri +amrigon +amrik +amrish +amrita +amritas +amritsar +amroth +amrum +amsa +amsaa +amsath +amsd +amsden +amsel +amsira +amsler +amsnet +amsonia +amsterdam +amsterdamer +amston +amstr +amstutz +amsure +amtal +amter +amthor +amtl +amtman +amto +amtomusan +amtrac +amtrack +amtracks +amtracs +amtul +amuay +amubrekatsi +amuchco +amuck +amucks +amueixa +amuese +amuesha +amuetamo +amueya +amugen +amuguis +amuitahiraa +amukobole +amul +amula +amuletic +amulets +amulio +amulla +amulya +amun +amunam +amundsen +amundsenia +amung +amungme +amur +amurag +amurca +amurcosity +amurcous +amuri +amurru +amuru +amusable +amused +amusedly +amusee +amusement +amusements +amuser +amusers +amuses +amusette +amusgo +amusia +amusing +amusingly +amusingness +amusive +amusively +amusiveness +amusment +amutoura +amutter +amuy +amuyon +amuyong +amuze +amuzgo +amuzgoan +amuzgos +amvax +amvis +amwi +amyan +amyclaean +amyclas +amye +amyelia +amyelic +amyelinic +amyelonic +amyelous +amygdal +amygdala +amygdalaceae +amygdalase +amygdalate +amygdalic +amygdaliform +amygdalin +amygdaline +amygdalinic +amygdalitis +amygdaloidal +amygdalolith +amygdaloncus +amygdalotome +amygdalotomy +amygdalus +amygdophenin +amygdule +amyl +amylaceous +amylamine +amylan +amylase +amylases +amylate +amylemia +amylene +amylenol +amylic +amylidene +amyliferous +amylin +amylo +amyloclastic +amylodextrin +amylogen +amylogenesis +amylogenic +amyloid +amyloidal +amyloidosis +amyloleucite +amylolysis +amylolytic +amylom +amylometer +amylon +amylopectin +amylophagia +amyloplast +amyloplastic +amyloplastid +amylopsin +amylose +amylosis +amyls +amylum +amyluria +amynodon +amynodont +amyosthenia +amyosthenic +amyotaxia +amyotonia +amyotrophia +amyotrophic +amyotrophy +amyous +amyraldism +amyraldist +amyridaceae +amyrin +amyris +amyrol +amyroot +amytal +amyxorrhea +amyxorrhoea +amza +amzi +amzie +anaang +anab +anabaena +anabal +anabantidae +anabaptism +anabaptistic +anabaptistry +anabaptists +anabaptize +anabar +anabas +anabasine +anabasis +anabasse +anabata +anabathmos +anabatic +anabel +anabella +anabelle +anaberoga +anabeze +anabibazon +anabiosis +anabiotic +anablepidae +anableps +anabo +anabohitsite +anabolic +anabolin +anabolism +anabolite +anabolize +anabong +anabranch +anabrosis +anabrotic +anabuki +anacahuita +anacahuite +anacalypsis +anacampsis +anacamptic +anacamptics +anacanth +anacanthine +anacanthini +anacanthous +anacara +anacard +anacardic +anacardium +anacatharsis +anacathartic +anacephalize +anaces +anach +anacharis +anachoretes +anachorism +anachromasis +anachronic +anachronical +anachronism +anachronisms +anachronist +anachronize +anachronous +anachueta +anacid +anacidity +anaclasis +anaclastic +anaclastics +anaclete +anacleticum +anacleto +anaclinal +anaclisis +anaclitic +anacoco +anacoenosis +anacoluthia +anacoluthic +anacoluthon +anacondas +anacortes +anacostia +anacreon +anacreontic +anacrisis +anacrogynae +anacrogynous +anacrotic +anacrotism +anacrusis +anacrustic +anaculture +anacusia +anacusic +anacusis +anacyclus +anad +anadarko +anadditional +anadem +anadems +anadenia +anader +anadicrotic +anadicrotism +anadidymus +anadiplosis +anadipsia +anadipsic +anadrom +anadromous +anadyomene +anadyr +anaematosis +anaemia +anaemias +anaemic +anaeretic +anaerobation +anaerobe +anaerobes +anaerobia +anaerobian +anaerobies +anaerobion +anaerobiont +anaerobiosis +anaerobiotic +anaerobious +anaerobism +anaerobium +anaerophyte +anaeroplasty +anaesthesia +anaesthetic +anaesthetist +anaesthetize +anafejanzi +anagalactic +anagallis +anagap +anagenesis +anagenetic +anagep +anaglyphic +anaglyphical +anaglyphics +anaglyphy +anaglyptic +anaglyptical +anaglyptics +anaglypton +anagnorisis +anagnos +anagnost +anago +anagoge +anagogic +anagogical +anagogically +anagogics +anagogy +anagonzaga +anagrammatic +anagrammed +anagrams +anagraph +anagua +anaguta +anagyrin +anagyrine +anagyris +anah +anaharath +anahau +anahita +anahola +anahuac +anaiah +anaife +anais +anaitis +anak +anaka +anakalangu +anakes +anakhwe +anakims +anakin +anakinesis +anakinetic +anakinetomer +anakola +anakoluthia +anakrousis +anaktoron +anal +analabos +analagous +analav +analcime +analcimite +analcite +analcitite +analecta +analectic +analects +analemma +analemmas +analemmatic +analepsis +analepsy +analeptical +analfabeto +analgen +analgesia +analgesics +analgesidae +analgesis +analgesist +analgetic +analgia +analgic +analgize +analia +analiese +analise +analist +anality +analizer +analizov +analkalinity +anallagmatic +anallantoic +anallergic +anallese +anallise +anally +analog +analogic +analogical +analogically +analogies +analogion +analogism +analogist +analogistic +analogize +analogized +analogizes +analogizing +analogon +analogous +analogously +analogs +analogue +analogues +analogy +analomink +analphabet +analphabete +analphabetic +analysable +analysand +analysands +analysation +analyse +analysed +analyser +analyses +analysing +analysis +analysisof +analyst +analysts +analytic +analytical +analytically +analyticity +analytics +analyzable +analyzation +analyze +analyzed +analyzer +analyzers +analyzes +analyzing +anam +anama +anamagi +anambe +anambra +anamesite +anamim +anamirta +anamirtin +anamite +anammelech +anammonid +anammonide +anamnesis +anamnestic +anamnia +anamniata +anamnionata +anamnionic +anamniota +anamniote +anamniotic +anamoose +anamorphism +anamorphose +anamorphosis +anamorphote +anamorphous +anamosa +anamu +anan +anana +ananaplas +ananaples +ananas +anand +ananda +anandrarious +anandria +anandrous +ananepionic +ananevskii +anang +anangioid +anangular +anani +ananiah +ananias +ananieva +ananism +ananite +ananjubi +anankastic +ananke +ananmalay +anansi +anansie +ananta +ananth +anantha +anantherate +anantherous +ananthous +ananym +anap +anapaest +anapaestic +anapaestical +anapaganize +anapaite +anapanapa +anapeiratic +anapest +anapestic +anapests +anaphalis +anaphase +anaphe +anaphia +anaphora +anaphoral +anaphoria +anaphoric +anaphorical +anaphrodisia +anaphroditic +anaphylactic +anaphylactin +anaphylaxis +anaphyte +anapia +anaplasia +anaplasis +anaplasm +anaplasma +anaplastic +anaplasty +anaplerosis +anaplerotic +anapnea +anapneic +anapnoeic +anapnograph +anapnoic +anapnometer +anapodeictic +anapophysial +anapophysis +anapsid +anapsida +anapsidan +anapterygota +anapterygote +anaptotic +anaptychus +anaptyctic +anaptyctical +anaptyxis +anaqua +anar +anara +anarcestean +anarcestes +anarchal +anarchial +anarchical +anarchically +anarchies +anarchism +anarchist +anarchistic +anarchists +anarchize +anarchs +anarchy +anarcotin +anareta +anaretic +anaretical +anargyros +anarion +anarthria +anarthric +anarthropod +anarthropoda +anarthrosis +anarthrous +anarthrously +anartismos +anarvik +anarya +anaryan +anas +anasa +anasai +anasarca +anasarcous +anasazi +anaschistic +anasco +anaseismic +anasitch +anaspadias +anaspalin +anaspida +anaspidacea +anaspides +anast +anastacia +anastalsis +anastaltic +anastas +anastasia +anastasiadis +anastasian +anastasie +anastasimon +anastasimos +anastasio +anastasios +anastasis +anastasius +anastassia +anastasya +anastate +anastatic +anastatica +anastatus +anastomose +anastomoses +anastomosing +anastomus +anastrophe +anastrophia +anastrophy +anasuya +anat +anatase +anatexis +anath +anathema +anathemas +anathemata +anathematic +anathematism +anathematize +anatheme +anathemize +anatherum +anathoth +anatico +anatidae +anatifa +anatifae +anatifer +anatiferous +anatinacea +anatinae +anatine +anatocism +anatol +anatola +anatoli +anatolia +anatolian +anatolic +anatoliya +anatoly +anatomical +anatomically +anatomies +anatomik +anatomism +anatomist +anatomists +anatomize +anatomized +anatomizer +anatomizes +anatomizing +anatomy +anatone +anatopism +anatox +anatoxin +anatreptic +anatri +anatripsis +anatriptic +anatron +anatropal +anatropia +anatropous +anatto +anattos +anatum +anaudia +anauli +anaunico +anaunter +anaunters +anawalt +anawave +anawla +anax +anaxagorean +anaxagorize +anaxander +anaxial +anaxon +anaxone +anaxonia +anay +anaya +anazoturia +anba +anbar +anborn +anbury +anca +ancalagon +ancash +ancd +ance +anceaux +ancel +ancell +ancello +ancerata +ancestor +ancestorial +ancestors +ancestrally +ancestress +ancestresses +ancestrial +ancestrian +ancestries +ancha +anchal +anchat +anchi +anchia +anchietea +anchietin +anchietine +anchisaurus +anchises +anchistea +anchistopoda +anchithere +anchix +anchor +anchorable +anchorage +anchorages +anchorate +anchored +anchorer +anchoress +anchoresses +anchoret +anchoretic +anchoretical +anchoretish +anchoretism +anchorhold +anchoring +anchorites +anchoritess +anchoritic +anchoritical +anchoritish +anchoriz +anchorless +anchorlike +anchorman +anchorpoint +anchors +anchorville +anchorwise +anchovies +anchovy +anchtherium +anchusa +anchusin +anchusine +anchylose +anchylosis +ancian +ancien +ancience +anciency +anciens +ancient +ancienter +ancientest +ancientism +anciently +ancientness +ancientry +ancients +ancienty +ancile +anciliarity +ancilla +ancillaries +ancillarity +ancillary +ancipital +ancipitous +ancira +ancistroid +anco +ancon +ancona +anconad +anconagra +anconal +ancone +anconeal +anconeous +anconetani +anconeus +anconina +anconitis +anconoid +ancony +ancora +ancoral +ancova +ancram +ancramdale +anctil +ancux +ancyloceras +ancylocladus +ancylopod +ancylopoda +ancylostoma +ancylostome +ancylostomum +ancylus +ancyrean +ancyrene +anda +andabatarian +andadvanced +andagarinya +andahalf +andahuaylas +andajes +andaki +andale +andali +andall +andallows +andalou +andalucia +andalucian +andalusia +andalusian +andalusite +andaluz +andaman +andamanese +andan +andangti +andante +andantes +andantino +andantinos +andaqui +andaquian +andara +andaree +andarko +andarum +andasa +andaste +andcomplete +ande +anded +andee +andeee +andek +andel +andeline +andelius +andelman +andeme +ander +andere +anderea +anderen +andergast +anderkaro +anders +andersen +anderson +andersons +andersson +anderton +andesic +andesinite +andesitic +andesyte +andeva +andevo +andew +andexit +andfrom +andfunction +andg +andh +andha +andhandle +andhi +andhra +andhtml +andi +andian +andie +andii +andiljangwa +andilyaugwa +andine +anding +andio +andioo +andira +andirin +andirine +andiroba +andirons +andit +andiy +andkathy +andkhoi +andley +andlife +andnetcat +ando +andoa +andoar +andoke +andolini +andom +andone +andoni +andonia +andonni +andonov +andoque +andor +andora +andorai +andorite +andorobo +andorra +andorran +andouillet +andover +andpersand +andplane +andr +andra +andrade +andradite +andrahus +andranatomy +andranking +andrarchy +andras +andrassy +andre +andrea +andreadoria +andreaea +andreaeaceae +andreaeales +andreana +andreani +andreas +andreasen +andreassi +andreatos +andrece +andree +andreev +andreevich +andreevna +andreguy +andrei +andreia +andreiev +andreiis +andreika +andreina +andrej +andrejs +andrel +andrelated +andremove +andren +andrena +andrenid +andrenidae +andreny +andreone +andreotti +andres +andresbello +andreson +andress +andreu +andreus +andrew +andrewartha +andrewg +andrews +andrewsite +andrey +andreyev +andri +andria +andrian +andriana +andriano +andrias +andric +andrienne +andries +andriette +andris +andro +androcentric +androcles +androclinium +androclus +androconium +androcracy +androcratic +androcyte +androecial +androecium +androgen +androgenesis +androgenetic +androgenic +androgenous +androgens +androginous +androgone +androgonia +androgonial +androgonium +andrographis +androgynal +androgynary +androgyne +androgyneity +androgynia +androgynies +androgynism +androgynous +androgynus +androgyny +android +androidal +androids +androkinin +androl +androlepsia +androlepsy +androll +andromache +andromania +andromaque +andromeda +andromede +andron +andronicus +andronitis +andropetalar +androphagous +androphobia +androphore +androphorous +androphorum +androphyll +andropogon +andropolis +andros +androsace +androscoggin +androseme +androsin +androsky +androsphinx +androspore +androsterone +androtauric +androtomy +androzzi +andrukat +andrus +andrusiak +andruzzi +andrzej +ands +andspeed +andthe +andto +anduin +anduril +andwill +andy +andycapp +andyp +andys +anear +anearing +aneas +aneath +anecdota +anecdotage +anecdotalism +anecdote +anecdotes +anecdotic +anecdotical +anecdotist +anecdotists +anecdysis +anechoic +anecs +anegada +anegorom +aneho +anei +aneiteum +aneiteumese +aneityum +anej +anejom +anekdot +anekdoti +anekdotiki +anekdotov +anekwat +anekwe +anele +anelectric +anelectrode +anello +anelytrous +anem +anematosis +aneme +anemia +anemias +anemic +anemically +anemochord +anemoclastic +anemogram +anemograph +anemographic +anemography +anemological +anemology +anemometer +anemometers +anemometric +anemometry +anemonal +anemonella +anemones +anemonin +anemonol +anemony +anemopathy +anemophile +anemophilous +anemophily +anemopsis +anemoro +anemoscope +anemosis +anemotactic +anemotaxis +anemotropic +anemotropism +anencephalia +anencephalic +anencephalus +anencephaly +anend +anenergia +anenst +anenterous +anep +anepia +anepigraphic +anepiploic +anepithymia +aner +anerethisia +aneretic +anergia +anergic +anergy +aneric +anerie +anerly +aneroid +aneroids +anerood +anerotic +anerror +anes +anesis +anestassia +anesthesia +anesthesiant +anesthesis +anesthetic +anesthetics +anesthetist +anesthetists +anesthetize +anesthetized +anesthetizer +anesthetizes +anesthyl +anesu +anet +aneta +anetan +aneth +anethelptool +anethole +anethothite +anethum +anetothite +anett +anetta +anette +aneuploid +aneuploidy +aneuria +aneuric +aneurilemmic +aneurin +aneurism +aneurismally +aneurisms +aneurysm +aneurysmal +aneurysmally +aneurysmatic +aneurysms +anewa +anezeh +anfallenden +anfang +anfe +anfillo +anfractuose +anfractuous +anfracture +anfrom +anga +angaatiha +angaatiya +angac +angadi +angai +angaite +angal +angalkewa +angami +angamis +angan +anganiwai +anganiwei +angara +angaralite +angaria +angaries +angarola +angary +angas +angataha +angate +angaua +angave +angba +angband +angbanga +angbor +angdistis +ange +angegebene +angekok +angel +angela +angelate +angelca +angeldom +angele +angeleno +angeles +angelet +angeleyes +angelface +angelfishes +angelhood +angeli +angelia +angelic +angelica +angelical +angelically +angelican +angelicanism +angelicas +angelicic +angelicize +angelico +angelie +angeliek +angeligue +angelika +angelilli +angelillo +angelin +angelina +angeline +angelini +angelino +angelique +angelis +angelita +angelito +angelize +angell +angelle +angelli +angellike +angelo +angelocracy +angelolater +angelolatry +angelologic +angelology +angelomachy +angelonia +angelophany +angelot +angelov +angels +angelscamp +angelship +angelum +angelus +angeluses +angelusoaks +angelyn +anger +angered +angerer +angerhofer +angerine +angering +angerly +angermeyr +angerona +angeronalia +angers +angerwolf +anges +angetenar +angevin +angeyok +anggor +angguna +angguruk +angharad +anghel +anghelov +angiasthenia +angico +angie +angiectasis +angiectopia +angier +angiitis +angika +angikar +angil +angild +angili +angin +angina +anginal +anginas +anginiform +anginoid +anginose +anginous +angioataxia +angioblast +angioblastic +angiocarp +angiocarpian +angiocarpic +angiocarpous +angioclast +angiocyst +angiofibroma +angiogenesis +angiogenic +angiogeny +angioglioma +angiogram +angiograph +angiography +angioid +angiokinesis +angiokinetic +angiolillo +angiolina +angiolipoma +angiolith +angiology +angioma +angiomalacia +angiomatosis +angiomatous +angiomegaly +angiometer +angiomyoma +angionoma +angionosis +angioparesis +angiopathy +angiophorous +angioplany +angioplasty +angiopoietic +angiorrhagia +angiorrhaphy +angiorrhea +angiorrhexis +angiosarcoma +angioscope +angiosis +angiospasm +angiospastic +angiospermae +angiospermal +angiospermic +angiosperms +angiosporous +angiosteosis +angiostomize +angiostomy +angiostrophy +angiotasis +angiotome +angiotomy +angiotonic +angiotonin +angiotribe +angiotripsy +angiotrophic +angka +angkola +angkor +angku +angkuic +anglade +anglaise +anglat +angle +angleberry +anglebracket +angled +anglehook +angleinlet +anglepod +angler +anglers +angles +anglesite +anglesmith +angleton +angletouch +angletwitch +anglewing +anglewise +angleworm +angleworms +anglia +anglian +anglians +anglic +anglicanize +anglicanly +anglicans +anglicanum +anglice +anglicism +anglicisms +anglicist +anglicize +anglicized +anglicizes +anglicizing +anglify +anglim +anglimaniac +anglin +angling +anglings +anglish +anglist +anglistics +anglogaea +anglogaean +angloid +angloman +anglomane +anglomania +anglomaniac +anglophile +anglophiles +anglophilia +anglophobe +anglophobes +anglophobiac +anglophobic +anglophobist +angloromani +anglorus +anglos +anglosaxon +angmar +ango +angobaldo +angola +angolalabor +angolan +angolans +angolar +angolares +angold +angole +angolese +angom +angomerry +angoni +angor +angora +angoram +angorapoulos +angoras +angosia +angostura +angosturas +angotero +angouleme +angoumian +angoya +angphang +angra +angraecum +angreas +angrenost +angrier +angriest +angrily +angriness +angrite +angrolillo +angry +angryhacker +angster +angstroms +angsts +angu +anguelos +anguid +anguidae +anguiform +anguill +anguilla +anguillan +anguillaria +anguillidae +anguilliform +anguilloid +anguillula +anguimorpha +anguine +anguineal +anguineous +anguinidae +anguiped +anguis +anguish +anguished +anguishes +anguishful +anguishing +anguishous +anguishously +anguita +angula +angular +angulare +angularities +angularity +angularize +angularly +angularness +angulate +angulated +angulately +angulateness +angulating +angulation +anguliferous +angulinerved +anguloa +angulometer +angulosity +angulous +angungwel +anguria +angus +anguses +angusilla +angustation +angustia +angusticlave +angvall +angwantibo +angwin +angy +anhalamine +anhaline +anhalonine +anhalonium +anhalouidine +anhang +anhanga +anhaqui +anhedonia +anhedral +anhedron +anhelation +anhelose +anhelous +anhematosis +anhemolytic +anhidrosis +anhidrotic +anhima +anhimae +anhimidae +anhinga +anhistic +anhistous +anhorn +anhtuan +anhui +anhungered +anhungry +anhydrate +anhydration +anhydremia +anhydremic +anhydric +anhydrides +anhydridize +anhydrize +anhydrously +anhydroxime +anhysteretic +ania +aniabl +aniak +aniam +aniba +anibal +anibare +anibau +anica +anice +anicee +anichkin +anicon +aniconic +aniconism +anicular +anicut +anidian +anidiomatic +anidrosis +aniellidae +aniello +aniente +anigh +anight +anights +anigibi +anigmagic +anii +anikhwe +aniko +anikwe +anil +anilao +anilau +anile +anileness +anilic +anilid +anilide +anilidic +anilidoxime +anilin +anilines +anilinism +anilinophile +anilins +anilities +anility +anilla +anilopyrin +anilopyrine +anils +anim +anima +animability +animable +animableness +animacules +animadverted +animadverter +animadverts +animagic +animal +animalcula +animalculae +animalcular +animalcule +animalcules +animalculine +animalculism +animalculist +animalculous +animalculum +animalhood +animalhouse +animalia +animalian +animalic +animalier +animalish +animalism +animalist +animalistic +animalities +animality +animalivora +animalivore +animalize +animalized +animalizing +animally +animalness +animals +animas +animastic +animastical +animate +animated +animatedly +animately +animateness +animater +animaters +animates +animating +animatingly +animation +animationole +animations +animatism +animatistic +animative +animato +animatograph +animator +animators +anime +animere +animi +animikean +animikite +animisms +animist +animistic +animists +animize +animized +animo +animosities +animotheism +animous +animus +animuses +anindilyakwa +aniniy +aniocha +anionically +anions +anir +anirago +aniridia +anis +anisal +anisalcohol +anisaldehyde +anisaldoxime +anisamide +anisandrous +anisanilide +anisate +anischuria +anise +aniseed +aniseeds +aniseikonia +aniselike +aniseroot +anises +anisette +anisettes +anisic +anisidin +anisidine +anisil +anisilic +anisocarpic +anisocarpous +anisocercal +anisochromia +anisocoria +anisocotyly +anisocratic +anisocycle +anisocytosis +anisodactyl +anisodactyla +anisodactyli +anisodont +anisogamete +anisogamous +anisogamy +anisogenous +anisogeny +anisogynous +anisoin +anisole +anisomeles +anisomelia +anisomelus +anisomeric +anisomerous +anisometric +anisometrope +anisomyarian +anisomyodi +anisomyodian +anisomyodous +anisophylly +anisopia +anisopleural +anisopod +anisopoda +anisopodal +anisopodous +anisoptera +anisopterous +anisospore +anisosthenic +anisostichus +anisostomous +anisotonic +anisotropal +anisotrope +anisotropies +anisotropism +anisotropous +anisoyl +anissa +anisum +anisuria +anisyl +anisylidene +anita +anither +anitia +anitra +anitrogenous +aniula +aniwa +anizizi +anja +anjam +anjaman +anjan +anjanette +anje +anjela +anjelica +anjie +anjou +anjouan +anjuski +anka +ankai +ankara +ankaramite +ankaran +ankaratrite +ankave +ankee +ankeny +anker +ankerite +ankers +ankewich +ankh +ankhen +ankhs +anki +ankie +ankle +anklebone +anklebones +anklejack +ankles +anklet +anklets +anklong +anklyosaur +ankober +ankobra +ankokuji +ankole +ankoli +ankori +ankou +ankova +ankpa +ankrovith +ankrum +ankulu +ankus +ankuses +ankusha +ankwai +ankwe +anky +ankylenteron +ankylodontia +ankylomele +ankylomerism +ankylophobia +ankylopodia +ankylosaurus +ankylose +ankylosis +ankylostoma +ankylotia +ankylotic +ankylotome +ankylotomy +ankyroid +anlace +anlagen +anlaut +anlo +anlour +anlutur +anlysis +anmatjirra +anmeldung +anmoore +anna +annab +annaba +annabal +annabel +annabela +annabell +annabella +annabelle +annaberg +annabergite +annabeth +annable +annada +annadiana +annadiane +annagerman +annalee +annalie +annaliese +annaline +annalisa +annalise +annalism +annalist +annalistic +annalists +annaliza +annalize +annalzers +annam +annamaria +annamarie +annamese +annamite +annamitic +annamito +annandale +annanese +annang +annapavlova +annapolis +annapurna +annarbor +annard +annas +annat +annates +annatto +annattos +annawan +annaylists +annazette +anne +annealed +annealer +annealers +annealing +anneals +annecorinne +annectent +annection +annekathrin +annekatrin +anneke +annelid +annelida +annelidan +annelides +annelidian +annelidous +annelids +annelies +anneliese +annelise +annelism +annellata +anneloid +annemanie +annemarie +annemarijke +annemie +annerodite +annes +anneslia +annet +annetta +annette +annexa +annexable +annexal +annexation +annexational +annexations +annexe +annexed +annexer +annexes +annexii +annexing +annexion +annexionist +annexitis +annexive +annexment +annexure +anni +annibal +annibale +annice +annick +annidalin +annie +anniellidae +annihilable +annihilate +annihilated +annihilates +annihilating +annihilation +annihilative +annihilator +annihilators +annihilatory +annik +annika +annina +annis +annissa +annist +anniston +annita +annite +anniversary +anniverse +annm +annmaria +annmarie +annnora +anno +annobon +annodated +annodize +annona +annonaceae +annonaceous +annora +annotated +annotater +annotates +annotating +annotation +annotations +annotative +annotatively +annotator +annotators +annotatory +annotine +annotinous +annotto +announce +announceable +announced +announcement +announcer +announcers +announces +announcing +annoy +annoyance +annoyancer +annoyances +annoyed +annoyer +annoyers +annoyful +annoying +annoyingly +annoyingness +annoyment +annoys +annual +annualist +annualize +annualized +annually +annuals +annuary +annueler +annuent +annuitant +annuitants +annuities +annul +annularia +annularity +annularly +annulary +annulata +annulate +annulated +annulation +annulations +annuler +annulet +annulettee +annulism +annullable +annullate +annullation +annuller +annulment +annulments +annuloid +annuloida +annulosa +annulosan +annulose +annuls +annuluses +annunciable +annunciated +annunciates +annunciating +annunciation +annunciative +annunciator +annunciators +annunciatory +annunziata +annunzio +annuziata +annville +anny +anoa +anoas +anobiidae +anocarpous +anochai +anococcygeal +anodal +anodally +anodendron +anodes +anodically +anodization +anodize +anodized +anodizes +anodizing +anodo +anodon +anodonta +anodontia +anodos +anodyne +anodynes +anodynia +anodynic +anodynous +anoegenetic +anoesia +anoesis +anoestrous +anoestrum +anoestrus +anoetic +anofo +anogenic +anogenital +anogra +anoher +anoia +anoicha +anoil +anoine +anoint +anointed +anointedst +anointer +anointers +anointest +anointing +anointment +anointments +anoints +anoka +anokhin +anole +anoles +anoli +anolian +anolik +anolis +anolympiad +anolyte +anomala +anomalies +anomaliped +anomalism +anomalist +anomalistic +anomalon +anomalonomy +anomaloscope +anomalous +anomalously +anomalure +anomaluridae +anomalurus +anomaly +anomatheca +anomia +anomiacea +anomic +anomies +anomiidae +anomite +anomocarpous +anomodont +anomodontia +anomoean +anomoeanism +anomphalous +anomura +anomural +anomuran +anomurous +anomy +anon +anonang +anoncillo +anonmail +anonol +anonychia +anonym +anonyma +anonymities +anonymous +anonymously +anonyms +anonymuncule +anoong +anoopsia +anoperineal +anophele +anopheles +anophelinae +anopheline +anophoria +anophthalmia +anophthalmos +anophthalmus +anophyte +anopia +anopla +anoplanthus +anoplothere +anoplura +anopluriform +anopsia +anopubic +anor +anorak +anoraks +anorchia +anorchism +anorchous +anorchus +anorectal +anorectic +anorectous +anorexias +anorexy +anorgana +anorganic +anorganism +anorganology +anormal +anormality +anorogenic +anorth +anorthitic +anorthitite +anorthoclase +anorthophyre +anorthopia +anorthoscope +anorthose +anorubuna +anosangobari +anoscope +anoscopy +anosia +anosmatic +anosmia +anosmic +anosphrasia +anosphresia +anospinal +anostosis +anostraca +anoterite +another +anotherkins +anothers +anotia +anotropia +anotta +anotto +anotus +anouk +anounce +anounou +anour +anous +anousaki +anoux +anova +anovesical +anowuru +anoxemia +anoxemic +anoxia +anoxias +anoxic +anoxidative +anoxybiosis +anoxybiotic +anoxyscope +anoying +anphoux +anpika +anqodia +anquetin +anre +anreus +anrpc +anrufe +anrufer +ansa +ansagen +ansah +ansakara +ansar +ansara +ansari +ansarian +ansarie +ansars +ansate +ansation +ansbach +anschluss +anschu +anscombe +anse +ansee +anseis +ansel +anselaraye +anself +ansell +anselma +anselmi +anselmian +anser +anserated +anseres +anseriformes +anserinae +anserine +anserma +anserna +anserous +anshel +anshuenkuan +ansi +ansis +ansita +ansley +anson +ansonia +ansonville +ansorger +anspach +anspessade +anstead +ansted +anstett +ansteuerung +anstey +anstice +anstruder +anstruther +ansty +ansu +ansuini +ansulate +ansus +answald +answer +answerable +answerably +answered +answeredst +answerer +answerers +answerest +answereth +answering +answeringly +answerless +answerlessly +answers +anta +antacids +antacrid +antadiform +antaean +antagonisms +antagonists +antagonize +antagonized +antagonizer +antagonizes +antagonizing +antagony +antaimerina +antaimoro +antaios +antaisaka +antaiva +antakarinya +antal +antalgesic +antalgol +antalkali +antalkaline +antall +antalote +antalya +antambahoaka +antanaclasis +antanala +antananarivo +antanandro +antanemic +antanka +antapex +antapocha +antapodosis +antapology +antar +antara +antarbedi +antarchism +antarchist +antarchistic +antarchy +antarctalia +antarctalian +antarctic +antarctica +antarctical +antarctogaea +antardroy +antares +antarthritic +antartica +antartida +antarvedi +antasphyctic +antasthenic +antasthmatic +antatrophic +antdom +anteact +anteal +anteambulate +anteapi +anteaters +antebath +antebrachial +antebrachium +antebridal +antecabinet +antecaecal +antecardium +antecavern +antecede +anteceded +antecedence +antecedency +antecedental +antecedently +antecedents +antecedes +anteceding +antecessor +antechamber +antechambers +antechapel +antechinomys +antechoir +antechoirs +antechurch +antecloset +antecolic +antecornu +antecourt +antecoxal +antecubital +anted +antedated +antedates +antedating +antedawn +antediluvial +antediluvian +antedon +antedonin +antedorsal +anteed +antefebrile +antefix +antefixal +anteflected +anteflexed +anteflexion +antefurca +antefurcal +antefuture +antegarden +antegrade +antehall +antehistoric +antehuman +anteing +anteinitial +antelabium +antelegal +antelocation +antelope +antelopes +antelopian +antelucan +antelude +anteluminary +antemarginal +antemarital +antemedial +antemeridian +antemetallic +antemetic +antemingent +antemortal +antemortem +antemundane +antemural +antenarial +antenatal +antenati +antenave +antenna +antennal +antennaria +antennariid +antennarius +antennary +antennas +antennata +antennate +antenniform +antennula +antennular +antennulary +antennule +antenodal +antenoon +antenor +antenumber +anteocular +anteopercle +anteorbital +antepagmenta +antepagments +antepalatal +antepartum +antepaschal +antepast +antepectoral +antepectus +antependium +antepenult +antepenults +antephialtic +antepileptic +antepirrhema +anteporch +anteportico +anteposition +anteprandial +antepreterit +antepretonic +anteprostate +antepyretic +antequalm +anterethic +anteriad +anterior +anteriority +anteriorly +anteriorness +anterodorsal +anterograde +anteromedial +anteromedian +anteroom +anterooms +anteropygal +anteros +anterospinal +antes +antescript +antesfort +antesignanus +antespring +antestature +antesternal +antesternum +antesunrise +antesuperior +antetemple +antetype +anteva +antevenient +anteversion +antevert +antevocalic +antewar +antexp +antfarm +anthe +anthea +anthecology +antheia +anthela +anthelion +anthelmintic +anthem +anthema +anthemed +anthemene +anthemia +anthemideae +anthemion +anthemis +anthems +anthemwise +anthemy +anthena +anther +antheraea +antheral +anthericum +antherid +antheridial +antheridium +antheriform +antherless +antheroid +antherozoid +antherozooid +anthers +anthesis +anthesteria +anthesteriac +anthesterin +anthesterion +anthesterol +antheximeter +anthia +anthiathia +anthicidae +anthidium +anthill +anthills +anthinae +anthine +anthobiology +anthocarp +anthocarpous +anthoceros +anthocerote +anthochlor +anthoclinium +anthocyan +anthocyanin +anthodium +anthoecology +anthogenesis +anthogenetic +anthogenous +anthography +anthoid +anthokyan +antholite +anthological +anthologies +anthologion +anthologist +anthologists +anthologize +anthologized +anthologizes +anthology +antholysis +antholyza +anthomania +anthomaniac +anthomedusae +anthomedusan +anthomyia +anthomyiid +anthomyiidae +anthon +anthoni +anthonin +anthonissen +anthonomus +anthony +anthood +anthophagous +anthophila +anthophile +anthophilian +anthophilous +anthophobia +anthophora +anthophore +anthophorous +anthophyta +anthophyte +anthorine +anthospermum +anthotaxis +anthotaxy +anthotropic +anthotropism +anthoxanthin +anthoxanthum +anthozoa +anthozoan +anthozoic +anthozooid +anthozoon +anthracemia +anthracene +anthraces +anthracia +anthracic +anthracin +anthracitic +anthracitism +anthracnosis +anthracocide +anthracoid +anthraconite +anthracosis +anthracotic +anthracyl +anthradiol +anthraflavic +anthragallol +anthralin +anthramine +anthranil +anthranilate +anthranilic +anthranol +anthranone +anthranoyl +anthranyl +anthraquinol +anthrarufin +anthratetrol +anthratriol +anthrax +anthraxolite +anthraxylon +anthrenus +anthribid +anthribidae +anthriscus +anthroic +anthrol +anthrone +anthrop +anthropic +anthropical +anthropidae +anthropodus +anthropogeny +anthropoglot +anthropogony +anthropoid +anthropoidal +anthropoidea +anthropoids +anthropolite +anthropology +anthroponomy +anthropos +anthropotomy +anthropozoic +anthropurgic +anthroxan +anthroxanic +anthryl +anthrylene +anthurium +anthus +anthyllis +anthypophora +anti +antiabortion +antiabrasion +antiabrin +antiacid +antiaditis +antiae +antiager +antiaircraft +antialbumid +antialbumin +antialbumose +antialcohol +antialdoxime +antialexin +antialien +antiamylase +antianarchic +antiangular +antianthrax +antiantibody +antiantidote +antiaphthic +antiapostle +antiaquatic +antiar +antiarcha +antiarchi +antiarin +antiaris +antiascetic +antiatheism +antiatheist +antiats +antibacchic +antibacchius +antibalm +antibank +antibes +antibigotry +antibilious +antibiont +antibiosis +antibiotic +antibiotics +antibishop +antiblastic +antiblock +antiblue +antibodies +antibody +antibot +antiboxing +antibreakage +antibridal +antibromic +antibubonic +antiburgher +antibusing +antical +antican +anticancer +anticapital +anticardiac +anticardium +anticarious +anticaste +anticatalase +anticatalyst +anticathexis +anticathode +anticaustic +anticheater +antichlor +antichlorine +antichorus +antichresis +antichretic +antichrisis +antichrist +antichrists +antichrome +antichronism +antichthon +antichurch +antichymosin +anticipant +anticipate +anticipated +anticipates +anticipating +anticipation +anticipative +anticipator +anticipators +anticivic +anticivism +anticize +anticked +anticker +anticking +anticlactic +anticlea +anticlergy +anticlerical +anticlimax +anticlimaxes +anticlinal +anticline +anticlines +anticlogging +anticly +anticnemion +anticness +anticoagulin +anticolic +anticolonist +anticomet +anticomment +anticomplex +anticor +anticorn +anticorset +anticosine +anticosmetic +anticouncil +anticourt +anticourtier +anticous +anticreation +anticreative +anticreator +anticreep +anticreeper +anticreeping +anticrisis +anticritic +anticritique +anticrochet +anticrotalic +anticryptic +antics +anticum +anticyclic +anticyclone +anticyclones +anticyclonic +anticynic +antidactyl +antidancing +antidebugin +antidemocrat +antidemoniac +antidetonant +antidiabetic +antidiastase +antidiffuser +antidinic +antidivine +antidivorce +antidogmatic +antidomestic +antidorcas +antidoron +antidotal +antidotally +antidotary +antidote +antidotes +antidotical +antidotism +antidraft +antidrag +antidromal +antidromic +antidromous +antidromy +antidrug +antiduke +antidumping +antidynamic +antidynastic +antidysuric +antiedemic +antiegotism +antielectron +antiemetic +antiemperor +antienzyme +antienzymic +antierosion +antiethnic +antieugenic +antiextreme +antiface +antifaction +antifame +antifanatic +antifascism +antifascist +antifascists +antifat +antifatigue +antifebrile +antifederal +antifelon +antifelony +antifeminism +antifeminist +antiferment +antifeudal +antifideism +antifire +antiflash +antiflux +antifoam +antifoaming +antifogmatic +antiforeign +antiformant +antiformin +antifouler +antifouling +antifowl +antifreeze +antifreezes +antifreezing +antifriction +antifrost +antifungal +antifungin +antigalactic +antigambling +antiganting +antigene +antigenic +antigenicity +antigens +antighostism +antigigmanic +antiglare +antigo +antigod +antigone +antigonon +antigonus +antigraft +antigraph +antigravity +antigropelos +antigrowth +antigua +antiguan +antiguggler +antigyrous +antihalation +antihectic +antihelix +antihero +antiheroes +antiheroic +antiheroism +antihidrotic +antiholiday +antihormone +antihuff +antihum +antihuman +antihumanism +antihunting +antihydropic +antihydropin +antihygienic +antihylist +antihypnotic +antihysteric +antikamnia +antikanien +antikathode +antiketogen +antikinase +antiking +antikleia +antiknock +antiknocks +antilabor +antilaborist +antilacrosse +antilactase +antileague +antilebanon +antilegalist +antilegomena +antilemic +antilens +antilepsis +antileptic +antileveling +antilia +antiliberal +antiliberals +antilift +antilipase +antilipoid +antiliquor +antilithic +antillaes +antillean +antilles +antillia +antilobium +antilocapra +antilochus +antiloemic +antilogic +antilogical +antilogism +antilogous +antilogs +antilogy +antiloimic +antiloop +antilope +antilopinae +antilottery +antiluetin +antilynching +antilysin +antilysis +antilyssic +antilytic +antimacassar +antimachine +antimagnetic +antimalaria +antimalarial +antimallein +antimaniac +antimaniacal +antimarian +antimark +antimartyr +antimask +antimasker +antimason +antimasonic +antimasonry +antimasque +antimasquer +antimatter +antimedical +antimedieval +antimellin +antimension +antimensium +antimephitic +antimere +antimerger +antimeric +antimerina +antimerism +antimeristem +antimetabole +antimeter +antimethod +antimetrical +antimetropia +antimetropic +antimicrobic +antimilitary +antiminsion +antimissile +antimission +antimixing +antimnemonic +antimodel +antimodern +antimonate +antimonial +antimoniate +antimoniated +antimonic +antimonid +antimonide +antimonies +antimonious +antimonite +antimonium +antimoniuret +antimonopoly +antimonsoon +antimonyl +antimoral +antimoralism +antimoralist +antimosquito +antimusical +antimycotic +antimythic +antimythical +antin +antinarcotic +antinational +antinatural +antinazi +antinegro +antinegroism +antinepotic +antineuritic +antineutral +antineutrino +antineutron +antineutrons +anting +antings +antinial +antinicotine +antinion +antinode +antinoise +antinome +antinomian +antinomians +antinomic +antinomical +antinomies +antinomist +antinomy +antinoriega +antinormal +antinosarian +antinous +antinovel +antinovels +antinucci +antinucleon +antinucleons +antioch +antiochene +antiochian +antiochus +antiodont +antionline +antionous +antiope +antiopelmous +antiopium +antiopiumist +antiopiumite +antioptimist +antioqui +antioquia +antiorgastic +antiorthodox +antioxidant +antioxidants +antioxidase +antioxidizer +antioxygen +antioxygenic +antipacifist +antipapacy +antipapal +antipapalist +antipapism +antipapist +antiparabema +antiparallel +antipart +antiparticle +antipas +antipasch +antipascha +antipass +antipasti +antipastic +antipastos +antipatharia +antipathetic +antipathic +antipathida +antipathies +antipathist +antipathize +antipathogen +antipatriot +antipatris +antipedal +antipepsin +antipeptone +antiperiodic +antiperthite +antipetalous +antipewism +antipharmic +antiphase +antiphon +antiphonally +antiphonary +antiphoner +antiphonetic +antiphonic +antiphonical +antiphonies +antiphonon +antiphons +antiphony +antiphrasis +antiphrastic +antiphthisic +antiphysic +antiphysical +antiplague +antiplanet +antiplastic +antiplatelet +antipleion +antiplenist +antipodagric +antipodagron +antipodal +antipodeans +antipodic +antipodism +antipodist +antipoetic +antipoints +antipoison +antipolar +antipole +antipolemist +antipoles +antipolo +antipolygamy +antipool +antipooling +antipope +antipopery +antipopes +antipopular +antiportable +antiposition +antipoverty +antippp +antiprelate +antiprelatic +antipriest +antiprime +antiprimer +antipriming +antiprism +antiprophet +antiprosopon +antiprostate +antiprotease +antiproton +antiprotons +antipruritic +antipsalmist +antipsoric +antiptosis +antipudic +antipuritan +antiputrid +antipyic +antipyonin +antipyresis +antipyretic +antipyretics +antipyrine +antipyrotic +antipyryl +antiqua +antiquaire +antiquarians +antiquaries +antiquarism +antiquartan +antiquate +antiquated +antiquates +antiquating +antiquation +antique +antiqued +antiquely +antiquen +antiqueness +antiquer +antiquers +antiques +antiquing +antiquist +antiquities +antiquity +antirabic +antirabies +antiracemate +antiracer +antirachitic +antiracing +antiradical +antiradicals +antirational +antirattler +antireactive +antirealism +antirebating +antired +antireducer +antireform +antireformer +antiregime +antireligion +antirennet +antirennin +antirent +antirenter +antirentism +antiricin +antirickets +antiriginya +antiritual +antirobin +antiroman +antiromance +antiromantic +antiroyal +antiroyalist +antirrhinum +antirumor +antirun +antirust +antis +antisaloon +antisalooner +antisavage +antiscabious +antiscale +antischool +antiscians +antiscion +antiscolic +antiseismic +antiselene +antisensuous +antisepalous +antisepsin +antisepsis +antiseptic +antiseptical +antiseptics +antiseption +antiseptize +antisera +antiserum +antiserums +antishipping +antisi +antisialic +antisideric +antisine +antisiphon +antisiphonal +antiskid +antiskidding +antislavery +antislickens +antislip +antismog +antismoking +antisnapper +antisocial +antisocially +antisolar +antisophist +antisoviet +antispace +antispadix +antispasis +antispast +antispastic +antisplasher +antispreader +antisquama +antistalling +antistar +antistate +antistatism +antistatist +antisteapsin +antistes +antistock +antistrike +antistrophal +antistrophe +antistrophic +antistrophon +antistrumous +antisudoral +antisuffrage +antisun +antisymmetry +antisynod +antitabetic +antitabloid +antitangent +antitank +antitarnish +antitartaric +antitax +antitegula +antitetanic +antithalian +antitheft +antitheism +antitheist +antitheistic +antithenar +antithermic +antithermin +antitheses +antithesis +antithesism +antithesize +antithet +antithetical +antithetics +antithrombic +antithrombin +antithyroid +antitobacco +antitonic +antitorpedo +antitoxic +antitoxin +antitoxins +antitrade +antitrades +antitragal +antitragic +antitragicus +antitragus +antitrismus +antitropal +antitrope +antitropic +antitropical +antitropous +antitropy +antitrust +antitrypsin +antitryptic +antitsr +antitussive +antitwilight +antitypal +antitype +antityphoid +antitypic +antitypical +antitypy +antiuating +antiunion +antiunionist +antiuratic +antiurease +antiusurious +antivenefic +antivenereal +antivenin +antivenins +antivenom +antivenomous +antivibrator +antivice +antiviral +antivirals +antivirus +antiviruses +antivitalist +antivitamin +antivolition +antiwar +antiwarlike +antiwaste +antiwedge +antiweed +antiwit +antizealot +antizymic +antizymotic +antje +antkowiak +antle +antlered +antlerite +antlerless +antlers +antlia +antliate +antlid +antlike +antling +antlion +antlions +antluetic +antm +anto +antoeci +antoecian +antoecians +antofagasta +antoft +antoine +antoinette +antology +anton +antonak +antonapoulos +antonarelli +antonchico +antone +antonella +antonelli +antonetta +antoni +antonia +antonie +antonietta +antonin +antonina +antoninianus +antonino +antoninus +antonio +antoniou +antonis +antonita +antonito +antoniu +antonomasia +antonomastic +antonomasy +antonopoulos +antonov +antonovics +antonowna +antonucci +antonutti +antony +antonymies +antonymous +antonyms +antonymy +antonys +antonyuk +antorbital +antothijah +antothite +antproof +antra +antrag +antral +antralgia +antre +antrectomy +antrim +antrin +antritis +antro +antrocele +antronasal +antrophore +antrophose +antrorse +antrorsely +antroscope +antroscopy +antrostomus +antrotome +antrotomy +antrum +antrums +antrustion +ants +antsahavola +antship +antsiranana +antsukh +antti +antu +antuan +antum +antwerpen +antwerpia +antwise +anuak +anub +anubing +anubis +anuchit +anucleate +anufo +anukabiet +anuki +anukit +anula +anulka +anuloma +anum +anung +anunga +anup +anupe +anupecwayi +anuperi +anuphon +anura +anuradhapura +anurag +anuran +anurans +anuresis +anuretic +anuria +anuric +anurous +anury +anuses +anusim +anusvara +anuta +anutka +anutraminosa +anvanced +anvasser +anver +anvers +anvik +anvil +anviled +anviling +anvilled +anvilling +anvils +anvilsmith +anviltop +anviltops +anwain +anwar +anwender +anxieties +anxietude +anxiety +anxious +anxiousbench +anxiously +anxiousness +anxiousseat +anya +anyah +anyama +anyan +anyang +anyanga +anyaran +anybodies +anybody +anybodyd +anybodys +anychia +anyep +anyfolder +anyghing +anyhow +anyi +anyima +anyimere +anyin +anykey +anylabel +anymore +anyo +anyone +anyones +anys +anyspeed +anystidae +anything +anythings +anytime +anyuak +anyula +anywa +anywaa +anywak +anyway +anyways +anywhen +anywhere +anywhereness +anywheres +anywhy +anywise +anywither +anyx +anza +anzac +anzanian +anzarouth +anzeigen +anzio +anzoategui +anzures +anzus +aoaqui +aoba +aobleq +aoblss +aogiri +aoheng +aoife +aoki +aola +aoluta +aomie +aomori +aona +aonach +aonchigal +aone +aonian +aoniken +aoos +aore +aorist +aoristic +aoristically +aorr +aorta +aortae +aortal +aortarctia +aortas +aortectasia +aortectasis +aortic +aorticorenal +aortism +aortitis +aortoclasia +aortoclasis +aortolith +aortomalacia +aortomalaxis +aortopathy +aortoptosia +aortoptosis +aortorrhaphy +aortotomy +aosa +aose +aosg +aoshedd +aosmic +aosn +aosta +aotea +aotearoa +aotes +aotus +aouad +aouads +aouda +aoudad +aoudads +aoudjila +aouellimiden +aoul +aowin +aozou +apabhramsa +apace +apache +apachean +apaches +apachette +apachism +apachite +apadana +apaeaa +apagibete +apagoge +apagogic +apagogical +apagogically +apahapsili +apaid +apaiwong +apak +apaka +apakabeti +apakibeti +apal +apalachee +apalachicola +apalachin +apalai +apalakiri +apalaquiri +apalay +apalit +apama +apambia +apanage +apandry +apanhecra +apaniekra +apanjekra +apanteles +apantesis +apanthropia +apanthropy +apaporis +apar +apara +aparai +aparaphysate +aparejo +apargia +apari +aparicio +aparithmesis +aparna +apart +apartado +apartamid +aparthrosis +apartment +apartmental +apartments +apartness +apasco +apasote +apastron +apatan +apatani +apatela +apatetic +apathetic +apathetical +apathic +apathies +apathism +apathist +apathistical +apathogenic +apathus +apatites +apatornis +apatosaurus +apaturia +apaulette +apaw +apawar +apayao +apbasic +apbm +apchheee +apcm +apds +apeak +apear +apectomy +aped +apede +apedom +apeek +apehood +apeiron +apelet +apelike +apeling +apelles +apello +apellous +apem +apeman +apemantus +apennine +apennines +apenteric +apepsia +apepsinia +apepsy +apeptic +aper +aperch +apercu +apercus +apere +aperea +apergu +aperient +aperies +aperiodicity +aperispermic +aperistalsis +aperitif +aperitifs +aperitive +apers +apert +apertion +apertly +apertness +apertometer +apertural +apertured +apertures +aperu +apery +apes +apesthesia +apesthetic +apesthetize +apetalae +apetaloid +apetalose +apetalous +apetaly +apex +apexed +apexes +apfel +apgar +apgea +aphaeresis +aphaeretic +aphagia +aphakia +aphakial +aphakic +aphanapteryx +aphanes +aphanesite +aphaniptera +aphanite +aphanites +aphanitic +aphanitism +aphanomyces +aphanophyre +aphanozygous +apharsites +aphasiac +aphasiacs +aphasias +aphasics +aphek +aphekah +aphelandra +aphelenchus +aphelia +aphelian +aphelilia +aphelilions +aphelinus +aphelion +aphelops +aphemia +aphemic +aphengescope +aphengoscope +aphenoscope +apheresis +apheretic +aphesis +apheta +aphetic +aphetically +aphetism +aphetize +aphex +aphiah +aphicidal +aphicide +aphides +aphidian +aphidicide +aphidicolous +aphidid +aphididae +aphidiinae +aphidious +aphidius +aphidivorous +aphidolysin +aphidozer +aphids +aphik +aphis +aphlaston +aphlebia +aphlogistic +aphnology +aphodal +aphodian +aphodius +aphodus +aphonia +aphonic +aphonous +aphony +aphoria +aphorise +aphorismatic +aphorismer +aphorismic +aphorismical +aphorismos +aphorisms +aphorist +aphoristic +aphorists +aphorize +aphorized +aphorizer +aphorizes +aphorizing +aphoruridae +aphotic +aphototactic +aphototaxis +aphototropic +aphra +aphrah +aphrasia +aphrite +aphrizite +aphrodisia +aphrodisiac +aphrodisiacs +aphrodisian +aphrodision +aphrodistic +aphrodite +aphroditeum +aphroditic +aphroditidae +aphroditous +aphrolite +aphronia +aphses +aphtha +aphthic +aphthitalite +aphthoid +aphthong +aphthongal +aphthongia +aphthous +aphu +aphyllose +aphyllous +aphylly +aphyric +apia +apiaca +apiaceae +apiaceous +apiaka +apiake +apiales +apian +apiapum +apiararies +apiarian +apiaries +apiarist +apiarists +apiary +apiator +apiaweti +apicad +apical +apicalls +apically +apicella +apichart +apician +apicifixed +apicilar +apicillary +apicitis +apicius +apickaback +apicoectomy +apicolysis +apicula +apicular +apiculate +apiculated +apiculation +apicultural +apiculture +apiculturist +apiculus +apidae +apidia +apiece +apieces +apifor +apigenin +apii +apiin +apikoros +apilary +apilevel +apina +apinae +apinage +apinaje +apinapin +apinaye +apinch +apindje +apindji +aping +apinji +apinoid +apio +apioceridae +apioid +apioidal +apiole +apiolin +apiologies +apiologist +apiology +apionol +apios +apiose +apiosoma +apiphobia +apirat +apis +apish +apishamore +apishly +apishness +apism +apison +apispy +apitong +apitpat +apium +apivorous +apjohnite +aplacental +aplacentalia +aplacentaria +aplacophora +aplacophoran +aplanat +aplanatic +aplanatism +aplanobacter +aplanogamete +aplanospore +aplasia +aplastic +aplatform +aplcen +aplcomm +aplease +aplecon +aplectrum +aplenty +aplication +aplington +aplite +aplitic +aplobasalt +aplodiorite +aplodontia +aplombs +aplome +aplopappus +aplotaxene +aplotomy +aplpy +apls +apluda +aplustre +aplvax +aplvm +aplysia +apma +apmisibil +apnea +apneal +apneap +apneas +apneic +apneumatic +apneumatosis +apneumona +apneumonous +apneustic +apnoea +apoaconitine +apoala +apoatropine +apobiotic +apoblast +apocaffeine +apocalypse +apocalypses +apocalypst +apocalypt +apocalyptic +apocalyptica +apocalyptism +apocalyptist +apocamphoric +apocarp +apocarpous +apocarpy +apocatharsis +apocenter +apocentric +apocha +apocholic +apochromat +apochromatic +apocodeine +apocopate +apocopated +apocopation +apocope +apocopic +apocrenic +apocrisiary +apocrita +apocrustic +apocryph +apocrypha +apocryphally +apocryphate +apocryphon +apocynaceae +apocynaceous +apocyneous +apocynthion +apocynthions +apocynum +apod +apoda +apodaca +apodal +apodan +apodeictic +apodeictical +apodeipnon +apodeixis +apodema +apodemal +apodematal +apodeme +apodes +apodia +apodictic +apodictical +apodictive +apodidae +apodixis +apodosis +apodous +apodyterium +apoembryony +apofenchene +apogaeic +apogalacteum +apogamic +apogamically +apogamous +apogamously +apogamy +apogeal +apogean +apogee +apogees +apogeic +apogenous +apogeny +apogeotropic +apogon +apogonidae +apograph +apographal +apoharmine +apohyal +apoi +apoidea +apoise +apojove +apokinskij +apokrea +apokreos +apolar +apolarity +apolaustic +apolegamic +apolista +apolistan +apolitical +apolitically +apollinarian +apolline +apollo +apollodorus +apollogrp +apollon +apollonia +apollonic +apollonicon +apollonistic +apollos +apolloship +apollyon +apolo +apologal +apologete +apologetic +apologetical +apologetics +apologias +apologies +apologist +apologists +apologize +apologized +apologizer +apologizers +apologizes +apologizing +apologue +apologues +apolousis +apolune +apolunes +apolysin +apolysis +apolytikion +apomecometer +apomecometry +apometabolic +apometaboly +apomiami +apomictic +apomictical +apomixis +apomorphia +apomorphine +apon +apone +aponeurology +aponeurosis +aponeurotic +aponeurotome +aponeurotomy +aponewyork +aponia +aponic +aponogeton +aponte +apoop +apopenptic +apopetalous +apophantic +apophasis +apophatic +apophis +apophonia +apophony +apophthegm +apophyge +apophylactic +apophylaxis +apophyllite +apophyllous +apophysary +apophysate +apophyseal +apophysis +apophysitis +apopka +apoplectic +apoplectical +apoplectoid +apoplex +apoplexies +apoplexy +apopokuva +apopyle +apoquinamine +apoquinine +apor +aporetic +aporetical +aporhyolite +aporia +aporn +aporocactus +aporosa +aporose +aporphin +aporphine +aporrhaidae +aporrhais +aporrhaoid +aporrhegma +aport +aportoise +apos +aposafranine +aposaturn +aposaturnium +aposeattle +aposematic +aposepalous +aposhanskij +aposia +aposiopesis +aposiopetic +apositia +apositic +aposoro +aposporogony +aposporous +apospory +apostacies +apostacy +apostasies +apostasis +apostasy +apostates +apostatic +apostatical +apostatism +apostatize +apostatized +apostatizes +apostatizing +apostaxis +apostemate +apostematic +apostemation +apostematous +aposteme +aposteriori +aposthia +apostil +apostis +apostle +apostlee +apostlehood +apostles +apostleship +apostleships +aposto +apostolate +apostoless +apostoli +apostolian +apostolical +apostolici +apostolicism +apostolicity +apostolides +apostolize +apostolos +apostrophal +apostrophe +apostrophes +apostrophic +apostrophied +apostrophize +apostrophus +apotactic +apotactici +apotelesm +apothecal +apothecaries +apothecary +apothece +apothecial +apothecium +apothegmatic +apothegms +apothem +apothems +apotheose +apotheoses +apotheosize +apotheosized +apothesine +apothesis +apotome +apotracheal +apotropaic +apotropaion +apotropaism +apotropous +apoturmeric +apotype +apotypic +apout +apowasi +apoxesis +apoxyomenos +apozem +apozema +apozemical +apozymase +appa +appaim +appal +appalachian +appalachians +appalled +appalling +appallingly +appallment +appalls +appalment +appaloosa +appaloosas +appals +appanages +appanagist +apparat +apparats +apparatus +apparatuses +apparel +appareled +appareling +apparelled +apparelling +apparelment +apparels +apparence +apparency +apparenly +apparent +apparently +apparentness +apparition +apparitional +apparitions +apparitor +appart +appassionata +appassionato +appay +appc +appeach +appeachment +appeal +appealable +appealed +appealer +appealers +appealing +appealingly +appeals +appear +appearance +appearanced +appearances +appeared +appearer +appearers +appeareth +appearing +appears +appeasably +appease +appeased +appeasement +appeasements +appeaser +appeasers +appeases +appeaseth +appeasing +appeasingly +appeasive +appeha +appel +appelachian +appelation +appelative +appelbaum +appelidage +appell +appella +appellable +appellancy +appellants +appellation +appellations +appellative +appellatived +appellatory +appellee +appellees +appellor +appellors +appels +append +appendaged +appendages +appendalgia +appendance +appendancy +appendant +appendectomy +appended +appender +appenders +appendical +appendice +appendices +appendicial +appendicious +appendicitis +appendicle +appendicular +appending +appenditious +appendix +appendixa +appendixb +appendixc +appendixd +appendixe +appendixes +appendotome +appends +appenines +appentice +appenzella +appenzeller +apperceive +apperceived +apperceiving +apperceptive +appercipient +apperson +appertain +appertained +appertaineth +appertaining +appertains +appertinent +appestat +appestats +appet +appete +appetence +appetencies +appetency +appetent +appetently +appetibility +appetible +appetit +appetite +appetites +appetition +appetitional +appetitious +appetitive +appetize +appetizement +appetizer +appetizers +appetizing +appetizingly +apphia +appii +appinite +appius +appl +applanate +applanation +applaudable +applaudably +applauded +applauder +applauders +applauding +applaudingly +applauds +applause +applauses +applausive +applausively +applcations +apple +applebaum +appleberry +appleblossom +applecart +applecreek +appledore +appledrane +applegarth +applegate +applegrove +applegrower +applejacks +applejohn +applemonger +applenut +applepie +appleringy +appleriver +appleroot +apples +applesauce +applesprings +applet +appletalk +appletoncity +applets +applevalley +applewife +applewoman +appleyard +appliable +appliably +appliances +appliant +applic +applica +applicable +applicably +applicancy +applicants +applicatio +application +applications +applicative +applicator +applicators +applicatory +applied +appliedly +applier +appliers +applies +applin +appling +appliqued +appliquee +appliqueing +appliques +applixware +applosion +applosive +applot +applotment +apply +applying +applyingly +applyment +applz +appmaker +appnum +appoggiato +appoggiatura +appoint +appointable +appointed +appointees +appointer +appointers +appointeth +appointing +appointive +appointively +appointment +appointments +appointor +appoints +appollodorus +appollonio +appolo +appolonia +appolonius +appomatox +appomattoc +appomattox +appopolous +apportioned +apportioner +apportioning +apportions +apposability +apposable +appose +apposed +apposer +apposes +apposing +appositely +appositeness +appositional +appositions +appositive +appositively +appplication +apppolish +appprove +appraisable +appraisals +appraised +appraisement +appraiser +appraisers +appraises +appraising +appraisingly +appraisive +appreciable +appreciably +appreciant +appreciate +appreciated +appreciates +appreciating +appreciation +appreciativ +appreciative +appreciator +appreciators +appreciatory +appredicate +apprehend +apprehended +apprehender +apprehending +apprehends +apprend +apprense +apprentice +apprenticed +apprentices +apprenticing +appressed +appressor +appressorial +appressorium +appreteur +apprise +apprised +appriser +apprisers +apprises +apprising +apprize +apprized +apprizement +apprizer +apprizes +apprizing +approach +approachabl +approachable +approached +approacher +approachers +approaches +approacheth +approaching +approachless +approachment +approachto +approbate +approbated +approbating +approbations +approbative +approbator +approbatory +approof +appropre +appropriate +appropriated +appropriates +appropriator +approvable +approval +approvals +approvance +approve +approved +approvedly +approvedness +approvement +approver +approvers +approves +approvest +approveth +approving +approvingly +approx +approximal +approximants +approximate +approximated +approximates +approximator +apps +appstate +appstr +appstraka +appugliese +appulse +appulsion +appulsive +appulsively +appurtenance +appurtenant +appz +apra +apractic +apraxia +apraxic +apre +aprea +apres +apricate +aprication +aprickle +apricot +apricots +april +aprilesque +aprilette +apriline +aprilis +aprille +aprilmarch +apriori +apriorism +apriorist +aprioristic +apriority +aproape +aprocta +aproctia +aproctous +apron +aproneer +apronful +aproning +apronless +apronlike +aprons +aprosexia +aprosopia +aprosopous +aproterodont +aprotype +aprwe +apryle +apsched +apsd +apselaphesia +apselaphesis +apses +apsidal +apsidally +apsides +apsidiole +apsis +apso +apsychia +apsychical +aptal +aptekman +aptenodytes +apter +aptera +apteral +apteran +apterial +apterium +apteroid +apterous +apteryges +apterygial +apterygidae +apterygota +apterygote +apterygotous +apteryx +apteryxes +aptest +aptian +aptiana +aptidon +aptitude +aptitudes +aptitudinal +aptly +aptness +aptnesses +aptos +aptote +aptotic +aptyalia +aptyalism +aptychus +apucikwar +apui +apuk +apukin +apulia +apulian +apulmonic +apulse +apuoth +apurahuano +apure +apuri +apurimac +apurina +apurpose +apurucayali +apurve +apus +aput +apwot +apyonin +apyrene +apyretic +apyrexia +apyrexial +apyrexy +apyrotype +apyrous +apytare +aqaba +aqabah +aqalim +aqatic +aqsu +aqua +aquabelle +aquabib +aquacade +aquacades +aquacultural +aquaculture +aquae +aquaemanale +aquafortist +aquage +aquagreen +aqualite +aqualung +aquamarine +aquamarines +aquameter +aquanaut +aquanauts +aquaplane +aquaplaned +aquaplanes +aquaplaning +aquapuncture +aquarelle +aquarellist +aquaria +aquarial +aquarian +aquarians +aquarid +aquarii +aquariia +aquariist +aquariiums +aquarist +aquarists +aquarium +aquariums +aquarter +aquas +aquasco +aquascutum +aquashicola +aquatic +aquatical +aquatically +aquatics +aquatile +aquating +aquatint +aquatinta +aquatinted +aquatinter +aquatints +aquation +aquativeness +aquatone +aquatones +aquavalent +aquavit +aquavits +aquaviva +aquebogue +aqueduct +aqueducts +aqueoglacial +aqueoigneous +aqueously +aqueousness +aquicolous +aquicultural +aquiculture +aquifer +aquiferous +aquifers +aquiform +aquila +aquilaria +aquilawood +aquilege +aquilegia +aquiles +aquilian +aquilid +aquiline +aquilino +aquilla +aquincubital +aquinist +aquino +aquiparous +aquired +aquistapace +aquitaine +aquitania +aquitanian +aquiver +aquo +aquocarbonic +aquone +aquose +aquosity +aquotization +aquotize +arab +araba +arabadjis +arabah +arabais +araban +arabana +arabanic +arabberber +arabe +arabel +arabela +arabele +arabella +arabelle +arabesk +arabesks +arabesque +arabesquely +arabesquerie +arabesques +arabi +arabia +arabian +arabianize +arabians +arabic +arabicism +arabicize +arabicized +arabidopsis +arabie +arability +arabin +arabinic +arabinose +arabinosic +arabinya +arabis +arabische +arabism +arabisraeli +arabist +arabit +arabitol +arabiyeh +arabization +arabize +arabized +arabizing +arabjabbari +arabkir +arable +arables +arabophil +arabs +arabsat +arabsheibani +arabswahili +araca +aracana +aracanga +aracari +araceae +araceli +araceous +arachic +arachidonic +arachin +arachis +arachnactis +arachne +arachnean +arachnida +arachnidan +arachnidial +arachnidism +arachnidium +arachnids +arachnism +arachnites +arachnitis +arachnoid +arachnoidal +arachnoidea +arachnoidean +arachnology +arachnopia +arad +aradhin +aradidae +aradigi +arado +araeostyle +araeosystyle +arafat +arafundi +arafura +aragallus +arago +aragon +aragonese +aragonian +aragonite +aragorn +aragu +aragua +araguaia +araguato +aragure +aragwa +arah +arai +arain +arains +arak +araka +arakan +arakanese +arakawaite +arakcheyev +arake +arakh +araki +araks +araku +aral +arales +aralia +araliaceae +araliaceous +araliad +aralie +aralkyl +aralkylated +aralle +aram +arama +aramaean +aramaic +aramaicize +aramaism +aramanik +aramaue +aramayoite +aramba +aramia +aramic +aramidae +aramideh +aramina +araminta +aramis +aramitess +aramo +arampi +aramu +aramus +aran +arana +aranadan +aranda +arandai +arandelovic +arandic +arandui +aranea +araneae +araneid +araneida +araneidan +araneiform +araneiformes +araneiformia +aranein +araneina +araneoidea +araneologist +araneology +araneous +aranga +arangkaa +arango +aranibar +aransaspass +aranuka +aranya +aranyaka +aranzada +araona +arap +arapac +arapahite +arapaho +arapahoe +arapahos +arapaima +arapaso +arapesh +araphorostic +arapium +arapovic +arapunga +araquaju +arar +arara +araracanga +araracuara +ararao +ararapina +ararat +ararauna +ararawa +arare +arariba +araroba +arasairi +arashi +arasocialist +araspaso +arata +aratama +arathon +arati +aration +aratoon +aratory +arau +araua +arauan +arauca +araucan +araucania +araucanian +araucano +araucaria +araucarian +arauine +arauite +araujia +araujo +arauna +araunah +arava +aravamudhan +aravia +arawa +arawak +arawakan +arawakian +arawe +arawete +arawum +aray +arba +arbacia +arbacin +arbah +arbais +arbalest +arbalester +arbalestre +arbalestrier +arbalests +arbalist +arbalister +arbalo +arbanasi +arbanville +arbat +arbathite +arbatt +arbec +arbeit +arbeitende +arbeitet +arbela +arber +arbesu +arbi +arbil +arbite +arbiters +arbitrable +arbitrager +arbitragers +arbitrages +arbitragist +arbitral +arbitrament +arbitraments +arbitrarily +arbitrary +arbitrated +arbitrates +arbitrating +arbitration +arbitrations +arbitrative +arbitrator +arbitrators +arbitratrix +arbitrement +arbitrer +arbitress +arbogast +arboles +arboli +arboloco +arbon +arbor +arbora +arboraceous +arboral +arborary +arborator +arbore +arborea +arboreally +arborean +arbored +arboreous +arbores +arborescence +arborescent +arboresque +arboret +arboreta +arboretum +arboretums +arboria +arborian +arborical +arboricole +arboricoline +arboricolous +arboriform +arborist +arborists +arborization +arborize +arborized +arborizes +arborizing +arboroid +arborolatry +arborous +arbors +arbortext +arborvitae +arborvitaes +arborway +arbour +arboured +arbours +arbovale +arbre +arbresh +arbuck +arbuckle +arbus +arbuscle +arbuscula +arbuscular +arbuscule +arbusterol +arbustum +arbutase +arbute +arbutean +arbuthnot +arbutin +arbutinase +arbutt +arbutuses +arbuzov +arbyrd +arca +arcacea +arcade +arcaded +arcades +arcadia +arcadian +arcadianism +arcadianly +arcadians +arcadias +arcadic +arcadings +arcady +arcanal +arcand +arcane +arcaneness +arcanite +arcanum +arcata +arcate +arcati +arcature +arce +arced +arcella +arceuthobium +arch +archaeoceti +archaeolatry +archaeolith +archaeologer +archaeologic +archaeology +archaeornis +archaeostoma +archagitator +archaic +archaical +archaically +archaicism +archaicness +archaisms +archaist +archaistic +archaists +archaize +archaized +archaizer +archaizes +archaizing +archambault +archambeault +archangel +archangelic +archangelica +archangels +archapostate +archapostle +archard +archarios +archartist +archbald +archband +archbeacon +archbeadle +archbishopry +archbishops +archbold +archbotcher +archboutefeu +archbuffoon +archbuilder +archcape +archchampion +archchaplain +archcheater +archchemic +archchief +archcity +archconsoler +archcorsair +archcount +archcozener +archcriminal +archcritic +archcrown +archdale +archdapifer +archdeacon +archdeaconry +archdeacons +archdean +archdeanery +archdeceiver +archdefender +archdemon +archdespot +archdevil +archdiocesan +archdioceses +archdivine +archdolt +archdruid +archducal +archduchess +archduchies +archduchy +archduke +archdukedom +archdukes +arche +archeal +archean +archearl +archebiosis +archecentric +arched +archegenesis +archegone +archegonial +archegoniata +archegoniate +archegonium +archegony +archeion +archelaus +archelenis +archelogy +archelon +archemperor +archenemies +archengineer +archenteric +archenteron +archeocyte +archeologist +archeology +archeozoic +archer +archercity +archerd +archeress +archerfish +archeries +archers +archership +arches +archespore +archesporial +archesporium +archest +archetypal +archetypally +archetype +archetypes +archetypic +archetypist +archeunuch +archeus +archevites +archexorcist +archfelon +archfiend +archfiends +archfire +archflamen +archfoe +archform +archfounder +archfriend +archgod +archgomeral +archgovernor +archgunner +archhacker +archhead +archheart +archheresy +archheretic +archhost +archhouse +archhumbug +archi +archiater +archibald +archibenthal +archibenthic +archibenthos +archiblast +archiblastic +archibuteo +archicad +archicantor +archicarp +archicoele +archicyte +archicytula +archidamus +archidiaceae +archidium +archidome +archie +archiereus +archies +archigaster +archigenesis +archigonic +archigony +archikaryon +archil +archilithic +archilochian +archilowe +archimage +archimago +archimagus +archimbeau +archimedean +archimedes +archimime +archimorphic +archimorula +archimperial +archimycetes +archin +archineuron +archinfamy +archinformer +archings +archintsy +archipallial +archipallium +archipegalo +archipelagic +archipelago +archipelagos +archipielago +archipin +archiplasm +archiplasmic +archiplata +archippus +archisperm +archispermae +archisphere +archispore +archistome +archisupreme +archite +architect +architective +architects +architecture +architecure +architeuthis +architis +architraval +architrave +architraved +architraves +archiv +archival +archive +archived +archiver +archivers +archives +archivieren +archiving +archivist +archivists +archivolt +archivs +archizoic +archjockey +archking +archknave +archleader +archlecher +archleveler +archliar +archlute +archly +archmachine +archmagician +archmagirist +archmarshal +archmime +archminister +archmock +archmocker +archmockery +archmonarch +archmonarchy +archmugwump +archmurderer +archness +archocele +archology +archon +archons +archonship +archonships +archont +archontate +archontia +archontic +archoplasm +archoplasmic +archoptoma +archoptosis +archorrhagia +archorrhea +archosyrinx +archoverseer +archpall +archpapist +archpastor +archpatron +archphylarch +archpiece +archpilferer +archpillar +archpirate +archplagiary +archplayer +archplotter +archpoet +archpontiff +archpractice +archprelate +archprelatic +archpriest +archprimate +archprince +archprophet +archpublican +archpuritan +archradical +archrascal +archrebel +archregent +archrobber +archrogue +archruler +archsaint +archsatrap +archseducer +archsee +archsewer +archshepherd +archsin +archsnob +archspirit +archspy +archsteward +archswindler +archtempter +archthief +archtraitor +archturncoat +archtyrant +archuletta +archurger +archvagabond +archvampire +archvillain +archvillainy +archvisitor +archwag +archway +archways +archwench +archwise +archworker +archy +arcidacono +arcidae +arcifera +arciferous +arcifinious +arciform +arcing +arcite +arcked +arcking +arclike +arcmail +arcnet +arco +arcocentrous +arcocentrum +arcograph +arcola +arconti +arcos +arcot +arcouet +arcs +arcserve +arcserver +arctalia +arctalian +arctamerican +arctan +arctation +arctia +arctian +arctic +arctica +arctically +arctician +arcticize +arctics +arcticward +arcticwards +arctiid +arctiidae +arctisca +arctium +arctogaea +arctogaeal +arctogaean +arctoid +arctoidea +arctoidean +arctomys +arctos +arctosis +arcturia +arcturus +arcual +arcuale +arcuate +arcuated +arcuately +arcuation +arcubalist +arcubalister +arcula +arculite +arcus +arcview +arcy +arda +ardalion +ardant +ardara +ardassine +ardath +ardavan +ardea +ardeae +ardeb +ardec +ardeen +ardeidae +ardelia +ardelis +ardell +ardella +ardelle +arden +ardencies +ardene +ardenia +ardenne +ardennes +ardennite +ardently +ardentness +ardenvoir +arderi +ardhamagadhi +ardhanari +ardie +ardiel +ardiles +ardine +ardis +ardish +ardisia +ardisiaceae +ardisj +ardisson +ardites +ardith +arditi +ardizone +ardmore +ardoch +ardoin +ardoise +ardon +ardor +ardors +ardour +ardours +ardra +ardri +ardrian +ards +ardsley +ardu +arduina +arduinite +arduous +arduously +arduousness +ardurous +ardvax +ardyce +ardys +ardyth +area +areach +aread +areaexcl +areafile +areafix +areaincl +areal +arealink +areality +areamanager +areamgrdir +arean +arear +areare +areas +areasbbsname +areasettings +areasoner +areatag +areaways +areaz +areca +arecaceae +arecaceous +arecaidin +arecaidine +arecain +arecaine +arecales +arecibo +arecolidin +arecolidine +arecolin +arecoline +arecreated +arecuna +ared +aredale +aree +areek +areel +arefact +arefaction +arefairly +aregerek +aregh +aregiven +aregusuku +aregwe +arehidden +areille +areito +arekuna +areli +arelites +arell +arellano +arelsford +arem +arema +aren +arena +arenae +arenaria +arenariae +arenarious +arenas +arenasvalley +arenation +arend +arenda +arendalite +arendt +arendtsville +areng +arenga +arenicola +arenicole +arenicolite +arenicolor +arenicolous +arenig +arenilitic +arenoid +arenose +arenosity +arens +arensen +arent +arenzville +areobotany +areocentric +areoforms +areogel +areographer +areographic +areography +areola +areolae +areolar +areolas +areolate +areolated +areolation +areole +areoles +areolet +areologic +areological +areologist +areologists +areology +areometer +areometric +areometrical +areometry +areopagist +areopagite +areopagitic +areopagitica +areopagus +areothermal +arequena +arequipa +areroscope +ares +arescent +aresco +arestrup +aret +aretaics +aretas +arete +aretes +aretha +arethusa +arethuse +aretinian +aretology +areu +arevalo +arewa +arex +arfak +arfinnsson +arfvedsonite +argal +argala +argali +argals +argamakmur +argan +argand +argans +argante +argas +argasid +argasidae +argc +argcount +argean +argeers +argel +argelander +argeleb +argemi +argemone +argemony +argenol +argensola +argent +argenta +argental +argentamid +argentamide +argentamin +argentamine +argentate +argentation +argenteous +argenter +argentesi +argenteum +argentia +argentic +argentide +argentina +argentine +argentinean +argentineans +argentines +argentini +argentinian +argentinidae +argentinize +argentino +argentinos +argention +argentite +argento +argentol +argentometry +argenton +argentose +argentous +argents +argentum +argenziano +arges +argestes +argh +arghan +arghel +arghezi +arghh +arghhh +arghhhh +arghool +argibay +argid +argil +argillite +argillitic +argilloid +argillous +argils +argiope +argiopidae +argiopoidea +argle +argled +argles +argo +argoan +argob +argobba +argobbinya +argoeni +argol +argolet +argolian +argolic +argolid +argolis +argols +argon +argonath +argonauta +argonautic +argonauts +argonia +argonne +argons +argos +argosies +argosy +argotic +argots +argovian +args +arguable +arguably +argue +arguebus +argued +arguello +arguer +arguers +argues +arguette +argufied +argufier +argufiers +argufy +argufying +arguing +argulus +argument +argumental +argumentator +argumentive +arguments +argun +arguni +argunu +argus +arguses +arguseyed +argusfish +argusianus +arguslike +argusville +argute +argutely +arguteness +argv +argyle +argyles +argyll +argylls +argynnis +argyranthous +argyraspides +argyre +argyria +argyric +argyrite +argyrodite +argyrol +argyroneta +argyrose +argyrosis +argyrosomus +argyrythrose +arha +arhangay +arhar +arhats +arhatship +arhauaco +arho +arhondis +arhuaco +arhus +arhythmic +aria +ariaal +ariadna +ariadne +arial +arian +ariana +arianda +ariane +ariangulu +arianist +arianistic +arianistical +arianists +arianize +arianizer +arianrhod +arianthe +arias +ariawiai +aribeda +aribert +ariberto +aribindi +aribine +arica +aricapu +arician +aricine +aricuna +aridai +aridatha +arided +arider +aridest +aridge +aridian +aridities +aridity +aridly +aridness +arie +arieel +ariegite +arieh +ariel +ariela +arieli +ariella +arielle +arienzo +arieso +arietation +arietid +arietinous +arietta +arif +arifama +aright +arightly +arigibi +arigidi +arigue +arihini +ariidae +arijit +arik +arikapu +arikara +arikem +arikinapi +arikis +arikun +aril +ariled +arillary +arillate +arillated +arilliform +arillode +arillodium +arilloid +arillus +arils +arilvn +arima +arimabased +arimamodels +arimasp +arimaspian +arimathaea +arimathaean +arimathea +arimo +arin +arina +arinc +aringa +arinos +arinua +arinwa +ario +ariocarpus +arioch +arioi +arioian +ariom +arion +ariose +arioso +ariosos +ariot +aripaktsa +aripeka +ariporo +aripple +aris +arisaema +arisai +arisard +arise +ariseachi +arised +ariser +arises +ariseth +arishima +arisia +arising +arisings +arispe +arist +arista +aristaeus +aristarch +aristarchian +aristarchus +aristarchy +aristate +aristeas +aristee +aristeo +aristes +aristid +aristida +aristide +aristides +aristine +aristippus +aristobulus +aristocratic +aristocrats +aristogenic +aristogenics +aristol +aristolochia +aristolochin +aristologist +aristology +aristophanes +aristophanic +aristotelic +aristotelism +aristotype +aristov +aristulate +aritao +arite +arith +arithmatic +arithmetic +arithmetical +arithmetics +arithmetize +arithmetized +arithmetizes +arithmic +arithmocracy +arithmogram +arithmograph +arithmomania +arithmometer +ariton +arius +arivaca +arivaipa +ariwaruna +arizjvax +arizona +arizonan +arizonans +arizone +arizonian +arizonians +arizonite +arizono +arizrvax +arjas +arjay +arjeplog +arjshell +arjsort +arjun +arjz +arkab +arkabutla +arkadelphia +arkadhia +arkadin +arkadiusz +arkadiy +arkady +arkadys +arkanas +arkania +arkanoid +arkansans +arkansascity +arkansaw +arkansawyer +arkansite +arkdale +arkell +arkesteijn +arkey +arkhangelsk +arkie +arkim +arkin +arkite +arkles +arknet +arko +arkoma +arkose +arkosic +arkport +arks +arksikainen +arksutite +arktouros +arkville +arkytown +arlan +arlana +arlandina +arle +arledge +arlee +arleen +arlen +arlena +arlene +arleng +arles +arless +arleta +arletta +arlette +arletty +arley +arleyne +arli +arlie +arliene +arlija +arlina +arlinda +arline +arlington +arlirau +arlis +arliss +arll +arlo +arlon +arlong +arlt +arluene +arlut +arly +arlyn +arlyne +arma +armacost +armada +armadas +armadilla +armadillos +armado +armadu +armaerrors +armageddon +armagh +armagnac +armahagyeman +armajane +armamens +armamentary +armaments +arman +armand +armande +armandhammer +armando +armangite +armanni +armantel +armariolum +armarium +armatoles +armatoli +armature +armatured +armatures +armax +armband +armbands +armbone +armbrust +armbruster +armchaired +armchairs +armed +armelia +armelle +armen +armenakis +armendariz +armenderez +armengaud +armengol +armenia +armeniaceous +armenians +armenic +armenier +armenize +armenoid +armenta +armentrout +armer +armeria +armeriaceae +armers +armes +armet +armetta +armey +armfeldt +armful +armfuls +armgard +armgaunt +armholes +armhoop +armiane +armida +armido +armied +armies +armiferous +armiger +armigeral +armigerent +armigerous +armigers +armii +armil +armilla +armillary +armillate +armillated +armin +armina +armine +arming +armings +armington +armini +arminian +arminianism +arminianize +arminianizer +arminio +arminta +armipotence +armipotent +armisonant +armisonous +armistead +armistices +armisticia +armit +armitage +armitraj +armless +armlessly +armlessness +armlet +armlets +armlike +armload +armloads +armne +armoaed +armoires +armolavicius +armona +armoni +armonica +armopa +armor +armoracia +armorclad +armored +armorel +armorer +armorers +armorial +armoric +armorican +armorician +armoried +armories +armoring +armorist +armorplated +armorproof +armors +armorwise +armory +armour +armourbearer +armoured +armourer +armourers +armouries +armouring +armours +armoury +armozeen +armpiece +armpitnet +armpits +armplate +armrack +armrest +armrests +arms +armscor +armscye +armsful +armstead +armstrong +armuchee +armud +armure +armus +army +armytage +armyworm +armyworms +arna +arnab +arnad +arnal +arnaldo +arnall +arnan +arnason +arnatt +arnaud +arnaudville +arnaudy +arnauld +arnaut +arnaz +arnberry +arnd +arndt +arne +arneb +arnebia +arnee +arneg +arnegard +arnella +arnemann +arneric +arnesen +arness +arnessysla +arnett +arnfried +arngrim +arnheim +arnhelm +arnhem +arni +arnica +arnicas +arnie +arnim +arnis +arniya +arniyo +arno +arnold +arnolda +arnoldafb +arnoldi +arnoldist +arnoldo +arnolds +arnoldsburg +arnoldspark +arnoldsville +arnon +arnone +arnor +arnoseris +arnost +arnot +arnott +arnotta +arnotto +arnoud +arnoul +arnould +arnoux +arnov +arnspringer +arnstadt +arnstaedt +arnstedt +arnstein +arnstutz +arnt +arnulf +arnusian +arnut +arny +aroar +aroast +aroba +arock +arod +aroda +arodi +arodites +aroeira +aroer +aroerite +aroeste +aroff +arogbo +aroian +aroid +aroideous +aroides +aroids +aroint +arointed +arointing +aroints +arokwa +aroldo +arolium +arolla +aroma +aromacity +aromadendrin +aromapark +aromas +aromatic +aromatically +aromaticness +aromatics +aromatite +aromatites +aromatize +aromatizer +aromatophor +aromatophore +aromunian +aron +arona +aronia +aronnax +aronovich +aronson +aronstam +aroon +arop +arora +arorae +aroras +aros +arosa +arosario +arose +arosemena +arosi +aroud +around +arounds +arous +arousal +arousals +arouse +aroused +arousement +arouser +arousers +arouses +arousing +arove +arow +arowak +aroxyl +aroynt +aroynts +arozamena +arpa +arpad +arpagrunion +arpanet +arpatroy +arpawocky +arpeggiando +arpeggiated +arpeggiation +arpeggiator +arpeggioed +arpeggios +arpen +arpent +arpenthaler +arpents +arpercen +arphad +arphaxad +arpin +arpola +arpoundren +arpwatch +arquebus +arquebusade +arquebuses +arquerite +arquette +arquifoux +arquipelago +arrabal +arracach +arracacha +arracacia +arracks +arrah +arraigned +arraigner +arraigning +arraignment +arraignments +arraigns +arrakh +arrakis +arrame +arrange +arranged +arrangement +arrangements +arranger +arrangers +arranges +arranging +arrant +arrantly +arrants +arrapahoe +arras +arrased +arrasene +arrases +arrastra +arrastre +arratel +arrau +array +arrayal +arrayals +arrayed +arrayer +arrayers +arraying +arrayment +arrays +arrearage +arrearages +arrears +arrect +arrector +arren +arrendation +arrenotokous +arrenotoky +arrent +arrentable +arrentation +arreptitious +arrest +arrestable +arrestation +arrested +arrestee +arrestees +arrester +arresters +arresting +arrestingly +arrestive +arrestment +arrestor +arrestors +arrests +arretez +arretine +arrey +arrghh +arrhenal +arrhenoid +arrhenotoky +arrhinia +arrhizal +arrhizous +arrhythmia +arrhythmias +arrhythmic +arrhythmical +arrhythmous +arrhythmy +arriaga +arriage +arriba +arribadas +arribas +arride +arridge +arrido +arrie +arriega +arriere +arriero +arriet +arrieta +arrigo +arrimby +arrin +arrindell +arringeu +arrington +arris +arrish +arrisways +arriswise +arrius +arrival +arrivals +arrive +arrived +arrivederci +arriver +arrivers +arrives +arriving +arro +arroba +arrogance +arrogancy +arrogant +arrogantly +arrogantness +arrogated +arrogates +arrogating +arrogatingly +arrogation +arrogations +arrogative +arrogator +arrojadite +arron +arrope +arrosion +arrosive +arround +arrow +arrowbridge +arrowbush +arrowed +arrowhead +arrowheaded +arrowheads +arrowing +arrowkeys +arrowleaf +arrowless +arrowlet +arrowlike +arrowplate +arrowrock +arrowroots +arrows +arrowsmith +arrowstone +arrowweed +arrowwood +arrowworm +arrowy +arroyo +arroyogrande +arroyohondo +arroyos +arroyoseco +arrr +arrrgg +arruague +arrum +arry +arryish +arsacid +arsacidan +arsalane +arsania +arsanilic +arsavir +arsca +arscb +arscc +arscd +arsce +arscsc +arse +arsedine +arsena +arsenal +arsenals +arsenates +arsenation +arsenault +arsene +arseneau +arseneted +arsenetted +arsenfast +arsenhemol +arseniasis +arseniate +arsenic +arsenical +arsenicalism +arsenicate +arsenicism +arsenicize +arsenics +arsenides +arseniferous +arsenije +arsenillo +arsenious +arsenism +arsenite +arsenites +arsenium +arseniuret +arseniureted +arsenization +arseno +arsenobenzol +arsenofuran +arsenohemol +arsenolite +arsenophagy +arsenophen +arsenophenol +arsenopyrite +arsenous +arsenoxide +arsentiev +arseny +arsenyl +arses +arsesmart +arsh +arshad +arsheen +arshin +arshine +arsi +arsia +arsinic +arsino +arsinoe +arsis +arslan +arsle +arsmetrik +arsmetrike +arsnicker +arso +arsoite +arsonate +arsonation +arsonic +arsonist +arsonists +arsonite +arsonium +arsono +arsonous +arsons +arsphenamine +arsyl +arsylene +arta +artaba +artabe +artace +artagnan +artal +artalo +artamidae +artamonov +artamus +artar +artarine +artas +artasen +artaud +artaxerxes +artb +artc +artchloh +artcole +artcraft +artd +arte +artefact +artega +artek +artel +artem +artemas +artemenko +artemia +artemidorus +artemis +artemise +artemisic +artemisin +artemision +artemisium +artemus +artemyev +artens +arteriagra +arterial +arterialize +arterially +arterials +arteriarctia +arteriasis +arteries +arterin +arteriogram +arteriograph +arteriolar +arterioles +arteriolith +arteriology +arteriometer +arteriomotor +arteriopathy +arteriorenal +arteriospasm +arteriotome +arteriotomy +arterious +arteritis +artery +artes +artesi +artesia +artesian +artewg +artf +artfully +artfulness +artgum +artha +arthare +arthel +arthemis +arthogram +arthragra +arthral +arthralgia +arthralgic +arthrectomy +arthredema +arthritic +arthritical +arthriticine +arthritics +arthritism +arthrobranch +arthrocace +arthrocele +arthroclasia +arthroclisis +arthroderm +arthrodesis +arthrodia +arthrodial +arthrodic +arthrodira +arthrodiran +arthrodire +arthrodirous +arthrodynia +arthrodynic +arthrogastra +arthrogenous +arthrography +arthrolite +arthrolith +arthrology +arthromere +arthromeric +arthrometer +arthrometry +arthroncus +arthropathic +arthropathy +arthrophyma +arthroplasty +arthropleura +arthropleure +arthropod +arthropoda +arthropodal +arthropodan +arthropodous +arthropods +arthropomata +arthropyosis +arthrosia +arthrosis +arthrospore +arthrosporic +arthrostome +arthrostomy +arthrostraca +arthrosyrinx +arthrotome +arthrotomy +arthrotrauma +arthrotropic +arthrous +arthrozoa +arthrozoan +arthrozoic +arthur +arthurcity +arthurdale +arthurdent +arthurian +arthuriana +arthurs +arthurtrent +arthus +artiad +artibonite +artichokes +article +articled +articles +articling +artics +articulable +articulacy +articulant +articular +articulare +articularly +articulary +articulata +articulate +articulated +articulately +articulates +articulating +articulation +articulative +articulator +articulators +articulite +articulus +artier +artiest +artifact +artifacts +artificer +artificers +artifices +artificial +artificially +artigas +artiller +artilleries +artillerist +artillerists +artillery +artilleryman +artillerymen +artily +artin +artinelli +artiness +artinite +artinskian +artiodactyl +artiodactyla +artiphyllous +artisans +artisanship +artisoft +artist +artistdom +artiste +artistes +artistic +artistical +artistically +artistries +artists +artizt +artless +artlessly +artlessness +artlet +artlike +artocarpad +artocarpeous +artocarpous +artocarpus +artoff +artois +artola +artolater +artoo +artop +artophagous +artophorion +artotype +artotypy +artotyrite +artpack +arts +artside +artspssa +artu +artur +arturo +artuso +artuya +artvin +artware +artwick +artwin +artwork +artworks +artzer +arua +aruac +aruachi +aruaco +aruamu +aruan +aruba +aruban +arubas +aruboth +aruek +arufe +arui +aruke +arulo +aruma +arumah +arumanian +arumchessu +arumin +arums +arun +aruna +arunachal +arunachalam +arunava +aruncus +arundel +arundiferous +arundinaria +arundineous +arundo +arundum +arunee +arung +arungu +arunta +aruop +arupa +arupai +aruro +arus +arusa +arusha +arusi +aruspex +aruspice +arussi +arustle +arutani +arutanisape +aruth +aruzza +arvad +arvada +arvadite +arval +arvan +arvanites +arvanitic +arvanitika +arvedui +arvel +arver +arveredo +arverni +arvesen +arvicola +arvicole +arvicolinae +arvicoline +arvicolous +arviculture +arvid +arvide +arvidsjaur +arvilla +arvin +arvind +arvonia +arvor +arwakhi +arwen +arya +aryan +aryanah +aryanism +aryanization +aryanize +aryans +aryavong +aryballoid +aryballus +arye +arylamine +arylamino +arylate +aryls +aryn +aryon +arytenoid +arytenoidal +arythmia +arythmic +arza +arzallus +arzan +arzava +arzawa +arzeno +arzeu +arzew +arzogiou +arzoglou +arzrunite +arzt +arzu +arzun +asaah +asadabad +asaddle +asafetida +asafoetida +asagai +asahel +asahiah +asahyue +asaiah +asak +asake +asale +asambe +asamblea +asami +asan +asana +asanachinda +asande +asander +asanga +asano +asanova +asante +asanti +asantitwi +asao +asaorta +asap +asapa +asaph +asaphia +asaphic +asaphid +asaphidae +asaphus +asaprol +asarabacca +asaraceae +asareel +asarelah +asarh +asarite +asaro +asaron +asarone +asarotum +asarum +asas +asat +asatms +asatoshi +asawa +asbakin +asbest +asbestic +asbestiform +asbestine +asbestinize +asbestoid +asbestoidal +asbestosis +asbestous +asbestus +asbill +asbolin +asbolite +asbury +asburypark +ascabart +ascalabota +ascan +ascanian +ascanius +ascare +ascariasis +ascaricidal +ascaricide +ascarid +ascaridae +ascarides +ascaridia +ascaridiasis +ascaridole +ascaris +ascaron +ascebc +ascella +ascellus +ascencio +ascend +ascendable +ascendance +ascendancy +ascendansy +ascendant +ascended +ascendence +ascendency +ascendent +ascender +ascenders +ascendeth +ascendible +ascending +ascendingly +ascends +ascension +ascensional +ascensionist +ascensions +ascensive +ascent +ascents +ascertain +ascertained +ascertainer +ascertaining +ascertains +ascescency +ascescent +ascetical +ascetically +ascetics +ascetta +aschaffenb +aschaffite +ascham +asche +aschera +aschistic +asci +ascian +ascidia +ascidiacea +ascidiae +ascidian +ascidiate +ascidicolous +ascidiferous +ascidiform +ascidiia +ascidioid +ascidioida +ascidioidea +ascidiozoa +ascidiozooid +ascidium +asciferous +ascigerous +ascii +asciionly +asciiz +ascioglu +ascites +ascitic +ascitical +ascititious +asciz +asclent +asclepiad +asclepiadae +asclepiadean +asclepiadic +asclepian +asclepias +asclepidin +asclepidoid +asclepieion +asclepin +asclepius +asco +ascocarp +ascocarpous +ascochyta +ascogenous +ascogone +ascogonial +ascogonidium +ascogonium +ascolichen +ascolichenes +ascom +ascoma +ascomycetal +ascomycete +ascomycetous +ascon +ascones +ascophore +ascophorous +ascophyllum +ascorbate +ascorbic +ascospore +ascosporic +ascosporous +ascot +ascots +ascott +ascoyne +ascraeus +ascribable +ascribe +ascribed +ascribes +ascribing +ascript +ascriptions +ascriptitii +ascriptitius +ascry +ascula +ascupart +ascus +ascutney +ascyphous +ascyrum +asdel +asdic +asdirex +asea +asean +asearch +aseb +asecretory +ased +aseethe +asei +aseismatic +aseismic +aseismicity +aseity +aselgeia +asellate +aselli +asellidae +aselline +asellus +asem +asemasia +asemia +asen +asenath +asengseng +asenov +asensio +asepses +asepsis +aseptate +aseptically +asepticism +asepticize +aseptify +aseptol +aseptolin +asequential +aser +asera +aseries +aseven +asexuality +asexualize +asexually +asexuals +asfaloth +asfar +asfazadour +asfetida +asgard +asgeirsson +asghar +asgharzadeh +asha +ashabanapal +ashaganna +ashagre +ashake +ashamed +ashamedly +ashamedness +ashamnu +ashan +ashangos +ashaninca +ashante +ashantee +ashanti +ashar +asharasi +ashaway +ashbea +ashbee +ashbel +ashbelites +ashberry +ashbrook +ashburn +ashburnham +ashburton +ashby +ashcake +ashcamp +ashcan +ashcans +ashchenaz +ashcolored +ashcroft +ashdod +ashdodites +ashdothites +ashdown +ashe +asheboro +ashed +asheley +ashely +ashencote +ashenden +asheninca +asher +asherah +asherites +asherson +asherton +ashery +ashes +ashet +asheville +ashfield +ashflat +ashford +ashfork +ashgrove +ashia +ashida +ashielu +ashien +ashier +ashiest +ashigara +ashigashia +ashikaga +ashil +ashily +ashima +ashimmer +ashine +ashiness +ashing +ashinginai +ashininka +ashipboard +ashippun +ashir +ashirat +ashish +ashitha +ashiver +ashkaraua +ashkelon +ashkenaz +ashkenazic +ashkenazim +ashkharik +ashkoko +ashkum +ashkun +ashkund +ashkuni +ashl +ashla +ashlan +ashland +ashlandcity +ashlar +ashlared +ashlaring +ashlars +ashlee +ashleigh +ashlen +ashler +ashlers +ashless +ashley +ashleyfalls +ashli +ashlie +ashling +ashlushlay +ashluslay +ashly +ashmore +ashnah +asho +ashochimi +ashoistdis +ashoistex +ashoistexopt +ashok +ashoka +asholio +ashour +ashp +ashpan +ashpenaz +ashpit +ashplant +ashq +ashraf +ashraff +ashrafi +ashram +ashrams +ashree +ashret +ashreti +ashriel +ashshura +ashtabula +ashtangi +ashtaroth +ashterathite +ashteroth +ashthroat +ashtiani +ashtikulin +ashton +ashtoreth +ashtrays +ashu +ashuelot +ashuku +ashur +ashurites +ashurkoff +ashuruveri +ashuwa +ashvath +ashville +ashweed +ashwood +ashwort +ashworth +asia +asiago +asiak +asialia +asian +asianara +asianic +asianism +asianmade +asians +asiaoro +asiarch +asiarchate +asiatical +asiatically +asiatican +asiaticism +asiaticize +asiatize +asiayone +asic +asid +aside +asidehand +asideness +asiderite +asides +asideu +asie +asiel +asienara +asiento +asif +asiga +asilid +asilidae +asilulu +asilus +asimanton +asimbali +asimen +asimina +asimmer +asimov +asims +asimsrdc +asinego +asing +asinh +asininely +asininities +asininity +asiphonate +asiphonogama +asiq +asir +asis +asistores +asita +asitia +asix +asjundant +askable +askam +askania +askant +askar +askari +aske +asked +askee +askelon +asker +askers +askest +asketh +askey +askin +asking +askingly +askings +askins +askip +askira +asklent +asklepios +askos +askoti +askov +askr +asks +askwith +aslaksen +aslan +aslanides +aslant +aslantwise +aslar +aslaver +asleep +asli +aslian +aslog +aslop +aslope +aslumber +asmack +asmalte +asmar +asmara +asmat +asmatkamoro +asmear +asmedit +asmexpand +asmgrowth +asmile +asmocode +asmodeus +asmoke +asmolder +asmrename +asmreorg +asmussen +asnah +asnam +asnapper +asnat +asner +asngat +asni +asniffle +asnort +asnto +asnuab +asoak +asobse +asok +asoka +asolio +asom +asomatophyte +asomatous +asonant +asong +asongori +asonia +asop +asor +asosa +asotin +asou +asouth +asoutlined +asowi +aspac +aspace +aspack +aspalathus +aspalax +asparagic +asparaginic +asparaginous +asparaguses +asparagyl +asparkle +aspartate +aspartyl +aspasia +aspatha +aspatia +aspca +aspecific +aspect +aspectable +aspectant +aspection +aspects +aspectual +aspegren +aspen +aspens +asper +asperate +asperation +aspergation +asperge +asperger +asperges +aspergil +aspergill +aspergillin +aspergillum +aspergillus +asperifoliae +asperite +asperities +aspermatic +aspermatism +aspermatous +aspermia +aspermic +aspermont +aspermous +asperous +asperously +aspers +asperse +aspersed +asperser +aspersers +asperses +aspersing +aspersions +aspersive +aspersively +aspersor +aspersorium +aspersors +aspersory +asperugo +asperula +asperuloside +asperulous +asphalted +asphaltene +asphalter +asphaltic +asphalting +asphaltite +asphaltnacht +asphalto +asphalts +asphaltum +aspheterism +aspheterize +asphodel +asphodeline +asphodels +asphodelus +asphyctic +asphyctous +asphyxia +asphyxial +asphyxiant +asphyxiated +asphyxiates +asphyxiating +asphyxiation +asphyxiative +asphyxiator +asphyxied +asphyxy +aspi +aspic +aspick +aspics +aspiculate +aspiculous +aspidate +aspidiaria +aspidinol +aspidiotus +aspidiske +aspidistras +aspidium +aspidomancy +aspidosperma +aspidov +aspin +aspinwall +aspirants +aspirata +aspirated +aspirates +aspirating +aspiration +aspirations +aspirator +aspirators +aspiratory +aspire +aspired +aspirer +aspirers +aspires +aspirin +aspiring +aspiringly +aspiringness +aspirins +aspish +asplanchnic +asplenieae +asplenioid +asplinda +asplund +asporina +asporogenic +asporogenous +asporous +asport +asportation +asporulate +aspout +asprawl +aspread +aspredinidae +aspredo +asprer +asprin +aspring +asprout +asps +asqar +asqualcntrl +asquare +asquat +asqueal +asquerino +asquin +asquint +asquirm +asquith +asrama +asramas +asrcmv +asrcvx +asri +asriel +asrielites +asrit +asrod +assaad +assacu +assad +assael +assaf +assafoetida +assagai +assagais +assagori +assaikio +assaiko +assailable +assailant +assailants +assailed +assailer +assailers +assailing +assailment +assails +assaka +assama +assamese +assamites +assamourai +assan +assane +assangori +assante +assanti +assapan +assapanic +assar +assaria +assarion +assart +assary +assasin +assasins +assassin +assassinate +assassinated +assassinates +assassinator +assassinist +assassins +assate +assation +assault +assaultable +assaulted +assaulter +assaulters +assaulting +assaultive +assaults +assaut +assawathep +assawoman +assay +assayable +assayed +assayer +assayers +assaying +assays +assbaa +asse +assecuration +assecurator +assedation +assegai +assegais +asself +asselin +assem +assema +assemblable +assemblage +assemblages +assemble +assembled +assemblee +assembleia +assembler +assemblers +assembles +assemblies +assembling +assembly +assemblyman +assemblymen +assemblyroom +assen +assent +assentaneous +assentation +assentatious +assentator +assentatory +assented +assenter +assenters +assentient +assenting +assentingly +assentive +assentment +assentor +assentors +assents +assenza +assert +assertable +assertative +asserted +asserter +asserters +assertible +asserting +assertion +assertional +assertions +assertive +assertively +assertor +assertorial +assertoric +assertorical +assertorily +assertors +assertory +assertress +assertrix +asserts +assertum +asses +assess +assessable +assessably +assessed +assessee +assesses +assessing +assession +assessionary +assessment +assessments +assessorial +assessors +assessorship +assessory +assets +assever +asseverate +asseverated +asseverates +asseverating +asseveration +asseverative +asseveratory +asshead +asshole +assholio +asshur +asshurim +assi +assia +assibilate +assibilation +assidean +assident +assidual +assidually +assiduities +assiduously +assientist +assiento +assify +assign +assignable +assignably +assignat +assignations +assigned +assignees +assigneeship +assigner +assigners +assigning +assignment +assignments +assignor +assignors +assigns +assilag +assimer +assimilated +assimilates +assimilating +assimilation +assimilative +assimilator +assimilatory +assine +assiniboin +assiniboine +assinie +assir +assiringia +assis +assisan +assise +assish +assishly +assishness +assisi +assist +assistance +assistances +assistant +assistanted +assistants +assisted +assistency +assister +assisters +assistful +assisting +assistive +assistless +assistor +assistors +assists +assize +assizement +assizer +assizes +asslike +asslst +assman +assmanship +assn +asso +assoc +associate +associated +associates +associating +association +associations +associative +associator +associators +associatory +assoedit +assoil +assoilment +assoilzie +assoli +assonance +assonanced +assonances +assonantal +assonantic +assonantly +assonants +assonate +assonet +assonia +assortative +assorted +assortedness +assorter +assorters +assorting +assortive +assortment +assortments +assorts +assos +assotiation +assoun +assouna +assr +asst +assuade +assuagable +assuaged +assuagement +assuagements +assuager +assuages +assuaging +assuasive +assubjugate +assuefaction +assuetude +assumable +assumably +assumbo +assume +assumed +assumedly +assumer +assumers +assumes +assumiing +assuming +assumingly +assumingness +assumpsit +assumption +assumptions +assumptious +assumptive +assumptively +assunta +assur +assurable +assurance +assurances +assurant +assure +assured +assuredly +assuredness +assureds +assurer +assurers +assures +assurge +assurgency +assurgent +assuring +assuringly +assurini +assuror +assurors +asswage +asswaged +assyntite +assyria +assyrian +assyrianize +assyrians +assyriologue +assyroid +assythment +asta +astacidae +astacus +astaire +astakiwi +astalavista +astalk +astalos +astangov +astapovich +astar +astarboard +astare +astaret +astarin +astarito +astaroth +astart +astarte +astartian +astartidae +astasia +astate +astatic +astatically +astaticism +astatines +astatistical +astatize +astatizer +astatula +astay +asteam +asteatosis +astedader +asteep +asteer +asteism +astelic +astell +astely +aster +asteraceae +asteraceous +asterales +asterella +asteria +asterial +asterias +asteriated +asteriidae +asterikos +asterin +asterina +asterinidae +asterioid +asterion +asterionella +asterisk +asterisked +asterisks +asterism +asterismal +asterisms +astern +asternal +asternata +asternia +asterochiton +asteroid +asteroidea +asteroidean +asteroids +asterolepis +asterope +asteroxylon +asterozoa +asters +asterwort +asthenia +asthenic +asthenical +asthenolith +asthenology +asthenopia +asthenopic +astheny +asther +asthma +asthmas +asthmatic +asthmatical +asthmatics +asthmatoid +asthmogenic +asthore +asthorin +asti +astian +astiani +astichous +astigmatical +astigmatizer +astigmia +astigmism +astigmometer +astigmometry +astilbe +astin +astint +astipulate +astir +astite +astle +astley +astomatal +astomatous +astomia +astomous +aston +astonied +astonish +astonished +astonishedly +astonisher +astonishes +astonishing +astonishment +astony +astoop +astor +astori +astorino +astound +astoundable +astounded +astounding +astoundingly +astoundment +astounds +astra +astrachan +astradyne +astraea +astraean +astraeid +astraeidae +astraeiform +astragal +astragalar +astragali +astragals +astragalus +astrain +astrakanite +astrakhan +astral +astrally +astrals +astrand +astrantia +astraphobia +astray +astrea +astream +astrer +astrict +astriction +astrictive +astrictively +astrid +astrier +astriferous +astrild +astringe +astringed +astringency +astringently +astringents +astringer +astringes +astringing +astrit +astrix +astro +astrobiology +astroblast +astrocaryum +astrochemist +astrocyte +astrocytoma +astrodome +astrodynamic +astroem +astrofel +astroff +astrogeny +astroglia +astrognosy +astrogonic +astrogony +astrograph +astrographic +astrography +astroid +astroite +astrolabe +astrolabes +astrolabical +astrolater +astrolatry +astrologer +astrologers +astrologian +astrologic +astrological +astrologist +astrologists +astrologize +astrologous +astrology +astrom +astromancer +astromancy +astromantic +astrometer +astrometry +astron +astronaut +astronautics +astronauts +astronomers +astronomia +astronomica +astronomical +astronomics +astronomize +astronomy +astropecten +astrophil +astrophobia +astrophyton +astroscope +astroscopus +astroscopy +astrosphere +astrosyn +astroturf +astrovax +astroworld +astruc +astrut +asts +astucious +astuciously +astucity +astur +asturian +asturias +astute +astutely +astuteness +astyanax +astylar +asua +asuae +asuati +asuckin +asudden +asumbo +asumboa +asumbuo +asuncio +asuncion +asunder +asungore +asuppim +asura +asuri +asurini +asurvey +asus +asustek +asuvax +aswail +aswan +aswanik +aswarm +asway +asweat +aswell +aswim +aswing +aswirl +aswoon +aswooned +asya +asyla +asyllabia +asyllabic +asyllabical +asylum +asylums +asymbiotic +asymbolia +asymbolic +asymbolical +asymmetric +asymmetrical +asymmetries +asymmetron +asympotic +asymptomatic +asymptoptic +asymptotes +asymptotic +asymptotical +asymptotics +asymtote +asymtotes +asymtotic +asynapsis +asynaptic +asynartete +asynartetic +async +asynchronism +asynchronous +asyncritus +asyndesis +asyndeta +asyndetic +asyndeton +asynergia +asynergy +asyngamic +asyngamy +asyntactic +asyntrophy +asyou +asystematic +asystole +asystolic +asystolism +asyut +asyzygetic +atabal +atabeg +atabek +atable +atabrine +atacama +atacaman +atacamen +atacamenan +atacamenian +atacameno +atacamite +atacora +atactic +atactiform +atad +ataentsic +atafter +atafu +ataghan +atahuallpa +ataigal +atairat +ataitan +ataiyal +atajo +atak +atakapa +atakar +atakat +atakora +atakpame +atala +atalan +atalanta +atalante +atalissa +atalla +atalov +atam +ataman +atamanu +atamasco +atami +atamisqui +atamosco +atan +atanas +atanasoff +atanassova +atangle +atanh +atao +ataouat +atap +atapapo +atapi +ataqatigiit +ataractic +atarah +ataram +ataraxia +ataraxic +ataraxy +atari +ataripoe +ataris +ataroth +atarothadar +atarothaddar +atas +atascadero +atascosa +atassut +atatigwa +atatlahuca +atatschite +ataturk +atau +ataul +ataunt +ataura +atauro +atauru +atavi +atavic +atavisms +atavist +atavistic +atavists +atavus +ataxaphasia +ataxia +ataxiagram +ataxiagraph +ataxiameter +ataxiaphasia +ataxic +ataxinomic +ataxite +ataxonomic +ataxophemia +ataxy +atayal +atayalic +atazir +atbalmin +atbash +atcha +atchat +atche +atchely +atcher +atcheson +atchin +atchison +atchley +atcmds +atco +ateba +atebrin +atechnic +atechnical +atechny +ateeter +atef +ateita +atelectasis +atelectatic +ateles +atelestite +atelets +atelier +ateliers +ateliosis +atellan +atelo +atelocardia +ateloglossia +atelognathia +atelomitic +atelomyelia +atelopodia +atelostomia +atemble +atemple +atempleapris +atemporal +aten +atenango +atenism +atenist +atepec +ater +aterian +ates +atesino +ateso +atest +atestine +ateuchi +ateuchus +atfalati +atftk +atglen +athabasca +athabascau +athach +athaiah +athalamous +athalia +athaliah +athalline +athamantid +athamantis +athanasia +athanasian +athanasy +athanor +athapascan +athapaskan +athar +atharvan +athecae +athecata +athecate +atheisms +atheistic +atheistical +atheists +atheize +atheizer +athelia +atheling +athelings +athelny +athelstane +athelston +athematic +athena +athenaea +athenaeum +athenaeums +athene +athenee +atheneum +atheneums +athenian +athenianly +athenians +athenor +athens +atheological +atheology +atheous +athericera +athericeran +athericerous +atherine +atherinidae +atheriogaea +atheriogaean +atheris +athermancy +athermanous +athermic +athermous +atheroma +atheromasia +atheromata +atheromatous +atherosperma +atherton +atherurus +athetesis +athetic +athetize +athetoid +athetosic +athetosis +athey +athicorng +athiests +athing +athirst +athlai +athlete +athletehood +athletes +athletical +athletically +athleticism +athletico +athletics +athletism +athletocracy +athlothete +athlothetes +athodyd +athoic +athol +athole +atholsprings +athor +athort +athos +athosfax +athpare +athree +athrepsia +athreptic +athrill +athrive +athrob +athrocyte +athrocytosis +athrogenic +athrong +athrough +athu +athwal +athwarthawse +athwartship +athwartships +athwartwise +athymia +athymic +athymy +athyreosis +athyria +athyrid +athyridae +athyris +athyrium +athyroid +athyroidism +athyrosis +atiahu +atica +aticherak +aticum +atie +atienza +atihkamekw +atik +atikamek +atikamekw +atikokania +atikum +atila +atilt +atime +atimelang +atimon +atin +atina +atinga +atinggola +atingle +atinkle +ation +atip +atique +atiri +atis +atisa +atissa +atit +atitla +atiu +atjeh +atjehnese +atka +atkan +atkey +atkin +atkine +atkins +atkinson +atlanta +atlantad +atlantal +atlantan +atlantas +atlante +atlantean +atlantic +atlanticcity +atlanticmine +atlantico +atlantics +atlantid +atlantida +atlantides +atlantika +atlantique +atlantis +atlantite +atlantoaxial +atlas +atlasburg +atlases +atlaslike +atlatl +atlctyapt +atle +atleast +atlee +atli +atloaxoid +atloid +atloidean +atloidoaxoid +atlu +atma +atman +atmane +atmans +atmar +atmas +atmiatrics +atmiatry +atmid +atmidalbumin +atmidometer +atmidometry +atmo +atmocausis +atmocautery +atmoclastic +atmogenic +atmograph +atmologic +atmological +atmologist +atmology +atmolysis +atmolyzation +atmolyze +atmolyzer +atmometer +atmometric +atmometry +atmore +atmos +atmosphere +atmospheres +atmospheric +atmospherics +atmostea +atmosteal +atmosteon +atna +atnah +atnebar +atoc +atocha +atocia +atohwaim +atoka +atokal +atoke +atokous +atoktou +atol +atole +atoll +atolls +atom +atomatic +atombic +atomechanics +atomerg +atomic +atomical +atomically +atomiccity +atomician +atomicism +atomicity +atomics +atomies +atomiferous +atomise +atomised +atomises +atomising +atomism +atomisms +atomist +atomistic +atomistical +atomistics +atomists +atomity +atomization +atomize +atomized +atomizer +atomizers +atomizes +atomizing +atomology +atoms +atomtime +atomweta +atomy +atonable +atonalism +atonalistic +atonality +atonally +atoneable +atoned +atonement +atonements +atoneness +atoner +atoners +atones +atong +atoni +atonia +atonic +atonicity +atonics +atonies +atoning +atoningly +atony +atop +atophan +atopic +atopite +atopy +atorai +atori +atorti +atossa +atotonilco +atoui +atouna +atour +atoxic +atoxyl +atpar +atpco +atpoints +atprs +atps +atque +atra +atrabilarian +atrabiliar +atrabiliary +atrabilious +atracheate +atractaspis +atragene +atragon +atrail +atrament +atramental +atramentary +atramentous +atrato +atraumatic +atrc +atrebates +atreides +atremata +atrematous +atremble +atrepsy +atreptic +atresia +atresic +atresy +atretic +atreus +atreyu +atria +atrial +atributami +atrichia +atrichosis +atrichous +atrickle +atridean +atrienses +atriensis +atrioporal +atriopore +atrios +atrip +atriplex +atrium +atriums +atrius +atroahy +atroai +atroari +atrocha +atrochal +atrochous +atrociously +atrocities +atrolactic +atropa +atropaceous +atropal +atropamine +atrophia +atrophiated +atrophied +atrophies +atrophoderma +atrophying +atropia +atropic +atropidae +atropine +atropinism +atropinize +atropins +atropism +atropos +atropous +atrorubent +atroscine +atroth +atrous +atrowari +atrp +atruahi +atrun +atry +atrypa +atsahuaca +atsako +atsam +atsang +atsangbangwa +atscholi +atse +atsei +atshe +atshi +atsi +atsien +atsilima +atsimaru +atsina +atsipawa +atsiri +atsized +atsor +atsugewi +atsuko +atsumi +atsuo +atsushi +atsy +atta +attacapan +attacco +attach +attachable +attached +attachedly +attacher +attachers +attaches +attacheship +attaching +attachmate +attachment +attachments +attack +attackable +attacked +attacker +attackers +attacking +attackingly +attacks +attacolite +attacus +attagen +attaghan +attaglia +attai +attain +attainable +attainably +attainders +attained +attainer +attainers +attaining +attainment +attainments +attains +attaint +attainted +attainting +attaintment +attaints +attainture +attaka +attakar +attalea +attaleh +attalia +attalid +attalla +attalus +attanasio +attapu +attapulgus +attar +attarchi +attard +attarea +attargul +attars +attask +attatched +attatches +attatching +attaturk +attaway +attaya +attayal +attches +atte +attemper +attemperance +attemperate +attemperator +attempered +attempt +attemptable +attempted +attempter +attempters +attempting +attemptless +attempts +atten +attenborough +attend +attendance +attendances +attendancy +attendant +attendantly +attendants +attended +attendee +attendees +attendent +attender +attenders +attending +attendingly +attendment +attendress +attends +attensity +attent +attention +attentional +attentions +attentive +attentively +attently +attentuated +attenuable +attenuant +attenuated +attenuates +attenuating +attenuation +attenuations +attenuative +attenuator +attenuators +atter +atterbury +attercop +attercrop +atteridge +atterminal +attermine +attermined +attern +attery +attestable +attestant +attestations +attestative +attestator +attested +attester +attesters +attesting +attestive +attestor +attestors +attests +attfield +attica +attical +atticionic +atticism +atticist +atticize +attics +atticus +attid +attidae +attie +attiki +attila +attili +attilio +attilla +attimewk +attin +attinge +attingence +attingency +attingent +attinger +attino +attire +attired +attirement +attirer +attires +attiring +attitigon +attitude +attitudes +attitudinize +attleboro +attles +attn +attntrp +atto +attock +attogram +attollent +attoparsec +attopeu +attorn +attorneydom +attorneyism +attorneys +attorneyship +attorning +attornment +attouat +attourney +attr +attract +attractable +attractant +attractants +attracted +attracter +attractile +attracting +attractingly +attraction +attractions +attractive +attractively +attractivity +attractor +attractors +attracts +attrahent +attrap +attrib +attribues +attributable +attributal +attribute +attributed +attributer +attributes +attributing +attributions +attributives +attrist +attrite +attrited +attriteness +attritional +attritive +attritus +attroupement +attu +attuan +attuned +attunely +attunement +attunes +attuning +atty +atua +atuami +atuan +atuence +atuentse +atul +atule +atumble +atumfuor +atumfuorkasa +atun +atune +atuot +atura +ature +aturu +atwain +atwater +atweel +atween +atwell +atwill +atwin +atwirl +atwist +atwitch +atwitter +atwixt +atwo +atwot +atyap +atye +atyoti +atypical +atypically +atypy +atzera +atzi +atzingo +atzinteco +auake +auantic +auaque +auari +auaris +auaviwulu +aubade +aubades +auban +aube +aubel +aubepine +auber +auberge +auberges +aubergines +aubergiste +auberjonois +auberry +aubert +auberta +aubin +aubine +aubree +aubrette +aubrey +aubrie +aubrietia +aubrite +aubry +aubuchon +auburn +auburndale +auburns +auburntown +aubusson +auca +aucaans +aucan +aucaner +aucanian +aucayacu +aucctu +auch +auchenia +auchenium +auchi +auchlet +auclair +aucoin +auction +auctionary +auctioned +auctioneers +auctioning +auctions +auctorial +auctors +aucuba +aucupate +auda +audacious +audaciously +audacities +audad +audads +audaean +aude +auder +audessous +audet +audette +audi +audian +audibertia +audibility +audible +audibleness +audibles +audibly +audie +audience +audiences +audiencier +audient +audiero +audigrabber +audile +audin +audio +audioactive +audiocenter +audiogenic +audiograbber +audiogram +audiograms +audiological +audiologies +audiologist +audiologists +audiology +audiometer +audiometers +audiometric +audiometries +audiometrist +audiometry +audiomulch +audion +audiophile +audiophiles +audioplus +audioriver +audios +audiotapes +audiotracks +audiovisuals +audiphone +audit +audited +auditing +audition +auditioned +auditioning +auditions +auditive +auditives +auditoria +auditorial +auditorially +auditories +auditorily +auditorium +auditoriums +auditors +auditorship +auditre +auditress +audits +auditual +audivise +audiviser +audivision +audivox +audley +audollent +audra +audran +audre +audret +audrey +audrie +audry +audrye +audu +audubon +audubonistic +audy +auen +auer +auerbach +aueto +aufaure +aufenthalt +aufgebaut +aufruf +aufteilen +auga +auganite +augar +auge +augelite +augen +augends +auger +augerer +augeri +augers +augh +augher +aughra +aught +aughtlins +aughts +augie +augila +augilar +augitic +augitite +augitophyre +augment +augmentable +augmentative +augmented +augmentedly +augmenter +augmenters +augmenting +augmentive +augments +augot +augres +augsburg +augu +augur +augural +augurate +auguration +augured +augurer +augurers +augurial +auguries +auguring +augurous +augurs +augurship +augury +august +augusta +augustal +auguste +auguster +augustest +augusti +augustias +augustin +augustina +augustine +augustinian +augustinism +augustino +augustly +augustness +augusto +augustus +auguta +auhelawa +auhuhu +auiatarauwi +auikiben +auishiri +auiti +aujila +auka +aukaans +auke +auken +auker +aukin +auklet +auklets +aukov +auks +aukshtaitish +aukuni +aukwe +aula +aulacodus +aulacomnium +aulad +aulae +aulakh +aulander +aularian +aulaula +auld +aulder +auldest +aulds +auletai +aulete +auletes +auletic +auletrides +auletris +aulic +aulicism +auloi +aulophyte +aulos +aulostoma +aulostomi +aulostomid +aulostomidae +aulostomus +ault +aultman +aulu +aulua +aulupekotofa +aumaga +aumail +aumbry +aumery +aumil +aumildar +aumoine +aumont +aumous +aumrie +aumsville +auna +aunaagaraiwa +aunalei +auncel +aundrea +aune +aung +auni +aunique +aunjetitz +aunt +aunthood +aunthoods +aunti +aunties +auntish +auntliest +auntlike +auntly +aunts +auntsary +auntship +aunty +aunus +aunuu +auoff +auon +aupaka +auquidihogwa +auquier +aura +aurae +auraham +aural +aurally +aurama +auramine +aurantiaceae +aurantium +aurar +auras +aurate +aurated +auravictrix +auray +aure +aurea +aureate +aureately +aureateness +aureation +aurei +aureity +aurel +aurele +aurelea +aurelia +aurelian +aureliano +aurelie +aurelio +aurelius +aurelle +aureola +aureolae +aureolas +aureole +aureoled +aureoles +aureolin +aureoline +aureous +aureously +aures +auresca +aureum +aureus +auria +auribromide +aurichalcite +aurichalcum +aurichloride +auricle +auricled +auricles +auricomous +auricula +auriculae +auricular +auriculare +auriculares +auricularia +auriculariae +auricularian +auricularis +auricularly +auriculate +auriculated +auriculately +auriculidae +auricyanic +auricyanide +auride +aurie +auriferous +aurific +aurification +auriform +aurify +aurigal +aurigation +aurigerous +aurigid +aurignacian +aurilave +aurilia +aurime +aurin +aurinasal +auriol +auriphone +auriphrygia +auripuncture +aurir +auriscalp +auriscalpia +auriscalpium +auriscope +auriscopy +aurist +aurite +aurivorous +aurlie +aurness +auro +auroauric +aurobromide +aurochloride +aurochses +aurocyanide +aurodiamine +auron +auronal +auroora +aurophobia +aurophore +aurora +aurorae +auroral +aurorally +auroras +aurore +aurorean +aurorian +aurorium +aurous +aurrescu +aurukun +aurulent +aurum +aurums +aurure +auryl +ausableforks +ausblick +auscult +auscultate +auscultated +auscultates +auscultating +auscultation +auscultative +auscultator +auscultatory +ausente +ausfuehrba +ausgehende +ausgehenden +aushar +aushi +aushiri +auslaut +auslaute +auslesen +ausley +ausman +ausones +ausonia +ausonian +auspex +auspicate +auspice +auspicial +auspiciously +auspicy +ausprobieren +aussa +ausseil +ausserrhoden +aussey +aussi +aussie +aussies +aussigny +aust +austafrican +austagder +austell +austen +austenitic +auster +austere +austerely +austereness +austerest +austerities +austerity +austerlitz +austerus +austin +austina +austinburg +austine +austinville +austral +australasian +australene +australes +australia +australian +australians +australic +australioid +australoid +australorp +austrasia +austrasian +austria +austrian +austrianize +austrians +austric +austrium +austrogaea +austrogaean +austromancy +austronesian +austrophil +austrophile +austwell +ausu +ausubo +autacoid +autacoidal +autant +autantitypy +autarch +autarchic +autarchical +autarchies +autarchy +autarkic +autarkical +autarkist +autarky +autaugaville +aute +autechoscope +autecious +auteciously +autecism +autecologic +autecologist +autecology +autecy +autem +auteuil +auth +authenreith +authentex +authentic +authentical +authenticate +authenticity +authenticly +authigene +authigenetic +authigenic +authigenous +author +authorcraft +authored +authoress +authoresses +authorhood +authorial +authorially +authoring +authorish +authorism +authorities +authority +authorizable +authorize +authorized +authorizer +authorizers +authorizes +authorizing +authorless +authorling +authorly +authors +authorship +authotype +auths +autin +autisms +autist +autistic +autldtp +autmatically +auto +autoabstract +autoactive +autoadd +autoadded +autoaddede +autoaddress +autoaim +autoalarm +autoallogamy +autoanalysis +autoanalytic +autoanswer +autoantibody +autobahn +autobahnen +autobahns +autobasidia +autobasidium +autobasisii +autobiology +autoblast +autoboat +autoboating +autobolide +autobus +autobuses +autobusses +autocab +autocad +autocade +autocades +autocads +autocall +autocamp +autocamper +autocamping +autocapture +autocar +autocarist +autocarpian +autocarpic +autocarpous +autocatalyze +autocd +autocephalia +autocephaly +autoceptive +autochemical +autochrome +autochromy +autochthon +autochthonal +autochthones +autochthonic +autochthony +autocide +autocinesis +autoclasis +autoclastic +autoclaves +autocleaner +autoclub +autocoherer +autocoid +autocolony +autocon +autocopist +autocracies +autocratical +autocrator +autocratoric +autocratrix +autocrats +autocratship +autocreate +autocrouch +autodafe +autodel +autodermic +autodesk +autodetect +autodetector +autodetects +autodial +autodialed +autodialer +autodialers +autodialing +autodialled +autodialling +autodials +autodidact +autodidactic +autodidacts +autodin +autodrainage +autodrome +autodynamic +autodyne +autoecic +autoecious +autoeciously +autoecism +autoecous +autoecy +autoed +autoepigraph +autoerotic +autoerotism +autoexec +autofrettage +autogamic +autogamous +autogamy +autogauge +autogeneal +autogeneses +autogenesis +autogenetic +autogenic +autogenous +autogenously +autogeny +autogiro +autogiros +autognosis +autognostic +autograft +autografting +autogram +autographal +autographed +autographer +autographic +autographing +autographism +autographist +autographs +autography +autogravure +autogyro +autogyros +autohack +autohacking +autoharp +autoheader +autohemic +autohypnosis +autohypnotic +autoicous +autoignition +autoimmunity +autoimmunize +autoinc +autoindex +autoindexing +autoinfusion +autoing +autoist +autojigger +autokinesis +autokinetic +autokrator +autolater +autolatry +autolavage +autolesion +autolimnetic +autolisp +autolith +autoload +autoloader +autoloading +autological +autologist +autologous +autology +autolycus +autolysate +autolysin +autolysis +autolytic +autolytus +autolyzate +autolyze +automa +automacy +automanager +automaniac +automanual +automate +automated +automates +automatic +automatical +automaticity +automaticlly +automaticly +automatics +automatin +automating +automation +automations +automatique +automatisch +automatism +automatist +automatize +automatized +automatizes +automatizing +automaton +automatons +automatonta +automatous +automats +automedon +automelon +autometric +autometry +automobile +automobiles +automobilism +automobilist +automobility +automolite +automorph +automotive +automotor +automount +automounter +automower +auton +autonegation +autonoetic +autonoma +autonomas +autonomasia +autonomasy +autonomic +autonomical +autonomies +autonomist +autonomize +autonomna +autonomne +autonomous +autonomously +autonym +autopan +autopark +autopathic +autopathy +autopelagic +autopepsia +autophagi +autophagia +autophagous +autophagy +autophobia +autophoby +autophon +autophone +autophonous +autophony +autophyte +autophytic +autopilot +autopilots +autoplast +autoplastic +autoplasty +autoplay +autopoint +autopolar +autopolo +autopoloist +autopore +autoportrait +autopositive +autopotent +autopsic +autopsical +autopsied +autopsies +autopsy +autopsychic +autopsying +autoptic +autoptical +autoptically +autopticity +autoption +autoquote +autor +autoreg +autorelated +autorename +autorga +autorhythmic +autorhythmus +autoriser +autorotation +autoroute +autorouter +autoroutes +autorouting +autorrhaphy +autorun +autorunmaker +autos +autosauri +autosauria +autosaver +autoscan +autoscience +autoscope +autoscopic +autoscopy +autosend +autosender +autoserum +autosexing +autoshutdown +autosight +autosign +autosite +autositic +autoskeleton +autosled +autoslip +autosocks +autosomal +autosome +autosoteric +autosoterism +autospell +autospore +autosporic +autospray +autostage +autostarter +autostrad +autostrada +autostradas +autostylic +autostylism +autostyly +autosymbolic +autosymnoia +autosyn +autosyndesis +autotelic +autotheater +autotheism +autotheist +autotherapy +autothermy +autotomic +autotomize +autotomous +autotomy +autotoxaemia +autotoxic +autotoxicity +autotoxin +autotoxis +autotractor +autotriploid +autotroph +autotrophic +autotrophy +autotropic +autotropism +autotruck +autoturning +autotype +autotypic +autotypy +autourine +autouue +autovaccine +autovalet +autovalve +autowin +autowinnet +autoxeny +autoxidation +autoxidator +autoxidize +autoxidizer +autozooid +autrain +autre +autrefois +autret +autry +autryville +autu +autumal +autumn +autumnally +autumnian +autumnity +autumns +autunian +autunite +auvergnat +auvergne +auwaka +auwera +auwje +auxamylase +auxanogram +auxanology +auxanometer +auxesis +auxetic +auxetical +auxetically +auxier +auxiliar +auxiliaries +auxiliarly +auxiliary +auxiliate +auxiliation +auxiliator +auxiliatory +auxilium +auxillary +auximone +auxin +auxinic +auxinically +auxins +auxira +auxoaction +auxoamylase +auxoblast +auxobody +auxocardia +auxochrome +auxochromic +auxochromism +auxochromous +auxocyte +auxoflore +auxofluor +auxograph +auxographic +auxohormone +auxology +auxometer +auxospore +auxotonic +auxotox +auxvasse +auyakawa +auyana +auye +auyeung +auyokawa +auyu +avacanoeiro +avadana +avadavat +avadhi +avadhuta +avadi +avahi +avail +availabe +availabel +availability +available +availably +availdev +availeble +availed +availer +availers +availeth +availible +availing +availingly +availment +avails +aval +avalan +avalanched +avalanches +avalanching +avalent +avalle +avallone +avalof +avaloff +avalon +avalvular +avam +avand +avande +avania +avanious +avanki +avankil +avant +avantcoureur +avantcourier +avantgarde +avanti +avantpropos +avanturine +avar +avaradrano +avard +avaremotemo +avari +avarian +avarice +avarices +avariciously +avarish +avaro +avaroandi +avars +avarua +avascular +avaso +avast +avatar +avatars +avatime +avatiu +avau +avaunt +avaushi +avawam +avaz +avchurinski +avdioukhine +avdjusko +avdp +avec +avedikian +avedis +avedon +aveiro +aveke +avekom +aveline +avella +avellan +avellana +avellane +avellaneda +avellaneous +avellano +avelli +avelonge +aveloz +aven +avena +avenaceous +avenage +avenal +avenalin +avenel +avener +avenge +avengeance +avenged +avengeful +avengement +avenger +avengeress +avengers +avenges +avengeth +avenging +avengingly +avenida +avenin +avenolith +avenous +avens +avenses +aventail +aventurine +aventuro +avenue +avenues +avera +average +averaged +averagely +averager +averages +averaging +averah +avere +averell +averett +averette +avergele +averi +averil +averill +averillpark +averin +averment +averments +avernal +avernus +averrable +averral +averrer +averrhoa +averroes +averroism +averroist +averroistic +averruncate +averruncator +avers +aversa +aversant +aversation +averse +aversely +averseness +aversion +aversions +aversive +avert +avertable +averted +avertedly +averter +avertible +avertin +averting +averts +averuncate +avery +averycorn +averyisland +averyl +aves +avestan +avet +aveta +aveva +avez +avgoustidou +avialble +avian +aviana +avianization +avianize +avianized +avianizes +aviano +avians +avianwu +aviararies +aviaries +aviarist +aviarists +aviary +aviated +aviates +aviateurs +aviatic +aviating +aviation +aviations +aviator +aviatorial +aviators +aviatory +aviatress +aviatrices +aviatrixes +avice +avicenna +avicennia +avicennism +avichi +avicide +avick +avicolous +avicula +avicular +avicularia +avicularian +avicularium +aviculidae +aviculture +aviculturist +avidan +avidious +avidiously +avidities +avidity +avidly +avidness +avidous +avidya +avie +aviedit +aviele +aview +avifa +avifauna +avifaunal +avigail +avigate +avigation +avigator +avigdor +avignon +avignonese +avijja +avikam +avikom +avila +avilabeach +avildsen +avile +aviles +avilla +avim +avims +avinash +avine +avinger +avio +aviolite +avion +avionics +avions +avior +avirett +aviris +aviritu +avirulence +avirulent +avirxiri +avis +aviso +aviston +avital +avitaminoses +avitaminosis +avitaminotic +avites +avith +avitic +aviva +avivah +avives +avizandum +avlab +avner +avoca +avocadoes +avocados +avocational +avocations +avocative +avocatory +avocets +avodire +avogadrite +avoi +avoid +avoidable +avoidably +avoidance +avoidances +avoidant +avoided +avoider +avoiders +avoiding +avoidless +avoidment +avoids +avoirdupois +avokaya +avolate +avolation +avolitional +avon +avonbythesea +avondale +avondbloem +avonde +avonlake +avonmore +avonne +avonpark +avonx +avoob +avos +avouch +avouchable +avouched +avoucher +avouchers +avouches +avouching +avouchment +avourdupois +avourneen +avout +avow +avowable +avowableness +avowably +avowals +avowance +avowant +avowed +avowedly +avowedness +avower +avowers +avowing +avowry +avows +avoyelles +avoyer +avoyership +avpack +avplite +avraham +avram +avreas +avril +avrit +avron +avscom +avshar +avtar +avtobusi +avtobusniy +avtostopom +avtovo +avtovskie +avukaya +avulse +avulsion +avulsions +avunatari +avuncular +avunculate +awaaaay +awabakal +awabi +awacs +awad +awadalla +awadh +awadhi +awadia +awaft +awag +awaiama +await +awaited +awaiter +awaiters +awaiting +awaitlala +awaits +awaji +awak +awakable +awake +awaked +awakenable +awakened +awakener +awakeners +awakening +awakeningly +awakenings +awakenment +awakens +awaker +awakes +awakest +awaketh +awaking +awakings +awald +awale +awalia +awalim +awalt +awami +awan +awana +awane +awano +awanting +awapuhi +awar +awara +award +awardable +awardbios +awarded +awardee +awardees +awarder +awarders +awarding +awardment +awards +aware +awaredom +awareness +awaruite +awas +awasa +awash +awashima +awaste +awat +awatch +awate +awater +awau +awave +awawar +away +awayfrom +awayness +aways +awbari +awber +awearied +aweary +aweather +aweband +awed +awedness +awee +aweek +aweel +aweer +aweera +aweful +aweigh +aweikoma +aweil +aweing +aweinspiring +aweless +awellimiden +awembak +awembiak +awendaw +awera +awes +awesome +awesomely +awesomeness +awest +awestricken +awestruck +awesum +aweti +aweto +awevbank +awfthy +awfu +awful +awfuller +awfullest +awfully +awfulness +awheel +awheft +awhet +awhile +awhir +awhirl +awiaka +awide +awiggle +awikiwiki +awin +awindows +awing +awink +awinpa +awinpare +awit +awiwi +awiya +awiyaana +awje +awji +awjilah +awjilasokna +awju +awkward +awkwarder +awkwardest +awkwardish +awkwardly +awkwardness +awlad +awless +awlessness +awls +awlshaped +awlt +awlwort +awmous +awned +awner +awngi +awning +awninged +awnings +awnless +awnlike +awns +awny +awok +awoke +awoken +awol +awols +awon +awori +awork +aworo +awosumakuyu +awraja +awreck +awrist +awrong +awry +awsat +awshar +awsome +awtobohgot +awtohmajik +awtreen +awum +awun +awuna +awutu +awya +awye +awyi +awyu +awyudumut +axal +axamb +axas +axberg +axborough +axbreaker +axed +axel +axelle +axelrod +axels +axelson +axeman +axemen +axen +axenic +axer +axers +axes +axfetch +axhammer +axhammered +axhead +axialis +axiality +axially +axiate +axiation +axifera +axiform +axifugal +axil +axile +axilemma +axilemmata +axilla +axillae +axillant +axillar +axillaries +axillary +axillas +axils +axim +axine +axing +axinite +axinomancy +axiolite +axiolitic +axiological +axiologist +axiomatical +axiomatize +axiomatized +axiomatizes +axiomatizing +axioms +axion +axiopisty +axiotis +axis +axised +axises +axite +axle +axled +axles +axlesmith +axletree +axletrees +axlike +axluslay +axmaker +axmaking +axman +axmanship +axmaster +axmen +axminster +axodendrite +axofugal +axogamy +axoid +axoidean +axolemma +axolotls +axolysis +axometer +axometric +axometry +axonal +axone +axones +axoneure +axoneuron +axonia +axonic +axonolipa +axonolipous +axonometric +axonometry +axonophora +axonophorous +axonopus +axonost +axons +axopetal +axophyte +axoplasm +axopodia +axopodium +axospermous +axostyle +axseed +axson +axstone +axtel +axtell +axton +axtree +axumite +axunge +axvax +axweed +axwell +axwise +axwort +ayacahuite +ayacucho +ayah +ayahs +ayahuca +ayak +ayako +ayala +ayam +ayamaru +ayan +ayandeh +ayangan +ayanomaj +ayao +ayapa +ayari +ayars +ayat +ayathit +ayatollah +ayatollahs +ayawa +ayaya +ayaz +aybars +aych +aychelel +aychpee +aychpuhks +aychseeeff +ayda +ayden +aydendron +aydin +aydlett +aydogan +aydz +ayed +ayegreen +ayelp +ayena +ayenbite +ayer +ayere +ayers +ayes +ayiga +ayikiben +ayin +ayip +ayivi +ayiwo +ayizogbe +aykroyd +aykut +ayla +ayler +ayles +ayless +aylesworth +aylet +aylett +ayllene +ayllu +aylmer +aylwin +aymag +aymara +aymaran +aymasa +aymellel +aymguud +aymoro +aynallu +aynesworth +aynor +aynsley +aynu +ayohess +ayom +ayond +ayont +ayoquesco +ayore +ayoreo +ayos +ayotte +ayotzintepec +ayoubzadeh +ayoup +ayous +aypad +ayrault +ayre +ayres +ayrshire +ayscue +ayse +aysen +aysgarth +ayta +aytac +ayten +aythya +ayturgan +ayub +ayuba +ayubite +ayuca +ayudante +ayudhaya +ayudhya +ayukawa +ayumi +ayuru +ayuso +ayuthaya +ayutla +ayutthaya +ayyub +ayyubid +ayyuce +azabu +azad +azadrachta +azae +azafrin +azaghvana +azahares +azais +azal +azalea +azaleas +azalia +azaliah +azalias +azam +azande +azangori +azanguri +azaniah +azanians +azao +azar +azarael +azarbayjane +azareel +azari +azaria +azariah +azarole +azarshahi +azaz +azaziah +azbuk +azcona +azconista +azedarach +azekah +azel +azelaic +azelate +azelfafage +azelle +azem +azema +azemat +azen +azeotrope +azeotropic +azeotropism +azeotropy +azer +azera +azerbaijani +azerbajdzhan +azeri +azevado +azevedo +azgad +azgaramondc +azha +azhar +aziana +azide +azido +aziel +aziethane +azilal +azilian +azilut +azimech +azimene +azimethylene +azimide +azimine +azimino +azimuthally +azimuths +azine +azinge +aziola +azito +aziz +aziza +aziziyah +azizuddin +azlactone +azlan +azlatinwidec +azle +azmak +azmaveth +azmeena +azmi +azmina +azmon +aznar +aznavour +aznothtabor +azobacter +azobenzene +azobenzil +azobenzoic +azobenzol +azoblack +azoch +azocochineal +azocoralline +azocorinth +azocyanide +azocyclic +azodiphenyl +azoeosin +azoerythrin +azofication +azofier +azoflavine +azoformamide +azoformic +azofy +azogallein +azogreen +azogrenadine +azohumic +azoic +azoimide +azole +azolitmin +azolla +azom +azomethine +azon +azonal +azonic +azonium +azons +azonyu +azoospermia +azoparaffin +azophen +azophenetole +azophenine +azophenol +azophenyl +azophenylene +azophosphin +azophosphore +azoprotein +azor +azora +azores +azorian +azorite +azorubine +azosulphine +azosulphonic +azotate +azote +azoted +azotemia +azotenesis +azotetrazole +azoth +azothionium +azotic +azotine +azotite +azotize +azotobacter +azotoluene +azotometer +azotorrhoea +azotous +azoturia +azotus +azov +azovernine +azox +azoxazole +azoxime +azoxine +azoxonium +azoxy +azoxyanisole +azoxybenzene +azoxybenzoic +azpr +azra +azriel +azrikam +azteca +aztecotanoan +aztecs +azthionium +azua +azuay +azubah +azul +azulene +azulite +azulmic +azumbre +azumeina +azumu +azur +azure +azurean +azured +azureous +azures +azurine +azurite +azurites +azurous +azury +azusa +azuz +azygomatous +azygos +azygosperm +azygospore +azygous +azyme +azymite +azymous +azzah +azzan +azzara +azzarito +azzedine +azzuolo +azzur +baaa +baaaaaaa +baaaaaaz +baab +baadasssss +baade +baader +baadi +baadu +baaed +baagandji +baagato +baahling +baaing +baaka +baakpe +baal +baalah +baalath +baalathbeer +baalberith +baale +baalgad +baalhamon +baalhanan +baalhazor +baalhermon +baali +baalim +baalis +baalish +baalism +baalisms +baalist +baalite +baalitical +baalize +baalmeon +baalpeor +baalperazim +baals +baalshalisha +baalshem +baaltamar +baalzebub +baalzephon +baamang +baana +baanah +baangingi +baao +baar +baara +baardue +baarova +baarzel +baas +baaseiah +baasha +baate +baati +baato +baatonun +baay +baba +babacoote +babadji +babadjou +babaga +babagarupu +babaguina +babai +babak +babal +babalatchi +babalia +babalola +babalugats +babana +babangida +babango +babanki +babanov +babar +babara +babas +babasaki +babasco +babasi +babassu +babasu +babata +babatana +babaylan +babazhi +babb +babbage +babbages +babbaluche +babberley +babberly +babbette +babbidge +babbie +babbington +babbitter +babbittess +babbittian +babbitting +babbittism +babbittry +babblative +babble +babbled +babblement +babbler +babblers +babbles +babblesome +babbling +babblingly +babblings +babblish +babblishly +babbly +babbs +babby +babc +babcock +babcom +babe +babec +babeddin +babehood +babeka +babekar +babel +babeldom +babelet +babelic +babelike +babelish +babelism +babelize +babels +babelthuap +babenco +baber +babery +babes +babeship +babesia +babesiasis +babessi +babete +babette +babhaidhomba +babhan +babhogala +babhogombe +babi +babiana +babich +babiche +babieca +babied +babies +babiism +babil +babilee +babillard +babin +babine +babineau +babinga +babingtonite +babinsky +babione +babir +babirousa +babiroussa +babirusa +babirussa +babiruwa +babish +babished +babishly +babishness +babism +babist +babita +babite +babka +babkas +babki +bablah +babloh +baboaf +baboen +babok +babong +babongo +baboo +baboodom +babooism +baboonery +baboonish +baboonroot +baboons +baboos +baboot +baboquivari +baborigame +babouche +baboute +babouvism +babouvist +babri +babroot +babrua +babruwa +babs +babson +babsonpark +babsy +babtist +babu +babua +babuche +babudom +babue +babuina +babuism +babul +babuls +babuma +babungera +babungo +babur +baburiwa +babus +babusa +babushka +babushkas +babute +babuyan +babuza +babwa +baby +babyak +babydom +babyface +babyfied +babyhoods +babyhouse +babying +babyish +babyishly +babyishness +babyism +babylike +babylon +babylonia +babylonian +babylonians +babylonic +babylonish +babylonism +babylonite +babylonize +babyolatry +babyship +baca +bacaba +bacach +bacadin +bacairi +bacalao +bacall +bacama +bacan +bacanese +bacao +bacardi +bacau +bacbakiri +bacca +baccaceous +baccae +baccalaurean +baccalaureat +baccaloni +baccalori +baccara +baccarats +baccari +baccate +baccated +bacchae +bacchal +bacchanal +bacchanalia +bacchanalian +bacchanalias +bacchanalism +bacchanalize +bacchanals +bacchant +bacchante +bacchantes +bacchantic +bacchants +bacchar +baccharis +baccharoid +baccheion +bacchiac +bacchian +bacchic +bacchical +bacchides +bacchii +bacchiochi +bacchius +bacchus +bacchuslike +bacciaglia +bacciferous +bacciform +baccilli +bacciochi +baccivorous +baccus +bacenga +bach +bacha +bachadi +bachajo +bachajon +bachama +bacharach +bache +bachecongi +bachel +bachelordom +bachelorette +bachelorhood +bachelorism +bachelorize +bachelorlike +bachelorly +bachelors +bachelorship +bachelorwise +bachelry +bachelu +bacheve +bachewich +bachi +bachichi +bachingou +bachinski +bachir +bachit +bachittar +bachler +bachmann +bachner +bachrach +bachrites +bachs +bachuma +bachus +bachynski +baci +bacigalupi +bacilary +bacillaceae +bacillar +bacillarieae +bacillary +bacillemia +bacillian +bacillicidal +bacillicide +bacillicidic +bacilliform +bacilligenic +bacillite +bacillogenic +bacillosis +bacilluria +bacillus +bacis +bacitracin +back +backache +backaches +backaching +backachy +backage +backamp +backarrow +backarrows +backband +backbearing +backbencher +backbenchers +backbend +backbends +backbit +backbite +backbiter +backbiters +backbites +backbiteth +backbiting +backbitingly +backbitings +backbitten +backblow +backboards +backbone +backboned +backboneless +backbones +backbrand +backbreaker +backbreaking +backcap +backcast +backchain +backchat +backcountry +backcourt +backcross +backcrossing +backdate +backdated +backdates +backdating +backdoor +backdoors +backdown +backdrops +backed +backen +backer +backers +backes +backet +backett +backfall +backfatter +backfield +backfields +backfilled +backfiller +backfilling +backfills +backfire +backfired +backfires +backfiring +backflap +backflash +backflow +backfold +backframe +backfriend +backfurrow +backgame +backgammon +backgettig +background +backgrounds +backhan +backhanded +backhandedly +backhander +backhanding +backhands +backhatch +backheel +backhoe +backhoes +backhooker +backhouse +backie +backiebird +backing +backings +backjaw +backjoint +backlands +backlash +backlashed +backlashes +backlashing +backless +backlet +backliding +backlin +backlings +backlinie +backlist +backlists +backlit +backlogged +backlogging +backlogs +backlotter +backlunda +backman +backmost +backoff +backpack +backpacked +backpacker +backpackers +backpacking +backpacks +backpedal +backpedaled +backpedaling +backpiece +backplane +backplanes +backpointer +backpointers +backprime +backquote +backrest +backrests +backrope +backrun +backs +backsaw +backsaws +backscatters +backscraper +backscroll +backseat +backseats +backset +backsetting +backsettler +backshall +backsheesh +backshift +backshish +backside +backsides +backsight +backsite +backslant +backslap +backslapper +backslappers +backslapping +backslaps +backslash +backslashes +backslat +backslid +backslidden +backslide +backslider +backsliders +backslides +backsliding +backslidings +backspace +backspaced +backspacer +backspaces +backspacing +backspang +backspark +backspier +backspierer +backspin +backspins +backspread +backstabbing +backstaff +backstage +backstair +backstairs +backstamp +backstay +backster +backstick +backstitched +backstitches +backstone +backstops +backstrap +backstreet +backstretch +backstring +backstrip +backstroke +backstroked +backstrokes +backstroking +backstromite +backswept +backswing +backsword +backswording +backswordman +backtack +backtalk +backtender +backtenter +backtrace +backtrack +backtracked +backtracker +backtrackers +backtracking +backtracks +backtrick +backup +backups +backus +backusnaur +backuss +backveld +backvelder +backwall +backward +backwardly +backwardness +backwards +backwash +backwasher +backwashes +backwashing +backwatered +backwaters +backway +backweb +backwhack +backwoods +backwoodsman +backwoodsmen +backwoodsy +backword +backworm +backwort +backy +backyard +backyarder +backyards +backyur +baclanova +baclawski +bacliff +baclin +baco +bacolod +bacon +baconer +baconian +baconianism +baconic +baconism +baconist +baconize +bacons +baconton +baconweed +bacony +bacopa +bacova +bacri +bacs +bacskal +bacskiskun +bacteremia +bacteria +bacteriaceae +bacterial +bacterially +bacterials +bacterian +bacteric +bactericidal +bactericide +bactericides +bactericidin +bacterid +bacteriemia +bacteriform +bacterin +bacteriocyte +bacterioid +bacterioidal +bacteriology +bacteriolyze +bacteriosis +bacteriostat +bacterious +bacteririum +bacteritic +bacteriuria +bacterize +bacteroid +bacteroidal +bacteroideae +bacteroides +bactrian +bactris +bactrites +bactriticone +bactritoid +bacuisso +bacula +bacule +baculi +baculiferous +baculiform +baculine +baculite +baculites +baculitic +baculiticone +baculoid +baculum +baculus +bacury +bada +badag +badaga +badagry +badagu +badajsky +badak +badakhshan +badakhshani +badakhshi +badakshan +badalamenti +badan +badanchi +badang +badara +badarea +badarian +badarrah +badashkhan +badass +badaud +badavi +badawa +badawi +badaxe +badcode +badde +baddeley +baddeleyite +badder +badderlocks +baddie +baddies +baddish +baddishly +baddishness +baddock +baddy +bade +badea +badecki +badekado +badel +badelov +badelt +baden +badenia +badenite +badenoch +bader +baderwali +badeshi +badest +badewarji +badge +badged +badgeless +badgeman +badger +badgerbrush +badgered +badgerer +badgering +badgeringly +badgerlike +badgerly +badgers +badgerweed +badges +badghis +badging +badham +badhani +badhe +badi +badia +badiaga +badian +badie +badigeon +badin +badinaged +badinages +badinaging +badious +badittu +badja +badjande +badjao +badjari +badjava +badjaw +badjia +badjiri +badjo +badjoue +badlands +badli +badly +badman +badmen +badmington +badmouth +badmouthed +badmouthing +badmouths +badness +badnesses +badob +badolati +badon +badou +badowski +badr +badragel +badran +badri +badrohi +bads +badtempered +badtoelz +badu +badugu +baduhenna +badui +badulla +baduser +badyara +badyaranke +badza +badzumbo +baebi +baebunta +baecher +baedeker +baedekerian +baedekers +baeggu +baegu +baegwa +baele +baelelea +baelt +baen +baena +baenziger +baeotic +baer +baerbel +baerg +baeria +baerwald +baetora +baets +baetsle +baetuli +baetulus +baetyl +baetylic +baetylus +baetzner +baeume +baez +baeza +bafang +bafangi +bafanji +bafanyi +bafaro +bafata +bafaw +bafawbalong +bafb +bafeuk +baff +baffa +baffeta +baffico +baffinland +baffins +baffled +bafflement +bafflements +baffler +bafflers +baffles +baffling +bafflingly +bafflingness +baffo +baffy +bafia +bafilo +bafing +bafmen +bafmeng +bafo +bafodia +bafou +bafoulabe +bafoumeng +bafoussam +bafowu +bafq +bafreng +baft +bafta +bafuchu +bafumen +bafun +bafut +bafwagada +bafwakayi +bafwasende +bafwesende +bafyot +baga +bagabag +bagahak +bagale +bagam +bagamery +bagamoyo +baganambia +baganda +bagandji +bagando +bagandou +bagangte +bagangu +bagani +bagantou +bagari +bagarmi +bagashvili +bagasin +bagasse +bagat +bagata +bagataway +bagatelles +bagatine +bagattini +bagattino +bagaudae +bagba +bagbiet +bagbiter +bagbiting +bagbot +bagby +bagdad +bagdasarian +bagdi +bagelkhandi +bagels +bagend +bagerhat +bagetakos +bageto +bagful +bagfuls +bagg +baggage +baggageman +baggager +baggages +baggala +bagganet +baggara +bagged +bagger +baggers +baggett +baggie +baggier +baggies +baggiest +baggily +bagginess +baggings +baggins +baggit +baggot +baggott +baggs +baggy +bagha +baghap +baghati +baghdad +baghdadi +bagheli +baghi +baghirmi +baghlan +baghouse +bagi +baginda +bagirmi +bagis +bagiserwar +bagleaves +baglike +baglione +bagmaker +bagmaking +bagman +bagmati +bagmen +bagnato +bagneris +bagni +bagnio +bagnios +bagno +bagnoun +bagnut +bago +bagobo +bagoi +bagonet +bagot +bagou +bagozzi +bagpiper +bagpipers +bagpipes +bagplant +bagram +bagration +bagrationite +bagre +bagreef +bagri +bagria +bagrimma +bagris +bagroom +bags +bagsful +bagshaw +bagshot +baguet +baguets +baguette +baguettes +baguio +baguirme +baguirmi +bagulal +bagundji +bagupi +bagusa +bagvalin +bagwa +bagwama +bagwell +bagwig +bagwigged +bagwigs +bagworm +bagworms +bagwyn +bagyele +baha +bahadir +bahadur +bahadurs +bahah +bahai +bahaism +bahaist +baham +bahama +bahamas +bahamian +bahamians +bahan +bahar +baharlu +baharumite +bahasa +bahau +bahaullah +bahawalpur +bahawalpuri +bahawder +bahay +bahbiau +bahe +bahelia +bahera +bahgat +bahgri +bahi +bahia +bahiaite +bahima +bahinemo +bahing +bahirah +bahisti +bahl +bahmani +bahmanid +bahn +bahnar +bahnaric +bahnarrengao +bahner +bahnidi +bahnung +baho +bahoe +bahomia +bahoo +bahoric +bahr +bahrain +bahraini +bahram +bahrelghazal +bahri +bahrs +bahru +baht +bahts +bahuma +bahumono +bahur +bahurim +bahut +bahutu +bahuvrihi +baianism +baiao +baiap +baiawa +baiaya +baibai +baibara +baibokoum +baichoo +baicit +baidarka +baidya +baidyla +baie +baiera +baiga +baigana +baigani +baigent +baiginet +baignet +baigo +baikal +baikalite +baikenu +baikerinite +baikerite +baikie +baikonur +bail +baila +bailable +bailage +bailala +bailando +bailar +baildon +bailed +bailee +bailer +bailers +bailetti +bailey +baileyisland +baileys +baileyton +baileyville +bailez +bailie +bailiery +bailies +bailieship +bailiffry +bailiffs +bailiffship +bailing +bailitt +bailiwick +bailiwicks +bailko +baillargeon +baillauda +bailliage +baillie +baillone +baillonella +baillou +bailloux +bailly +bailment +bailor +bailors +bailout +bailouts +bailpiece +bails +bailsman +bailsmen +bailwood +baily +baimak +baimuri +baimuru +bain +bainapi +bainbridge +bainer +baines +baing +bainge +bainie +baining +bainouk +bains +bainter +bainton +bainuk +bainville +baio +baioc +baiocchi +baiocco +baiot +baiote +bair +bairagi +bairam +bairbre +baird +bairdford +bairdi +bairisch +bairn +bairnie +bairnish +bairnishness +bairnliness +bairnly +bairns +bairnteam +bairntime +bairnwort +bairoil +bairu +bais +baisakh +baisbrook +baisden +baisho +baiso +baister +baiswari +baitadi +baite +baited +baiter +baiters +baith +baiti +baiting +baits +baitsi +baittle +baitylos +baitz +baiviri +baiyer +baiza +baize +baizes +baja +bajada +bajadero +bajah +bajahama +bajalani +bajama +bajan +bajania +bajao +bajardo +bajarigar +bajat +bajau +bajaw +bajaygul +bajazze +bajelan +bajeli +bajema +bajhangi +bajic +bajith +bajo +bajocian +bajoran +bajorans +bajpeyi +bajpuri +bajra +bajree +bajri +baju +bajun +bajuni +bajura +bajurali +bajury +bajuwarisch +bajwee +bajwo +baka +bakaev +bakagundi +bakah +bakairi +bakaka +bakal +bakalai +bakalang +bakalei +bakalyan +bakango +bakanike +bakar +bakari +bakary +bakatan +bakatiq +bakawali +bakay +bakbakkar +bakbuk +bakbukiah +bake +bakebe +bakeboard +baked +bakedi +bakehouse +bakel +bakele +bakelize +bakely +bakem +bakemeats +baken +bakeoven +bakepan +baker +bakerdom +bakeress +bakerhill +bakeries +bakerite +bakerless +bakerloo +bakerly +bakers +bakersfield +bakership +bakersmills +bakerssummit +bakerstown +bakersville +bakerton +bakes +bakeshop +bakeshops +bakestone +baketh +bakewell +bakewells +bakey +bakha +bakhach +bakhchisaraj +bakhshi +bakhtaran +bakhtari +bakhtin +bakhuysen +baki +bakidi +bakie +baking +bakingly +bakings +bakise +bakitan +bakjo +bakka +bakke +bakkum +baklajan +baklavas +baklazhan +bakli +bako +bakoa +bakoi +bakoko +bakola +bakole +bakolle +bakombe +bakon +bakong +bakongo +bakoni +bakool +bakoroka +bakos +bakosh +bakossi +bakota +bakoti +bakoua +bakoury +bakovi +bakpinka +bakpwe +bakr +bakri +baks +baksa +baksalary +baksan +baksh +bakshaish +baksheesh +baksheeshes +bakshi +bakshish +bakst +bakta +baktapur +bakti +baktun +bakuba +bakuise +bakula +bakuli +bakulu +bakulung +bakum +bakumbari +bakumpai +bakunda +bakundi +bakundu +bakundubalue +bakundumu +bakung +bakuninism +bakuninist +bakupari +bakurdi +bakurut +bakutu +bakw +bakwa +bakwe +bakwedi +bakwele +bakweri +bakwil +bakwiri +bakwisso +bala +balaabe +balaaben +balaam +balaamite +balaamitical +balabac +balaban +balabanian +balabio +balac +balachong +balaclava +balada +baladan +balademas +baladine +baladiyah +baladiyat +balaena +balaenid +balaenidae +balaenoid +balaenoidea +balaenoidean +balaenoptera +balaeric +balaesan +balaesang +balafi +balafo +balagan +balaghat +balagnini +balaguer +balah +balahaim +balai +balaic +balais +balaisang +balait +balaji +balak +balaklava +balakot +balakrishna +balakrishnan +balalaik +balalaika +balalaikas +balalayka +balali +balam +balambu +balamir +balan +balance +balanceable +balanced +balancedness +balancelle +balanceman +balancement +balancer +balancers +balances +balancewise +balancing +balancings +balanda +balander +balandra +balandrana +balaneutics +balangan +balangao +balangaw +balangay +balanger +balanghein +balangingi +balanguru +balanian +balanic +balanid +balanidae +balaniferous +balanini +balanipa +balanism +balanite +balanites +balanitis +balanka +balanocele +balanoid +balanophora +balanophore +balanophorin +balanoplasty +balanops +balant +balanta +balantak +balante +balantganja +balantian +balantiang +balantidial +balantidic +balantidium +balanus +balao +balarama +balas +balasa +balascak +balaski +balasko +balasore +balat +balata +balatchi +balaton +balatong +balatron +balatronic +balau +balaure +balausta +balaustine +balaustre +balavu +balawa +balawaia +balawan +balawu +balazs +balbalasang +balbo +balboas +balbricker +balbriggan +balbucinate +balbutiate +balbutient +balbuties +balcerzak +balch +balchony +balchowsky +balck +balcom +balcombe +balconet +balconied +balconies +balcony +balcostume +balczo +bald +balda +baldacchino +baldaccini +baldachin +baldachined +baldachini +baldachino +baldachins +baldam +baldamu +baldaquin +baldaro +baldassare +baldavin +baldberry +baldcrown +balded +balden +balder +balderdash +balderston +baldessari +baldest +baldev +baldfaced +baldhead +baldheads +baldicoot +baldie +baldieri +baldin +balding +baldini +baldish +baldknob +baldling +baldly +baldmoney +baldness +baldock +baldor +baldpates +baldrib +baldric +baldrick +baldricked +baldricks +baldrics +baldricwise +baldridge +baldry +balds +balducci +balductum +balduin +balduinus +baldur +baldvin +baldwin +baldwincity +baldwinpark +baldwinplace +baldwinville +baldwyn +baleares +balearian +balearic +balearica +baled +baleens +balefire +balefires +balefully +balefulness +balegete +baleh +balei +baleise +baleje +baleless +balen +balenda +balendru +balengou +baleo +balep +balepa +baler +balerie +balers +bales +balese +balessing +balestrero +balete +baletha +balethi +balevana +balford +balgalvis +balgo +balgobin +balgu +bali +baliardo +baliba +balibago +balibuntal +balibuntl +balieff +baliem +baliet +balif +baligam +baligansin +baligashu +balignini +balija +balikatoriko +balikesir +balikpapan +balikumbat +balilla +balimo +balin +baline +balinese +baling +balinger +balinghasay +balingian +balinski +balint +balintang +balisasak +balisaur +balista +balistan +balistarius +balister +balistes +balistid +balistidae +balistraria +balita +balitools +balivitu +baliwon +baljinder +balk +balkanic +balkanize +balkanized +balkanizing +balkans +balkar +balked +balkenhol +balker +balkers +balkh +balkier +balkiest +balkily +balkin +balkiness +balking +balkingly +balkis +balkissoon +balkline +balko +balkrishna +balks +ball +ballad +ballade +balladeer +balladeers +ballader +balladeroyal +ballades +balladic +balladical +balladier +balladism +balladist +balladize +balladlike +balladling +balladmonger +balladries +balladry +ballads +balladwise +balladzz +ballahoo +ballam +ballan +ballant +ballante +ballantine +ballard +ballarin +ballarina +ballarte +ballasko +ballast +ballastage +ballasted +ballaster +ballasting +ballasts +ballata +ballate +ballatoon +ballatore +balldom +balle +balled +ballefoy +ballengee +ballenger +ballentine +balleny +baller +ballerina +ballerinas +ballers +ballester +ballet +balletomanes +ballets +ballew +ballgown +ballgowns +ballground +balli +ballico +ballier +ballin +balling +ballinger +ballini +balliol +ballios +ballist +ballista +ballistae +ballistic +ballistician +ballistics +ballistite +ballium +ballmine +ballo +ballochet +ballock +ballogan +ballon +ballonet +ballonets +balloon +balloonation +ballooned +ballooner +ballooners +balloonery +balloonet +balloonfish +balloonful +ballooning +balloonish +balloonist +balloonlike +balloons +ballota +ballotade +ballotage +balloted +balloter +balloters +balloting +ballotist +ballots +ballottable +ballottement +ballou +ballouville +ballow +ballpark +ballparks +ballplatz +ballplayer +ballplayers +ballpoint +ballpoints +ballproof +ballroom +ballrooms +balls +ballsbridge +ballstock +ballstonlake +ballstonspa +ballup +ballute +ballutes +ballweed +ballwin +bally +ballyhack +ballyhooed +ballyhooer +ballyhooing +ballyhoos +ballyk +ballymena +ballymoney +ballynoy +ballyrag +ballywack +ballywrack +balm +balmacaan +balmarcodes +balmaseda +balmasque +balmat +balmawhapple +balmer +balmier +balmiest +balmiki +balmily +balminess +balmlike +balmony +balmoral +balmorals +balmorhea +balms +balmville +balmy +balneal +balneary +balneation +balneatory +balneography +balneologic +balneologist +balneology +balnibarbi +balobo +baloch +balochi +balochistan +baloci +balog +baloga +balogh +baloghia +baloh +baloi +baloki +balolo +balom +balon +balondo +balonea +baloney +baloneys +balong +balonne +baloo +balopticon +balor +balorda +baloskion +baloum +balourdise +balow +balpacic +balpetre +balqa +balr +balrog +balsalike +balsamation +balsame +balsamea +balsameaceae +balsamed +balsamer +balsamgrove +balsamic +balsamical +balsamically +balsamina +balsamine +balsaming +balsamitic +balsamize +balsamlake +balsamo +balsamous +balsamroot +balsams +balsamum +balsamweed +balsamy +balsan +balsas +balsawood +balser +balso +balster +balt +balta +baltagi +baltap +baltaplalin +baltasar +baltazar +baltei +balter +baltes +balteus +balthasar +balthazar +balti +baltic +baltica +baltimora +baltimore +baltimorite +baltis +baltistan +baltistani +balto +baltodano +baltofinnic +baltus +baltz +balu +baluan +baluanpam +baluba +baluch +baluchestan +baluchi +baluchis +baluchistan +baluchithere +baluci +balud +balue +baluga +balui +balunda +balundu +balundubima +balung +baluombila +balurbi +balushai +baluster +balustered +balusters +balustraded +balustrades +balustrading +balut +balutin +balutis +balwa +balwarra +balygu +balza +balzacian +balzarine +balzers +balzo +bama +bamachaka +bamaga +bamah +bamaha +bamaipa +bamako +bamali +bamalip +bamambu +bamana +bamanakan +bamangwato +bamassa +bamattre +bamba +bambaama +bambacelli +bambach +bambala +bambalang +bambama +bambami +bamban +bambang +bambani +bambara +bambaro +bambeiro +bambele +bamberg +bamberga +bamberger +bambesa +bambeshi +bambi +bambie +bambili +bambini +bambino +bambinos +bambo +bambocciade +bamboko +bambolang +bamboleo +bamboma +bamboo +bamboogie +bamboos +bamboozle +bamboozled +bamboozler +bamboozlers +bamboozles +bamboozling +bambos +bamboula +bamboute +bamboutos +bamboy +bambr +bambridge +bambuba +bambui +bambuka +bambuku +bambuluwe +bambur +bamburo +bambusa +bambuseae +bambute +bambutu +bamby +bame +bamechom +bameka +bamekon +bamena +bamenda +bamendjin +bamendjina +bamendjinda +bamendjing +bamendjou +bamenkoumbit +bamenyam +bamenyan +bamessing +bamessingue +bamesso +bameta +bamete +bamf +bamfo +bamford +bamfylde +bamian +bamiankaw +bamiga +bamileke +baminge +bamitaba +bamnyo +bamoko +bamongo +bamota +bamoth +bamothbaal +bamoukoumbit +bamoum +bamoun +bamoungong +bampr +bamps +bamschabl +bamtooth +bamu +bamukumbit +bamum +bamumbo +bamumbu +bamun +bamundum +bamunka +bamunkum +bamunkun +bamusso +bamustu +bamvele +bamvuba +bamwe +bamyili +bana +banaadir +banaba +banach +banadan +banaei +banafo +banag +banagere +banago +banahel +banai +banak +banaka +banakite +banakiya +banalia +banalities +banality +banally +banamba +banan +banana +bananal +bananaland +bananalander +bananarama +bananas +bananashaped +banande +banang +bananist +bananivorous +bananna +banao +banapari +banaphari +banar +banara +banaran +banaro +banas +banaszak +banat +banate +banatite +banaua +banaue +banaule +banausic +banava +banavosa +banawa +banba +banbana +banbridge +banbu +banc +banca +bancal +banch +banchelli +banchi +banchmark +banchong +bancilhon +banco +bancroft +bancrost +bancus +band +banda +bandabanda +bandaelat +bandaeli +bandage +bandaged +bandager +bandagers +bandages +bandaging +bandagist +bandaid +bandaite +bandaka +bandakaya +bandakpaya +bandal +bandala +bandalore +bandama +bandana +bandanas +bandandele +bandanna +bandannaed +bandannas +bandar +bandaranaike +bandarban +bandare +bandarlog +bandas +bandawa +bandawaminda +bandawe +bandbox +bandboxes +bandboxical +bandboxy +bandcase +bandcutter +bande +bandeau +bandeaus +bandeaux +banded +bandel +bandelet +bandello +bandem +bandema +bandemba +bandemer +bandeng +bander +bandera +banderilla +banderillero +banderma +banderol +banderole +banderoles +banders +bandersnatch +bandfish +bandhava +bandhook +bandhor +bandhu +bandi +bandiagara +bandial +bandicoot +bandicoots +bandicoy +bandido +bandie +bandied +bandies +bandikai +bandiness +banding +bandini +bandit +banditi +banditism +banditries +banditry +bandits +banditti +bandiya +bandjabi +bandjalang +bandjarese +bandjelang +bandjoun +bandle +bandleader +bandless +bandlessly +bandlessness +bandlet +bandlimit +bandlimited +bandlimiting +bandlimits +bandman +bandmaster +bandmasters +bando +bandobo +bandobras +bandog +bandoleer +bandoleers +bandolier +bandoliered +bandoline +bandon +bandonion +bandor +bandore +bandougou +bandoum +bandrefam +bandries +bandrol +bands +bandsman +bandsmen +bandstands +bandster +bandstring +banducci +bandundu +bandurria +bandurski +bandusia +bandusian +bandwagon +bandwagons +bandwidth +bandwidths +bandwork +bandyball +bandying +bandykin +bandylegged +bandyman +bandytown +bandzabi +bandzhogi +bandzogi +baneberries +baned +banefully +banefulness +baneka +banemo +banen +banend +banens +banerd +banerjee +banes +banewort +banez +banfalvi +banff +banffy +banfield +banfora +bang +banga +bangabhasa +bangad +bangag +bangala +bangalan +bangalay +bangalee +bangalema +bangali +bangall +bangalow +bangam +bangamelo +bangan +bangando +bangandou +bangandu +bangang +bangangte +bangante +bangantou +bangapela +bangaru +bangash +bangato +bangawa +bangay +bangba +bangbang +bangbinda +bangboard +bange +banged +bangedo +bangela +bangem +banger +bangers +bangert +banggai +banggi +banghart +banghazi +banghy +bangi +bangia +bangiaceae +bangiaceous +bangiales +bangin +banginda +banging +bangingi +bangintomba +bangka +bangkok +bangkoks +bangkurung +bangla +banglabhasa +bangladeshi +bangled +bangles +bangling +banglori +bangni +bango +bangobango +bangolan +bangoli +bangolo +bangom +bangomo +bangon +bangor +bangoro +bangou +bangpath +bangperbuck +bangri +bangru +bangs +bangster +bangtail +bangtails +bangubangu +banguells +bangui +bangunji +bangwa +bangwaketsi +bangwe +bangweulu +bangwi +bangwinji +bangyikang +banham +banhum +bani +banian +baniata +baniba +banig +banigan +banik +banilad +baninge +banion +banis +banish +banished +banisher +banishers +banishes +banishing +banishment +banishments +banister +banisters +baniua +baniuk +baniva +baniwa +baniya +baniyas +banja +banjak +banjangi +banjar +banjara +banjarese +banjermasin +banjo +banjoes +banjogi +banjoist +banjoists +banjong +banjore +banjori +banjorine +banjos +banjounbaham +banjuke +banjul +banjun +banjur +banjuri +banjwade +bank +banka +bankable +bankal +bankala +bankalachi +bankara +bankbook +bankbooks +banke +banked +bankekailali +banker +bankera +bankerdom +bankeress +bankers +banket +bankfull +bankhead +bankim +banking +bankings +bankman +banknote +banknotes +banko +bankole +bankon +bankoti +bankrider +bankroll +bankrolled +bankrolling +bankrolls +bankrupcy +bankrupt +bankruptcies +bankrupted +bankrupting +bankruptism +bankruptlike +bankruptly +bankrupts +bankruptship +bankrupture +banks +bankshall +banksia +banksian +bankside +banksides +banksman +bankston +bankutu +bankweed +banky +banlalaysan +banlieue +banlol +banmethuot +banna +bannai +bannan +bannanas +bannard +bannatyne +banned +bannen +banner +bannered +bannerelk +bannerer +banneret +bannerfish +bannerjee +bannerless +bannerlike +bannerman +bannerol +banners +bannerwise +bannet +banniere +bannikov +banning +bannion +bannister +bannochi +bannock +bannockburn +bannocks +bannon +banns +bannu +bannut +bano +banoho +banoko +banoni +banoo +banos +banovina +banpara +banquells +banquet +banquete +banqueted +banqueteer +banqueter +banqueters +banqueting +banquetings +banquets +banquette +banquettes +banquo +bans +bansa +bansagi +bansal +bansalague +bansaw +bansbali +banshee +banshees +banshek +banshie +banshies +banso +bansoa +banstickle +bansyari +bant +banta +bantaeng +bantakpa +bantalang +bantalvi +bantam +bantamcock +bantamize +bantams +bantamweight +bantar +bantaurang +bantawa +bantay +bantayan +banteay +banten +banteng +bantered +banterer +banterers +bantering +banteringly +banters +bantery +banti +bantian +bantik +banting +bantingism +bantingize +bantling +bantoanon +bantoid +banton +bantry +bantuanon +banty +banu +banuah +banuu +banuwang +banuyo +banville +banwari +banwuri +banxring +banya +banyai +banyan +banyang +banyangi +banyans +banyo +banyok +banyoro +banyuk +banyuls +banyum +banyun +banyung +banyuq +banyuwangi +banza +banzai +banzais +banzart +banzer +banzie +banziri +banznondugl +banzo +baoa +baobab +baobabs +baokan +baol +baolan +baolo +baominh +baonan +baori +baoria +baorias +baoruco +baotiste +baoule +bapa +bapai +bapakombe +bapakum +bapara +bape +baphia +baphomet +baphometic +bapinyi +bapists +bapo +bapokara +bapounou +bappu +baptanodon +baptise +baptised +baptiseme +baptises +baptisia +baptisin +baptising +baptism +baptismally +baptisms +baptist +baptista +baptisteries +baptistic +baptistina +baptistine +baptistown +baptistries +baptistry +baptists +baptizable +baptize +baptized +baptizee +baptizement +baptizer +baptizers +baptizes +baptizest +baptizeth +baptizing +baptornis +bapu +bapuku +bapuu +baquero +baquet +bara +baraa +baraamu +baraan +baraba +barabaig +barabaik +barabara +barabare +barabas +barabash +barabashov +barabba +barabbas +barabduin +barabee +baraboo +barabora +barabra +barabrey +baraca +baracakay +barachel +barachias +barachkov +barachois +barad +baraddur +baradia +baradur +baraga +baragar +baragaunle +baragnosis +baragone +baragouin +baragouinish +baraguyu +barah +barahir +barahona +barai +baraic +barain +baraithas +barajida +barajillo +barak +baraka +barakai +barakat +barake +baraki +barakibarak +baraks +baral +barala +baralipton +baram +barama +baramagyi +baramata +barambo +barambu +barami +baramika +baramtinjar +baran +baranci +barandos +barang +barangan +barangay +barangbarang +barani +baranor +baranov +baranovich +baranovskaya +baranow +baranowska +baranski +baranya +baraog +barapasi +baras +barasana +barasano +barash +barasingha +barat +barataria +barath +barathea +barathra +barathrum +baratti +barau +barauana +barauna +baravi +barawa +barawahing +barawana +baraza +barb +barba +barbabra +barbacan +barbacci +barbacini +barback +barbacoa +barbacoan +barbacoas +barbacou +barbadian +barbados +barbaig +barbal +barbalin +barbaloin +barban +barbara +barbaraanne +barbaralalia +barbare +barbarea +barbarella +barbaresque +barbari +barbarian +barbarianism +barbarianize +barbarians +barbarical +barbarically +barbarious +barbarisms +barbarities +barbarity +barbarize +barbarized +barbarizes +barbarizing +barbarosa +barbarossa +barbarotti +barbarous +barbarously +barbarrigo +barbary +barbas +barbasco +barbastel +barbate +barbated +barbatimao +barbato +barbay +barbe +barbeau +barbecue +barbecued +barbecueing +barbecues +barbecuing +barbed +barbee +barbeiro +barbel +barbele +barbella +barbellate +barbells +barbellula +barbellulate +barbels +barbeque +barbequed +barber +barbered +barberena +barberess +barberfish +barbering +barberini +barberish +barbero +barberries +barbers +barbershop +barbershops +barberton +barberville +barbery +barbet +barbets +barbette +barbey +barbeyaceae +barbezier +barbi +barbican +barbicans +barbicel +barbie +barbier +barbieri +barbigerous +barbing +barbio +barbion +barbitalism +barbiton +barbitone +barbitos +barbiturates +barbituric +barbizon +barbless +barblet +barbo +barbone +barboo +barbotine +barbouillage +barbour +barboura +barbourville +barbox +barbra +barbro +barbs +barbu +barbuda +barbula +barbulate +barbule +barbulee +barbulyie +barburao +barburr +barbwire +barbwires +barby +barc +barca +barcan +barcarole +barcaroles +barcarolle +barcella +barcellos +barcelona +barceloneta +barcena +barchan +barchevin +barchran +barcia +barclay +barclayville +barclock +barco +barcode +barcodes +barcombe +barcoo +barcraft +barcroff +barcroft +barcza +barczy +bard +barda +bardak +bardane +bardash +bardcraft +barde +barded +bardel +bardeman +barden +bardes +bardesanism +bardesanist +bardesanite +bardeskari +bardess +bardette +bardi +bardia +bardic +bardie +bardiglio +bardily +bardiness +bardinet +barding +bardish +bardism +bardlet +bardlike +bardling +bardo +bardolater +bardolatry +bardolph +bardolphian +bardoni +bardonia +bardot +bardour +bards +bardship +bardsley +bardstown +bardulph +bardwell +bardy +bare +barea +bareacres +bareback +barebacked +bareboat +barebone +bareboned +barebones +bareca +bared +baredji +baree +barefacedly +barefit +barefoot +barefooted +barege +bareham +barehanded +barehead +bareheaded +barei +bareilly +barein +bareiss +bareji +bareke +bareko +barel +barelegged +bareli +barelli +barely +baremetal +baren +barenecked +bareness +barenie +barent +barents +barentsburg +barentsen +barentu +barer +barera +barere +bares +baresark +bareshe +baresma +barest +baret +baretta +baretto +barezewska +barf +barfed +barfer +barff +barfield +barfing +barfish +barflies +barfs +barfucious +barful +barfulation +barfulous +barga +bargain +bargainable +bargained +bargainee +bargainer +bargainers +bargaining +bargainor +bargains +bargainwise +bargam +bargander +bargarian +barge +bargeboard +barged +bargee +bargeer +bargees +bargeese +bargehouse +bargelike +bargeload +bargeman +bargemaster +bargemen +barger +bargersville +barges +bargh +bargham +barghest +barging +bargirl +bargirls +bargista +bargmann +bargoose +bargu +barguzin +bargy +barham +barhamsville +barhamu +barharbor +barhillel +barhop +barhopped +barhopping +barhops +barhumite +bari +baria +bariah +bariai +bariaingero +bariatinski +bariatrician +bariba +baribari +baribeau +baribu +baric +barid +baridhara +barie +barier +bariji +barijil +barik +baril +barile +barilhaus +barilla +barillaro +barilogo +barim +barimawaini +barin +barinas +baring +baringhaus +baringo +barington +bario +barios +baris +barisal +barisan +barish +barit +barite +barites +bariti +barito +baritone +baritones +barium +bariums +barjac +barjesus +barjon +barjona +bark +barka +barkan +barkantine +barkat +barkbound +barkcutter +barke +barked +barkeep +barkeeper +barkeepers +barkeeps +barken +barkentine +barkentines +barker +barkers +barkery +barkevikite +barkevikitic +barkey +barkeyville +barkhan +barkhas +barkhouse +barkier +barkin +barking +barkingly +barkinji +barkins +barkis +barkle +barkless +barkley +barkleys +barkly +barklyite +barko +barkometer +barkos +barkoundouba +barkow +barkpeel +barkpeeler +barkpeeling +barkriver +barks +barksdale +barksome +barkstane +barkunian +barkwill +barkworth +barky +barlafumble +barlafummil +barlas +barless +barley +barleybird +barleybreak +barleycorn +barleyhood +barleymow +barleys +barleysick +barlig +barling +barlock +barlow +barlowe +barlows +barm +barma +barmaid +barmaids +barman +barmaster +barmbrack +barmcloth +barmecidal +barmecide +barmeli +barmen +barmie +barmier +barmiest +barmills +barmkin +barmote +barmskin +barmy +barmybrained +barn +barna +barnaba +barnabas +barnabei +barnabite +barnaby +barnac +barnacled +barnacles +barnadine +barnard +barnardiana +barnardo +barnato +barnbrack +barnburner +barndollar +barne +barnegat +barnell +barnes +barnesboro +barnescity +barness +barneston +barnesville +barnett +barneveld +barney +barnfloor +barnful +barng +barnhardt +barnhardtite +barnhart +barnhill +barnhouse +barnicke +barnickel +barnier +barnim +barnman +barns +barnsby +barnsdall +barnsley +barnstable +barnstall +barnstaple +barnstead +barnstormed +barnstormer +barnstormers +barnstorming +barnstorms +barnswell +barnum +barnumism +barnumize +barnwell +barny +barnyard +barnyards +baro +baroco +baroda +barodynamic +barodynamics +baroghil +barognosis +barogram +barograms +barograph +barographic +barographs +baroi +barok +barolet +barolo +barology +barolong +barombi +barombikoto +barombimbo +barometers +barometric +barometrical +barometry +barometz +baromotor +baron +baronage +baronages +baroncello +barondo +barone +baronesses +baronetage +baronetcies +baronetcy +baronethood +baronetical +baronets +baronetship +barong +baronga +barongagunay +baroni +baronies +baronize +baronne +baronnet +baronry +barons +baronship +baropasi +baroque +baroqueness +baroques +baroscope +baroscopic +baroscopical +barosma +barosmin +barotac +barotactic +barotaxis +barotaxy +baroto +barotse +barotseland +barouch +barouche +barouches +barouchet +baroudi +barouh +barouni +baroux +barovelli +barovic +baroxyton +barpost +barquantine +barque +barquentine +barques +barr +barra +barrabee +barrabel +barrabkie +barrable +barrabora +barracan +barracked +barracker +barracking +barracks +barrackville +barraclade +barraclough +barracoon +barracouta +barracudas +barrad +barragan +barraged +barrages +barraging +barragon +barrah +barramunda +barramundi +barranca +barranco +barrandite +barranquilla +barranquitas +barrantes +barrard +barras +barrass +barrat +barrater +barrative +barrator +barratrous +barratrously +barratry +barratt +barraud +barrault +barrawa +barray +barred +barredout +barree +barrel +barrelage +barreled +barreler +barrelet +barrelful +barrelhead +barreling +barrell +barrelled +barrelling +barrelmaker +barrelmaking +barrels +barrelwise +barren +barrener +barrenest +barrenly +barrenness +barrens +barrenwort +barrer +barrera +barrero +barres +barret +barreto +barrets +barrett +barretter +barrettes +barretts +barreyre +barri +barricade +barricaded +barricader +barricaders +barricades +barricading +barricado +barrico +barrie +barrientos +barrier +barriere +barriers +barries +barriguda +barrigudo +barrikin +barriness +barring +barringer +barrington +barringtonia +barrio +barrios +barris +barrister +barristerial +barristers +barristress +barritt +barro +barrodale +barron +barronett +barrons +barroom +barrooms +barroso +barrow +barrowblade +barrowclough +barrowful +barrowist +barrowman +barrows +barru +barrueto +barrulee +barrulet +barrulety +barruly +barry +barryman +barryn +barryton +barrytown +barryville +bars +barsabas +barsac +barsad +barsalogo +barsanges +barsch +barscha +barse +barsha +barshee +barsine +barsize +barsky +barsoe +barsom +barsony +barstool +barstools +barstow +barszczewski +bart +barta +bartang +bartangi +bartel +bartell +bartels +bartelso +barten +bartended +bartender +bartenders +bartending +bartends +bartenieff +barter +bartered +barterer +barterers +bartering +barters +barth +bartha +barthelemy +barthelmes +barthelmess +barthite +barthold +bartholemew +bartholo +bartholomean +bartholomew +bartholomite +bartholonie +barti +bartimaeus +bartisans +bartizan +bartizaned +bartizans +bartkowska +bartl +bartle +bartlemud +bartlemuds +bartlemy +bartlesville +bartlet +bartlett +bartletts +bartley +bartlmuhd +bartlow +bartly +bartman +barto +bartoffski +bartok +bartold +bartoli +bartolme +bartolo +bartolome +bartolomeo +bartolucci +barton +bartoncity +bartonella +bartonia +bartonsville +bartoszewicz +bartoszyski +bartow +bartowna +bartra +bartram +bartramia +bartramian +bartschi +bartsia +bartush +barty +bartz +baru +barua +baruah +barucci +baruch +barue +baruga +baruh +baruk +barun +barundi +barunga +baruria +baruya +barvel +barwal +barware +barwares +barway +barways +barwick +barwidth +barwikowski +barwin +barwise +barwon +barwood +barwyn +bary +barya +barycenter +barye +baryecoia +baryglossia +barylalia +barylite +baryon +baryonic +baryons +baryphonia +baryphonic +baryphony +baryshnikov +barysilite +barysphere +baryta +barytes +barythymia +barytic +barytine +baryton +barytone +barz +barzan +barzell +barzelli +barzillai +barzini +barzyk +basa +basaa +basabara +basak +basal +basale +basalia +basally +basalt +basaltes +basaltic +basaltiform +basaltine +basaltoid +basalts +basang +basanga +basanite +basap +basaraba +basarado +basare +basaree +basari +basarwa +basat +basauri +basawa +basay +basaya +basbleu +basch +basco +bascology +bascom +bascomb +bascombe +bascopolus +bascot +bascule +basdeo +base +baseball +baseballdom +baseballer +baseballs +baseboards +baseborn +basebred +baseca +based +basedon +basedow +basedrdbms +basehart +basehearted +basehor +basel +baselard +baseless +baselessly +baselessness +baselike +baseline +baseliner +baselines +basella +basellaceae +basellaceous +baselstadt +basely +basement +basements +basementward +baseminded +basename +baseness +basenji +basepath +baser +baseregister +bases +basest +basetype +bash +bashai +bashamma +bashan +bashar +basharawa +basharimoff +bashawdom +bashawism +bashawship +bashbazouk +bashed +basheer +bashemath +basher +bashers +bashes +bashful +bashfully +bashfulness +bashgal +bashgali +bashgari +bashgharik +bashi +bashich +bashiic +bashilange +bashilele +bashing +bashir +bashiri +bashkardi +bashkarik +bashkir +bashkiria +bashku +bashlyk +bashmuric +basho +bashqala +bashton +bashyam +basia +basial +basialveolar +basiate +basiation +basibla +basic +basically +basicity +basiclike +basicly +basicranial +basics +basicsoff +basicson +basidia +basidial +basidigital +basidigitale +basidiophore +basidiospore +basidium +basidorsal +basie +basier +basifacial +basification +basified +basifier +basifiers +basifies +basifixed +basifugal +basify +basifying +basigamous +basigamy +basigenic +basigenous +basigynium +basihyal +basihyoid +basij +basil +basila +basilaki +basilan +basilarchia +basilary +basilateral +basile +basilea +basilemma +basileo +basileus +basilevsky +basili +basilian +basilic +basilica +basilicae +basilical +basilican +basilicas +basilicata +basilicate +basilicon +basilics +basilidian +basilinna +basilio +basiliscan +basiliscine +basiliscus +basilisk +basilisks +basilissa +basilosaurus +basils +basilweed +basilysis +basilyst +basim +basima +basin +basinasal +basinasial +basined +basinerved +basinet +basinets +basing +basingame +basinger +basinlike +basins +basion +basiophitic +basiotribe +basiotripsy +basipetal +basiphobia +basipodite +basipoditic +basiq +basiradial +basirhinal +basiri +basirostral +basis +basiscopic +basisphenoid +basitemporal +basitting +basiventral +baskale +baskaran +baskatta +baskcomb +baskcombe +basked +baskenyang +basker +baskerville +baskervilles +basket +basketball +basketballer +basketballs +basketful +basketfuls +basketing +basketlike +basketmaker +basketmaking +basketo +basketries +basketry +baskets +baskett +basketto +basketware +basketwoman +basketwood +basketwork +basketworm +baskin +basking +baskingridge +baskir +baskish +baskonize +basks +basl +basladynski +basmadjian +basmath +basner +basnett +baso +basoche +basoga +basoid +basoko +basom +bason +basongo +basons +basoo +basophile +basophilia +basophilous +basophobia +basos +basosi +basossi +basote +basotho +basovaya +basque +basqued +basques +basquette +basquine +basquort +basrah +basrhin +basria +bass +bassa +bassakaduna +bassakomo +bassakwomu +bassalia +bassalian +bassam +bassan +bassanello +bassanite +bassano +bassar +bassara +bassari +bassarid +bassaris +bassariscus +bassarisk +bassas +basse +bassein +bassekotto +bassenavarre +basser +basseri +basserman +bassermann +basses +basset +basseted +basseterre +bassetite +bassets +bassett +bassetta +bassetting +bassfield +bassharbor +bassia +bassie +bassignana +bassil +bassila +bassine +bassinets +bassingwell +bassinrose +bassist +bassists +basskilla +basslake +bassler +bassline +bassly +bassness +bassoon +bassoonist +bassoonists +bassoons +bassorilievo +bassorin +bassos +bassossi +bassus +basswoods +bassy +bast +basta +bastaard +bastar +bastarache +bastard +bastardies +bastardism +bastardize +bastardized +bastardizes +bastardizing +bastardly +bastardo +bastardos +bastards +bastardy +bastari +basted +bastegor +basten +baster +basters +bastes +basti +bastia +bastian +bastiani +bastide +bastien +bastile +bastiles +bastille +bastilles +bastin +bastinade +bastinado +bastinadoes +basting +bastings +bastion +bastionary +bastioned +bastionet +bastions +bastisoft +bastite +bastnasite +basto +baston +bastos +bastrop +basts +basu +basua +basuele +basulto +basurale +basuto +basutoland +basye +baszaire +baszi +bata +bataan +bataba +bataclan +batad +batadji +batagude +bataille +batain +batak +batakan +bataklik +bataleur +batalla +batalov +batammaraba +batan +batandeewe +batanes +batang +batanga +batangan +batangas +batanides +batanta +batara +batareiki +batareyka +batasuke +batata +batatas +batatilla +batau +batauga +batavi +batavia +batavian +batawana +bataxan +batboy +batboys +batcave +batch +batcha +batcham +batched +batcheff +batchelder +batchelor +batchenga +batcher +batchers +batches +batching +batchit +batchmode +batchmove +batchoun +batchquery +batchtown +batcomputer +batdambang +batea +bateaux +bated +bateg +batek +bateke +batekes +batel +bateman +batement +bateq +batera +bates +batesburg +batescity +batesland +bateson +batesson +batesville +batetanga +batetela +batfish +batfowl +batfowler +batfowling +bath +batha +bathala +bathazar +bathbrick +bathe +batheable +bathed +bather +bathers +bathes +bathetic +bathetically +bathflower +bathgate +bathhouse +bathhouses +bathhurst +bathi +bathic +bathilde +bathing +bathist +bathists +bathless +bathman +bathmat +bathmic +bathmism +bathmotropic +bathochrome +bathochromic +bathochromy +bathoflore +bathofloric +batholite +batholith +batholithic +batholiths +batholitic +bathometer +bathonian +bathophobia +bathorse +bathory +bathoses +bathrabbim +bathrick +bathrobe +bathrobes +bathroom +bathroomed +bathrooms +bathroot +baths +bathseba +bathsheba +bathshua +bathsprings +bathtub +bathtubs +bathudi +bathukolpian +bathukolpic +bathurst +bathvillite +bathwort +bathyal +bathybian +bathybic +bathybius +bathychrome +bathycolpian +bathycolpic +bathycurrent +bathygraphic +bathylite +bathylith +bathylithic +bathylitic +bathymeter +bathymetric +bathymetry +bathypelagic +bathyscaph +bathyscaphe +bathyscaphes +bathyseism +bathysmal +bathysophic +bathysphere +bathyspheres +bati +batiatus +batibo +baticola +batidaceae +batidaceous +batie +batigi +batike +batiker +batiki +batiks +batikulin +batikuling +bating +batinkoff +batino +batis +batist +batista +batiste +batistes +batitinan +batiwai +batjan +batlan +batlike +batliner +batling +batlle +batlon +batlux +batman +batmen +batna +batnam +bato +batobrina +batocrinidae +batocrinus +batodendron +batoid +batoidei +batok +batoka +batombu +batomo +baton +batonga +batongtou +batonistic +batonne +batonnum +batonrouge +batons +batonu +batophobia +bator +batory +batoufam +batouri +batrachia +batrachian +batrachians +batrachiate +batrachidae +batrachium +batrachoid +bats +batsaw +batsbi +batsbiitsy +batsheva +batsi +batsingo +batsman +batsmanship +batsmen +batson +batster +batswana +batswing +batta +battaglia +battailous +battak +battakhin +battalia +battalions +battarism +battarismus +batteau +batteaux +batted +battel +batteler +batten +battened +battener +batteners +battening +battens +batter +batterable +battercake +batterdock +battered +batterer +batterfang +batteried +batteries +battering +batterman +batters +battersby +battershill +batterson +battery +batteryman +batterypark +batticaloa +battier +battiest +battigah +battik +battiks +battiness +batting +battings +battish +battiston +battistrada +battle +battleax +battleboro +battlecreek +battlecry +battled +battledore +battledores +battlefield +battlefields +battlefronts +battleful +battlelake +battlemage +battlement +battlemented +battlements +battleplane +battler +battlers +battles +battleship +battleships +battlesome +battlestar +battlestead +battletown +battleview +battlewagon +battleward +battlewise +battling +battological +battologist +battologize +battology +batts +battue +batty +batu +batua +batuan +batui +batuiolong +batukite +batula +batulappa +batule +batuley +batura +baturaja +batussi +batwa +batwoman +batwomen +batya +batyphone +batz +batzen +bauan +baubau +baublery +baubles +baubling +baubo +bauch +bauchard +bauchau +bauchi +bauchle +bauci +baucis +bauckie +bauckiebird +baucus +baud +baudais +baudaranaike +baudekin +baudette +baudi +baudji +baudo +baudouin +baudrate +baudrates +baudrons +bauds +baudzi +bauer +bauera +bauersfelda +baugh +baughan +baughman +baugnon +bauhaus +bauhinia +baujagoi +baukan +baul +baulch +baule +bauleah +baulk +baulked +baulkier +baulkiest +baulking +baulks +baulky +baum +bauman +baumann +baumans +baumberg +baumberger +baume +baumeia +baumeister +baumer +baumert +baumgart +baumgarten +baumgartner +baumhauerite +baumkatzread +baumon +baums +baun +baungshe +bauno +baur +baure +baurel +bauri +bauria +bauro +bauschulte +bausetti +baushi +bausman +bauson +bausond +baussy +bauta +bautahari +bautista +bautzen +bauwaki +baux +bauxites +bauxitite +bauzi +bavadra +bavai +bavani +bavardage +bavaria +bavarian +bavaroy +bavary +bavenite +bavera +baverdage +baviaantje +bavian +bavier +baviere +bavin +bavius +bavon +bavoso +bavure +bawa +bawah +bawaki +bawan +bawang +bawarchi +bawari +bawbee +bawcock +bawcows +bawdier +bawdies +bawdiest +bawdily +bawdiness +bawdon +bawdric +bawdrics +bawdries +bawdry +bawds +bawdship +bawdy +bawdyhouse +bawean +bawek +bawera +bawku +bawlakhe +bawled +bawler +bawlers +bawley +bawling +bawls +bawm +bawn +bawng +bawo +bawom +bawra +bawtie +bawu +bawule +bawuli +baxa +baxevanos +baxley +baxter +baxterian +baxterianism +baxtone +baya +bayad +bayadere +bayadh +bayadi +bayag +bayaka +bayal +bayali +bayamo +bayamon +bayan +bayanga +bayangi +bayanhongor +bayano +bayanolgiy +bayard +bayardly +bayarea +bayash +bayat +bayawan +bayberries +baybolt +bayboro +bayburt +baybush +baycenter +baycentral +baycity +baycuru +baye +bayeaux +bayer +bayerkohler +bayern +bayes +bayeta +bayfield +baygall +baygo +bayhead +bayi +baying +bayino +bayish +bayit +bayldon +bayldonite +bayle +bayles +bayless +baylet +bayley +baylike +baylis +bayliss +bayly +bayman +baymer +bayminette +baymuna +baymunana +baynawa +bayne +baynes +bayness +bayninan +bayno +bayo +bayobiri +bayogoula +bayok +bayola +bayombe +bayombong +bayoneted +bayoneteer +bayoneting +bayonets +bayonetted +bayonetting +bayong +bayonne +bayono +bayot +bayotte +bayou +bayougoula +bayoulabatre +bayous +bayouv +baypines +bayport +bayraktar +bayreuth +bayrut +bays +bayshore +bayside +bayso +baysprings +bayt +baytown +bayview +bayville +baywood +baywoods +bayyu +baza +bazaar +bazaars +bazaine +bazak +bazan +bazar +bazarjani +bazars +baze +bazega +bazemore +bazen +bazenda +bazerghi +bazerman +bazhi +baziga +bazigar +bazik +bazin +bazine +bazinet +baziuk +bazlen +bazlith +bazluth +bazoo +bazooka +bazookas +bazooki +bazou +bazouki +bazz +bazza +bazzite +bbadha +bbaggins +bbaledha +bbbb +bbbbb +bbbbbb +bbbbbbb +bbbbbbbb +bbbbe +bbbbut +bbbppsll +bbcc +bbcci +bbcs +bbfff +bblist +bbncc +bbncca +bbnccb +bbnccc +bbnccd +bbncce +bbnccf +bbnccg +bbncci +bbnccla +bbnccq +bbnccu +bbnccx +bbnccy +bbnj +bbnlisp +bbnz +bboard +bboards +bbroyg +bbroygbvgw +bbsc +bbses +bbslist +bbsname +bbsnet +bbsnext +bbss +bbssi +bbstohtm +bbtona +bcad +bcallaha +bcast +bcgunt +bcie +bcms +bcnu +bcpl +bcplbody +bcplci +bcplcp +bcplhead +bcplheadline +bcpllb +bcplmain +bcplnum +bcpltail +bcspatch +bdecfg +bdeinst +bdellid +bdellidae +bdellium +bdelloid +bdelloida +bdellostoma +bdellotomy +bdelloura +bdellouridae +bdffe +bdiff +bdmdm +bdmsc +bdrm +beable +beach +beacham +beachball +beachboy +beachboys +beachcity +beachcomber +beachcombers +beachcombing +beached +beaches +beachhaven +beachheads +beachier +beachiest +beaching +beachlake +beachlamar +beachless +beachman +beachmaster +beachward +beachwood +beachy +beacon +beaconage +beaconed +beaconfalls +beaconing +beaconless +beacons +beaconsfield +beaconwise +bead +beada +beaded +beadell +beader +beadflush +beadhouse +beadier +beadiest +beadily +beadiness +beading +beadings +beadledom +beadlehood +beadleism +beadlery +beadles +beadleship +beadlet +beadlike +beadling +beadman +beadmen +beadroll +beadrolls +beadrow +beads +beadsman +beadsmen +beadswoman +beadwork +beadworks +beafada +beagell +beagle +beagles +beagleware +beagley +beagling +beah +beainy +beak +beaked +beaker +beakerful +beakerman +beakermen +beakers +beakful +beakhead +beakier +beakiest +beakins +beakiron +beakless +beaklike +beaks +beaky +beal +beala +beale +bealeton +bealiah +bealing +beall +beallach +beallsville +bealoth +beals +bealtared +bealtine +bealtuinn +beam +beamage +beaman +beambird +beamcrack +beame +beamed +beamer +beamers +beames +beamfilling +beamful +beamhouse +beami +beamier +beamily +beaminess +beaming +beamingly +beamish +beamless +beamlet +beamlike +beamman +beams +beamsman +beamster +beamwork +beamy +bean +beana +beanbag +beanbags +beanball +beanballs +beanchard +beancod +beaned +beaner +beaneries +beaners +beanery +beanfeast +beanfeaster +beanfield +beanhollow +beanie +beanies +beaning +beanlike +beano +beanpole +beanpoles +beans +beansetter +beanshooter +beanstalk +beanstalks +beanstation +beant +beantworten +beanweed +beany +beaproned +bear +bearable +bearableness +bearably +bearance +bearbaiter +bearbaiting +bearbane +bearbeitet +bearberries +bearbind +bearbine +bearbranch +bearcat +bearcats +bearcoot +bearcreek +beard +bearded +bearden +bearder +beardie +bearding +beardless +beardmore +beardom +beards +beardsfork +beardstown +beardtongue +beardy +beared +bearer +bearers +bearess +bearest +beareth +bearfoot +bearherd +bearhide +bearhound +bearing +bearings +bearishly +bearishness +bearlake +bearlet +bearlike +bearm +bearman +bearmountain +bearnes +bearpaw +bears +bearse +bearship +bearskin +bearskins +bearsville +bearth +beartongue +beartooth +bearward +bearwood +bearwort +beas +beasely +beasley +beason +beast +beastbane +beastdom +beasthood +beastie +beasties +beastily +beastish +beastishness +beastlier +beastliest +beastlike +beastlily +beastliness +beastling +beastlings +beastly +beastman +beasts +beastship +beat +beata +beatable +beatably +beatae +beatback +beatbox +beate +beatee +beaten +beatenon +beater +beaterman +beaters +beatest +beateth +beath +beathbdp +beatic +beatie +beatifical +beatifically +beatificate +beatified +beatifies +beatifying +beatinest +beating +beatings +beatitide +beatitudes +beatles +beatme +beatniks +beato +beaton +beatrice +beatrisa +beatrix +beatriz +beats +beatster +beattie +beatty +beattyville +beatus +beaty +beau +beaubien +beaucaire +beaucatcher +beauchaine +beauchamp +beauchanps +beauchemin +beauclerc +beauclere +beaucoup +beaudet +beaudette +beaudin +beaudine +beaudoin +beaudray +beaudricourt +beaudry +beaufin +beauford +beaufort +beaugarde +beauharnais +beauish +beauism +beaule +beaulieu +beaumaris +beaumier +beaumont +beaumontia +beaune +beauparc +beaupere +beauperthuis +beaupre +beaus +beauseant +beausejour +beauship +beaut +beauteously +beauti +beautician +beauticians +beautied +beauties +beautified +beautifier +beautifiers +beautifies +beautiful +beautifully +beautify +beautifying +beautihood +beautiless +beauts +beauty +beautydom +beautyship +beauvais +beauvoisin +beauvrier +beauvriers +beauvy +beavan +beaver +beaverbay +beaverboard +beaverbrook +beavercity +beavercreek +beaverdale +beaverdam +beaverdams +beavered +beaverette +beaverfalls +beavering +beaverish +beaverism +beaverite +beaverize +beaverkill +beaverkin +beaverlett +beaverlike +beaverpelt +beaverroot +beavers +beaversekani +beaverteen +beaverton +beavertown +beaverville +beaverwood +beavery +beaves +beavington +beavis +beavon +beavos +beba +bebabefang +beback +bebadji +bebai +bebait +beballed +beban +bebang +bebannered +bebar +bebaroe +bebaron +bebaste +bebat +bebathe +bebatter +bebay +bebayaga +bebayaka +bebber +bebe +bebeast +bebed +bebee +bebeerine +bebeeru +bebei +bebel +bebele +bebeli +bebelted +bebende +bebeng +bebent +bebert +bebi +bebilya +bebit +bebite +bebization +beblain +beblear +bebled +bebless +beblister +beblood +bebloom +beblotch +beblubber +bebog +beboid +bebopper +beboppers +bebops +beboss +bebotch +beboteke +bebothered +bebouldered +bebrave +bebreech +bebrine +bebrother +bebrush +bebump +bebusy +bebuttoned +becall +becalmed +becalming +becalmment +becalms +became +becamest +becan +becap +becard +becarpet +becarve +becassocked +becater +because +becauseafter +becc +becca +beccafico +beccaria +beccarie +becense +bech +bechained +bechalk +bechamel +bechamels +bechance +bechar +becharm +bechase +bechati +bechatter +bechauffeur +becheck +becher +bechere +bechern +becheve +bechhofer +bechignoned +bechirp +bechmann +bechner +bechorath +bechtel +bechtler +bechuana +bechuanaland +becircled +becivet +beck +becka +becke +becked +beckel +beckelite +beckemeyer +beckenstein +becker +beckerath +beckerman +beckers +beckersted +beckett +beckham +beckhaus +beckhurst +becki +beckie +becking +beckinsale +beckiron +beckles +beckley +beckman +beckner +beckon +beckoned +beckoner +beckoners +beckoning +beckoningly +beckons +becks +beckstead +beckstein +beckstrom +beckum +beckville +beckwith +beckworth +becky +beclad +beclamor +beclamour +beclang +beclart +beclasp +beclatter +beclaw +becloak +beclog +beclothe +beclouded +beclouding +beclouds +beclout +beclown +becluster +becobweb +becoiffed +becollier +becolme +becolor +becombed +become +becomes +becometh +becoming +becomingly +becomingness +becomings +becomma +becompass +becompliment +beconovich +becoom +becoresh +becost +becousined +becovet +becoward +becquart +becque +becquerel +becquerelite +becram +becramp +becrampon +becrawl +becreep +becrime +becrimson +becrinolined +becripple +becroak +becross +becrowd +becrown +becrush +becrust +becry +bectocucei +becu +becudgel +becuffed +becuiba +becumber +becuna +becurl +becurry +becurse +becurst +becurtained +becus +becushioned +becut +becwar +beda +bedabble +bedad +bedaggered +bedall +bedamini +bedamn +bedamned +bedamns +bedamp +bedamuni +bedan +bedanga +bedangled +bedard +bedare +bedark +bedarken +bedash +bedaub +bedaubed +bedaubing +bedaubs +bedauye +bedawie +bedawiye +bedawn +beday +bedaze +bedazement +bedazzled +bedazzlement +bedazzles +bedazzling +bedazzlingly +bedboard +bedbug +bedbugs +bedcap +bedcase +bedchair +bedchairs +bedchamber +bedclothes +bedcord +bedcover +bedcovering +bedcoverings +bedcovers +bedda +beddable +bedde +bedded +bedder +bedders +bedding +beddings +beddini +beddoe +beddows +bede +bedea +bedead +bedeaf +bedeafen +bedeau +bedebt +bedeck +bedecked +bedecking +bedecks +bedecorate +bedeguar +bedeiah +bedel +bedelia +bedell +beden +bedene +bedenheim +bedere +bedesman +bedevere +bedeviled +bedeviling +bedevilled +bedevilling +bedevilment +bedevils +bedew +bedewed +bedewer +bedewing +bedewoman +bedews +bedfellow +bedfellows +bedflower +bedfola +bedfoot +bedford +bedfordhills +bedframe +bedframes +bedgery +bedgoer +bedgown +bedgowns +bedhangings +bedi +bedia +bediademed +bediamonded +bediaper +bedias +bedido +bedient +bedight +bedighted +bedik +bedikah +bedimple +bedims +bedin +bediondo +bedip +bedirt +bedirter +bedirty +bedismal +bedisplayed +bediya +bedizen +bedizened +bedizening +bedizenment +bedizens +bedja +bedkey +bedlamer +bedlamic +bedlamism +bedlamite +bedlamitish +bedlamize +bedlamp +bedlamps +bedlams +bedlar +bedless +bedlids +bedlight +bedlington +bedmaker +bedmakers +bedmaking +bedman +bedmate +bedmates +bedminster +bednar +bednarski +bednighted +bednights +bedoanas +bedoctor +bedog +bedoin +bedolt +bedos +bedot +bedote +bedouin +bedouine +bedouinism +bedouins +bedouse +bedown +bedoya +bedoyo +bedpan +bedpans +bedplate +bedplates +bedposts +bedquilt +bedquilts +bedrabble +bedraggled +bedraggles +bedraggling +bedrail +bedrails +bedral +bedrape +bedravel +bedrench +bedress +bedrest +bedribble +bedrich +bedrid +bedrift +bedright +bedrin +bedrip +bedrivel +bedrizzle +bedrock +bedrockers +bedrocks +bedroht +bedroll +bedrolls +bedroom +bedrooms +bedrop +bedrosian +bedrown +bedrowse +bedrug +beds +bedscrew +bedsheets +bedsick +bedside +bedsides +bedsite +bedsock +bedsoe +bedsore +bedsores +bedspreads +bedsprings +bedstaff +bedstand +bedstands +bedstaves +bedstead +bedsteads +bedstock +bedstraws +bedstring +bedtick +bedticking +bedtime +bedtimes +bedtris +bedu +beduanda +bedub +beduchess +beduck +beduins +beduke +bedull +bedumb +bedumbs +bedunce +bedunch +bedung +bedur +bedusk +bedust +bedwarf +bedwarfs +bedway +bedways +bedwell +bedwin +bedye +beearn +beebe +beebee +beebees +beebeplain +beeberiver +beeblebrox +beebo +beebord +beebranch +beebreads +beeby +beech +beechbluff +beechbone +beechbottom +beechcliff +beechcreek +beechdrops +beechen +beecher +beechercity +beecherfalls +beeches +beechgrove +beechier +beechiest +beechisland +beechmont +beechnut +beechnuts +beechwoods +beechy +beecker +beecroft +beed +beeder +beedeville +beedged +beedle +beedles +beedom +beeeen +beeenef +beeessdee +beef +beefburger +beefburgers +beefcake +beefcakes +beefdead +beefeater +beefeaters +beefed +beefer +beefers +beefhead +beefheaded +beefier +beefiest +beefily +beefin +beefiness +beefing +beefish +beefishness +beefless +beeflower +beefs +beefsteaks +beeftongue +beefwood +beefy +beege +beegerite +beehead +beeheaded +beeherd +beehive +beehives +beehler +beehouse +beeish +beeishness +beejay +beek +beeke +beekeeper +beekeepers +beekeeping +beekite +beekman +beekmantown +beeks +beekuru +beekyooess +beelbow +beeler +beeliada +beelike +beeline +beelines +beelol +beelzebub +beelzebubian +beelzebul +beeman +beemaster +beembe +beemer +beemish +been +beennut +beenshipping +beenstock +beep +beeped +beeper +beepers +beeping +beeps +beer +beera +beerage +beerah +beerbachite +beerbibber +beerbohm +beerelim +beerenberg +beerhouse +beeri +beerier +beeriest +beerily +beeriness +beerish +beerishly +beerkens +beerlahairoi +beermaker +beermaking +beerman +beermann +beermonger +beerocracy +beeroth +beerothite +beerothites +beerpull +beers +beersheba +beertema +beery +bees +beesfrom +beeshterah +beesknees +beesley +beeson +beespring +beest +beestings +beeston +beeswax +beeswaxes +beeswing +beeswinged +beeswings +beeth +beethoven +beethovenian +beethovenish +beethovens +beethovian +beetie +beetjuans +beetle +beetlebailey +beetlebum +beetled +beetlehead +beetleheaded +beetler +beetles +beetlestock +beetlestone +beetleweed +beetling +beetmister +beeton +beetown +beetrave +beetroot +beetroots +beetrooty +beets +beety +beeuh +beeve +beeves +beeville +beevish +beeware +beeway +beeweed +beewise +beewort +beexecuted +beezen +beezley +beezy +befall +befallen +befalleth +befalling +befalls +befame +befamilied +befamine +befan +befancy +befang +befanis +befanned +befated +befathered +befavor +befavour +befe +befeather +befehl +befell +beferned +befetished +befetter +befezzed +beffert +befi +befiddle +befilch +befile +befilleted +befilmed +befiltered +befilth +befinger +befire +befist +befit +befits +befitted +befittingly +beflag +beflags +beflannel +beflap +beflatter +beflea +befleck +beflounce +beflour +beflout +beflower +beflum +befluster +befoam +befogged +befogs +befon +befool +befooled +befooling +befoolment +befools +befop +before +beforeasm +beforeexpand +beforehand +beforeness +beforereorg +beforested +beforethey +beforetime +beforetimes +befortune +befouled +befouler +befoulier +befouling +befoulment +befouls +befountained +befraught +befreckle +befreeze +befreight +befret +befriend +befriended +befriender +befriending +befriendment +befriends +befrill +befringe +befringed +befriz +befrocked +befrogged +befrounce +befrumple +befuddle +befuddled +befuddlement +befuddler +befuddlers +befuddles +befuddling +befume +befun +befurbelowed +befurred +bega +begabled +begad +begaev +begahak +begak +begall +began +begani +begar +begari +begarlanded +begarnish +begartered +begash +begasin +begat +begaud +begaudy +begawan +begawd +begay +begaze +bege +begeck +begem +beget +begets +begettal +begetter +begetters +begettest +begetteth +begg +beggable +beggar +beggardom +beggared +beggarer +beggaress +beggarhood +beggaries +beggaring +beggarism +beggarlike +beggarliness +beggarly +beggarman +beggars +beggarweed +beggarwise +beggarwoman +begged +beggiatoa +begging +beggingly +beggingwise +beggs +beghard +beghi +begi +begift +begiggle +begild +begilt +begimao +begin +beginc +beginger +beginibum +begining +beginner +beginners +beginnest +beginning +beginnings +begins +begird +begirded +begirding +begirdle +begirt +beglad +beglamour +beglare +beglerbeg +beglerbeglic +beglerbegluc +beglerbey +begley +beglic +beglide +beglitter +beglobed +begloom +begloze +begluc +beglue +begn +begnaw +bego +begob +begobs +begoggled +begohm +begona +begone +begonia +begoniaceae +begoniaceous +begoniales +begonias +begorah +begorra +begorrah +begorry +begot +begotten +begottenness +begoud +begovich +begowk +begowned +begrace +begrain +begrave +begray +begrease +begreen +begrett +begrim +begrime +begrimed +begrimer +begrimes +begriming +begrimmed +begroan +begrown +begrudged +begrudges +begrudging +begrudgingly +begruntle +begrutch +begrutten +begs +begua +beguard +begudry +beguess +beguile +beguiled +beguileful +beguilement +beguilements +beguiler +beguilers +beguiles +beguiling +beguilingly +beguin +beguine +beguines +begulf +begum +begums +begun +begunk +begut +behal +behale +behalf +behallow +behammer +behandlung +behap +behar +behari +behatted +behav +behave +behaved +behaver +behavers +behaves +behaveth +behaving +behavior +behavioral +behaviorally +behaviored +behaviorism +behaviorist +behaviorists +behaviors +behaviour +behavioural +behaviourist +behaviours +behcet +behdad +behe +beheadal +beheaded +beheadee +beheader +beheading +beheadlined +beheads +behear +behears +behearse +behedge +behee +beheld +behelp +behemoth +behemoths +behen +behenate +behenic +beheshti +behests +behets +behie +behind +behinder +behindhand +behinds +behindsight +behint +behlen +behler +behli +behling +behm +behma +behmer +behn +behnam +behnan +behoa +behold +beholdable +beholden +beholder +beholders +beholdest +beholdeth +beholding +beholds +behoney +behoof +behooped +behoot +behoove +behooved +behooveful +behoovefully +behooves +behooving +behoovingly +behorn +behorror +behove +behoved +behoves +behowl +behr +behrain +behran +behrens +behring +behrmann +behroozi +behrouz +behrs +behruz +behsud +behung +behusband +behymn +behypocrite +behzad +beibu +beic +beice +beicher +beid +beida +beierle +beiersdorf +beige +beiger +beiges +beigy +beijing +beik +beil +beilenson +beili +beilin +beilul +beim +beimler +bein +beine +being +beingless +beingness +beings +beinked +beinstock +beint +beique +beir +beira +beirne +beirut +beisa +beisel +beishenova +beispiele +beissart +beitinjaneh +beitris +beja +bejabers +bejac +bejade +bejaia +bejali +bejan +bejant +bejar +bejart +bejaundice +bejazz +bejel +bejesus +bejewel +bejeweled +bejeweling +bejewelled +bejewelling +bejewels +bejezebel +bejig +bejou +bejuggle +bejumble +beka +bekaa +bekah +bekassy +bekati +beke +bekeni +bekerchief +bekers +bekes +beketan +bekiau +bekick +bekilted +beking +bekinkinite +bekireche +bekiss +bekka +bekkedam +bekkelund +bekki +bekko +bekkouche +beknave +beknight +beknighted +beknit +beknived +beknotted +beknottedly +beknow +beknown +beko +bekoe +bekombo +bekoose +bekpak +bektas +bekulau +bekuma +bekunde +bekwa +bekwarra +bekwil +bekwiri +bekworra +bela +belabo +belabor +belabored +belaboring +belabors +belabour +belaboured +belabours +belaced +belack +beladle +belady +belafonte +belaga +belagar +belage +belah +belaieff +belaieva +belair +belaire +belait +belaites +belak +belala +belalton +belam +belamcanda +belana +belanas +belanau +beland +belanda +belandas +belang +belangao +belanger +belante +belanya +belar +belard +belasco +belash +belated +belatedly +belatedness +belatticed +belau +belaud +belauder +belaunde +belavendered +belaver +belay +belayan +belayed +belayer +belaying +belays +belazi +belbin +belboul +belcamp +belch +belched +belcher +belchers +belchertown +belches +belchev +belching +belcho +belcourt +beld +beldam +beldame +beldames +beldams +beldamship +belden +beldenville +belderroot +belding +beldon +belduque +bele +beleaf +beleaguer +beleaguered +beleaguerer +beleaguering +beleaguers +beleap +beleaps +beleapt +beleave +belebele +belecture +beledgered +belee +belefere +belegete +beleive +belel +belem +belemnid +belemnite +belemnites +belemnitic +belemnitidae +belemnoid +belemnoidea +belen +beleni +belep +beletter +belew +belewscreek +belfair +belfield +belford +belfort +belfrage +belfried +belfries +belfry +belga +belgae +belge +belgian +belgians +belgic +belgica +belgium +belgoody +belgophile +belgrade +belgrave +belgravia +belgravian +belhaven +belhedron +beli +belia +beliakov +belial +belialic +belialist +belibel +belibi +belich +belicia +belick +belide +beliebigen +belied +belief +beliefful +beliefless +beliefs +belier +beliers +believable +believably +believe +believed +believer +believers +believes +believest +believeth +believing +believingly +beligan +belight +belike +beliked +belila +belili +belimousined +belinda +belindez +belinfante +belingo +belington +belinha +belinked +belinski +belinskij +belinuridae +belinurus +belinyu +belion +belip +beliquor +belir +belis +belisana +belisar +belisle +belissa +belita +belitang +belite +belitter +belittled +belittlement +belittler +belittlers +belittles +belittling +belitung +belive +beliveau +beliye +belizaire +belize +belizean +beljawskya +beljeve +belk +belka +belknap +bell +bella +bellabella +bellach +bellacoola +bellacres +bellah +bellaire +bellanca +bellane +bellanti +bellari +bellarmine +bellarthur +bellas +bellaston +bellaver +bellavista +bellbind +bellbird +bellbottle +bellboys +bellbrook +bellbuckle +bellcity +bellcore +bellcurve +belldoksum +belle +belleau +bellecenter +bellechasse +belled +belledom +belleek +bellefeuille +bellefonte +bellefort +bellefourche +belleglade +belleh +bellehaven +bellehood +bellehumeur +bellem +bellemead +bellemina +belleplaine +beller +belleric +bellerive +bellerophon +bellerose +belles +belletrist +belletristic +belletrists +bellevalley +bellevernon +belleview +belleville +bellevue +bellew +belley +bellguist +bellhanger +bellhanging +bellhops +bellhouse +belli +bellicec +bellicism +bellicosely +bellicosity +bellied +bellies +belliferous +belligerant +belligerence +belligerency +belligerents +bellin +bellina +bellindia +belling +bellingham +bellington +bellini +bellipotent +bellis +bellissima +bellite +belllabsism +bellmaker +bellmaking +bellmann +bellmanship +bellmare +bellmaster +bellmawr +bellmont +bellmore +bellmount +bellmouth +bellmouthed +bellnop +bello +belloch +belloise +bellon +bellona +bellonian +bellonion +bellop +belloq +bellosa +bellote +bellovaci +bellovin +bellow +bellowed +bellower +bellowers +bellowing +bellows +bellowsfalls +bellowsful +bellowslike +bellowsmaker +bellowsman +bellpepper +bellport +bellpull +bellpulls +bellringers +bells +bellshaped +bellsouth +belltail +belltopper +belluci +bellugi +belluno +bellus +bellvale +bellview +bellville +bellvue +bellware +bellwaver +bellweather +bellweed +bellwethers +bellwind +bellwine +bellwood +bellwort +bellworts +belly +bellyached +bellyacher +bellyaches +bellyaching +bellyband +bellybutton +bellybuttons +bellydancer +bellyer +bellyfish +bellyflaught +bellyful +bellyfulls +bellyfuls +bellying +bellyland +bellylike +bellyman +bellypiece +bellypinch +belmar +belment +belminster +belmond +belmondo +belmont +belmonte +belmonts +belmopan +belmore +belnap +belney +belnika +beloam +beloeilite +beloh +belohoubek +beloid +beloit +belom +belomancy +belomor +belomy +belon +belone +belonesite +belong +belonged +belonger +belongest +belongeth +belonging +belongings +belongs +belonid +belonidae +belonite +belonoid +belonosov +belopolskya +belord +belorussia +belorussian +belostoma +belostomidae +belousov +belout +belov +beloved +beloveds +below +belowground +belows +belowstairs +beloyannis +belozenged +belpre +belrango +belrow +belsano +belshazzar +belsire +belsize +belski +belsley +belson +belspring +belt +beltane +belted +beltene +belter +belteshazzar +beltian +beltie +beltine +belting +beltings +beltir +beltis +beltless +beltline +beltlines +beltmaker +beltmaking +beltman +belton +beltram +beltrami +beltran +beltrovata +belts +beltsov +beltway +beltways +beltwise +belu +belubn +beluchi +belucki +belud +beludji +beludzhi +beludzni +beluga +belugas +belugite +beluji +beluntanks +belur +beluran +belus +belushi +belute +belva +belvaux +belve +belvederes +belverdian +belvia +belview +belvin +belvoir +belvue +belwa +bely +belyaev +belyavsky +belying +belyingly +belz +belzanor +belzebuth +belzile +belzoni +bemad +bemadam +bemaddening +bemail +bemaim +bemajesty +bemal +bemangle +bemantle +bemar +bemartyr +bemas +bemask +bemaster +bemat +bemata +bemaul +bemazed +bemba +bembala +bembe +bembecidae +bembex +bembi +bembol +bemby +bemeal +bemean +bemedaled +bemedalled +bement +bementite +bemercy +bemidji +bemili +bemiller +bemina +beminger +bemingle +beminstrel +bemire +bemired +bemirement +bemires +bemiring +bemirror +bemirrorment +bemis +bemist +bemistress +bemitered +bemitred +bemix +bemoan +bemoanable +bemoaned +bemoaner +bemoaning +bemoaningly +bemoans +bemoat +bemock +bemoil +bemoisten +bemole +bemolt +bemonster +bemoon +bemotto +bemoult +bemouth +bemuck +bemud +bemuddle +bemuddlement +bemuddy +bemuffle +bemun +bemurmur +bemused +bemusedly +bemusement +bemuses +bemusing +bemusk +bemuslined +bemuspoint +bemuzzle +bena +benaadir +benab +benabdi +benabena +benac +benacus +benadar +benaderet +benaiah +benaissa +benakinga +benakuma +bename +benami +benamidar +benammi +benard +benarnold +benarsi +benassi +benasty +benato +benaule +benavente +benavides +benavidez +benavon +benavwnte +benay +benaya +benazir +benbassat +benben +benbova +benbow +benby +bence +bench +benchaalal +benchboard +benched +bencher +benchers +benchership +benches +benchfellow +benchful +benchieh +benchimol +benching +benchland +benchlet +benchley +benchman +benchmar +benchmark +benchmarked +benchmarking +benchmarks +bencho +benchpresser +benchwork +benchy +bencie +bencite +bencoolen +benczak +bencze +bend +benda +bendability +bendable +bendat +bendavis +bendayan +bende +bended +bendee +bendeghe +bendel +bendell +benden +bendena +bender +benders +bendersville +bendeth +bendex +bendi +bendibodyi +bendiboi +bendibokyi +bending +bendingly +bendiobudu +benditch +bendite +bendix +bendixsen +bendjedid +bendler +bendlet +bendor +bendoroda +bendorsamuel +bendov +bendow +bends +bendsome +benducha +bendwise +bendy +bene +beneaped +beneath +beneatha +beneberak +beneception +beneceptive +beneceptor +beneda +benedeck +benedek +benedetta +benedetti +benedetto +benedicite +benedict +benedicta +benediction +benedictions +benedictive +benedictory +benedicts +benedictus +benedight +benedikta +benefact +benefaction +benefactions +benefactive +benefactors +benefactory +benefactress +benefactrix +benefic +beneficed +beneficeless +beneficence +beneficences +beneficent +beneficently +benefices +beneficial +beneficially +beneficiate +beneficiated +beneficing +benefield +benefit +benefitcost +benefited +benefiter +benefiting +benefits +benefitted +benefitting +benehes +beneighbored +beneina +benejaakan +benek +benempt +benempted +beneplacito +beneraf +benes +benesch +benesh +benesho +benet +beneteau +benetlake +benetnasch +benets +benetta +benette +benettle +beneventan +beneventana +benevolence +benevolent +benevolently +benevolist +beneyton +benez +benezett +benfatto +benfer +benfield +benfranklin +beng +benga +bengalese +bengalic +bengaline +bengals +benge +bengebaati +bengell +bengelloun +benggaulu +benggoi +benghazi +bengkareng +bengkayang +bengkulu +benglia +benglong +bengo +bengoi +bengola +bengsch +bengston +bengt +bengtson +benguela +benguella +benguet +benguiat +benhadad +benhail +benham +benhanan +benharrison +benhur +beni +beniaamir +beniades +beniamer +beniamino +beniaminov +beniamir +benicia +benicolet +benie +benifits +beniger +benighted +benightedly +benighten +benighter +benightmare +benightment +benign +benignancies +benignancy +benignant +benignantly +benigni +benignities +benignity +benignly +benii +benin +benincasa +beninese +beninger +benintogo +beninu +benish +benison +benisons +benita +benitez +benito +benitoite +benj +benjamin +benjamina +benjaminite +benjamite +benjamites +benjatikul +benjawan +benjes +benji +benjie +benjina +benjy +benkelman +benkhoff +benko +benkoela +benkonjo +benkulan +benkulen +benkulu +benld +benlomond +benmayer +benmost +benn +bennatt +benne +bennefeld +bennel +bennell +bennent +benner +bennesa +bennet +bennets +bennett +bennettites +bennetweed +benni +bennie +bennies +benning +bennings +bennison +benno +benny +beno +benoetigt +benoit +benoite +benolin +benoni +benorth +benote +benoue +benrud +bens +bensalem +bensasson +benschen +benschop +bensel +bensen +bensenville +bensh +benshea +benshee +benshi +benshie +bensid +bensinger +benski +benskin +bensmiller +benson +bensrun +bensun +bent +bentang +bente +bentenan +benter +bentgrass +benthal +benthamic +benthamism +benthamite +benthem +benthin +benthon +benthonic +benthos +bentian +bentincks +bentiness +benting +bentivoglio +bentler +bentley +bentleyville +bently +bentmountain +bento +bentoeni +benton +bentoncity +bentong +bentonharbor +bentonia +bentonite +bentonitic +bentonridge +bentonville +bentree +bents +bentsen +bentstar +bentuni +bentwaters +bentwood +bentwoods +benty +bentzen +benu +benua +benucci +benue +benuecongo +benuecpngo +benueplateau +benumb +benumbed +benumbedness +benumbing +benumbingly +benumbment +benumbs +benut +benutzer +benutzung +benvenutti +benvolio +benward +benweed +benwell +benwheeler +benwood +benyadu +benyaklef +benyamini +benyi +benyon +benz +benza +benzacridine +benzal +benzalazine +benzalcohol +benzaldehyde +benzaldoxime +benzali +benzamide +benzamido +benzamine +benzaminic +benzamino +benzan +benzanalgen +benzanilide +benzanthrone +benzazide +benzazimide +benzazine +benzazole +benzdiazine +benzdifuran +benzecri +benzein +benzenes +benzenoid +benzenyl +benzhydrol +benzick +benzidine +benzidino +benzie +benzil +benzilic +benzin +benzinduline +benzine +benzines +benzini +benzion +benzo +benzoate +benzoated +benzoates +benzoazurine +benzobis +benzocaine +benzodiazine +benzodiazole +benzoflavine +benzofulvene +benzofuran +benzofuryl +benzoheth +benzohydrol +benzoic +benzoid +benzoin +benzoinated +benzoins +benzol +benzolate +benzole +benzolize +benzonia +benzonitrile +benzonitrol +benzophenol +benzophenone +benzopyran +benzopyranyl +benzoquinone +benzotoluide +benzoxate +benzoxy +benzoyl +benzoylate +benzoylation +benzpinacone +benzthiophen +benzyl +benzylamine +benzylic +benzylidene +beode +beoetigt +beograd +beon +beor +beorn +beornings +beothuk +beothukan +beoumi +beowawe +beowulf +bepaid +bepaint +bepale +bepaper +beparch +beparody +beparse +bepart +bepaste +bepastured +bepat +bepatched +bepaw +bepearl +bepelt +bepen +bepepper +beperiwigged +bepester +bepewed +bephilter +bephrase +bepicture +bepiece +bepierce +bepile +bepill +bepillared +bepimple +bepinch +bepistoled +bepity +beplague +beplaided +beplumed +bepommel +bepour +bepowder +beppe +beppi +beppie +beppo +bepraise +bepraisement +bepraiser +beprank +bepray +bepreach +bepress +bepretty +bepride +beproductive +beprose +bepuddle +bepuff +bepun +bepurple +bepuzzle +bepuzzlement +beql +beqlu +beqrel +bequalm +bequeathable +bequeathal +bequeathed +bequeather +bequeathing +bequeathment +bequeaths +bequest +bequests +bequirtle +bequote +beqz +bera +beraber +beracha +berachah +berachiah +berad +beradino +beragon +beraiah +berain +berairou +berakah +berake +berakoth +beran +beranek +berang +beranger +berangere +berapt +berar +berardino +berari +berascal +berat +berated +berates +berating +berattle +berau +beraunite +beraur +berawan +beray +berba +berbamine +berbee +berber +berbera +berberi +berberian +berbericia +berberid +berberine +berberis +berberry +berbers +berbice +berblinger +bercek +berceuse +berceuses +berchemia +berchot +berchta +berchtold +berclair +bercovi +bercovici +bercy +berd +berdache +berdama +berdine +berdoff +bere +berea +berean +bereason +bereave +bereaved +bereavement +bereavements +bereaven +bereaver +bereavers +bereaves +bereaveth +bereaving +bereby +berechiah +berechnung +berechungen +bered +beregi +beregond +bereho +berehof +bereina +berek +berel +berembun +beren +berenbach +berend +berendeya +berengaria +berengarian +berengelite +berenger +berenice +berenike +berens +berenson +berent +berepo +bereshith +beresite +beresnikow +berest +beret +berets +beretta +berettas +bereuter +berewick +bereya +bereza +berezovo +berezovsky +berferd +berga +bergado +bergalith +bergama +bergamasco +bergamask +bergamiol +bergamo +bergamots +bergan +bergander +bergaptene +bergdamara +berge +bergen +bergenfield +berger +bergerac +bergere +bergeron +bergers +berges +bergese +bergeson +berget +bergfeld +berggren +bergh +berghaan +berghe +berghof +bergholz +bergil +bergin +berginize +bergish +bergit +bergitta +bergius +bergland +berglet +bergman +bergmann +bergmannpohl +bergmans +bergmar +bergner +bergoo +bergot +bergquam +bergquist +bergs +bergschrund +bergsma +bergsonian +bergsonism +bergsten +bergstrm +bergstroem +bergstrom +bergton +bergut +bergwall +bergwerff +bergy +bergylt +berhane +berhaus +berhyme +berhymed +berhymes +beri +beriaa +beriah +beriault +beribanded +beribboned +beriberic +beriberis +berick +beride +berigora +beriites +berik +berin +bering +beringed +beringer +beringite +beringleted +beringov +berinse +berites +berith +beriya +berjaya +berk +berka +berke +berkel +berkeleian +berkeley +berkeleyism +berkeleyite +berkely +berkes +berkey +berkhart +berkley +berkliks +berklix +berkner +berkoff +berkovets +berkow +berkson +berksons +berktay +berky +berlandson +berle +berlean +berleand +berley +berlin +berlincenter +berline +berliner +berliners +berlinese +berling +berlinger +berlingheri +berlingot +berlinite +berlinize +berlins +berlinski +berlinsky +berlinwall +berlios +berloque +berm +berman +berme +bermejo +bermel +bermingham +berms +bermuda +bermudez +bermudian +bermudians +bermudite +bern +berna +bernaard +bernabe +bernadene +bernadette +bernadina +bernadine +bernaido +bernaise +bernajoux +bernalillo +bernall +bernard +bernarde +bernardi +bernardina +bernardine +bernardo +bernardston +bernart +bernasconi +bernath +bernay +bernbeil +berncestre +bernd +berndle +berndt +bernecestre +berneche +bernelle +berner +bernerd +bernernabe +bernes +bernesdell +bernese +berneta +bernete +bernetta +bernette +bernhard +bernhardsbay +bernhardt +bernhardy +bernheim +bernholtz +berni +bernice +bernicia +bernick +bernicle +bernie +bernier +berninesque +berning +bernini +bernita +bernle +bernly +bernofsky +bernosky +bernoulli +bernoullian +bernoullis +berns +bernsen +bernshtam +bernstein +bernt +bernville +berny +bero +berobed +beroe +beroida +beroidae +berolina +beroll +berom +berommigili +beronk +berossos +berothah +berothai +berothite +berouged +beroun +beround +berova +berpe +berquist +berr +berrell +berrendo +berrera +berresford +berret +berrettas +berretty +berreyesa +berri +berriam +berrichi +berrichon +berridge +berrie +berried +berrier +berries +berrigan +berrik +berrin +berringen +berrington +berrios +berrisford +berro +berrugate +berrutti +berry +berrybush +berrycreek +berryesseen +berryhill +berrying +berryless +berrylike +berryman +berrypicker +berrypicking +berrysburg +berryton +berryville +berrywhiff +bersabee +bersagliere +bersatu +berseem +berserker +berserking +berserks +bersiamite +bersil +berson +bersonin +bert +berta +bertalan +bertani +bertat +berte +berteau +bertenshaw +berteroa +bertha +berthage +berthalet +berthas +berthe +bertheau +berthed +berthelet +bertheloot +berthelot +berthels +berther +berthier +berthierite +berthing +bertho +berthoin +berthold +bertholda +bertholletia +bertholt +berthoud +berths +berti +bertie +bertier +bertignoll +bertil +bertin +bertina +bertinck +bertine +bertini +bertino +bertish +bertley +berto +bertoldo +bertolini +bertolonia +berton +bertone +bertoni +bertoua +bertram +bertran +bertrand +bertrande +bertrandite +bertril +bertrum +berty +beru +berube +beruffed +beruffled +beruit +berum +berumbita +berust +beruthiel +berval +bervie +bervil +berwick +berwin +berwind +berwyn +bery +berycid +berycidae +beryciform +berycine +berycoid +berycoidea +berycoidean +berycoidei +berycomorphi +beryl +berylate +beryle +beryline +beryllia +berylline +berylliosis +berylloid +beryllonate +beryllonite +beryllosis +beryls +berylune +berytidae +beryx +berzelianite +berzeliite +berzerkeley +besa +besagne +besai +besaiel +besaint +besali +besame +besan +besanctify +besant +besar +besauce +besaya +besbas +bescab +bescarf +bescatter +bescent +besch +beschleunigt +beschreibung +bescorch +bescorn +bescoundrel +bescour +bescourge +bescramble +bescrape +bescratch +bescrawl +bescreen +bescribble +bescurf +bescurvy +bescutcheon +beseam +besee +beseech +beseeched +beseecher +beseechers +beseeches +beseeching +beseechingly +beseechment +beseem +beseemed +beseeming +beseemingly +beseemliness +beseemly +beseems +beseen +beseitigt +besema +besemah +besemme +besena +besenona +besep +beserk +beset +besetment +besets +besetter +besetters +besh +besha +beshackle +beshada +beshade +beshadow +beshag +beshai +beshake +besham +beshame +besharah +beshawled +beshear +beshell +besheshler +beshield +beshine +beshir +beshiver +beshlik +beshod +beshout +beshow +beshower +beshrew +beshrewed +beshrews +beshriek +beshrivel +beshroud +besi +besiclometer +beside +besides +besiege +besieged +besiegement +besieger +besiegers +besieges +besieging +besiegingly +besigh +besilver +besin +besing +besique +besiren +besisi +besit +beslab +beslap +beslash +beslave +beslaver +besleeve +beslenei +beslenej +besleri +beslime +beslimer +beslings +beslipper +beslobber +beslow +beslubber +beslur +beslushed +besme +besmear +besmeared +besmearer +besmearing +besmears +besmell +besmile +besmirched +besmircher +besmirchers +besmirches +besmirching +besmirchment +besmoke +besmooth +besmother +besmouch +besmudge +besmut +besmutch +besmuts +besnadene +besnare +besneer +besnehard +besnier +besnivel +besnow +besnows +besnuff +besoa +besodden +besodeiah +besogne +besognier +besoil +besoiu +besom +besomer +besoms +besonders +besonnet +besoot +besoothe +besoothement +besor +besot +besotment +besots +besottedly +besottedness +besotter +besotting +besottingly +besought +besoul +besour +besozzi +bespake +bespangle +bespangled +bespangles +bespangling +bespate +bespatter +bespattered +bespatterer +bespattering +bespatters +bespawl +bespc +bespeakable +bespeaker +bespeaking +bespeaks +bespecked +bespeckle +besped +bespeech +bespeed +bespell +bespelled +bespend +bespete +bespew +bespice +bespill +bespin +bespirit +bespit +besplash +besplatnie +besplatno +besplatter +besplit +bespoken +bespot +bespouse +bespout +bespray +bespread +bespreading +bespreads +besprent +besprinkle +besprinkled +besprinkler +besprinkles +besprinkling +bespurred +besputter +bespy +besqueeze +besquib +besra +bess +bessarabia +bessarabian +besse +bessel +besselian +bessell +besselman +bessemer +bessemercity +bessemerize +bessenyei +bessera +besserer +bessette +bessey +bessi +bessie +bessler +bessmertnova +bessmertnykh +bessner +bessoiu +besson +bessong +bessongabang +bessuille +bessy +best +bestab +bestain +bestamp +bestar +bestare +bestarve +bestatued +bestavros +bestay +bestayed +bestcrypt +bestcryptnp +beste +bestead +bested +besteer +bestehend +besten +bestench +bester +bestest +bestialism +bestialist +bestialities +bestiality +bestialize +bestialized +bestializes +bestializing +bestially +bestiarian +bestiaries +bestiary +bestick +bestill +bestimmten +besting +bestink +bestir +bestirred +bestirs +bestknown +bestness +bestock +bestore +bestorm +bestove +bestow +bestowable +bestowage +bestowals +bestowed +bestower +bestowing +bestowment +bestows +bestraddle +bestrafe +bestram +bestrapped +bestraught +bestraw +bestreak +bestream +bestrew +bestrewed +bestrewing +bestrewment +bestrewn +bestrews +bestridden +bestride +bestrides +bestriding +bestripe +bestrode +bests +bestsellers +bestubbled +bestuck +bestud +besugar +besuit +besully +beswarm +besweatered +besweeten +beswelter +beswick +beswim +beswinge +beswitch +beta +betabinomial +betacism +betacismus +betaf +betafite +betag +betah +betail +betailor +betaine +betainogen +betake +betaken +betakes +betaking +betalk +betallow +betangle +betanglement +betareoya +betas +betask +betassel +betatest +betatrons +betattered +betau +betawi +betaxed +betaya +betazed +betazoid +betcha +betchamup +betcher +bete +betear +betebendi +beteela +beteem +betef +betel +betelnut +betelnuts +betels +beten +beter +betes +beth +bethabara +bethalto +bethanath +bethania +bethanien +bethankit +bethanna +bethanne +bethanoth +bethany +bethanybeach +betharabah +betharam +betharbel +bethaven +bethayres +bethazmaveth +bethbaalmeon +bethbarah +bethbirei +bethcar +bethdagon +bethe +bethel +bethelezi +bethelisland +bethelite +bethelks +bethelpark +bethelridge +bethels +bethemek +bethen +bethena +bether +bethera +bethesda +bethezel +bethflower +bethgader +bethgamul +bethgea +bethhaccerem +bethharan +bethhogla +bethhoglah +bethhoron +bethina +bethink +bethinking +bethinks +bethjesimoth +bethke +bethlebaoth +bethlehem +bethlehemite +bethmaachah +bethmeon +bethnal +bethnimrah +bethpage +bethpalet +bethpazzez +bethpeor +bethphage +bethphelet +bethrall +bethrapha +bethreaten +bethrehob +bethroot +beths +bethsaida +bethshan +bethshean +bethshemesh +bethshemite +bethshittah +bethtappuah +bethuel +bethul +bethulia +bethumb +bethump +bethunder +bethune +bethwack +bethylidae +bethzur +beti +betibe +betided +betides +betiding +betimber +betime +betimes +betinascript +betinge +betio +betipple +betire +betis +betise +betisek +betitle +beto +betoambari +betocsin +betoil +betokened +betokener +betokening +betokens +beton +betone +betongue +betonica +betonies +betonim +betook +betor +betorcin +betorcinol +betoss +betowel +betowered +betoya +betoyan +betrace +betrail +betrample +betrap +betravel +betray +betrayal +betrayals +betrayed +betrayer +betrayers +betrayest +betrayeth +betraying +betrayment +betrays +betread +betreff +betrend +betrim +betrinket +betrix +betroth +betrothal +betrothals +betrothed +betrothing +betrothment +betroths +betrough +betrousered +betrumpet +betrunk +bets +betschart +betsey +betsie +betsileo +betsileos +betsill +betsimaraka +betsinga +betso +betsy +betsylayne +bett +betta +bettadapur +bettas +bette +betteann +betteanne +bettebende +betted +betteley +bettelheim +betten +bettendorf +bettenhouser +better +bettered +betterer +bettergates +betteridge +bettering +betterley +betterly +betterman +betterment +betterments +bettermost +betterness +betterread +betters +betterton +bettery +bettger +betti +bettiah +bettie +bettin +bettina +bettine +betting +bettini +bettink +bettino +bettis +bettoja +bettong +bettonga +bettongia +bettors +bettr +betts +bettsville +betty +bettye +betuckered +betul +betula +betulaceae +betulaceous +betulia +betulin +betulinic +betulinol +betulites +beturbaned +betusked +betutor +betutored +betwattled +between +betweenbrain +betweenity +betweenmaid +betweenness +betweens +betweentimes +betwen +betwine +betwit +betwixen +betwixt +betz +betzinga +beudantite +beuhl +beuhler +beuhlmann +beulah +beulaville +beun +beuniformed +beuren +beused +beutel +beutiful +beutin +beva +bevan +bevans +bevatron +bevatrons +beveil +beveled +beveler +bevelers +beveling +bevelled +beveller +bevellers +bevelling +bevelment +bevels +beven +bevenom +bevens +bever +beverage +beverages +beveridge +beverie +beverlee +beverley +beverlie +beverly +beverlyhills +bevers +beverse +bevesseled +bevesselled +beveto +bevier +bevies +bevill +bevillain +bevined +bevington +bevinsville +bevis +bevoiled +bevomit +bevue +bevvy +bevyn +bewail +bewailable +bewailed +bewailer +bewailers +bewaileth +bewailing +bewailingly +bewailment +bewails +bewaitered +bewall +bewani +beware +bewared +bewares +bewaring +bewash +bewaste +bewater +beweary +beween +beweep +beweeper +bewegen +bewelcome +bewelter +bewept +bewes +bewest +bewet +bewhig +bewhiskered +bewhisper +bewhistle +bewhite +bewhiten +bewick +bewidow +bewig +bewigged +bewigs +bewil +bewilder +bewildered +bewilderedly +bewildering +bewilderment +bewilders +bewimple +bewinged +bewinter +bewired +bewitched +bewitcher +bewitchery +bewitches +bewitchful +bewitching +bewitchingly +bewitchment +bewitchments +bewith +bewizard +bewley +bework +beworm +beworn +beworry +beworship +bewrap +bewrathed +bewray +bewrayed +bewrayer +bewrayeth +bewrayingly +bewrayment +bewrays +bewreath +bewreck +bewrite +bexar +bexita +bexley +beydom +beyer +beyidzolo +beyla +beylic +beylical +beymer +beyond +beyondpress +beyonds +beyong +beyrichite +beys +beyship +beytelman +bezai +bezaleel +bezaleelian +bezano +bezanozano +bezanson +bezant +bezantee +bezanty +bezdek +bezdel +bezek +bezels +bezer +bezesteen +bezetta +bezhedukh +bezhenskogo +bezhenzami +bezhenzev +bezheta +bezhita +bezhitin +bezhtagunzib +bezier +bezils +bezique +bezirk +bezirke +beznowski +bezoar +bezoardic +bezonian +bezovec +bezpopovets +bezrabotize +bezshagh +bezsledno +bezuquet +bezyayev +bezzerides +bezzi +bezzle +bezzo +bfbs +bfff +bffff +bfly +bfmi +bfpurge +bgates +bgeq +bgequ +bgeu +bgez +bgezal +bgfax +bghai +bghe +bgsu +bgtr +bgtru +bgtu +bgtz +bhabar +bhabari +bhadauri +bhaderbhai +bhaderwali +bhadi +bhadon +bhadrava +bhadrawahi +bhadri +bhaga +bhagati +bhagavat +bhagavata +bhagvat +bhagwan +bhagwandas +bhaiachari +bhaipei +bhairawa +bhaiyachara +bhakha +bhakta +bhaktas +bhakti +bhaktis +bhal +bhalay +bhalerao +bhalesi +bhalu +bhamani +bhamo +bhandar +bhandara +bhandari +bhang +bhangi +bhangs +bhansali +bhanu +bhaor +bhapkar +bhar +bhara +bharadwa +bharal +bharat +bharata +bharati +bharatiya +bharatpur +bhardwaj +bhargava +bharia +bharmauri +bharuchareid +bhasa +bhasha +bhasin +bhaskar +bhaskara +bhat +bhatbali +bhate +bhateali +bhatia +bhatiali +bhatiari +bhatiyali +bhatkulikar +bhatneri +bhatola +bhatra +bhatri +bhatt +bhattacharya +bhattarai +bhatti +bhattiana +bhattiani +bhattiyali +bhattra +bhattri +bhatyiana +bhava +bhavani +bhawalpuri +bhawnagari +bheer +bheesty +bhele +bheri +bhikku +bhikshu +bhil +bhilala +bhilali +bhilbari +bhilboli +bhili +bhilla +bhilodi +bhilori +bhils +bhim +bhima +bhimchaura +bhina +bhind +bhisti +bhoday +bhogwan +bhoikhasi +bhojapuri +bhojpur +bhojpuri +bhola +bhomiyari +bhonda +bhoo +bhoosa +bhoqpuri +bhoria +bhote +bhotes +bhotia +bhotias +bhotiya +bhottada +bhottara +bhowani +bhoyari +bhoyaroo +bhozpuri +bhramu +bhuani +bhubaliya +bhubhi +bhugelkhud +bhui +bhuinhar +bhuinya +bhuiya +bhuiyali +bhuiyar +bhuksa +bhulia +bhullar +bhumia +bhumibol +bhumij +bhumiya +bhumjiya +bhumtam +bhumtang +bhungi +bhungini +bhungiyas +bhunjia +bhunjiya +bhupendra +bhupesh +bhupinder +bhurhanuddin +bhuria +bhut +bhuta +bhutan +bhutanese +bhutani +bhutatathata +bhutia +bhutto +bhuyan +biabo +biacetyl +biacetylene +biach +biacid +biacromial +biacuminate +biacuru +biada +biadju +biafada +biafar +biafra +biage +biagio +biai +biak +biaka +biake +biakic +biaknumfor +biakpan +biala +bialate +biali +bialis +bialkenius +biallyl +bialveolar +bialy +bialys +bialystock +biami +biamonte +bian +bianca +biancarolli +bianchet +bianchette +bianchetti +bianchi +bianchina +bianchini +bianchite +bianci +biancofiore +biandina +biangai +biangular +biangulate +biangulated +biangulous +biangwala +bianisidine +bianka +biankouma +biannual +biannually +biannulate +biao +biapim +biar +biarchy +biarcuate +biarcuated +biard +biarmia +biaro +biarticular +biarticulate +biaru +biaruwaria +bias +biase +biased +biasedly +biases +biasing +biasness +biassed +biasses +biassing +biasteric +biaswise +biat +biatah +biate +biathlon +biathlons +biatomic +biau +biauricular +biauriculate +biaxal +biaxiality +biaxially +biaxillary +biay +biba +bibabifang +bibacious +bibacity +bibari +bibasa +bibasic +bibation +bibaya +bibbed +bibber +bibberbeigh +bibberies +bibbers +bibbery +bibbie +bibbing +bibbit +bibble +bibblebabble +bibbler +bibbons +bibbs +bibby +bibbye +bibcock +bibelot +bibelots +bibemi +bibeng +bibenzyl +biberkopf +biberman +bibesa +bibi +bibiche +bibinski +bibio +bibionid +bibionidae +bibiri +bibitory +bible +biblegrove +bibles +bibless +biblia +biblic +biblical +biblicality +biblically +biblicism +biblicist +biblicistic +biblicolegal +biblii +bibliiu +bibling +biblioclasm +biblioclast +bibliofilm +bibliog +bibliognost +bibliogony +bibliograph +bibliography +biblioklept +bibliolater +bibliolatry +bibliologist +bibliology +bibliomancy +bibliomane +bibliomania +bibliomaniac +bibliomanian +bibliomanism +bibliomanist +bibliopegic +bibliopegist +bibliopegy +bibliophage +bibliophagic +bibliophile +bibliophiles +bibliophilic +bibliophily +bibliophobia +bibliopolar +bibliopole +bibliopolery +bibliopolic +bibliopolism +bibliopolist +bibliopoly +bibliosoph +bibliotaph +bibliotaphic +bibliothec +bibliotheca +bibliothecal +bibliothetic +bibliotic +bibliotics +bibliotist +biblism +biblist +biblus +bibo +biboki +bibokiinsana +biborate +bibot +bibr +bibracteate +bibrich +bibrownian +bibs +bibselect +bibulosities +bibulosity +bibulous +bibulously +bibulousness +bibulus +bicalcarate +bicameral +bicameralism +bicamerist +bicapitate +bicapsular +bicarb +bicarbonates +bicarbs +bicarbureted +bicarinate +bicarpellary +bicarpellate +bicaudal +bicaudate +bicb +biccica +bice +bicek +bicellular +bicentenary +bicentennial +bicephalic +bicephalous +biceps +bicepses +bicester +bicetyl +bichain +bichelama +bichelamar +bichir +bichish +bichloride +bichlorides +bichona +bichord +bichri +bichromatic +bichromatize +bichrome +bichromic +bichy +biciliate +biciliated +bicipital +bicipitous +bicircular +bicirrose +bick +bickel +bickell +bickered +bickerer +bickerers +bickering +bickern +bickers +bickerton +bickford +bickle +bickleton +bickley +bickmore +bicknell +bicl +biclavate +biclinium +bicol +bicolano +bicoli +bicollateral +bicolligate +bicolor +bicolored +bicolorous +bicolors +bicolour +bicolours +biconcavity +bicondylar +bicone +biconic +biconical +biconically +biconjugate +biconvex +biconvexity +bicorn +bicornate +bicorne +bicorned +bicornes +bicornous +bicornuate +bicornuous +bicornute +bicorporal +bicorporate +bicorporeal +bicostate +bicpsw +bicrenate +bicrescentic +bicriterion +bicrofarad +bicron +bicrural +bicultural +bicursal +bicuspid +bicuspidate +bicuspids +bicw +bicyanide +bicycle +bicycled +bicycler +bicyclers +bicycles +bicyclic +bicycling +bicyclism +bicyclist +bicyclists +bicyclo +biczycki +bida +bidabida +bidabuh +bidactyl +bidactyle +bidactylous +bidar +bidarka +bidart +bidasses +bidau +bidayah +bidayuh +bidcock +bidda +biddableness +biddably +biddance +biddeford +biddelian +bidden +bidder +bidders +biddeth +biddie +biddies +biddiford +bidding +biddings +biddle +biddulphia +biddy +bide +bideau +bidecker +bided +bideford +biden +bidens +bident +bidental +bidentate +bidented +bidential +bider +biders +bides +bidet +bidets +bidetti +bideyat +bideyu +bidget +bidhabidha +bidigitate +biding +bidio +bidiurnal +bidiyo +bidjanga +bidjouki +bidjuki +bidkar +bidlake +bidonde +bidor +bidpai +bidraft +bidri +bids +biduanda +biduous +bidwell +bidyo +bidyogo +bidyola +bieber +bieberite +biebrach +biederhof +biedermann +biedermeier +biegler +biehn +biel +bielan +bielby +bield +bieldy +bielecki +bielejeski +bielenite +bieler +bielid +bielima +bielke +bielorouss +bielorussian +bielska +bielskobiala +biem +biemer +bienayme +bienek +biener +bienert +bienia +bienly +bienness +biennia +biennially +biennials +bienniums +biens +bienveneda +bienvenu +bienville +bier +bierbalk +bierbauer +bierbrier +bierce +bierces +bierebo +bierens +biergarten +bieri +bieria +bierman +biermann +biernacka +biers +biersach +bierstadt +biesbroeck +biesecker +bieszczad +biet +biete +biethnic +bietle +bietseksu +bifacial +bifallen +bifang +bifanged +bifara +bifarious +bifariously +bife +bifer +biferous +biff +biffed +biffer +biffie +biffies +biffin +biffing +biffins +biffle +biffs +biffy +bifid +bifida +bifidate +bifidated +bifidity +bifidly +bifilar +bifilarly +bifistular +biflabellate +biflagellate +biflecnode +biflected +biflex +biflorate +biflorous +bifluoride +bifocals +bifoil +bifold +bifolia +bifoliate +bifoliolate +bifolium +biforked +biform +biformed +biformity +biforous +bifront +bifrontal +bifronted +bifur +bifurcal +bifurcated +bifurcately +bifurcates +bifurcating +bifurcation +bifurcations +bifurcous +biga +bigagli +bigamic +bigamies +bigamist +bigamistic +bigamists +bigamize +bigamized +bigamizing +bigamous +bigamously +bigamy +bigarade +bigarm +bigaroon +bigarreau +bigbar +bigbay +bigbearcity +bigbearlake +bigbeat +bigbee +bigbeevalley +bigbend +bigbird +bigbloom +bigblue +bigboote +bigbox +bigbug +bigburd +bigcabin +bigclifty +bigcreek +bigelow +bigemina +bigeminal +bigeminate +bigeminated +bigeminum +bigendfirst +bigendian +bigener +bigeneric +bigential +bigeye +bigeyes +bigfalls +bigfile +bigflats +bigfolk +bigfoot +bigfork +bigg +bigga +biggah +biggen +bigger +biggers +biggerstaff +biggert +bigges +biggest +biggie +biggies +biggin +bigging +biggings +biggins +biggish +bigglass +biggles +biggonet +biggs +biggsville +biggus +bigguth +biggy +bigha +bighead +bigheaded +bigheads +bighearted +bigheartedly +bighill +bighorn +bighorns +bight +bighted +bights +bigindian +bigisland +biglake +biglandular +biglaurel +biglenoid +bigler +biglerville +bigley +biglot +biglow +bigly +bigmac +bigmouth +bigmouthed +bigmouths +bigname +bignamini +bigness +bignesses +bignonia +bignoniaceae +bignoniad +bignose +bignou +bignuhm +bignum +bignums +bigoakflat +bigola +bigoniac +bigonial +bigorne +bigoted +bigotedly +bigotish +bigotries +bigots +bigotty +bigpine +bigpiney +bigpool +bigprairie +bigrapids +bigras +bigrock +bigroot +bigrun +bigsandy +bigsite +bigsort +bigsounding +bigspring +bigsprings +bigstonecity +bigstonegap +bigsur +bigswoln +bigtext +bigtha +bigthan +bigthana +bigthatch +bigtimber +biguanide +biguttate +biguttulate +bigv +bigvai +bigwells +bigwig +bigwigged +bigwiggery +bigwiggism +bigwigs +biha +bihai +biham +bihamate +bihar +bihari +biharis +bihl +bihor +bihourly +bihydrazine +biilion +biira +biisa +bija +bijace +bijago +bijagos +bijan +bijapuri +bijasal +bijbhasha +bijections +bijectively +bijelic +bijes +bijik +bijim +bijjani +bijman +bijobe +bijogo +bijons +bijori +bijou +bijougot +bijous +bijoutry +bijoux +bijuga +bijugate +bijugular +bijutaril +bikaka +bikaneri +bikaru +bike +biked +bikel +bikele +bikelebikay +bikelebikeng +biken +bikeng +bikenibeu +bikenu +biker +bikers +bikes +bikeway +bikeways +bikh +biki +bikin +biking +bikini +bikinied +bikinis +bikol +bikom +bikov +bikpakpaln +bikram +biksee +biksi +bikuab +bikuap +bikukulla +bikya +bikyek +bila +bilaan +bilabe +bilabials +bilabiate +biladeau +bilakura +bilala +bilalo +bilamellar +bilamellate +bilamellated +bilaminar +bilaminate +bilaminated +bilana +bilanci +bilander +bilanes +bilanski +bilar +bilas +bilaspur +bilaspuri +bilateralism +bilaterality +bilaterally +bilati +bilayn +bilba +bilbao +bilberries +bilberry +bilbie +bilbil +bilbo +bilboes +bilboquet +bilbos +bilbray +bilbrook +bilby +bilch +bilcock +bildad +bildar +bilder +bilderbeck +bilders +bildocker +bildt +bile +bileam +bilecik +bilein +bileki +bilen +bileninya +bilenka +bileno +biles +bilestone +bilet +bilgah +bilgai +bilge +bilged +bilges +bilgier +bilgiest +bilging +bilgy +bilhaf +bilhah +bilhan +bilharzia +bilharzial +bilharzic +bilharziosis +bili +bilianic +biliary +biliate +biliation +biliau +bilic +bilichi +bilicsi +bilicyanin +bilifaction +biliferous +bilification +bilifuscin +bilify +bilihumin +biliman +bilimbi +bilimbing +biliment +bilin +bilinara +bilineate +bilingualism +bilingually +bilinguals +bilinguar +bilinguist +bilinigrin +bilinite +bilio +bilion +biliotti +bilious +biliously +biliousness +biliprasin +bilipurpurin +bilipyrrhin +bilirakis +biliri +bilirubin +bilirubinic +biliteral +biliteralism +bilith +bilithon +bilius +biliverdic +biliverdin +bilixanthin +biljaf +bilked +bilker +bilkers +bilking +bilkire +bilkiri +bilkis +bilks +bill +billa +billable +billabong +billanchi +billard +billate +billback +billbeetle +billbergia +billboards +billbroking +billbug +billcat +billdocker +bille +billed +billee +biller +billeray +billerica +billers +billetdoux +billeted +billeter +billeters +billethead +billeting +billets +billett +billetwood +billety +billfish +billfolds +billgates +billhead +billheading +billheads +billholder +billhook +billhooks +billi +billian +billiard +billiardist +billiardly +billiards +billie +billies +billig +billikin +billina +billing +billingham +billings +billingsgate +billingsley +billington +billintszky +billion +billionaire +billionaires +billionism +billions +billionth +billionths +billis +billitonite +billjim +billman +billn +billon +billot +billoteau +billowed +billowier +billowiest +billowiness +billowing +billows +billowy +billposter +billposting +billquist +bills +billsticker +billsticking +billthecat +billtodd +billy +billyboy +billycan +billycans +billycock +billye +billyer +billyhood +billywix +bilma +bilo +bilobated +bilobe +bilobed +bilobiate +bilobular +bilocation +bilocellate +bilocular +biloculate +biloculina +biloculine +bilodeau +bilophodont +bilos +bilovus +biloxi +bilquis +bilsborough +bilsborrow +bilsh +bilshan +bilskirnir +bilson +bilsted +biltine +bilton +biltong +biltongue +biltum +bilua +biluro +bima +bimaculate +bimaculated +bimah +bimahs +bimal +bimalar +bimana +bimanal +bimane +bimanese +bimanous +bimanual +bimanually +bimarginate +bimarine +bimastic +bimastism +bimastoid +bimasty +bimasumba +bimaxillary +bimaximize +bimbia +bimbil +bimbisara +bimble +bimbo +bimbsumba +bimeby +bimensal +bimester +bimesters +bimestrial +bimetal +bimetalic +bimetallist +bimetallists +bimetals +bimethyls +bimhal +bimillenary +bimillennium +bimin +biminimize +biminis +bimmeler +bimmler +bimoba +bimodality +bimodem +bimonthlies +bimotored +bimotors +bimstein +bimucronate +bimuscular +bina +binadan +binah +binahari +binal +binamarir +binanderan +binandere +binanderean +binanga +binaphthyl +binar +binari +binaries +binarium +binars +binary +binaryfile +binarylog +binaryvortex +binatang +binatangan +binate +binately +bination +binational +binaurally +binauricular +binawa +binbashi +bind +binda +bindable +bindafum +binddibu +bindege +binder +binderies +binders +bindery +bindeth +bindheimite +bindi +binding +bindingly +bindingness +bindings +bindji +bindles +bindlet +bindon +bindoree +binds +bindwarez +bindweb +bindweeds +bindwith +bindwood +bine +binea +binelli +binervate +bines +binet +bineto +binev +bineweed +binewulf +biney +binford +bing +binga +bingaman +bingen +bingenheimer +binger +bingerville +binges +bingey +binggeli +bingham +binghamlake +binghampton +binghamton +binghi +bingkokak +bingley +bingo +bingol +bingos +bingvaxu +bingy +binh +binhex +binhlong +biniaris +biniguni +binina +biniodide +binisaya +binitarian +binja +binjhal +binjhawar +binjhawari +binjhia +binjhwar +binjhwari +binji +bink +binkd +binkley +binkleystyle +binkleyterm +binkmode +binkout +binkoutbound +binkstyle +binky +binli +binman +binna +binnacle +binnacles +binned +binner +binney +binni +binnie +binning +binnington +binnite +binnogue +binns +binnui +binny +bino +binoche +binocle +binocular +binocularity +binocularly +binoculars +binoculate +binodal +binode +binodose +binodous +binokid +binomi +binomial +binomialism +binomially +binomials +binominal +binominated +binominous +binongan +binongko +binonko +binormal +binotic +binotonous +binotti +binous +binoxalate +binoxide +binpatch +bins +binswanger +bint +bintan +bintangor +bintaq +bintauna +bintig +bintle +bints +bintuk +bintukua +bintulu +bintuni +binturong +binuang +binucleate +binucleated +binucleolate +binukau +binukid +binumaria +binumarien +binx +binyeri +binyon +binza +binzabi +binzel +binzuru +bioacoustics +bioactivity +bioassay +bioassayed +bioassays +biobio +bioblast +bioblastic +bioc +biocatalyst +biocellate +biocentric +bioch +biochem +biochemical +biochemics +biochemist +biochemistry +biochemists +biochemy +biochore +biocidal +biocide +biocides +bioclean +bioclimatic +biocoenose +biocoenosis +biocoenotic +biocontrol +biocycle +biocycles +biod +biodegrade +biodegraded +biodegrading +biodynamic +biodynamical +biodynamics +biodyne +bioecologic +bioecologies +bioecologist +bioecology +bioelectric +bioengineers +biofeedback +bioflavonoid +bioforge +biogen +biogenase +biogenesis +biogenesist +biogenetic +biogenetical +biogenetics +biogenic +biogenies +biogenous +biogeny +biogeography +biognosis +biograph +biographee +biographer +biographers +biographic +biographical +biographies +biographist +biographize +biography +bioh +biohazard +bioherm +biokinetics +bioko +biol +biola +biolab +biolek +biolith +biologese +biologic +biological +biologically +biologics +biologies +biologism +biologist +biologists +biologize +biology +biolysis +biolytic +biomagnetic +biomagnetism +biomass +biomasses +biomaterial +biombo +biome +biomechanics +biomed +biomedical +biomedicine +biomes +biometer +biometric +biometrical +biometrician +biometricist +biometrics +biometries +biometry +biomolecular +bion +bionah +biondi +biondie +bionergy +bionet +bionette +bionic +bionics +bionomic +bionomical +bionomically +bionomics +bionomist +bionomy +biont +biop +biophagism +biophagous +biophagy +biophilous +biophore +biophysical +biophysicist +biophysics +biophyte +bioplasm +bioplasmic +bioplast +bioplastic +biopsic +biopsies +biopsychic +biopsychical +bioptic +biopyribole +biorad +bioral +biorbital +biordinal +bioreaction +bioresearch +biorgan +biorhythm +biorhythmic +biorhythms +biorythmic +bios +biosaboteurs +biosatellite +bioscience +biosciences +bioscientist +bioscope +bioscopes +bioscopic +bioscopy +biosdoc +biose +biosensor +biosis +biosocial +biospec +biosphere +biospheres +biospheric +biostatic +biostatical +biostatics +biostatistic +biosterin +biosterol +biosyntheses +biosynthesis +biosynthetic +biosystematy +biot +biotas +biotaxy +biotech +biotechnics +biotelemetry +biotic +biotical +biotically +biotics +biotin +biotins +biotitic +biotome +biotomy +biotope +biotropic +biotu +biotype +biotypes +biotypic +biovax +biovular +biovulate +bioxalate +bioxide +bioxray +bipack +bipaleolate +bipaliidae +bipalium +bipalmate +biparasitic +biparental +biparietal +biparous +biparted +bipartible +bipartient +bipartile +bipartitely +bipartition +biparty +bipaschal +bipectinate +bipectinated +biped +bipedal +bipedality +bipedism +bipeds +bipeltate +bipennate +bipennated +bipenniform +biperforate +bipersonal +bipetalous +biphase +biphasic +biphenol +biphenyl +biphenylene +bipi +bipim +bipinnaria +bipinnate +bipinnated +bipinnately +bipinnatifid +biplab +biplanal +biplanar +biplanes +biplicate +biplicity +biplosion +biplosive +bipod +bipods +bipohl +bipolarity +bipolarize +bipont +bipontine +biporose +biporous +bippo +bippus +bippy +bipragma +biprism +biprong +bipsun +bipunctal +bipunctate +bipunctual +bipupillate +bipyramid +bipyramidal +bipyridine +bipyridyl +biqa +biquadrantal +biquadrate +biquadratic +biquarterly +biquartz +biqueno +biquintile +bira +biraan +biracialism +biradial +biradiate +biradiated +birahui +birahuku +biraidu +birale +biramous +birang +birao +birar +biratak +birational +biratnagar +biraud +biray +birbhum +birch +birchbark +birchc +birchdale +birched +birchen +bircher +birchers +birches +birchfield +birchharbor +birching +birchism +birchleaf +birchman +birchriver +birchrun +birchtree +birchwood +birckstaedt +bird +birdbander +birdbanding +birdbaths +birdberry +birdbrain +birdbrains +birdcage +birdcages +birdcall +birdcalls +birdcatcher +birdcatching +birdcity +birdclapper +birdcraft +birddom +birded +birdeen +birder +birders +birdey +birdeye +birdglue +birdhood +birdhouse +birdhouses +birdie +birdied +birdieing +birdies +birdikin +birding +birdinhand +birdisland +birdland +birdless +birdlet +birdlike +birdlime +birdlimed +birdlimes +birdliming +birdling +birdlore +birdman +birdmen +birdmouthed +birdnest +birdnester +birds +birdsall +birdsboro +birdseeds +birdseye +birdseyes +birdslanding +birdsnest +birdsong +birdstone +birdsville +birdville +birdwatchers +birdweed +birdwell +birdwise +birdwitted +birdwoman +birdy +birefracting +birefraction +birefractive +bireli +birell +bireme +biremes +birendra +biretta +birettas +birganj +birgel +birger +birgid +birgit +birgitta +birgitte +birguid +birgunj +birgus +birhar +birhor +birhore +biri +biriba +birifo +birifor +birijia +birim +birimose +birir +biritai +biriwa +birk +birked +birkel +birken +birkenhead +birkenia +birkeniidae +birkenmier +birkenshaw +birkenstocks +birkes +birkett +birkhead +birkhs +birkie +birkin +birkit +birkmire +birkremite +birks +birkut +birkwood +birl +birle +birler +birley +birlie +birlieman +birling +birlinn +birma +birmingham +birmun +birn +birnam +birnamwood +birnbaum +birney +birni +birnin +birnley +birnseth +birny +biro +biroff +birom +birome +birommigili +biron +birostrate +birostrated +birotation +birotatory +birqed +birr +birrell +birretta +birrettas +birriel +birsa +birse +birsha +birsky +birsle +birster +birsy +birt +birtch +birten +birth +birthbed +birthdate +birthday +birthdays +birthdeath +birthe +birthed +birthing +birthland +birthless +birthmark +birthmarks +birthmate +birthnet +birthnight +birthplaces +birthrate +birthrates +birthright +birthrights +birthroot +births +birthstone +birthstones +birthstool +birththroe +birthweight +birthwort +birthy +birthyear +birwa +biryukov +birzavith +bisa +bisaa +bisabol +bisaccate +bisacco +bisacromial +bisaia +bisalamba +bisalt +bisaltae +bisam +bisantler +bisariab +bisarin +bisaxillary +bisaya +bisayah +bisayan +bisb +bisbee +bisbeeite +biscacha +biscanism +biscay +biscayan +biscayanism +biscayen +biscayner +bisch +bische +bischoff +bischofite +biscoe +biscotin +biscuiting +biscuitlike +biscuitmaker +biscuitroot +biscuitry +biscuits +bisdiapason +bise +bisected +bisecting +bisection +bisectional +bisections +bisector +bisectors +bisectrices +bisectrix +bisects +bisegment +biseni +biseptate +bisera +biseri +biserial +biserially +biseriate +biseriately +biserrate +bisetose +bisetous +bisexed +bisext +bisexualism +bisexuality +bisexually +bisexuals +bisexuous +bisha +bishareen +bishari +bisharin +bishiri +bishkek +bishlam +bishnupuriya +bishop +bishopdom +bishoped +bishopess +bishopful +bishophill +bishophood +bishoping +bishopless +bishoplet +bishoplike +bishopling +bishoprick +bishoprics +bishops +bishopshead +bishopship +bishopville +bishopweed +bishu +bishuo +bishwa +bisi +bisiliac +bisilicate +bisiliquous +bisimine +bisingai +bisinuate +bisinuation +bisio +bisis +bisischiadic +bisischiatic +bisiwo +biskay +biskra +bisl +bislama +bisley +bisligmati +bislings +bismam +bismar +bismarck +bismarckian +bismarine +bismark +bismerpund +bismillah +bismite +bismosol +bismuthal +bismuthate +bismuthic +bismuthide +bismuthine +bismuthinite +bismuthite +bismuthous +bismuths +bismuthyl +bismutite +bisnaga +bisoft +bisoglio +bison +bisonant +bisong +bisons +bisontine +bisoo +bisorio +bispectra +bisphenoid +bispinose +bispinous +bispore +bisporous +bispsw +bisques +bisquette +bisquit +biss +bissa +bissao +bissau +bissaula +bissegger +bissel +bissell +bisset +bissett +bissette +bissext +bissextile +bissinger +bisso +bisson +bissonette +bissonnette +bista +bistephanic +bister +bistered +bistetrazole +bisti +bistipular +bistipulate +bistipuled +bistort +bistorta +bistournage +bistoury +bistratal +bistratose +bistriate +bistriazole +bistro +bistros +bisu +bisulcate +bisulcated +bisulcous +bisulfate +bisulfid +bisulfide +bisulfite +bisulphate +bisulphide +bisulphite +bisvas +bisw +biswajit +biswanger +bisyllabic +bisyllabism +bisymmetric +bisymmetry +bisync +bisystemmenu +bitaapul +bitable +bitama +bitand +bitangent +bitangential +bitanhol +bitara +bitare +bitartrate +bitb +bitbashing +bitblit +bitblt +bitbrace +bitbtn +bitburg +bitcat +bitch +bitched +bitchery +bitches +bitchier +bitchiest +bitchily +bitchiness +bitching +bitchy +bite +biteable +bited +bitee +bitely +bitemporal +biter +biternate +biternately +biters +bites +bitesheep +biteth +bitewing +bitfield +bitfields +bitftp +bitheism +bithia +bithiah +bithorpe +bithron +bithynia +bithynian +biti +bitieku +biting +bitingly +bitingness +bitis +bitjoli +bitka +bitl +bitless +bitlevel +bitlis +bitm +bitmap +bitmapped +bitmaps +bitmask +bitnet +bitnic +bito +bitola +bitolyl +bitonality +bitonga +bitor +bitpaired +bitplayer +bitreadle +bitripartite +bitriseptate +bitrus +bits +bitskei +bitstock +bitstone +bitsurfr +bitsy +bitte +bitted +bitten +bittenbender +bitter +bitterbark +bitterblain +bitterbloom +bitterbur +bitterbush +bittercreek +bittered +bitterer +bitterest +bitterful +bitterhead +bittering +bitterish +bitterless +bitterling +bitterly +bitterman +bittern +bitterness +bitterns +bitters +bitterstix +bittersweet +bittersweets +bitterweed +bitterwood +bitterworm +bitterwort +bitthead +bittie +bittier +bittiest +bitting +bittinger +bittium +bittman +bittock +bitton +bitts +bittsy +bitty +bitubercular +bitulithic +bitume +bitumed +bitumens +bituminate +bituminize +bituminoid +bitw +bitwi +bitwide +bitwise +bitxor +bityite +bitypic +biuamndara +biuchet +biulo +biumandara +biune +biunial +biunity +biunivocal +biurate +biurea +biuret +bivalence +bivalencies +bivalency +bivalent +bivalved +bivalves +bivalvia +bivalvian +bivalvous +bivalvular +bivar +bivariant +bivascular +bivaulted +bivector +bivens +biventer +biventral +biverbal +bivins +bivinyl +bivious +bivittate +bivocal +bivocalized +bivoltine +bivoluminous +bivouaced +bivouacked +bivouacking +bivouacks +bivouacs +biwa +biwabik +biwangan +biwat +biweeklies +biweekly +biweight +biwinter +bixa +bixaceae +bixaceous +bixby +bixbyite +bixdos +bixie +bixin +bixley +biya +biyali +biyan +biyani +biyearly +biyo +biyobe +biyom +biyori +biyu +bizalala +bizardite +bizarre +bizarrely +bizarreness +bizarrerie +bizarres +bizen +bizerte +bizet +bizga +bizjothjah +bizonal +bizone +bizones +bizonia +biztha +bizwiz +bizygomatic +bizyo +bizz +bjarne +bjelic +bjerb +bjerg +bjeri +bjoerk +bjoern +bjoernstad +bjork +bjorker +bjorklund +bjorn +bjorne +bjornoya +bjornson +bjornstad +bjornstam +bjornstrand +bkcancel +bkgr +bkignore +bkok +blaa +blaan +blaauw +blab +blabbed +blabber +blabbered +blabberer +blabbering +blabbermouth +blabbers +blabbing +blabby +blablanga +blabs +blacaman +blachly +blachong +black +blackacre +blackamon +blackamoor +blackamoors +blackard +blackback +blackballed +blackballer +blackballing +blackballs +blackband +blackbeard +blackbelly +blackberries +blackbine +blackbird +blackbirder +blackbirding +blackbirds +blackboard +blackboards +blackbourne +blackbox +blackboy +blackbreast +blackbrowed +blackburn +blackbush +blackbutt +blackcap +blackcaptain +blackcoat +blackcock +blackcreek +blackdamp +blackdiamond +blackduck +blackearth +blacked +blackedged +blackened +blackener +blackeners +blackeney +blackening +blackens +blacker +blackest +blacketeer +blackey +blackeyes +blackface +blackfellow +blackfellows +blackfin +blackfire +blackfish +blackfisher +blackfishing +blackfoot +blackford +blackfriars +blackgate +blackguard +blackguardly +blackguardry +blackguards +blackhander +blackhat +blackhawk +blackhead +blackheads +blackheart +blackhearted +blackie +blackindian +blacking +blackings +blackish +blackishly +blackishness +blackit +blackjack +blackjacked +blackjacking +blackjacks +blackland +blackleg +blackleggery +blacklegism +blacklegs +blackletter +blackley +blacklick +blacklight +blacklist +blacklisted +blacklisting +blacklists +blacklock +blackly +blackmail +blackmailed +blackmailer +blackmailers +blackmailing +blackmails +blackman +blackmarket +blackmeer +blackmer +blackmon +blackmore +blackneb +blackneck +blackness +blacknob +blackoak +blackonblack +blackones +blackongreen +blackout +blackouts +blackpit +blackpoll +blackpool +blackpowder +blackquarter +blackrider +blackridge +blackriver +blackrock +blackroot +blacks +blacksburg +blackseed +blackshaw +blackshear +blackshire +blackshirted +blacksmith +blacksmiths +blacksnake +blackstick +blackstock +blackstone +blackstorms +blackstrap +blacksville +blacktail +blackthorn +blackthorne +blackthorns +blackton +blacktongue +blacktop +blacktopped +blacktopping +blacktops +blacktree +blacktron +blackville +blackwash +blackwasher +blackwater +blackwelder +blackwell +blackwidow +blackwood +blackwork +blackwort +blacky +blad +bladder +bladderet +bladderless +bladderlike +bladdernose +bladderpod +bladders +bladderseed +bladderweed +bladdery +blade +bladebone +bladed +bladeenc +bladelet +bladelike +bladen +bladenboro +bladensburg +bladepro +blader +bladerunner +blades +bladesmith +bladeu +bladewise +bladh +blading +bladish +bladon +blady +bladygrass +blae +blaeberry +blaeness +blaewort +blaff +blaffert +blaflum +blagar +blagburn +blagdon +blago +blague +blah +blahdeblah +blahlaut +blahs +blaiklock +blain +blaine +blainehill +blains +blair +blaire +blairmorite +blairs +blairsburg +blairsden +blairsmills +blairstown +blairsville +blais +blaisdell +blaise +blajevich +blake +blakeberyed +blakeford +blakelee +blakeley +blakely +blakeman +blakemore +blakeney +blakes +blakesburg +blakeslee +blakeworth +blakey +blakiston +blakkolb +blakley +blalock +blalu +blamable +blamableness +blamably +blame +blameable +blamed +blameful +blamefully +blamefulness +blameless +blamelessly +blamer +blamers +blames +blaming +blamingly +blan +blanc +blanca +blancard +blancas +blancbec +blance +blanch +blancha +blanchar +blanchard +blanche +blanched +blancher +blanchers +blanches +blanchester +blanchet +blanchette +blanching +blanchingly +blanchon +blanchot +blancmange +blancmanger +blancmanges +blanco +blancs +bland +blanda +blandburg +blander +blandest +blandford +blandfordia +blandick +blandiment +blandine +blanding +blandings +blandished +blandisher +blandishers +blandishes +blandishing +blandishment +blandly +blandness +blandon +blandville +blandy +blane +blaney +blanford +blang +blanguernon +blanguita +blank +blanka +blankard +blankbook +blanke +blanked +blankeel +blankenship +blanker +blankerscoon +blankes +blankest +blanket +blanketed +blanketeer +blanketer +blanketers +blanketing +blanketless +blanketmaker +blanketrope +blanketry +blankets +blanketweed +blankety +blanking +blankish +blankit +blankite +blanklines +blankly +blankness +blanks +blankspace +blanky +blann +blanque +blanquillo +blanton +blantyre +blao +blared +blares +blarina +blaring +blarney +blarneyed +blarneyer +blarneying +blarneys +blarnid +blarny +blart +blas +blaschuk +blasco +blasdell +blase +blaser +blasetti +blash +blashfield +blashy +blashyrkh +blasi +blasia +blasing +blasko +blaspheme +blasphemed +blasphemer +blasphemers +blasphemes +blasphemest +blasphemeth +blasphemies +blaspheming +blasphemous +blasphemy +blass +blast +blasta +blasted +blastema +blastemal +blastematic +blastemic +blaster +blasters +blastful +blasthole +blastid +blastie +blastier +blasting +blastings +blastment +blastocheme +blastochyle +blastocoele +blastocolla +blastocyst +blastocyte +blastoderm +blastodermic +blastodisk +blastoff +blastoffs +blastogenic +blastogeny +blastoid +blastoidea +blastoma +blastomata +blastomere +blastomeric +blastomyces +blastomycete +blastophaga +blastophitic +blastophoral +blastophore +blastophoric +blastoporal +blastopore +blastoporic +blastosphere +blastostylar +blastostyle +blastozooid +blastplate +blasts +blastula +blastulae +blastular +blastulation +blastule +blastus +blasty +blaszczak +blat +blatancies +blatancy +blatant +blatantly +blatchley +blate +blately +blateness +blathered +blatherer +blathering +blathers +blatherskite +blatherwick +blathery +blatjang +blats +blatt +blatta +blattariae +blatted +blatter +blatterer +blattering +blatters +blatti +blattid +blattidae +blattiform +blatting +blattodea +blattoid +blattoidea +blatu +blau +blaubok +blauer +blaufus +blaugas +blauvelt +blauwbok +blaver +blavette +blaw +blawenburg +blawnox +blawort +blay +blaylock +blaz +blaze +blazed +blazejewski +blazek +blazer +blazers +blazes +blazhko +blazing +blazingly +blazoned +blazoner +blazoners +blazoning +blazonment +blazonry +blazons +blazy +blbc +blbs +bldfamily +bldg +bldrdoc +bleaberry +bleach +bleachable +bleached +bleacher +bleacherite +bleacherman +bleachers +bleachery +bleaches +bleachfield +bleachground +bleachhouse +bleaching +bleachman +bleachs +bleachworks +bleachyard +bleak +bleaker +bleakest +bleakish +bleakly +bleakness +bleaks +bleaky +blear +bleared +blearedness +bleareye +bleareyed +blearier +bleariest +blearily +bleariness +blearing +blearness +blears +bleary +blearyeye +bleated +bleater +bleaters +bleating +bleatingly +bleatings +bleats +bleaty +bleb +blebby +blech +blecher +blechnoid +blechnum +bleck +bled +bledsoe +blee +bleed +bleeder +bleeders +bleedin +bleeding +bleedings +bleeds +bleekbok +bleep +bleeped +bleeper +bleepers +bleeping +bleeps +bleery +blees +bleeze +bleezy +bleh +bleibig +bleibtreu +bleifer +bleile +blekine +blekinge +blelloch +blellum +blemish +blemished +blemisher +blemishes +blemishing +blemishless +blemishment +blemmyes +blenac +blench +blenched +blencher +blenchers +blenches +blenching +blenchingly +blencoe +blencorn +blend +blendcorn +blende +blended +blender +blenders +blendick +blending +blendor +blends +blendure +blendwater +blenk +blenkarn +blenkensop +blenker +blennemesis +blennenteria +blennies +blenniid +blenniidae +blenniiform +blennioid +blennioidea +blennocele +blennoemesis +blennogenic +blennogenous +blennoid +blennoma +blennoptysis +blennorrhea +blennorrheal +blennorrhoea +blennosis +blennostasis +blennostatic +blennothorax +blennuria +blenny +blensfeld +blent +bleo +blephara +blepharal +blepharedema +blepharism +blepharitic +blepharitis +blepharocera +blepharoncus +blepharostat +blepharotomy +blephillia +bleq +blequ +blereau +blesbok +blesbuck +blesi +blesiki +bless +blessed +blesseder +blessedest +blessedly +blessedness +blesser +blessers +blesses +blessest +blesseth +blessing +blessingly +blessings +blest +blet +bletch +bletcher +bletcherous +blethen +blether +bletheration +blethered +blethers +bletia +bletilla +bleu +bleuer +bleuntzil +blevins +blew +blewits +bleys +blez +blezard +blibe +blichmann +blick +blickey +blida +blidy +blier +bliff +blifil +bligh +blighia +blightbird +blighted +blighter +blighters +blighties +blighting +blightingly +blights +blighty +bliley +blimbing +blimey +blimkie +blimo +blimpish +blimps +blimy +blin +blinco +blind +blindage +blindages +blindball +blinded +blindedly +blinder +blinders +blindest +blindeth +blindeyes +blindfast +blindfish +blindfolded +blindfolder +blindfolding +blindfoldly +blindfolds +blinding +blindingly +blindish +blindless +blindling +blindly +blindman +blindness +blinds +blindspot +blindstory +blindweed +blindworm +blini +blinis +blink +blinkard +blinked +blinker +blinkered +blinkering +blinkers +blinking +blinkingly +blinks +blinky +blinni +blinnie +blinny +blinov +blint +blinter +blintz +blintze +blintzes +blip +blipped +blippers +blipping +blips +bliss +blisse +blisses +blissett +blissfield +blissful +blissfully +blissfulness +blissless +blissom +blissworth +blistered +blistering +blisteringly +blisters +blisterweed +blisterwort +blistery +blit +blite +blithe +blithebread +blitheful +blithefully +blithelike +blithely +blithemeat +blithen +blitheness +blither +blithered +blithering +blithers +blithesome +blithesomely +blithest +bliti +blitish +blitta +blitter +blitum +blitz +blitzbuggy +blitzed +blitzes +blitzing +blitzkrieg +blitzkrieged +blitzkriegs +blivet +blivion +blix +blixen +blizhayshie +blizko +blizok +blizz +blizzard +blizzardly +blizzardous +blizzards +blizzardy +blksize +blnhmcsc +bloated +bloatedness +bloater +bloaters +bloating +bloats +blob +blobbed +blobber +blobbing +blobby +blobs +bloch +block +blockaded +blockader +blockaders +blockades +blockading +blockages +blockbuster +blockbusters +blockbusting +blocked +blocker +blockers +blockhead +blockheaded +blockheadish +blockheadism +blockheads +blockholer +blockhouse +blockhouses +blockier +blockiest +blockiness +blocking +blockish +blockishly +blockishness +blockisland +blocklayer +blocklike +blockmaker +blockmaking +blockman +blockpate +blocks +blocksburg +blockship +blockton +blocky +blocs +blodgett +blodite +bloed +bloedon +bloemfontein +bloemker +bloet +blofeld +blois +blok +bloke +blokes +blolly +blom +blome +blomfield +blomgren +blomich +blomkest +blomquist +blomstrande +blond +blonde +blondell +blondelle +blondeness +blonder +blondes +blondest +blondie +blondine +blondish +blondness +blonds +blondy +blonigan +blonsky +blood +bloodalley +bloodalp +bloodaxe +bloodbath +bloodbeat +bloodberry +bloodbird +bloodcurdler +blooddrop +blooddrops +blooded +bloodedness +bloodfin +bloodfins +bloodflower +bloodgood +bloodguilt +bloodguilty +bloodhound +bloodhounds +bloodhype +bloodied +bloodier +bloodies +bloodiest +bloodily +bloodiness +blooding +bloodings +bloodleaf +bloodless +bloodlessly +bloodletter +bloodletting +bloodlines +bloodmobile +bloodmobiles +bloodmonger +bloodnoun +bloodred +bloodripe +bloodroots +bloods +bloodshedder +bloodshot +bloodshotten +bloodspiller +bloodstained +bloodstains +bloodstanch +bloodstock +bloodstones +bloodstream +bloodstreams +bloodstroke +bloodsuck +bloodsuckas +bloodsucker +bloodsuckers +bloodsucking +bloodtest +bloodthirst +bloodthirsty +bloodweed +bloodwing +bloodwit +bloodwite +bloodwood +bloodwork +bloodworm +bloodwort +bloodworth +bloodworthy +bloody +bloodybones +bloodying +bloodyminded +blooey +bloom +bloomage +bloomburg +bloomcounty +bloomdale +bloomed +bloomer +bloomeria +bloomerism +bloomers +bloomery +bloomfell +bloomier +bloomiest +blooming +bloomingburg +bloomingdale +bloomingglen +bloomingly +bloomingness +bloomingrose +bloomington +bloomkin +bloomless +blooms +bloomsburg +bloomsburian +bloomsbury +bloomsdale +bloomville +bloomy +blooped +blooper +bloopers +blooping +bloops +bloot +blore +blosmy +blossburg +blosse +blossom +blossombill +blossomed +blossomhead +blossoming +blossomless +blossomry +blossoms +blossomtime +blossomy +blossvale +blostein +blot +blotched +blotches +blotchier +blotchiest +blotching +blotchy +blotless +blots +blotted +blotter +blotters +blottesque +blottesquely +blotteth +blottier +blottiest +blotting +blottingly +blotto +blotty +bloubiskop +blouin +bloundo +blouno +blount +blountscreek +blountstown +blountsville +blountville +blouse +bloused +blouses +blousier +blousiest +blousily +blousing +blouson +blousons +blousy +blout +blow +blowball +blowby +blowbys +blowcock +blowdown +blowed +blowen +blowenfusen +blower +blowers +bloweth +blowfish +blowfishes +blowflies +blowfly +blowgun +blowguns +blowhard +blowhards +blowhole +blowholes +blowier +blowiest +blowiness +blowing +blowingrock +blowings +blowiron +blowjob +blowlamp +blowline +blown +blowoff +blowoffs +blowout +blowouts +blowpipe +blowpipes +blowpoint +blowproof +blows +blowsed +blowsier +blowsiest +blowsily +blowspray +blowsy +blowth +blowtorch +blowtorches +blowtube +blowtubes +blowups +blowy +blowze +blowzed +blowzier +blowziest +blowzing +blowzy +bloxom +blss +blssu +blstbbs +bltu +bltz +bltzal +blub +blubbered +blubberer +blubberers +blubbering +blubberingly +blubberman +blubberous +blubbers +blubbery +blucher +bluchers +bludgeoned +bludgeoneer +bludgeoner +bludgeoning +bludgeons +blue +blueball +blueballs +bluebead +bluebeard +bluebeardism +bluebell +bluebelled +bluebells +blueberries +blueberry +bluebills +bluebird +bluebirds +blueblack +blueblaw +blueblazer +blueblood +bluebonnets +bluebooks +bluebottle +bluebottles +bluebox +blueboy +bluebreast +bluebuck +bluebutton +bluecad +bluecap +bluecoat +bluecoats +bluecreek +bluecup +blued +bluediamond +blueearth +blueeye +bluefield +bluefields +bluefin +bluefins +bluefishes +blueford +bluegills +bluegown +bluegreen +bluegrove +bluegum +bluegums +blueh +bluehearted +bluehearts +bluehill +bluehm +bluehole +blueing +blueings +blueish +blueisland +bluejack +bluejackets +bluejay +bluejays +bluejoint +bluelake +blueleg +bluelegs +bluely +bluemont +bluemound +bluemounds +bluemountain +blueness +bluenose +bluenoser +bluenoses +bluepoint +bluepoints +blueprint +blueprinted +blueprinter +blueprinting +blueprints +bluer +bluerapids +blueridge +blueriver +bluerock +blues +bluesh +bluesides +bluesman +bluesmen +bluesprings +bluest +bluestem +bluestone +bluestoner +bluesy +bluethner +bluethroat +bluetongue +bluetop +bluevelvet +bluewater +bluewave +blueweed +bluewing +bluewood +bluey +blueys +bluffable +bluffcity +bluffdale +bluffed +bluffer +bluffers +bluffest +bluffing +bluffly +bluffness +bluffs +bluffsprings +bluffton +bluffy +bluford +bluggy +blugle +bluing +bluings +bluish +bluishness +bluism +blum +blumburtt +blumchen +blume +blumea +blumen +blumenberg +blumenfeld +blumer +blundell +blunder +blunderbuss +blundered +blunderer +blunderers +blunderful +blunderhead +blundering +blunderingly +blunderings +blunders +blundersome +blundt +blundwitted +blunge +blunged +blunger +blungers +blunges +blunging +blunk +blunker +blunks +blunnen +blunt +blunted +bluntended +blunter +bluntest +blunthead +blunthearted +bluntie +blunting +bluntish +bluntly +bluntness +blunts +bluntschli +blup +blupblup +blur +blurb +blurbist +blurbs +blurred +blurredness +blurrer +blurrier +blurriest +blurrily +blurriness +blurring +blurry +blurs +blurted +blurter +blurters +blurting +blurts +blus +bluschke +blush +blushed +blusher +blushers +blushes +blushful +blushfully +blushfulness +blushiness +blushing +blushingly +blushless +blushwort +blushy +blusteration +blustered +blusterer +blusterers +blustering +blusteringly +blusterous +blusterously +blusters +blustery +blut +blutarsky +blutes +bluthal +bluto +bluveny +blvd +blya +blye +blyleven +blympton +blynken +blynn +blype +blyskal +blyss +blystone +blyszczak +blyth +blythe +blythedale +blytheville +blythewood +blythvll +bmdp +bmec +bmers +bmethods +bmoba +bneid +bneq +bnequ +bnez +bngtrf +bnkp +bnldag +bnlvma +bnlx +bnrecad +bnrinfo +bnrlsi +bnrsport +bnrtor +boaco +boad +boadji +boaedon +boagane +boal +boalsburg +boana +boanai +boanaki +boanbura +boanerges +boanergism +boano +boar +boarcite +board +boardable +boardcamp +boarded +boarder +boarders +boarding +boardings +boardlike +boardly +boardman +boardmen +boardnum +boardroom +boards +boardshop +boardwalk +boardwalks +boardy +boarfish +boarhound +boarish +boarishly +boarishness +boarman +boars +boarship +boarskin +boarspear +boarstaff +boarwood +boas +boase +boast +boasted +boaster +boasters +boastest +boasteth +boastful +boastfully +boastfulness +boasting +boastingly +boastings +boastive +boastless +boaston +boasts +boat +boatable +boatage +boatbill +boatbills +boatbuilder +boatbuilding +boated +boatel +boatels +boater +boaters +boatfalls +boatful +boathead +boatheader +boathouses +boatie +boating +boatings +boatkeeper +boatless +boatlike +boatlip +boatloader +boatloading +boatloads +boatly +boatmanship +boatmaster +boatowner +boatright +boats +boatsetter +boatshop +boatside +boatsman +boatsmen +boatswains +boattail +boatward +boatwise +boatwoman +boatwright +boatyards +boaz +boazi +boba +bobac +bobadil +bobadilian +bobadilish +bobadilism +bobadilla +bobangi +bobar +bobasan +bobb +bobba +bobbe +bobbed +bobbee +bobber +bobbers +bobbery +bobbette +bobbi +bobbie +bobbies +bobbiner +bobbinet +bobbinets +bobbing +bobbinite +bobbins +bobbinwork +bobbish +bobbishly +bobbit +bobbitt +bobbled +bobbles +bobbling +bobby +bobbye +bobbysocks +bobbysoxer +bobbysoxers +bobcat +bobcats +bobcoat +bobe +bobea +bobeche +bobek +bobenko +bobette +bobfly +bobierrite +bobili +bobin +bobina +bobine +bobinette +bobization +bobjerom +bobko +bobkov +bobles +bobline +bobo +boboda +bobodiolasso +bobofing +bobolinks +bobonaje +bobonaza +bobone +bobongko +bobos +bobot +bobota +bobotie +bobowski +bobrichuk +bobrinskoy +bobrovnikoff +bobs +bobsled +bobsledded +bobsledder +bobsledders +bobsledding +bobsleds +bobsleigh +bobson +bobstay +bobster +bobtail +bobtailed +bobtailing +bobtails +bobtown +bobu +bobwa +bobwhite +bobwhites +bobwood +boca +bocaccio +bocage +bocagrande +bocal +bocaraton +bocardo +bocas +bocasine +bocca +boccaccio +boccale +boccali +boccardo +boccarella +boccaro +bocce +bocces +bocci +boccie +boccies +bocconia +boce +bocedization +bocek +bocha +boche +bocher +bocheru +boches +bochil +bochim +bochism +bochner +bocialist +bockaj +bockerel +bockeret +bocking +bocklage +bocklin +bockner +bocks +bockstiegel +bocota +bocotia +bocoy +bocservice +bocz +boda +bodach +bodacious +bodaciously +bodalo +bodamere +bodastoret +bodden +boddeveld +boddey +boddy +bodea +boded +bodeen +bodeful +bodega +bodegabay +bodegas +bodement +boden +bodensee +boder +bodes +bodewash +bodfish +bodford +bodga +bodge +bodger +bodgery +bodhi +bodho +bodi +bodic +bodice +bodiced +bodicemaker +bodicemaking +bodices +bodie +bodied +bodier +bodieron +bodies +bodikin +bodil +bodiless +bodilessness +bodiliness +bodily +bodiman +bodimeen +bodiment +bodin +boding +bodingly +bodings +bodish +bodjinga +bodkin +bodkins +bodkinwise +bodle +bodleian +bodnar +bodo +bodock +bodogadaba +bodogaro +bodom +bodonde +bodoni +bodoro +bodrogi +bods +bodskad +boduna +body +bodybending +bodybuilders +bodyfont +bodyguards +bodyhold +bodyhood +bodying +bodylanguage +bodyless +bodymaker +bodymaking +bodyne +bodyplate +bodyrow +bodysurf +bodysurfed +bodysurfs +bodyto +bodyweight +bodywise +bodywood +bodywork +bodyworks +bodzanga +boebera +boecherer +boeck +boecke +boecklein +boedromion +boegineesche +boeginezen +boehlert +boehlke +boehm +boehmenism +boehmenist +boehmenite +boehmeria +boehms +boehner +boehtlink +boeing +boeings +boeke +boekee +boel +boelsen +boelus +boen +boenga +boenner +boensch +boeotarch +boeotic +boer +boerdom +boere +boerhavia +boerje +boern +boerne +boers +boersma +boes +boesen +boesiger +boesinger +boesmanland +boethian +boethusian +boetius +boetoneezen +boettcher +boetticher +boettner +boeuf +boewe +boeyen +boff +boffa +boffey +boffin +boffins +boffo +boffola +boffolas +boffos +boffs +bofile +bofor +bofota +boga +bogadjim +bogaert +bogaia +bogajim +bogal +bogala +bogalusa +bogan +bogana +bogande +bogard +bogarde +bogardus +bogart +bogartis +bogata +bogataya +bogati +bogatirojov +bogatyryov +bogaya +bogberry +bogdan +bogdanov +bogdanovich +bogdanow +bogecn +bogert +bogetti +bogeying +bogeyman +bogeys +boggan +bogganger +boggart +bogged +bogghom +boggia +boggie +boggier +boggiest +boggild +boggin +bogginess +boggio +boggish +bogglebo +boggled +boggler +bogglers +boggles +boggling +boggs +boggstown +bogh +boghole +boghom +boghorom +bogi +bogia +bogie +bogieman +bogier +bogies +bogijiab +bogland +boglander +bogle +bogled +bogledom +bogles +boglet +bogliani +bogman +bogmire +bogo +bogoahlon +bogoda +bogodynamics +bogoliuboy +bogometer +bogomil +bogomile +bogomilian +bogomill +bogomolov +bogon +bogong +bogongo +bogons +bogorad +bogos +bogosian +bogosities +bogosity +bogosort +bogota +bogotified +bogotify +bogra +bogs +bogsucker +bogtrot +bogtrotter +bogtrotting +bogu +bogue +boguechitto +bogued +bogum +bogumil +bogumill +bogun +bogung +boguru +bogus +boguslaw +bogusness +bogway +bogwood +bogwort +bogyanski +bogydom +bogyel +bogyeli +bogyi +bogyism +bogyland +bogyman +bogymen +bogyo +bohaan +bohac +bohairic +bohan +bohanan +bohannon +bohawn +bohdan +bohea +boheme +bohemia +bohemian +bohemianism +bohemians +bohemias +bohemium +bohena +bohereen +bohg +bohgon +bohgos +bohgot +bohireen +bohlen +bohley +bohlin +bohlinia +bohm +bohman +bohmer +bohmia +bohn +bohne +bohnen +bohner +bohnhof +bohnhoff +boho +bohol +boholano +bohom +bohor +bohorquez +bohoyeri +bohrer +bohringer +bohrmann +boht +bohtan +bohte +bohuai +bohunk +bohunks +bohus +bohutu +bohzohtik +boianaki +boiceville +boid +boidae +boies +boigu +boii +boiken +boikin +boiko +boil +boilable +boildown +boileau +boiled +boiler +boilerful +boilerhouse +boilerless +boilermaker +boilermakers +boilermaking +boilerman +boilerplate +boilers +boilersmith +boilerworks +boilery +boiling +boilinglike +boilingly +boilover +boils +boily +boina +boinaki +boinelang +boing +boink +boinkcon +boinkon +boinnard +boirahmadi +bois +boiscuille +boisdarc +boise +boisecity +boisian +boisseau +boisset +boissevain +boisson +boist +boisterous +boisterously +boisvert +boitchoff +boite +boivin +bojan +bojanic +bojanio +bojdecki +boje +bojeck +bojeva +bojie +bojigniji +bojigyab +bojiin +bojite +bojnurd +bojo +bojpoori +boju +boka +bokabo +bokadam +bokai +bokala +bokan +bokanda +bokanovich +bokard +bokari +bokark +bokat +bokchito +boke +bokeelia +bokele +boken +bokeo +bokhan +bokhara +bokharan +bokharic +boki +bokij +bokish +bokito +bokiyim +bokiyo +bokkos +bokmal +boko +bokobaru +bokod +bokoki +bokol +bokom +bokon +bokondini +bokondo +bokonya +bokonzi +bokorike +bokoruge +bokoshe +bokosongho +bokota +bokoy +bokra +boks +boksenberg +boksn +boksol +boku +bokun +bokungu +bokwa +bokwakendem +bokyi +bola +bolaang +bolabakovi +bolag +bolaghain +bolahun +bolam +bolama +bolan +bolanchi +boland +bolander +bolang +bolango +bolano +bolar +bolard +bolas +bolawa +bolboxalis +bolchini +bolckow +bold +bolded +bolden +bolder +bolderian +boldest +boldface +boldfaced +boldfaces +boldfacing +boldhearted +boldine +bolding +boldini +bolditalic +boldly +boldness +boldo +boldoblique +boldrin +boldu +bolduc +boldwood +boleangas +bolection +bolectioned +boled +boleda +bolee +boleian +boleite +bolek +boleka +boleki +bolelia +bolelike +bolen +boleo +boleri +bolero +boleros +boles +boleslawsky +boletaceae +boletaceous +boletangale +bolete +bolewa +boleweed +bolewort +boley +boleyn +boleyu +bolgatanga +bolger +bolgiano +bolgo +bolgos +boli +bolia +bolide +bolides +boligee +bolikhamsai +bolimba +bolin +bolinaise +bolinao +bolinas +boling +bolingbroke +bolinger +bolio +bolis +bolivares +bolivarite +bolivars +boliver +bolivia +bolivian +boliviana +boliviano +bolivianos +bolivians +bolivias +bolk +bolkan +bolken +bolkiah +bolkonsky +boll +bolla +bolland +bollandist +bollard +bollards +bolled +bollen +boller +bolli +bolling +bollinger +bollington +bollix +bollixed +bollixes +bollixing +bollmann +bollobas +bollock +bollocks +bolloxed +bolloxes +bolls +bollworm +bolly +bolm +bolne +bolnes +bolnitsu +bolobo +bologna +bolognan +bolognas +bolognese +bolognesi +bolograph +bolographic +bolography +boloi +boloism +boloki +bolom +boloman +bolometric +bolon +bolondo +boloney +boloneys +bolongan +bolongo +boloroot +bolos +bolotova +bolouri +boloven +bolshe +bolshev +bolsheviki +bolshevikian +bolsheviks +bolshevistic +bolshevists +bolshevize +bolshie +bolshim +bolsinger +bolson +bolster +bolstered +bolsterer +bolsterers +bolstering +bolsters +bolsterwork +bolt +boltage +boltant +boltchak +boltcutter +bolte +bolted +boltel +bolter +bolters +bolthead +boltheader +boltheading +boltheads +bolthole +bolti +bolting +boltless +boltlike +boltmaker +boltmaking +bolton +boltonia +boltonite +boltrope +bolts +boltsmith +boltstrake +boltwork +boltz +boltzmann +bolu +boluch +bolupi +bolus +boluses +bolwar +bolyai +bolyaian +bolzano +bolzon +boma +bomaba +bomali +boman +bomanzoku +bomaram +bomarea +bomasa +bomassa +bomb +bomba +bombable +bombacaceae +bombacaceous +bombadiers +bombadil +bombali +bombarde +bombarded +bombardelle +bombarder +bombardier +bombardiers +bombarding +bombardment +bombardments +bombardon +bombards +bombaro +bombaster +bombastry +bombasts +bombax +bombay +bombazet +bombazine +bombe +bombed +bomber +bomberai +bomberawa +bomberman +bombers +bombes +bombgolf +bombi +bombiccite +bombidae +bombilate +bombilation +bombinae +bombinate +bombination +bombing +bombings +bombload +bombloads +bombo +bomboko +bombola +bomboli +bombolini +bomboma +bombongo +bombonne +bomboret +bombori +bombouaka +bombous +bombs +bombshell +bombshells +bombshelter +bombsight +bombsights +bombtrack +bombulea +bombur +bombus +bomby +bombycid +bombycidae +bombyciform +bombycilla +bombycina +bombycine +bombyliidae +bombyx +bome +bomi +bomjik +bomla +bommakanti +bommer +bommert +bomo +bomokandi +bomole +bomongo +bomont +bomoseen +bomou +bompaka +bompoka +bomposa +bomstein +bomvana +bomwali +bona +bonacelli +bonaci +bonacieux +bonaduce +bonagh +bonaght +bonagura +bonahoi +bonahoom +bonair +bonaire +bonairly +bonairness +bonaiti +bonaje +bonally +bonan +bonang +bonanno +bonanoja +bonanova +bonansea +bonanza +bonanzas +bonapartean +bonapartism +bonapartist +bonaputamopu +bonaqua +bonar +bonardo +bonarini +bonarua +bonasa +bonasera +bonasus +bonaveria +bonavist +bonbo +bonbon +bonbons +boncarbo +bonce +bonchard +boncourt +bond +bonda +bondable +bondage +bondager +bondages +bondar +bondarchuk +bondarenko +bondarev +bonde +bonded +bondei +bondelswarts +bonder +bonderman +bonders +bondevik +bondeya +bondfolk +bondholders +bondholding +bondi +bondia +bonding +bondless +bondmaid +bondmaids +bondman +bondmanship +bondmen +bondo +bondoc +bondonga +bondoporaja +bondoukou +bondoy +bonds +bondservant +bondservice +bondslave +bondstone +bondsville +bondswoman +bonduc +bonduel +bondurant +bondville +bondwoman +bondwomen +bone +boneache +bonebinder +boneblack +bonebone +bonebrake +bonebreaker +boned +bonedog +bonedry +bonefa +bonefish +bonefishes +boneflower +bonegap +bonehead +boneheaded +boneheads +bonek +boneless +bonelessly +bonelessness +bonelet +bonelike +bonelli +bonellia +bonello +boner +bonerate +bonerif +boners +bonerz +bones +boneset +bonesets +bonesetter +bonesetting +boneshaker +boneshaw +bonesteel +bonestell +bonet +bonetail +bonett +bonetti +boneville +bonewood +bonework +bonewort +boney +boneyard +boneyards +bonfain +bonfanti +bonferroni +bonfia +bonfield +bonfire +bonfires +bong +bonga +bongamaise +bongandanga +bonged +bongers +bonggo +bongili +bonging +bongiorno +bongiri +bongkang +bongkeng +bonglong +bonglung +bongo +bongobagirmi +bongobaka +bongoes +bongoist +bongoists +bongomaisi +bongomek +bongongo +bongor +bongos +bongouanou +bongs +bongu +bongula +bongwe +bonham +bonhen +bonheur +bonhomie +bonhomies +bonhomme +boni +boniange +boniata +bonier +boniest +bonifaces +bonifacio +bonifas +bonifay +bonifazi +bonification +boniform +bonify +bonila +bonilla +bonin +boniness +boning +bonini +boninite +bonior +bonita +bonitarian +bonitary +bonitas +bonitoes +bonitos +bonjo +bonjour +bonk +bonke +bonkers +bonkiman +bonking +bonlee +bonmot +bonn +bonnafe +bonnaffe +bonnaire +bonnar +bonnard +bonnaz +bonne +bonneau +bonnebouche +bonnee +bonnefous +bonnefoy +bonnel +bonnell +bonnelli +bonner +bonnerdale +bonnersferry +bonnet +bonneted +bonneter +bonneterre +bonnethead +bonneting +bonnetless +bonnetlike +bonnetman +bonnets +bonnett +bonneville +bonney +bonnheim +bonni +bonnibel +bonnibelle +bonnici +bonnie +bonnier +bonniest +bonnieville +bonnily +bonnin +bonniness +bonnotsmill +bonny +bonnyclabber +bonnyfeather +bonnyish +bonnyman +bonnyvis +bono +bonom +bononia +bononian +bonos +bonotsek +bonoua +bonpart +bons +bonsai +bonsall +bonsdorffia +bonsecour +bonsoir +bonspiel +bonstein +bontawa +bontebok +bontebuck +bontempo +bontequagga +bonthain +bonthe +bontoc +bontok +bonum +bonus +bonuses +bonuspak +bonvallet +bonvoj +bonwier +bonwit +bonxie +bony +bonyadi +bonyfish +bonzer +bonzery +bonzes +bonzian +bonzo +boob +boobe +boobery +boobies +boobily +booboo +boobook +booboos +boobs +boobyalla +boobyish +boobyism +boobytrapped +boocock +bood +boode +boodho +boodie +boodla +boodle +boodled +boodledom +boodleism +boodleize +boodler +boodlers +boodles +boodling +boody +booed +boof +boogaloo +booger +boogers +boogeyman +booggie +boogie +boogies +boogiewoogie +boogying +boogyman +boogymen +boohoo +boohooed +boohooing +boohoos +booing +boojum +boojums +book +bookable +bookbinder +bookbinders +bookbindery +bookbinding +bookboard +bookcase +bookcases +bookcraft +bookdealer +bookdom +booke +booked +bookeeper +bookends +booker +bookers +bookery +bookfold +bookful +bookholder +bookhood +bookies +bookiness +booking +bookings +bookishly +bookishness +bookism +bookkeeper +bookkeepers +bookkeeping +bookkeeps +bookland +bookless +booklets +booklike +bookling +booklists +booklore +booklores +booklover +bookmaker +bookmakers +bookmaking +bookman +bookmanager +bookmark +bookmarker +bookmarks +bookmarx +bookmaster +bookmate +bookmen +bookmobiles +bookmonger +bookplates +bookpress +bookrack +bookracks +bookread +bookrest +bookrests +bookroom +books +bookscan +bookscapes +booksellers +bookselling +bookser +bookshop +bookshops +bookstaber +bookstack +bookstall +bookstand +bookstore +bookstores +bookward +bookwards +bookways +bookwise +bookwork +bookworm +bookworms +bookwright +bool +boole +boolean +booleans +boolell +booli +boolian +booly +boolya +boom +boomable +boomage +boomah +boombe +boomboat +boombox +boomdas +boomed +boomer +boomerang +boomeranged +boomeranging +boomerangs +boomers +boomier +booming +boomingly +boomkin +boomlab +boomless +boomlet +boomorah +booms +boomslang +boomslange +boomsma +boomster +boomtown +boomtowns +boomu +boomy +boon +boondock +boondocks +boondoggle +boondoggled +boondoggler +boondogglers +boondoggles +boondoggling +boone +boonegrove +boonesmill +booneville +boonfellow +boong +boongary +booni +boonies +boonk +boonlai +boonless +boonlom +boonmee +boons +boonsboro +boonscamp +boonstra +boonton +boonville +boonyakart +boonyong +booom +boop +boophilus +boopie +boopis +booran +boorishly +boorishness +boorman +boorne +boors +boorse +boort +boos +boose +boost +boosted +booster +boosterism +boosters +boosting +boosts +boosy +boot +bootable +bootblack +bootblacks +bootboy +bootcon +bootdisk +booted +bootee +bootees +booter +booteries +bootery +bootes +bootful +booth +boothbay +boothe +boother +boothes +boothian +boothite +bootholder +boothose +boothroyd +booths +boothville +boothy +bootid +bootie +bootied +booties +bootikin +booting +bootit +bootjack +bootjacks +bootlace +bootlaces +bootleg +bootleger +bootleggers +bootlegs +bootless +bootlessly +bootlessness +bootlick +bootlicked +bootlicker +bootlickers +bootlicking +bootlicks +bootmaker +bootmaking +bootmanager +bootmenu +bootp +bootparam +bootpd +bootprotect +bootrom +boots +bootstrap +bootstraps +boottape +boottcp +boottime +bootup +booty +bootyless +bootz +booue +boow +booz +boozed +boozer +boozers +boozes +boozier +booziest +boozily +booziness +boozing +boozy +bopchi +bopeep +bopp +boppana +bopped +bopper +boppers +bopping +boppist +bops +bopyrid +bopyridae +bopyridian +bopyrus +boquero +boqueron +boquet +bora +boraan +borable +borabora +borachio +boracic +boraciferous +boracous +borage +borages +boraginaceae +borago +borai +boraie +boraihattam +borak +boral +borali +boralof +boran +borana +boranes +borang +borani +borans +borasca +borasque +borassus +boratang +borated +borates +borathoi +borating +boratto +boratus +boraxes +boray +borb +borbala +borboridae +borborus +borborygmic +borborygmies +borborygmus +borbtns +borcala +borch +borchard +borchers +borchert +borchsenius +borcic +borclay +bord +borda +bordage +bordan +bordar +bordarius +bordas +borde +bordel +bordello +bordellos +bordels +bordenave +bordentown +border +bordereau +bordered +borderer +borderers +borderies +bordering +borderings +borderism +borderlander +borderlands +borderless +borderline +borderlines +bordermark +borders +borderside +borderstyle +bordertown +borderwidth +bordette +bordjbou +bordo +bordon +bordroom +bordulac +bordure +bordured +bordures +borduria +bore +boreable +boread +boreades +boreal +borealis +borean +boreas +borebo +borecole +bored +boredom +boredoms +boree +boreen +boregat +borehole +borei +boreiad +boreism +borek +boreksco +borel +boreland +borele +borell +borelli +boren +borena +boreo +borer +bores +boreslaw +boresome +boretti +boreus +borewar +borg +borgan +borgate +borgato +borgawa +borge +borgeaud +borger +borges +borgh +borghalpenny +borghese +borghesia +borghi +borgia +borgman +borgne +borgnine +borgo +borgou +borgstrom +borgu +borguine +borgum +borguna +borh +borha +bori +borickite +boricua +boride +borier +borin +borine +boring +boringhien +boringly +boringness +borings +borinqueno +borio +borionko +boris +borisav +borisenko +borish +borislav +borism +borisovets +boritsu +bority +borize +borja +borjano +borje +bork +borkan +borklund +borkowicz +borkworth +borland +borlase +borleac +borlehmann +borlin +borman +bormann +born +borna +bornaro +borne +bornean +borneo +borneol +borner +bornes +bornesmann +borngen +bornholm +borning +bornite +bornitic +bornmann +borno +bornouan +bornouans +bornu +bornyl +boro +boroa +boroaboro +borobo +borocaine +borocalcite +borocarbide +borocitrate +borodajluk +borodawa +boroday +borodda +borodenko +borodin +borodins +borodkin +boroff +borofluoric +borofluoride +borofluorin +borogove +borogoves +boroi +borojevic +borok +borolanite +boromeso +boromir +boromo +boroni +boronia +boronic +boronimeche +borons +boronskaja +boropa +borophenol +borophenylic +bororo +bororoan +bororro +boros +borosch +borosh +borosilicic +boroski +borotu +borotungstic +borou +boroughlet +boroughs +boroughship +borov +borowiec +borowiecki +borowitz +borowski +borozny +borpika +borquere +borracha +borrel +borrelia +borrelli +borrelly +borreria +borrero +borrichia +borries +borroloola +borrom +borromean +borromeo +borrovian +borrow +borrowable +borrowed +borrower +borrowers +borroweth +borrowing +borrowings +borrows +bors +borsa +borsari +borsato +borsch +borsche +borscht +borschts +borsholder +borsht +borshts +borski +borsodi +borson +borssen +borst +borstal +borstall +borstals +bort +bortala +bortei +bortenstein +borthwick +borto +bortolin +bortolussi +borts +bortsch +borty +bortz +bortzmeyer +boruca +boruch +borujerd +borum +borumesso +borun +borunca +borunu +borup +boruslawski +borussian +borvitch +borwort +bory +boryl +borza +borzage +borzhunov +borzic +borzicactus +borzine +borzoi +borzois +bosa +bosacker +bosambi +bosanga +bosavi +bosbokrand +bosc +boscage +boscath +bosch +boschbok +boschin +boschneger +boschvark +boschveld +boscio +bosco +boscobel +boscoli +bose +bosee +boseeinstein +boselaphus +boser +boserve +bosh +bosha +boshas +bosher +boshner +boshoft +bosic +bosier +bosiken +bosilewa +bosiljevac +bosiljgrad +bosiljka +bosjesman +bosk +boskages +bosker +bosket +boskien +boskier +boskiest +boskiness +bosko +boskova +boskovic +bosks +bosky +boslar +bosler +bosley +bosloff +bosman +bosn +bosna +bosngun +bosnia +bosniac +bosniak +bosnian +bosnians +bosnik +bosnisch +bosnyak +boso +bosobolo +bosom +bosome +bosomed +bosomer +bosoming +bosoms +bosomy +bosons +bosor +bosporan +bosporanic +bosporian +bosporus +bosque +bosques +bosquet +bosrinov +boss +bossa +bossage +bossano +bossdom +bossed +bosselated +bosselation +bosser +bosserman +bossert +bosses +bosset +bossett +bossfellow +bossier +bossiercity +bossies +bossiest +bossily +bossiness +bossing +bossism +bossisms +bossler +bosslet +bosso +bosson +bossoum +bosss +bossship +bossy +bostangi +bostanji +bostel +bostelmann +bosthoon +bostic +bostik +bostock +boston +bostonese +bostonian +bostonians +bostonite +bostons +bostrom +bostrychid +bostrychidae +bostrychoid +bostryx +bostwick +bosum +bosun +bosuns +boswash +boswell +boswellia +boswellian +boswelliana +boswellism +boswellize +boswick +bosworth +bosy +bota +botai +botan +botanical +botanically +botanies +botanists +botanize +botanized +botanizer +botanizes +botanizing +botanomancy +botanophile +botargo +botas +botaurinae +botaurus +botawa +botbot +botch +botched +botchedly +botcher +botcherly +botchers +botchery +botches +botchier +botchiest +botchily +botchiness +botching +botchka +botchy +bote +botega +boteier +botein +botel +boteler +boteley +botelho +botella +boteller +botemajhi +boterol +both +botha +bothar +bothell +bother +botheration +bothered +botherer +botherheaded +bothering +botherment +bothers +bothlanguage +bothlike +bothnia +bothnian +bothnic +bothrenchyma +bothriolepis +bothrium +bothropic +bothrops +bothros +bothsided +bothway +bothwell +bothy +boti +botilier +botiller +botin +botkin +botkins +botlandt +botles +botley +botlikh +botlix +boto +botocudo +botocudos +botolan +botolphia +botonee +botong +botosani +botosso +botrychium +botrydium +botryllidae +botryllus +botryogen +botryoid +botryoidal +botryoidally +botryolite +botryomyces +botryomycoma +botryopterid +botryopteris +botryose +botrytis +bots +botsford +botsweletse +bott +bottaro +bottekin +bottello +botticella +botticelli +botticellian +bottilier +bottine +bottineau +botting +bottis +bottle +bottlebird +bottlecaps +bottled +bottleflower +bottleful +bottlefuls +bottlehead +bottleholder +bottlelike +bottlemaker +bottlemaking +bottleman +bottleneck +bottlenecked +bottlenecks +bottlenest +bottlenose +bottler +bottlers +bottles +bottlesful +bottling +botto +bottom +bottomchrome +bottome +bottomed +bottomer +bottomers +bottoming +bottomland +bottomless +bottomlessly +bottomley +bottomline +bottomly +bottommargin +bottomry +bottoms +bottomsten +bottomup +bottrich +botts +bottstick +bottsy +botty +botuliform +botulins +botulinum +botulinus +botulism +botulisms +botulismus +botunga +botunia +botvid +botyrius +botz +boua +bouabid +bouafle +bouaghi +bouaka +bouake +boualapha +bouamou +bouato +boubandjida +bouc +boucaron +boucer +boucetta +bouchal +bouchaleen +bouchard +boucharde +bouche +boucher +boucherism +boucherize +boucheron +bouchery +bouchet +bouchette +bouchey +bouchier +boucier +bouckville +boucle +boucot +boucouris +boud +boudaoudi +boudesh +boudin +boudjou +boudoir +boudoirs +boudouma +boudoux +boudreau +boudreaux +bouduma +bouende +bouenza +bouffancy +bouffants +bouffard +bouffe +bouffes +bouffier +bouffiou +bouffique +bougainville +bougar +bouge +bouget +bough +boughed +boughless +boughpot +boughs +bought +boughten +boughton +boughy +bougie +bougou +bougouriba +bouhabib +bouhitafla +bouhouhorts +bouick +bouih +bouillaud +bouilli +bouillon +bouillons +bouin +bouinozov +bouiok +bouira +bouirou +bouise +bouix +boujenah +bouk +boukhanef +boukit +boul +boulahay +boulais +boulala +boulanger +boulangerite +boulangism +boulangist +boulay +boulaye +boulba +boulbe +bould +boulder +bouldercity +bouldercreek +boulderhead +bouldering +boulders +bouldery +bouldin +bouleau +boulebards +boulemane +boulerice +boules +boulevard +boulevardize +boulevards +bouleverse +bouleverser +boulgou +boulia +boulimia +boulkiemde +boulogne +boulos +boulou +boult +boultel +boulter +boulterer +boulting +boulton +boumba +boumerdes +boumoali +boumpe +boun +bouna +bounce +bounceable +bounceably +bounced +bouncer +bouncers +bounces +bouncier +bounciest +bouncily +bouncing +bouncingly +bound +boundable +boundaries +boundary +boundbrook +bounded +boundedly +boundedness +bounden +bounder +bounderi +bounders +boundiali +bounding +boundingly +boundless +boundlessly +boundly +boundness +boundoukou +boundry +bounds +boung +bounine +bounkoulou +bounpane +bounteous +bounteously +bountied +bounties +bountiful +bountifully +bountith +bountree +bounty +bountyless +boupe +bouquet +bouquets +bour +bourahla +bourail +bouraka +bourasque +bourba +bourbaki +bourbault +bourbon +bourbonesque +bourbonian +bourbonism +bourbonist +bourbonize +bourbonnais +bourbons +bourcier +bourd +bourday +bourdeau +bourdelle +bourder +bourdette +bourdignon +bourdin +bourdon +boure +bouret +bourette +bourg +bourgaize +bourgault +bourgeois +bourgeoise +bourgeon +bourgeoned +bourgeons +bourget +bourgh +bourgignon +bourgin +bourgogne +bourgon +bourgs +bourgue +bourguignon +bouricault +bouriette +bourignian +bourignonism +bourignonist +bouriya +bourk +bourke +bourketown +bourland +bourlem +bourlet +bourmina +bourne +bournes +bourneuf +bourneville +bournless +bournonite +bourns +bourock +bouroncle +bourout +bourque +bourrah +bourree +bourrees +bourret +bourrha +bourse +boursin +bourtree +bourvil +boury +bouse +boused +bousen +bouser +bouses +bousfield +boushel +bousquet +boussa +boussanse +bousso +boussou +bousy +bout +boutade +boutahari +boute +bouteille +bouteloua +bouterse +boutigny +boutilier +boutin +boutiques +boutnikoff +bouto +bouton +boutonniere +boutonnieres +boutot +bouts +boutsikaris +boutte +boutylka +bouvardia +bouver +bouverie +bouvet +bouvette +bouvier +bouw +bouwmeester +bouye +bouyei +bouyeimiao +bouzareah +bouze +bouzouki +bouzoukia +bouzoukis +bova +bovard +bovarism +bovarysm +bovas +bovasso +bovat +bovate +bove +bovee +bovell +bovenizer +bovenland +bovenmbian +boverid +bovey +bovicide +boviculture +bovid +bovidae +boviform +bovill +bovin +bovina +bovinacenter +bovine +bovinely +bovines +bovinity +bovista +bovo +bovoid +bovone +bovovaccine +bovy +bowab +bowable +bowagis +bowai +bowan +bowatch +bowback +bowbells +bowbent +bowboy +bowcock +bowden +bowdichia +bowdle +bowdlerism +bowdlerize +bowdlerized +bowdlerizes +bowdlerizing +bowdoinham +bowdon +bowed +bowedness +bowel +boweled +boweling +bowell +bowelled +boweller +bowelless +bowellike +bowelling +bowels +bowen +bowenite +bowens +bower +bowerbird +bowered +bowerhill +boweries +bowering +bowerlet +bowerlike +bowermaiden +bowerman +bowermay +bowers +bowerston +bowersville +bowerwoman +bowery +boweryish +bowes +bowet +boweth +bowfins +bowfront +bowgrace +bowhead +bowheads +bowick +bowie +bowieful +bowili +bowing +bowingly +bowings +bowiri +bowk +bowkail +bowker +bowknot +bowknots +bowl +bowla +bowlder +bowlders +bowled +bowleg +bowlegged +bowlegs +bowler +bowlers +bowles +bowless +bowlful +bowlfuls +bowlike +bowlines +bowling +bowlinggreen +bowlings +bowllike +bowlmaker +bowls +bowlshaped +bowlus +bowly +bowmaker +bowmaking +bowman +bowmann +bowmansdale +bowmanstown +bowmansville +bowmen +bowns +bowom +bowpin +bowralite +bowren +bowron +bows +bowse +bowsed +bowser +bowses +bowshot +bowshots +bowsprit +bowsprits +bowstave +bowster +bowstringed +bowstrings +bowwoman +bowwood +bowwort +bowwow +bowwows +bowyer +boxberry +boxbm +boxboard +boxbush +boxcars +boxcox +boxed +boxelder +boxen +boxer +boxerism +boxers +boxes +boxfish +boxford +boxful +boxfuls +boxhall +boxhaul +boxhead +boxholm +boxier +boxiest +boxiness +boxing +boxings +boxington +boxjenkins +boxkeeper +boxleitner +boxley +boxlike +boxlm +boxmaker +boxmaking +boxman +boxological +boxology +boxrm +boxsoft +boxsprings +boxswitch +boxter +boxthorn +boxtm +boxtop +boxtops +boxty +boxtype +boxview +boxwallah +boxwood +boxwoods +boxwork +boxy +boya +boyabo +boyaca +boyachek +boyadgian +boyajian +boyalsya +boyanese +boyang +boyarchuk +boyard +boyardism +boyardom +boyarides +boyarism +boyarski +boyawa +boyce +boyceville +boycott +boycottage +boycotted +boycotter +boycotting +boycottism +boycotts +boyd +boyden +boydom +boyds +boydton +boye +boyea +boyela +boyemo +boyen +boyens +boyer +boyerahmadi +boyers +boyertown +boyes +boyett +boyfriend +boyfriends +boyhoods +boyish +boyishly +boyishness +boyism +boykin +boykins +boyko +boyla +boylan +boyle +boyles +boylike +boyne +boynecity +boynefalls +boynk +boynton +boyntonbeach +boyo +boyology +boyos +boyriver +boys +boysen +boysenberry +boyship +boysie +boysranch +boysson +boystown +boyzone +boza +bozaba +bozal +bozan +bozanni +boze +bozeman +bozer +bozez +bozi +bozicevich +bozidar +bozidarka +bozkath +bozkurt +bozman +bozo +bozoish +bozolike +bozonnet +bozoo +bozorg +bozorgnia +bozos +bozotic +bozrah +bozze +bozzo +bozzuffi +bozzufi +bpurge +braaksma +brab +brabagious +brabant +brabanter +brabantia +brabantine +brabantio +brabazon +brabble +brabblement +brabbler +brabblingly +brabec +brabejum +brabham +brabori +brac +braca +braccate +bracci +braccia +bracciale +braccianite +braccio +bracco +brace +braced +bracegirdle +bracelet +braceleted +bracelets +bracer +bracero +braceros +bracers +braces +braceville +bracewell +bracey +brach +brachelytra +bracherer +brachering +brachet +brachia +brachial +brachialgia +brachialis +brachiata +brachiate +brachiating +brachiation +brachiator +brachiferous +brachigerous +brachinus +brachiolaria +brachiopod +brachiopoda +brachiopode +brachiosaur +brachiotomy +brachium +bracho +brachtmema +brachyaxis +brachycardia +brachycephal +brachycera +brachyceral +brachyceric +brachycerous +brachycnemic +brachycome +brachydactyl +brachydomal +brachydome +brachydont +brachyfacial +brachygraphy +brachyhieric +brachylogy +brachyoura +brachypnea +brachypodine +brachypodous +brachyprism +brachyskelic +brachysm +brachystegia +brachytic +brachytypous +brachyura +brachyural +brachyuran +brachyuranic +brachyure +brachyurous +brachyurus +bracing +bracingly +bracingness +bracings +brack +bracka +brackenbury +brackened +brackenridge +brackens +bracker +bracket +bracketed +bracketing +brackets +brackett +bracketted +bracketwise +brackin +brackishness +brackman +brackmard +bracknell +brackney +bracks +bracky +bracon +braconid +braconidae +bractea +bracteal +bracteate +bracted +bracteiform +bracteolate +bracteole +bracteose +bractless +bractlet +bractlets +bractor +bracts +bracy +brad +bradawl +bradawls +bradburn +bradbury +bradburya +bradd +bradded +braddell +bradden +bradding +braddock +braddy +braddyville +bradee +braden +bradenhead +bradenton +bradenville +brader +bradfield +bradford +bradgate +brading +bradjanet +bradlee +bradley +bradleybeach +bradleyville +bradlow +bradmaker +bradman +bradmore +bradna +bradner +bradnjanet +bradord +brads +bradshaw +bradsot +brady +bradyacousia +bradycardia +bradycauma +bradycinesia +bradycrotic +bradyglossia +bradyhouse +bradykinesia +bradykinetic +bradylalia +bradylexia +bradylogia +bradynosus +bradypepsia +bradypeptic +bradyphagia +bradyphasia +bradyphemia +bradyphrasia +bradyphrenia +bradypnea +bradypnoea +bradypod +bradypode +bradypodidae +bradypodoid +bradypus +bradyseism +bradyseismal +bradyseismic +bradystalsis +bradytocia +bradytrophic +bradyuria +bradyville +braeden +braeface +braehead +braeman +braes +braeside +braga +bragado +bragamatol +braganca +braganza +bragat +bragdon +brager +bragg +bragga +braggadocio +braggadocios +braggardism +braggartism +braggartly +braggartry +braggarts +braggat +braggcity +bragged +bragger +braggers +braggery +braggest +bragget +braggier +braggiest +bragging +braggingly +braggiotti +braggish +braggishly +braggs +braggvax +braggy +bragi +braginetz +braginsky +bragite +bragless +bragliani +bragnik +brags +braguette +braha +braham +brahe +brahic +brahim +brahimi +brahimism +brahm +brahma +brahmachari +brahmahood +brahmaic +brahman +brahmana +brahmananda +brahmanbaria +brahmanda +brahmaness +brahmanhood +brahmani +brahmanic +brahmanical +brahmanism +brahmanist +brahmanistic +brahmanists +brahmanize +brahmans +brahmany +brahmas +brahmauri +brahmi +brahmic +brahmin +brahminic +brahminical +brahminism +brahminist +brahminists +brahmins +brahmoism +brahms +brahmsite +brahmu +brahui +brahuidi +brahuiki +braid +braided +braider +braiders +braiding +braidings +braidism +braidist +braids +braidwood +braih +brail +braila +brailed +brailey +brailing +brailled +brailles +brailletype +brailling +braillist +brailovsky +brails +brailsford +brain +brainache +braincap +braincase +braincell +braincraft +braindamage +braindamaged +braindead +braindeath +brained +brainer +brainerd +brainfag +brainge +brainier +brainiest +brainily +braininess +braining +brainish +brainless +brainlessly +brainlike +braino +brainpan +brainpans +brainphucka +brainpower +brains +brainsick +brainsickly +brainstem +brainstems +brainstone +brainstorm +brainstorms +brainteaser +brainteasers +braintree +brainville +brainward +brainwashed +brainwasher +brainwashers +brainwashes +brainwashing +brainwater +brainwood +brainwork +brainworker +braird +braireau +brairo +braise +braised +braises +braising +brait +braithwaite +braize +braizes +braj +brake +brakeage +brakeages +braked +brakehand +brakehead +brakeless +brakeload +brakemaker +brakemaking +brakemen +braker +brakeroot +brakes +brakesman +brakest +brakie +brakier +braking +brakna +braky +brakyterm +braless +bralver +bram +bramage +braman +bramantesque +bramantip +brambell +brambila +brambilla +bramble +brambleberry +bramblebush +brambled +brambles +brambley +bramblier +brambliest +brambling +brambly +brambrack +brame +bramhall +bramia +bramlett +bramley +brammer +bramson +bramwell +bran +brana +branagan +branca +brancard +brancaster +brancato +branch +branchage +branchart +branchaud +branchdale +branche +branched +branchellion +brancher +branchery +branches +branchetti +branchful +branchi +branchia +branchiae +branchial +branchiata +branchiate +branchier +branchiest +branchiform +branchihyal +branchiness +branching +branchings +branchiomere +branchiopod +branchiopoda +branchiosaur +branchipus +branchireme +branchiura +branchiurous +branchland +branchless +branchlet +branchlike +branchling +branchman +branchout +branchport +branchstand +branchton +branchville +branchway +branchy +branco +brancos +brancovis +brand +brandais +brandamore +brandao +brandauer +brandchoice +brande +brandea +branded +brandel +branden +brandenburg +brander +brandering +branders +brandhofe +brandi +brandia +brandice +brandie +brandied +brandies +brandify +branding +brandini +brandise +brandish +brandished +brandisher +brandishers +brandishes +brandishing +brandisite +brandless +brandling +brandname +brandnames +brandnew +brando +brandon +brandoni +brandonville +brandow +brandreth +brands +brandsen +brandstadt +brandstaedt +brandsteder +brandsville +brandt +brandvold +brandwein +brandwyn +brandy +brandyball +brandybuck +brandycamp +brandying +brandyman +brandywine +branford +brangane +brangle +brangled +branglement +brangler +brangling +brangomar +brangund +brangwen +branham +branial +branice +branigan +branigansky +branish +branislav +brank +brankie +branko +brankov +brankursine +branle +brann +brannan +brannen +branner +brannerite +brannick +brannigan +branning +brannon +brannum +branny +branon +branowski +brans +branscombe +bransle +bransolder +branson +brant +branta +brantail +brantford +brantingham +brantlake +brantley +brantness +branton +brantrock +brantwood +branum +branvall +branwell +brao +braokravet +braou +brar +bras +braschi +braselton +brasen +brasenia +brasenose +brasfield +brashear +brasher +brasherfalls +brashes +brashest +brashier +brashiest +brashiness +brashly +brashness +brashy +brasi +brasier +brasiers +brasil +brasileira +brasiletto +brasilia +brasiliano +brasils +brasington +brasno +braso +brasov +brasque +brass +brassa +brassage +brassard +brassards +brassart +brassavola +brassband +brassbound +brassbounder +brasscolored +brasse +brasselle +brassem +brasser +brasserie +brasseries +brasses +brasset +brassett +brasseur +brassia +brassic +brassica +brassicaceae +brassicas +brassidic +brassie +brassier +brassieres +brassies +brassiest +brassily +brassiness +brassish +brasslike +brasstown +brassware +brasswork +brassworker +brassworks +brassylic +brasunas +brat +bratbys +brathela +brathwaite +brathwayt +bratislava +bratling +brats +bratschi +bratstvo +brattach +bratten +bratter +brattice +bratticer +bratticing +brattie +brattier +brattiest +brattiness +brattish +brattishing +brattle +brattleboro +brattling +bratton +bratty +braud +brauenberg +brauenboer +brauer +brault +braum +braun +brauna +brauneberger +braunek +brauneria +braunite +brauns +braunsdorf +braunstein +braunstien +brauronia +brauronian +brausch +brausewetter +brauss +braustein +braut +brava +bravade +bravadoes +bravadoism +bravados +bravano +brave +braved +bravehearted +bravely +bravenboer +braveness +braver +braveries +braverman +bravers +bravery +braves +bravest +braving +bravish +bravo +bravoed +bravoes +bravoing +bravoite +bravos +bravuraish +bravuras +bravure +braw +brawbaw +brawl +brawled +brawler +brawlers +brawley +brawlier +brawliest +brawling +brawlingly +brawls +brawlsome +brawly +brawlys +brawn +brawned +brawnedness +brawner +brawnier +brawniest +brawnily +brawniness +brawns +brawny +braws +braxton +braxy +bray +brayed +brayer +brayera +brayerin +brayers +braying +braymer +brayno +brays +braystone +brayton +braza +braze +brazeale +brazeau +brazed +brazee +brazened +brazenface +brazenfaced +brazening +brazenly +brazenness +brazens +brazer +brazera +brazers +brazes +brazier +braziers +braziery +brazil +brazila +brazilein +brazilette +brazilian +brazilians +brazilin +brazilite +brazils +brazilwood +brazing +brazo +brazoria +brazos +brazzaville +brazzel +brazzi +brea +breach +breached +breacher +breachers +breaches +breachful +breaching +breachloader +breachy +breack +bread +breadbasket +breadbaskets +breadberry +breadboards +breadbox +breadboxes +breadcrumbs +breadearner +breadearning +breaded +breaden +breadfan +breadfruit +breadfruits +breadfun +breading +breadless +breadmaker +breadmaking +breadman +breadnut +breadown +breads +breadseller +breadstuff +breadstuffs +breadth +breadthen +breadthless +breadths +breadthways +breadthwise +breadwinners +breadwinning +breaghe +break +breakable +breakables +breakably +breakages +breakaway +breakax +breakback +breakbeat +breakbeats +breakbone +breakbones +breakdown +breakdowns +breaker +breakerman +breakers +breakest +breaketh +breakfast +breakfasted +breakfaster +breakfasters +breakfasting +breakfasts +breakfront +breakfronts +breakin +breaking +breakings +breakless +breaklist +breakneck +breakout +breakouts +breakover +breakpoint +breakpoints +breakrhytm +breaks +breakshugh +breakston +breakstone +breaksw +breakthrough +breakthru +breakups +breakwaters +breakwind +breakz +breal +brealey +breamer +breams +breanne +brear +breards +brearley +breast +breastband +breastbeam +breastbone +breastbones +breasted +breaster +breastful +breastheight +breasthook +breastie +breasting +breastless +breastmark +breastpiece +breastpin +breastplate +breastplates +breastplow +breastrail +breastrope +breasts +breaststroke +breastsummer +breastweed +breastwise +breastwood +breastworks +breath +breathable +breathe +breathed +breather +breathers +breathes +breatheth +breathful +breathier +breathiest +breathily +breathiness +breathing +breathingly +breathless +breathlessly +breathoflife +breaths +breathseller +breathsucker +breathtaker +breatless +breault +breaux +breauxbridge +breba +breban +brec +brecan +breccial +brecciated +brecciation +brecham +brechen +brecher +brechet +brechites +brecht +brechtje +breck +brecken +breckenduff +breckenridge +brecker +breckinridge +breckner +brecr +bred +breda +bredbergite +brede +bredeck +brederode +bredfeldt +bredi +bredichina +bredin +bredoun +bree +breechblock +breechcloth +breechcloths +breechclout +breeched +breeches +breechesless +breeching +breechless +breechloader +breed +breedable +breedbate +breeden +breeder +breeders +breediness +breeding +breedings +breedle +breedlove +breeds +breedsville +breedy +breehill +breek +breekless +breekums +breen +breena +breese +breesport +breeze +breezed +breezeful +breezeless +breezelike +breezes +breezeway +breezeways +breezewood +breezier +breeziest +breezily +breeziness +breezing +brefni +brega +bregaland +bregitte +breglec +bregma +bregmata +bregmate +bregmatic +brego +brehm +brehmer +brehon +brehonship +brei +breisch +breislakite +breiten +breith +breithaupt +breitner +brejchova +brek +brekel +brekkle +brel +brelan +breland +brelaw +breloque +brem +breme +bremely +bremeness +bremer +bremerhave +bremerhaven +bremerton +bremia +bremner +bremobluff +bremond +bren +brena +brenckenburg +brend +brenda +brendan +brendel +brendelia +brendensen +brendon +brenen +brener +brenes +brenham +breniase +brenn +brenna +brennage +brennan +brennand +brennans +brennen +brenner +brennon +brennt +brenon +brenot +brenski +brent +brentford +brenthis +brentmann +brenton +brentwood +breny +breon +brephic +brereton +breri +bres +bresac +brescian +brese +bresee +bresenhams +breslar +breslin +breslow +bresnahan +bresnan +bress +bressack +bressart +bresslau +bresslaw +bressler +bressole +bresson +brest +brestoff +bret +breta +bretagne +bretelle +bretesse +breth +brethren +breton +bretonian +bretonne +bretons +brett +brettice +brettonwoods +bretty +bretwalda +bretwaldadom +bretz +breuer +breunnerite +breusch +breva +brevannes +brevard +brevelle +breves +brevetcies +brevetcy +breveted +breveting +brevets +brevetted +brevetting +brevi +breviaries +breviary +breviate +breviature +brevicauda +brevicaudate +brevicipitid +brevicomis +breviconic +brevier +brevifoliate +breviger +brevilingual +breviloquent +breviped +brevipen +brevipennate +breviradiate +brevirostral +brevit +brevities +brevity +brew +brewage +brewages +brewed +brewer +breweries +brewers +brewership +brewerton +brewhouse +brewing +brewings +brewis +brewmaster +brews +brewst +brewster +brewsterite +brewton +brey +brezhnev +brezhoneg +brga +bria +briac +brialy +brian +briana +brianhead +brianna +brianne +brianon +briant +briante +briany +briarberry +briard +briarean +briareus +briarroot +briars +briarthorn +briarwood +briary +bribable +bribe +bribeable +bribed +bribee +bribegiver +bribegiving +bribemonger +briber +briberies +bribers +bribery +bribes +bribetaker +bribetaking +bribeworthy +bribing +bribri +bricabrac +bricelyn +briceville +brichen +brichette +brichetto +brichoux +brick +brickanoid +brickbats +brickcolored +brickcroft +bricked +brickel +bricken +bricker +brickey +brickeys +brickfield +brickfielder +brickhead +brickhood +brickier +brickiest +bricking +brickish +brickkiln +bricklayers +brickle +brickleness +brickley +bricklike +brickliner +bricklining +brickly +brickmaker +brickmakers +brickmaking +brickman +brickmason +bricks +brickset +bricksetter +bricktimber +bricktop +brickwise +brickwork +bricky +brickyard +bricole +bricolle +bridal +bridale +bridaler +bridally +bridals +bridalveil +bride +bridebed +bridebowl +bridecake +bridechamber +bridecup +bridegod +bridegroom +bridegrooms +bridehead +bridehood +brideknot +bridelace +brideless +bridelike +bridely +bridemaid +bridemaiden +briden +bridenstine +brides +brideship +bridesmaids +bridesman +bridestake +bridewain +brideweed +bridewell +bridewort +bridey +bridge +bridgeboard +bridgebote +bridgecity +bridged +bridgeford +bridgeheads +bridgekeeper +bridgeland +bridgeless +bridgelike +bridgemaker +bridgemaking +bridgeman +bridgemaster +bridgeport +bridgepot +bridger +bridges +bridget +bridgeton +bridgetree +bridgetta +bridgette +bridgeville +bridgeward +bridgewards +bridgewater +bridgeway +bridging +bridgings +bridgland +bridgman +bridgton +bridie +bridle +bridled +bridleless +bridleman +bridler +bridlers +bridles +bridleth +bridling +bridoon +bridou +bridport +bridy +brie +brieda +brief +briefcase +briefcases +briefed +briefer +briefest +briefing +briefings +briefless +brieflessly +briefly +briefness +briefs +briel +brielle +brien +brier +brierberry +briere +briered +brierfield +brierhill +brierley +brierly +brierroot +briers +brierwood +briery +bries +briese +brietner +brietta +brieux +brieve +brig +brigaded +brigades +brigadiers +brigading +brigadoon +brigalow +brigand +brigandage +brigander +brigandine +brigandines +brigandish +brigandishly +brigandism +brigands +brigante +brigantes +brigantia +brigantines +brigatry +brigbote +brigetty +briggitta +briggs +briggsdale +briggsian +briggsville +brighamcity +brighella +brighid +bright +brighten +brightened +brightener +brighteners +brightening +brightens +brighter +brightest +brighteyes +brightish +brightly +brightness +brighton +brights +brightsmith +brightsome +brightwaters +brightwell +brightwood +brightwork +brigid +brigida +brigit +brigitt +brigitta +brigitte +brigittine +brignan +brignone +brignore +brigs +briguad +brigue +briguet +brij +brijia +briju +briley +brill +brillanten +brillas +brilliance +brilliancies +brilliancy +brilliandeer +brilliant +brilliantine +brilliantly +brilliants +brillig +brillinger +brilliolette +brillion +brillolette +brills +brim +brimborion +brimborium +brimfield +brimful +brimfull +brimfully +brimfulness +brimhall +briming +brimless +brimley +brimmed +brimmer +brimmers +brimming +brimmingly +brims +brimson +brimstone +brimstony +brin +brina +brincken +brinckerhoff +brinckman +brinded +brindled +brindles +brindley +brindlish +brindt +brine +brined +brinehouse +brineless +brineman +briner +brines +briney +bring +bringal +bringall +bringed +bringen +bringer +bringers +bringest +bringeth +bringhurst +bringin +bringing +brings +bringword +brini +brinier +brinies +briniest +brininess +brining +brinish +brinishness +brinjal +brinjarry +brink +brinken +brinkerhof +brinkhaven +brinkless +brinkley +brinklow +brinkman +brinks +brinktown +brinn +brinna +brinneman +brinnon +brinsden +brinsley +brinsmade +brinson +brintnell +brinton +briny +brinya +brio +brioche +brioches +briolette +brioly +brion +brioni +briony +brios +brioukov +brique +briquet +briquets +briquette +briquetted +briquettes +bris +brisbin +brisbois +brisbon +brisby +briscoe +briscola +brise +brisebois +briseis +brisigotti +brisk +brisked +brisken +brisker +briskest +brisket +briskets +brisking +briskish +briskly +briskness +brisks +brisling +brislings +brisque +briss +brissa +brissac +brissette +brisson +brissotin +brissotine +bristish +bristlebird +bristlecone +bristled +bristleless +bristlelike +bristler +bristles +bristletail +bristlewort +bristlier +bristliest +bristliness +bristling +bristly +bristol +bristols +bristolville +bristow +bristowe +brisure +brit +brita +britain +britan +britannia +britannian +britannic +britannus +britano +britash +britchka +britell +brith +brither +briticism +britischer +british +britisher +britishers +britishhood +britishism +britishly +britishness +britishowned +britishstyle +britman +britneva +britney +britni +brito +britomart +britoness +britons +brits +britska +britt +britta +brittain +brittan +brittaney +brittani +brittany +britte +britteny +brittish +brittle +brittlebush +brittled +brittlely +brittleness +brittler +brittles +brittlest +brittlestem +brittlewood +brittlewort +brittling +brittne +brittney +brittni +britto +britton +britts +britzka +brivet +brivins +brix +brixey +brixia +briza +brizi +brizz +brizzard +brizzi +brkich +brln +broach +broached +broacher +broachers +broaches +broaching +broad +broadacre +broadalbin +broadax +broadaxe +broadaxes +broadband +broadbelt +broadbent +broadbill +broadbrim +broadbrook +broadcast +broadcasted +broadcaster +broadcasters +broadcasting +broadcasts +broadcloth +broaddus +broadened +broadener +broadeners +broadening +broadenings +broadens +broader +broaders +broaderup +broadest +broadfoot +broadford +broadgauge +broadhead +broadhearted +broadhorn +broadhurst +broadish +broadlands +broadleaf +broadley +broadlooms +broadly +broadmouth +broadness +broadpiece +broadrun +broads +broadshare +broadsheet +broadsides +broadspread +broadsword +broadswords +broadtail +broadthroat +broadtop +broadus +broadview +broadwater +broadway +broadwayite +broadways +broadwell +broadwife +broadwise +brob +brobdingnag +broberg +broca +brocade +brocaded +brocades +brocading +brocaire +brocard +brocardic +brocatel +brocatelle +brocatello +brocato +brocco +broccolino +broccolis +broch +brochan +brochant +brochantite +brochard +broche +brochero +brochette +brochettes +brocho +brochure +brochures +brocius +brock +brockage +brockdorf +brocked +brockelhurst +brocket +brockets +brockett +brockette +brockhaus +brockhouse +brockhurst +brocklebank +brocklehurst +brocklin +brockman +brockmann +brockmeyer +brockport +brocks +brockschmidt +brocksmith +brockton +brockway +brockwell +brocoli +brocpa +brocton +brod +brodda +brodder +brode +brodeau +brodeglass +brodeigh +brodel +broden +brodequin +broder +broderer +broderick +broderra +brodersen +brodfuehrer +brodgen +brodhead +brodiaea +brodie +brodkin +brodman +brodnax +brodowski +brodsky +brody +brodzigy +broek +broekhoven +broemeling +brofeldt +broffitt +brog +brogan +brogans +brogden +brogdon +brogger +broggerite +broggle +brogi +brogle +brogley +brogue +brogueful +brogueneer +broguer +broguery +brogues +broguish +brohard +brohk +brohket +brohman +broided +broider +broidered +broiderer +broideress +broideries +broidering +broiders +broidery +broigne +broiled +broiler +broilers +broiling +broilingly +broils +broinka +brojehova +brojoma +brokage +brokages +brokaw +broke +broken +brokenarrow +brokenbow +brokenfooted +brokenhanded +brokenly +brokenness +brokenridge +brokenwinded +brokepkt +broker +brokerages +brokeress +brokerly +brokers +brokership +brokery +broket +broking +brokopondo +brokpa +brokskat +brokski +brolga +brolin +broline +broll +brolley +brollies +brolly +broma +bromacetate +bromacetic +bromacetone +bromal +bromalbumin +bromamide +broman +bromargyrite +bromate +bromaurate +bromauric +brombacher +brombal +brombenzene +brombenzyl +bromberg +bromcamphor +bromcresol +bromden +brome +bromeigon +bromeikon +bromelia +bromeliaceae +bromeliad +bromelin +bromellite +bromethyl +bromethylene +bromgelatin +bromhead +bromhidrosis +bromhydrate +bromhydric +bromian +bromic +bromides +bromidic +bromidically +bromidrosis +brominate +bromination +bromindigo +bromines +brominism +brominize +bromiodide +bromios +bromism +bromite +bromius +bromization +bromize +bromizer +bromley +bromlite +brommel +bromo +bromoacetone +bromoaurate +bromoauric +bromobenzene +bromobenzyl +bromocamphor +bromocresol +bromocyanide +bromodrosis +bromoform +bromogelatin +bromohydrate +bromohydrin +bromoil +bromoiodide +bromoiodism +bromoiodized +bromoketone +bromol +bromomania +bromomethane +bromometric +bromometry +bromophenol +bromopicrin +bromopnea +bromoprotein +bromos +bromothymol +bromous +bromphenol +brompicrin +bromsgrove +bromthymol +bromuret +bromus +bromvogel +bromyrite +bron +brona +bronaugh +bronc +bronchia +bronchially +bronchiloquy +bronchiocele +bronchioles +bronchioli +bronchiolus +bronchitic +bronchitis +bronchium +broncho +bronchocele +bronchogenic +broncholith +bronchomotor +bronchopathy +bronchophony +bronchorrhea +bronchos +bronchoscope +bronchoscopy +bronchospasm +bronchostomy +bronchotome +bronchotomy +bronchud +broncobuster +broncos +broncs +bronder +bronec +bronell +bronfman +brong +bronga +brongahafo +bronhit +bronislav +bronislaw +bronislawa +bronk +bronka +bronner +bronski +bronson +bronston +bronte +bronteana +bronteon +brontephobia +brontesque +bronteum +brontide +bronto +brontogram +brontograph +brontolite +brontology +brontometer +bronton +brontophobia +brontops +brontos +brontosaur +brontosauri +brontosaurs +brontosaurus +brontoscopy +brontozoum +bronwood +bronwyn +bronx +bronxville +bronze +bronzed +bronzelike +bronzen +bronzer +bronzers +bronzes +bronzesmith +bronzewing +bronzier +bronziest +bronzify +bronzine +bronzing +bronzings +bronzite +bronzitite +broo +brooch +brooches +brood +brooded +brooder +brooders +broodier +broodiest +broodiness +brooding +broodingly +broodless +broodlet +broodling +broods +brook +brookable +brookdale +brooke +brooked +brookeland +brooker +brookes +brookesmith +brookeville +brookfield +brookflower +brookhart +brookhaven +brookhouse +brookhurst +brookie +brooking +brookings +brookite +brookland +brookless +brooklet +brooklets +brooklike +brooklime +brooklin +brooklyn +brooklynite +brookneal +brookpark +brookport +brooks +brooksbank +brookshire +brookss +brookston +brooksville +brookton +brooktondale +brookview +brookville +brookweed +brookwood +brooky +brool +broom +broomall +broombush +broome +broomed +broomer +broomfield +broomier +broomiest +brooming +broommaker +broommaking +broomrape +broomroot +brooms +broomshank +broomstaff +broomstick +broomsticks +broomstraw +broomtail +broomweed +broomwood +broomwort +broomy +broon +broos +broose +brooten +broozled +brophy +bror +brorfelde +bros +brosa +brosay +broschuk +brose +broseley +brosilow +brosimum +brosl +brosnan +brosot +bross +brossard +brosse +brosselard +brosset +brosso +brost +broster +brostroem +brostrom +brosy +brot +brotan +brotany +broten +broth +brothel +brotheler +brothellike +brothelry +brothels +brother +brotherhood +brotherhoods +brothering +brotherinlaw +brotherless +brotherlike +brotherly +brothers +brothership +brotherton +brotherwort +brothier +brothiest +broths +brothy +brotocrystal +brott +brotte +brotula +brotulid +brotulidae +brotuliform +brou +brouchard +broud +brough +brougham +broughams +brought +broughtest +broughton +brougth +brouhahas +brouhardier +brouillerie +brouillette +brouillon +brouilly +broulard +broulik +broun +brousek +brouser +broussard +brousse +brousseau +broussonetia +brouthillier +brouwer +broux +brovont +brow +browache +browallia +browallius +broward +browband +browbeat +browbeater +browbeating +browbeats +browbound +browden +browder +browed +brower +browerville +browis +browless +browman +brown +brownback +browncity +browne +browned +browner +brownest +brownfield +brownhow +brownian +brownie +brownier +brownies +browniest +browniness +browning +brownish +brownism +brownist +brownistic +brownistical +brownjohn +brownlee +brownlie +brownlow +brownly +brownmood +brownness +brownout +brownouts +brownridge +browns +brownsboro +brownsburg +brownsdale +brownsfork +brownsmills +brownssummit +brownstone +brownstones +brownstown +brownsvalley +brownsville +browntail +brownton +browntop +browntown +brownville +brownvm +brownweed +brownwood +brownwort +browny +brownyn +browpiece +browpost +brows +browsable +browse +browseable +browsed +browsegate +browser +browsername +browserola +browsers +browserver +browses +browsick +browsing +browst +brox +broxton +broyles +brrr +brrroooo +brses +bruang +bruant +bruasewetter +bruat +brub +brubaker +brubeck +brucco +bruce +brucehelin +brucella +bruces +bruceton +brucetown +bruceville +bruchidae +bruchsalia +bruchus +brucia +bruciare +brucina +brucine +brucite +bruck +brucker +bruckle +bruckled +bruckleness +bruckmann +bruckner +brucknerian +bructeri +bruder +brudie +brueck +brueinen +bruen +bruengger +brueninghaus +brugada +bruger +brugge +bruggeman +bruggen +bruggler +brugh +bruha +bruhl +bruian +bruijn +bruijns +bruille +bruin +bruington +bruins +bruise +bruised +bruiser +bruisers +bruises +bruisewort +bruising +bruisingly +bruit +bruited +bruiter +bruiters +bruiting +bruits +bruj +brujo +bruke +bruketa +bruland +brule +brulee +brulier +brull +brulor +brulyie +brulyiement +brum +brumal +brumalia +brumbach +brumby +brume +brumley +brumlik +brumm +brummagem +brummel +brummell +brummit +brummitt +brummund +brumous +brumstane +brumstone +brun +bruna +brunato +brunca +bruncati +brunched +brunches +brunching +brundage +brunden +brundidge +brundle +brundtland +brune +bruneau +bruneaux +brunehaut +brunei +bruneian +brunel +brunella +brunelle +brunellia +bruner +brunet +brunetness +brunets +brunetteness +brunettes +brunetti +brunetto +brunewald +brunfelsia +brung +brungardt +brunhart +brunhild +brunhilda +brunhilde +bruni +brunier +bruning +brunissure +brunistic +brunius +brunk +brunka +brunke +brunkhorst +brunn +brunne +brunneous +brunner +brunners +brunnichia +bruno +brunoni +brunonia +brunoniaceae +brunonian +brunonism +brunoy +bruns +brunsbuttel +brunsia +brunson +brunsting +brunsville +brunswick +brunt +brunton +brunts +brunvand +brunvands +brusch +brusck +bruscus +brusett +brusgaard +brush +brushable +brushaski +brushball +brushbird +brushbush +brushcreek +brushed +brusher +brushers +brushes +brushet +brushey +brushfires +brushful +brushier +brushiest +brushiness +brushing +brushite +brushland +brushless +brushlet +brushmaker +brushmaking +brushman +brushoff +brushoffs +brushprairie +brushproof +brushton +brushtype +brushup +brushups +brushvalley +brushwood +brusk +brusker +bruskest +bruskly +bruskness +bruskovayac +brusly +bruson +brusque +brusquely +brusqueness +brusquer +brusquerie +brusquest +bruss +brusse +brusseau +brussels +brustle +brut +bruta +brutage +brutal +brutalism +brutalist +brutalities +brutality +brutalize +brutalized +brutalizes +brutalizing +brutally +brutalness +brute +bruted +brutedom +bruteforce +bruteforces +brutelike +brutely +bruteness +brutes +brutified +brutifies +brutify +brutifying +bruting +brutish +brutishly +brutishness +brutism +brutisms +bruto +brutsche +brutsman +brutter +brutus +bruu +bruvold +bruwer +bruxelles +bruxism +bruxvoort +bruynooghe +bruyns +bruzz +bruzzese +bruzzi +bruzzo +brvar +bryaceae +bryaceous +bryales +bryan +bryana +bryanism +bryanite +bryansroad +bryant +bryanthus +bryantown +bryantpond +bryantsstore +bryantsville +bryantville +bryar +bryce +brycecanyon +bryceland +bryceville +bryden +brydges +brydon +bryenton +bryguin +bryiska +bryk +brylov +bryn +bryna +brynathyn +bryne +brynmawr +brynn +brynna +brynne +brynner +bryogenin +bryological +bryologist +bryology +bryon +bryonia +bryonidin +bryonin +bryony +bryophyllum +bryophytic +bryozoan +bryozoon +bryozoum +brys +bryson +brysoncity +brytag +brython +brythonic +bryttan +bryum +brzezinski +bsarc +bsbb +bsbw +bsdi +bsdialog +bspaces +bsroc +bssolid +bsuffixed +bswap +btancaster +btardat +btest +btests +bthstat +bthvax +btlog +btrieve +bttsync +btus +btype +buacca +buachi +buada +buaga +bual +buan +buanfo +buang +buano +buans +buasi +buasnchi +buasom +buaze +buba +bubak +bubal +bubalia +bubaline +bubalis +bubanda +bubangi +bubanza +bubastid +bubastite +bubat +bubba +bubber +bubbies +bubble +bubbled +bubblegum +bubblejet +bubbleless +bubblement +bubblepad +bubbler +bubblers +bubbles +bubbletop +bubbletops +bubblier +bubblies +bubbliest +bubbling +bubblingly +bubblish +bubbly +bubby +bubbybush +bube +bubebenga +bubel +bubi +bubia +bubinga +bubis +bubiyan +bubo +buboed +buboes +bubolz +bubonalgia +bubonic +bubonidae +bubonocele +bubs +bubu +bububun +bubukle +bubukun +bubure +bubuye +bubwaf +bucaram +bucare +bucasa +bucasb +bucataru +bucca +buccal +buccally +buccan +buccaneer +buccaneering +buccaneerish +buccaneers +buccanier +buccate +buccella +buccellarius +bucci +buccilli +buccina +buccinal +buccinator +buccinatory +buccinidae +bucciniform +buccinoid +buccinum +bucco +buccola +buccolabial +buccolingual +bucconasal +bucconidae +bucconinae +buccula +bucculatrix +bucentaur +bucephala +bucephalus +buceros +bucerotes +bucerotidae +bucerotinae +buchan +buchanan +buchanandam +buchanite +buchanon +buchara +bucharest +buchbinder +buchel +buchet +buchheim +buchholz +buchi +buchinski +buchinsky +buchite +buchko +buchlmann +buchloe +buchmanism +buchmanite +buchmann +buchnera +buchnerite +buchonite +buchreiser +buchrieser +buchsbaum +bucht +buchtel +buchu +buchvarov +buchwald +buci +buck +buckalew +buckaroo +buckaroos +buckatunna +buckbasket +buckbean +buckbeans +buckberry +buckboard +buckboards +buckbrush +buckbush +buckcreek +bucked +buckeen +bucker +buckeroo +buckeroos +buckers +bucket +bucketed +bucketer +bucketful +bucketfulls +bucketfuls +bucketing +bucketmaker +bucketmaking +bucketman +buckets +buckety +buckeyelake +buckeyes +buckeystown +buckfield +buckhannon +buckhead +buckhoff +buckhoj +buckholder +buckholts +buckholtz +buckholz +buckhorn +buckhound +buckhounds +buckie +bucking +buckingham +buckish +buckishly +buckishness +buckjump +buckjumper +buckland +bucklandite +buckle +buckled +buckleless +buckler +bucklered +bucklers +buckles +buckley +buckleya +bucklin +buckling +bucklum +buckman +buckminster +bucknam +buckner +bucko +buckoes +buckplate +buckpot +buckra +buckram +buckramed +buckrams +buckras +bucks +bucksaw +bucksaws +bucksharbor +buckshee +buckshot +buckshots +buckskinned +buckskins +bucksport +buckstall +buckstay +buckstone +bucktail +bucktails +buckteeth +bucktoe +buckton +bucktooth +bucktoothed +buckwagon +buckwalter +buckwash +buckwasher +buckwashing +buckwheat +buckwheater +buckwheats +bucky +buckymania +bucloc +bucoda +bucoliast +bucolical +bucolically +bucolicism +bucolics +bucorvinae +bucorvus +bucrane +bucranium +bucsb +bucsd +bucuresti +bucyrus +buczek +buda +budaksham +budama +budanoh +budapest +budaun +buday +budd +buddage +budded +budder +budders +buddh +buddha +buddhahood +buddhanature +buddhaship +buddhi +buddhic +buddhistic +buddhistical +buddhists +buddhology +buddie +buddies +budding +buddlake +buddle +buddleia +buddleman +buddler +buddles +budduskey +buddy +buddyphone +bude +budem +buder +budescu +budesh +budet +budge +budged +budger +budgeree +budgereegah +budgerigar +budgerigars +budgerow +budgers +budges +budget +budgeted +budgeteer +budgeter +budgeters +budgetful +budgeting +budgets +budgie +budgies +budging +budh +budhi +budhram +budi +budibud +budidjara +budigri +budihardjo +budik +budimirovic +budington +budip +budiscak +budja +budjago +budjala +budkat +budkin +budkova +budleigh +budless +budlet +budlike +budlow +budmash +budmira +budnyah +budobab +budong +budongbudong +budorcas +budovicium +budraitis +budrosa +buds +budsga +budtime +budu +budug +budugi +budugum +budukh +budukha +buduma +budut +buduu +budux +budwood +budworm +budy +budya +budza +budzaba +budzat +buea +bueche +buecheler +buechner +buechse +buehler +buehlmann +buehne +buela +bueller +buellton +buelow +buem +buena +buenapark +buenas +buenaventura +buenavista +buende +bueng +buenga +buengc +bueno +buenos +buenosaires +buerg +buerger +buetos +buettgen +buettner +buettneria +bueyeros +bufagin +bufe +buferd +buffable +buffalo +buffaloback +buffaloed +buffaloes +buffalogap +buffalogrove +buffaloing +buffalolake +buffalomills +buffaloridge +buffalos +buffam +buffball +buffcoat +buffed +buffer +buffered +buffering +bufferrer +bufferrers +buffers +buffet +buffeted +buffeter +buffeters +buffeting +buffetings +buffets +buffett +buffetted +buffi +buffier +buffing +buffle +bufflehorn +buffo +buffon +buffont +buffoonery +buffoonesque +buffoonish +buffoonism +buffoons +bufford +buffos +buffs +buffware +buffy +bufi +bufid +bufidin +bufo +bufonidae +bufonite +buford +bufotalin +bufotoxin +bufsch +bufsiz +bufumbwa +buga +bugaboos +bugago +bugajska +bugajski +bugalu +bugan +buganda +buganov +bugariri +bugatti +bugau +bugbane +bugbanes +bugbear +bugbeardom +bugbearish +bugbears +bugbee +bugbite +bugbook +bugchasing +bugdom +buge +bugelijo +bugeye +bugeyes +bugfish +bugfix +bugfixed +bugfixes +bugforbug +bugfree +bugged +bugger +buggered +buggeries +buggering +buggers +buggery +buggie +buggier +buggies +buggiest +bugginess +bugging +buggs +buggy +buggyman +bughardt +bughead +bughotu +bughouse +bughouses +bugi +buginese +buginvillaea +bugis +bugisluwu +bugisu +bugit +bugkalut +bugl +bugled +buglehorn +bugler +buglere +buglers +bugles +buglet +bugleweed +buglewort +buglial +buglike +bugling +buglix +bugloss +bugologist +bugology +bugombe +bugongo +bugota +bugoto +bugotu +bugproof +bugre +bugs +bugsbunny +bugseed +bugseeds +bugsie +bugsuk +bugsy +bugtraq +bugudum +buguet +buguli +buguma +bugumbe +buguri +bugutla +bugw +bugweed +bugwort +bugyorne +bugz +buhagana +buhayrah +buher +buhg +buhgalteria +buhi +buhid +buhidaraga +buhidtaubuid +buhinon +buhkee +buhl +buhler +buhr +buhrkuhl +buhrman +buhrstone +buhutu +buhwan +buiamanambu +buicks +buiculescu +buideo +buiescreek +buigana +build +buildable +buildchar +builded +buildedst +builder +buildercalc +builders +buildest +buildeth +building +buildingless +buildings +buildlist +buildress +builds +buildups +buile +builsa +built +builter +builtin +buimistre +buin +buinak +buins +buipe +buirdly +buisson +buissonniere +buist +buita +buitin +buja +bujal +bujasjas +bujawa +bujhel +buji +bujiyel +bujold +bujtor +bujwe +buka +bukabukan +bukac +bukakhwe +bukala +bukalot +bukar +bukare +bukarsadong +bukat +bukau +bukaua +bukavu +bukawa +bukawac +buker +bukeyef +bukh +bukhara +bukharan +bukharian +bukharic +bukidnon +bukil +bukira +bukit +bukitan +bukiyup +bukki +bukkiah +buko +bukoba +bukongo +bukoontot +bukovsky +bukow +bukowski +bukshi +bukta +bukueta +bukukhi +bukum +bukuma +bukun +bukur +bukurmi +bukuru +bukusu +bula +bulacan +bulach +bulagat +bulagi +bulahai +bulak +bulaka +bulala +bulalakaw +bulalakawnon +bulama +bulan +bulanda +bulandshahr +bulang +bulanga +bulangauki +bulatova +bulawayo +bulba +bulbaceous +bulbar +bulbed +bulbi +bulbiferous +bulbiform +bulbil +bulbilis +bulbilla +bulbless +bulblike +bulbocapnin +bulbocapnine +bulbochaete +bulbocodium +bulbonuclear +bulbophyllum +bulborectal +bulbose +bulbospinal +bulbotuber +bulbous +bulbrook +bulbs +bulbul +bulbule +bulbulian +bulbuls +bulby +bulchin +buldana +bule +bulea +bulebule +bulem +bulengo +bulent +bules +buley +bulfinch +bulgai +bulgakov +bulgakova +bulgan +bulganin +bulgar +bulgari +bulgaria +bulgarian +bulgarians +bulgaric +bulgarophil +bulge +bulgebi +bulged +bulger +bulgerians +bulgers +bulges +bulgier +bulgiest +bulginess +bulging +bulgren +bulgur +bulgurs +bulgy +buli +bulia +bulic +bulifant +bulikoma +bulimia +bulimiac +bulimias +bulimic +bulimiform +bulimoid +bulimulidae +bulimus +bulimy +bulinski +bulinskii +bulitka +buliya +buljanoff +bulk +bulka +bulkage +bulkages +bulked +bulker +bulkheaded +bulkheads +bulkier +bulkiest +bulkily +bulkiness +bulking +bulkish +bulkovshteyn +bulks +bulky +bull +bulla +bullace +bullad +bullamacow +bullan +bullard +bullary +bullas +bullate +bullated +bullation +bullback +bullbaiting +bullbat +bullbeggar +bullberry +bullbird +bullboat +bullcart +bullcomber +bulldog +bulldogged +bulldogging +bulldoggy +bulldogism +bulldogs +bulldozed +bulldozer +bulldozers +bulldozes +bulldozing +bulle +bulled +bullen +buller +bullet +bulleted +bullethead +bulletheaded +bulletin +bulleting +bulletins +bulletless +bulletlike +bulletmaker +bulletmaking +bulletproof +bulletproofs +bullets +bullett +bulletwood +bullety +bullfeast +bullfight +bullfighter +bullfighters +bullfighting +bullfights +bullfinches +bullfist +bullflower +bullfoot +bullfrog +bullfrogs +bullheadcity +bullheaded +bullheadedly +bullheads +bullhoof +bullhorn +bullhorns +bullidae +bullied +bullier +bullies +bulliform +bullimong +bullin +bulling +bullingdon +bullinger +bullington +bullion +bullionism +bullionist +bullionless +bullions +bullishly +bullishness +bullism +bullit +bulliten +bulliton +bullitt +bulljincher +bulll +bullman +bullneck +bullnecks +bullnose +bullnoses +bullnut +bulloch +bullock +bullocker +bullockite +bullockman +bullocks +bullocky +bullom +bullous +bullpates +bullpen +bullpens +bullpoll +bullpout +bullring +bullrings +bullroarer +bullrush +bullrushes +bulls +bullsessions +bullsgap +bullshit +bullshits +bullshitted +bullshitting +bullshoals +bullshot +bullskin +bullsticker +bullsucker +bullswool +bulltoad +bullule +bullun +bullville +bullweed +bullweeds +bullwhacker +bullwhip +bullwhips +bullwinkle +bullwort +bullyable +bullyboys +bullydom +bullyhuff +bullying +bullyism +bullyrag +bullyragger +bullyragging +bullyrags +bullyrook +bulmahn +bulman +bulmanis +bulmer +bulmut +bulnes +bulo +buloff +buloft +bulolo +bulolowatut +bulow +bulpitt +bulrush +bulrushes +bulrushlike +bulrushy +bulsa +bulse +bulstrode +bult +bulter +bultey +bultong +bultow +bulu +bulud +buluf +buluh +buluki +bulukumba +bululu +bulum +bulungan +bulunge +bulungu +bulus +buluyiema +bulwand +bulwark +bulwarked +bulwarking +bulwarks +bulz +bulzoni +buma +bumaji +bumal +bumali +bumatai +bumba +bumbailiff +bumbarge +bumbaste +bumbaze +bumbee +bumbera +bumbershoot +bumbira +bumbita +bumblebees +bumbleberry +bumbled +bumbledom +bumblefoot +bumblekite +bumblepuppy +bumbler +bumblers +bumbles +bumbling +bumblings +bumbo +bumboat +bumboatman +bumboats +bumboatwoman +bumboko +bumbong +bumboret +bumbula +bumburet +bumclock +bumcombe +bumcreland +bume +bumelia +bumgarner +bumi +bumicky +bumiller +bumiputra +bumkin +bumkins +bummalo +bummaree +bummed +bummer +bummerish +bummers +bummest +bummie +bumming +bummler +bummock +bump +bumpass +bumpe +bumped +bumpee +bumper +bumpered +bumperette +bumpering +bumpers +bumphunting +bumpier +bumpiest +bumpily +bumpiness +bumping +bumpingly +bumpkin +bumpkinet +bumpkinish +bumpkinly +bumpkins +bumpology +bumps +bumpstead +bumptious +bumptiously +bumpusmills +bumpy +bums +bumstead +bumtangkha +bumthang +bumthangkha +bumtrap +bumwangi +bumwood +buna +bunaba +bunaban +bunabun +bunah +bunak +bunake +bunaki +bunama +bunan +bunas +bunberawa +buncal +bunce +bunceton +bunch +bunchberry +bunched +buncher +bunches +bunchflower +bunchier +bunchiest +bunchily +bunchiness +bunching +bunchy +bunco +buncoed +buncoing +buncombe +buncos +bund +bunda +bundahish +bundala +bundarra +bundel +bundeli +bunder +bundesland +bundeslander +bundesrat +bundgaard +bundi +bundle +bundled +bundler +bundlerooted +bundlers +bundles +bundlet +bundling +bundlings +bundobast +bundobust +bundook +bunds +bundschuh +bundu +bundum +bundweed +bunemost +bunfi +bung +bunga +bungain +bungaloid +bungalows +bungan +bungarum +bungarus +bungase +bungbinda +bunge +bunged +bungee +bungerly +bungey +bungfu +bungfull +bunggu +bunghole +bungholes +bungholio +bungi +bungie +bungili +bunging +bungiri +bungku +bungkulaki +bungkumori +bungled +bungler +bunglers +bungles +bunglesome +bungling +bunglingly +bunglings +bungmaker +bungnu +bungo +bungoma +bungomek +bungs +bungsbuch +bungu +bungwall +bungy +bunia +buniabura +buninahua +buninga +bunion +bunions +bunja +bunji +bunjia +bunju +bunjwali +bunk +bunka +bunke +bunked +bunker +bunkerage +bunkered +bunkerhill +bunkering +bunkerman +bunkers +bunkerville +bunkery +bunkhouse +bunkhouses +bunkie +bunking +bunkload +bunkmates +bunko +bunkoed +bunkoing +bunkos +bunks +bunkum +bunkumin +bunkums +bunky +bunn +bunnag +bunnage +bunndu +bunnell +bunner +bunni +bunnie +bunnies +bunning +bunnlevel +bunns +bunny +bunnymouth +bunobogu +bunodont +bunodonta +bunola +bunong +buns +bunsen +bunsenite +bunston +bunta +buntal +bunted +bunter +bunterberg +bunters +bunthorne +bunti +buntic +bunting +buntings +buntline +buntokecil +bunton +buntrock +bunts +buntung +bunty +bunu +bunubun +bunuel +bunum +bunun +bununu +bunweil +bunya +bunyah +bunyip +bunyon +bunyoro +bunzey +bunzo +buol +buona +buoncuai +buongiorno +buono +buoyage +buoyages +buoyance +buoyances +buoyancies +buoyancy +buoyantly +buoyantness +buoyed +buoying +buoys +bupdate +bupeng +buphaga +buphthalmia +buphthalmic +buphthalmum +bupleurol +bupleurum +buplever +bupp +buprestid +buprestidae +buprestidan +buprestis +bupul +bupuran +bura +buracker +burada +burahigi +burak +buraka +buram +burama +buramandara +buran +buranaphim +burangasi +burao +burarra +burarran +burarum +buras +burate +buratynski +burba +burbage +burbankian +burbankism +burbark +burberry +burbidge +burbis +burble +burbled +burbler +burblers +burbles +burblier +burbliest +burbling +burbly +burbot +burbots +burbridge +burbush +burcew +burchard +burchat +burchby +burchfield +burchnall +burcke +burd +burdalone +burdeane +burden +burdened +burdener +burdeners +burdening +burdenless +burdenous +burdens +burdensome +burdensomely +burdett +burdette +burdichevsky +burdick +burdie +burdies +burdigala +burdigalian +burdine +burdis +burdocks +burdon +burdur +burdvax +bure +bureau +bureaucrats +bureaus +bureaux +bureda +bureford +burega +burek +burel +burele +buren +bureng +burera +burettes +burfish +burford +burfordville +burg +burgage +burgality +burgall +burgandi +burgas +burgaw +burge +burgee +burgees +burgen +burgenland +burgensic +burgeoned +burgeoning +burgeons +burger +burgers +burges +burgess +burgessdom +burgesses +burgettstown +burggrave +burgh +burghal +burghalpenny +burghard +burghardt +burghart +burghbote +burghemot +burgherage +burgherdom +burgheress +burgherhood +burghers +burghership +burghes +burghill +burghley +burghmaster +burghmoot +burghmote +burghoff +burghs +burgi +burgin +burglar +burglaries +burglarious +burglarize +burglarized +burglarizes +burglarizing +burglars +burgle +burgled +burgles +burgling +burgomaster +burgomasters +burgomeister +burgomil +burgonet +burgoo +burgoon +burgoos +burgos +burgouts +burgoyne +burgrave +burgraviate +burgs +burgstaller +burgstroyd +burgu +burgul +burgundia +burgundies +burgundy +burgus +burgware +burhan +burhead +burhinidae +burhinus +buri +buria +buriah +burial +burials +burian +buriani +buriap +buriat +buriats +buried +burier +buriers +buries +burig +burin +burinist +burins +burion +buriram +buriti +burja +burji +burjin +burjinya +burk +burka +burkanawa +burkard +burkburnett +burke +burkei +burkeneji +burkepile +burker +burkert +burkesville +burket +burkett +burkette +burkeville +burkey +burkhard +burkhardt +burkhart +burkina +burkinabe +burkitt +burkley +burkundaz +burkville +burlando +burlap +burlaps +burle +burled +burleigh +burler +burlesk +burlesks +burleson +burlesqued +burlesquely +burlesquer +burlesques +burlesquing +burlet +burletta +burleys +burlier +burliest +burlily +burliness +burling +burlingame +burlingham +burlington +burlinson +burlison +burlone +burls +burly +burm +burma +burman +burmannia +burmatibet +burmbar +burmeister +burmese +burmeselolo +burmeso +burmic +burmite +burn +burna +burnable +burnaby +burnage +burnasev +burnashev +burnay +burnbeat +burnbridge +burnecker +burned +burnell +burner +burners +burness +burnet +burneth +burnetize +burnets +burnett +burnette +burney +burneyville +burnfire +burnham +burnhamia +burnie +burniebee +burnies +burnin +burning +burningfork +burningly +burnings +burnips +burnishable +burnished +burnisher +burnishers +burnishes +burnishing +burnishment +burnoff +burnoose +burnoosed +burnooses +burnous +burnouses +burnouts +burnover +burns +burnsflat +burnsian +burnside +burnsides +burnstead +burnsville +burnt +burntcabins +burntcorn +burnthills +burntly +burntness +burntprairie +burntranch +burntweed +burnut +burnwell +burnwood +burny +buro +burom +burped +burpelson +burping +burps +burr +burra +burrage +burrah +burrawang +burred +burrel +burrell +burrer +burrers +burress +burrgrailer +burrhill +burridge +burried +burrier +burring +burris +burrish +burrito +burritos +burrknot +burro +burroak +burrobrush +burrock +burros +burroughs +burrow +burrowed +burroweed +burrower +burrowers +burrowes +burrowing +burrows +burrowstown +burrs +burrton +burrud +burrum +burrus +burruss +burry +burs +bursa +bursac +bursae +bursal +bursar +bursarial +bursaries +bursars +bursarship +bursary +bursas +bursate +bursattee +bursautee +burse +burseed +burseeds +bursera +burseraceae +burseraceous +burses +bursicle +bursiculate +bursiform +bursitises +burski +burson +burst +bursted +burstein +burster +bursters +burstiness +bursting +burston +burstrom +bursts +burstwort +burstyn +burt +burta +burthen +burthenman +burthens +burtin +burtis +burtlake +burton +burtonize +burtons +burtonsville +burtrum +buru +burubi +burubora +burucaki +burucaski +burucha +burui +burukene +buruli +burulo +burum +burumba +burumkuat +burun +burunca +burundai +burundi +burundian +burundians +burunge +burungi +bururi +burushaki +burushas +burushaski +burushki +burusho +burusu +burut +burutaliabo +burutaliabu +buruu +buruwai +burweed +burweeds +burwell +bury +buryat +buryatia +buryatmongol +burying +buryingplace +burys +burzhan +burzum +busa +busaba +busaboko +busagwe +busam +busami +busanchi +busang +busanse +busansi +busaos +busawa +busbies +busboys +busby +busca +buscaglia +buscarini +buscarino +buscarl +buscarle +buscemi +busch +busche +buschell +buschelman +buschhoff +buschiazzo +buschoff +buse +bused +busemeyer +buseni +busenitz +buses +busey +bush +bushbeater +bushbuck +bushc +bushcraft +bushed +bushehr +bushel +busheled +busheler +bushelers +bushelful +busheling +bushell +bushelled +bushelman +bushels +bushelwoman +busher +bushers +bushery +bushes +bushfighter +bushfighting +bushfire +bushfires +bushful +bushhammer +bushi +bushido +bushidos +bushier +bushiest +bushily +bushimaie +bushin +bushiness +bushing +bushings +bushkill +bushland +bushless +bushlet +bushlike +bushmaker +bushmaking +bushman +bushmans +bushmanship +bushmasters +bushmen +bushment +bushnell +bushnik +bushog +bushong +bushongo +bushoong +bushranger +bushranging +bushrope +bushs +bushtit +bushtits +bushton +bushveld +bushveldt +bushwa +bushwack +bushwell +bushwhacked +bushwhacker +bushwhackers +bushwhacking +bushwhacks +bushwife +bushwoelie +bushwoman +bushwood +bushwoolie +bushy +busi +busia +busied +busier +busies +busiest +busignani +busillu +busilmin +busily +busine +business +businesses +businesslike +businessman +businessmen +busing +businga +busings +busk +buskard +buske +busked +buskens +busker +buskerud +busket +buskin +buskined +buskins +buskirk +buskle +busko +busky +busman +busmaster +busmen +buso +busoa +busoga +busoong +busquets +buss +bussa +bussed +bussel +busser +bussere +busses +bussewitz +bussey +bussico +bussieres +bussiness +bussing +busso +bussock +bussolini +bussonet +bussu +bust +bustamante +bustard +bustards +busted +bustee +buster +busters +busthead +bustian +bustic +busticate +bustier +bustiest +bustillos +busting +bustle +bustled +bustler +bustlers +bustles +bustling +bustlingly +busts +busty +bustyn +busu +busuanga +busuttil +busuu +busy +busybodied +busybodies +busybody +busybodyish +busybodyism +busybodyness +busycon +busyhead +busying +busyish +busyness +busywait +busywaiting +busywork +busyworks +buta +butadiyne +butaev +butainat +butalov +butam +butanal +butanes +butanoic +butanol +butanolid +butanolide +butanone +butare +butarinski +butaritari +butawa +butbut +butch +butcha +butchart +butcher +butcherbird +butcherdom +butchered +butcherer +butcheress +butcheries +butchering +butcherless +butcherly +butcherous +butchers +butches +bute +butea +butein +butelezei +butembo +butenyl +buteonine +butera +buthabuthe +buthenuth +buti +butibum +butic +butilki +butilku +butine +butjadingen +butkus +butler +butlerage +butlerdom +butleress +butleries +butlerism +butlerjct +butlerlike +butlers +butlership +butlerville +butlery +butley +butmastur +butment +butner +butomaceae +butomaceous +butomus +buton +butonese +butorin +butoxy +butoxyl +butrick +butryaceous +buts +butsan +butsu +butt +butta +buttecity +butted +buttefalls +butter +butteraceous +butterback +butterbill +butterbird +butterbox +butterbump +butterbur +butterbush +buttercup +buttercups +buttered +butterer +butterers +butterfield +butterfish +butterfishes +butterflies +butterflower +butterfly +butterhead +butterier +butteries +butteriest +butterine +butteriness +buttering +butteris +butterjags +butterless +butterlike +buttermaker +buttermaking +butterman +buttermilk +buttermonger +buttermouth +butternose +butternuts +butterroot +butters +butterscotch +butterweed +butterwife +butterwoman +butterworker +butterwort +butterworth +butterwright +buttery +buttes +buttfuck +butthead +buttiaux +butting +buttinsky +buttkrieg +buttle +buttock +buttocked +buttocker +buttocks +buttockth +buttom +button +buttonand +buttonball +buttonbur +buttonbush +buttondown +buttoned +buttoner +buttoners +buttonhold +buttonholder +buttonholed +buttonholer +buttonholes +buttonholing +buttonhook +buttonin +buttoning +buttonless +buttonlike +buttonmold +buttons +buttonwillow +buttonwood +buttony +buttressed +buttresses +buttressing +buttressless +buttresslike +buttrey +butts +buttstock +buttter +buttwoman +buttwood +butty +buttyman +buttzville +butu +butuan +butuanon +butuantausug +butun +butung +butuningi +butura +bututs +butvich +butylamine +butylation +butylene +butylic +butyls +butyn +butyne +butyr +butyraceous +butyral +butyrically +butyrin +butyrinase +butyrometer +butyrometric +butyrone +butyrous +butyrousness +butyryl +butz +butzer +buug +buuuurn +buwal +buwan +buweyeu +buxa +buxaceae +buxaceous +buxbaumia +buxerry +buxomer +buxomest +buxomly +buxomness +buxton +buxus +buya +buyable +buyaka +buyang +buyanggemo +buyer +buyers +buyest +buyeth +buyett +buyi +buyides +buying +buyo +buyout +buyoya +buyrite +buys +buyu +buyuk +buzaba +buzancic +buzane +buzanic +buzau +buzby +buzell +buzi +buzite +buzof +buzylene +buzz +buzzanca +buzzard +buzzardlike +buzzardly +buzzards +buzzardsbay +buzzed +buzzell +buzzer +buzzerphone +buzzers +buzzes +buzzgloak +buzzi +buzzies +buzzing +buzzingly +buzzle +buzzwig +buzzword +buzzwords +buzzzz +bvalued +bveri +bviri +bvukoo +bvumba +bvworks +bwaba +bwadji +bwagira +bwaidoga +bwaidoka +bwaka +bwakera +bwal +bwamu +bwana +bwanas +bwang +bwareba +bwari +bwatnapni +bwato +bwatoo +bwatvenua +bwavado +bwave +bwazza +bwela +bwenase +bwende +bwian +bwile +bwirege +bwisha +bwisi +bwissi +bwol +bwoncwai +bwool +bworo +bwsngen +bwsun +bwuya +bxfm +byabe +byacrocodile +byam +byangsi +byant +byar +byard +byarnotas +byars +byatt +bybee +byblidaceae +byblis +bycenko +bycoket +byczko +bydeley +bydesh +bydgoszcz +byebye +byee +byeelection +byegaein +byelaw +byelections +byelines +byelinskaya +byelohs +byelorussia +byelorussian +byeman +byen +byep +byepath +byer +byerite +byerlite +byers +byes +byestreet +byesville +byetri +byeworker +byeworkman +byfield +byfleet +byford +bygane +byganging +bygo +bygoing +bygones +bygraves +byhalia +byhand +byheart +byington +bykowy +bylas +bylawman +bylaws +byles +byli +bylina +bylined +byliner +byliners +bylines +bylining +byname +bynedestin +byner +byng +bynin +bynum +bynunsky +byoki +byon +byordinar +byordinary +byous +byously +bypass +bypassed +bypasser +bypasses +bypassing +bypast +bypaths +byplay +byplays +bypnotism +bypro +byproduct +byproducts +byran +byrant +byrd +byrdstown +byre +byreman +byres +byrewards +byrewoman +byrgesen +byrkit +byrlaw +byrlawman +byrne +byrnedale +byrnes +byrnie +byroads +byromville +byron +byroncenter +byronesque +byronian +byroniana +byronically +byronics +byronish +byronism +byronist +byronite +byronize +byroom +byrre +byrrus +byrska +byrsonima +byrthynsak +bysacki +byselecting +bysen +bysimulation +bysmalith +byspell +byssa +byssaceous +byssal +byssiferous +byssin +byssine +byssinosis +byssogenous +byssoid +byssolite +byssus +bystanders +bystreet +bystreets +bystrica +byte +bytebybyte +bytecatcher +bytemark +byteorder +bytepecker +bytes +bytesexual +bytez +byth +bythebook +bytime +bytownite +bytownitite +byumba +byung +byval +byvince +bywalk +bywalker +bywater +byways +bywoner +byword +bywords +bywork +byzantian +byzantinism +byzantinize +bzedux +bzns +bzyb +caaa +caabe +caac +caaguazu +caam +caama +caaming +caan +caapeba +caatinga +caazapa +caba +cabaan +caback +cabaho +cabal +cabala +cabalas +cabalassou +cabaletta +cabalhim +cabalic +cabalism +cabalist +cabalistic +cabalistical +cabalists +caballe +caballed +caballer +caballero +caballeros +caballine +caballing +caballo +cabals +caban +cabanas +cabanatit +cabanatuan +cabaniss +cabanne +cabaran +cabaret +cabarets +cabas +cabaset +cabasset +cabassou +cabazon +cabbaged +cabbagehead +cabbages +cabbagewood +cabbageworm +cabbaging +cabbagy +cabbala +cabbalah +cabbalahs +cabbalas +cabber +cabbie +cabbies +cabble +cabbler +cabbon +cabby +cabda +cabdriving +cabe +cabec +cabeca +cabecar +cabecciras +cabeese +cabellerote +cabello +caber +cabernet +cabers +cabery +cabestro +cabeza +cabezas +cabezon +cabichi +cabilliau +cabin +cabinari +cabincreek +cabinda +cabined +cabinet +cabinetmaker +cabinets +cabinetwork +cabining +cabinjohn +cabins +cabio +cabirean +cabiri +cabiria +cabirian +cabiric +cabiritic +cabishi +cabiuari +cabiyari +cable +cabled +cablegram +cablegrams +cableless +cablelike +cableman +cabler +cables +cablet +cablets +cableway +cableways +cabling +cabman +cabmen +cabo +cabob +cabobs +caboc +caboceer +cabochon +cabochons +cabocle +cabomba +cabombaceae +caboodle +caboodles +cabook +cabool +caboose +cabooses +caborojo +caboshed +cabot +cabotage +cabra +cabrai +cabrais +cabral +cabrales +cabras +cabree +cabrera +cabrerite +cabretta +cabreuva +cabrilla +cabriole +cabriolet +cabriolets +cabrit +cabs +cabstand +cabstands +cabul +cabureiba +cabuya +caca +cacador +cacahue +cacajao +cacalia +cacaloxtepec +cacam +cacamo +cacan +cacana +cacanthrax +cacaos +cacara +cacataibo +cacatua +cacatuidae +cacatuinae +caccabis +cacche +cacchiquel +cacciatore +caceres +cacesthesia +cacesthesis +cacfs +cacgia +cacha +cachaca +cachalote +cachalots +cachar +cacharari +cachari +cachaza +cache +cachectic +cached +cachemia +cachemic +cacheo +cachepot +cachepots +cachero +caches +cachet +cacheted +cacheting +cachets +cacheu +cachexia +cachexic +cachexy +cachibo +cachibou +cachin +cachinate +caching +cachinnate +cachinnation +cachinnator +cachinnatory +cacho +cacholong +cachomashiri +cachou +cachrys +cachucha +cachuena +cachunde +cachuy +cacibo +cacicus +cacidrosis +cacif +cacilda +cacilia +cacilie +caciocavallo +cacique +caciques +caciqueship +caciquism +cack +cackerel +cackled +cackler +cacklers +cackles +cackling +cacm +cacoal +cacocholia +cacochroia +cacochylia +cacochymia +cacochymic +cacochymical +cacochymy +cacocnemia +cacodaemonic +cacodemon +cacodemonia +cacodemoniac +cacodemonial +cacodemonic +cacodemonize +cacodontia +cacodorous +cacodoxian +cacodoxical +cacodoxy +cacodyl +cacodylate +cacodylic +cacoeconomy +cacoenthes +cacoepist +cacoepistic +cacoepy +cacoethes +cacoethic +cacogalactia +cacogastric +cacogenesis +cacogenic +cacogenics +cacogeusia +cacoglossia +cacographer +cacographic +cacography +cacolice +cacology +cacomagician +cacomelia +cacomistle +cacomixl +cacomixle +cacomorphia +caconychia +caconym +caconymic +cacoon +cacoopy +cacopathy +cacophonia +cacophonic +cacophonical +cacophonies +cacophonize +cacophonous +cacoplasia +cacoplastic +cacopoulos +cacoproctia +cacorhythmic +cacorrhachis +cacorrhinia +cacosmia +cacospermia +cacostomia +cacothansia +cacotheline +cacothesis +cacothymia +cacotrichia +cacotrophia +cacotrophic +cacotrophy +cacotype +cacoullos +cacoxene +cacoxenite +cacozeal +cacozealous +cacozyme +cacrahongos +cactaceae +cactaceous +cactales +cactiform +cactoid +cactus +cactuses +cacua +cacuminal +cacuminate +cacumination +cacuminous +cacur +cacuta +cadabra +cadalene +cadamba +cadaster +cadastral +cadastration +cadastre +cadaveric +cadaverine +cadaverize +cadaverous +cadaverously +cadavers +cadbait +cadbit +cadbote +cadd +caddice +caddiced +caddie +caddied +caddies +caddised +caddises +caddish +caddishly +caddishness +caddle +caddo +caddoan +caddogap +caddomills +caddow +caddy +caddying +cade +cadeau +cadell +cadelle +cadena +cadenat +cadence +cadenced +cadences +cadencies +cadencing +cadency +cadential +cadenzas +cader +caderas +caderousse +cades +cadet +cadetcy +cadets +cadetship +cadette +cadettes +cadew +cadeza +cadge +cadged +cadger +cadgers +cadges +cadgily +cadginess +cadging +cadgy +cadi +cadieux +cadilesker +cadillac +cadillacs +cadillet +cadinene +cadis +cadism +cadiueio +cadiz +cadjan +cadle +cadlett +cadlock +cadman +cadmean +cadmia +cadmic +cadmide +cadmiferous +cadmium +cadmiumize +cadmiums +cadmopone +cadmus +cadoe +cadogan +cadoret +cadorino +cados +cadott +cadrans +cadre +cadres +cads +cadshare +cadtools +cadua +caduac +caduca +caducary +caducean +caducecei +caducei +caduceus +caduciaries +caduciary +caducibranch +caducicorn +caducity +caducous +cadus +caduve +cadwal +cadwalader +cadwallader +cadweed +cadwell +cadyville +cadz +cadzow +caeca +caecal +caecally +caecectomy +caeciform +caecilia +caeciliae +caecilian +caeciliidae +caecitis +caecocolic +caecostomy +caecotomy +caecum +caedmonian +caedmonic +caeli +caelian +caelometer +caelum +caelus +caen +caenazzo +caenda +caenogaea +caenogaean +caenogenesis +caenolestes +caenostylic +caenostyly +caeoma +caep +caerphilly +caesalpinia +caesar +caesarcypher +caesardom +caesare +caesarea +caesarean +caesareanize +caesareans +caesarian +caesarism +caesarist +caesarists +caesarize +caesarotomy +caesarship +caesious +caesium +caespitose +caester +caesura +caesurae +caesural +caesuras +caesuric +caeu +cafard +cafarell +cafe +cafeneh +cafenet +cafer +cafes +cafeteria +cafeterias +cafeza +caffa +caffarel +caffeate +caffeic +caffein +caffeina +caffeine +caffeines +caffeinic +caffeinism +caffeins +caffeism +caffeol +caffeone +cafferty +caffetannic +caffetannin +caffino +caffiso +caffle +caffoline +caffoy +caffre +caffrey +caffry +cafh +cafiero +cafiz +cafre +cafrms +caftan +caftaned +caftans +cafuini +cafundo +caga +cagaba +cagaloglu +cagayan +cagayancillo +cagayano +cagayanon +cage +caged +cageful +cageless +cagelike +cageling +cagelings +cageman +cager +cagers +cages +cagester +cagework +cageyness +caggy +cagie +cagier +cagiest +cagily +caginess +caging +cagit +caglayan +cagle +cagliare +cagliari +cagliaritan +cagliostro +cagmag +cagn +cagney +cagua +caguan +caguas +cagy +cahaner +cahenslyism +cahier +cahill +cahincic +cahita +cahivo +cahiz +cahnite +cahokia +cahone +cahoon +cahoots +cahot +cahotage +cahow +cahra +cahrlang +cahto +cahuac +cahuapa +cahuapana +cahuapanan +cahuapanas +cahuarano +cahuilla +cahuinari +cahusac +cahuzac +caia +caiabi +caiaphas +caic +caicaro +caicedo +caickle +caicos +caid +caie +caighn +cailcedra +caillard +cailleach +caillon +cailloy +cailou +caima +caimacam +caimakam +caimans +caimitillo +caimito +cain +cainan +caine +caines +caingang +caingua +cainian +cainish +cainism +cainite +cainitic +cainrs +cains +cainsville +caint +cainy +caip +caiphas +caique +caiquejee +cair +cairba +caird +cairene +cairistiona +cairnbrook +cairncross +cairned +cairnes +cairney +cairngorm +cairngorum +cairns +cairny +cairo +cairon +caison +caisson +caissoned +caissons +cait +caitanyas +caite +caithness +caitiff +caitiffs +caitlin +caitrin +caits +caius +caiwa +caixa +caixao +cajal +cajamarca +cajan +cajanus +cajaput +cajaputs +cajas +cajatambo +cajeli +cajeput +cajole +cajoled +cajolement +cajolements +cajoler +cajoleries +cajolers +cajolery +cajoles +cajoling +cajolingly +cajon +cajonos +cajuela +cajun +cajuns +cajuput +cajuputene +cajuputol +caka +cakarevic +cakaudrove +cakavci +cakchikel +cakchiquel +cake +cakebox +cakebread +caked +cakehole +cakehouse +cakemaker +cakemaking +caker +cakes +cakette +cakewalk +cakewalked +cakewalker +cakewalks +cakey +cakfem +cakier +cakiest +cakile +caking +cakke +caky +cala +calaba +calabar +calabari +calabasas +calabash +calabashes +calabaza +calabazilla +calaber +calaboose +calabooses +calabrasella +calabrese +calabria +calabrian +calabro +calacala +caladan +calade +caladium +caladiums +calafita +calah +calais +calalu +calamanco +calamander +calamansi +calamar +calamara +calamari +calamariales +calamarian +calamarians +calamaries +calamarioid +calamaroid +calamars +calamary +calambac +calambour +calamian +calamiano +calamiferous +calamiform +calaminary +calamine +calamines +calamint +calamintha +calamistral +calamistrum +calamite +calamitean +calamites +calamities +calamitoid +calamitously +calamity +calamondin +calamopitys +calamus +calanasan +calandars +calander +calando +calandra +calandria +calandridae +calandrinae +calandrinia +calangay +calantas +calanthe +calapite +calappa +calappidae +calarasi +calas +calascione +calash +calathea +calathian +calathidium +calathiform +calathiscus +calathus +calatrava +calatugan +calaverite +calavos +calbayog +calbroben +calc +calcaneal +calcaneum +calcaneus +calcar +calcarate +calcarea +calcareously +calcaria +calcariform +calcarine +calcasieu +calced +calceiform +calcemia +calceolaria +calceolate +calces +calchaqui +calchaquian +calcic +calciclase +calcicole +calcicolous +calcicosis +calciferol +calciferous +calcific +calcified +calcifies +calciform +calcifugal +calcifuge +calcifugous +calcifying +calcigenous +calcigerous +calcimeter +calcimine +calcimined +calciminer +calcimines +calcimining +calcinable +calcination +calcinatory +calcined +calciner +calcines +calcining +calcinize +calcipexy +calciphile +calciphilia +calciphilous +calciphobe +calciphobous +calciphyre +calciprivic +calcisponge +calcites +calcitic +calcitrant +calcitrate +calcitration +calcium +calciums +calcivorous +calclough +calcographer +calcographic +calcography +calcol +calcomp +calcote +calcrete +calcsinter +calcspar +calculably +calculagraph +calculary +calculate +calculated +calculatedly +calculates +calculating +calculation +calculations +calculative +calculator +calculators +calculatory +calculiform +calculist +calculous +calculus +calculuses +calcutator +calcutta +calcydon +caldas +caldean +caldeira +calden +calder +caldera +calderas +calderium +caldero +calderon +calderoni +caldicot +caldicott +caldoche +caldron +caldrons +caldwalder +caldwell +cale +calean +caleb +caleba +calebasses +caleche +caledonia +caledonian +caledonians +caledonie +caledonite +calefacient +calefaction +calefactive +calefactor +calefactory +calelectric +calembour +calemes +calendal +calendar +calendared +calendarer +calendarial +calendarian +calendaric +calendaring +calendars +calender +calendered +calenderer +calendering +calenders +calendezy +calendric +calendry +calends +calendula +calendulas +calendulin +calentural +calenture +calenturist +calepin +calequisse +calera +calescence +calescent +caleta +calexico +calf +calfa +calfan +calfbound +calfhood +calfish +calfkill +calfless +calflike +calfling +calfs +calfskins +calgagni +calhan +calhern +calhoun +calhouncity +calhounfalls +calia +caliana +caliban +calibanism +caliber +calibered +calibers +calibogus +calibos +calibrated +calibrates +calibrating +calibration +calibrations +calibrator +calibrators +calibred +calibres +calibugan +caliburn +caliburno +calicate +calices +caliche +caliciform +calicle +calico +calicoback +calicoed +calicoes +calicorock +calicos +calicular +caliculate +calicut +calid +calida +calidity +calidonia +caliduct +caliente +calif +califate +califon +califoria +california +californian +californians +californicus +californite +califs +caliga +caligari +caligated +caligation +caliginous +caliginously +caligo +caligula +caliman +calimera +calimeris +calimesa +calinago +calinda +caling +calinut +calio +caliological +caliologist +caliology +calion +caliope +calipash +calipatria +calipee +calipered +caliperer +calipering +calipers +caliphal +caliphates +caliphet +caliphs +caliphship +calipso +calir +calis +calista +calistheneum +calisthenics +calistoga +calistro +calita +calite +calithness +calitz +caliver +calix +calixe +calixtin +calixtus +calk +calkage +calked +calker +calkers +calkin +calking +calkins +calks +call +calla +callable +callaert +callaghan +callahan +callahans +callahuaya +callainite +callam +callan +callanan +callander +callands +callant +callao +callaria +callas +callaudit +callawalla +callaway +callay +callback +callbacks +callboy +callboys +calle +called +calledst +calleia +calleja +callejas +callejo +callela +callem +callendar +callender +callensburg +caller +calleria +callerid +callers +callery +calles +callest +callet +calleta +calleth +callets +calley +callg +callgraf +calli +callianassa +calliandra +callicarpa +callicebus +callicoon +callid +callida +callidity +callidness +callie +calligrapha +calligrapher +calligraphic +calligraphy +calliham +calling +callings +callionymus +calliopes +calliophone +calliopsis +calliper +calliperer +calliphora +calliphorid +calliphorine +callipygia +callipygian +callipygous +callirrhoe +callis +callisaurus +callisection +callisteia +callistemon +callistephus +callisto +callistratus +callithrix +callithump +callitriche +callitris +callitype +callo +calloh +calloo +callos +callosal +callose +callosities +callosity +callosum +callous +calloused +callouses +callousing +callously +callousness +calloux +callovian +callow +calloway +callower +callowest +callowman +callowness +callpeople +calls +callsnop +callto +calltrak +callum +calluna +callused +calluses +callusing +cally +callynteria +calm +calmant +calmar +calmative +calmed +calmejane +calmenson +calmer +calmest +calmierer +calming +calmingly +calmley +calmly +calmness +calmon +calms +calmy +calneh +calno +calo +calocarpum +calochortus +calode +calodemon +calogere +calogero +calography +calomba +calomee +calomel +calomels +calomorphic +calonectria +calonyction +caloocan +calool +calophyllum +calopogon +calor +calorescence +calorescent +caloric +calorically +caloricity +calorics +calories +calorific +calorifical +calorifics +calorifier +calorify +calorigenic +calorimeter +calorimeters +calorimetric +calorimetry +calorimotor +caloris +calorisator +calorist +calorite +calorize +calorizer +calory +calosoma +calote +calotermes +calotermitid +calothrix +calotte +calotype +calotypic +calotypist +calow +caloyer +calp +calpac +calpack +calpacked +calpacs +calpe +calpoly +calpulli +calpurnia +calrissian +cals +calshp +calstate +calstatela +caltaviano +caltech +calten +caltha +calthness +calthrop +calthrops +caltrap +caltraps +caltrider +caltrop +caltrops +calucci +calude +caludicate +calumba +calumet +calumetcity +calumets +caluminiator +calumniated +calumniates +calumniating +calumniation +calumniative +calumniator +calumniators +calumniatory +calumnies +calumnious +calumniously +calumny +calusa +calutron +caluya +caluyanen +caluyanhon +caluyanun +calva +calvados +calvaria +calvarium +calvary +calvatia +calve +calved +calvelli +calver +calvera +calvero +calvert +calvertcity +calverton +calvery +calves +calvet +calveth +calvin +calving +calvinia +calvinian +calvinism +calvinistic +calvinists +calvinize +calvish +calvities +calvity +calvo +calvous +calws +calx +calxes +calycanth +calycanthemy +calycanthine +calycanthus +calycate +calyceraceae +calyces +calyciferous +calycifloral +calyciform +calycinal +calycine +calycle +calycled +calycocarpum +calycoid +calycoideous +calycophora +calycophorae +calycophoran +calycozoa +calycozoan +calycozoic +calycozoon +calycular +calyculate +calyculated +calycule +calyculus +calydon +calydonian +calymene +calymma +calyphyomy +calypsist +calypso +calypsoes +calypsonian +calypsos +calypter +calypterae +calyptra +calyptraea +calyptrata +calyptratae +calyptrate +calyptriform +calyptro +calyptrogen +calyptrogyne +calystegia +calyx +calyxes +calzada +cama +camaca +camacan +camacho +camagon +camaguey +camail +camailed +camaiura +camak +camala +camalal +camaldolese +camaldolite +camaldule +camaldulian +camalote +caman +camanau +camanche +camansi +camara +camaracota +camaracoto +camarade +camaraderie +camarasaurus +camardiel +camargo +camarilla +camarillo +camarines +camarista +camarque +camas +camass +camassia +camasvalley +camata +camatina +camaxtli +camb +camba +cambaceres +camball +cambalo +cambanis +cambarus +cambaye +cambeba +cambela +cambell +cambered +cambering +cambers +camberwell +cambeva +cambia +cambial +cambiform +cambism +cambist +cambistry +cambium +cambiums +camblin +cambo +cambodia +cambodian +cambodians +cambodja +cambogia +camboja +camboose +cambra +cambre +cambreau +cambrel +cambresine +cambria +cambricleaf +cambrics +cambridge +cambuca +cambuscan +camby +cambyuskan +camcollect +camden +camdenpoint +camdenton +came +cameahwait +cameist +camel +camela +camelback +cameleer +cameleers +camelia +camelias +camelid +camelidae +camelina +cameline +camelish +camelishness +camelkeeper +camella +camellia +camelliaceae +camellias +camellike +camellin +camellus +camelman +cameloid +cameloidea +camelopardid +camelopards +camelopardus +camelot +camelry +camels +camelus +camembert +camenae +camenbert +camenes +cameoed +cameograph +cameography +cameoing +cameos +camer +camera +cameral +cameralism +cameralist +cameralistic +camerano +camerapeople +cameras +camerata +camerate +camerated +cameration +camerier +camerija +camerina +camerinidae +camerist +camerlingo +cameron +cameronian +cameronmills +cameroon +cameroonian +cameroonians +cameroons +camest +camestres +camet +camey +cami +camicie +camiguin +camil +camila +camile +camileroi +camilia +camilio +camilla +camille +camilleri +camillo +camillri +camillucci +camillus +camilo +camino +camion +camirand +camisade +camisado +camisard +camise +camisea +camisia +camisole +camisoles +camlet +camleteen +cammal +cammarum +cammed +cammell +cammermans +cammi +cammie +cammock +cammocky +cammy +camnet +camnettwo +camoes +camoflage +camoflaged +camoiras +camolli +camomile +camomiles +camon +camonayan +camonte +camoodi +camoodie +camopi +camorra +camorrism +camorrist +camorrista +camorta +camota +camotes +camotla +camouflage +camouflaged +camouflager +camouflagers +camouflages +camouflaging +camp +campa +campagna +campagne +campagnol +campaign +campaigned +campaigner +campaigners +campaigning +campaigns +campalagian +campana +campanadas +campanaro +campane +campanella +campanero +campania +campanian +campaniform +campanile +campaniles +campanili +campanilla +campanini +campanist +campanistic +campanologer +campanology +campanula +campanulales +campanular +campanularia +campanulatae +campanulate +campanulated +campanulous +campara +campaspe +campbell +campbellhall +campbellhill +campbellism +campbellite +campbellton +campbelltown +campbllbks +campcraft +campcreek +campcrook +campdix +campdouglas +campe +campeau +campeba +campeche +camped +campen +campenella +campephagine +campephilus +camper +campers +campesino +campesinos +campestral +campestrial +campestrian +campestrine +campfield +campfight +campfire +campfires +campgrounds +campgrove +camphane +camphanic +camphanone +camphanyl +camphene +camphill +camphine +camphire +campho +camphoid +camphol +campholic +campholide +campholytic +camphor +camphorate +camphorated +camphorates +camphorating +camphoric +camphorize +camphorone +camphoronic +camphoroyl +camphors +camphorwood +camphory +camphoryl +camphylene +campi +campidanese +campier +campiest +campignian +campily +campimeter +campimetry +campinas +campine +campiness +camping +campings +campins +campion +campionhall +campjoann +camplake +cample +camplejeune +camplone +campmaster +campmeeker +campo +campobello +campodea +campodeid +campodeidae +campodeiform +campodeoid +campody +campoli +camponotus +campoo +camporee +camporees +campos +camposana +camppoint +camps +campshed +campshedding +campsheeting +campsherman +campshot +campsites +campstool +campstools +campti +camptodrome +campton +camptonite +camptonville +camptosorus +camptown +campus +campuses +campusses +campuswide +campverde +campward +campwood +campy +campylite +campylodrome +campylometer +camrdiel +cams +camsa +camser +camshach +camshachle +camshaft +camshafts +camshot +camstane +camstone +camtr +camucones +camuhi +camuki +camuning +camuru +camus +camused +camuy +camwood +cana +canaan +canaanite +canaanites +canaanitess +canaanitic +canaanitish +canaba +canacee +canacintra +canada +canadensis +canadian +canadianism +canadianisms +canadianize +canadians +canadine +canadite +canadol +canady +canadys +canaigre +canaille +canajoharie +canajong +canakin +canakkale +canaklar +canal +canala +canalage +canalboat +canale +canaled +canalejas +canales +canalfulton +canali +canalicular +canaliculate +canaliculi +canaliculus +canaliferous +canaliform +canaling +canalise +canalization +canalize +canalized +canalizes +canalizing +canalled +canaller +canallers +canalling +canalman +canalou +canalpoint +canals +canalside +canamanti +canamari +canamary +canamo +cananaean +cananari +canandaigua +canande +cananea +cananga +canangium +canape +canapes +canapina +canar +canard +canards +canarella +canarese +canari +canarian +canarias +canaries +canarin +canariote +canarium +canarsee +canary +canaseraga +canasta +canastas +canaster +canastota +canaut +canavali +canavalia +canavalin +canavan +canaveral +canbe +canberra +canbnot +canby +cancan +cancans +cancel +cancela +cancelable +cancelation +canceled +canceleer +canceler +cancelers +canceling +cancell +cancellarian +cancellated +cancellation +cancellative +cancelled +canceller +cancelli +cancellieri +cancelling +cancellous +cancellus +cancelment +cancels +cancer +cancerate +canceration +cancerdrops +cancered +cancerigenic +cancerism +cancerophobe +cancerously +cancerroot +cancers +cancerweed +cancerwort +canch +canchalagua +canchi +cancion +cancle +cancri +cancrid +cancriform +cancrinite +cancrisocial +cancrivorous +cancrizans +cancroid +cancrum +cancun +cand +canda +candace +candareen +candee +candeias +candelabra +candelabras +candelabrum +candelabrums +candelaria +candelario +candelia +candelilla +candelinc +candell +candent +candescence +candescent +candescently +candi +candia +candice +candida +candidacies +candidate +candidates +candidature +candidatures +candide +candider +candidest +candidiasis +candidly +candidness +candidnesses +candido +candids +candie +candied +candier +candies +candify +candiot +candiru +candis +candle +candleball +candlebeam +candleberry +candlebomb +candlebox +candled +candlefish +candleholder +candlelight +candlemaker +candlemaking +candlemas +candlenut +candlepin +candlepins +candlepower +candler +candlerent +candlers +candles +candleshine +candleshrift +candlestand +candlestick +candlesticks +candlewaster +candlewicks +candlewood +candlewright +candling +cando +candock +candollea +candor +candore +candors +candoshi +candour +candours +candoxi +candra +candroy +canduaga +candy +candybarz +candyboy +candying +candyland +candymaker +candymaking +candyman +candys +candystick +candytuft +candyweed +cane +caneadea +canebrake +canebrakes +caned +canedo +canefields +caneghem +canehill +canel +canela +canelike +canella +canellaceae +canellaceous +canelli +canelo +canelones +canendiyu +caneology +canepa +canephor +canephore +canephoros +canephroi +caner +caners +canes +canescence +canescent +canette +canetto +canevalley +caneware +canewares +canewise +canework +caney +caneyville +canez +canfield +canfieldite +canfil +canford +canful +canfuls +cang +cangaceiro +cangaceiros +cangaco +cangan +cangapeba +cangia +cangin +cangle +cangler +cangonji +cangue +cangues +canham +canhoop +canichana +canichanan +canicola +canicula +canicular +canicule +canid +canidae +canidia +canille +canillo +caninal +caninde +canine +canines +caning +caniniform +caninity +canino +caninus +canio +canioned +canions +canipaan +canisiana +canistel +canisteo +canister +canisters +canistota +canities +canjac +canjava +canjilon +cank +canker +cankerberry +cankerbird +cankereat +cankered +cankeredly +cankeredness +cankerflower +cankering +cankerous +cankerroot +cankers +cankerweed +cankerworm +cankerworms +cankerwort +cankery +cankiri +canklin +cankuzo +canlaon +canmaker +canmaking +canman +canmer +cannabic +cannabin +cannabine +cannabinol +cannabis +cannabises +cannabism +cannaceae +cannaceous +cannach +cannalling +cannanore +cannas +cannataro +canned +canneh +cannelated +cannelburg +cannelcity +cannell +cannelloni +cannelon +cannelton +cannelure +cannelured +cannequin +canner +canneries +canners +cannes +cannet +cannibal +cannibalean +cannibalic +cannibalish +cannibalism +cannibality +cannibalize +cannibalized +cannibalizes +cannibally +cannibals +cannie +cannier +canniest +cannikin +cannily +canniness +canning +cannings +cannisters +cannoe +cannon +cannonade +cannonaded +cannonades +cannonading +cannonball +cannonballed +cannonballs +cannonbeach +cannoned +cannoneer +cannoneering +cannoneers +cannonfalls +cannonia +cannonical +cannoning +cannonism +cannonproof +cannonries +cannonry +cannons +cannonsburg +cannonville +cannot +cannotarzan +cannstatt +cannula +cannulae +cannular +cannulas +cannulate +cannulated +cano +canoa +canobie +canoe +canoed +canoeing +canoeiro +canoeiros +canoeist +canoeists +canoeload +canoeman +canoes +canoewood +canogapark +canon +canoncito +canoncity +canones +canoness +canonical +canonicality +canonicalize +canonically +canonicals +canonicate +canonicity +canonics +canonise +canonist +canonistic +canonistical +canonists +canonizant +canonization +canonize +canonized +canonizer +canonizes +canonizing +canonlike +canonry +canons +canonsburg +canonship +canoodle +canoodler +canopic +canopied +canopies +canopus +canopy +canopying +canorous +canorously +canorousness +canossa +canova +canovanas +canreply +canroy +canroyer +cans +cansful +cansino +cansley +canso +canst +cant +canta +cantab +cantabank +cantabia +cantabile +cantabri +cantabria +cantabrian +cantabrize +cantafora +cantala +cantalamessa +cantalite +cantalope +cantalopes +cantaloup +cantaloupes +cantankerous +cantar +cantara +cantarelli +cantaro +cantata +cantatas +cantate +cantation +cantative +cantatore +cantatory +cantatrice +cantboard +canted +canteens +cantefable +cantel +canter +canterburian +cantered +canterer +cantering +canters +canterville +canthal +cantharellus +cantharidae +cantharidal +cantharidate +cantharides +cantharidian +cantharidin +cantharidism +cantharidize +cantharis +cantharus +canthectomy +canthi +canthitis +cantholysis +canthoplasty +canthotomy +canthus +cantic +canticles +cantico +cantil +cantilan +cantilena +cantilene +cantilever +cantilevered +cantilevers +cantillate +cantillation +cantillon +cantily +cantim +cantina +cantinas +cantiness +cantinflas +canting +cantingly +cantingness +cantion +cantish +cantles +cantlet +cantlie +canton +cantonal +cantonalism +cantoncenter +cantone +cantoned +cantoner +cantoni +cantoning +cantonment +cantonments +cantons +cantoon +cantor +cantoral +cantorian +cantoris +cantorous +cantors +cantorship +cantos +cantrall +cantrap +cantraps +cantred +cantref +cantrell +cantrick +cantril +cantrip +cantrips +cants +cantu +cantuacreek +cantus +cantwell +cantwise +canty +canuck +canuel +canun +canute +canuti +canutillo +canutt +canvas +canvasbacks +canvased +canvaser +canvases +canvaslike +canvasman +canvassed +canvasser +canvassers +canvasses +canvassing +canvassy +canway +cany +canyon +canyoncity +canyoncreek +canyondam +canyons +canyonville +canzon +canzona +canzonas +canzone +canzones +canzonet +canzoni +caoba +caodaism +caodaist +caolan +caos +caoutchouc +caoutchoucin +capabilites +capabilities +capability +capable +capableness +capabler +capablest +capably +capac +capacelli +capaciously +capacitances +capacitated +capacitates +capacitating +capacitation +capacitative +capacities +capacitively +capacitors +capacity +capades +capaldi +capanahua +capanapara +capanna +capanne +caparison +caparisoned +caparisoning +caparisons +caparra +capas +capax +capcase +cape +capecharles +caped +capefair +capel +capelan +capelet +capelets +capelin +capeline +capell +capella +capelle +capellet +capels +capemay +capemaypoint +capeneddick +capeporpoise +caperbush +capercaillie +capercally +capercut +capered +caperer +caperers +capering +caperingly +capernaism +capernaite +capernaitic +capernaitish +capernaum +capernoited +capernoitie +capernoity +capers +capersome +caperucita +caperwort +capes +capeskin +capetanos +capetian +capetonian +capeville +capevincent +capeweed +capewise +capework +capful +capfuls +caph +caphaitien +caphar +caphite +caphthorim +caphtor +caphtorim +caphtorims +capi +capias +capicha +capillaceous +capillaire +capillament +capillaries +capillarily +capillarity +capillation +capilliform +capillitial +capillitium +capillose +capindale +capintalan +capisano +capisen +capisterre +capistrate +capit +capitaine +capital +capitaldom +capitaled +capitalism +capitalist +capitalistic +capitalists +capitalize +capitalized +capitalizer +capitalizers +capitalizes +capitalizing +capitally +capitalness +capitals +capitan +capitane +capitani +capitano +capitate +capitated +capitatim +capitation +capitations +capitative +capitatum +capitel +capitellar +capitellate +capitellum +capito +capitol +capitola +capitolian +capitolium +capitols +capitonidae +capitoninae +capitoul +capitoulate +capitulant +capitular +capitularly +capitulary +capitulated +capitulates +capitulating +capitulation +capitulator +capitulatory +capituliform +capitull +capitulum +capivi +capiz +capiznon +capkin +caple +capless +caplin +caplinger +capmaker +capmakers +capmaking +capman +capmint +capnodium +capnoides +capnomancy +capobianco +capocchia +capodaglio +capodichino +capogi +capolicchio +capoliccio +capolo +capomo +capon +caponbridge +capone +caponier +caponization +caponize +caponized +caponizer +caponizes +caponizing +capons +caponsprings +caporal +capos +caposho +capostagno +capot +capote +capotes +capouch +capozzi +capp +cappadine +cappadocia +cappadocian +cappalino +capparis +capped +cappelenite +cappella +cappelli +capper +cappers +cappie +capping +cappings +capple +capps +cappy +capra +caprate +caprella +caprellidae +caprelline +capreol +capreolar +capreolary +capreolate +capreoline +capreolus +caprera +capretta +capri +capric +capriccetto +capricci +capriccio +capriccios +capriccioso +caprice +caprices +capricious +capriciously +capricornid +capricorns +capricornus +caprid +caprificate +caprificator +caprifig +caprifolium +capriform +caprigenous +caprimulgi +caprimulgine +caprimulgus +caprin +caprine +caprinic +capriola +capriole +caprioles +caprioli +capriolli +capriote +capriped +capripede +caprivi +caprizant +caproate +caprock +caproic +caproin +capromys +capron +caprone +capronic +capronyl +caproyl +capryl +caprylate +caprylene +caprylic +caprylin +caprylone +caprylyl +caps +capsa +capsaicin +capsella +capshaw +capsheaf +capshore +capsian +capsicin +capsicum +capsicums +capsid +capsidae +capsizal +capsized +capsizes +capsizing +capslock +capsrv +capstans +capstones +capsula +capsulae +capsular +capsulate +capsulated +capsulation +capsule +capsulectomy +capsuled +capsuler +capsules +capsuliform +capsuling +capsulitis +capsulize +capsulized +capsulizing +capsulotome +capsulotomy +capsumin +capt +captaculum +captain +captaincies +captaincook +captained +captainess +captaining +captainkirk +captainly +captainry +captains +captainship +captainships +captance +captans +captant +captation +caption +captioned +captioning +captionless +captions +captiously +captiousness +captiva +captivated +captivately +captivates +captivating +captivation +captivative +captivator +captivators +captivatrix +captive +captives +captivities +captivity +captlen +captors +captress +captts +capturable +capture +captured +capturer +capturers +captures +capturing +capuan +capuano +capucci +capuche +capuched +capuchin +capuchins +capucho +capucine +capul +capulen +capulet +capulin +capure +caput +caputa +caputo +capybaras +caquet +caqueta +caquetio +caquetion +caquetterie +caquinte +cara +carabaos +carabatsos +carabayo +carabeen +carabella +carabello +carabid +carabidae +carabidan +carabideous +carabidoid +carabin +carabineer +carabineros +carabini +carabinier +carabinieri +carabobo +caraboid +carabus +caracal +caracals +caracara +caracas +carack +caracol +caracole +caracoler +caracoles +caracoli +caracolite +caracoller +caracols +caracore +caract +caractacus +caracter +caracul +caraculs +caradhras +caradine +caradoc +carafe +carafes +caraffe +carafotes +caragana +carageen +caragiu +caragol +caraguata +carah +caraho +carahs +caraibe +caraipa +caraipi +caraja +carajas +carajos +carajura +caralie +carama +caramanta +caramba +carambola +carambole +caramel +caramelan +caramelen +caramelin +caramelize +caramelized +caramelizes +caramelizing +caramels +caramoussal +carancha +caranda +carandas +caranday +carane +caranfil +caranga +carangid +carangidae +carangoid +carangus +caranna +caranx +caranza +carapa +carapace +carapaced +carapaces +carapache +carapacho +carapacic +carapana +caraparana +carapato +carapax +carapichio +carapidae +carapine +carapo +carapus +carara +caras +caraspretas +carasseverin +carat +caratch +carate +carats +caratunk +caraunda +caravaggio +caravan +caravaned +caravaneer +caravaning +caravanist +caravanned +caravanner +caravans +caravansary +caravanserai +caravare +caravel +caravelli +caravels +caraways +caray +carayan +carazo +carbajal +carbamate +carbamic +carbamide +carbamido +carbamine +carbamino +carbamyl +carbanil +carbanilic +carbanilide +carbarn +carbarns +carbasus +carbazic +carbazide +carbazine +carbazole +carbazylic +carbeen +carbene +carberry +carbethoxy +carbethoxyl +carbett +carbides +carbimide +carbine +carbineer +carbineers +carbines +carbinol +carbinyl +carbo +carboazotine +carbodiimide +carbogelatin +carbohydrase +carbohydride +carbolate +carbolated +carbolic +carbolineate +carbolineum +carbolize +carboluria +carbolxylol +carbomethene +carbomethoxy +carbon +carbona +carbonaceous +carbonade +carbonado +carbonara +carbonari +carbonarism +carbonarist +carbonaro +carbonated +carbonates +carbonating +carbonation +carbonator +carbonators +carboncliff +carboncopys +carbondale +carbone +carboned +carbonell +carbonemia +carbonero +carbonhill +carboni +carbonide +carbonify +carbonimeter +carbonimide +carbonite +carbonitride +carbonizable +carbonize +carbonized +carbonizer +carbonizers +carbonizes +carbonizing +carbonka +carbonless +carbonneau +carbonnieux +carbonometer +carbonometry +carbonous +carbons +carbonuria +carbonylene +carbonylic +carbophilous +carbora +carboras +carbostyril +carboxide +carboxyl +carboxylase +carboxylate +carboyed +carboys +carbro +carbromal +carbuilder +carbuncle +carbuncled +carbuncles +carbuncular +carbungi +carburant +carburate +carburation +carburator +carbure +carburet +carburetant +carbureted +carbureting +carburetion +carburetors +carburets +carburetted +carburetting +carburettor +carburize +carburized +carburizer +carburizes +carburizing +carburometer +carby +carbyl +carbylamine +carcajou +carcake +carcanet +carcaneted +carcani +carcas +carcase +carcases +carcasses +carcavelhos +carceag +carcel +carcelage +carceral +carcerate +carceration +carcharhinus +carcharias +carchariid +carchariidae +carcharioid +carcharodon +carcharodont +carchemish +carchi +carcinemia +carcinogens +carcinoid +carcinology +carcinolysin +carcinolytic +carcinomas +carcinomata +carcinosis +carcoon +carcroft +card +cardaissin +cardale +cardamine +cardamoms +cardamon +cardamons +cardamum +cardamums +cardanic +cardassian +cardassians +cardbase +cardboard +cardboardy +cardcase +cardcases +cardcheck +cardecu +carded +cardel +cardella +cardelli +cardemas +carden +cardenas +cardenio +cardenist +carder +carderock +carders +cardetti +cardew +cardfile +cardholder +cardholders +cardi +cardia +cardiacal +cardiacea +cardiacean +cardiacs +cardiagra +cardiagram +cardiagraph +cardiagraphy +cardial +cardialgia +cardialgy +cardiameter +cardianeuria +cardiant +cardiaplegia +cardiarctia +cardias +cardiasthma +cardiataxia +cardiatomy +cardiauxe +cardiazol +cardiectasis +cardiectomy +cardielcosis +cardiff +cardiform +cardigan +cardigans +cardiidae +cardile +cardille +cardin +cardinal +cardinalate +cardinalates +cardinale +cardinalic +cardinalis +cardinalism +cardinalist +cardinality +cardinally +cardinals +cardinalship +cardines +carding +cardings +cardington +cardioblast +cardiocarpum +cardiocele +cardioclasia +cardioclasis +cardiodynia +cardiogenic +cardiogram +cardiograms +cardiograph +cardiographs +cardiography +cardioids +cardiolith +cardiologic +cardiologies +cardiologist +cardiology +cardiolysis +cardiomegaly +cardiometer +cardiometric +cardiometry +cardioncus +cardioneural +cardionosus +cardiopathic +cardiopathy +cardiophobe +cardiophobia +cardioplasty +cardioplegia +cardioptosis +cardiorenal +cardioscope +cardiospasm +cardiotomy +cardiotonic +cardiotoxic +cardiss +cardissians +carditic +carditis +cardium +cardkey +cardlike +cardmaker +cardmaking +cardo +cardoba +cardol +cardon +cardona +cardoncillo +cardooer +cardoon +cardoons +cardophagus +cardoso +cardow +cardozo +cardplayer +cardpunch +cardreader +cardroom +cards +cardsharp +cardsharper +cardsharping +cardsharps +cardstock +carduaceae +carduaceous +carduelis +carduus +cardville +cardware +cardwell +cardy +care +careah +carecloth +cared +careditor +careenage +careened +careener +careeners +careening +careens +career +careered +careerer +careerers +careering +careeringly +careerist +careers +careful +carefuller +carefully +carefulness +carel +careless +carelessly +carelessness +carelia +carell +carella +carelli +carellis +caren +carena +carencro +carene +carenzio +carer +carers +cares +caresa +caresani +caress +caressa +caressant +caresse +caressed +caresser +caressers +caresses +caressing +caressingly +caressive +caressively +carest +caret +caretakers +caretaking +carete +careth +carets +caretta +carette +carevic +carevo +carew +careware +carewe +carex +carey +careywood +carezze +carfares +carfax +carfora +carfuffle +carful +carfuls +carga +cargador +cargados +cargese +cargher +cargill +cargnelli +cargo +cargocult +cargoose +cargos +cargraves +cargreaves +carhart +carhop +carhops +carhouse +carhuamayo +carhuaz +cari +caria +cariacine +cariacus +cariama +cariamae +carian +caribal +cariban +caribbean +caribbee +caribe +caribes +caribi +caribisi +caribous +carica +caricaceae +caricaceous +caricatura +caricatural +caricatured +caricatures +caricaturing +caricaturist +caricetum +carick +caricography +caricologist +caricology +caricom +caricous +carid +carida +caridad +cariddi +caridea +caridean +caridi +caridoid +caridomorpha +carie +caries +cariglia +carignan +carihona +carijona +caril +carillo +carillon +carillonneur +carillons +carilyn +carin +carina +carinae +carinal +carinaria +carinas +carinatae +carinate +carinated +carination +carine +caring +cariniana +cariniform +carinthia +carinthian +cario +carioca +cariocas +cariole +carioling +cariosity +cariotta +cariou +carious +cariousness +caripeta +caripuna +cariri +caririan +caris +carisma +cariso +carissa +caristopher +carita +caritative +caritiana +caritive +caritta +cariyo +cark +carking +carkingly +carkled +carkner +carl +carla +carland +carlberg +carlcorey +carldata +carle +carlebach +carlee +carleen +carlen +carlene +carleplace +carlerik +carless +carlet +carleton +carletta +carletti +carletto +carley +carli +carlie +carlier +carlile +carlin +carlina +carline +carling +carlings +carlini +carlino +carlinville +carlis +carlish +carlishness +carlisi +carlisle +carlism +carlist +carlita +carlito +carljunction +carlo +carload +carloading +carloadings +carloads +carlock +carloni +carlos +carlospotter +carlot +carlota +carlotta +carlotti +carlova +carlovingian +carlow +carls +carlsbad +carlsborg +carlsen +carlson +carlsson +carlstadt +carlsun +carlton +carlucci +carludovica +carlvesely +carly +carlye +carlyle +carlylean +carlyleian +carlylese +carlylesque +carlylian +carlylism +carlyn +carlynn +carlynne +carlysle +carm +carma +carmageddon +carmagnole +carmaker +carmakers +carmalum +carman +carmanians +carmardiel +carme +carmel +carmela +carmele +carmelia +carmelina +carmelita +carmelite +carmelitess +carmella +carmelle +carmello +carmelo +carmeloite +carmelvalley +carmen +carmencita +carmer +carmet +carmi +carmichael +carmichaels +carmichale +carmina +carminati +carminative +carminatives +carmine +carmines +carminette +carminic +carminite +carmita +carmites +carmo +carmody +carmoisin +carmon +carmona +carmondy +carmot +carnabuci +carnacian +carnacione +carnage +carnaged +carnages +carnahan +carnal +carnale +carnalism +carnalite +carnalities +carnality +carnalize +carnallite +carnally +carnalness +carnap +carnaptious +carnaria +carnarvon +carnassial +carnate +carnathan +carnationed +carnationist +carnations +carnauba +carnaubas +carnaubic +carnaubyl +carnaval +carnegia +carnegie +carnegiea +carnehan +carnelian +carnelianbay +carnelians +carneol +carneole +carneous +carnera +carnes +carnescecchi +carnesville +carneys +carnic +carnico +carnie +carnies +carniferous +carniferrin +carnifex +carnifices +carnificial +carniform +carnify +carnifying +carnijo +carniola +carniolan +carnival +carnivaler +carnivals +carnivora +carnivoral +carnivore +carnivores +carnivorism +carnivorous +carnogursky +carnose +carnosine +carnosity +carnot +carnotite +carnous +carnovsky +carny +caro +caroa +caroba +carobbio +carobs +caroche +carogalake +caroid +carol +carola +carolan +carolann +carole +carolean +caroled +carolee +caroleen +caroler +carolers +caroli +carolien +carolin +carolina +carolinas +caroline +carolines +caroling +carolinian +carolinians +carolis +caroljean +caroll +carolle +carolled +caroller +carollers +carolling +carollo +carols +carolstream +carolus +carolyn +carolyne +carolynn +carom +carombolette +caromed +caroming +caroms +caron +carona +carone +caroni +caronic +caroome +caroon +carotene +carotenes +carotenoid +carotenuto +carothers +carotic +carotid +carotidal +carotidean +carotids +carotin +carotinemia +carotinoid +carotins +caroubier +carousal +carousals +caroused +carousel +carousels +carouser +carousers +carouses +carousing +carousingly +carpaine +carpal +carpale +carpalia +carpals +carpathian +carpe +carped +carpel +carpellary +carpellate +carpels +carpena +carpent +carpentaria +carpenter +carpenteria +carpentering +carpenters +carpentier +carpentry +carper +carpers +carpet +carpetbag +carpetbagged +carpetbagger +carpetbagism +carpetbags +carpetbeater +carpeted +carpeting +carpetlayer +carpetless +carpetmaker +carpetmaking +carpetmonger +carpets +carpetweb +carpetweed +carpetwork +carpetwoven +carpholite +carphology +carphophis +carpi +carpid +carpidium +carpincho +carping +carpingly +carpings +carpinteria +carpintero +carpinus +carpio +carpiodes +carpitis +carpium +carplake +carpocace +carpocalypse +carpocapsa +carpocarpal +carpocephala +carpocerite +carpocratian +carpodacus +carpodetus +carpogam +carpogamy +carpogenic +carpogenous +carpogone +carpogonial +carpogonium +carpoidea +carpolite +carpolith +carpological +carpologist +carpology +carpomania +carpool +carpopedal +carpophaga +carpophagous +carpophore +carpophyll +carpophyte +carpopodite +carpopoditic +carpoptosia +carpoptosis +carports +carpos +carposperm +carpospore +carposporic +carposporous +carpostome +carps +carpus +carquaise +carr +carrabelle +carrack +carracks +carraclough +carradine +carraga +carrageenan +carrageenin +carralaga +carran +carranza +carrapicho +carrara +carraran +carraro +carras +carrascal +carrasco +carraway +carrboro +carreau +carree +carrefour +carrell +carrells +carrels +carren +carrera +carreras +carretera +carrey +carri +carriable +carriacon +carriacou +carriage +carriageable +carriageful +carriageless +carriages +carriageway +carribean +carricart +carrick +carridine +carrie +carried +carrier +carriere +carriermills +carriers +carries +carriest +carrieth +carrigan +carril +carrilho +carrillo +carrin +carrington +carriole +carrions +carrissa +carritch +carritches +carriwitchet +carrizal +carrizo +carrizozo +carrmtce +carroca +carroch +carrol +carroll +carrollite +carrolls +carrollton +carrolltown +carrom +carromed +carroming +carroms +carron +carronade +carrot +carrotage +carroter +carrothers +carrotier +carrotiest +carrotiness +carrots +carrottop +carrotweed +carrotwood +carroty +carrousel +carrousels +carrow +carrsville +carruthers +carry +carryall +carryalls +carryboard +carryed +carrying +carryings +carryon +carryons +carryout +carryouts +carryovers +carrys +carrytale +cars +carsafli +carse +carsen +carshalton +carshena +carshop +carsick +carsickness +carslisle +carsmith +carson +carsoncity +carsons +carsonville +carsta +carstair +carstairs +carsten +carstens +carstensen +carswell +cart +carta +cartable +cartaceous +cartage +cartagena +cartages +cartago +cartaret +cartas +cartboot +cartbote +carte +carteblanche +carted +cartelism +cartelist +cartelize +carteloise +cartels +carten +carter +carteret +carters +cartersburg +cartersville +carterville +cartes +cartesianism +cartful +carthame +carthamic +carthamin +carthamus +carthiet +carthusian +cartier +cartilage +cartilages +cartilaginei +cartilagines +carting +cartisane +cartist +cartledge +cartload +cartloads +cartmaker +cartmaking +cartman +cartmaster +cartogram +cartograph +cartography +cartomancies +cartomancy +carton +cartoned +cartoning +cartonnage +cartons +cartoon +cartooned +cartooning +cartoonist +cartoonists +cartoons +cartop +cartouche +cartridges +carts +cartsale +cartucci +cartulary +cartway +cartwheels +cartwright +carty +caru +carua +carucage +carucal +carucate +carucated +carufel +caruk +carum +caruncle +caruncula +carunculae +caruncular +carunculate +carunculated +carunculous +caruso +carutana +caruth +caruthers +carvacrol +carvacryl +carvajal +carval +carvalho +carvallo +carvana +carve +carved +carvel +carvello +carven +carvene +carver +carvers +carvership +carversville +carves +carvestrene +carvill +carville +carving +carvingg +carvings +carviotto +carvoepra +carvol +carvone +carvyl +carwash +carwashes +carwell +carwitchet +carwood +cary +carya +caryatic +caryatidal +caryatidean +caryatides +caryatidic +caryatids +caryl +caryle +caryn +caryocar +caryophyllin +caryophyllus +caryopilite +caryopses +caryopsides +caryopsis +caryopteris +caryota +caryville +carzon +casa +casaba +casabas +casabe +casabianca +casablanca +casadesus +casado +casadonte +casados +casady +casagrande +casal +casale +casali +casalis +casalou +casalsis +casalty +casamance +casamarca +casanare +casandra +casanova +casanovanic +casapare +casar +casaravilla +casares +casarse +casarvillo +casas +casasia +casate +casati +casaun +casava +casavas +casave +casavi +casca +cascabel +cascadable +cascade +cascaded +cascadelocks +cascades +cascadia +cascadian +cascading +cascadite +cascado +cascalho +cascalote +cascaras +cascares +cascarilla +cascarini +cascaron +casciatelli +cascilla +casco +cascol +cascone +case +casearia +casease +caseate +caseation +caseb +caseblind +casebooks +casebox +casecontrol +caseconv +cased +casefied +caseful +casefy +casefying +caseharden +casehardened +casehardens +caseic +caseinate +caseinogen +caseins +casekeeper +casel +caseless +caselessly +caselinr +casella +caselle +caseload +caseloads +caselotti +casemaker +casemaking +casemate +casemated +casement +casemented +casements +caseolysis +caseose +caseous +caser +casern +cases +casette +casettes +casetti +caseum +caseus +caseville +casew +caseweed +casewood +caseworker +caseworkers +caseworks +caseworm +casey +caseycreek +caseyville +cash +casha +cashable +cashableness +casharari +cashaw +cashbook +cashbooks +cashbox +cashboxes +cashboy +cashcuttee +cashe +casheconomy +cashed +cashel +casher +cashers +cashes +cashews +cashgirl +cashibo +cashiered +cashierer +cashiering +cashierment +cashiers +cashin +cashinahua +cashing +cashion +cashkeeper +cashless +cashman +cashmeeree +cashment +cashmeres +cashmerette +cashmiri +cashmirian +cashoo +cashoos +cashquiha +cashton +cashtown +cashubian +casi +casibara +casidorus +casie +casiguran +casilla +casimir +casimiro +casimiroa +casing +casings +casini +casino +casinos +casio +casion +casiphia +casiquiare +casiri +caska +casked +casket +casketed +casketing +caskets +caskey +casking +casklike +caskoden +casks +casler +caslon +caslonc +casluhim +casm +casmalia +casner +casnji +casnoff +casnovia +caso +cason +caspana +caspar +casparian +caspary +casper +casperson +caspi +casque +casqued +casques +casquet +casquetel +casquette +cass +cassaba +cassabanana +cassabas +cassabully +cassadaga +cassady +cassagna +cassandra +cassandras +cassandre +cassandry +cassanga +cassar +cassareep +cassat +cassatie +cassation +cassatt +cassaundra +cassava +cassavas +cassavetes +cassaway +casscity +casscoe +casse +cassegrain +cassel +casselberry +cassell +casselle +cassellis +casselton +casselty +cassen +cassena +casseroles +cassese +cassette +cassettes +cassey +cassi +cassia +cassiaceae +cassian +cassias +cassican +cassicus +cassida +cassideous +cassidid +cassididae +cassidinae +cassidony +cassidulina +cassiduloid +cassidy +cassie +cassiepeia +cassil +cassimere +cassina +cassine +cassinelli +cassinese +cassinette +cassini +cassinian +cassino +cassinoid +cassinos +cassio +cassioberry +cassiope +cassiopeia +cassiopeian +cassiopeid +cassiopeium +cassis +cassiterite +cassius +casslake +cassock +cassocks +cassoday +cassola +cassolette +casson +cassonade +cassondra +cassoon +cassopolis +cassot +cassowaries +cassowary +casstown +cassubian +cassumunar +cassundra +cassville +casswell +cassy +cassytha +cassythaceae +cast +castaban +castable +castafiore +castagnole +castaldi +castalia +castalian +castalides +castalio +castana +castanea +castanean +castaneda +castaneous +castanets +castano +castanopsis +castaway +castaways +casted +castedst +casteism +casteisms +castejoin +castel +casteless +castelet +castell +castella +castellan +castellani +castellano +castellanos +castellans +castellany +castellar +castellate +castellated +castellation +castelli +castello +castelloe +castellon +castelnuovo +castelo +casten +castenada +caster +casterless +casterot +casters +castersup +castes +castest +casteth +castevet +casthouse +casti +castice +castigable +castigated +castigates +castigating +castigation +castigations +castigative +castigator +castigators +castigatory +castiglione +castiglioni +castile +castilian +castilla +castillala +castilleja +castillejos +castillo +castilloa +castillon +castina +castine +casting +castings +castle +castleberry +castlecreek +castled +castledale +castleford +castlehayne +castlelike +castlemaine +castlepoint +castlepool +castlereagh +castlerock +castles +castlet +castleton +castlewards +castlewise +castlewood +castling +casto +castock +castoff +castoffs +castonguay +castor +castores +castoreum +castorial +castoridae +castorin +castorite +castorized +castorland +castoroides +castors +castory +castova +castra +castral +castrate +castrated +castrater +castrates +castrati +castrating +castration +castrations +castrato +castrator +castrators +castrensial +castrensian +castries +castro +castronova +castroville +castrum +castrz +casts +castuli +castulo +casu +casual +casualism +casualist +casuality +casually +casualness +casuals +casualties +casuariidae +casuarina +casuarinales +casuarius +casuary +casuist +casuistess +casuistic +casuistical +casuistries +casuistry +casuists +casula +casus +caswell +caswellite +casy +casziel +catabaptist +catabases +catabasis +catabatic +catabibazon +catabiotic +catabolin +catabolism +catabolite +catabolize +catabolized +catabolizing +catacaustic +catachreses +catachresis +catachrestic +cataclasm +cataclasmic +cataclastic +cataclinal +cataclysmal +cataclysmic +cataclysmist +cataclysms +catacomb +catacombs +catacorolla +catacoustics +catacrotic +catacrotism +catacumbal +catadicrotic +catadioptric +catadromous +catadupe +cataelano +catafalco +catafalque +catafalques +catagenesis +catagenetic +catagmatic +catagories +cataian +catakinesis +catakinetic +catala +catalan +catalanganes +catalanist +catalano +catalase +catalaunian +cataldo +catalecta +catalectic +catalepsies +catalepsis +catalepsy +cataleptic +cataleptics +cataleptize +cataleptoid +catalexis +catalin +cataline +catalineta +catalinite +catallactic +catallactics +catallum +catalog +cataloged +cataloger +catalogers +catalogia +catalogic +catalogical +cataloging +catalogist +catalogistic +catalogizer +catalogs +catalogued +cataloguer +catalogues +cataloguing +cataloguish +cataloguist +cataloguize +catalonia +catalonian +catalos +catalowne +catalpas +catalufa +cataluna +catalyses +catalyst +catalysts +catalyte +catalytical +catalyzator +catalyze +catalyzed +catalyzer +catalyzers +catalyzes +catalyzing +catamaran +catamarans +catamarca +catamarcan +catamarenan +catamenia +catamenial +catamite +catamited +catamites +catamiting +catamount +catamountain +catamounts +catan +catanach +catananche +catanduanes +catane +catano +catanova +catanzano +catapan +catapasm +catapetalous +cataphasia +cataphatic +cataphora +cataphoresis +cataphoretic +cataphoria +cataphoric +cataphract +cataphracta +cataphracti +cataphrenia +cataphrenic +cataphrygian +cataphyll +cataphylla +cataphyllary +cataphyllum +cataphysical +cataplasia +cataplasis +cataplasm +catapleiite +cataplexy +catapulted +catapultic +catapultier +catapulting +catapults +cataractal +cataracted +cataractine +cataractous +cataracts +cataractwise +cataria +catarina +catarinite +catarrh +catarrhal +catarrhally +catarrhed +catarrhina +catarrhine +catarrhinian +catarrhous +catarrhs +catasarka +catasauqua +catasetum +catasta +catastaltic +catastasis +catastate +catastatic +catasterism +catastrophal +catastrophe +catastrophes +catastrophic +catathymic +catatonia +catatoniac +catatonias +catatonic +catatonics +catatony +catatumbo +catauian +catauichi +catauixi +cataula +cataumet +catawampous +catawampus +catawbas +catawian +catawishi +catawissa +catawixi +catberry +catbirds +catboat +catboats +catcalled +catcalling +catcalls +catch +catchability +catchable +catchall +catchalls +catchcry +catched +catchements +catcher +catchers +catches +catcheth +catchfly +catchier +catchiest +catchiness +catching +catchingly +catchingness +catchland +catchment +catchments +catcho +catchpennies +catchpenny +catchphrase +catchplate +catchpole +catchpolery +catchpoll +catchpollery +catchups +catchwater +catchweed +catchweight +catchwords +catchwork +catclaw +catcomputer +catd +catdisk +catdom +cate +catechesis +catechetic +catechetical +catechin +catechise +catechism +catechismal +catechisms +catechist +catechistic +catechists +catechizable +catechize +catechized +catechizer +catechizes +catechizing +catechol +catechu +catechumen +catechumenal +catechumens +cateel +cateelenyo +categorem +categorema +categorial +categorical +categories +categorist +categorize +categorized +categorizer +categorizers +categorizes +categorizing +category +catelain +catella +catena +catenacci +catenae +catenarian +catenaries +catenary +catenas +catenated +catenating +catenation +catenet +catenoid +catenulate +catepuce +cater +cateran +catercap +catercorner +catered +caterer +caterers +caterership +cateress +cateresses +caterina +catering +caterpillars +caterpiller +caterpillers +caters +caterva +caterwaul +caterwauled +caterwauler +caterwauling +caterwauls +cates +catesbaea +catesbeiana +cateye +catface +catfaced +catfacing +catfall +catfight +catfish +catfishes +catfoot +catfooted +catgut +catguts +cath +catha +cathal +cathari +catharina +catharine +catharism +catharist +catharistic +catharize +catharpin +catharping +cathars +catharses +cathartae +cathartes +cathartic +cathartical +cathartics +cathartidae +cathartides +cathay +cathayan +cathcart +cathe +cathead +cathect +cathectic +cathection +cathects +cathedral +cathedraled +cathedralic +cathedrals +cathedrat +cathedratic +cathedratica +cathee +cathepsin +catheretic +catherin +catherina +catherine +catherwood +catheter +catheterism +catheterize +catheterized +catheterizes +catheters +catheti +cathetometer +cathetus +cathexes +cathexion +cathexis +cathey +cathi +cathidine +cathie +cathin +cathine +cathinine +cathion +cathisma +cathlamet +cathleen +cathlene +cathodal +cathodes +cathodical +cathodically +cathodograph +cathograph +cathography +cathole +catholic +catholical +catholically +catholicate +catholicist +catholicity +catholicize +catholicizer +catholicly +catholicness +catholicon +catholicos +catholics +catholicus +catholique +catholyte +cathood +cathop +cathouse +cathouses +cathrin +cathrine +cathro +cathryn +cathy +cathyleen +cati +caticsuf +catie +catilinarian +catiline +catillon +catina +cating +catio +cations +cativo +catja +catjang +catkinate +catkins +catlaina +catlan +catlap +catlee +catlett +catlettsburg +catlin +catling +catlinite +catmake +catmalison +catmint +catmints +catnap +catnaper +catnapers +catnapped +catnapping +catnaps +catnip +catnips +cato +catoblepas +catocala +catocalid +catoctin +catodon +catodont +catogene +catogenic +catoism +catologing +caton +catonian +catonic +catonically +catonism +catoosa +catopsis +catoptric +catoptrical +catoptrics +catoptrite +catoquina +catostomid +catostomidae +catostomoid +catostomus +catpiece +catpipe +catproof +catrimani +catrina +catriona +catron +cats +catscan +catskill +catskin +catspaw +catspaws +catspring +catstep +catstick +catstitch +catstitcher +catstone +catsups +catt +cattabu +cattails +cattalo +cattanei +cattaneo +cattaraugus +catted +cattell +catterson +cattery +catti +cattier +catties +cattiest +cattily +cattimandoo +cattin +cattiness +catting +cattish +cattishly +cattishness +cattle +cattlebush +cattlegate +cattleless +cattleya +cattleyak +catto +cattrall +catty +cattyman +catullian +catulo +catuquina +catusse +catvine +catwalk +catwalks +catwise +catwoman +catwood +catwort +caty +catz +cauaboris +cauaburi +caubeen +caubere +caubeta +cauboge +cauca +caucas +caucasian +caucasians +caucasic +caucasoid +caucasoids +cauch +cauchillo +cauchmars +caucho +cauchon +cauchy +caucus +caucused +caucuses +caucusing +caucussed +caucussing +cauda +caudad +caudae +caudal +caudally +caudalward +caudata +caudate +caudated +caudation +caudatory +caudatum +caudex +caudexes +caudices +caudicle +caudiform +caudill +caudillism +caudillo +caudillos +caudle +caudodorsal +caudofemoral +caudolateral +caudotibial +caudry +cauf +caughley +caughnawaga +caught +cauifield +cauk +caukadrove +caul +caulama +cauld +caulder +cauldrife +cauldron +cauldrons +cauldwell +caulerpa +caulerpaceae +caules +caulescent +cauley +caulfield +caulicle +caulicole +caulicolous +caulicule +cauliculus +cauliferous +cauliflorous +cauliflory +cauliflowers +cauliform +cauligenous +caulinar +caulinary +cauline +caulis +caulite +caulivorous +caulked +caulker +caulkers +caulking +caulkings +caulks +caulocarpic +caulocarpous +caulome +caulomer +caulomic +caulophyllum +caulopteris +caulosarc +caulotaxis +caulotaxy +caulote +cauls +caum +cauma +caumatic +caunch +caunos +caunus +caup +caupo +caupolican +caupones +cauqui +caura +caurale +caurus +caus +causability +causable +causalgia +causalities +causality +causally +causals +causational +causationism +causationist +causations +causative +causatively +causatives +causativity +cause +caused +causeful +causeless +causelessly +causer +causerie +causeries +causers +causes +causest +causeth +causeway +causewayed +causewayman +causeways +causey +causeys +causidical +causing +causingness +causiticity +causse +caussenard +caussinus +causson +caustic +caustical +caustically +causticiser +causticism +causticity +causticize +causticizer +causticly +causticness +caustics +caustify +causton +causus +cautel +cautelous +cautelously +cauter +cauterant +cauteries +cauterio +cauterize +cauterized +cauterizes +cauterizing +cautery +cauthen +cauthers +caution +cautioned +cautioner +cautioners +cautioning +cautionings +cautionry +cautions +cautious +cautiously +cautiousness +cautivo +cauwenbergh +cauyari +cauzuh +cava +cavaco +cavae +cavagnaro +cavagnetti +cavaignac +caval +cavalcades +cavalcanti +cavaldo +cavalero +cavalier +cavaliere +cavaliered +cavalieri +cavalierish +cavalierism +cavalierly +cavalierness +cavaliero +cavaliers +cavaliership +cavalla +cavallo +cavalries +cavalry +cavalryman +cavalrymen +cavan +cavanagh +cavanaugh +cavarzvan +cavascope +cavasin +cavasso +cavate +cavatina +cavazza +cavcuvenskij +cavdur +cave +caveated +caveatee +caveator +caveats +cavecity +cavecreek +caved +cavefish +caveinrock +cavejunction +cavekeeper +cavel +cavelet +cavelike +cavell +caveman +caven +cavender +cavendish +cavens +caventou +caver +caverly +cavern +cavernal +caverned +caverning +cavernitis +cavernlike +cavernoma +cavernous +cavernously +caverns +cavernulous +cavers +caves +cavespring +cavesprings +cavesson +cavetown +cavett +cavetto +cavey +cavia +caviar +caviare +caviares +caviars +caviccia +cavicorn +cavicornia +cavidae +cavie +cavies +caviled +caviler +cavilers +caviling +cavilingly +cavilingness +cavill +cavillation +cavilled +caviller +cavillers +cavils +cavin +cavina +cavinen +cavinena +caviness +caving +cavings +cavish +cavitary +cavitated +cavitates +cavitation +cavitations +cavite +caviten +cavitied +cavities +cavity +caviya +cavlini +cavnar +cavorted +cavorter +cavorters +cavorting +cavorts +cavour +cavus +cavy +cawdon +cawdron +cawed +cawing +cawk +cawkercity +cawkins +cawky +cawley +cawney +cawood +cawquaw +caws +cawsey +cawthorn +cawthorne +caxibo +caxinawa +caxiri +caxon +caxton +caxtonian +caxur +caya +cayambe +cayapa +cayapas +cayapo +caye +cayeaux +cayenned +cayennes +cayey +cayla +cayless +cayley +cayleyan +caylloma +cayma +cayman +caymanian +caymanians +caymans +caymon +cayo +cayon +cayor +cayouette +caypor +cays +cayua +cayubaba +cayubaban +cayucos +cayuga +cayugacc +cayugan +cayugas +cayuse +cayuses +cayuta +cayuvava +cayuwaba +caza +cazadero +cazale +cazaret +cazeau +cazeneuve +cazenove +cazenovia +cazimi +cazique +cbabbage +cbbu +cbcs +cbfff +cbfms +cbfz +cblock +cboot +cbox +cbranch +cbreak +cbrm +cbrt +cbtu +cbua +ccad +ccadfa +cccc +ccccc +cccccc +ccccccc +cccccccc +ccccccccc +cccccccccc +cccco +cccowe +cccs +ccdnssc +ccedit +ccess +ccez +ccfs +ccid +ccie +ccit +ccitt +ccla +cclhd +ccmatt +ccmtu +ccnaa +ccncsu +ccngw +ccnucb +ccny +ccom +ccontingency +ccoo +ccop +ccoya +ccpanel +ccpd +ccpm +ccse +ccso +ccsu +cctd +cctu +ccvaxa +ccvc +ccversions +ccws +cdac +cdadump +cdaudio +cdbms +cdcdl +cdcent +cdcgw +cdcnet +cdcopy +cdcz +cdda +cddb +cddis +cdec +cdedit +cdev +cdfff +cdfs +cdgrab +cdir +cdmag +cdnnet +cdos +cdoscall +cdpath +cdplayer +cdpleyr +cdrlabel +cdrmail +cdrom +cdroms +cdrvma +cdrwin +cdtest +cdup +cdvalet +cdwiz +cdwizard +cdworx +ceanothus +ceao +ceap +ceara +cearin +ceasar +cease +ceased +ceasefire +ceaseless +ceaselessly +ceaser +ceases +ceaseth +ceasing +ceasmic +ceayong +cebaara +cebaf +ceballos +cebalrai +cebatha +cebell +cebian +cebid +cebidae +cebil +cebine +cebk +ceboid +cebolla +cebollite +cebotarev +cebotari +cebriones +cebu +cebuan +cebuano +cebur +cebus +cebz +ceca +cecal +cecca +ceccaldi +cecchetti +cecchi +cecchini +cecco +cecconato +cecelia +cecella +cecen +cecer +cech +ceci +cecial +cecidiology +cecidium +cecidogenous +cecidologist +cecidology +cecidomyian +cecidomyiid +cecil +cecila +cecile +ceciley +cecilia +cecilie +cecilio +cecilite +cecilla +cecille +cecillia +cecils +cecilton +cecily +ceciro +cecity +cecograph +cecom +cecomorphae +cecomorphic +cecostomy +cecrops +cecu +cecum +cecutiency +cedar +cedarbird +cedarbluff +cedarbluffs +cedarbrook +cedarburg +cedarbutte +cedarcity +cedarcreek +cedarcrest +cedared +cedaredge +cedarfalls +cedarglen +cedargrove +cedarhill +cedarhurst +cedarisland +cedarkey +cedarknolls +cedarlake +cedarlane +cedarn +cedarpark +cedarpoint +cedarrapids +cedarridge +cedarriver +cedars +cedarsprings +cedartown +cedarvale +cedarvalley +cedarville +cedarware +cedarwood +cedary +ceded +cedent +ceder +cederborg +cederholm +cederlund +cedern +ceders +cederstrom +cedes +cedex +cedi +cedillas +cedillo +ceding +cedis +cedit +cedon +cedrat +cedrate +cedre +cedrela +cedrene +cedric +cedrin +cedrine +cedriret +cedrium +cedrol +cedron +cedrus +cedry +cedula +cedulas +ceeac +ceee +ceel +ceeley +ceemba +cees +ceevee +cefee +cefmz +cegani +cegelski +cegodnya +ceheng +cehz +ceiba +ceibo +ceichac +ceil +ceilabsiblly +ceile +ceiled +ceiler +ceilers +ceilidh +ceilin +ceiling +ceilinged +ceilings +ceilingward +ceilingwards +ceilometer +ceils +ceinture +ceja +cejvan +celadon +celadonite +celadons +celaeno +celandines +celarent +celarie +celastraceae +celastrus +celation +celative +celature +cele +celeb +celebdil +celebesian +celeborn +celebra +celebral +celebrant +celebrants +celebrate +celebrated +celebrater +celebrates +celebrating +celebration +celebrations +celebrative +celebrator +celebrators +celebratory +celebre +celebres +celebrian +celebrimor +celebrites +celebrities +celebrity +celebs +celedonio +celem +celemin +celemines +celene +celentano +celeomorph +celeomorphae +celeomorphic +celere +celeriac +celeries +celerities +celeritous +celerity +celeron +celery +celesta +celestas +celeste +celestes +celestia +celestial +celestiality +celestialize +celestially +celestin +celestina +celestine +celestinian +celestino +celestite +celestitude +celestyn +celestyna +celi +celia +celiac +celiadelphus +celiagra +celialgia +celibacies +celibatarian +celibate +celibates +celibatic +celibatist +celibatory +celidography +celie +celiectasia +celiectomy +celiemia +celiitis +celik +celina +celinda +celine +celinka +celinska +celio +celiocele +celiocyesis +celiodynia +celiolymph +celiomyalgia +celion +celioncus +celiopyosis +celiorrhaphy +celiorrhea +celioschisis +celioscope +celioscopy +celiotomy +celis +celisse +celite +celka +cell +cella +cellae +cellar +cellarage +cellared +cellarer +cellarers +cellaress +cellaret +cellarets +cellarette +cellaring +cellarless +cellarman +cellarous +cellars +cellarway +cellarwoman +cellate +cellated +cellblock +cellblocks +celle +celled +cellepora +cellepore +celli +cellier +celliers +celliferous +celliform +cellifugal +celling +cellino +cellins +cellipetal +cellist +cellists +cellite +cello +cellobiose +celloid +celloidin +celloist +cellos +cellose +cells +cellsize +cellucci +cellucotton +cellular +cellularity +cellularly +cellulase +cellulate +cellulated +cellulation +cellule +cellulicidal +cellulifugal +cellulin +cellulipetal +cellulitis +celluloided +cellulomonas +cellulosic +cellulosity +cellulotoxic +cellulous +cellvibrio +celoron +celosia +celotex +celotomy +celrey +cels +celsia +celsian +celso +celt +celtdom +celtiberi +celtiberian +celtic +celtically +celticism +celticist +celticize +celtics +celtidaceae +celtiform +celtis +celtish +celtism +celtist +celtium +celtization +celtologist +celtologue +celtomaniac +celtophil +celtophobe +celtophobia +celts +celtuce +celuta +celvin +celyne +cema +cemarron +cemba +cembali +cembalist +cembalo +cembalos +cemdalsk +cemectra +cemensky +cement +cemental +cementation +cementatory +cementcity +cemented +cementer +cementers +cementin +cementing +cementite +cementitious +cementless +cementlike +cementmaker +cementmaking +cementoblast +cementoma +cementon +cements +cementum +cemetaries +cemetary +cemeterial +cemeteries +cemetery +cemma +cemual +cemuhi +cena +cenacle +cenacles +cenaculum +cenanthous +cenanthy +cencerro +cenchrea +cenchrus +cencier +cenderawasih +cendre +cenerentola +cenge +ceniza +cenka +cennamo +cenobian +cenobite +cenobites +cenobitic +cenobitical +cenobitism +cenobium +cenoby +cenogenesis +cenogenetic +cenogonous +cenomanian +cenosite +cenosity +cenospecies +cenospecific +cenotaph +cenotaphic +cenotaphs +cenotaphy +cenozoology +cenral +cenrana +cense +censed +censer +censerless +censers +censes +censeur +censi +censing +censive +censo +censor +censorable +censorate +censored +censoring +censoriously +censors +censorship +censu +censual +censurable +censurably +censure +censured +censureless +censurer +censurers +censures +censureship +censuring +census +censused +censuses +censusing +censusof +cent +centa +centage +cental +centare +centares +centaur +centaurdom +centaurea +centauress +centauri +centaurial +centaurian +centauric +centaurid +centauridium +centaurium +centaurs +centaurus +centaury +centavo +centavos +centcom +centcomfs +centena +centenar +centenaria +centenarian +centenarians +centenaries +centenier +centennial +centennially +centennials +centeno +center +centerable +centerboard +centerboards +centerbrook +centerburg +centercity +centerconway +centercross +centereach +centered +centeredly +centeredness +centerer +centerfield +centerfire +centerfold +centerfolds +centerharbor +centerhill +centering +centerleft +centerless +centerlovell +centermost +centerpieces +centerpoint +centerport +centerridge +centerright +centers +centersoff +centerson +centerton +centertown +centervalley +centervelic +centerview +centerville +centerward +centerwise +centesima +centesimal +centesimally +centesimate +centesimi +centesimo +centesimos +centesis +centetes +centetid +centetidae +centgener +centi +centiar +centiare +centibar +centibul +centifolious +centigram +centigramme +centigrams +centile +centiliter +centiliters +centilitre +centillion +centillionth +centiloquy +centime +centimes +centimeter +centimeters +centimetre +centimetres +centimilli +centimo +centimolar +centimos +centinormal +centipedal +centipedes +centiplume +centipoise +centis +centistere +centistoke +centmathcs +centner +cento +centonical +centonism +centowic +centra +centrad +centrafrican +centrahoma +central +centralcity +centrale +centraleast +centrales +centralest +centralia +centralislip +centralism +centralist +centralistic +centralists +centralities +centrality +centralize +centralized +centralizer +centralizers +centralizes +centralizing +centrallake +centrally +centralness +centralpoint +centrals +centralsouth +centranth +centranthus +centrarchid +centrarchoid +centraxonia +centraxonial +centre +centred +centrehall +centres +centreville +centricae +centrical +centricality +centrically +centriciput +centricity +centriffed +centrifugal +centrifuged +centrifuges +centrifuging +centring +centriole +centripetal +centriscid +centriscidae +centriscoid +centriscus +centrism +centrists +centrivex +centro +centroacinar +centrobaric +centroclinal +centrode +centrodesmus +centrodorsal +centroidal +centroids +centrolinead +centrolineal +centromere +centronix +centroplasm +centropomus +centrosema +centrosome +centrosomic +centrosoyus +centrosphere +centrotus +centrum +centrums +centry +cents +centuary +centums +centumvir +centumviral +centumvirate +centunculus +centuple +centupled +centuples +centuplicate +centupling +centuply +centuria +centurial +centurian +centuriate +centuriation +centuriator +centuried +centuries +centurion +centurions +century +centuwion +cenu +cenwulf +ceorl +ceorlish +cepa +cepaceous +cepar +cepe +cepeda +cepgl +cephaeline +cephaelis +cephalad +cephalagra +cephalalgia +cephalalgic +cephalalgy +cephalanthus +cephalaspis +cephalata +cephalate +cephaldemae +cephalemia +cephaletron +cephaleuros +cephalic +cephalically +cephalin +cephalina +cephaline +cephalism +cephalitis +cephalocele +cephalochord +cephaloclast +cephalocone +cephaloconic +cephalocyst +cephalodymia +cephalodymus +cephalodynia +cephalogram +cephalograph +cephaloid +cephalology +cephalomancy +cephalomant +cephalomelus +cephalomenia +cephalomere +cephalometer +cephalometry +cephalomotor +cephalon +cephalonasal +cephalopagus +cephalopathy +cephalophine +cephalophus +cephalophyma +cephalopod +cephalopoda +cephalopodan +cephalopodic +cephalosome +cephalostyle +cephalotaxus +cephalotheca +cephalotome +cephalotomy +cephalotribe +cephalotus +cephalous +cephas +cepheid +cepheus +cephid +cephidae +cephu +cephus +ceplecha +cepolidae +ceponis +ceps +ceptor +cepza +cequi +ceraceous +cerago +ceral +ceramal +cerambycid +cerambycidae +ceramiaceae +ceramiaceous +ceramic +ceramicist +ceramicists +ceramicite +ceramics +ceramidium +ceramist +ceramists +ceramography +ceranic +cerargyrite +ceras +cerasein +cerasin +ceraskia +cerastes +cerastium +cerasus +cerata +cerate +ceratectomy +cerated +cerates +ceratiasis +ceratiid +ceratiidae +ceratioid +ceration +ceratite +ceratites +ceratitic +ceratitidae +ceratitis +ceratitoid +ceratitoidea +ceratium +ceratoblast +ceratocystis +ceratodidae +ceratodus +ceratohyal +ceratohyoid +ceratoid +ceratomania +ceratonia +ceratophrys +ceratophyta +ceratophyte +ceratops +ceratopsia +ceratopsian +ceratopsid +ceratopsidae +ceratopteris +ceratorhine +ceratosa +ceratosaurus +ceratotheca +ceratothecal +ceratozamia +ceraunia +ceraunics +ceraunius +ceraunogram +ceraunograph +ceraunomancy +ceraunophone +ceraunoscope +ceraunoscopy +ceray +cerberean +cerberic +cerberus +cerbonnet +cercal +cercaria +cercarial +cercarian +cercariform +cercelee +cerci +cercis +cercle +cercles +cercocebus +cercolabes +cercolabidae +cercomonad +cercomonas +cercopid +cercopidae +cercopod +cercospora +cercus +cerdic +cerdonian +cere +cereal +cerealia +cerealian +cerealin +cerealism +cerealist +cerealose +cereals +cerebella +cerebellar +cerebellum +cerebellums +cerebra +cerebral +cerebralgia +cerebralism +cerebralist +cerebralize +cerebrally +cerebrals +cerebrated +cerebrates +cerebrating +cerebration +cerebrations +cerebratulus +cerebri +cerebric +cerebricity +cerebriform +cerebrifugal +cerebrin +cerebripetal +cerebritis +cerebrize +cerebroid +cerebrology +cerebroma +cerebrometer +cerebron +cerebronic +cerebropathy +cerebropedal +cerebroscope +cerebroscopy +cerebrose +cerebroside +cerebrosis +cerebrosuria +cerebrotomy +cerebrotonia +cerebrotonic +cerebrum +cerebrums +cerebus +cerecloth +cerecloths +cered +ceredo +cereless +cerement +cerements +ceremonial +ceremonially +ceremonials +ceremonies +ceremoniuous +ceremony +cerenio +cerenkov +cereous +cerer +ceres +ceresa +ceresco +ceresin +cereuses +cerevis +cerezo +cerf +cerga +ceri +ceria +cerialia +cerianthid +cerianthidae +cerianthoid +cerianthus +cerias +ceric +ceride +ceriel +ceriferous +cerigerous +cerillo +ceriman +cerin +cerine +cerini +cerinthe +cerinthian +ceriomyces +cerion +cerionidae +ceriops +ceriornis +ceriphs +cerise +cerises +cerite +cerites +cerithiidae +cerithioid +cerithium +ceriums +ceriya +cerl +cerma +cermak +cerman +cermet +cermets +cerms +cern +cerne +cernes +cernik +cerniture +cernuous +cerny +cero +cerograph +cerographic +cerographist +cerography +ceroline +cerolite +ceroma +ceromancy +cerophilous +ceroplast +ceroplastic +ceroplastics +ceroplasty +cerotate +cerote +cerotene +cerotic +cerotin +cerotype +cerous +cerovic +ceroxyle +ceroxylon +cerra +cerrado +cerrato +cerrero +cerrial +cerrillos +cerris +cerritos +cerro +cerrogordo +cerrone +cerrudo +cert +certa +certain +certainest +certainly +certainness +certainteed +certainties +certainty +certes +certhia +certhiidae +certian +certie +certifiable +certifiably +certificate +certificated +certificates +certificator +certified +certifier +certifiers +certifies +certify +certifying +certiorate +certioration +certis +certitudes +certo +certosina +certosino +certy +cerui +cerule +cerulean +ceruleans +cerulein +ceruleite +ceruleous +cerulescent +ceruleum +cerulignol +cerulignone +cerulo +cerumba +cerumen +ceruminal +ceruminous +ceruse +cerusico +cerussite +cerval +cervantes +cervantist +cervantite +cervenka +cervera +cervi +cervical +cervicapra +cervicaprine +cervicectomy +cervices +cervicide +cerviciplex +cervicitis +cervicodynia +cerviconasal +cervicorn +cervid +cervidae +cervin +cervinae +cervine +cervino +cervisia +cervisial +cervix +cervixes +cervoid +cervuline +cervulus +cervus +cery +ceryl +cerynean +cesaire +cesak +cesana +cesar +cesaratto +cesare +cesarea +cesarean +cesareans +cesarevitch +cesarian +cesario +cesariot +cesarolite +cesca +cesco +cescon +ceseri +cesgani +cesidio +cesious +cesium +cesiums +ceska +cespedes +cespititous +cespitose +cespitosely +cespitulose +cess +cessantly +cessation +cessations +cessative +cessavit +cessed +cesser +cesses +cessing +cessionaire +cessionary +cessions +cessor +cesspipe +cesspit +cesspits +cesspool +cesspools +cest +cesta +cestida +cestidae +cestmir +cestoda +cestodaria +cestode +cestoid +cestoidea +cestoidean +cestos +cestracion +cestraciont +cestrian +cestrum +cestus +cesura +cesurae +cesuras +ceswf +cesya +ceszek +ceta +cetacea +cetacean +cetaceans +cetaceous +cetaceum +cetane +cete +cetene +ceterach +cethegus +ceti +cetic +ceticide +cetid +cetin +cetiosauria +cetiosaurian +cetiosaurus +cetological +cetologies +cetologist +cetology +cetomorpha +cetomorphic +cetonia +cetonian +cetoniides +cetoniinae +cetorhinid +cetorhinidae +cetorhinoid +cetorhinus +cetotolite +cetraria +cetraric +cetrarin +cetraro +cetrnaesti +cette +cetus +cetyl +cetylene +cetylic +ceum +ceurvorst +ceuta +cevadilla +cevadilline +cevadine +cevallos +cevenda +cevennian +cevenol +cevenola +cevenole +cevine +cevitamic +cewa +ceylanite +ceylon +ceylonese +ceylonite +ceyssatite +ceyx +cezanne +cezannesque +cezar +cezaro +cezary +cfabok +cfabond +cfaexite +cfaf +cfahub +cfalkens +cfamhd +cfapick +cfaros +cfashap +cfassp +cfatycho +cfazwicky +cfcb +cfdt +cffff +cfgable +cfgchatlog +cfgdoordir +cfgfile +cfgflagsdir +cfgfrm +cfglangdir +cfglangnews +cfglog +cfglogo +cfgmaker +cfgpath +cfgport +cfgprivul +cfgsavetag +cfgtempdir +cfgtrclog +cfkost +cflg +cfpf +cgauss +cgdk +cgidb +cgil +cgmips +cgtg +cgtpin +cgtr +cgvax +chaa +chaaaarge +chaaban +chaar +chaari +chab +chabakano +chaban +chabanco +chabane +chabasie +chabazite +chabela +chabert +chabg +chabing +chabot +chabouk +chabrat +chabrillaine +chabrol +chabrolles +chabuk +chabunin +chabutra +chac +chacabamba +chacal +chacate +chacaya +chacayan +chacha +chachalaca +chachapoyas +chachapuya +chache +chachi +chachilla +chachoengsao +chack +chackchiuma +chacker +chackle +chackler +chacko +chacma +chaco +chacobo +chacon +chacona +chaconne +chaconnes +chacornac +chacte +chad +chadacryst +chadakis +chadarain +chadarim +chadbon +chadborune +chadbourn +chaddha +chaddock +chaddsford +chadha +chadian +chadic +chadimova +chadler +chadless +chadli +chador +chadron +chads +chadsudan +chadwell +chadwick +chadwicks +chady +chaebol +chaecung +chael +chaenactis +chaenolobus +chaenomeles +chaepau +chaeta +chaetangium +chaetetes +chaetetidae +chaetifera +chaetiferous +chaetites +chaetitidae +chaetochloa +chaetodon +chaetodont +chaetodontid +chaetognath +chaetognatha +chaetophora +chaetopod +chaetopoda +chaetopodan +chaetopodous +chaetopterin +chaetopterus +chaetosema +chaetosoma +chaetotactic +chaetotaxy +chaetura +chafarinas +chafed +chafee +chafer +chafers +chafery +chafes +chafewax +chafeweed +chaff +chaffcutter +chaffe +chaffed +chaffee +chaffer +chaffered +chafferer +chafferers +chaffering +chaffers +chaffier +chaffiest +chaffinch +chaffinches +chaffiness +chaffing +chaffingly +chaffless +chafflike +chaffman +chaffs +chaffseed +chaffwax +chaffweed +chaffy +chafin +chafing +chafingdish +chaft +chafted +chafy +chaga +chagall +chagan +chagangdo +chagas +chagatai +chagedai +chagga +chagnon +chagny +chago +chagos +chagrin +chagrined +chagrinfalls +chagrining +chagrinned +chagrinning +chagrins +chaguanco +chaguar +chagul +chah +chaha +chahal +chahar +chaharaimaq +chaharlang +chahi +chahram +chai +chaibanja +chaika +chaiken +chaiko +chaikowsky +chail +chailles +chaillot +chaim +chaima +chain +chainage +chained +chainer +chaines +chainette +chainik +chaining +chainless +chainlet +chainlike +chainmaker +chainmaking +chainman +chainmen +chainon +chains +chainsaw +chainsin +chainsmith +chaintreuil +chainwale +chainwork +chair +chaired +chairer +chairing +chairladies +chairless +chairlift +chairmaker +chairmaking +chairman +chairmaned +chairmanned +chairmanning +chairmans +chairmanship +chairmender +chairmending +chairpersons +chairs +chairwarmer +chais +chaiseless +chaises +chaisongkram +chaisson +chait +chaitya +chaiyaphum +chaiyong +chaja +chajul +chak +chaka +chakali +chakar +chakari +chakaris +chakatouny +chakavian +chakavski +chakazi +chakdar +chakfem +chakhansoor +chakhar +chakhesang +chakib +chakiris +chakma +chakobu +chakosi +chakpa +chakra +chakrabandhu +chakrabarty +chakraborty +chakram +chakravarti +chakravartin +chakravarty +chakravorti +chakriaba +chakrima +chakroma +chakru +chaksi +chal +chala +chalaco +chalah +chalakorn +chalana +chalas +chalastic +chalatenango +chalaza +chalazal +chalaze +chalazian +chalazion +chalazogam +chalazogamic +chalazogamy +chalazoidite +chalbner +chalca +chalcanthite +chalcatongo +chalcedonian +chalcedonic +chalcedonies +chalcedonous +chalcedony +chalcedonyx +chalchuite +chalcid +chalcidian +chalcidic +chalcidicum +chalcidid +chalcididae +chalcidiform +chalcidoid +chalcidoidea +chalcioecus +chalcis +chalcites +chalcocite +chalcograph +chalcography +chalcol +chalcolite +chalcolithic +chalcomancy +chalcomenite +chalcon +chalcone +chalcopyrite +chalcosine +chalcotript +chalcroft +chalcus +chaldaea +chaldaeans +chaldaei +chaldaic +chaldaical +chaldaism +chaldea +chaldean +chaldeans +chaldecott +chaldee +chaldees +chalder +chaldron +chalee +chalets +chalfont +chalgrin +chali +chaliapin +chalice +chaliced +chalices +chalicosis +chalicothere +chalie +chalifour +chalina +chalinidae +chalinine +chalinitis +chalk +chalkboards +chalkcutter +chalked +chalker +chalkhill +chalkier +chalkiest +chalkiness +chalking +chalklike +chalkography +chalks +chalkstone +chalkstones +chalkstony +chalkworker +challa +challah +challahs +challee +challengable +challenge +challenged +challengee +challengeful +challenger +challengers +challenges +challengeth +challenging +challice +challie +challies +challis +challises +challot +challote +chalmer +chalmers +chalmette +chalna +chalon +chalone +chalonge +chalons +chalot +chalque +chalta +chalukya +chalukyan +chalumeau +chalun +chalutz +chalutzim +chalybean +chalybeate +chalybeous +chalybes +chalybite +cham +chama +chamacea +chamaco +chamacoco +chamaebatia +chamaecistus +chamaecrista +chamaedaphne +chamaeleo +chamaeleon +chamaelirium +chamaenerion +chamaerops +chamaerrhine +chamaesaura +chamaesiphon +chamaesyce +chamal +chamalal +chamalin +chamalis +chamama +chaman +chamar +chamard +chamari +chamarwa +chamaya +chamayou +chamba +chambati +chamber +chambered +chamberer +chambering +chamberino +chamberlain +chamberlains +chamberlet +chamberleted +chamberlin +chambermaids +chamberpot +chamberpots +chambers +chambersbu +chambersburg +chambertin +chamberwoman +chambhar +chambhari +chambi +chambiali +chambioa +chambira +chambiyali +chambliss +chamboa +chambon +chambord +chambot +chambray +chambrays +chambre +chambrel +chambri +chambul +chamchru +chameali +chamecephaly +chameleon +chameleonic +chameleonize +chameleons +chamelion +chamfered +chamferer +chamfering +chamfers +chamfron +chami +chamian +chamic +chamicolos +chamicura +chamicuro +chamidae +chamir +chamisal +chamise +chamises +chamiso +chamisos +chamite +chamiyali +chamkanni +chamlee +chamling +chamlinge +chamma +chammied +chammies +chammona +chammwana +chammwona +chammy +chamnanpadit +chamnong +chamo +chamois +chamoised +chamoises +chamoisette +chamoising +chamoisite +chamoix +chamoline +chamomilla +chamonix +chamorro +chamos +champa +champac +champaca +champacol +champagne +champagnes +champagnize +champaign +champain +champak +champaka +champasak +champathon +champed +champel +champer +champers +champertor +champertous +champerty +champhung +champignon +champing +champion +championed +championess +championing +championize +championless +championlike +champions +championship +champioship +champlain +champlainic +champleve +champlin +champman +champney +champollion +champone +champreux +champs +champsi +champy +chamrent +chamroon +chams +chamsi +chamula +chamus +chamya +chan +chana +chanaan +chanabal +chanakyapuri +chanca +chance +chanced +chanceful +chancefully +chancel +chanceled +chanceless +chancellery +chancellor +chancellors +chancels +chanceman +chancemen +chancer +chanceries +chancering +chancery +chances +chanceth +chancewise +chancha +chanche +chanchito +chanchlani +chancier +chanciest +chancily +chancing +chanco +chancre +chancres +chancriform +chancroid +chancroidal +chancroids +chancrous +chand +chanda +chandak +chandal +chandala +chandam +chandan +chandana +chandari +chandaul +chandelier +chandeliers +chander +chanderli +chandhok +chandi +chandice +chandigarh +chandiir +chandinahua +chandler +chandleress +chandleries +chandlering +chandlers +chandlery +chandoo +chandos +chandpur +chandra +chandrakant +chandran +chandrika +chandu +chandul +chane +chanel +chanelling +chaney +chanfrin +chang +changa +changana +changar +changde +change +changeable +changeably +changebars +changed +changedale +changedness +changeful +changefully +changeless +changelessly +changeling +changelings +changement +changeovers +changepoint +changepoints +changer +changers +changes +changest +changeth +changewater +changhua +changing +changjiang +changki +changnoi +changnyu +chango +changoan +changos +changriwa +changsen +changsha +changting +changuina +changuinan +changwat +changyanguh +chanh +chanhassen +chani +chanidae +chank +chanka +chanke +chankings +chanlett +channa +channahon +channaleh +channel +channelbill +channeled +channeler +channeling +channelize +channelized +channelizes +channelizing +channell +channelled +channeller +channellers +channelling +channels +channelview +channelwards +channen +channer +channi +channing +chano +chanonat +chanpong +chansom +chansonnette +chansons +chanst +chant +chantable +chantaburi +chantage +chantages +chantal +chantalle +chante +chanted +chantel +chantent +chanter +chanterelle +chanters +chantership +chanteur +chanteuse +chanteuses +chanteyman +chanteys +chanthaburi +chanticleer +chanticleers +chanties +chanting +chantingly +chantlate +chantlind +chantor +chantors +chantre +chantrel +chantress +chantries +chants +chanty +chanute +chanvre +chanyadee +chanzan +chao +chaobon +chaocha +chaochow +chaodon +chaogenous +chaoimh +chaology +chaos +chaoses +chaotic +chaotical +chaotically +chaoticness +chaoue +chaouen +chaouia +chaovarat +chaoxian +chaozhou +chap +chapa +chapacura +chapacuran +chapah +chapai +chapanec +chapara +chaparajos +chaparal +chaparrals +chaparro +chapatty +chapbook +chapbooks +chapdelaine +chape +chapeau +chapeaus +chapeaux +chaped +chapel +chapeless +chapelet +chapelgoer +chapelgoing +chapelhill +chapellage +chapellany +chapelle +chapelman +chapelmaster +chapelry +chapels +chapelward +chapen +chaperno +chaperonage +chaperoned +chaperoning +chaperonless +chaperons +chapfallen +chapin +chapiter +chapiters +chapitral +chaplain +chaplaincies +chaplainry +chaplains +chaplainship +chapleau +chapless +chaplet +chapleted +chaplets +chapleya +chaplin +chaplino +chapman +chapmanranch +chapmansboro +chapmanship +chapmanville +chapmen +chapmnhall +chapmond +chapogir +chapournet +chappaqua +chappaul +chapped +chappel +chappell +chappellet +chappellhill +chappells +chapper +chappie +chappin +chapping +chappius +chappow +chappuis +chappy +chaps +chapt +chaptalize +chapter +chapteral +chaptered +chapterful +chaptering +chapters +chaptico +chapuli +chaput +chapwoman +chaque +chaqueta +char +chara +charabanc +charabancer +charabancs +charac +characeae +characeous +characers +characetum +characin +characine +characinid +characinidae +characinoid +character +characterful +characterial +characterism +characterist +characterize +characters +charactery +charade +charades +charadrii +charadriidae +charadrine +charadrioid +charadrius +charales +charangit +charani +chararas +charas +charashim +charazani +charba +charberd +charbon +charboneau +charbonneau +charbonnet +charbroil +charbroiled +charbroiling +charbroils +charc +charca +charchan +charchanko +charchemish +charco +charcoal +charcoaled +charcoals +charcoaly +charcot +charcutier +chardiet +chardin +chardock +chardon +chards +chare +chared +charee +charene +charensol +charenson +charenton +charer +chares +charest +charet +charette +charge +chargeable +chargeably +charged +chargedst +chargee +chargeless +chargeling +chargeman +chargen +charger +chargers +charges +chargeship +chargest +charging +chargui +chari +chariar +charib +charice +charicleia +charier +chariest +charikar +charikila +charil +charily +charin +chariness +charing +charinile +chariot +charioted +chariotee +charioteer +charioteers +charioting +chariotlike +chariotman +chariotry +chariots +chariotway +charis +charism +charisma +charismas +charismata +charismatic +charisms +charissa +charisse +charisticary +charita +charitable +charitably +charites +charities +charito +chariton +charitum +charity +charityless +charityware +charivari +chark +charka +charkha +charkhana +charko +charla +charladies +charlady +charlaine +charland +charlatan +charlatanic +charlatanish +charlatanism +charlatanry +charlatans +charlatism +charlean +charlebois +charleen +charlemagne +charlemont +charlena +charlene +charleroi +charles +charlescity +charleson +charleston +charlestons +charlestown +charlesworth +charlet +charleton +charlev +charlevoix +charley +charlie +charliebrown +charline +charlino +charlinski +charlis +charlita +charlo +charlock +charlois +charlot +charlots +charlott +charlotta +charlotte +charlsey +charlstn +charlton +charltoncity +charlus +charly +charm +charmagne +charmain +charmaine +charman +charmane +charmap +charmco +charmed +charmedly +charmel +charmer +charmerace +charmers +charmful +charmfully +charmfulness +charmian +charmine +charming +charminger +charmingly +charmingness +charmion +charmless +charmlessly +charmm +charmolie +charmolou +charms +charmwise +charnel +charnels +charnes +charnet +charney +charnier +charno +charnock +charnockite +charo +charom +charon +charone +charonian +charonic +charontas +charophyta +charotari +charpentier +charpin +charpini +charpit +charpoy +charqued +charqui +charr +charran +charred +charret +charrier +charriere +charring +charrington +charro +charron +charros +charruan +charruas +charry +chars +charset +charsetalias +charsetdecl +charshaf +charsingha +chart +chartable +chartaceous +chartchai +charted +charter +charterable +charterage +chartered +charterer +charterers +charterhouse +chartering +charterist +charterless +charteroak +charters +chartfx +charthouse +chartier +charting +chartings +chartism +chartist +chartists +chartless +chartley +chartmaker +chartology +chartometer +chartophylax +chartrand +chartreux +charts +chartula +chartulary +charu +charuk +charwell +charwoman +charwomen +chary +charybdian +charybdis +charyl +chas +chasable +chasan +chase +chaseable +chaseburg +chasecity +chased +chaseley +chasemills +chasen +chaser +chasers +chases +chaseth +chashan +chasidim +chasing +chasings +chaska +chasm +chasma +chasmal +chasmed +chasmfrom +chasmic +chasmogamic +chasmogamous +chasmogamy +chasmophyte +chasms +chasmy +chasov +chaspa +chasse +chassed +chasselas +chassell +chassemaree +chassepot +chasser +chasses +chasseur +chassigneux +chassignite +chassilier +chasta +chastacosta +chaste +chastely +chasten +chastened +chastener +chasteners +chasteness +chastenest +chasteneth +chastening +chasteningly +chastenment +chastens +chaster +chastest +chasteweed +chastisable +chastise +chastised +chastisement +chastiser +chastisers +chastises +chastiseth +chastising +chastities +chastity +chasto +chasu +chasuble +chasubled +chasubles +chat +chataignier +chataka +chatans +chatarpur +chatawa +chatburn +chatchai +chatchika +chatcodes +chate +chateabamos +chateaugay +chateaupers +chateauroy +chateaus +chatel +chatelain +chatelaine +chatelaines +chatelainry +chatellany +chater +chatfield +chatha +chatham +chathamite +chati +chatillon +chatin +chatino +chatinover +chato +chatom +chatot +chatoyance +chatoyancy +chatoyant +chatri +chats +chatsome +chatsworth +chatta +chattable +chattagram +chattanooga +chattanoogan +chattar +chattaroy +chattation +chatte +chatted +chattelhood +chattelism +chattelize +chattels +chattelship +chatter +chatteration +chatterbag +chatterbox +chatterboxes +chattered +chatterer +chatterers +chattererz +chattering +chatteringly +chatteris +chatterjee +chatterji +chatterley +chattermag +chatters +chatterton +chattery +chatti +chattier +chattiest +chattily +chattin +chattiness +chatting +chattingly +chattisgarhi +chatto +chattoe +chattos +chatwood +chau +chaubey +chaucer +chaucerian +chauceriana +chaucerism +chauchat +chaudangsi +chaudhari +chaudhary +chaudhry +chaudhuri +chaudri +chaudron +chaudry +chaufers +chauffer +chauffers +chauffeur +chauffeured +chauffeuring +chauffeurs +chauffeuse +chaugarkhiya +chauhan +chaui +chauk +chauki +chaukidari +chaula +chaulan +chauliodes +chaulmes +chaulmoogra +chaulmoogric +chauma +chaumet +chaumette +chaumont +chaun +chauna +chauncey +chaungtha +chaunt +chaunter +chaunters +chaunting +chauntress +chaura +chaurasia +chaurasya +chaurette +chaus +chausse +chautard +chautauquan +chaute +chautems +chauth +chauveau +chauvel +chauvelin +chauvenet +chauvin +chauvinism +chauvinist +chauvinistic +chauvinists +chaux +chava +chavacano +chavalit +chavane +chavante +chavantean +chavar +chavasse +chavasson +chavchuven +chavdur +chave +chavender +chavers +chaves +chavez +chavibetol +chavicin +chavicine +chavicol +chavies +chavinillo +chavis +chavish +chavotte +chawai +chawalagiri +chawan +chawbacon +chawe +chawed +chawer +chawers +chawi +chawia +chawing +chawiyana +chawk +chawki +chawl +chawla +chawnam +chawng +chaws +chawstick +chawuncu +chay +chaya +chayabita +chayahuita +chayaphum +chayaroot +chayawita +chayevsky +chayhuita +chaykin +chaykovskogo +chayma +chayne +chayota +chayote +chayotes +chayroot +chayssac +chayucu +chaz +chazan +chazumba +chazy +chdir +chdr +chea +cheal +cheaney +cheap +cheapdns +cheapen +cheapened +cheapener +cheapening +cheapens +cheaper +cheapery +cheapest +cheapie +cheapies +cheaping +cheapish +cheaply +cheapness +cheaps +cheapside +cheapskate +cheapskates +cheat +cheatable +cheated +cheatee +cheater +cheateries +cheaters +cheatery +cheatham +cheatin +cheating +cheatingly +cheatrie +cheats +cheatsheet +cheba +chebacco +chebanse +chebar +chebec +chebel +cheberloev +cheberlot +chebero +chebog +chebotarev +cheboygan +chebule +chebulinic +chebychev +chebyshev +checchi +checco +chechehet +chechek +chechen +checinski +check +checkable +checkage +checkbird +checkbit +checkbite +checkbits +checkbook +checkbooks +checkbox +checkboxes +checked +checker +checkerbelly +checkerbloom +checkered +checkering +checkerist +checkers +checkerwise +checkerwork +checkhook +checking +checkingtool +checkit +checkland +checkless +checklist +checklists +checkmail +checkmake +checkman +checkmate +checkmated +checkmates +checkmating +checknl +checkoff +checkoffs +checkout +checkouts +checkpoint +checkpointed +checkpoints +checkpop +checkrack +checkrein +checkroll +checkroom +checkrooms +checkrope +checkrow +checkrowed +checkrower +checks +checkstone +checkstrap +checkstring +checksum +checksumming +checksums +checkups +checkweigher +checkwork +checky +checnakov +checotah +checquers +chedar +cheddar +cheddaring +cheddars +cheddi +cheddite +chedepo +cheder +chedi +chediak +chedlock +chedorlaomer +chedzoy +chee +cheech +cheecha +cheechako +cheechi +cheek +cheekbone +cheekbones +cheeked +cheeker +cheekful +cheekfuls +cheekier +cheekiest +cheekily +cheekiness +cheeking +cheekish +cheekless +cheekpiece +cheeks +cheep +cheeped +cheeper +cheepers +cheepily +cheepiness +cheeping +cheeps +cheepy +cheer +cheered +cheerer +cheerers +cheereth +cheerful +cheerfulize +cheerfully +cheerfulness +cheerfulsome +cheerier +cheeriest +cheerily +cheeriness +cheering +cheeringly +cheerio +cheerios +cheerleader +cheerleaders +cheerless +cheerlessly +cheerly +cheers +cheesbro +cheese +cheeseboard +cheesebox +cheeseburger +cheesecakes +cheesecloths +cheesecurd +cheesecutter +cheesed +cheeseflower +cheeselip +cheesemakers +cheeseman +cheesemonger +cheeseparer +cheeseparing +cheeser +cheesery +cheeses +cheesewood +cheesier +cheesiest +cheesily +cheesiness +cheesing +cheesman +cheesy +cheet +cheeta +cheetah +cheetahs +cheeter +cheetham +cheetie +cheever +cheevera +cheevers +chefdom +chefdoms +chefe +chefornak +chefrinia +chefs +cheg +chego +chegodieff +chegoe +chegre +cheha +chehalis +chehuta +chehwan +cheich +cheick +cheik +cheilanthes +cheilitis +cheir +cheiragra +cheiranthus +cheirogaleus +cheiroglossa +cheirognomy +cheirography +cheirolin +cheirology +cheiromancy +cheiromegaly +cheiropodist +cheiropody +cheiroptera +cheirosophy +cheirospasm +cheje +cheju +chejudo +chek +cheka +chekan +cheke +chekhov +cheki +chekiri +chekist +chekmak +chekmarev +chekol +chekov +chel +chela +chelae +chelal +chelan +chelanfalls +chelas +chelaship +chelated +chelates +chelating +chelation +chelator +chelators +chelcie +chelem +chelentano +cheli +chelicer +chelicera +cheliceral +chelicerate +chelicere +chelide +chelidon +chelidonate +chelidonian +chelidonic +chelidonine +chelidonium +cheliferidea +cheliferous +cheliform +chelimsky +chelingo +cheliped +chellappan +chellean +chellini +chello +chelluh +chelm +chelmsford +chelo +chelodina +chelodine +chelone +chelonia +chelonian +chelonid +chelonidae +cheloniid +cheloniidae +chelonin +chelophore +chelovek +cheloveka +chelovekom +cheloveky +chelp +chelpanov +chelsae +chelsea +chelsey +chelsie +chelsy +cheltenham +chelton +chelub +chelubai +chelura +chelydidae +chelydra +chelydridae +chelydroid +chelys +chem +chema +chemainus +chemakhi +chemakuan +chemant +chemarims +chemasthenia +chemawinite +cheme +chemehuevi +chemenal +chemesthesis +chemgui +chemiatric +chemiatrist +chemiatry +chemical +chemicalize +chemically +chemicals +chemicker +chemicovital +chemics +chemie +chemigraph +chemigraphic +chemigraphy +chemiloon +chemin +chemins +chemiotactic +chemiotaxic +chemiotaxis +chemiotropic +chemiphotic +chemis +chemise +chemises +chemisette +chemism +chemisms +chemistries +chemistry +chemists +chemitype +chemitypy +chemoceptor +chemokinesis +chemokinetic +chemolysis +chemolytic +chemolyze +chemoreflex +chemosh +chemosis +chemosmosis +chemosmotic +chemosurgery +chemotactic +chemotaxis +chemotaxy +chemotic +chemotropic +chemotropism +chemouny +chemult +chemung +chemurgic +chemurgical +chemurgy +chen +chena +chenaanah +chenab +chenal +chenalho +chenalo +chenani +chenaniah +chenap +chenapian +chenard +chenault +chenchenji +chenchu +chenchwar +chende +chene +chenevixite +cheney +cheneyville +cheng +chengdu +chengfeng +chenguelaia +chenica +chenier +cheniller +chenilles +chenkin +chenldieu +chennette +chenoa +chenopod +chenopodium +chenoweth +chensu +chenswar +chentel +cheong +cheoplastic +cheops +chepachet +chepang +chepetar +chephirah +chepregi +chepster +chepstow +cheque +chequer +chequered +chequering +chequers +cheques +cher +chera +cheran +cherangany +cheraw +cherbourg +cherbury +cherchez +chercock +cherd +chere +chereau +cherel +cherem +cheremis +cheremiss +cheremissian +cherenko +cherenkov +cherepon +chereponi +cheres +cherethims +cherethites +cherey +cherez +cheri +cherianne +cheribon +cherice +cherida +cherie +cheril +cherilyn +cherilynn +cherimoya +cherin +cherise +cherish +cherishable +cherished +cherisher +cherishers +cherishes +cherisheth +cherishing +cherishingly +cherishment +cherith +cheriton +cherkas +cherkasov +cherkes +cherkess +cherkesser +cherlite +cherlyn +chermak +chermes +chermidae +chermish +chern +chernava +chernenko +chernetsky +chernevsky +cherney +cherng +chernick +chernobyl +chernoff +chernofftype +chernohb +chernojopix +chernomorish +chernov +chernozem +chernyak +chernykh +chernyshoff +chero +cherokee +cherokees +cherone +cheronea +cheroot +cheroots +cherrapunji +cherre +cherri +cherried +cherrier +cherries +cherrill +cherrita +cherry +cherrycreek +cherryfield +cherryfork +cherryhill +cherrylike +cherrylog +cherryplain +cherrystone +cherrystones +cherrytree +cherryvale +cherryvalley +cherryville +cherrywood +cherson +chersonese +chersydridae +cherte +chertier +cherty +cherub +cherubic +cherubical +cherubically +cherubimic +cherubimical +cherubims +cherubin +cherubs +cherusci +cheruskia +chervante +chervany +cherviakov +chervil +chervils +chervonets +cherwin +chery +cherye +cheryl +chesalon +chesaning +chesapeake +chesbro +chesebro +chesed +cheshire +chesil +chesley +cheslie +chesnais +chesnakov +chesnee +chesnel +chesnet +chesney +chesnov +chesnut +chesny +cheson +chess +chessa +chessbd +chessboard +chessboards +chessdom +chessel +chesser +chesses +chessist +chessman +chessmen +chesspartner +chesstree +chessu +chessylite +chest +chested +chesteen +chester +chesterfield +chestergap +chesterhill +chesterland +chesterlite +chestertown +chesterville +chestful +chestfuls +chestier +chestiest +chestily +chestiness +chestnut +chestnuthill +chestnuts +chestnutty +chestpiece +chests +chestsprings +chesty +chesulloth +cheswezumi +cheswick +cheswold +chet +cheta +chetco +chete +chetek +cheth +chetilla +chetley +chetopa +chetrit +chetrum +chettik +chetty +chetverik +chetverom +chetvert +chetwynde +cheuk +cheung +cheva +chevage +chevak +cheval +chevalglass +chevaliers +chevaline +chevance +chevarie +chevaux +cheve +cheven +chevener +chevesaile +chevied +chevies +chevillon +chevin +cheviot +chevisance +chevise +chevon +chevre +chevreau +chevret +chevrette +chevrolet +chevrolets +chevrone +chevronel +chevronelly +chevronne +chevrons +chevronwise +chevrony +chevrotain +chevying +chew +chewa +chewable +chewalla +chewbacca +chewbark +chewed +chewelah +chewer +chewers +cheweth +chewi +chewier +chewiest +chewikar +chewing +chewink +chewong +chews +chewstick +chewsville +chewy +chey +cheyanne +cheyenne +cheyennes +cheylard +cheyne +cheynes +cheyney +chez +chezib +chfn +chgrb +chgrp +chhabria +chhathar +chhatri +chhikara +chhindwara +chhintang +chhnang +chhori +chhukha +chhunhuor +chia +chiabaut +chiahsiang +chiai +chiaki +chiam +chian +chianese +chiang +chianglo +chiangmai +chiangrai +chiangs +chiantoni +chiao +chiapanec +chiapanecan +chiapas +chiarelli +chiari +chiarina +chiaromonte +chiaroscuro +chiaroscuros +chiarra +chias +chiasm +chiasma +chiasmal +chiasmatype +chiasmatypy +chiasmic +chiasmodon +chiasms +chiasmus +chiastic +chiastolite +chiastoneury +chiasu +chiat +chiaureli +chiaus +chiavaroli +chib +chiba +chibbak +chibbuk +chibcha +chibchan +chibemba +chibinite +chibisov +chibito +chibiya +chibosov +chibouk +chibrit +chibuk +chicago +chicagoan +chicagoans +chicagopark +chicagoridge +chicagua +chicahuaxtla +chicamaw +chicane +chicaned +chicaner +chicaneries +chicaners +chicanes +chicaning +chicanos +chicao +chicarelli +chicaric +chicarnost +chicayote +chiccory +chich +chicha +chichamachu +chichanga +chicharito +chichay +chichester +chichewa +chichi +chichicapan +chichicaste +chichimec +chichimeca +chichimecan +chichipate +chichipe +chichis +chichituna +chicho +chichonyi +chichten +chichwabo +chick +chickabiddy +chickadees +chickahominy +chickamauga +chickaree +chickasaw +chickasaws +chickasha +chickell +chicken +chickenberry +chickenbill +chickened +chickenfoot +chickenhood +chickening +chickens +chickenweed +chickenwort +chicker +chickering +chickhood +chickie +chickling +chickorie +chickpea +chickpeas +chicks +chicksen +chickstone +chickweeds +chickwit +chicky +chicle +chicles +chiclet +chiclets +chicly +chicness +chico +chicoine +chicolini +chicomecoatl +chicomucelo +chicopee +chicora +chicories +chicory +chicos +chicot +chicota +chicote +chicqued +chicquer +chicquest +chicquing +chics +chid +chidden +chide +chided +chider +chiders +chides +chidester +chidi +chidigo +chiding +chidingly +chidingness +chidon +chidori +chidra +chie +chief +chiefdoms +chiefer +chiefery +chiefess +chiefest +chiefish +chiefland +chiefless +chiefling +chiefly +chiefs +chiefship +chieftaincy +chieftainess +chieftainry +chieftains +chieftess +chieh +chiehn +chieko +chiel +chield +chields +chiels +chiem +chien +chienchiang +chienfu +chienpai +chientung +chieo +chiesanuova +chiffer +chiffinch +chiffonade +chiffonier +chiffoniers +chiffonnier +chiffonniere +chiffonniers +chiffons +chiffony +chifforobe +chifforobes +chiga +chigetai +chiggak +chiggers +chiggerweed +chignik +chignoned +chignons +chigoe +chigoes +chigogo +chigwedere +chih +chiharu +chihfu +chihli +chihming +chihuahua +chihuahuas +chiikuhane +chiila +chiiruey +chik +chika +chikachiki +chikage +chikagulu +chikahonde +chikai +chikalanga +chikamanga +chikano +chikaonde +chikara +chikaranga +chikbaraik +chikbarik +chikena +chikhladze +chiki +chikide +chikkagoudar +chikli +chikobo +chikparon +chikriaba +chikte +chikun +chikunda +chikuse +chikuya +chikwadze +chikwawa +chil +chilac +chilacavote +chilala +chilalgia +chilamba +chilango +chilao +chilapalapa +chilarium +chilas +chilasdarel +chilausky +chilblains +chilcat +chilcoot +chilcotin +chilcott +child +childbearing +childbed +childbeds +childbirth +childbirths +childcrowing +childe +childed +childerhose +childermas +childers +childersburg +childhood +childhoods +childing +childish +childishly +childishness +childkind +childless +childliest +childly +childness +childproof +childree +children +childrenite +childrens +childress +childridden +childs +childship +childward +childwold +chile +chileab +chilean +chileanize +chileans +chilela +chilena +chilenite +chilenje +chiles +chileung +chilhowee +chilhowie +chili +chiliad +chiliadal +chiliadic +chiliagon +chiliahedron +chiliarch +chiliarchia +chiliarchy +chiliasm +chiliast +chiliastic +chilibeck +chilicote +chilicothe +chilidium +chilies +chilina +chilinidae +chiliomb +chilion +chilis +chiliss +chilitis +chiliwack +chilkat +chilko +chill +chilla +chillagite +chillcam +chilled +chiller +chillers +chillest +chilli +chillicothe +chillie +chillier +chillies +chilliest +chillily +chilliness +chilling +chillingly +chillip +chillish +chilliwack +chillness +chillo +chillroom +chills +chillsome +chillum +chillumchee +chillums +chilly +chilmad +chilmark +chilmore +chilo +chilognath +chilognatha +chilognathan +chilogrammo +chiloma +chilomastix +chiloncus +chiloplasty +chilopod +chilopoda +chilopodan +chilopodous +chilopsis +chiloquin +chilostoma +chilostomata +chilostome +chilotomy +chilowe +chilpancingo +chiltepec +chiltern +chilton +chilu +chiluchazi +chiluimbi +chilunda +chilung +chiluvale +chiluwunda +chilver +chilvers +chima +chimabiha +chimacum +chimaera +chimaeras +chimaerid +chimaeridae +chimaeroid +chimaeroidei +chimakonde +chimakuan +chimakum +chimalakwe +chimalapa +chimane +chimango +chimanishey +chimanyika +chimaphila +chimarikan +chimariko +chimatengo +chimaviha +chimay +chimayo +chimba +chimbalazi +chimbari +chimbian +chimble +chimbley +chimbly +chimborazo +chimbote +chimbu +chimbuluk +chimbunda +chime +chimed +chimene +chimento +chimer +chimera +chimeras +chimerical +chimerically +chimers +chimes +chimesmaster +chimham +chimila +chiminage +chiming +chimira +chimkesori +chimki +chimley +chimmesyan +chimmezyan +chimmo +chimney +chimneyhead +chimneyless +chimneyman +chimneyrock +chimneys +chimneysweep +chimolitha +chimona +chimonanthus +chimp +chimpanzees +chimpoto +chimps +chimu +chimwera +chin +china +chinaberry +chinadit +chinagrove +chinaindia +chinalake +chinalike +chinaman +chinamania +chinamaniac +chinambya +chinampa +chinamukuni +chinandega +chinanta +chinantec +chinantecan +chinanteco +chinantecs +chinaphan +chinaphthol +chinar +chinaroot +chinas +chinaspring +chinatu +chinaussr +chinaware +chinawoman +chinband +chinbe +chinbok +chinbon +chinbone +chincha +chinchasuyu +chinchayote +chinchaysuyo +chinche +chinches +chinchiest +chinchillas +chinching +chinchy +chincloth +chincoteague +chincough +chindanoot +chindau +chindiri +chindis +chindwara +chindwin +chined +chinee +chines +chinese +chinesecamp +chineseline +chinesery +chinfei +chinfui +ching +chinga +chingachgook +chingalee +chingchang +chingchuong +chinghizi +chingis +chingkao +chinglang +chingleput +chingma +chingmengu +chingming +chingoni +chingpaw +chingpo +chingshui +chingsungyu +chinguil +chingwah +chinh +chinhwan +chinik +chinimakonde +chinin +chining +chinipas +chiniwala +chinkara +chinked +chinker +chinkier +chinkiest +chinking +chinkle +chinks +chinky +chinle +chinless +chinme +chinn +chinnam +chinned +chinner +chinnereth +chinneroth +chinners +chinnery +chinning +chinny +chino +chinoa +chinol +chinone +chinookan +chinooks +chinos +chinotoxine +chinotti +chinovalley +chinpiece +chins +chinse +chinsenga +chinstrap +chint +chintoor +chints +chintz +chintzes +chintzier +chintziest +chintzy +chinwari +chinwood +chiny +chinyanja +chinyungwi +chio +chiococca +chiococcine +chiogenes +chiolite +chiom +chionanthus +chionaspis +chionididae +chionis +chionodoxa +chios +chiot +chiotilla +chiou +chip +chipandwire +chipaya +chipchap +chipchop +chipeta +chipewyan +chipiajes +chiplet +chipley +chipling +chiplist +chipman +chipmunks +chipodzo +chipogolo +chipogoro +chipoka +chippable +chippage +chipped +chipper +chippered +chippering +chippers +chippewa +chippewabay +chippewalake +chippewas +chippie +chippies +chipping +chippy +chips +chipsatz +chipset +chipsets +chiptooth +chipwood +chiquena +chiquia +chiquian +chiquiana +chiquihuitla +chiquimula +chiquita +chiquitan +chiquitano +chiquito +chir +chirac +chiradzulu +chiragra +chiral +chiralgia +chirality +chirang +chirapsia +chirata +chireno +chiri +chiriana +chiricahua +chirichano +chiricoa +chiriguano +chirima +chirimen +chirine +chirino +chirinola +chiripa +chiripon +chiripong +chiripuno +chiripunu +chiriqui +chirivita +chirk +chirkanu +chirked +chirker +chirks +chirkuwa +chirm +chirmar +chiro +chiroa +chirogale +chirognomic +chirognomist +chirognomy +chirognostic +chirograph +chirographer +chirographic +chirography +chirogymnast +chirolas +chirological +chirologies +chirologist +chirology +chiromance +chiromancer +chiromancist +chiromancy +chiromant +chiromantic +chiromantis +chiromegaly +chirometer +chiromyidae +chiromys +chiron +chironomic +chironomid +chironomidae +chironomus +chironomy +chironym +chiroplasty +chiropod +chiropodial +chiropodic +chiropodical +chiropodist +chiropodists +chiropodous +chiropody +chiropractic +chiropraxis +chiropter +chiroptera +chiropteran +chiropterite +chiropterous +chirorokursi +chirosophist +chirospasm +chirotes +chirotherian +chirotherium +chirothesia +chirotonsor +chirotonsory +chirotony +chirotype +chirozwi +chirped +chirper +chirpers +chirpier +chirpiest +chirpily +chirpiness +chirping +chirpingly +chirpling +chirps +chirpy +chirr +chirripo +chirrup +chirruped +chirruper +chirruping +chirrups +chirrupy +chirtladze +chiru +chirue +chirurgeon +chirurgery +chirurgy +chisagocity +chisak +chisalampasu +chisedec +chisel +chiseled +chiseler +chiselers +chiseling +chiselled +chiseller +chisellers +chisellike +chiselling +chiselly +chiselmouth +chisels +chisena +chisenji +chishinga +chishingyini +chisholm +chishona +chishu +chisimayu +chisingini +chislaine +chisleu +chislon +chisoli +chisolm +chisquare +chisquared +chisquareds +chissano +chistiakov +chistkqow +chistyacov +chistyakov +chisum +chiswell +chiswick +chita +chitaesh +chitak +chital +chitapavani +chitawan +chitchat +chitchats +chitchatty +chitembo +chitimacha +chitimachan +chitin +chitina +chitinized +chitinoid +chitinous +chitins +chitipa +chitkara +chitkhuli +chitlin +chitling +chitlings +chitlins +chitmansing +chitnis +chito +chitodawa +chitonahua +chitonga +chitons +chitosamine +chitosan +chitose +chitra +chitral +chitrali +chitrari +chits +chittagong +chittagonian +chittamwood +chittell +chittenango +chittenden +chitter +chittered +chittering +chitterings +chitterling +chitterlings +chitters +chitties +chittim +chittineni +chittister +chitty +chituan +chitumbuka +chitwan +chityal +chiu +chiun +chiupei +chiutse +chiutzu +chiuyung +chivalresque +chivalric +chivalries +chivalrously +chivalry +chivaree +chivarras +chivarros +chivenda +chivers +chiverton +chives +chivey +chiviatite +chividunda +chivied +chivies +chivilikhin +chivington +chivvied +chivvies +chivvy +chivvying +chivy +chivying +chiwaro +chiwei +chiwemba +chiwere +chixanga +chiyang +chiyao +chiykowski +chiyoko +chizezuru +chizhevskij +chizhov +chizima +chizkiyahu +chkalik +chkalov +chkdate +chkdsk +chkeidze +chkfil +chkfile +chladnite +chlamyd +chlamydate +chlamydeous +chlamydozoa +chlamydozoan +chlamyphore +chlamyphorus +chlamys +chlef +chleuh +chlo +chloanthite +chloasma +chloe +chloette +chlor +chloracetate +chloragogen +chloral +chloralide +chloralism +chloralize +chloralose +chlorals +chloralum +chloramide +chloramine +chloramphe +chloranemia +chloranemic +chloranil +chloranthus +chloranthy +chlorapatite +chlorates +chlorazide +chlorcosane +chlordan +chlore +chlorella +chloremia +chlorenchyma +chlorhydrate +chlorhydric +chloric +chlorid +chloridate +chloridation +chloridella +chlorider +chlorides +chloridize +chlorimeter +chlorimetric +chlorimetry +chlorin +chlorinated +chlorinates +chlorinating +chlorination +chlorinator +chlorinators +chlorine +chlorines +chlorinize +chlorinous +chloriodide +chlorion +chlorioninae +chloris +chlorite +chlorites +chloritic +chloritize +chloritoid +chlorize +chlormethane +chloroacetic +chloroamide +chloroamine +chloroanemia +chloroaurate +chloroauric +chloroaurite +chlorochrous +chlorococcum +chlorococcus +chlorocresol +chlorodize +chloroformed +chloroformic +chloroforms +chlorogenic +chlorogenine +chlorohydrin +chloroiodide +chloroma +chlorometer +chlorometric +chlorometry +chloropal +chlorophane +chlorophenol +chlorophora +chlorophyl +chloropia +chloropicrin +chloroplasts +chloroprene +chloropsia +chloroquine +chlorosis +chlorospinel +chlorotic +chlorous +chlorsalol +chloryl +chlosinde +chlud +chmara +chmark +chme +chmielewski +chmk +chmod +chmoril +chms +chmu +chmura +chmx +chnuphis +chnzanowski +choa +choachyte +choana +choanate +choanephora +choanocytal +choanocyte +choanoid +choanosomal +choanosome +choapam +choapan +choate +choaty +chob +chobba +chobe +chobua +choca +chocama +chocard +choccolocco +chochita +chocho +chochoteco +chockablock +chocked +chocker +chockfull +chockie +chocking +chockler +chockman +chocks +choco +chocoan +chocolat +chocolate +chocolates +chocorua +chocowinity +chocs +choctaw +choctaws +chode +chodhari +choe +choel +choenix +choeropsis +choes +choffa +choffer +choforo +choga +chogak +chogset +choha +chohan +choi +choiak +choibalsan +choice +choiceful +choiceless +choicely +choiceness +choicer +choices +choicest +choichiro +choicso +choicy +choil +choiler +choimi +choir +choirboy +choirboys +choired +choiring +choirlike +choirman +choirmasters +choirs +choirwise +choisalmst +choiseul +choisya +chojnacka +chojuacka +chok +chokage +choke +chokebore +chokecherry +choked +chokedamp +chokefull +chokepoint +choker +chokered +chokerman +chokers +chokes +chokestrap +chokeweed +chokey +chokfem +chokidar +chokier +choking +chokingly +chokio +chokmorov +chokobo +chokoeva +chokoloskee +chokosi +chokossi +chokra +chokri +choksi +chokwe +choky +chol +chola +cholagogic +cholagogue +cholakova +cholalic +cholame +cholan +cholane +cholangitis +cholanic +cholanthrene +cholate +chold +choleate +cholecyanine +cholecyst +cholecystic +choledoch +choledochal +cholehematin +choleic +choleine +choleinic +cholelith +cholelithic +cholemia +choleokinase +cholepoietic +choler +cholera +choleraic +choleras +choleric +cholericly +cholericness +choleriform +cholerine +choleroid +choleromania +cholerrhagia +cholers +cholestane +cholestanol +cholestene +cholesterate +cholesteric +cholesterin +cholesteryl +cholet +choletelin +choletherapy +cholette +choleuria +cholewinski +choli +choliamb +choliambic +choliambist +cholic +cholimi +choline +cholinergic +cholinic +cholita +cholla +chollabukto +chollado +chollanamdo +chollas +choller +chollie +cholly +cholo +cholochrome +cholocyanine +choloepus +chologenetic +choloidic +choloidinic +chololith +chololithic +cholon +cholonan +cholones +cholophein +cholorrhea +choloscopy +cholpon +cholti +cholum +choluria +choluteca +choma +chombee +chome +chomik +chomo +chomped +chomper +chomping +chomps +chon +chona +choncharu +chondokyo +chondral +chondralgia +chondre +chondrectomy +chondric +chondrify +chondrigen +chondrilla +chondrin +chondrinous +chondriocont +chondriome +chondriomere +chondriomite +chondriosome +chondrite +chondrites +chondritic +chondritis +chondroblast +chondrocele +chondroclast +chondrocyte +chondrodite +chondroditic +chondrodynia +chondrofetal +chondrogen +chondrogeny +chondroid +chondroitic +chondroitin +chondrology +chondroma +chondromyces +chondromyoma +chondrophore +chondrophyte +chondroplast +chondrosin +chondrosis +chondrostean +chondrostei +chondrotome +chondrotomy +chondrule +chondrules +chondrus +chone +chong +chonge +chongil +chongjin +chongli +chongming +chongroku +chongtien +chongyang +choni +chonolith +chonta +chontal +chontalan +chontales +chontaquiro +chontawood +chonyi +choo +chooch +choong +choop +choosable +choose +chooser +choosers +chooses +choosest +chooseth +choosey +choosier +choosiest +choosiness +choosing +choosingly +choosri +chop +chopa +chopboat +chopel +chopfallen +chophouse +chophouses +chopi +chopin +chopine +chopins +choplogic +chopowick +chopped +choppedoff +chopper +choppered +choppers +choppier +choppiest +choppily +choppiness +chopping +chops +chopstick +chopsticks +choptovy +chopunnish +choquette +chor +chora +choragic +choragion +choragium +choragus +choragy +chorai +choralcelo +choraleon +chorales +choralist +chorally +chorals +chorashan +chorasmian +chorazin +chord +chorda +chordaceae +chordaceous +chordally +chordate +chordates +chorded +chordeiles +chording +chorditis +chordoid +chordotomy +chordotonal +chords +chordwizard +chorea +choreal +choreas +choreatic +chored +choree +choregic +choregus +choregy +chorei +choreic +choreiform +choreman +choremen +choreographs +choreoid +choreomania +chorerra +chores +choreus +choreutic +chorgan +chorgate +chori +chorial +choriamb +choriambic +choriambize +choriambus +choric +chorines +choring +choriocele +chorioid +chorioidal +chorioiditis +chorioma +chorion +chorionic +chorioptes +chorioptic +choripetalae +chorisis +chorism +chorist +choristate +chorister +choristers +choristic +choristoma +choristry +chorization +chorizo +chorizont +chorizontal +chorizontes +chorizontic +chorizontist +chorizos +chork +chorley +chorneyko +chorny +choroba +chorogi +chorograph +chorographer +chorographic +chorography +choroid +choroidal +choroidea +choroiditis +choroids +chorological +chorologist +chorology +choromania +choromanic +chorometry +chorook +chorote +chorotega +choroti +chorre +chort +chorte +chorten +chorti +chortled +chortler +chortlers +chortles +chortling +chortosterol +choruba +chorus +chorused +choruser +choruses +chorusing +choruslike +chorussed +chorusses +chorussing +chorwat +choryos +chose +chosen +choses +choshui +chosid +chosing +chota +chotahazri +chotai +chotan +chotanagpur +chotaro +chote +choteau +choti +chotkowski +choto +choton +chott +chou +chouan +chouanize +chouard +choudary +choudhara +choudhury +choudrant +chouette +chough +chougikh +chougoule +chouhan +chouinard +chouka +choukchine +chouls +choultry +choup +choupon +chouquette +chourineur +chous +chouse +chouser +choushan +chousingha +chouteau +chow +chowa +chowanoc +chowchilla +chowchow +chowchows +chowdered +chowderhead +chowdering +chowders +chowed +chowhan +chowhound +chowing +chowk +chown +chowra +chowraj +chowry +chows +chowtime +chowtimes +choy +choya +choynowska +choynski +choyroot +chozar +chozeba +chozen +chpass +chpc +chrau +chrematheism +chrematist +chrematistic +chresmology +chrestomathy +chria +chriesman +chrimsel +chris +chrism +chrisma +chrismal +chrisman +chrismary +chrismatine +chrismation +chrismatite +chrismatize +chrismatory +chrismon +chrisms +chrisney +chrisom +chrisopher +chrisroot +chrissie +chrissis +chrissy +christ +christa +christabel +christabella +christal +christalle +christan +christchurch +christcross +christdom +christean +christed +christel +christelle +christen +christendie +christene +christened +christener +christeners +christening +christenmas +christens +christensen +christensson +christer +christhood +christi +christiaan +christiad +christian +christiana +christiane +christiania +christianism +christianite +christianity +christianize +christianly +christianne +christians +christiansen +christianson +christicide +christie +christies +christiform +christin +christina +christinat +christine +christione +christl +christlein +christless +christliness +christly +christmas +christmases +christmasing +christmass +christmasy +christo +christof +christoff +christoffer +christogram +christolatry +christology +christopeit +christoph +christophany +christophe +christopher +christos +christosun +christotias +christoval +christs +christy +christycarol +christye +christyna +chritmass +chrnsc +chroatol +chrobat +chroma +chromaffin +chromaffinic +chromammine +chromaphil +chromaphore +chromas +chromascope +chromata +chromatical +chromatician +chromaticism +chromaticity +chromatics +chromatid +chromatinic +chromatism +chromatist +chromatium +chromatize +chromatocyte +chromatoid +chromatology +chromatone +chromatophil +chromatopsia +chromatosis +chromatrope +chromaturia +chromatype +chromazurine +chrome +chromed +chromene +chromes +chromeyellow +chromicize +chromid +chromidae +chromide +chromides +chromidial +chromididae +chromidium +chromidrosis +chromiferous +chroming +chromiole +chromism +chromite +chromitite +chromium +chromiums +chromize +chromized +chromizes +chromizing +chromo +chromoblast +chromocenter +chromocratic +chromocyte +chromogen +chromogene +chromogenic +chromogenous +chromogram +chromograph +chromoisomer +chromolipoid +chromolith +chromolithic +chromolysis +chromomere +chromometer +chromone +chromonema +chromoparous +chromophage +chromophane +chromophile +chromophilic +chromophobic +chromophore +chromophoric +chromophyll +chromoplasm +chromoplast +chromopsia +chromos +chromoscope +chromoscopic +chromoscopy +chromosomal +chromosome +chromosomes +chromosomic +chromotrope +chromotropic +chromotropy +chromotype +chromotypic +chromotypy +chromous +chromule +chromy +chromyl +chronal +chronanagram +chronaxia +chronaxie +chronaxy +chronic +chronical +chronically +chronicity +chronick +chronicled +chronicler +chroniclers +chronicles +chronicling +chronicon +chronics +chronist +chronoclasm +chronocrator +chronodeik +chronogram +chronographs +chronol +chronologer +chronologic +chronologie +chronologies +chronologist +chronologize +chronomancy +chronomantic +chronometer +chronometers +chronometric +chronometry +chronon +chrononomy +chronons +chronopher +chronopoulou +chronos +chronoscope +chronoscopic +chronoscopy +chronosemic +chronotropic +chronowic +chroococcoid +chroococcus +chroot +chrosperma +chrotta +chru +chruchill +chruchwarden +chrysa +chrysal +chrysalian +chrysalians +chrysalid +chrysalidal +chrysalides +chrysalidian +chrysaline +chrysalis +chrysalises +chrysaloid +chrysamine +chrysammic +chrysamminic +chrysamphora +chrysaniline +chrysanisic +chrysanthous +chrysaor +chrysarobin +chrysatropic +chrysazin +chrysazol +chryse +chryseis +chrysemys +chrysene +chrysenic +chrysid +chrysidella +chrysidid +chrysididae +chrysin +chrysippus +chrysis +chrysler +chryslers +chrysoberyl +chrysobull +chrysochlore +chrysochrous +chrysocolla +chrysocracy +chrysoeriol +chrysogen +chrysograph +chrysography +chrysoidine +chrysolitic +chrysology +chrysolophus +chrysolyte +chrysomelid +chrysomonad +chrysomyia +chrysone +chrysopa +chrysopal +chrysopee +chrysophan +chrysophanic +chrysophanus +chrysophyll +chrysopid +chrysopidae +chrysopoeia +chrysopoetic +chrysoprase +chrysoprasus +chrysops +chrysopsis +chrysorin +chrysosperm +chrysothemis +chrysothrix +chrysotile +chrysotis +chryssa +chrystal +chrystall +chryste +chrystel +chrystin +chrystocrene +chsh +chstian +chthonian +chthonic +chthonophagy +chto +chtob +chtobi +chtoli +chtoto +chua +chuabo +chuadanga +chuah +chualar +chuambo +chuan +chuana +chuang +chuangchia +chuanshih +chuave +chub +chuba +chubb +chubbed +chubbedness +chubbier +chubbiest +chubbily +chubbiness +chubby +chubenko +chubo +chubs +chubut +chuch +chuchee +chuchillo +chucho +chuchona +chuck +chuckaluck +chuckawalla +chuckchansi +chucked +chucker +chuckey +chuckfull +chuckhole +chuckholes +chuckies +chucking +chuckingly +chuckle +chuckled +chucklehead +chuckler +chucklers +chuckles +chuckling +chucklingly +chuckrum +chucks +chuckster +chuckstone +chucky +chud +chuddar +chudder +chude +chudic +chudnik +chudomir +chudy +chueh +chuen +chueta +chuf +chufa +chuffed +chuffer +chuffing +chuffs +chuffy +chugach +chugani +chugari +chugged +chugger +chuggers +chugging +chugha +chugiak +chugs +chugwater +chuh +chuhe +chuhra +chuhwancew +chui +chuihuan +chuihwan +chuil +chuj +chuje +chujean +chuka +chukar +chukcha +chukchee +chukchi +chukka +chukkar +chukkas +chukker +chukkers +chukokkala +chukor +chukot +chukotka +chuku +chukudum +chul +chula +chulamoon +chulan +chulavista +chulikata +chulim +chulla +chullpa +chulupe +chulupi +chulupie +chulym +chulymshor +chum +chuma +chumash +chumashan +chumawi +chumbawamba +chumbawumba +chumbi +chumburu +chumburung +chumley +chummage +chummed +chummer +chummers +chummery +chummier +chummiest +chummily +chumminess +chumming +chummun +chummy +chump +chumpaka +chumped +chumphon +chumping +chumpish +chumpishness +chumpivilca +chumporn +chumps +chumpy +chums +chumship +chumships +chumulu +chun +chunari +chuncho +chunchula +chunchuna +chundawan +chunder +chung +chunga +chungchia +chungchong +chungchongdo +chungli +chungliang +chungphaisan +chungs +chungshan +chungsik +chungsing +chungsiung +chunguloo +chunhawan +chunjin +chunk +chunked +chunkhead +chunkier +chunkiest +chunkily +chunkiness +chunking +chunks +chunksize +chunky +chunmeng +chunn +chunner +chunnia +chunter +chunupi +chupak +chupan +chupatty +chupon +chuprassie +chuprassy +chuq +chuquis +chuquisaca +churahi +churari +churas +church +churchanity +churchcraft +churchcreek +churchdom +churched +churches +churchful +churchgoers +churchgrith +churchhill +churchianity +churchier +churchiest +churchified +churchill +churchiness +churching +churchish +churchism +churchite +churchless +churchlet +churchlier +churchlike +churchliness +churchly +churchman +churchmanly +churchmaster +churchmen +churchpoint +churchroad +churchrock +churchscot +churchsferry +churchton +churchview +churchville +churchward +churchwarden +churchwards +churchway +churchwise +churchy +churchyard +churchyards +churdan +churdles +churel +churi +churin +churinga +churiwali +churkov +churl +churled +churlhood +churlish +churlishly +churlishness +churls +churly +churm +churnability +churned +churner +churners +churnful +churning +churnmilk +churns +churnstaff +churo +churoya +churoyan +churr +churrs +churruck +churrus +churrworm +churt +churu +churubusco +churupi +churyumov +chus +chustvuesh +chut +chuted +chuter +chutes +chuting +chutist +chutists +chutiya +chutnee +chutnees +chutneys +chuty +chutzpa +chutzpah +chutzpahs +chutzpas +chuufi +chuvalo +chuvash +chuvashia +chuvelev +chuware +chuwau +chuy +chuza +chwabo +chwagga +chwaka +chwalibog +chwampo +chwana +chwang +chware +chxala +chyack +chyak +chychrun +chyi +chylaceous +chylangioma +chylaqueous +chyle +chylemia +chylidrosis +chylifaction +chylifactive +chylifactory +chyliferous +chylific +chyliform +chylify +chylocaulous +chylocauly +chylocele +chylocyst +chyloid +chylomicron +chylophylly +chylopoiesis +chylopoietic +chylosis +chylothorax +chylous +chyluria +chymaqueous +chymase +chyme +chymia +chymic +chymics +chymiferous +chymify +chymist +chymists +chymosin +chymosinogen +chymotrypsin +chymous +chypre +chytil +chytra +chytrid +chytridial +chytridiales +chytridiose +chytridiosis +chytridium +chytroi +ciacia +ciales +ciall +ciamo +ciampini +cianci +ciancibello +cianelli +ciangherotti +cianneli +ciannelli +ciao +ciara +ciaralli +ciaran +ciardi +ciarin +ciaschi +cibak +cibarial +cibarian +cibarious +cibation +cibecue +cibemba +cibitoke +cibo +cibol +cibola +cibolan +cibolo +ciboney +cibophobia +ciborium +cibory +ciboule +cibrian +cica +cicad +cicadae +cicadas +cicadellidae +cicadid +cicadidae +cicak +cicala +cicatrice +cicatrices +cicatricial +cicatricle +cicatricose +cicatricula +cicatricule +cicatrisive +cicatrix +cicatrixes +cicatrizant +cicatrizate +cicatrize +cicatrized +cicatrizer +cicatrizing +cicatrose +ciccarelli +cicchino +cicci +ciccio +cicco +ciccotti +cicek +cicelies +cicely +cicer +cicero +ciceronage +cicerone +cicerones +ciceroni +ciceronic +ciceronism +ciceronize +ciceros +cicge +cichi +cichlid +cichlidae +cichlids +cichloid +cichoraceous +cichoriaceae +cichorium +cicily +cicindela +cicindelid +cicindelidae +cicisbeism +cicisbeo +ciclatoun +ciconia +ciconiae +ciconian +ciconiid +ciconiidae +ciconiiform +ciconine +ciconioid +cicuabo +cicuta +cicutoxin +cidade +cidarid +cidaridae +cidaris +cidaroida +ciderish +ciderist +ciderkin +ciders +cidr +cidra +ciec +cieca +cieceronian +ciechanow +ciecierski +ciego +ciel +cieled +cielia +ciello +cielo +cien +cienaga +cienfuegos +cient +cienwen +ciesielski +cieslak +cifariello +cifelli +cifersky +cifford +cifuentes +ciga +cigala +ciganda +ciganova +cigar +cigaresque +cigaret +cigarets +cigarette +cigarettes +cigarfish +cigarillo +cigarillos +cigarito +cigarless +cigars +cigarstand +cigay +cigbe +cigel +cigolini +cigua +ciguatera +cihan +ciina +ciita +cikabanga +cikide +cikobu +cikunda +cilacap +cilantro +cilantros +cildren +cilectomy +cilento +cili +cilia +ciliary +ciliata +ciliated +ciliately +ciliates +ciliation +cilice +cilicia +cilician +cilicious +cilicism +ciliella +ciliferous +ciliform +ciliiferous +ciliiform +ciliium +ciliograde +ciliolate +ciliolum +ciliophora +cilioretinal +cilioscleral +ciliospinal +ciliotomy +cilium +cilka +ciller +cillo +cillosis +cilly +cilo +cilowe +cilss +cima +cimabiha +cimakonde +cimanganja +cimara +cimarosa +cimarron +cimba +cimbangala +cimber +cimbia +cimbres +cimbri +cimbria +cimbrian +cimbric +cimds +cimel +cimelia +cimeter +cimex +cimi +cimicid +cimicidae +cimicide +cimiciform +cimicifuga +cimicifugin +cimicoid +cimini +ciminite +cimino +cimler +cimline +cimma +cimmeria +cimmerian +cimmerianism +cimolai +cimoli +cimolite +cimpeanu +cims +cimsa +cimsb +cimwera +cinamiguin +cinar +cinch +cinched +cincher +cinches +cinching +cincholoipon +cinchona +cinchonaceae +cinchonamine +cinchonas +cinchonate +cinchonia +cinchonic +cinchonicine +cinchonidia +cinchonidine +cinchonine +cinchoninic +cinchonism +cinchonize +cinchonology +cinchophen +cinchotine +cinchotoxine +cincinatti +cincinnal +cincinnati +cincinnatia +cincinnatian +cincinnatus +cincinnus +cinclant +cinclidae +cinclidotus +cinclis +cinclus +cinco +cincom +cincpac +cinct +cincture +cinctured +cinctures +cincturing +cinda +cindee +cindelyn +cinder +cindered +cinderella +cindering +cinderlike +cinderman +cinderous +cinders +cinderwench +cindery +cindi +cindie +cindijon +cindra +cindy +cine +cinebar +cinecamera +cinefilm +cinel +cinema +cinemas +cinemascope +cinematheque +cinematic +cinematical +cinematize +cinemize +cinemograph +cinenchyma +cinene +cinenegative +cineole +cineolic +cinephone +cineplastics +cineplasty +cineraceous +cineraria +cinerarium +cinerary +cineration +cinerator +cinerea +cinereal +cinereous +cineritious +cines +cinevariety +cing +cingalese +cingle +cingshuiho +cingular +cingulate +cingulated +cingulum +cini +cinicolo +cinieri +cinlar +cinleri +cinna +cinnabar +cinnabaric +cinnabarine +cinnabars +cinnamal +cinnamate +cinnamein +cinnamene +cinnamenyl +cinnamic +cinnamol +cinnamomic +cinnamomum +cinnamon +cinnamoned +cinnamonic +cinnamonlike +cinnamonroot +cinnamons +cinnamonwood +cinnamyl +cinneroth +cinnoline +cinnyl +cinquain +cinquains +cinque +cinquecento +cinquefoiled +cinquefoils +cinquepace +cinques +cinta +cinter +cintercal +cintra +cinura +cinuran +cinurous +cinyungwe +cinzia +ciobanu +ciocca +ciochon +cioffi +ciokwe +ciolfi +ciolino +ciolli +cion +cionectomy +cionitis +cionocranial +cionocranian +cionoptosis +cionotome +cionotomy +cions +cioranu +ciotat +cipango +cipe +cipec +cipeta +cipherable +cipherdom +ciphered +cipherer +cipherhood +ciphering +ciphers +ciphertext +ciphertexts +ciphonies +cipo +cipodzo +cipolin +cipolla +cippola +cippus +cipriani +ciraamba +circ +circadian +circaea +circaeaceae +circaetus +circassian +circassians +circassic +circe +circean +circensian +circinal +circinate +circinately +circination +circinus +circiter +circle +circled +circlepines +circleplus +circler +circlers +circles +circlet +circlets +circleville +circlewise +circlex +circling +circovarian +circuit +circuitable +circuital +circuitcam +circuited +circuiteer +circuiter +circuities +circuiting +circuition +circuitmaker +circuitman +circuitor +circuitously +circuitry +circuits +circuity +circulable +circular +circulararc +circularism +circularity +circularize +circularized +circularizer +circularizes +circularly +circularness +circulars +circularwise +circulate +circulated +circulates +circulating +circulation +circulations +circulative +circulator +circulators +circum +circumanal +circumarctic +circumaviate +circumaxial +circumaxile +circumbasal +circumbest +circumboreal +circumbuccal +circumbulbar +circumcenter +circumcinct +circumcise +circumcised +circumciser +circumcises +circumcising +circumcision +circumcizion +circumclude +circumcone +circumconic +circumduce +circumduct +circumflant +circumflect +circumflexes +circumfluent +circumfluous +circumfuse +circumfusile +circumfusion +circumgyrate +circumjacent +circumlental +circumlitio +circumlocute +circumlunar +circummure +circumnatant +circumnutate +circumocular +circumoral +circumpose +circumradius +circumrenal +circumrotate +circumsail +circumscript +circumsinous +circumsized +circumsolar +circumspect +circumvent +circumvented +circumventer +circumventor +circumvents +circumviate +circumvolant +circumvolute +circumvolve +circuration +circus +circusclown +circuses +circusy +cirdan +cirebon +cirelli +cires +ciri +ciriaco +ciril +cirilo +cirimba +cirion +cirith +cirkeln +cirkus +cirma +ciro +cirone +cirque +cirques +cirrate +cirrated +cirratulidae +cirratulus +cirrhosed +cirrhosis +cirrhotic +cirrhous +cirri +cirribranch +cirriferous +cirriform +cirrigerous +cirrigrade +cirriped +cirripedia +cirripedial +cirrocumulus +cirrolite +cirropodous +cirrose +cirrostomi +cirrostratus +cirrous +cirrup +cirrus +cirsectomy +cirsium +cirsocele +cirsoid +cirsomphalos +cirsotome +cirsotomy +cirterion +ciruela +cirulli +cirurgian +cirus +cisalpine +cisalpinism +cisandine +cisar +cisatlantic +cisbaikalia +cisc +cisco +ciscoes +ciscos +cise +cisele +cisgangetic +cishinga +cishingyini +cisjurane +ciskei +ciskowski +cisl +cisleithan +cislunar +cismarine +cismontane +cismontanism +cisne +cisneros +cisoceanic +cispadane +cisplatine +cispontine +cisrhenane +ciss +cissampelos +cisse +cissie +cissiee +cissing +cissnapark +cissoid +cissoidal +cissus +cissy +cist +cista +cistaceae +cistaceous +cistae +cisted +cistercian +cistern +cisterna +cisternal +cisterns +cistic +cistophoric +cistophorus +cists +cistudo +cistus +cistvaen +cisuundi +ciszy +cita +citable +citadel +citadels +citak +citare +citarelli +citations +citationtype +citator +citatory +citatum +citcorp +cite +citeable +cited +citee +citeexamples +citellus +citer +citers +cites +citess +cithara +citharexylum +citharist +citharista +citharoedi +citharoedic +citharoedus +cither +cithern +citherns +cithers +cithex +citi +citiani +citicorp +citied +cities +citification +citified +citifies +citify +citifying +citigradae +citigrade +citing +citizen +citizendom +citizeness +citizenhood +citizenish +citizenism +citizenize +citizenly +citizenries +citizenry +citizens +citizenship +citole +citra +citraconate +citraconic +citral +citrali +citramide +citramontane +citrange +citrangeade +citrated +citrates +citrean +citrene +citreous +citriculture +citril +citrin +citrination +citrine +citrines +citrinin +citrinous +citrins +citrometer +citromyces +citron +citronade +citronella +citronellal +citronelle +citronellic +citronellol +citronin +citrons +citronwood +citropsis +citropten +citrous +citrullin +citrullus +citruses +citrussoft +citrylidene +citta +cittern +citti +citty +citua +city +citycat +citycism +citydistance +citydom +cityfied +cityfolk +cityful +cityish +cityless +cityline +cityness +citysuburb +cityward +citywards +ciudad +ciuffini +ciuli +ciupkc +cive +civetlike +civetone +civets +civic +civically +civicism +civicisms +civics +cividino +civies +civil +civile +civiler +civilest +civili +civilian +civilians +civilisan +civilise +civilising +civilities +civility +civilizable +civilization +civilizatory +civilize +civilized +civilizee +civilizer +civilizers +civilizes +civilizing +civilly +civilness +civilnim +civism +civisms +civitan +civitas +civvies +civvy +cixelsyd +cixiid +cixiidae +cixo +ciyao +ciyawa +ciyei +ciyoombe +cizmar +cizre +cjack +cjsms +ckhala +ckoro +claassen +clabber +clabbered +clabbering +clabbers +clabbery +clabon +clac +clachan +clacher +clack +clackama +clackamas +clackdish +clacked +clacker +clackers +clacket +clackety +clacking +clacks +clad +cladanthous +cladding +claddings +cladine +cladocarpous +cladocera +cladoceran +cladocerans +cladocerous +cladode +cladodial +cladodont +cladodontid +cladodus +cladogenous +cladonia +cladoniaceae +cladonioid +cladophyll +cladophyllum +cladoptosis +cladose +cladoselache +cladosporium +cladothrix +cladrastis +clads +cladus +claerly +claes +claesmagnus +claeson +claesson +claflin +clag +clagg +claggart +claggett +clagging +claggum +claggy +clags +clague +claiborne +claibornian +claim +claimable +claimants +claimed +claimer +claimers +claiming +claimless +claims +clair +clairac +clairaudient +clairce +claire +clairecity +clairecole +clairecolle +clairfield +clairis +clairmont +clairobscur +clairon +clairos +clairschach +clairton +clairvoyance +clairvoyancy +clairvoyants +claise +claith +claithes +claiton +claiver +clake +clallam +clallambay +clam +claman +clamant +clamantly +clamative +clamatores +clamatorial +clamatory +clamb +clambake +clambakes +clamber +clambered +clamberer +clambering +clambers +clamcracker +clame +clamen +clamer +clamgulch +clamlake +clammed +clammer +clammerley +clammier +clammiest +clammily +clamminess +clamming +clammish +clammyweed +clamor +clamored +clamorer +clamorers +clamoring +clamorist +clamorous +clamorously +clamors +clamorsome +clamoruous +clamour +clamoured +clamouring +clamours +clamp +clamped +clamper +clampers +clampett +clamping +clampitte +clamps +clams +clamshells +clamworm +clan +clanahan +clancular +clancularly +clancy +clandestine +clandestiny +clanfellow +clang +clanged +clangful +clanging +clangingly +clangor +clangored +clangoring +clangorous +clangorously +clangors +clangour +clangoured +clangours +clangs +clanguage +clangula +clanjamfray +clanjamfrey +clanjamfrie +clanjamphrey +clank +clanked +clankety +clanking +clankingly +clankingness +clankless +clanks +clanless +clannahan +clanned +clanning +clannishly +clannishness +clans +clansfolk +clanship +clansman +clansmanship +clansmen +clanswoman +clanswomen +clanton +claosaurus +clap +clapboard +clapboards +clapbread +clapham +clapmatch +clapnet +clapp +clapped +clapper +clapperclaw +clappers +clappeth +clapping +claps +clapt +clapton +claptrap +claptraps +clapwort +claque +claquer +claques +claqueur +clara +clarabella +clarabelle +claracity +clarain +claramae +clarcona +clardy +clare +claremore +clarence +clarenceux +clarencieux +claresta +clareta +claretian +clarets +claretta +clarette +clarey +clari +claribel +claribella +clarice +clarichord +claridge +clarie +clarieux +clarifiable +clarifiant +clarified +clarifier +clarifiers +clarifies +clarify +clarifying +clarigation +clarin +clarina +clarinda +clarine +clarines +clarinetist +clarinetists +clarinets +clarinettist +clarington +clarion +clariond +clarioned +clarionet +clarioning +clarions +claris +clarise +clarissa +clarisse +clarist +clarita +claritas +clarities +clarity +clark +clarka +clarkdale +clarke +clarkedale +clarkeite +clarkes +clarkesville +clarkfield +clarkfork +clarkia +clarkias +clarklake +clarkman +clarkmills +clarkrange +clarkridge +clarks +clarksboro +clarksburg +clarksdale +clarksferry +clarksgreen +clarksgrove +clarkshill +clarksmills +clarkson +clarkspoint +clarkssummit +clarkston +clarksville +clarkton +clarku +claro +claromontane +claronet +clarshech +clarson +clart +clarty +clarus +clary +claryville +clases +clasfac +clash +clashed +clasher +clashers +clashes +clashing +clashingly +clashy +clasic +clasify +clasmatocyte +clasmatosis +clason +clasp +clasped +clasper +claspers +clasping +clasps +claspt +class +classable +classbook +classbrowser +classbuilder +classed +classer +classers +classes +classfellow +classic +classical +classicalism +classicalist +classicality +classicalize +classically +classicism +classicist +classicistic +classicists +classicize +classics +classier +classiest +classifiable +classific +classified +classifieds +classifier +classifiers +classifies +classify +classifying +classily +classing +classique +classis +classism +classless +classman +classmanship +classmates +classpath +classroom +classrooms +classwise +classwork +clastic +clat +clata +clatch +clathraceae +clathraceous +clathraria +clathrarian +clathrate +clathrina +clathrinidae +clathroid +clathrose +clathrulate +clathrus +clatonia +clatskanie +clatsop +clatter +clattered +clatterer +clattering +clatteringly +clatters +clattertrap +clatty +clau +claud +clauda +claude +claudell +claudelle +claudent +claudet +claudetite +claudetta +claudette +claudia +claudian +claudicant +claudicate +claudication +claudie +claudin +claudina +claudine +claudius +claudville +claught +claunch +claus +clausal +clause +clauses +clausewitz +clausilia +clausiliidae +clausthalite +claustra +claustral +claustration +claustrum +clausula +clausular +clausule +clausure +claut +claux +clava +clavacin +claval +clavaria +clavariaceae +clavate +clavated +clavately +clavation +clave +claveau +clavecin +clavecinist +clavel +clavelize +clavell +clavellate +clavellated +claver +claverack +claverhouse +clavering +clavial +claviature +clavicembalo +claviceps +clavichord +clavichords +clavicithern +clavicle +clavicles +clavicorn +clavicornate +clavicornes +clavicornia +clavicotomy +clavicular +claviculate +claviculus +clavicymbal +clavier +clavierist +clavierists +claviers +claviform +claviger +clavigerous +claviharp +clavijo +clavillazo +clavilux +claviol +clavis +clavius +clavo +clavodeltoid +clavola +clavolae +clavolet +clavus +clavy +claw +clawback +clawed +clawer +clawers +clawfinger +clawfooted +clawing +clawk +clawker +clawless +claws +clawson +claxon +claxons +claxton +clay +claybank +claybanks +clayborne +claybourne +claybrained +claybrook +clayburgh +claycenter +claycity +claycold +clayderman +clayed +clayen +clayer +clayey +clayhole +clayier +clayiest +clayiness +claying +clayish +claylike +clayman +claymation +claymont +claymore +claymores +clayoquot +claypan +claypole +claypool +claypoole +clays +claysburg +claysprings +claysville +claythorne +clayton +claytonia +claytonlake +claytonville +clayville +clayware +claywares +clayweed +clayworth +clblack +clea +cleach +clead +cleaded +cleading +cleaear +cleam +cleamer +clean +cleanable +cleancut +cleaned +cleaner +cleaners +cleanest +cleanhanded +cleanhearted +cleaning +cleanish +cleanlier +cleanliest +cleanlily +cleanliness +cleanly +cleanness +cleanout +cleans +cleansable +cleanse +cleansed +cleanser +cleansers +cleanses +cleanseth +cleansing +cleanskins +cleansweep +cleanup +cleanups +clear +clearable +clearage +clearance +clearances +clearboy +clearbrook +clearcole +clearcreek +clearcut +cleared +clearedness +clearer +clearest +clearfield +clearfork +clearhearted +clearing +clearings +clearish +clearlake +clearly +clearmont +clearmuddy +clearness +clears +clearsighted +clearskins +clearspring +clearstarch +cleartunnels +clearview +clearville +clearweed +clearwing +cleary +cleat +cleated +cleating +cleaton +cleats +cleavability +cleavable +cleavage +cleavages +cleavant +cleave +cleaved +cleaveful +cleaver +cleavers +cleaverwort +cleaves +cleaveth +cleaving +cleavingly +cleavon +cleburne +clech +cleche +cleck +cled +cledge +cledgy +cledonism +clee +cleef +cleek +cleeked +cleeky +cleelum +cleere +cleese +cleeter +cleeton +cleever +clef +clefs +cleft +clefted +clefts +cleg +clegg +cleghorn +cleidagra +cleidocostal +cleidohyoid +cleidomancy +cleidotomy +cleidotripsy +cleistocarp +cleistogamic +cleistogamy +cleistogene +cleistogeny +cleithral +cleithrum +cleitus +clela +clelia +clelland +clellon +clem +clemant +clematis +clematises +clematite +clemence +clemenceau +clemencia +clemencies +clemency +clemens +clement +clemente +clementi +clementia +clementina +clementine +clementino +clemently +clemento +clementon +clements +clemenza +clemie +clemington +clemmie +clemmons +clemmy +clemons +clemson +clenched +clencher +clenches +clenching +clendenin +clendening +clendenning +clendennon +clenn +clenney +clennon +cleo +cleoid +cleome +cleona +cleone +cleonie +cleopas +cleopatra +cleophas +cleosprings +cleota +clep +clepe +clepsine +clepsydra +clept +cleptobiosis +cleptobiotic +cler +clerc +clercq +clerestoried +clerestories +clerestory +clerfayt +clergies +clergy +clergyable +clergylike +clergywoman +clergywomen +clerical +clericalism +clericalist +clericalists +clericality +clericalize +clerically +clericals +clericate +clericature +clericism +clericity +clerics +clerid +cleridae +clerides +clerihew +clerihews +clerissa +clerisy +clerk +clerkage +clerkdom +clerkdoms +clerke +clerked +clerkery +clerkess +clerkhood +clerking +clerkish +clerkless +clerklier +clerkliest +clerklike +clerkliness +clerkly +clerks +clerkship +clerkships +clermont +clermount +clerodendron +cleromancy +cleronomy +cleroux +cleruch +cleruchial +cleruchic +cleruchy +clerus +clerval +clervanne +clery +cles +clessan +clestell +cletch +clete +clethra +clethraceae +clethraceous +cleto +cleuch +cleva +cleve +cleveite +cleveland +clevenger +clevenot +clever +cleverality +clevercache +cleverdale +cleverer +cleverest +cleverish +cleverishly +cleverly +clevermaxx +clevernes +cleverness +cleverzip +cleves +clevis +clevises +clevish +clevon +clew +clewed +clewes +clewiston +clews +clhs +cliack +clianthus +clich +cliched +cliches +click +clickbook +clicked +clicker +clickers +clicket +clickett +clicketty +clicking +clickless +clickner +clickoff +clickok +clicks +clicky +clidastes +cliency +client +clientage +cliental +cliented +clientelage +clientele +clienteles +clientless +clientname +clientry +clients +clientship +cliff +cliffe +cliffed +cliffhanger +cliffhangers +cliffhanging +cliffier +cliffiest +cliffisland +cliffless +clifflet +clifflike +cliffmine +clifford +cliffs +cliffside +cliffsman +cliffweed +cliffwood +cliffy +clift +clifton +cliftonforge +cliftonhill +cliftonia +cliftonite +cliftonpark +clifts +clifty +clike +clima +climaciaceae +climacium +climacteric +climacterics +climactical +climacus +climata +climatal +climate +climates +climateview +climath +climatical +climatically +climatius +climatize +climatologic +climatology +climatometer +climature +climax +climaxed +climaxes +climaxing +climb +climbable +climbatize +climbed +climber +climbers +climbeth +climbing +climbinghill +climbs +climenhaga +climes +climo +climograph +clinal +clinamen +clinamina +clinandria +clinandrium +clinanthia +clinanthium +clinchco +clinched +clincher +clinchers +clinches +clinchfield +clinching +clinchingly +clinckett +cline +cling +clinged +clinger +clingers +clingfish +clingier +clingiest +clinging +clingingly +clingingness +clings +clingstone +clingstones +clingy +clinia +clinic +clinical +clinically +clinicians +clinicist +clinics +clinium +clinkard +clinked +clinker +clinkered +clinkerer +clinkering +clinkers +clinkery +clinking +clinks +clinkstone +clinkum +clinoaxis +clinocephaly +clinochlore +clinoclase +clinoclasite +clinodomatic +clinodome +clinograph +clinographic +clinohedral +clinohedrite +clinohumite +clinoid +clinologic +clinology +clinometer +clinometric +clinometry +clinopodium +clinoprism +clinopyramid +clinorhombic +clinospore +clinostat +clinquant +clint +clinting +clinton +clintondale +clintonia +clintonite +clintonville +clintwood +clinty +clio +cliona +clione +clip +clipart +clipboard +clipboards +clipei +clipeus +cliphistory +cliphound +clipmate +clippable +clipped +clipper +clipperman +clippermills +clippers +clipperton +clipping +clippings +clipquick +clipquik +clipr +clips +clipse +clipsham +clipsheet +clipsheets +clipsome +clipt +cliptest +clipton +clique +cliqued +cliquedom +cliqueless +cliques +cliquey +cliquier +cliquiest +cliquing +cliquish +cliquishly +cliquishness +cliquism +cliquy +cliseometer +clisere +clisiocampa +clistogastra +clit +clitch +clite +clitella +clitellar +clitelline +clitellum +clitellus +clites +clithe +clitherall +clithral +clithridiate +clitia +clitic +clitics +clition +clitocybe +clitoral +clitoria +clitoric +clitoridauxe +clitoridean +clitoriditis +clitoris +clitorises +clitorism +clitoritis +clitter +clittered +clitus +clival +clive +cliveden +cliver +clivers +clivia +clivis +clivus +clmie +clmz +cloaca +cloacae +cloacal +cloacaline +cloacas +cloacean +cloacinal +cloacinean +cloacitis +cloak +cloakage +cloaked +cloakedly +cloaking +cloakless +cloaklet +cloakmaker +cloakmaking +cloakrooms +cloaks +cloakwise +cloam +cloamen +cloamer +clobbered +clobberer +clobbering +clobbers +clochan +cloche +clocher +cloches +clochette +clock +clockbird +clockcase +clocked +clocker +clockers +clockface +clockhouse +clocking +clockings +clockkeeper +clocklab +clockless +clocklike +clockmaker +clockmaking +clockman +clockmutch +clockroom +clocks +clocksmith +clocktick +clockville +clockwinder +clockwise +clockworks +clod +clodagh +clodbreaker +clodder +cloddier +cloddiest +cloddily +cloddiness +cloddishly +cloddishness +cloddy +clode +clodettes +clodhead +clodhopper +clodhoppers +clodhopping +clodlet +clodomiro +clodpate +clodpated +clodpole +clodpoll +clods +cloe +cloelia +cloestine +cloff +clog +clogdogdo +clogg +clogged +clogger +cloggier +cloggiest +cloggily +clogginess +clogging +cloggy +cloghad +cloglike +clogmaker +clogmaking +clogs +clogwood +clogwyn +cloherty +cloisonless +cloisonne +cloisteral +cloistered +cloisterer +cloistering +cloisterless +cloisterlike +cloisterly +cloisters +cloisterwise +cloistral +cloistress +cloit +cloke +clomb +clomben +clomped +clomping +clomps +clonal +clonally +clone +cloned +clonemaster +clones +clonicity +clonicotonic +cloning +cloninger +clonism +clonk +clonked +clonking +clonks +clonorchis +clonothrix +clontarf +clonus +cloof +clooney +cloop +cloot +clootie +clop +clopin +clopp +clopped +clopping +clops +clopton +cloquet +cloquette +cloragen +clorargyrite +clorette +clori +clorinda +clorinde +cloriodid +cloris +clos +closability +closable +closas +close +closeable +closecross +closed +closedform +closefisted +closefitting +closehanded +closehauled +closehearted +closelipped +closely +closemouth +closemouthed +closen +closeness +closenesses +closeout +closeouts +closepath +closer +closereport +closers +closes +closest +closestool +closet +closeted +closeting +closetongued +closets +closeups +closewing +closh +closin +closing +closings +closish +closkey +closky +closplint +clossed +closser +closson +clost +closter +closterium +clostridial +clostridium +closure +closured +closures +closuring +clot +clotbur +clote +cloth +clothe +clothed +clothes +clothesbag +clothesline +clotheslines +clothespin +clothespins +clothespress +clothest +clothesyard +clothiers +clothify +clothilda +clothilde +clothing +clothings +clothmaker +clothmaking +cloths +clothworker +clothy +clotilda +clotilde +clotpate +clotpoll +clots +clottage +clotted +clottedness +clotter +clotting +clotty +clotured +clotures +cloturing +clotweed +cloud +cloudage +cloudberry +cloudbursts +cloudcap +cloudcapt +cloudcroft +clouded +cloudful +cloudier +cloudiest +cloudily +cloudiness +clouding +cloudland +cloudless +cloudlessly +cloudlet +cloudlets +cloudlike +cloudling +cloudology +clouds +cloudscape +cloudseeding +cloudship +cloudsley +cloudsrest +cloudtopt +cloudward +cloudwards +cloudy +cloudyhead +clough +clour +clouseau +clouso +clout +clouted +clouter +clouterly +clouters +clouthier +cloutier +clouting +clouts +clouty +clouzal +clovelly +cloven +clovene +clovenfooted +clover +cloverdale +clovered +cloverlay +cloverleaf +cloverleaves +cloveroot +cloverport +cloverroot +clovers +clovery +cloves +clovis +clow +clowes +clown +clownade +clownage +clowned +clowneries +clownery +clownheal +clowning +clownish +clownishly +clownishness +clowns +clownship +clowring +clox +cloyce +cloyd +cloyed +cloyedness +cloyer +cloying +cloyingly +cloyingness +cloyless +cloyment +cloys +cloysome +clpcat +clrb +clrd +clrf +clrg +clrh +clrl +clro +clrq +clrw +clsc +clscreen +cluaude +club +cluba +clubable +clubavisons +clubb +clubbability +clubbable +clubbed +clubber +clubbers +clubbier +clubbiest +clubbily +clubbing +clubbish +clubbism +clubbist +clubby +clubdom +clubfeet +clubfellow +clubfisted +clubfoot +clubfooted +clubhand +clubhaul +clubhauled +clubhouse +clubhouses +clubionid +clubionidae +clubland +clubman +clubmate +clubmen +clubmobile +clubmonger +clubridden +clubrooms +clubroot +clubroots +clubs +clubstart +clubster +clubweed +clubwoman +clubwood +clucked +clucking +clucks +cluckus +cluded +cluding +cludless +clue +clued +clueing +clueless +cluelessness +clues +cluett +cluff +clugston +cluing +clum +clume +clumley +clump +clumped +clumpier +clumpiest +clumping +clumpish +clumproot +clumps +clumpy +clumse +clumsey +clumsier +clumsiest +clumsily +clumsiness +clumsy +clunch +clune +clunes +clung +cluniac +clunisian +clunist +clunk +clunked +clunker +clunkers +clunkier +clunking +clunks +clunky +cluny +clupanodonic +clupea +clupeid +clupeidae +clupeiform +clupeine +clupeodei +clupeoid +cluricaune +clurman +cluser +clusia +clusiaceae +clusiaceous +clusiau +cluskey +clustal +clustar +cluster +clusterberry +clustered +clusterfist +clusterfuck +clustering +clusteringly +clusterings +clusters +clustery +clustid +clutch +clutched +clutches +clutching +clutchman +clutchy +clute +clutesi +clutha +cluther +clutie +clutier +clutter +clutterbuck +cluttered +clutterer +cluttering +clutterment +clutters +cluttery +clutx +clutz +cluzet +clvms +clwindowtext +clwyd +clyde +clydepark +clydepc +clydesdale +clydeside +clydesider +clyer +clyfaker +clyfaking +clyman +clymenia +clymer +clyn +clyo +clype +clypeal +clypeaster +clypeastrina +clypeastroid +clypeate +clypeiform +clypeolar +clypeolate +clypeole +clypeus +clysdale +clysis +clysma +clysmian +clysmic +clyster +clysterize +clytemnestre +clytie +clyton +cmatrices +cmbio +cmbsun +cmccta +cmccte +cmccvb +cmccvd +cmccvma +cmcfra +cmcfrc +cmchem +cmchtr +cmdg +cmdhere +cmdrun +cmea +cmed +cmevax +cmhosr +cmich +cmml +cmns +cmos +cmotritcya +cmpb +cmpc +cmpd +cmpf +cmpg +cmph +cmpl +cmplx +cmpp +cmpqwk +cmpv +cmpw +cmpzv +cmrn +cmsc +cmsg +cmsn +cmstat +cmsu +cmucat +cmuccvma +cmuflamingo +cmuish +cmuplum +cmyk +cmzc +cnada +cnam +cnemial +cnemidium +cnemis +cneoraceae +cneoraceous +cneorum +cnequizr +cnicin +cnicus +cnida +cnidaria +cnidarian +cnidian +cnidoblast +cnidocell +cnidocil +cnidocyst +cnidophore +cnidophorous +cnidopod +cnidosac +cnidoscolus +cnidosis +cnidus +cnop +cnpf +cnrc +cnsf +cnts +cnuce +cnudde +cnversion +coabode +coabound +coabsume +coacceptor +coacervate +coacervation +coach +coachability +coachable +coachbuilder +coached +coachee +coachella +coacher +coachers +coaches +coachfellow +coachful +coaching +coachlet +coachmaker +coachmaking +coachmanship +coachmaster +coachs +coachsmith +coachway +coachwhip +coachwise +coachwoman +coachwright +coachy +coact +coacted +coacting +coaction +coactive +coactively +coactivity +coactor +coacts +coad +coadamite +coadapt +coadaptation +coadapted +coadapting +coadequate +coadjacence +coadjacency +coadjacent +coadjacently +coadjust +coadjustment +coadjutancy +coadjutant +coadjutator +coadjute +coadjutement +coadjutive +coadjutors +coadjutress +coadjutrix +coadjuvancy +coadjuvant +coadjuvate +coadminister +coadmiration +coadmire +coadmit +coadnate +coadore +coadsorbent +coadunate +coadunation +coadunative +coadunite +coadventure +coadventurer +coadvice +coady +coaeval +coaevals +coafforest +coaged +coagency +coagent +coagents +coaggregate +coaggregated +coagitate +coagitator +coagment +coagonize +coagula +coagulant +coagulants +coagulase +coagulated +coagulates +coagulating +coagulation +coagulations +coagulative +coagulator +coagulators +coagulatory +coagulin +coagulometer +coagulose +coagulum +coahoma +coahuila +coahuiltecan +coaid +coaiquer +coaita +coak +coaker +coakley +coakum +coal +coalbag +coalbagger +coalbin +coalbins +coalblack +coalbluff +coalbox +coalboxes +coalcenter +coalcity +coalcreek +coaldale +coaldealer +coaled +coaler +coalers +coalesce +coalesced +coalescence +coalescency +coalesces +coalescing +coaley +coalfield +coalfish +coalfitter +coalgate +coalgood +coalhill +coalhole +coalholes +coalhouse +coalified +coalifies +coalify +coaling +coalinga +coalite +coalition +coalitional +coalitioner +coalitionist +coalitions +coalize +coalizer +coalless +coallier +coalmonger +coalmont +coalmountain +coalmouse +coalpit +coalpits +coalport +coalrake +coalrun +coals +coalsack +coalsacks +coalshed +coalsheds +coalternate +coaltitude +coalton +coalvalley +coalville +coalwood +coaly +coalyard +coalyards +coambassador +coambulant +coamiable +coaming +coamings +coamo +coan +coana +coanimate +coannex +coannihilate +coapostate +coapparition +coappear +coappearance +coapprehend +coapprentice +coappriser +coapprover +coapt +coaptate +coaptation +coapts +coaration +coarb +coarbiter +coarbitrator +coarctate +coarctation +coard +coardent +coarrange +coarse +coarsegold +coarsely +coarsened +coarseness +coarsening +coarsens +coarser +coarsest +coarsish +coascend +coassert +coasserter +coassession +coassessor +coassignee +coassist +coassistance +coassistant +coassume +coast +coastal +coastally +coasted +coaster +coasters +coastguard +coasting +coastings +coastland +coastliners +coastlines +coastman +coasts +coastside +coastwaiter +coastward +coastwards +coastways +coastwise +coat +coata +coatan +coatcheck +coate +coatecas +coated +coatee +coatepec +coater +coaters +coatesville +coathangers +coathup +coati +coatie +coatimondie +coatimundi +coating +coatings +coatis +coatla +coatlan +coatless +coatrack +coatracks +coatroom +coatrooms +coats +coatsburg +coatsville +coattailed +coattails +coattend +coattest +coattestator +coatzospan +coaudience +coauditor +coaugment +coauthered +coauthority +coauthors +coauthorship +coawareness +coax +coaxal +coaxation +coaxed +coaxer +coaxers +coaxes +coaxially +coaxing +coaxingly +coaxy +coba +cobaea +cobain +cobalt +cobaltammine +cobaltic +cobaltite +cobaltous +cobalts +cobang +cobani +cobanoglu +cobari +cobariwa +cobaugh +cobb +cobban +cobbed +cobber +cobberer +cobbers +cobbier +cobbing +cobbisland +cobbled +cobbler +cobblerfish +cobblerism +cobblerless +cobblers +cobblership +cobblery +cobbles +cobblestones +cobbley +cobbling +cobbly +cobbold +cobbra +cobbs +cobbscreek +cobbtown +cobby +cobcab +cobden +cobdenism +cobdenite +cobego +cobelief +cobeliever +cobelli +cobenignity +coberger +cobert +cobewail +cobham +cobhead +cobhill +cobia +cobiana +cobina +cobiron +cobishop +cobitidae +cobitis +coble +cobleman +coblentzian +cobleskill +cobless +cobley +coblintz +cobloaf +cobnut +cobo +cobol +cobola +cobols +coboundless +cobourg +cobra +cobran +cobras +cobreathe +cobretti +cobridgehead +cobriform +cobrother +cobs +cobstone +cobura +coburg +coburgess +coburgher +coburn +cobus +cobweb +cobwebbed +cobwebbery +cobwebbier +cobwebbing +cobwebby +cobwebs +cobwork +coby +coca +cocaceous +cocain +cocaines +cocainism +cocainist +cocainize +cocainized +cocainomania +cocains +cocama +cocamama +cocamaomagua +cocamilla +cocamine +cocan +cocanucos +cocas +cocash +cocashweed +cocause +cocautioner +coccaceae +coccagee +coccal +cocceian +cocceianism +coccerin +cocche +cocchi +cocci +coccid +coccidae +coccidia +coccidial +coccidian +coccidiidea +coccidioidal +coccidioides +coccidium +coccidology +cocciferous +cocciform +coccigenic +coccinella +coccinellid +coccioletti +coccionella +cocco +coccogonales +coccogone +coccogoneae +coccogonium +coccoid +coccolite +coccolith +coccoloba +coccolobis +coccomyces +coccosphere +coccostean +coccosteid +coccosteidae +coccosteus +coccothrinax +coccous +coccule +cocculus +coccus +coccydynia +coccygalgia +coccygeal +coccygean +coccygectomy +coccyges +coccygeus +coccygine +coccygodynia +coccygomorph +coccygotomy +coccyodynia +coccyx +coccyxes +coccyzus +cocea +coceanu +cocentric +cochabamba +cochaired +cochairing +cochairman +cochairmen +cochairs +cochal +coche +cochecton +cocheleate +cochelous +cochen +cochepaille +cochief +cochiefs +cochin +cochise +cochiti +cochleae +cochlear +cochleare +cochlearia +cochleas +cochleate +cochleated +cochleiform +cochleitis +cochleleae +cochleleas +cochleous +cochlidiid +cochlidiidae +cochliodont +cochliodus +cochoapa +cochoeira +cochran +cochrane +cochranea +cochranton +cochranville +cochren +cocillana +cocin +cocircular +cocitizen +cock +cockade +cockaded +cockades +cockahoop +cockaigne +cockal +cockalorum +cockamamie +cockamaroo +cockapoo +cockarouse +cockatiel +cockatoos +cockatrice +cockatrices +cockawee +cockbell +cockbill +cockbilled +cockbird +cockboat +cockbrain +cockburn +cockchafer +cockcrower +cockcrowing +cockcrows +cocke +cocked +cocker +cockerel +cockerels +cockerham +cockermeg +cockernony +cockers +cocket +cockettes +cockeyed +cockeyes +cockfight +cockfighting +cockfights +cockhead +cockhorse +cockhorses +cocki +cockieleekie +cockier +cockiest +cockily +cockiness +cocking +cockins +cockish +cockle +cockleboat +cockled +cockler +cockles +cockleshells +cocklet +cocklewife +cocklight +cockling +cockloft +cockly +cockmaster +cockmatch +cockmate +cockneian +cockneity +cockney +cockneybred +cockneydom +cockneyese +cockneyess +cockneyfy +cockneyish +cockneyishly +cockneyism +cockneyize +cockneyland +cockneys +cockneyship +cockpit +cockpits +cockrane +cockrell +cockroaches +cocks +cockscomb +cockscombed +cockscombs +cocksfoot +cockshead +cockshot +cockshut +cockshy +cockshying +cocksparrow +cockspur +cockspurs +cockstone +cocksucker +cocksuredom +cocksureism +cocksurely +cocksureness +cocksurety +cockswain +cocktail +cocktailed +cocktails +cockthrowing +cockup +cockups +cockweed +cocle +coco +cocoa +cocoabeach +cocoach +cocoanut +cocoanuts +cocoas +cocobeach +cocobolo +cocolalla +cocolamus +cocomat +cocomats +cocond +coconino +coconnection +coconqueror +coconscious +cocontractor +coconucan +coconuco +coconut +coconutbased +coconuts +cocoon +cocooned +cocoonery +cocooning +cocoons +cocopa +cocopah +cocoran +cocorico +cocoroot +cocos +cocotte +cocovenantor +cocowood +cocowort +cocoyo +cocozelle +cocozza +cocq +cocreate +cocreator +cocreditor +cocroft +cocrucify +coctails +coctile +coction +coctoantigen +cocuisa +cocullo +cocurator +cocurrent +cocuswood +cocuy +cocuyo +cocytean +cocytus +coda +codable +codack +codah +codal +codamine +codas +codata +codazzi +codbank +codd +codder +codders +codding +coddington +coddled +coddler +coddlers +coddles +coddling +code +codebase +codebooks +codebreaker +codebtor +codec +codecree +codecs +coded +codedown +codee +codefast +codefendant +codefendants +codefor +codeh +codein +codeine +codeines +codeins +codeless +codelight +codelinquent +codell +codemaster +coden +codename +codenization +codepage +codepages +codequill +coder +coderive +coders +coderush +codes +codescendant +codesigned +codespairer +codeview +codewalker +codewalkers +codeware +codewords +codex +codez +codfisher +codfishery +codfishes +codger +codgers +codhead +codheaded +codi +codiaceae +codiaceous +codiaeum +codialect +codialects +codiales +codical +codices +codicilic +codicillary +codicils +codie +codification +codified +codifier +codifiers +codifies +codifying +codilla +codille +codina +coding +codings +codiniac +codirector +codiscoverer +codisjunct +codist +codium +codivine +codling +codlings +codman +codo +codoc +codol +codominant +codons +codorus +codpiece +codpieces +codpitchings +codrescu +codrington +codrus +cods +codshead +codworm +cody +coeburn +coecal +coeco +coecum +coeditors +coeditorship +coeds +coeducate +coeffect +coefficacy +coefficiency +coefficienti +coefficients +coeffluent +coelacanth +coelacanthid +coelar +coelarium +coelastrum +coelata +coelder +coeldership +coelebogyne +coelebs +coelect +coelection +coelector +coelectron +coelelminth +coelentera +coelenterata +coelenterate +coelenteric +coelenteron +coelestina +coelestine +coelevate +coelho +coelia +coeliac +coelialgia +coelian +coelicolae +coelicolist +coeligenous +coelin +coeline +coeliorrhea +coeliorrhoea +coelioscopy +coeliotomy +coello +coeloblastic +coelococcus +coelodont +coeloglossum +coelogyne +coelom +coeloma +coelomata +coelomate +coelomatic +coelomatous +coelomic +coelomocoela +coelomopore +coelongated +coeloplanula +coelosperm +coelostat +coelozoic +coemanate +coembedded +coembody +coembrace +coeminency +coemperor +coemploy +coemployee +coemployment +coempt +coemption +coemptional +coemptive +coemptor +coempts +coen +coenact +coenactor +coenaculous +coenamor +coenamored +coenamorment +coenanthium +coendear +coendidae +coendou +coendure +coenenchym +coenenchyma +coenenchymal +coenenchyme +coenesthesia +coenesthesis +coenflame +coengage +coengager +coenjoy +coenobe +coenobiar +coenobic +coenobioid +coenobium +coenoblast +coenoblastic +coenocentrum +coenocyte +coenocytic +coenoecial +coenoecic +coenoecium +coenogamete +coenosarc +coenosarcal +coenosarcous +coenosite +coenospecies +coenosteal +coenosteum +coenotrope +coenotype +coenotypic +coenthrone +coenurus +coenzyme +coequality +coequalize +coequally +coequalness +coequals +coequate +coequated +coequating +coequation +coerceable +coerced +coercement +coercend +coercends +coercer +coercers +coerces +coercibility +coercibly +coercing +coercion +coercionary +coercionist +coercions +coercitive +coercively +coerciveness +coercivity +coerebidae +coes +coessens +coessential +coestate +coetaneity +coetaneous +coetaneously +coetanian +coeternal +coeternally +coeternity +coetus +coeur +coeurdalene +coeval +coevality +coevally +coevals +coevolution +coevolve +coevolved +coevous +coexclusive +coexecutant +coexecutor +coexecutrix +coexert +coexertion +coexist +coexisted +coexistence +coexistency +coexisting +coexists +coexpand +coexpanded +coexpire +coexplosion +coextend +coextended +coextension +coextent +coeymans +cofa +cofan +cofane +cofaster +cofather +cofathership +cofeature +cofeatures +cofeoffee +coferment +coff +coffe +coffea +coffee +coffeebush +coffeecake +coffeecakes +coffeecreek +coffeegrower +coffeehouse +coffeehouses +coffeeleaf +coffeen +coffeepots +coffeeroom +coffees +coffeetime +coffeeville +coffeeweed +coffeewood +coffer +cofferdam +cofferdams +coffered +cofferer +cofferfish +coffering +cofferlike +coffers +cofferwork +coffey +coffeyville +coffield +coffin +coffined +coffinet +coffing +coffining +coffinless +coffinmaker +coffinmaking +coffins +coffle +coffret +coffs +cofield +cofighter +coforeknown +coformulator +cofounder +cofoundress +cofreighter +coft +cofunction +cogan +coganstation +cogapacori +cogarty +cogburn +cogdall +cogdell +cogence +cogences +cogencies +cogency +cogener +cogeneric +cogently +coggan +cogged +cogger +coggery +coggeswell +coggett +coggie +cogging +coggins +coggio +coggle +coggledy +cogglety +coggly +coggon +coghill +coghlan +coghle +coghui +cogitability +cogitable +cogitabund +cogitabundly +cogitant +cogitantly +cogitated +cogitates +cogitating +cogitatingly +cogitation +cogitations +cogitative +cogitatively +cogitativity +cogitator +cogitators +cogito +cogitos +cogley +coglorify +coglorious +cogman +cognac +cognacs +cognateness +cognates +cognati +cognatic +cognatical +cognation +cognet +cogniagui +cognisable +cognisance +cognise +cognised +cognises +cognising +cognitional +cognitive +cognitively +cognitives +cognitum +cognizably +cognizance +cognizant +cognize +cognized +cognizee +cognizer +cognizers +cognizes +cognizing +cognizor +cognomen +cognomens +cognomina +cognominal +cognominate +cognosce +cognoscence +cognoscent +cognoscente +cognoscenti +cognoscible +cognoscing +cognoscitive +cogo +cogon +cogonal +cogovernment +cogovernor +cogracious +cograil +cogrediency +cogredient +cogroad +cogs +cogsci +cogshall +cogswell +cogswellia +coguarantor +coguardian +cogue +cogui +cogway +cogwell +cogwheel +cogwheels +cogwood +cohabilition +cohabit +cohabitancy +cohabitant +cohabitate +cohabitation +cohabited +cohabiting +cohabits +cohagen +cohamiata +cohan +coharmonic +coharmonious +coharmonize +cohasset +cohea +coheads +coheir +coheiress +coheirs +coheirship +cohelper +cohelpership +cohen +cohenite +cohep +coherald +cohere +cohered +coherence +coherency +coherent +coherently +coherer +coherers +coheres +coheretic +cohering +coheritage +coheritor +cohesibility +cohesible +cohesions +cohesively +cohesiveness +cohibit +cohibition +cohibitive +cohibitor +cohn +cohnia +coho +cohoba +cohobate +cohobation +cohobator +cohoctah +cohocton +cohoe +cohoes +cohol +cohortation +cohortative +cohorts +cohos +cohoshes +cohrs +cohue +cohune +cohusband +cohutta +coicoya +coidentity +coif +coifed +coiffed +coiffes +coiffeur +coiffeurs +coiffeuse +coiffeuses +coiffing +coiffured +coiffures +coiffuring +coifing +coifs +coign +coigne +coigns +coigue +coil +coila +coiled +coiler +coilers +coiling +coils +coilsmith +coimbatore +coimbra +coimmense +coimplicant +coimplicate +coimplore +coin +coinable +coinages +coincide +coincided +coincidence +coincidences +coincidency +coincidental +coincidently +coincidents +coincider +coincides +coinciding +coincline +coinclude +coindicant +coindicate +coindication +coindwelling +coined +coiner +coiners +coinfeftment +coinfer +coinferred +coinfinite +coinfinity +coinhabit +coinhabitant +coinhabitor +coinhere +coinherence +coinherent +coinhering +coinheritor +coining +coinitial +coinjock +coinmaker +coinmaking +coinmanage +coinmate +coinreturn +coins +coinspire +coinsurance +coinsure +coinsured +coinsurer +coinsures +coinsuring +cointense +cointension +cointensity +cointepas +cointer +cointerest +cointerred +cointise +cointreau +coinvariant +coinventor +coinventors +coinvolve +coiny +coir +coirs +coisdealbha +coise +coislander +coistrel +coistril +coit +coital +coitally +coition +coitional +coitions +coitophobia +coiture +coitus +coituses +coix +coixtepec +cojack +cojedes +cojimi +cojo +cojudge +cojugation +cojuror +cojusticiar +cokato +coke +cokebottle +cokeburg +cokecherry +coked +cokedale +cokelike +cokeman +coker +cokercreek +cokernut +cokery +cokes +cokeville +cokey +coking +cokol +cokosi +cokwe +coky +cola +colaborer +colada +colagrosso +colalgia +colan +colanders +colane +colangelo +colantonio +colarin +colarruso +colas +colasanto +colate +colation +colatorium +colature +colauxe +colback +colbert +colberter +colbertine +colbertism +colbin +colbourne +colburn +colby +colcannon +colchagua +colchester +colchian +colchicaceae +colchicine +colchicum +colchis +colchyte +colcine +colclasure +colclough +colcord +colcothar +cold +coldbay +coldblooded +coldbrook +coldcock +colden +colder +colderson +coldest +coldfinch +coldhearted +coldiron +coldish +coldly +coldman +coldness +coldproof +coldren +colds +coldslaw +coldspring +coldwater +coldwell +cole +colea +coleader +colebrook +colecamp +colecannon +colectomy +coleen +colegatee +colegislator +coleharbor +coleman +colemanfalls +colemanite +colemans +colemouse +colen +colene +coleochaete +coleophora +coleopter +coleoptera +coleopteral +coleopteran +coleopterist +coleopteroid +coleopteron +coleopterous +coleoptile +coleoptilum +coleorhiza +coleosporium +coleplant +colerain +coleraine +colere +coles +colesburg +coleseed +coleslaw +coleslaws +colespoint +colessee +colessor +colet +coleta +coletit +coletta +colette +coletti +coleur +coleuses +coleville +colewort +coley +colfax +colford +colgan +colh +colhill +colhoun +colhozeh +coli +colias +colibacterin +colibri +colic +colical +colichemarde +colicolitis +colicos +colicroot +colics +colicweed +colicwort +colicystitis +colie +coliforms +coligny +coliidae +coliiformes +colilysin +colima +colimo +colin +colinear +coling +colinus +colipuncture +colipyelitis +colipyuria +colis +colisepsis +coliseum +coliseums +colitic +colitis +colitises +colitoxemia +colitti +coliuria +colius +colizzi +colja +colk +colkins +coll +colla +collaborated +collaborates +collaborator +collage +collagenic +collagenous +collagens +collages +collande +collapsable +collapse +collapsed +collapses +collapsible +collapsing +collar +collarband +collarbird +collarbones +collards +collare +collared +collaret +collaring +collarino +collarless +collarman +collars +collasping +collat +collatable +collate +collated +collatee +collateral +collaterally +collaterals +collates +collating +collation +collationer +collations +collatitious +collative +collator +collators +collatress +collaud +collaudation +collazo +collbran +colle +colleague +colleagues +colleano +collect +collectable +collectables +collectanea +collectarium +collected +collectedly +collecti +collectibles +collecting +collection +collectional +collectioner +collections +collective +collectively +collectives +collectivism +collectivist +collectivite +collectivity +collectivize +collector +collectorate +collectors +collectress +collects +collecutt +colledge +colleen +colleens +collega +collegatary +college +collegecity +collegedale +collegegrove +collegepark +collegeplace +collegeport +colleger +colleges +collegeville +collegia +collegialism +collegiality +collegially +collegianer +collegians +collegiant +collegiately +collegiation +collegium +collegiums +collembola +collembolan +collembole +collembolic +collembolous +collen +collenchyma +collenchyme +collencytal +collencyte +collender +collene +colleret +colleri +colleries +collery +collete +colleted +colleter +colleterial +colleterium +colletes +colleti +colletia +colletic +colletidae +colletin +collets +colletside +collett +collette +collettivo +collevecchio +colley +colleyville +colli +collibert +colliculate +colliculus +collidascope +collide +collided +collides +collidine +colliding +collie +collied +collier +collieries +colliers +collierville +colliery +collies +colliform +colligan +colligate +colligation +colligative +colligible +collignon +collimated +collimating +collimation +collimator +collimators +collin +collinal +colline +collinearity +collinearly +collineate +collineation +colling +collingdale +collinge +collingly +collings +collingswood +collingual +collingwood +collini +collins +collinses +collinsia +collinsite +collinson +collinsonia +collinston +collinsville +collinwood +colliquate +colliquation +colliquative +collis +collishaw +collision +collisional +collisions +collisive +collison +colliti +colloblast +collocal +collocalia +collocate +collocated +collocates +collocating +collocations +collocative +collocatory +collock +collocution +collocutor +collocutory +collodion +collodionize +collodiotype +collodium +collogue +colloid +colloidality +colloidize +colloids +collomb +collomia +collop +colloped +collophanite +collophore +collops +colloque +colloquially +colloquies +colloquiquia +colloquist +colloquiums +colloquize +collor +collose +collothun +collotype +collotypic +collotypy +colloxylin +collucci +colluctation +colluded +colluder +colluders +colludes +colluding +collum +collusion +collusive +collusively +collusory +collutorium +collutory +colluvial +colluvies +colluvium +colly +collyba +collybia +collyer +collyridian +collyrite +collyrium +collywest +collyweston +collywobbles +colm +colman +colmar +colmesneil +colo +coloads +colobin +colobium +coloboma +colobus +colocasia +colocate +colocation +colocentesis +colocephali +coloclysis +colocola +colocolic +colocolo +colocynth +colocynthin +colodner +cologarithm +cologned +colognes +cologs +colohon +cololite +colom +coloma +colombian +colombians +colombier +colombin +colombina +colombine +colombus +colomby +colome +colometric +colometry +colon +colona +colonalgia +colonate +coloneilo +colonelcies +colonelcy +colonels +colonelship +colonelships +colones +colongitude +colonia +colonial +colonialism +colonialist +colonialists +colonialize +colonially +colonialness +colonials +colonic +colonies +colonise +colonists +colonitis +colonius +colonizable +colonization +colonize +colonized +colonizer +colonizers +colonizes +colonizing +colonna +colonnaded +colonnades +colonnette +colonopathy +colonopexy +colonoscope +colonoscopy +colons +colontonio +colony +colopexia +colopexotomy +colopexy +colophane +colophany +colophene +colophenic +colophon +colophonate +colophonian +colophonic +colophonist +colophonite +colophonium +colophons +colophony +coloptosis +colopuncture +coloquintid +coloquintida +color +colora +colorability +colorable +colorably +coloradan +coloradans +coloradas +colorado +coloradocity +coloradoite +colorados +colorant +colorants +coloration +colorational +colorations +colorative +coloraturas +colorature +colorblind +colorbook +colorcast +colorcasted +colorcasting +colorcasts +colorclblack +colorectitis +colored +coloreds +colorer +colorers +colorfast +colorframes +colorful +colorfully +colorfulness +colorific +colorifics +colorimetric +colorimetry +colorin +coloring +colorings +colorism +colorisms +colorist +coloristic +colorists +colorization +colorize +colorized +colorless +colorlessly +colormaker +colormaking +colorman +colorme +colorpicker +colorra +colorrhaphy +colors +colorstar +colortype +colorum +colorworks +colory +colorz +colosimo +colosio +coloslossi +coloss +colossality +colossally +colosse +colossean +colossian +colossians +colosso +colossuses +colossuswise +colostate +colostomies +colostomy +colostral +colostration +colostric +colostrous +colostrum +colotomy +colotyphoid +colour +colouration +coloured +colourer +colourers +colourful +colouring +colouris +colours +colove +colp +colpenchyma +colpeo +colpeurynter +colpeurysis +colpindach +colpitis +colpitts +colpocele +colpoplastic +colpoplasty +colpoptosis +colporrhagia +colporrhaphy +colporrhea +colporrhexis +colport +colportage +colporter +colporteur +colporteurs +colposcope +colposcopy +colpotomy +colpus +colquette +colquhoun +colquitt +colrain +cols +colson +colston +colstrip +colt +coltano +colter +colterman +colters +colthood +coltishly +coltishness +colton +coltonspoint +coltpixie +coltpixy +coltrane +coltrin +colts +coltsfoot +coltskin +coltsneck +coluber +colubrid +colubridae +colubriform +colubrina +colubrinae +colubrine +colubroid +colucci +coluche +colugo +columba +columbaceous +columbae +columban +columbanian +columbarium +columbary +columbate +columbato +columbeion +columbella +columbia +columbiacity +columbiad +columbian +columbiana +columbic +columbid +columbidae +columbier +columbin +columbines +columbite +columbium +columbo +columboid +columbus +columbuscity +columella +columellar +columellate +columellia +column +columnal +columnarian +columnarity +columnate +columnated +columnates +columnating +columnation +columned +columner +columniation +columniform +columning +columnist +columnists +columnize +columnized +columnizes +columnizing +columnlined +columnmargin +columns +columnwidth +columnwise +colunar +colure +colures +colusa +colutea +coluzzi +colver +colvig +colville +colvin +colwell +colwich +colwyn +coly +colymbidae +colymbiform +colymbion +colymbus +colyone +colyonic +colytic +colyum +colyumist +comacina +comacine +comade +comae +comagistracy +comagmatic +comake +comaker +comaking +comal +comalapa +comaltepec +comamie +coman +comanche +comanchean +comanchero +comancheros +comanches +comand +comanda +comander +comandra +comands +comanic +comanoiu +comarca +comarlot +comart +comarum +comas +comassola +comate +comatible +comatosely +comatoseness +comatosity +comatous +comatula +comatulid +comayagua +comb +combaron +combat +combatable +combatants +combated +combater +combaters +combating +combative +combatively +combativity +combats +combattant +combatting +combaz +combe +combed +combee +combellack +comber +combers +comberti +combes +combest +combfish +combflower +combinable +combinant +combinantive +combinatio +combination +combinations +combinative +combinatoire +combinators +combinatory +combine +combineable +combined +combinedly +combinedness +combinement +combiner +combiners +combines +combinesa +combing +combings +combining +comble +combless +comblessness +combmaker +combmaking +combo +combobox +comboboxes +comboloio +combos +comboy +combray +combretaceae +combretum +combs +combure +comburendo +comburent +comburgess +comburimeter +comburimetry +combust +combusted +combustible +combustibles +combustibly +combusting +combustion +combustive +combustively +combustor +combusts +combwise +combwright +comby +comdex +come +comeabout +comeau +comebacks +comecon +comecrudo +comedial +comedian +comedians +comediant +comedic +comedical +comedienne +comediennes +comedies +comedietta +comedist +comedo +comedones +comedos +comedown +comedowns +comedy +comegys +comelier +comeliest +comelily +comeliness +comeling +comellas +comely +comematsa +comen +comencini +comendite +comenic +coment +comephorous +comer +comerate +comerio +comers +comes +comesfrom +comest +comestible +comestibles +comet +cometarium +cometh +comether +cometic +cometical +cometlike +cometography +cometoid +cometology +comets +cometwise +comeuppance +comeuppances +comfidown +comfier +comfiest +comfit +comfits +comfitte +comfiture +comfort +comfortable +comfortably +comforted +comfortedst +comforter +comforters +comforteth +comfortful +comforting +comfortingly +comfortless +comfortress +comfortroot +comforts +comfrey +comfreys +comfy +comi +comiakin +comic +comical +comicality +comically +comicalness +comicocratic +comicography +comicotragic +comicry +comics +comicss +comicstrip +comid +comienza +comiferous +comilla +comin +cominagetcha +coming +comingle +comingore +comings +comino +comins +comintern +cominyanga +comisaria +comisarias +comism +comiso +comissioner +comital +comitancillo +comitant +comitative +comitatus +comite +comiteco +comitia +comitial +comities +comitium +comitragedy +comity +comix +comlab +comley +comm +comma +commack +commacm +commad +command +commandable +commandants +commandbased +commanded +commandedst +commandeered +commandeers +commander +commanders +commandery +commandest +commandeth +commanding +commandingly +commanditore +commandless +commandline +commandlines +commandment +commandments +commando +commandoes +commandoman +commandos +commandress +commands +commandscan +commandto +commas +commassation +commassee +commatic +commation +commatism +commazzi +comme +commea +commeasure +commeddle +commelina +commemorable +commemorated +commemorates +commemorator +commemorize +commence +commenceable +commenced +commencement +commencer +commences +commencing +commend +commendable +commendably +commendador +commendam +commendatary +commendation +commendator +commendatore +commended +commender +commendeth +commending +commendingly +commendment +commends +commensal +commensalism +commensalist +commensality +commensally +commensals +comment +commentarial +commentaries +commentary +commentate +commentated +commentating +commentation +commentator +commentators +commented +commenter +commenting +comments +commerce +commercecity +commerced +commerceless +commercer +commerces +commerciable +commercial +commercially +commercials +commercing +commercium +commerge +commewijne +commie +commies +commigo +comminate +commination +comminative +comminator +comminatory +commingled +commingler +commingles +commingling +comminister +comminuate +comminute +comminution +comminutor +commiphora +commisar +commiserable +commiserated +commiserates +commiserator +commisioner +commiskey +commissaire +commissar +commissarial +commissaries +commissario +commissars +commission +commissional +commissioned +commissioner +commissions +commissive +commissively +commissural +commissure +commit +commited +commitment +commitments +commits +committals +committe +committed +committee +committeeism +committees +committent +committer +committest +committeth +committible +committing +committor +commix +commixed +commixes +commixing +commixion +commixt +commixtion +commixture +commmander +commo +commodatary +commodate +commodation +commodatum +commode +commodes +commodious +commodiously +commoditable +commoditi +commodities +commodity +commodores +common +commonable +commonage +commonality +commonalties +commonalty +commoner +commoners +commonership +commonest +commoney +commonish +commonition +commonize +commonlaw +commonly +commonness +commonplacer +commonplaces +commons +commonsense +commonty +commonweals +commonwealth +commopt +commorancies +commorancy +commorant +commorient +commorth +commot +commotion +commotional +commotions +commotive +commove +commrades +comms +communa +communal +communalism +communalist +communality +communalize +communalized +communalizer +communally +communard +communaute +communcate +commune +communed +communer +communes +communi +communicably +communicants +communicate +communicated +communicatee +communicates +communicator +communing +communion +communionist +communions +communique +communiques +communism +communist +communistery +communistic +communistled +communists +communital +communitary +communities +communitive +community +communize +communized +communizing +commutable +commutant +commutated +commutating +commutation +commutations +commutative +commutator +commutators +commute +commuted +commuter +commuters +commutes +commuting +commutual +commutuality +commy +comnavlogpac +comnavsubpac +comnenian +como +comock +comoe +comoid +comolecule +comon +comont +comoran +comore +comores +comorian +comoro +comoros +comortgagee +comose +comourn +comourner +comournful +comous +comox +comp +compac +compact +compacted +compactedly +compactest +compactible +compacting +compaction +compactions +compactly +compactness +compactor +compactors +compacts +compacture +compadre +compadres +compages +compaginate +compaign +compairs +compana +companator +companie +companied +companies +companion +companionage +companionate +companionize +companions +company +companying +companys +companysize +companywide +compaore +compaq +compaqs +comparable +comparably +comparascope +comparate +comparatival +comparative +comparatives +comparator +comparators +compare +compared +comparer +comparers +compares +comparing +comparion +comparison +comparisons +comparition +comparograph +compart +compartition +compartment +compartments +comparts +compass +compassable +compassed +compasser +compasses +compassest +compasseth +compassing +compassion +compassions +compassive +compassivity +compassless +compat +compaternity +compatibile +compatible +compatibles +compatibly +compatriotic +compatriots +compear +compearance +compearant +comped +compeer +compeers +compel +compellably +compellation +compellative +compelled +compellent +compeller +compellers +compellest +compelling +compellingly +compels +compend +compendency +compendent +compendiary +compendiate +compendious +compendium +compendiums +compends +compenetrate +compensate +compensated +compensates +compensating +compensation +compensative +compensator +compensators +compense +compenser +compere +compered +comperes +compering +compesce +competance +compete +competed +competence +competencies +competency +competent +competently +competes +competing +competition +competitions +competitive +competitor +competitors +competitory +competitress +competitrix +compeva +compeyson +compilable +compilation +compilations +compilator +compilatory +compile +compileable +compiled +compilement +compiler +compilers +compiles +compiletion +compiling +comping +compital +compitalia +compitum +complacence +complacency +complacent +complacently +complain +complainable +complainants +complained +complainer +complainers +complainin +complaining +complains +complaint +complaintive +complaints +complaisance +complanar +complanate +complanation +comple +complect +complected +complement +complemental +complemented +complementer +complements +complession +complete +completed +completely +completement +completeness +completer +completers +completes +completest +completete +completing +completion +completions +completive +completively +completly +completory +completter +complex +complexer +complexes +complexest +complexify +complexing +complexional +complexioned +complexions +complexities +complexity +complexively +complexly +complexness +complexus +compliable +compliably +compliance +compliances +compliancies +compliancy +compliant +compliantly +complicacy +complicant +complicata +complicate +complicated +complicates +complicating +complication +complicative +complicator +complicators +complice +complices +complicities +complicitous +complicity +complied +complier +compliers +complies +compliment +complimental +complimented +complimenter +compliments +complin +complite +complot +complots +complotter +compluvium +comply +complying +compo +compoents +compoer +compole +compone +componed +componency +componendo +component +componental +componented +componential +componentone +components +componentto +compony +comported +comporting +comportment +comports +compos +compose +composed +composedly +composedness +composer +composers +composes +composing +composita +compositae +composite +compositely +composites +composition +compositions +compositive +compositor +compositors +compositous +composograph +compossible +compost +composted +composting +composts +composture +compotation +compotator +compotatory +compotes +compotor +compound +compoundable +compounded +compounder +compounders +compoundeth +compounding +compoundness +compounds +compoy +comprachico +comprador +comprecation +compreg +compregnate +comprehend +comprehended +comprehender +comprehends +comprehense +comprehensor +comprende +compresbyter +compresence +compresent +compress +compressed +compressedly +compresser +compresses +compressing +compression +compressions +compressor +compressors +compressure +comprest +compriest +comprimise +comprisable +comprisal +comprise +comprised +comprises +comprising +comprize +comprized +comprizes +comprizing +comprobation +compromise +compromised +compromiser +compromisers +compromises +compromising +compromit +comps +compsilura +compsoa +compson +compstat +compt +comptche +compte +compted +comptek +compter +compting +comptoirs +comptom +comptometer +compton +comptonia +comptrollers +compts +compulator +compulog +compulsative +compulsatory +compulsed +compulsion +compulsions +compulsitor +compulsive +compulsively +compulsives +compulsorily +compunctions +compunctious +compunctive +compupic +compurgation +compurgator +compurgatory +compursion +compuserve +compuserves +compushow +compustat +computable +computably +computation +computations +computative +compute +computed +computer +computerese +computerize +computerized +computerizes +computerland +computername +computeroid +computerra +computers +computes +computesr +computing +computings +computist +computron +computrons +computus +comrade +comradely +comradery +comrades +comradeship +comre +comression +comrey +comrie +comron +comsat +comsec +comsomol +comspec +comspeed +comstock +comstockery +comstockpark +comtation +comte +comtenc +comtes +comtesse +comth +comtian +comtism +comtist +comtois +comtrade +comtrol +comunidad +comunidades +comunities +comurmurer +comus +comvax +comville +comxx +cona +conacaste +conacom +conacre +conacry +conakry +conal +conalbumin +conamed +conan +conaniah +conarial +conarium +conasauga +conation +conational +conative +conato +conatus +conaway +conaxial +conbergent +conboy +concalves +concamerate +concamerated +concamin +concan +concanaco +concanavalin +concannon +concaptive +concassation +concatenary +concatenated +concatenates +concatenator +concausal +concause +concavation +concave +concaved +concavely +concaveness +concaver +concaves +concaving +concavities +concavity +concavo +conceal +concealable +concealed +concealedly +concealer +concealers +concealeth +concealing +concealment +conceals +concede +conceded +concededly +conceder +conceders +concedes +conceding +conceicao +conceit +conceited +conceitedly +conceiting +conceitless +conceits +conceity +conceivable +conceivably +conceive +conceived +conceiver +conceivers +conceives +conceiving +concelebrate +concelho +concelhos +concello +concent +concenter +concentive +concentrate +concentrated +concentrates +concentrator +concentric +concents +concentual +concentus +concepcio +concepcion +concept +conceptacle +conception +conceptional +conceptions +conceptism +conceptive +concepts +conceptual +conceptually +conceptus +concern +concerned +concernedly +concerneth +concerning +concerningly +concernment +concerns +concert +concertation +concerted +concertedly +concertgoer +concertinas +concerting +concertinist +concertist +concertize +concertized +concertizer +concertizes +concertizing +concertment +concerto +concertos +concerts +concertstuck +concessible +concession +concessional +concessioner +concessions +concessive +concessively +concessor +concetta +concettina +concettism +concettist +concetto +concha +conchal +conchata +conchate +conche +conched +concher +conches +conchface +conchi +conchifera +conchiferous +conchiform +conchinine +conchiolin +conchita +conchitic +conchitis +conchito +concho +conchobor +conchoid +conchoidal +conchoidally +conchologist +conchologize +conchology +conchometer +conchometry +conchostraca +conchotome +conchs +conchubar +conchucos +conchucu +conchuela +conchy +conchyliated +conchylium +concierges +concierto +concile +conciliable +conciliabule +conciliar +conciliated +conciliates +conciliating +conciliation +conciliative +conciliator +conciliators +conciliatrix +concilium +concinnity +concinnous +concionator +concipiency +concipient +concise +concisely +conciseness +conciser +concisest +concision +conclamant +conclamation +conclaves +conclavist +conclliatory +concludable +conclude +concluded +concluder +concluders +concludes +concluding +concludingly +conclusion +conclusional +conclusions +conclusive +conclusively +conclusory +concoagulate +concoct +concocted +concocting +concoction +concoctions +concoctive +concoctor +concocts +concolor +concolorous +concomitance +concomitancy +concomitant +concomitants +concommitant +conconscious +conconully +concord +concordal +concordance +concordancer +concordances +concordantly +concordat +concordatory +concordats +concorde +concorder +concordia +concordial +concordian +concordist +concordity +concords +concordville +concorinum +concorporate +concours +concourse +concourses +concoy +concreate +concremation +concrement +concresce +concrescence +concrescent +concrescible +concrescive +concrete +concreted +concretely +concreteness +concreter +concretes +concreting +concretional +concretions +concretism +concretive +concretively +concretize +concretor +concubinage +concubinal +concubinary +concubinate +concubine +concubines +concubitancy +concubitant +concubitous +concubitus +concupiscent +concupy +concurrence +concurrences +concurrency +concurrent +concurrently +concurringly +concurs +concursion +concurso +concursus +concuss +concussant +concussed +concusses +concussing +concussional +concussions +concussive +concussively +concutient +concyclic +cond +conda +condalia +condamine +conde +condell +condemn +condemnable +condemnably +condemnation +condemned +condemner +condemners +condemnest +condemneth +condemning +condemningly +condemnor +condemns +condensable +condensance +condensary +condensates +condensation +condensative +condensator +condensed +condensedly +condenser +condensers +condensery +condenses +condensing +condensity +condepa +conderley +condesa +condescend +condescended +condescender +condescends +condiction +condictious +condiddle +condign +condigness +condignity +condignly +condiment +condimental +condimentary +condiments +condisciple +condit +condite +condition +conditional +conditionals +conditionate +conditione +conditioned +conditioner +conditioners +conditioning +conditions +conditon +condivision +condo +condolatory +condole +condoled +condolement +condolence +condolences +condolent +condoler +condolers +condoles +condoling +condolingly +condom +condominate +condomine +condominiia +condominiums +condoms +condon +condonable +condonance +condonation +condonations +condonative +condoned +condonement +condoner +condoners +condones +condoning +condor +condores +condors +condos +condottiere +condrus +conduced +conducement +conducer +conducers +conduces +conducing +conducingly +conducive +conduct +conductances +conducted +conductible +conductility +conducting +conductio +conduction +conductional +conductive +conductively +conductivity +conductorial +conductors +conductory +conductress +conducts +conductus +conduit +conduits +condul +conduplicate +condurangin +condurango +condurelis +condylar +condylarth +condylarthra +condyle +condylectomy +condyles +condylion +condyloid +condyloma +condylome +condylopod +condylopoda +condylos +condylotomy +condylura +condylure +cone +coned +conedo +coneen +conehatta +conehead +coneine +conejos +conelet +conelin +conelrad +conelrads +conemaker +conemaking +conemaugh +conenose +conep +conepate +coner +conerly +cones +conesa +coneshaped +conessine +conestee +conesus +conesville +conetoe +coney +coneybeare +coneys +conf +confab +confabbed +confabbing +confabs +confabular +confabulated +confabulates +confabulator +confact +confais +confarreate +confated +confecting +confection +confectioner +confectiones +confections +confects +confed +confederacy +confederal +confederate +confederated +confederater +confederates +confederatio +confederator +confelicity +confer +conferees +conference +conferences +conferencing +conferential +conferment +conferral +conferred +conferrer +conferrers +conferring +confers +conferted +conferva +confervaceae +conferval +confervales +confervoid +confervous +confess +confessable +confessant +confessarius +confessary +confessed +confessedly +confesser +confesses +confesseth +confessing +confessingly +confession +confessional +confessions +confessors +confessory +confetti +confettilike +confetto +confidant +confidantes +confidants +confide +confided +confidence +confidences +confidency +confident +confidente +confidential +confidently +confider +confiders +confides +confiding +confidingly +config +configration +configs +configsafent +configurable +configural +configurate +configurati +configuratin +configurator +configure +configured +configures +configuring +confinable +confine +confineable +confined +confinedly +confinedness +confineless +confinement +confinements +confiner +confiners +confines +confining +confinity +confirm +confirmable +confirmand +confirmation +confirmative +confirmed +confirmedly +confirmee +confirmer +confirmeth +confirming +confirmingly +confirmity +confirmment +confirmor +confirms +confiscate +confiscated +confiscates +confiscating +confiscation +confiscator +confiscators +confitent +confiteor +confiture +confix +conflagrant +conflagrator +conflate +conflated +conflation +conflexure +conflict +conflicted +conflicting +confliction +conflictive +conflictory +conflicts +conflow +confluence +confluences +confluenee +confluently +conflux +confluxible +conforbably +conform +conformable +conformably +conformance +conformant +conformate +conformator +conformed +conformer +conformers +conforming +conformism +conformist +conformists +conformities +conformity +conforms +confortes +conforti +confound +confoundable +confounded +confoundedly +confounder +confounders +confounding +confounds +confrater +confraternal +confreres +confriar +confrication +confront +confrontal +confronte +confronted +confronter +confronters +confronting +confrontment +confronts +confucianist +confucians +confusable +confusably +confuse +confused +confusedly +confusedness +confuser +confusers +confuses +confusing +confusingly +confusion +confusional +confusions +confusticate +confusum +confutable +confutation +confutations +confutative +confutator +confuted +confuter +confuters +confutes +confuting +cong +conga +congaed +congaing +congas +congdon +conge +congeable +congealable +congealed +congealer +congealing +congealment +congeals +congee +congeed +congees +congelation +congelative +congeneracy +congeneric +congenerical +congenerous +congeners +congenetic +congeniality +congenialize +congenially +congenitally +congenite +conger +congeree +congeries +congers +congerville +congested +congestible +congesting +congestion +congestions +congests +conghaile +congiary +congiuntura +congius +conglobate +conglobately +conglobation +conglobe +conglobulate +conglutin +conglutinant +conglutinate +congo +congoes +congoese +congoleum +congos +congou +congouma +congrats +congratulant +congratulate +congredient +congreet +congregable +congreganist +congregant +congregants +congregated +congregates +congregating +congregation +congregative +congregator +congreso +congress +congressed +congresser +congresses +congressist +congressive +congresso +congreve +congridae +congroid +congruence +congruences +congruencies +congruency +congruential +congruently +congruism +congruist +congruistic +congruities +congruity +congruous +congruously +congton +conhague +conhydrine +coni +coniacian +coniagui +coniah +coniba +conibo +conic +conical +conicality +conically +conicalness +coniceine +conichalcite +conicine +conicity +conicle +conicoid +conicopoly +conics +conidae +conidia +conidial +conidian +conidioid +conidiophore +conidiospore +conidium +conies +coniferae +coniferin +conifers +conification +coniform +conila +conilurus +conima +conimene +conin +conine +coning +coningham +coniogramme +coniophora +conioselinum +coniosis +coniothyrium +coniroster +conirostral +conirostres +conistis +conium +conj +conject +conjective +conjecture +conjectured +conjecturer +conjectures +conjecturing +conjegates +conjobble +conjoined +conjoinedly +conjoiner +conjoining +conjoins +conjointly +conjointment +conjointness +conjoints +conjubilant +conjugable +conjugal +conjugales +conjugality +conjugally +conjugant +conjugata +conjugatae +conjugated +conjugately +conjugates +conjugating +conjugation +conjugations +conjugative +conjugator +conjugators +conjugial +conjugium +conjuncted +conjunction +conjunctions +conjunctiva +conjunctivae +conjunctival +conjunctivas +conjunctive +conjunctives +conjunctly +conjuncts +conjunctur +conjunctural +conjunctures +conjuration +conjurations +conjurator +conjure +conjured +conjurement +conjurer +conjurers +conjurership +conjures +conjuriation +conjuring +conjuror +conjurors +conjurs +conjury +conk +conkanee +conked +conker +conkers +conking +conklin +conks +conky +conlan +conley +conliffe +conlin +conlon +conly +conman +conmee +conn +connach +connacht +connaraceae +connaraceous +connarite +connart +connarus +connascency +connascent +connatal +connate +connately +connateness +connation +connatural +connaturally +connature +connaught +conncoll +conneaut +conneautlake +connect +connectable +connectant +connected +connectedly +connecter +connecters +connectible +connectibly +connecticut +connecting +connection +connectional +connections +connectival +connective +connectively +connectives +connectivity +connectix +connector +connectors +connects +conned +conneely +connell +connellite +connelly +connels +conner +connerly +conners +connersville +connerville +connery +conness +connex +connexion +connexity +connexive +connexivum +connexus +conni +connie +conning +conniption +conniptions +connivances +connivancy +connivant +connivantly +connived +connivent +conniver +connivers +connivery +connives +conniving +connochaetes +connoissance +connoisseurs +connolly +connor +connors +connotations +connoted +connotes +connoting +connotive +connotively +conns +connubiality +connubially +connubiate +connubium +connumerate +conny +conob +conocarpus +conocephalum +conocephalus +conocia +conoclinium +conocuneus +conodont +conoid +conoidal +conoidally +conoidic +conoidical +conoidically +conoids +conolophus +conoly +conominee +cononiah +conopholis +conopid +conopidae +conoplain +conopodium +conopophaga +conor +conorhinus +conormal +conors +conoscent +conosco +conoscope +conourish +conovan +conover +conowingo +conoy +conphaseolin +conplane +conquedle +conquer +conquerable +conquerants +conquered +conquerer +conquerers +conqueress +conquering +conqueringly +conquerment +conqueror +conquerors +conquers +conquest +conquests +conquian +conquinamine +conquinine +conrad +conrada +conrado +conran +conrath +conrector +conred +conreid +conried +conringia +conroe +conroy +cons +consalvi +conscience +consciences +conscient +conscionably +conscious +consciously +conscribe +conscripted +conscripting +conscriptive +conscripts +conseal +consecate +consecrate +consecrated +consecrater +consecrates +consecrating +consecration +consecrative +consecrator +consecratory +consectary +consectutive +consecute +consecution +consecutive +consecutives +conseil +consell +consension +consensual +consensually +consensus +consensuses +consent +consentable +consentant +consented +consentedst +consenter +consenters +consentful +consentfully +consentience +consentient +consenting +consentingly +consentive +consentively +consentment +consents +conseqences +consequence +consequences +consequency +consequently +consequents +consertal +conservable +conservacy +conservancy +conservant +conservate +conservatist +conservative +conservatize +conservators +conservatrix +conserve +conserved +conserver +conservers +conserves +conserving +conshohocken +consider +considerable +considerably +considerance +considerate +considerator +considerd +considered +considerer +considerest +considereth +considering +considers +considine +consiglio +consignable +consignatary +consignation +consignatory +consigned +consignees +consigner +consignify +consigning +consignment +consignments +consignors +consigns +consigny +consiliary +consilience +consilient +consimilar +consimilate +consist +consistant +consisted +consistence +consistences +consistency +consistent +consistently +consisteth +consisting +consistorial +consistorian +consistories +consistory +consists +conso +consociate +consociation +consociative +consocies +consodine +consol +consolable +consolably +consolata +consolation +consolations +consolato +consolatory +consolatrix +consoldane +console +consoled +consolement +consoler +consolers +consoles +consolidant +consolidated +consolidates +consolidator +consoling +consolingly +consols +consolute +consomme +consommes +consonance +consonances +consonancy +consonantic +consonantism +consonantize +consonantly +consonants +consonate +consonous +consort +consortable +consorte +consorted +consorter +consortia +consortial +consorting +consortion +consortism +consortitia +consortium +consortiums +consorts +consortship +consound +conspecies +conspecific +conspecifics +conspection +conspectuity +conspectus +conspectuses +consperse +conspersion +conspicuity +conspicuous +conspiracies +conspiracy +conspirant +conspiration +conspirative +conspirators +conspiratory +conspired +conspirer +conspirers +conspires +conspiring +conspiringly +conspue +consrt +const +constable +constablery +constables +constabless +constabular +constabulary +constance +constancia +constancy +constant +constanta +constantan +constantaras +constanti +constantia +constantin +constantina +constantine +constantini +constantino +constantinof +constantly +constantness +constants +constanze +constanzo +constas +constat +constatation +constate +constatory +constipated +constipates +constipating +constipation +constituency +constituent +constituents +constitute +constituted +constituter +constitutes +constituting +constitution +constitutor +constrain +constrained +constrainer +constrainers +constraineth +constraining +constrains +constraint +constraints +constricted +constricting +constriction +constrictive +constrictors +constricts +constringe +constringent +construable +construct +constructed +constructer +constructing +construction +constructive +constructor +constructors +constructs +constructure +construed +construer +construers +construes +construing +consts +constuble +constuctor +constuprate +consubsist +consuela +consuelito +consuello +consuelo +consuete +consuetitude +consuetude +consulage +consularity +consulary +consulates +consulating +consulation +consuls +consulship +consulships +consult +consultable +consultancy +consultant +consultants +consultary +consultatif +consultation +consultatory +consulted +consultee +consulter +consulteth +consulting +consultive +consultively +consultng +consultor +consultory +consults +consumable +consumables +consume +consumed +consumedly +consumeless +consumer +consumerism +consumers +consumes +consumeth +consuming +consumingly +consummate +consummated +consummately +consummates +consummating +consummation +consummative +consummator +consummatory +consumpt +consumpted +consumptible +consumption +consumptions +consumptives +consute +cont +conta +contabescent +contaced +contact +contacted +contacting +contactor +contacts +contactual +contactually +contactz +contagion +contagioned +contagionist +contagions +contagiosity +contagious +contagiously +contagium +contai +contain +containable +contained +container +containerize +containers +containeth +containing +containment +containments +contains +contakion +contaminable +contaminants +contaminate +contaminated +contaminates +contaminator +contaminous +contango +contaquiro +contardo +contareddi +contarini +contate +contchar +contd +conte +contect +contection +contel +contell +contemn +contemned +contemner +contemneth +contemnible +contemnibly +contemning +contemningly +contemnor +contemns +contemp +contemper +contemperate +contemplable +contemplamen +contemplant +contemplate +contemplated +contemplates +contemplator +contemporal +contemporary +contemporize +contemps +contempt +contemptful +contemptible +contemptibly +contempts +contemptuous +contenant +contend +contended +contendent +contender +contendere +contenders +contendest +contendeth +contending +contendingly +contendress +contends +content +contentable +contented +contentedly +contentfree +contentful +contenting +contention +contentional +contentions +contentious +contentless +contently +contentment +contentness +contents +contentsof +conter +conterminal +conterminant +conterminate +contermine +conterminous +contes +contessa +contest +contestable +contestably +contestants +contestation +contested +contestee +contester +contesters +contesting +contestingly +contestless +contests +context +contextfree +contextive +contexts +contextually +contextural +contexture +contextured +conti +conticent +contigents +contignation +contiguities +contiguous +contiguously +contine +continence +continency +continent +continental +continently +continents +contingence +contingency +contingent +contingently +contingents +contingo +contini +continies +continuable +continual +continuality +continually +continuance +continuances +continuancy +continuando +continuantly +continuate +continuately +continuation +continuative +continuator +continue +continued +continuedly +continuer +continuers +continues +continueth +continuing +continuingly +continuist +continuities +continuos +continuous +continuously +continuua +continuum +contise +contiuation +contline +contloll +conto +contoocook +contorniate +contorsive +contorta +contortae +contorted +contortedly +contorting +contortion +contortional +contortioned +contortions +contortive +contorts +contour +contoured +contouring +contourline +contourne +contours +contr +contra +contrabasso +contracivil +contract +contractable +contractant +contracted +contractedly +contractee +contracter +contractible +contractibly +contractile +contracting +contraction +contractions +contractive +contractor +contractors +contracts +contractual +contracture +contractured +contradebt +contradicted +contradicter +contradictor +contradicts +contradivide +contraflow +contrafocal +contrahent +contrail +contrails +contraire +contralti +contraltos +contramarque +contraoctave +contraplex +contrapone +contraponend +contrapose +contraposit +contraposita +contraprop +contraptions +contraptious +contrapuntal +contrapunto +contrariant +contraries +contrarily +contrariness +contrarious +contrariwise +contrary +contrast +contrastable +contrastably +contrasted +contrastedly +contraster +contrasters +contrasting +contrastive +contrastment +contrasts +contrasty +contrate +contratempo +contratenor +contravened +contravener +contravenes +contravening +contrawise +contrayerva +contrecoup +contreface +contrefacon +contrefort +contreras +contretemps +contribute +contributed +contributes +contributing +contribution +contributive +contributors +contrite +contritely +contriteness +contriturate +contrivances +contrivancy +contrive +contrived +contrivedly +contrivement +contriver +contrivers +contrives +contriving +contro +control +controlb +controlc +controlchart +controle +controleur +controlflow +controll +controllably +controlled +controller +controllers +controlless +controlling +controlment +controlo +controls +controlz +controversy +controvert +controverted +controverter +controverts +contrrol +contructed +contsa +contty +contubernal +contubernial +contubernium +contumacies +contumacious +contumacity +contumelies +contumelious +contumely +contund +conturbation +contuse +contused +contuses +contusing +contusioned +contusions +contusive +conubium +conularia +conumer +conumerary +conumerous +conundrum +conundrumize +conundrums +conurbation +conurbations +conure +conuropsis +conurus +conus +conusable +conusance +conusant +conusee +conusor +conutrition +conuzee +conuzor +conv +convalesced +convalesces +convalescing +convallaria +convallarin +convected +convecting +convection +convectional +convective +convectively +convector +convects +convenable +convenably +convenant +convene +convened +convenee +convener +conveners +convenership +convenes +convenience +conveniences +conveniency +convenient +conveniently +convening +convent +convented +conventer +conventical +conventicle +conventicler +conventicles +conventing +convention +conventional +conventioner +conventions +convento +convents +conventual +conventually +converge +converged +convergement +convergence +convergences +convergency +converges +converging +convernience +conversable +conversably +conversance +conversancy +conversant +conversantly +conversation +conversative +converse +conversed +conversely +converser +converses +conversible +conversing +conversion +conversional +conversions +conversive +convert +convertable +converted +convertees +convertend +converter +converters +converteth +convertfont +convertibles +convertibly +converting +convertise +convertism +convertite +convertive +convertor +convertors +converts +conveth +convex +convexed +convexedly +convexedness +convexes +convexities +convexity +convexly +convexness +convexo +convexos +convey +conveyable +conveyal +conveyance +conveyancer +conveyances +conveyancing +conveyed +conveyer +conveyers +conveying +conveyors +conveys +convict +convictable +convicted +convicting +conviction +convictional +convictions +convictism +convictive +convictively +convictment +convictor +convicts +convince +convinced +convincedly +convincement +convincer +convincers +convinces +convinceth +convincible +convincing +convincingly +convival +convive +convivialist +conviviality +convivialize +convivially +convocant +convocation +convocations +convocative +convocator +convoked +convoker +convokers +convokes +convoking +convoluta +convoluted +convolutely +convoluting +convolution +convolutions +convolutive +convolvement +convolver +convolves +convolvulad +convolvuli +convolvulic +convolvulin +convolvulus +convoyed +convoying +convoys +convulsant +convulse +convulsed +convulsedly +convulses +convulsible +convulsing +convulsional +convulsions +convulsive +convulsively +convy +conway +conways +conwell +conwya +conycatcher +conyers +conyngham +conyrine +cooba +cooch +coochey +coochie +coodclip +coodle +coody +cooed +cooee +cooeeing +cooees +cooer +cooers +cooey +cooeyed +cooeying +cooeys +coof +coofan +coogan +coogle +coohee +cooing +cooingly +cooja +cook +cookable +cookbook +cookbooks +cookdom +cooke +cookecity +cooked +cookee +cookeite +cooker +cookeries +cookers +cookery +cookeville +cookey +cookeys +cookhouse +cookie +cookies +cooking +cookings +cookish +cookishly +cookless +cookmaid +cookman +cookout +cookouts +cookroom +cooks +cooksburg +cooksey +cookshack +cookshop +cookshops +cooksley +cookson +cooksprings +cookstation +cookstove +cookstown +cooksville +cooktown +cookville +cookware +cookwares +cool +coola +coolants +coolcat +coolchecka +coole +cooled +cooledit +cooleemee +coolen +cooler +coolerman +coolers +coolest +cooley +coolheadedly +coolhouse +coolibah +coolidge +coolie +coolies +coolin +cooling +coolingly +coolingness +coolio +coolish +coolly +coolness +coolridge +coolrun +cools +cooltalk +coolth +coolung +coolville +coolweed +coolwort +cooly +coom +coomb +coombe +coombes +coombs +coomes +coomy +cooncan +coondoo +cooner +cooney +coongurri +coonhound +coonhounds +coonily +cooniness +coonleu +coonrapids +coonroot +coons +coonskin +coonskins +coontail +coontie +coontz +coonvalley +coony +coop +cooped +cooper +cooperage +cooperate +cooperated +cooperates +cooperating +cooperation +cooperations +cooperative +cooperatives +cooperator +cooperators +coopered +cooperia +coopering +coopers +coopersburg +coopersmills +coopersmith +cooperstown +coopersville +coopery +cooping +coops +coopt +cooptation +coopted +coopting +cooption +cooptional +coopts +coord +coordinated +coordinately +coordinates +coordinating +coordination +coordinative +coordinator +coordinators +cooree +coorg +coorge +coorie +coors +cooruptibly +coos +coosa +coosada +coosbay +cooser +coost +coosuc +coote +cooter +cootfoot +coothay +cootie +cooties +coots +copa +copable +copacetic +copaene +copage +copaiba +copaibic +copaifera +copainala +copaiva +copaivic +copaiye +copake +copakefalls +copal +copala +copalche +copalcocote +copaliferous +copalisbeach +copalite +copalm +copals +copan +coparallel +coparcenary +coparcener +coparceny +coparent +coparents +coparmex +copart +copartaker +copartner +copartners +copartnery +coparty +copas +copassionate +copastor +copastorate +copatain +copatentee +copatriot +copatron +copatroness +copculer +cope +copeau +copeck +coped +copee +copehan +copei +copeia +copeland +copelata +copelatae +copelate +copelin +copellidine +copello +copeman +copemate +copemish +copen +copending +copenetrate +copenhagen +copeognatha +copepod +copepoda +copepodan +copepodous +copepods +coper +coperaque +coperception +coperfield +coperiodic +copernic +copernicia +copernick +copers +coperta +copes +copesman +copesmate +copestone +copetitioner +copetitive +copeville +cophasal +cophetua +cophiber +cophosis +copi +copiability +copiable +copiague +copiapite +copied +copier +copiers +copies +copilot +copilots +coping +copings +copingstone +copiopia +copiopsia +copiosity +copiously +copiousness +copis +copist +copita +copla +coplaintiff +coplan +coplanarity +copland +coplay +copleased +copleston +copletely +copley +coplot +coplots +coplotter +coploughing +coplowing +copoka +copolar +copolymeric +copolymerize +copolymers +coporal +coporation +coportion +coposu +copoulos +copout +copouts +copp +coppaelite +copped +coppedge +coppel +coppelia +coppell +coppename +coppens +copper +copperascove +copperbelt +copperbottom +coppercenter +coppercity +coppered +copperer +copperharbor +copperheads +copperhill +coppering +copperish +copperize +copperleaf +coppernicus +coppernose +coppernosed +copperopolis +copperplate +copperproof +coppers +copperskin +coppersmith +copperud +copperware +copperwing +copperworks +coppery +coppet +coppice +coppiced +coppices +coppicing +coppin +copping +coppins +copple +copplecrown +coppled +coppola +coppy +copr +copras +coprates +copremia +copremic +copresbyter +copresence +copresent +coprides +coprinae +coprince +coprinces +coprincipal +coprincipate +coprisoner +coproc +coprocessing +coprocessor +coprocessors +coprocs +coprodaeum +coproduce +coproducer +coprojector +coprolagnia +coprolagnist +coprolalia +coprolaliac +coprolite +coprolith +coprolitic +coprology +copromisor +copromoter +coprophagan +coprophagia +coprophagist +coprophagous +coprophagy +coprophilia +coprophiliac +coprophilic +coprophilism +coprophilous +coprophyte +coproprietor +coprose +coprosma +coprostasis +coprosterol +coprozoic +cops +copse +copses +copsewood +copsewooded +copsing +copsy +copt +copters +coptic +coptimal +coptis +copula +copulable +copulae +copular +copularium +copulas +copulate +copulated +copulates +copulating +copulation +copulations +copulative +copulatively +copulatory +copunctal +copurchaser +copus +copy +copyandadd +copybooks +copyboy +copyboys +copybroke +copycard +copycat +copycats +copycatted +copydesk +copydesks +copyediting +copyer +copygraph +copygraphed +copyhold +copyholder +copyholders +copyholding +copying +copyism +copyist +copyists +copyleft +copylefted +copylocal +copyman +copypaste +copyr +copyreader +copyreaders +copyright +copyrighted +copyrighter +copyrighting +copyrights +copyscreen +copyshop +copystar +copyto +copywise +copywriters +copywronged +coque +coquecigrue +coquelicot +coqueluche +coquet +coquetoon +coquetries +coquetry +coquets +coquette +coquetted +coquettes +coquetting +coquettish +coquettishly +coqueugniot +coquicken +coquilla +coquillage +coquille +coquimbite +coquimbo +coquinas +coquinera +coquita +coquitlam +coquito +cora +corabeca +corabecan +corabel +corabella +corabelle +corace +corach +corachol +coraciae +coracial +coracias +coracii +coraciidae +coraciiform +coracine +coracle +coracler +coracles +coracocostal +coracohyoid +coracoid +coracoidal +coracomorph +coradical +coradicate +corah +coraise +coral +coralbush +coraled +coralflower +coralie +coraline +coralist +corallet +corallian +corallic +corallidae +coralliform +coralligena +corallike +corallina +corallite +corallium +coralloid +coralloidal +corallorhiza +corallum +corallus +coralroot +corals +coralville +coralwort +coralyn +coram +corambis +coran +coranto +corantyne +coraopolis +corapeake +coras +coray +corazon +corbal +corban +corbeau +corbeil +corbeille +corbeled +corbeling +corbelled +corbelling +corbels +corbet +corbett +corbicula +corbiculate +corbiculum +corbie +corbier +corbiestep +corbin +corbitt +corbo +corbomite +corbovinum +corbu +corbula +corby +corcano +corcass +corcega +corchorus +corcir +corcopali +corcoran +corcuera +corcyraean +cord +corda +cordages +cordaitaceae +cordaitalean +cordaitales +cordaitean +cordaites +cordaner +cordant +cordata +cordate +cordated +cordately +cordax +corday +cordaz +cordeau +corded +cordel +cordele +cordelia +cordelie +cordelier +cordeliere +cordell +cordelle +corden +corder +cordere +cordero +corders +cordery +cordesville +cordet +cordette +cordewane +cordey +cordi +cordia +cordial +cordialities +cordiality +cordialize +cordially +cordialness +cordials +cordiceps +cordicole +cordie +cordier +cordierite +cordies +cordiform +cordigeri +cordillera +cordilleran +cordilleras +cordiner +cording +cordites +corditis +cordleaf +cordless +cordlessly +cordmaker +cordoba +cordobas +cordon +cordona +cordoned +cordoning +cordonnet +cordons +cordova +cordovan +cordovans +cordray +cordrazine +cords +corduba +cordula +corduroyed +corduroys +cordwain +cordwainer +cordwainery +cordwains +cordwood +cordwoods +cordy +cordyceps +cordyl +cordylanthus +cordyline +core +corea +corebel +coreceiver +coreciprocal +corectome +corectomy +corector +cored +coredeem +coredeemed +coredeemer +coreductase +coredumps +coredumpsize +coree +coreen +coreflexed +coregence +coregency +coregent +coregnancy +coregnant +coregonid +coregonidae +coregonine +coregonoid +coregonus +coreguaje +coreid +coreidae +coreign +coreigner +coreigns +corejoice +corel +corelate +corelated +corelating +corelation +corelative +corelatively +coreldraw +coreless +corella +corelli +corello +corelysis +corema +coremaker +coremaking +coremium +corena +corencia +corenda +corene +corenounce +coreometer +coreopsis +coreplastic +coreplasty +corer +corers +cores +coresidence +coresident +coresidual +coresign +coresonant +coresort +corespect +corespondent +coretomy +coretta +corette +coreveler +coreveller +corevolve +corey +corez +corf +corfiote +corfis +corflambo +corfman +corfu +corgan +corge +corgi +corgie +corgis +cori +coriaceous +corial +coriamyrtin +coriander +corianders +coriandrol +coriandrum +coriaria +coriariaceae +coriaty +corie +coriin +corilla +corimelaena +corin +corina +corindon +corine +corineus +coring +corinna +corinne +corinth +corinthia +corinthians +corinto +corio +coriolis +coriparian +coriss +corissa +corium +corixa +corixidae +corjo +cork +corkage +corkages +corkboard +corke +corked +corker +corkers +corkey +corkie +corkier +corkiest +corkill +corkiness +corking +corkish +corkite +corkle +corkmaker +corkmaking +corks +corkscreq +corkscrewed +corkscrewing +corkscrews +corkscrewy +corkstown +corkum +corkwing +corkwood +corkwoods +corky +corland +corleone +corless +corlett +corletti +corley +corlin +corliss +corloni +corly +corm +cormac +cormack +corman +cormel +cormick +cormidium +cormier +cormoid +cormophyta +cormophyte +cormophytic +cormorant +cormorants +cormous +corms +cormus +corn +cornacchia +cornaceae +cornaceous +cornage +cornall +cornaly +cornaro +cornball +cornballs +cornbell +cornberry +cornbin +cornbinks +cornbird +cornblossom +cornbole +cornbottle +cornbrash +cornbread +corncake +corncakes +corncob +corncobs +corncracker +corncrib +corncribs +corncrusher +corndodger +corne +cornea +corneagen +corneal +corneas +corned +cornein +corneitis +cornel +cornela +cornelia +cornelian +cornelis +corneliu +cornelius +cornell +cornella +cornellc +cornelle +cornellf +cornelliowa +cornels +cornemuse +corneous +corner +cornerback +cornerbind +cornered +cornerer +cornering +cornerman +cornerpiece +corners +cornershop +cornerstones +cornersville +cornerways +cornerwise +cornet +cornetcy +cornetist +cornetists +cornets +cornettino +cornettist +corneule +corneum +corney +cornfed +cornfields +cornflakes +cornfloor +cornflowers +corngrower +cornhouse +cornhusk +cornhusker +cornhusking +cornhusks +corniaud +cornic +cornice +corniced +cornices +corniche +cornicle +corniculate +corniculer +cornicultate +corniculum +cornie +cornier +corniest +corniferous +cornific +cornified +corniform +cornify +cornigerous +cornily +cornin +corniness +corning +corningcc +corniplume +cornishflat +cornishman +cornix +cornland +cornlea +cornless +cornloft +cornmarket +cornmaster +cornmeals +cornmonger +cornopean +cornpipe +cornrick +cornroot +cornrow +cornrows +corns +cornstalk +cornstalks +cornstook +cornthwaite +cornu +cornual +cornuate +cornuated +cornubianite +cornucopia +cornucopiae +cornucopian +cornucopias +cornucopiate +cornuet +cornule +cornulite +cornulites +cornupete +cornus +cornute +cornuted +cornutine +cornuto +cornville +cornwall +cornwallis +cornwallite +cornwell +corny +coroa +coroado +coroados +corocleisis +corodiary +corodiastole +corody +corol +corolla +corollaceous +corollarial +corollaries +corollary +corollas +corollate +corollated +corolliform +corollike +corolline +corollitic +coroma +coromandel +corometer +corominas +coron +corona +coronach +coronachs +coronad +coronadelmar +coronadite +coronae +coronagraph +coronal +coronale +coronaled +coronally +coronals +coronamen +coronaries +coronas +coronated +coronation +coronations +coronatorial +coronel +coronels +coroner +coroners +coronership +coroneted +coronets +coronetted +coronetty +corongo +coronie +coroniform +coronilla +coronillin +coronion +coronitis +coronium +coronize +coronofacial +coronoid +coronopus +coronule +coronwold +coronworl +coronworld +coroplast +coroplasta +coroplastic +coropo +coroscopy +corotate +corotomy +coroutines +coroutining +corozal +corozo +corp +corpe +corpening +corpi +corpo +corpor +corporacies +corporacy +corporal +corporalism +corporality +corporally +corporals +corporalship +corporas +corporate +corporately +corporation +corporations +corporative +corporator +corporature +corpore +corporealist +corporeality +corporealize +corporeally +corporeals +corporeity +corporeous +corporify +corporosity +corposant +corps +corpsbruder +corpse +corpselike +corpses +corpulence +corpulences +corpulencies +corpulency +corpulently +corpus +corpuscle +corpuscles +corpuscule +corpusculous +corpusculum +corpyes +corr +corra +corrada +corrade +corradi +corradial +corradiate +corradiation +corrado +corrales +corralling +corrals +corrasion +corrasive +correa +correal +correality +correan +correct +correctable +correctant +corrected +correcter +correctest +correcteth +correctible +correcting +correctingly +correction +correctional +correctioner +corrections +correctitude +corrective +correctively +correctives +correctly +correctment +correctness +corrector +correctress +correctrice +corrects +corregidor +corregrapher +correguaje +correia +correl +correlatable +correlate +correlated +correlates +correlating +correlation +correlations +correlative +correlatives +correll +correllated +correllation +correlli +correna +corrente +correo +correption +corres +corresol +corresondent +corresp +correspond +corresponded +corresponder +corresponds +correy +corri +corrianne +corrida +corridas +corridor +corridored +corridors +corrie +corriedale +corrientes +corrigan +corrige +corrigent +corrigibly +corrigiola +corrigon +corrin +corrina +corrine +corrinne +corritore +corrival +corrivality +corrivalry +corrivalship +corrivate +corrivation +corriveau +corrobboree +corroborant +corroborated +corroborates +corroborator +corroded +corrodent +corrodentia +corroder +corroders +corrodes +corrodiary +corrodier +corroding +corrosible +corrosional +corrosive +corrosively +corrosives +corrosivity +corrs +corrugated +corrugates +corrugating +corrugation +corrugations +corrugator +corrugators +corrupt +corrupted +corruptedly +corrupter +corrupters +corruptest +corrupteth +corruptful +corruptible +corruptibly +corrupting +corruptingly +corruption +corruptions +corruptive +corruptively +corruptly +corruptness +corruptor +corruptress +corrupts +corruzione +corry +corryton +cors +corsac +corsages +corsaint +corsair +corsairs +corsale +corsaro +corse +corseaut +corselet +corselets +corselette +corsentino +corsepresent +corses +corsesque +corseted +corseting +corsetless +corsetry +corsets +corsey +corsi +corsia +corsica +corsican +corsicana +corsico +corsie +corsini +corsite +corsitto +corslet +corslets +corso +corson +corsten +corsu +cort +corta +cortadellas +cortaderia +cortaro +corte +cortega +corteges +corteguay +cortemadera +cortes +cortesa +cortese +cortex +cortexes +cortez +corthell +cortical +cortically +corticate +corticated +corticating +cortication +cortices +corticiform +corticifugal +corticipetal +corticium +corticoline +corticose +corticous +cortin +cortina +cortinarious +cortinarius +cortinate +cortise +cortisone +cortland +cortlandtite +cortney +corto +corton +cortright +cortusa +cortwright +corty +coruco +coruh +coruler +corum +corumba +corumbiara +coruminacan +coruna +corundums +corunna +corupay +coruscant +coruscated +coruscates +coruscating +coruscation +coruscations +coruscative +corvajal +corval +corvallis +corvee +corvees +corven +corver +corves +corvet +corvets +corvettes +corvetto +corvidae +corvier +corviform +corvillosum +corvina +corvinae +corvine +corvo +corvoid +corvus +corwin +corwith +cory +corybant +corybantian +corybantiasm +corybantic +corybantine +corybantish +corybulbin +corybulbine +corycavamine +corycavidin +corycavidine +corycavine +corycia +corycian +corydalin +corydaline +corydalis +corydine +corydon +coryl +corylaceae +corylaceous +corylin +corylopsis +corylus +corymb +corymbed +corymbiate +corymbiated +corymbiform +corymbose +corymbous +corymbs +coryneum +corynine +corynocarpus +corypha +coryphaena +coryphaenid +coryphaenoid +coryphaeus +coryphee +coryphene +corypheus +coryphodon +coryphodont +coryphylly +corytuberine +coryza +coryzal +coryzas +corzo +cosa +cosalite +cosam +cosaque +cosavior +cosbey +cosburn +cosby +coscet +coscinomancy +coscob +coscoroba +cose +coseasonal +coseat +cosecant +cosecants +cosech +cosecs +cosectarian +cosectional +cosegment +coseism +coseismal +coseismic +cosell +cosenator +cosentiency +cosentient +cosentino +cosep +coservant +cosession +cosets +cosetta +cosette +cosettler +cosey +coseys +cosgrave +cosgray +cosgrove +cosh +cosharer +cosheath +coshed +cosher +coshered +cosherer +coshering +coshers +coshery +coshes +coshing +coshocton +cosi +cosicosi +cosie +cosier +cosies +cosiest +cosign +cosignatory +cosigned +cosigner +cosigners +cosigning +cosignitary +cosigns +cosily +cosima +cosimo +cosinage +cosines +cosiness +cosingular +cosinusoid +coslaw +coslow +cosmano +cosmati +cosme +cosmecology +cosmesis +cosmetical +cosmetically +cosmetician +cosmeticized +cosmetics +cosmetiste +cosmetology +cosmic +cosmical +cosmicality +cosmically +cosmism +cosmisms +cosmist +cosmists +cosmo +cosmocracy +cosmocrat +cosmocratic +cosmogenesis +cosmogenetic +cosmogenic +cosmogeny +cosmogonal +cosmogoner +cosmogonic +cosmogonical +cosmogonies +cosmogonist +cosmogonists +cosmogonize +cosmogony +cosmographer +cosmographic +cosmography +cosmolabe +cosmolatry +cosmoledo +cosmologic +cosmological +cosmologist +cosmologists +cosmometry +cosmonaut +cosmonautic +cosmonautics +cosmonauts +cosmopathic +cosmoplast +cosmoplastic +cosmopoietic +cosmopolicy +cosmopolis +cosmopolises +cosmopolite +cosmopolitic +cosmorama +cosmoramic +cosmorganic +cosmos +cosmoscope +cosmoses +cosmosophy +cosmosphere +cosmotheism +cosmotheist +cosmothetic +cosmotron +cosmozoan +cosmozoic +cosmozoism +cosner +cosola +cosonant +cosounding +cosovereign +cospecies +cospecific +cosphered +cosplendor +cosplendour +cosponsored +cosponsoring +cosponsors +coss +cossacks +cossaean +cossar +cossart +cossas +cossayuna +cosse +cosset +cosseted +cosseting +cossets +cossette +cossid +cossidae +cossie +cossiga +cossins +cossmann +cossnent +cossota +cossovel +cossu +cossy +cossyah +cossyrite +cost +costa +costache +costadimas +costaea +costal +costalgia +costally +costamesa +costander +costandi +costanoan +costanova +costantini +costantino +costanza +costanzino +costanzo +costar +costard +costards +costarica +costarican +costarred +costarring +costas +costata +costate +costated +costbenefit +costbenefits +coste +costean +costeaning +costectomy +costed +costel +costellate +costello +costelloe +costen +coster +costerdom +costerman +costermonger +costers +costiferous +costiform +costigan +costilla +costillo +costin +costing +costipulator +costispinal +costive +costively +costiveness +costless +costlessness +costlier +costliest +costliness +costly +costmary +costner +costoapical +costocentral +costocolic +costofliving +costogenic +costom +costophrenic +costopleural +costoptimal +costosternal +costotome +costotomy +costoxiphoid +costraight +costrel +costs +costudio +costula +costulation +costume +costumed +costumer +costumers +costumery +costumes +costumey +costumic +costumier +costumiere +costumiers +costuming +costumist +costusroot +cosubject +cosuffer +cosufferer +cosuggestion +cosuitor +cosurety +cosustain +coswearer +cosyga +cosymmedian +cosys +cosysop +cota +cotabato +cotahuasi +cotan +cotangential +cotangents +cotans +cotarius +cotarnine +cotati +cotch +cote +coteau +coted +coteful +coteline +cotelle +coteller +cotemporane +cotemporary +cotenancy +cotenant +cotenure +coterell +coterie +coteries +coterminal +coterminous +cotes +cotesfield +cotesian +coth +cothamore +cothe +cotheorist +cothish +cothon +cothran +cothurn +cothurnal +cothurnate +cothurned +cothurnian +cothurnus +cothy +coticchia +cotidal +cotiers +cotillage +cotillions +cotillon +cotinga +cotingid +cotingidae +cotingoid +cotinha +cotinus +cotise +cotitular +cotland +cotlin +cotnam +cotner +coto +cotobato +cotocoli +cotoin +cotolaurel +cotonam +cotone +cotonier +cotonou +cotopaxi +cotorment +cotoro +cotorture +cotoxo +cotquean +cotraitor +cotransfuse +cotranslator +cotranspire +cotries +cotrine +cotripper +cotrustee +cots +cotset +cotsetla +cotsetle +cotsidas +cotsworth +cott +cottabus +cottage +cottaged +cottagegrove +cottagehills +cottager +cottagers +cottages +cottageville +cottagey +cottam +cottar +cottbus +cotte +cotted +cottekill +cotten +cottencon +cottengim +cotter +cottereau +cotterel +cotterell +cotterill +cotterite +cotters +cotterway +cotti +cottica +cottid +cottidae +cottier +cottierism +cottiers +cottiform +cottingham +cottle +cottleville +cotto +cottoid +cotton +cottonade +cottonbush +cottoncenter +cottondale +cottoned +cottonee +cottoneer +cottoner +cottonian +cottoning +cottonize +cottonless +cottonmouths +cottonocracy +cottonopolis +cottonplant +cottonport +cottons +cottonseeds +cottontail +cottontails +cottonton +cottontop +cottontown +cottonvalley +cottonweed +cottonwoods +cottonwool +cottrell +cottrellboyd +cotts +cottus +cotugno +cotuit +cotula +cotulla +cotuna +cotunnite +coturnix +cotutor +cotwin +cotwinned +cotwist +cotyla +cotylar +cotyledonal +cotyledonar +cotyledonary +cotyledonous +cotyledons +cotyliform +cotyligerous +cotyliscus +cotyloid +cotylophora +cotylopubic +cotylosacral +cotylosaur +cotylosauria +cotype +cotys +cotyttia +cotzal +cotzoco +couac +coubertin +coucal +couch +couchancy +couchant +couchantly +couched +couchee +coucher +couchers +couches +coucheth +couchette +couching +couchings +couchmaker +couchmaking +couchmate +couchy +coucicouci +coucopoulos +coude +coudee +couderay +couderc +coudersport +coudray +coue +coueism +couette +couey +cougar +cougars +cough +coughed +cougher +coughers +coughin +coughing +coughlin +coughran +coughroot +coughs +cought +coughweed +coughwort +cougnar +coul +coulailai +could +couldbe +couldest +couldn +couldnt +couldron +couldst +coulee +couleecity +couleedam +coulees +couler +coules +coulibaly +coulisse +coulisses +coulman +coulmier +coulombe +coulombs +coulometer +coulouris +coulson +coulter +coulterman +coulterneb +coulters +coulterville +coulthard +coulure +coulvet +coum +couma +coumalic +coumalin +coumara +coumaran +coumarate +coumaric +coumarilic +coumarin +coumarinic +coumarone +coumarou +coumarouna +counce +council +councilgrove +councilhill +councilist +councillor +councillors +councilmanic +councilor +councilors +councils +counderstand +counite +couniversal +counsel +counselable +counseled +counselee +counselful +counseling +counsell +counsellable +counselled +counselling +counsellor +counsellors +counselman +counselor +counselors +counsels +counsuelo +count +countability +countable +countably +countdom +countdown +countdowns +counted +countenance +countenanced +countenancer +countenances +counteous +counter +counterabut +counteract +counteracted +counteracter +counteractor +counteracts +counteragent +counterapse +counterarch +counterargue +counterbase +counterbend +counterbid +counterblast +counterblow +counterbond +counterbore +counterbrace +counterbrand +counterbuff +countercarte +countercause +countercharm +countercheck +countercheer +counterclaim +countercoupe +countercraft +countercross +countercry +counterdance +counterdash +counterdike +counterdraft +counterdrain +counterdrive +counterearth +countered +counterend +counterentry +counterfact +counterfeit +counterfeits +counterfire +counterfix +counterflory +counterflux +counterfoil +counterforce +counterfort +counterfugue +countergauge +countergift +counterglow +counterguard +counterhaft +counteridea +counterideal +countering +counterlath +counterlaw +counterlife +counterlode +counterlove +counterly +countermaid +countermand +countermands +countermarch +countermark +countermeet +countermine +countermount +countermove +countermoved +countermure +counternoise +counteroffer +counterorder +counterpaled +counterpaly +counterpane +counterpaned +counterpanes +counterparry +counterpart +counterparts +counterplan +counterplay +counterplea +counterplead +counterplot +counterpole +counterpose +counterpray +counterprick +counterproof +counterprove +counterpull +counterpunch +counterpush +counterquery +counterquip +counterraid +counterrate +counterrefer +counterreply +counterroll +counterround +counterruin +counters +countersale +countersank +counterscale +counterscarp +counterscoff +countersea +counterseal +countersense +countershade +countershaft +countershear +countershine +countershock +countershout +counterside +countersiege +countersign +countersigns +countersinks +counterslope +countersmile +countersnarl +counterspies +counterspy +counterstain +counterstamp +counterstand +counterstep +counterstock +countersuit +countersuits +countersun +counterswing +countersworn +countersynod +countertack +countertail +countertally +countertaste +countertenor +counterterm +countertheme +countertime +countertop +countertouch +countertree +countertruth +countertug +counterturn +countertype +countervail +countervails +countervair +countervairy +countervall +countervaunt +countervene +countervenom +counterview +countervote +counterwager +counterwall +counterwave +counterweigh +counterwheel +counterwill +counterwind +counterword +counterwork +counterwrite +counterz +countess +countesse +countesses +counteth +countfish +countian +counties +counting +countinously +countless +countor +countries +countrified +country +countryfied +countryfolk +countrymen +countrys +countryseat +countryside +countryward +countrywoman +countrywomen +counts +countship +county +countyline +countys +couous +coup +coupage +coupal +couped +coupee +coupelet +couper +coupes +coupeville +couping +coupland +couple +coupled +couplement +coupler +coupleress +couplers +couples +couplet +coupleteer +coupleth +couplets +coupling +couplings +coupon +couponed +couponless +coupons +coups +coupstick +coupure +cour +courage +courageous +courageously +courager +courages +courant +courante +courants +courantyne +courap +couratari +courb +courbache +courbaril +courbash +courbet +courcel +courcey +courchesne +courcy +courge +couri +courida +courier +courierbold +couriered +couriering +couriers +couriertm +couril +courlan +cournos +couron +couronne +cours +coursdev +course +coursed +coursein +courser +coursers +courses +courseware +coursey +coursing +coursings +coursol +courson +court +courtadm +courtbaron +courtbred +courtcraft +courte +courted +courtelin +courtenave +courtenay +courteney +courteous +courteously +courtepy +courter +courters +courtesanry +courtesans +courtesied +courtesies +courtesv +courtesy +courtezan +courtezanry +courthouses +courtierism +courtierlike +courtierly +courtiers +courtiership +courtin +courting +courtland +courtleet +courtleigh +courtless +courtlet +courtlier +courtliest +courtlike +courtliness +courtling +courtly +courtman +courtnay +courtneidge +courtney +courtois +courtot +courtright +courtrooms +courts +courtship +courtships +courtwright +courtyard +courtyards +courtzilite +courval +courville +courvitch +cous +couscous +couscouses +couscousou +couse +couser +couseranite +couses +coushatta +cousin +cousinage +cousineau +cousiness +cousingerman +cousinhood +cousinly +cousinry +cousins +cousinship +cousiny +coussinet +cousson +cousteau +coustumier +coutau +coute +coutel +coutelier +coutelle +coutellier +couter +coutet +couth +couther +couthest +couthie +couthier +couthily +couthiness +couthless +couths +coutier +coutil +coutinho +couto +coutras +coutu +coutumier +couture +coutures +couturiere +couturieres +couturiers +couvade +couxia +covacevich +covach +covado +covalence +covalences +covalently +covan +covanci +covarecan +covarecas +covariable +covariables +covariance +covariances +covariates +covariation +covas +covasna +covassal +covecity +coved +covel +covelline +covellite +covello +covelo +coven +covena +covenant +covenantal +covenanted +covenantee +covenanter +covenanting +covenantor +covenants +covenas +covens +covent +coventrate +coventrize +coventry +cover +coverable +coverage +coverages +coveralls +coverbox +coverchief +covercle +coverdale +coverdate +covered +coveredst +coverer +coverers +coverest +covereth +covering +coverings +coverless +coverlet +coverlets +coverlid +coverlids +coverly +covernumber +coverpage +covers +coversed +coverside +coversine +coverslip +coverslut +covert +covertical +covertly +covertness +coverts +coverture +coverup +coverups +coves +covesville +covet +covetable +coveted +coveter +coveters +coveteth +coveting +covetingly +covetiveness +covetous +covetously +covetousness +covets +covey +coveys +covibrate +covibration +covice +covid +coviello +coviensky +covillager +coville +covillea +covin +covina +coving +covings +covington +covinous +covinously +covisit +covisitor +covite +covolume +covotary +covox +cowages +cowal +cowan +cowanesque +cowansville +coward +cowardice +cowardliness +cowardly +cowardness +cowards +cowardy +cowart +cowarts +cowbane +cowbells +cowberry +cowbind +cowbirds +cowboy +cowboys +cowcatcher +cowcatchers +cowden +cowdie +cowdrey +cowed +cowedly +coween +cowell +cowen +cower +cowered +cowerer +cowerers +cowering +coweringly +cowers +coweta +cowfish +cowgate +cowgill +cowgirls +cowgram +cowhage +cowhands +cowheart +cowhearted +cowheel +cowherb +cowherds +cowhided +cowhides +cowhiding +cowhorn +cowichan +cowiche +cowick +cowie +cowier +cowiest +cowing +cowish +cowitch +cowkeeper +cowkine +cowle +cowled +cowleech +cowleeching +cowles +cowlesville +cowley +cowlicks +cowlike +cowling +cowlings +cowlitz +cowls +cowlstaff +cownie +cowon +coworkers +cowpat +cowpath +cowpats +cowpeas +cowpen +cowpens +cowper +cowperian +cowperitis +cowpock +cowpokes +cowpoxes +cowpuncher +cowpunchers +cowquake +cowrie +cowries +cowroid +cows +cowshed +cowsheds +cowskin +cowskins +cowslipped +cowslips +cowsucker +cowtail +cowthwort +cowtongue +cowtown +cowweed +cowwheat +cowy +cowyard +coxa +coxal +coxalgia +coxalgic +coxall +coxarthritis +coxbones +coxcombery +coxcombess +coxcombhood +coxcombic +coxcombical +coxcombity +coxcombry +coxcombs +coxcomby +coxcomical +coxcomically +coxe +coxen +coxes +coxima +coxite +coxitis +coxocerite +coxoceritic +coxodoa +coxodynia +coxofemoral +coxon +coxopodite +coxs +coxsackie +coxscreek +coxsmills +coxswain +coxswains +coxwain +coxwaining +coxwains +coxy +coyaima +coyan +coyanosa +coydog +coyer +coyest +coyish +coyishness +coyle +coyly +coyne +coyness +coynesses +coynye +coyo +coyol +coyote +coyotepec +coyotero +coyotes +coyotillo +coyoting +coypus +coyure +coyutla +coyville +cozad +cozahome +cozart +cozbi +coze +cozenage +cozened +cozener +cozeners +cozening +cozeningly +cozens +cozes +cozey +cozeys +cozie +cozier +cozies +coziest +cozily +coziness +cozy +cozyn +cozza +cozzens +cozzi +cozzier +cpan +cpcasey +cpebach +cphmphry +cpic +cpio +cpla +cplvax +cportom +cpppfip +cprs +cpsc +cpsr +cpsu +cpsvax +cpswh +cptmas +cpuidle +cpus +cputime +cpwang +cpwsca +cpwscb +cpzama +cqpi +craal +craals +crab +crabb +crabbe +crabbed +crabbedly +crabbedness +crabber +crabbers +crabbery +crabbier +crabbiest +crabbily +crabbin +crabbiness +crabbing +crabby +crabcake +crabcatcher +crabe +crabeater +craber +crabgrass +crabhole +crablet +crablike +crabman +crabmill +craborchard +crabs +crabsidle +crabstick +crabtree +crabweed +crabwise +crabwood +cracca +cracidae +cracinae +craciunescu +crack +crackable +crackajack +crackbrain +crackbrained +crackdown +crackdowns +cracked +crackedness +cracker +crackerberry +crackerjack +crackerjacks +crackers +crackerz +crackfaq +crackhemp +crackiness +cracking +crackingring +crackings +crackist +crackit +crackjaw +crackle +crackled +crackles +crackless +crackleware +cracklier +crackliest +crackling +crackly +crackmans +crackme +cracknel +cracknell +cracknels +crackofdoom +crackpot +crackpots +cracks +cracksite +crackskull +cracksman +crackup +crackups +cracky +crackz +cracovienne +craddock +craddy +cradele +craden +cradge +cradji +cradle +cradleboard +cradlechild +cradled +cradlefellow +cradleland +cradlelike +cradlemaker +cradlemaking +cradleman +cradlemate +cradler +cradlers +cradles +cradleside +cradlesong +cradlesongs +cradletime +cradling +cradock +craford +craft +crafted +crafter +craftier +craftiest +craftily +craftiness +crafting +craftless +craftmanship +crafton +crafts +craftsbury +craftsman +craftsmanly +craftsmaster +craftsmen +craftswoman +craftwork +craftworker +crafty +crag +cragford +cragg +craggan +cragged +craggedness +craggier +craggiest +craggily +cragginess +craggs +craggy +craghead +craglike +crags +cragsman +cragsmen +cragsmoor +cragwitch +cragwork +crahan +craib +craichy +craig +craigavon +craige +craighall +craigie +craigin +craigmont +craigmontite +craigsville +craigville +crail +crain +craing +craisey +craizey +crajuru +crake +craked +crakefeet +crakerz +crakow +craley +cram +cramasie +crambambulee +crambambuli +crambe +cramberry +crambid +crambidae +crambinae +cramble +crambly +crambo +crambos +crambus +cramer +cramerrao +cramers +cramerton +cramervon +cramm +crammed +crammer +crammers +cramming +crampe +cramped +crampedness +cramper +crampet +crampfish +cramping +crampingly +crampon +cramponnee +crampons +cramps +crampton +crampy +crams +cran +cranage +cranberries +cranbury +crance +cranch +cranched +cranches +cranching +crandal +crandall +crandallite +crandell +crandon +crane +craned +cranehill +cranelake +craneman +craner +cranes +cranesman +cranesville +craneway +craney +cranfillsgap +cranford +crange +cranham +craniad +cranial +cranially +cranian +craniata +craniate +cranic +craniectomy +craning +craninia +craniniums +craniocele +cranioclasis +cranioclasm +cranioclast +cranioclasty +craniofacial +craniognomic +craniognomy +craniognosy +craniograph +craniography +craniologist +craniology +craniometer +craniometric +craniometry +craniopagus +craniopathic +craniopathy +craniophore +cranioplasty +craniosacral +cranioscopy +craniospinal +craniostosis +craniota +craniotabes +craniotome +craniotomy +cranish +cranium +craniums +crank +crankbird +crankcases +cranked +cranker +crankery +crankest +crankier +crankiest +crankily +crankiness +cranking +crankle +crankless +crankling +crankly +crankman +crankous +crankpin +crankpins +cranks +crankshafts +crankshaw +crankum +cranley +cranly +cranmer +cranna +crannage +crannied +crannies +crannock +crannog +crannoger +cranreuch +cranston +crantara +crants +crao +crap +crapaud +crapaudine +crapco +crape +craped +crapefish +crapehanger +crapek +crapelike +crapes +craping +crapo +crapp +crapped +crapper +crappers +crappier +crappies +crappiest +crappin +crappiness +crapping +crapple +crappo +crappy +craps +crapshooter +crapshooters +crapshooting +crapulate +crapulence +crapulent +crapulous +crapulously +crapy +craquelure +craquer +crare +crark +crary +craryville +crase +crash +crashandburn +crashc +crashed +crasher +crashers +crashes +crashguard +crashing +crashpollers +crashproof +crashs +crasis +craspedal +craspedon +craspedota +craspedotal +craspedote +crassamentum +crasser +crassest +crassier +crassina +crassitude +crassly +crassness +crassula +crassulaceae +crassus +crast +craster +crataegus +crataeva +cratch +cratchens +cratches +cratchit +crate +crated +crateful +cratemaker +cratemaking +crateman +crater +crateral +cratered +craterellus +craterid +crateriform +cratering +crateris +craterkin +craterlake +craterland +craterless +craterlet +craterlike +craterous +craters +crates +craticular +cratinean +crating +cratometer +cratometric +cratometry +craton +cratons +crator +crattan +crauchet +crauford +craufurd +craunch +craunching +craunchingly +cravari +cravath +cravats +crave +craved +craven +cravened +cravenette +cravenly +cravenn +cravenness +cravens +craver +cravers +craves +craveth +craving +cravingly +cravingness +cravings +craviotto +cravo +crawberry +crawdad +crawdads +crawfish +crawfished +crawfishes +crawfishing +crawfoot +crawford +crawful +crawhall +crawjord +crawl +crawled +crawler +crawlerize +crawlers +crawley +crawleyroot +crawlier +crawliest +crawling +crawlingly +crawls +crawlsome +crawlspace +crawltube +crawlway +crawlways +crawly +crawm +craws +crawshaw +crawtae +crawthumper +crax +craxi +cray +craycraft +crayer +crayfishes +craymire +crayne +craynor +crayola +crayon +crayoned +crayoning +crayonist +crayonists +crayons +crayonstone +crays +crayton +crazed +crazedly +crazedness +crazes +crazier +crazies +craziest +crazily +craziness +crazing +crazingmill +crazy +crazycat +crazymax +crazyna +crazytick +crazyweed +crbot +crcgw +crcheck +crdec +crea +creach +cread +creagh +creaghan +creaght +creaked +creaker +creakier +creakiest +creakily +creakiness +creaking +creakingly +creaks +crealsprings +cream +creambush +creamcake +creamcheese +creamcolored +creamcup +creamed +creamer +creameries +creamers +creameryman +creamfruit +creamier +creamiest +creamily +creaminess +creaming +creamless +creamlike +creammaker +creammaking +creamometer +creamridge +creams +creamsacs +creamware +creamy +crean +creance +creancer +creane +creant +creaper +creasap +crease +creased +creaseless +creaser +creasers +creases +creasey +creashaks +creasier +creasiest +creasing +creasman +creasoft +creason +creasy +creat +creatable +create +createa +createcustom +created +createdin +createdness +createdwith +creates +createtable +createth +creatic +creatile +creatility +creatine +creating +creatinine +creatinuria +creation +creational +creationary +creationism +creationist +creationof +creations +creative +creativeav +creatively +creativeness +creativity +creator +creatorhood +creatorrhea +creators +creatorship +creatotoxism +creatress +creatrix +creatural +creature +creaturehood +creatureless +creatureling +creaturely +creatures +creatureship +creaturism +creaturitis +creaturize +creb +crebain +creban +crebrity +crebrous +creche +creches +creck +crect +crecy +creddock +credence +credences +credencive +credenda +credensive +credentialed +credentials +credently +credenzas +credibility +credible +credibleness +credibly +credico +credille +credit +creditable +creditably +credited +crediting +creditive +creditless +creditor +creditors +creditorship +creditress +creditrix +credits +crednerite +credo +credos +credulously +cree +creech +creecy +creed +creedalism +creedalist +creede +creeded +creedist +creedite +creedless +creedmoor +creedmore +creeds +creedsman +creefrench +creek +creekbritish +creeker +creekfish +creekmore +creeks +creekstuff +creeky +creel +creeler +creeley +creels +creem +creen +creep +creepage +creepages +creeper +creepered +creeperless +creepers +creepeth +creephole +creepie +creepier +creepies +creepiest +creepily +creepiness +creeping +creepingly +creepmouse +creepmousy +creepoid +creeps +creepy +creer +crees +creese +creesh +creeshie +creeshy +creevy +crefcour +cregan +cregar +creham +crehan +creigh +creighton +creirgist +creley +cremades +cremaster +cremasterial +cremasteric +cremated +cremates +cremating +cremation +cremationism +cremationist +cremations +cremator +crematoria +crematorial +crematories +crematoriria +crematorium +crematoriums +cremators +crembalum +creme +cremer +cremes +cremieux +cremiewx +cremnophobia +cremocarp +cremometer +cremona +cremone +cremor +cremorne +cremule +crena +crenate +crenated +crenately +crenation +crenature +crenel +crenelate +crenelated +crenelates +crenelating +crenelation +crenelations +crenele +creneled +crenelet +crenellate +crenellated +crenellating +crenellation +crenelle +crenels +crenge +crenic +crenitic +crenna +crenology +crenotherapy +crenothrix +crenshaw +crenula +crenulate +crenulated +crenulation +crenye +creodont +creodonta +creola +creole +creoleize +creoles +creolese +creolian +creolin +creolism +creolization +creolize +creolized +creolphone +creon +creonte +creophagia +creophagism +creophagist +creophagous +creophagy +creosol +creosote +creosoted +creosoter +creosotes +creosotic +creosoting +crepance +crepeau +creped +crepehanger +crepes +crepey +crepidula +crepier +crepine +crepiness +creping +crepis +crepitaculum +crepitant +crepitate +crepitated +crepitating +crepitation +crepitone +crepitous +crepitus +creply +crepon +crept +crepuscle +crepuscular +crepuscule +crepusculine +crepusculum +crepy +creq +crerar +cresamine +cresbard +crescencio +crescendos +crescens +crescent +crescentade +crescentader +crescentcity +crescentia +crescentic +crescentlake +crescentlike +crescentoid +crescents +crescentwise +crescive +cresco +crescograph +cresegol +cresol +cresolin +cresorcinol +cresotate +cresotic +cresotinic +cresoxide +cresoxy +cresphontes +crespi +crespo +cress +cresse +cressed +cresselle +cresses +cresset +cressets +cressett +cressey +cressida +cressie +cressington +cresskill +cresson +cressona +cressoy +cressweed +cresswell +cresswort +cressy +crest +crestal +crestat +crestate +crested +crestedbutte +cresting +crestings +crestless +crestline +crestmoreite +creston +crestone +crestpark +crests +crestwood +creswell +cresyl +cresylate +cresylene +cresylic +cresylite +cret +creta +cretaceous +cretaceously +cretacic +crete +cretefaction +cretes +cretians +cretic +cretify +cretin +cretinic +cretinism +cretinisms +cretinize +cretinized +cretinizing +cretinoid +cretinosity +cretins +cretion +cretionary +cretism +creton +cretonne +cretu +crevalle +crevasse +crevassed +crevasses +crevassing +crevatte +crevette +creviced +crevices +crew +crewe +crewed +crewelist +crewellery +crewels +crewelwork +crewer +crewes +crewford +crewing +crewless +crews +crex +creydt +creye +criatura +crib +cribbage +cribbages +cribbed +cribber +cribbers +cribbing +cribbings +cribbins +cribble +cribbs +cribellum +cribo +cribral +cribrate +cribrately +cribration +cribriform +cribrose +cribs +cribwork +cribworks +cric +cricetid +cricetidae +cricetine +cricetus +crich +crichana +crichton +crick +crickard +cricked +cricker +cricket +cricketer +cricketers +cricketheavy +cricketing +cricketlight +crickets +crickety +crickey +cricking +crickle +cricks +cricoid +cricothyroid +cricotomy +cricotus +criders +cried +crier +criers +cries +criest +crieth +criey +crig +crigger +crigler +crile +crill +crilly +crim +criman +crime +crimea +crimean +crimeday +crimeful +crimeless +crimenes +crimeproof +crimes +criminal +criminaldom +criminalese +criminali +criminalism +criminalist +criminality +criminally +criminalness +criminaloid +criminals +criminate +criminated +crimination +criminative +criminator +criminatory +crimine +criminlaz +criminogenic +criminologic +criminology +criminosis +criminous +criminously +crimmin +crimogenic +crimora +crimp +crimpage +crimped +crimper +crimpers +crimpier +crimpiest +crimpiness +crimping +crimple +crimpness +crimps +crimpy +crimson +crimsoned +crimsoning +crimsonly +crimsonness +crimsons +crimsony +crin +crinal +crinanite +crinated +crinatory +crine +crined +criner +crinet +cringed +cringeling +cringer +cringers +cringes +cringing +cringingly +cringingness +cringle +cringles +criniculture +criniferous +criniger +crinigerous +criniparous +crinite +crinites +crinitory +crinivorous +crink +crinked +crinkled +crinkleroot +crinkles +crinklier +crinkliest +crinkliness +crinkling +crinkly +crinnie +crinoid +crinoidal +crinoidea +crinoidean +crinoids +crinoline +crinolines +crinose +crinosity +crinula +crinum +criobolium +criocephalus +crioceras +crioceratite +crioceris +criolo +criophore +criophoros +criosphinx +crioulo +crip +criper +cripes +crippa +crippe +crippen +crippingly +cripple +cripplecreek +crippled +crippledom +crippleness +crippler +cripplers +cripples +crippleware +crippling +cripply +cripps +criqui +cris +crisafulli +crisanto +crisca +crisco +crises +crisfield +crisham +crishton +crisic +crisis +crisler +crisman +crisp +crisparkle +crispate +crispated +crispation +crispature +crisped +crispen +crispened +crispening +crispens +crisper +crispers +crispest +crispia +crispier +crispiest +crispily +crispine +crispiness +crisping +crisply +crispness +crisps +crispus +crispy +crissal +crisscross +crisscrossed +crisscrosses +crisser +crissie +crissum +crissy +crista +cristabel +cristal +cristaldo +cristall +cristate +cristatella +cristea +cristen +cristescu +cristi +cristian +cristiane +cristiani +cristiania +cristiano +cristie +cristiform +cristin +cristina +cristine +cristineaux +cristino +cristionna +cristispira +cristivomer +cristo +cristobal +cristobalite +cristofaro +cristofer +cristoforo +cristopher +cristy +criswell +critch +critchfield +critchley +criteria +criteriia +criteriions +criteriology +criterion +criterional +criterions +criterium +criterr +crites +crith +crithidia +crithmene +crithomancy +critial +critic +critical +criticality +critically +criticalness +criticaster +criticastry +criticisable +criticise +criticised +criticises +criticising +criticism +criticisms +criticist +criticizable +criticize +criticized +criticizer +criticizers +criticizes +criticizing +critickin +critics +criticship +criticsm +criticule +critique +critiqued +critiques +critiquing +critling +crittenden +critter +critters +crittur +critturs +critz +crivitz +crixus +criza +crizzle +crkdesc +crlf +crna +crni +crnone +croaked +croaker +croakers +croakier +croakiest +croakily +croakiness +croaking +croaks +croaky +croasdale +croat +croatan +croatia +croatian +croats +croc +crocanthemum +crocard +croccolo +croce +croceic +crocein +croceine +croceous +crocetin +croche +crocheron +crocheted +crocheter +crocheters +crocheting +crochets +croci +crocidolite +crocidura +crocin +crocked +crocker +crockeries +crockery +crockeryware +crocket +crocketed +crockets +crockett +crocketville +crocking +crockish +crockishness +crockitude +crocknicle +crocks +crocky +crocodiles +crocodilia +crocodilic +crocodilidae +crocodiline +crocodilite +crocodiloid +crocodilus +crocodylidae +crocodylus +crocoisite +crocoite +croconate +croconic +crocosmia +crocs +crocus +crocused +crocuses +croese +croessa +croesus +crofoot +croft +crofter +crofterize +crofters +crofting +croftland +crofton +crofts +crog +croghan +crogie +croiser +croisetiere +croisette +croisine +croissant +croissants +croix +croje +croker +crokinole +crokscrew +crolla +crom +cromaltite +crombie +crome +cromer +cromerian +cromfordite +cromlech +crommelin +cromona +cromorna +cromorne +crompond +crompton +cromronic +cromwell +cron +cronan +cronartium +cronbachs +crone +croneberry +crones +cronet +cronian +cronies +cronin +cronish +cronjager +cronk +cronkite +cronkness +cronkright +cronkwright +cronn +cronnol +cronos +cronstedtite +crontab +crontabs +cronus +cronyism +cronyisms +cronyn +crood +croodle +crook +crookback +crookbacked +crookbackt +crookbill +crookbilled +crooke +crooked +crookedcreek +crookeder +crookedest +crookedly +crookedness +crooken +crookeries +crookery +crookes +crookesite +crookheaded +crooking +crookkneed +crookle +crooklegged +crookneck +crooknecked +crooknecks +crooknosed +crooks +crooksided +crooksterned +crookston +crooksville +crooktoothed +crool +croom +croomia +croon +crooned +crooner +crooners +crooning +crooningly +croons +crop +crophead +cropland +croplands +cropless +cropman +cropout +croppa +cropped +cropper +croppers +croppie +cropping +cropplecrown +croppy +crops +cropsey +cropseyville +cropshin +cropsick +cropsickness +cropweed +cropwell +croqueted +croqueting +croquets +croquette +croquettes +crore +cros +crosa +crosbie +crosby +crosbyton +croshawe +crosier +crosiered +crosiers +crosignani +crosland +crosley +crosman +crosnes +crospin +cross +crossability +crossable +crossanchor +crossband +crossbarred +crossbarring +crossbars +crossbeak +crossbeam +crossbeams +crossbelt +crossbolt +crossbolted +crossbones +crossbow +crossbowman +crossbows +crossbred +crossbreds +crossbreed +crossbreeds +crosscity +crosscurrent +crosscuts +crosscutter +crosscutting +crossdebt +crossdemand +crosse +crossed +crosser +crossers +crosses +crossest +crossett +crossette +crossfall +crossfield +crossfire +crossfish +crossflow +crossflower +crossfoot +crossfork +crossgrained +crosshackle +crosshair +crosshairs +crosshand +crosshatched +crosshatches +crosshaul +crosshauling +crosshead +crosshill +crossing +crossings +crossite +crossjack +crosslagged +crosslake +crossland +crosslegged +crosslegs +crosslet +crossleted +crossley +crosslight +crosslighted +crossline +crossly +crossman +crossness +crossnore +crosson +crossopodia +crossosoma +crossovers +crosspatch +crosspatches +crosspath +crosspiece +crosspieces +crossplains +crossplot +crosspoint +crosspoints +crosspost +crossposted +crossposting +crossproduct +crossrail +crossreading +crossriver +crossroad +crossroads +crossrow +crossruff +crosssection +crosstail +crosstie +crosstied +crossties +crosstimbers +crosstoes +crosstown +crosstrack +crosstree +crosstrees +crossvillage +crossville +crosswalks +crossway +crossways +crossweb +crossweed +crosswell +crosswicks +crosswise +crossword +crosswords +crostarie +croswell +crotal +crotalaria +crotalic +crotalidae +crotaliform +crotalinae +crotaline +crotalism +crotalo +crotaloid +crotalum +crotalus +crotaphic +crotaphion +crotaphite +crotaphitic +crotaphytus +crotch +crotched +crotches +crotchet +crotcheteer +crotchets +crotchety +crotchy +croteau +crothers +crotin +croton +crotonate +crotonfalls +crotonic +crotonyl +crotonylene +crotophaga +crottels +crottle +crotty +crotyl +crouch +crouchant +crouched +croucher +crouches +croucheth +crouching +crouchingly +croughton +croup +croupade +croupal +croupe +crouperbush +croupiers +croupiest +croupily +croupiness +croupous +croups +croupy +crouse +crousely +crouseville +crout +croute +crouton +croutons +crow +crowagency +crowbar +crowbarring +crowbars +crowbill +crowcombe +crowd +crowded +crowdedly +crowdedness +crowden +crowder +crowders +crowdies +crowding +crowds +crowdweed +crowdy +crowe +crowed +crowell +crower +crowers +crowfeet +crowflower +crowfooted +crowfoots +crowheart +crowhop +crowing +crowingly +crowkeeper +crowl +crowlar +crowle +crowley +crowman +crown +crownbeard +crowncity +crowned +crownedst +crowner +crowners +crownest +crowneth +crownets +crownhill +crowning +crownless +crownlet +crownling +crownmaker +crownpoint +crowns +crownsville +crownwork +crownwort +crows +crowshawe +crowshay +crowslanding +crowstep +crowstepped +crowsteps +crowstick +crowstone +crowther +crowthers +crowtoe +crowville +croxall +croxford +croy +croyden +croze +crozer +crozet +crozier +croziers +crozzle +crozzly +crreoct +crsh +crtc +crts +crubeen +cruce +crucefix +cruces +crucethouse +cruche +crucial +cruciality +crucially +crucialness +crucian +crucianella +cruciate +cruciately +cruciati +cruciation +crucible +crucibles +crucibulum +crucifer +cruciferae +cruciferous +crucificial +crucified +crucifier +crucifies +crucifix +crucifixes +crucifixion +crucifixions +cruciform +cruciformity +cruciformly +crucify +crucifyfied +crucifyfying +crucifying +crucigerous +crucilly +crucily +crucino +crucis +cruck +crudded +crudding +cruddock +crude +crudely +cruden +crudeness +cruder +crudes +crudest +crudities +crudity +cruds +crudup +crudware +crudwort +crue +cruel +crueler +cruelest +cruelhearted +cruelize +crueller +cruellest +cruelly +cruelness +cruels +cruelties +cruelty +crueme +cruent +cruentation +cruet +cruets +cruety +cruey +cruft +crufted +cruftie +crufties +crufts +crufty +cruger +cruickshank +cruikshank +cruikshanks +cruise +cruised +cruiser +cruisers +cruises +cruising +cruisken +cruive +cruize +cruller +crullers +crum +crumb +crumbable +crumbcloth +crumbed +crumber +crumbers +crumbier +crumbiest +crumbing +crumble +crumbled +crumblement +crumbles +crumblet +crumblier +crumbliest +crumbliness +crumbling +crumblings +crumbly +crumbs +crumbum +crumby +crumen +crumenal +crumlet +crumm +crummie +crummier +crummies +crummiest +crumminess +crummock +crummond +crummy +crumped +crumper +crumpet +crumpets +crumping +crumpled +crumpler +crumples +crumpling +crumply +crumps +crumpton +crumpy +crumrod +crun +crunch +cruncha +crunchable +crunched +cruncher +crunchers +crunches +crunchie +crunchier +crunchiest +crunchiness +crunching +crunchingly +crunchly +crunchweed +crunchy +crunk +crunkle +crunodal +crunode +crunt +cruor +crupi +cruppers +crural +crureus +crurogenital +crurotarsal +crus +crusade +crusaded +crusader +crusaders +crusades +crusading +crusado +crusados +crusca +cruse +crush +crushability +crushable +crushed +crushedstone +crusher +crushers +crushes +crushing +crushingly +crushproof +crusie +crusified +crusily +crusoe +crust +crusta +crustacea +crustaceal +crustacean +crustaceans +crustaceo +crustaceous +crustade +crustal +crustalogist +crustalogy +crustate +crustated +crustation +crusted +crustedly +cruster +crustier +crustiest +crustific +crustily +crustiness +crusting +crustless +crustose +crustosis +crusts +crutched +crutcher +crutches +crutchfield +crutching +crutchley +crutchlike +crute +cruth +cruthers +cruttenden +crutter +cruxes +cruz +cruzado +cruzados +cruzbay +cruzeiro +cruzeiros +cruzorive +crvax +cryable +cryacker +cryaesthesia +cryalgesia +crybabies +crybaby +cryer +cryesthesia +crying +cryingly +cryingouts +cryme +crymodynia +crymotherapy +cryobiology +cryoconite +cryogen +cryogenic +cryogenics +cryogenies +cryogens +cryogeny +cryohydrate +cryohydric +cryokennel +cryolite +cryometer +cryonic +cryonically +cryonics +cryophile +cryophilic +cryophoric +cryophorus +cryophyllite +cryophyte +cryoplankton +cryoscope +cryoscopic +cryoscopy +cryosel +cryostase +cryostats +cryosurgeon +cryosurgery +cryosurgical +cryotherapy +cryotron +cryotrons +crypkey +cryppie +crypt +crypta +cryptal +cryptamnesia +cryptamnesic +cryptapix +cryptarch +cryptarchy +crypted +crypteronia +cryptic +cryptical +cryptically +crypting +cryption +crypto +cryptobranch +cryptocard +cryptocarp +cryptocarpic +cryptocarya +cryptocerata +cryptocerous +cryptococci +cryptococcic +cryptococcus +cryptodeist +cryptodira +cryptodiran +cryptodire +cryptodirous +cryptodouble +cryptogam +cryptogamia +cryptogamian +cryptogamic +cryptogamist +cryptogamous +cryptogamy +cryptogenic +cryptogenous +cryptoglaux +cryptoglioma +cryptogramma +cryptograms +cryptograph +cryptography +cryptoheresy +cryptolite +cryptologist +cryptomere +cryptomeria +cryptomerous +cryptomnesia +cryptomnesic +cryptomonad +crypton +cryptonema +cryptonym +cryptonymous +cryptopapist +cryptophyte +cryptopine +cryptoprocta +cryptopyic +cryptor +cryptorchid +cryptorchis +cryptos +cryptoscope +cryptoscopy +cryptostegia +cryptostoma +cryptostome +cryptosystem +cryptotaenia +cryptous +cryptozonate +cryptozonia +cryptozygous +crypts +crypturi +crypturidae +crysta +crystal +crystalbay +crystalbeach +crystalcity +crystalclear +crystalcomm +crystaldial +crystalfalls +crystalhill +crystalize +crystallake +crystallic +crystallin +crystalline +crystallitic +crystallitis +crystallize +crystallized +crystallizer +crystallizes +crystalloid +crystallose +crystallurgy +crystalriver +crystals +crystalwort +crystic +crystie +crystograph +crystoleum +crystolon +crystosphene +crytalline +crzy +csab +csaholy +csak +csako +csam +csampeszek +csank +csardas +csaszar +csci +cscihp +cscsun +csdpmi +csdvax +csect +csects +csee +csenar +csenki +cserhalmi +cshape +cshl +cshrc +csikos +csiky +csiro +csiszar +csli +cslip +csmflx +csmil +csmp +csnet +csocnet +csoergo +csongrad +csop +csortos +csreport +csri +cssr +cssun +cssunfsa +csta +cstm +cstring +csubak +csuchico +csufres +csufresno +csuha +csuhayward +csula +csulavax +csulb +csun +csuohio +csupomona +csupwb +csus +csusb +csusm +csustan +csvax +ctaps +ctas +ctenacanthus +ctene +ctenidial +ctenidium +cteniform +ctenocyst +ctenodactyl +ctenodont +ctenodus +ctenoid +ctenoidean +ctenoidei +ctenoidian +ctenolium +ctenophora +ctenophoral +ctenophoran +ctenophore +ctenophoric +ctenophorous +ctenoplana +ctenostomata +ctenostome +ctest +ctetology +ctgi +cthreepo +cthrine +cthulhu +ctime +ctiss +ctna +ctos +ctrl +ctrlaltdel +ctrsci +ctss +ctstateu +ctuy +cuabo +cuadra +cuadras +cuailnge +cuaiquer +cuakayong +cuambo +cuana +cuando +cuanhoca +cuany +cuanza +cuapinole +cuarenta +cuarta +cuartanago +cuartango +cuarteron +cuartilla +cuartillo +cuauhte +cuauhtemoc +cuba +cubacity +cubage +cubages +cuban +cubanate +cubangle +cubango +cubanite +cubanize +cubans +cubase +cubatory +cubature +cubbard +cubbies +cubbing +cubbish +cubbishly +cubbishness +cubbord +cubby +cubbyhole +cubbyholes +cubbyhouse +cubbyyew +cubdom +cube +cubeb +cubebs +cubed +cubelet +cubelik +cubelium +cubeo +cuber +cubero +cubers +cubes +cubeu +cubhood +cubi +cubic +cubica +cubical +cubically +cubicalness +cubicity +cubicle +cubicles +cubicly +cubicone +cubics +cubicular +cubiculum +cubiform +cubing +cubism +cubisms +cubist +cubistic +cubists +cubit +cubital +cubitale +cubited +cubitiere +cubito +cubitocarpal +cubitopalmar +cubitoradial +cubits +cubitus +cubmaster +cubocube +cuboid +cuboidal +cuboides +cuboids +cubomancy +cubomedusae +cubomedusan +cubrun +cubs +cubulco +cuby +cuca +cucapa +cucaracha +cucchiaro +cucci +cucciola +cuccioletta +cucciolla +cuccu +cuchan +cuchi +cuchillo +cuchivero +cuchudua +cuchulainn +cuchumata +cuchumatan +cuck +cuckhold +cuckold +cuckolded +cuckolding +cuckoldom +cuckoldry +cuckolds +cuckoldy +cuckoo +cuckooed +cuckooflower +cuckooing +cuckoomaid +cuckoopint +cuckoopintle +cuckoos +cuckow +cuckstool +cucoline +cucujid +cucujidae +cucujus +cucula +cuculi +cuculidae +cuculiform +cuculiformes +cuculine +cuculla +cucullaris +cucullate +cucullately +cuculliform +cucullus +cuculoid +cuculus +cucumaria +cucumariidae +cucumbers +cucumiform +cucumis +cucurbit +cucurbita +cucurbite +cucurbitine +cucurucu +cucuzzella +cuda +cudahy +cudava +cudaxar +cudbear +cudbears +cudd +cudden +cuddies +cuddihey +cuddihy +cuddleable +cuddled +cuddles +cuddlesome +cuddlier +cuddliest +cuddling +cuddy +cuddyhole +cudgeled +cudgeler +cudgelers +cudgeling +cudgelled +cudgelling +cudgels +cudgerie +cudney +cuds +cudweed +cudweeds +cueball +cueca +cued +cueing +cueist +cuellar +cueman +cuemanship +cuenca +cuento +cuepe +cuerda +cuero +cuervo +cuervos +cues +cuesta +cuestas +cueva +cuevas +cuevo +cufext +cuff +cuffari +cuffed +cuffer +cuffey +cuffin +cuffing +cuffle +cuffless +cuffling +cufflinks +cuffs +cuffy +cuffyism +cugani +cugat +cuggermugger +cuggy +cugurde +cuhn +cuiba +cuica +cuicatec +cuicateco +cuice +cuicutl +cuijanovic +cuilco +cuiloto +cuinage +cuinfo +cuing +cuini +cuir +cuirass +cuirassed +cuirasses +cuirassier +cuirassing +cuis +cuish +cuishes +cuisinary +cuisines +cuissard +cuissart +cuisse +cuissen +cuisten +cuitito +cuitlateco +cuittikin +cuiva +cuiver +cuixtla +cujam +cujar +cujaren +cujareno +cujo +cujubi +cujuna +cuka +cuke +cukes +cukrowicz +culavamsa +culberson +culbertson +culbreth +culbut +culbute +culbuter +culd +culdee +culdelampe +culdesac +culebra +culet +culeus +culex +culgee +culham +culhua +culicid +culicidae +culicidal +culicide +culiciform +culicifugal +culicifuge +culicinae +culicine +culicoides +culilawan +culina +culinarily +culjut +culkin +culla +cullage +culled +cullen +cullender +culleoka +culler +cullers +cullet +cullets +culley +cullibility +cullied +cullies +culliford +culling +cullion +cullipher +cullis +cullman +cullo +culloden +cullom +culloux +cullowhee +culloz +culls +cullum +cully +culm +culmen +culmer +culmi +culmicolous +culmiferous +culmigenous +culminal +culminant +culminated +culminates +culminating +culmination +culminations +culms +culmy +culotte +culottes +culottic +culottism +culp +culpa +culpability +culpableness +culpably +culpae +culpas +culpatory +culpcreek +culpeper +culpepper +culpin +culpose +culprit +culprits +cult +cultch +cultellation +cultellus +culteranismo +cultic +cultigen +cultirostral +cultirostres +cultish +cultism +cultismo +cultisms +cultist +cultists +cultivably +cultivar +cultivatable +cultivate +cultivated +cultivates +cultivating +cultivation +cultivations +cultivative +cultivator +cultivators +cultrate +cultrated +cultriform +cults +cultual +culturable +cultural +culturally +culture +cultured +cultures +culturine +culturing +culturist +culturize +culturology +cultus +culuene +culver +culvercity +culverfoot +culverhouse +culverin +culverineer +culverkey +culvers +culverson +culvert +culvertage +culverts +culverwort +cuma +cumacea +cumacean +cumaceous +cumaean +cumal +cumaldehyde +cumana +cumanagoto +cumanasho +cumaphyte +cumaphytic +cumaphytism +cumar +cumata +cumay +cumbent +cumber +cumbered +cumberer +cumberers +cumbereth +cumbering +cumberland +cumberless +cumberment +cumbers +cumbersome +cumbersomely +cumberworld +cumbha +cumbly +cumbola +cumbraite +cumbrance +cumbre +cumbria +cumbrian +cumbrous +cumbrously +cumbrousness +cumbu +cumbuka +cumby +cumene +cumengite +cumenyl +cumeral +cumflutter +cumhal +cumhuriyet +cumi +cumic +cumidin +cumidine +cuminal +cuminic +cuminoin +cuminol +cuminole +cumins +cuminseed +cuminyl +cummaquid +cummer +cummerbund +cummerbunds +cummers +cummin +cummine +cumming +cummings +cummington +cummins +cumol +cump +cumpston +cumquat +cumquats +cumshaw +cumshaws +cumulant +cumular +cumulated +cumulately +cumulates +cumulating +cumulation +cumulatist +cumulative +cumulatively +cumuli +cumuliform +cumulite +cumulonimbus +cumulophyric +cumulose +cumulous +cumulus +cumyl +cuna +cunabular +cunama +cunan +cunarder +cunas +cunayou +cuncluded +cunctation +cunctatious +cunctative +cunctator +cunctatury +cunctipotent +cundeamor +cundeelee +cundelee +cundiff +cundinamarca +cune +cunea +cuneal +cuneate +cuneately +cuneatic +cuneator +cunegonde +cuneiform +cuneiformist +cunen +cunene +cuneo +cuneocuboid +cunescu +cunette +cuneus +cuney +cuneyt +cung +cungeboi +cunha +cunhal +cunicular +cuniculus +cuniform +cunila +cunimi +cunin +cunipusana +cunitza +cunixc +cunixf +cunjah +cunjer +cunjevoi +cunliffe +cunner +cunners +cunni +cunnilinctus +cunnilingus +cunning +cunninger +cunningest +cunningham +cunninghamia +cunningly +cunningman +cunningness +cunnings +cuno +cunonia +cunoniaceae +cunoniaceous +cunt +cunthor +cuntinano +cunts +cunuana +cunucunuma +cuny +cunye +cunyvm +cunza +cuoi +cuon +cuong +cuore +cuorin +cupak +cupan +cupania +cupay +cupbearer +cupbearers +cupboards +cupcake +cupcakes +cupel +cupeler +cupellation +cupen +cupeno +cuper +cuperley +cupertino +cupflower +cupfulfuls +cupfuls +cuphea +cuphead +cupholder +cupid +cupidinous +cupidities +cupido +cupidon +cupidone +cupids +cupilco +cupless +cuplike +cupmaker +cupmaking +cupman +cupmate +cupola +cupolaed +cupolaman +cupolar +cupolas +cupolated +cuppa +cuppas +cupped +cuppens +cupper +cuppers +cuppier +cupping +cuppings +cuppy +cuprammonia +cuprammonium +cupreine +cuprene +cupreous +cupressaceae +cupressus +cupride +cupriferous +cuprite +cuprites +cuprocyanide +cuproid +cupronickel +cuprose +cuprosilicon +cuprum +cuprums +cups +cupseed +cupsful +cupshaped +cupstone +cupula +cupulate +cupule +cupulet +cupuliferae +cupuliferous +cupuliform +cura +curability +curable +curableness +curably +curac +curacao +curacaos +curacies +curacirari +curacy +curama +curanja +curara +curaray +curare +curares +curaretipped +curari +curarine +curarization +curarize +curasicana +curassese +curassow +curatage +curatel +curates +curateship +curatess +curatial +curatic +curation +curative +curatively +curativeness +curatives +curatize +curatolatry +curator +curatorial +curatorium +curators +curatorship +curatory +curatrices +curatrix +curaua +curavecan +curazicari +curb +curbable +curbed +curber +curbers +curbing +curbings +curbless +curblike +curbs +curbstone +curbstoner +curbstones +curby +curcas +curch +curcuddoch +curcuitous +curcular +curculation +curculio +curculionid +curculionist +curcuma +curcumin +curcy +curd +curded +curdier +curdina +curdiness +curding +curdle +curdled +curdler +curdlers +curdles +curdling +curdly +curds +curdsville +curduroy +curdwort +curdy +cure +cureall +cured +cureless +curelessly +curemaster +curepipe +curer +curers +cures +curet +curets +curettage +curette +curetted +curettement +curettes +curetting +curfewed +curfewing +curfews +curiae +curial +curialism +curialist +curialistic +curiality +curiate +curiatii +curiboca +curie +curies +curiescopy +curietherapy +curin +curine +curing +curiologic +curiologics +curiology +curiomaniac +curios +curiosa +curiosities +curiosity +curioso +curiosty +curiosum +curious +curiouser +curiousest +curiously +curiousness +curipaco +curisevo +curist +curite +curitis +curiuja +curiums +curl +curlay +curle +curled +curledly +curledness +curler +curlers +curlette +curlewberry +curlews +curley +curlicued +curlicues +curlicuing +curlier +curlies +curliest +curliewurly +curlike +curlily +curliness +curling +curlingly +curlings +curlis +curllsville +curlpaper +curls +curly +curlycue +curlycues +curlyhead +curlylocks +curmon +curmudgeon +curmudgeonly +curmudgeons +curmurring +curn +curney +curnock +curnow +curoca +curple +curr +currach +currack +curragh +currah +curral +curram +curran +currants +curratow +currawang +curred +curredit +currencies +currency +currens +current +currently +currentness +currentpath +currents +currentwise +currer +curricle +curriculums +currie +curried +currier +curriers +curriery +curries +currillo +currin +curring +curripaco +currish +currishly +currishness +currito +currituck +curro +currstep +curruthers +currycomb +currycombed +currycombing +currycombs +curryfavel +currying +curryville +curs +cursa +cursal +curse +cursed +curseder +cursedest +cursedly +cursedness +cursedst +curser +cursers +curses +cursest +curseth +curship +cursing +cursings +cursitor +cursively +cursiveness +cursives +cursor +cursorary +cursores +cursoria +cursorial +cursoriidae +cursorily +cursoriness +cursorious +cursoris +cursorius +cursors +cursory +curst +curstful +curstfully +curstly +curstness +cursus +curt +curtailed +curtailedly +curtailer +curtailing +curtailment +curtailments +curtails +curtain +curtained +curtaining +curtainless +curtains +curtaintime +curtainwise +curtal +curtana +curtate +curtation +curter +curtes +curtesies +curtest +curtesy +curtice +curtilage +curtin +curtis +curtise +curtiss +curtisville +curtly +curtness +curtsey +curtseyed +curtseying +curtseys +curtsied +curtsies +curtsy +curtsying +curua +curuaia +curuba +curuc +curucaneca +curucanecan +curucicuri +curucucu +curucuru +curule +curuminaca +curuminacan +curung +curuo +curupira +cururo +curuzicari +curvaceously +curvacious +curvant +curvate +curvation +curvature +curvatures +curve +curved +curvedly +curvedness +curvefitting +curver +curves +curvesome +curvet +curveted +curveting +curvets +curvetted +curvetting +curvex +curvey +curvicaudate +curvicostate +curvidentate +curvier +curviest +curvifoliate +curviform +curvilineal +curvilinear +curvimeter +curvinervate +curvinerved +curviness +curving +curvirostral +curvirostres +curviserial +curvital +curvity +curvograph +curvometer +curvous +curvulate +curvy +curwensville +curwhibble +curwillet +curyea +curzi +curzio +curzon +cusack +cusak +cusanelli +cusato +cuscatlan +cusco +cuscohygrine +cusconine +cuscus +cuscuta +cuscutaceae +cuscutaceous +cusec +cuseeme +cuselite +cush +cushag +cushan +cushat +cushaw +cushewbird +cushi +cushie +cushier +cushiest +cushily +cushiness +cushing +cushion +cushioned +cushioning +cushionless +cushionlike +cushions +cushiony +cushite +cushitic +cushman +cushy +cusick +cusie +cusihuaman +cusinero +cusins +cusk +cuspal +cusparidine +cusparine +cuspate +cuspated +cusped +cuspid +cuspidal +cuspidate +cuspidated +cuspidation +cuspidine +cuspidor +cuspidors +cuspids +cusps +cuspule +cuspy +cuss +cussed +cussedly +cussedness +cussen +cusser +cussers +cusses +cusseta +cussing +cusso +cusson +cussword +cusswords +custacean +custar +custard +custards +custer +custercity +custerite +custerpark +custis +custodee +custodes +custodiam +custodian +custodians +custodier +custodies +custody +custom +customable +customarily +customary +custombutton +customer +customers +customhouses +customiser +customizab +customizable +customize +customized +customizer +customizers +customizes +customizing +customs +customshouse +custos +custsupport +custumal +cusum +cusumano +cutaiqui +cutaneal +cutaneously +cutaway +cutaways +cutbacks +cutbank +cutch +cutcher +cutcheries +cutcherry +cutchi +cutchogue +cutdown +cutdowns +cute +cutebreaks +cutechat +cuteftp +cutefx +cutell +cuteloops +cutely +cuteness +cuter +cuterebra +cutes +cutesier +cutesiest +cutest +cutesy +cutey +cuteys +cuth +cuthah +cuthbert +cuthbertson +cutheal +cuthill +cutiadapa +cuticle +cuticles +cuticolor +cuticula +cuticular +cuticularize +cuticulate +cutidure +cutie +cuties +cutification +cutigeral +cutin +cutinization +cutinize +cutinizing +cutins +cutireaction +cutis +cutisector +cutiterebra +cutitis +cutization +cutlas +cutlases +cutlasses +cutleress +cutleria +cutleriaceae +cutleriales +cutleries +cutlers +cutlery +cutlets +cutlines +cutling +cutlips +cutlog +cutman +cutoff +cutoffs +cutouts +cutpurse +cutpurses +cutrufello +cuts +cutshin +cuttable +cuttage +cuttages +cuttail +cuttanee +cutted +cutten +cutter +cutterhead +cutterjohn +cutterman +cutters +cuttest +cutteth +cutthroat +cutthroats +cuttinet +cutting +cuttingly +cuttingness +cuttings +cuttington +cuttle +cuttlebones +cuttled +cuttlefishes +cuttler +cuttles +cuttling +cuttoo +cutts +cutty +cuttyhunk +cuttystool +cutuco +cutugno +cutuno +cutup +cutups +cutwater +cutweed +cutwork +cutworms +cuveo +cuverly +cuvette +cuvierian +cuvmb +cuvok +cuvy +cuxhaven +cuya +cuyabeno +cuyahoga +cuyama +cuyamecalco +cuyanawa +cuyare +cuyler +cuyo +cuyono +cuyonon +cuyunon +cuzceno +cuzco +cuzick +cuzzart +cvax +cvcc +cvccc +cvesc +cvetkoff +cvetkovic +cville +cvitjeta +cvtbd +cvtbf +cvtbg +cvtbh +cvtbl +cvtbw +cvtdb +cvtdf +cvtdh +cvtdl +cvtdw +cvtfb +cvtfd +cvtfg +cvtfh +cvtfl +cvtfw +cvtgb +cvtgf +cvtgh +cvtgl +cvtgw +cvthb +cvthd +cvthf +cvthg +cvthl +cvthw +cvtlb +cvtld +cvtlf +cvtlg +cvtlh +cvtlp +cvtlw +cvtpl +cvtps +cvtpt +cvtrdl +cvtrfl +cvtrgl +cvtrhl +cvtsp +cvttp +cvtwb +cvtwd +cvtwf +cvtwg +cvtwh +cvtwl +cvvc +cwackingup +cweeps +cwenar +cwierc +cwiklinska +cwirzen +cwishart +cwjcc +cwnd +cwowd +cwrite +cwru +cwsdpmi +cxbs +cyamelide +cyamus +cyan +cyanacetic +cyanamide +cyananthrol +cyanastrum +cyanaurate +cyanauric +cyanbenzyl +cyancarbonic +cyane +cyanea +cyanean +cyanemia +cyaneous +cyanformate +cyanformic +cyangugu +cyanhidrosis +cyanhydrate +cyanhydric +cyanhydrin +cyanicide +cyanidation +cyanided +cyanides +cyanidin +cyanidine +cyanidrosis +cyanimide +cyanin +cyanine +cyanite +cyanitic +cyanize +cyanoacetate +cyanoacetic +cyanoaurate +cyanoauric +cyanobenzene +cyanochroia +cyanochroic +cyanocitta +cyanoderma +cyanogen +cyanogenesis +cyanogenetic +cyanogenic +cyanohydrin +cyanol +cyanole +cyanometer +cyanometric +cyanometry +cyanopathic +cyanopathy +cyanophile +cyanophilous +cyanophoric +cyanophose +cyanophyceae +cyanophycean +cyanophycin +cyanophyte +cyanopia +cyanoplastid +cyanopsia +cyanose +cyanosed +cyanoses +cyanosis +cyanospiza +cyanotic +cyanotype +cyans +cyanuramide +cyanurate +cyanuret +cyanuric +cyanurine +cyanus +cyaphenine +cyath +cyathaspis +cyathea +cyatheaceae +cyatheaceous +cyathiform +cyathium +cyathoid +cyatholith +cyathos +cyathozooid +cyathus +cybele +cyber +cyberbobjr +cybercom +cybercontact +cybercore +cybercreek +cybercrud +cyberculture +cyberdyne +cyberia +cyberian +cyberlatin +cyberlirik +cybermailer +cyberman +cybermatrix +cybermedia +cybernate +cybernated +cybernating +cybernation +cybernetic +cybernetical +cyberpunk +cyberpunks +cybersex +cyberspace +cyberspatial +cyberspell +cyberthief +cyberverse +cyberview +cyberworm +cybil +cybill +cybister +cybolski +cyborg +cyborgs +cybulshi +cybulska +cybulski +cycadaceae +cycadaceous +cycadales +cycadean +cycadeoid +cycadeoidea +cycadeous +cycadiform +cycadlike +cycadoids +cycadophyta +cycads +cycas +cycelia +cycladic +cyclamate +cyclamates +cyclamen +cyclamens +cyclamin +cyclamine +cyclammonium +cyclane +cyclanthales +cyclanthus +cyclar +cyclarthrsis +cyclas +cyclazocine +cycle +cyclecar +cyclecars +cycled +cycledom +cyclene +cycler +cyclers +cycles +cyclesmith +cycliae +cyclian +cyclic +cyclical +cyclically +cyclicism +cyclicly +cyclide +cycling +cyclings +cyclism +cyclist +cyclistic +cyclists +cyclitic +cyclitis +cyclization +cyclize +cyclized +cyclizes +cyclizing +cyclo +cycloalkane +cyclobothra +cyclobutane +cyclocoelic +cyclocoelous +cycloconium +cycloganoid +cyclogram +cyclograph +cyclographer +cycloheptane +cyclohexane +cyclohexanol +cyclohexene +cyclohexyl +cycloid +cycloidal +cycloidally +cycloidean +cycloidei +cycloidian +cycloids +cyclolith +cycloloma +cyclomania +cyclometer +cyclometers +cyclometric +cyclometry +cyclomyaria +cyclomyarian +cyclonal +cyclone +cyclones +cyclonic +cyclonical +cyclonically +cyclonist +cyclonite +cyclonology +cyclonometer +cyclonoscope +cycloolefin +cyclopaedia +cyclopaedic +cyclopaedist +cyclope +cyclopedia +cyclopedias +cyclopedic +cyclopedical +cyclopedist +cyclopentane +cyclopentene +cyclopes +cyclophoria +cyclophoric +cyclophorus +cyclophrenia +cyclopia +cyclopic +cyclopism +cyclopite +cycloplegia +cycloplegic +cyclopoid +cyclopropane +cyclops +cyclopteroid +cyclopterous +cyclopy +cycloramic +cyclorrhapha +cyclos +cycloscope +cyclose +cyclosis +cyclosporeae +cyclosporous +cyclostoma +cyclostomata +cyclostomate +cyclostome +cyclostomes +cyclostomi +cyclostomous +cyclostyle +cyclotella +cyclothem +cyclothure +cyclothurine +cyclothurus +cyclothyme +cyclothymia +cyclothymiac +cyclothymic +cyclotome +cyclotomy +cyclotrons +cyclus +cydippe +cydippian +cydippid +cydippida +cydonia +cydonian +cydonium +cyesiology +cyesis +cyfartha +cygna +cygneous +cygnet +cygnets +cygnid +cygninae +cygnine +cygnus +cyke +cylce +cylert +cylinder +cylindered +cylinderer +cylinderlike +cylinders +cylindrella +cylindrical +cylindricity +cylindricule +cylindriform +cylindrite +cylindroid +cylindroidal +cylindroma +cylindrophis +cylindruria +cylix +cyllenian +cyllenius +cyllosis +cylonix +cyls +cyma +cymagraph +cymaphen +cymaphyte +cymaphytic +cymaphytism +cymar +cymation +cymatium +cymba +cymbaeform +cymbal +cymbalaria +cymbaleer +cymbaler +cymbalers +cymbaline +cymbalist +cymbalists +cymballike +cymbalo +cymbalon +cymbals +cymbate +cymbeline +cymbella +cymbiform +cymbium +cymbling +cymbocephaly +cymbopogon +cymbre +cyme +cymelet +cymene +cymes +cymiferous +cymling +cymogene +cymograph +cymographic +cymoid +cymoidium +cymometer +cymophane +cymophanous +cymophenol +cymoscope +cymose +cymosely +cymotrichous +cymotrichy +cymous +cymraeg +cymric +cymru +cymry +cymule +cymulose +cynanche +cynanchum +cynanthropy +cynara +cynaraceous +cynareous +cynaroid +cynde +cyndi +cyndia +cyndie +cyndy +cynebot +cynegetic +cynegetics +cynegild +cynethia +cynhyena +cynias +cyniatria +cyniatrics +cynic +cynical +cynically +cynicalness +cynicism +cynicisms +cynicist +cynics +cynipid +cynipidae +cynipidous +cynipoid +cynipoidea +cynips +cynism +cynius +cynocephalic +cynocephalus +cynoclept +cynocrambe +cynodon +cynodont +cynodontia +cynogale +cynoglossum +cynognathus +cynography +cynoid +cynoidea +cynology +cynomorium +cynomorpha +cynomorphic +cynomorphous +cynomys +cynophile +cynophilic +cynophilist +cynophobe +cynophobia +cynopodous +cynorrhodon +cynosarges +cynoscion +cynosura +cynosural +cynosure +cynosures +cynosurus +cynotherapy +cynoxylon +cynthea +cynthia +cynthian +cynthiana +cynthie +cynthiidae +cynthis +cynthius +cynthy +cynthya +cyperaceae +cyperaceous +cyperpunk +cyperus +cyphella +cyphellate +cypher +cyphered +cyphering +cypherpunks +cyphers +cyphomandra +cyphonautes +cyphonism +cypraea +cypraeid +cypraeidae +cypraeiform +cypraeoid +cypre +cypres +cypreses +cypress +cypressed +cypresses +cypressinn +cypressroot +cypria +cyprians +cyprididae +cypridina +cypridinidae +cypridinoid +cyprien +cyprina +cyprine +cyprinid +cyprinidae +cypriniform +cyprinine +cyprinodont +cyprinoid +cyprinoidea +cyprinoidean +cyprinus +cypriote +cypriotes +cypriots +cypripedium +cypris +cyprus +cypruses +cypsela +cypseli +cypselid +cypselidae +cypseliform +cypseline +cypseloid +cypselomorph +cypselous +cypselus +cyptozoic +cyrano +cyrcolsw +cyrenaic +cyrenaica +cyrenaicism +cyrene +cyrenesoft +cyrenian +cyrenians +cyrenius +cyrfonts +cyrielle +cyril +cyrill +cyrilla +cyrillaceae +cyrillaceous +cyrillian +cyrillianism +cyrillic +cyrine +cyriologic +cyriological +cyrix +cyrtidae +cyrtoceras +cyrtograph +cyrtolite +cyrtometer +cyrtomium +cyrtopia +cyrtosis +cyrus +cystadenoma +cystal +cystalgia +cystamine +cystaster +cystatrophia +cystatrophy +cystectasia +cystectasy +cystectomies +cystectomy +cysted +cysteinic +cystelcosis +cystenchyma +cystencyte +cysterethism +cystic +cysticarpic +cysticarpium +cysticercoid +cysticercus +cysticolous +cystid +cystidea +cystidean +cystidium +cystiferous +cystiform +cystigerous +cystine +cystinuria +cystirrhea +cystis +cystitis +cystitome +cystoadenoma +cystocarp +cystocarpic +cystocele +cystocyte +cystodynia +cystofibroma +cystogenesis +cystogenous +cystogram +cystoid +cystoidea +cystoidean +cystolith +cystolithic +cystoma +cystomatous +cystomyoma +cystomyxoma +cystonectae +cystonectous +cystophora +cystophore +cystoplasty +cystoplegia +cystopteris +cystoptosis +cystopus +cystorrhagia +cystorrhaphy +cystorrhea +cystosarcoma +cystoschisis +cystoscope +cystoscopic +cystoscopy +cystose +cystospasm +cystospastic +cystospore +cystostomy +cystosyrinx +cystotome +cystotomy +cystous +cysts +cytase +cytasic +cytherea +cytherean +cytherella +cytherian +cytheris +cytinaceae +cytinaceous +cytinus +cytioderm +cytisine +cytisus +cytitis +cytoblast +cytoblastema +cytochrome +cytochylema +cytocide +cytoclasis +cytoclastic +cytococcus +cytocyst +cytode +cytodendrite +cytoderm +cytodieresis +cytodieretic +cytogamy +cytogene +cytogenesis +cytogenetic +cytogenetics +cytogenic +cytogenous +cytogeny +cytoglobin +cytoid +cytokinesis +cytolist +cytologic +cytological +cytologies +cytologist +cytologists +cytolymph +cytolysin +cytolytic +cytoma +cytomere +cytometer +cytomitome +cyton +cytophaga +cytophagous +cytophagy +cytopharynx +cytophil +cytophysics +cytoplasmic +cytoplast +cytoplastic +cytoproct +cytopyge +cytoryctes +cytosome +cytospora +cytosporina +cytost +cytostomal +cytostome +cytostroma +cytotactic +cytotaxis +cytotoxic +cytotoxin +cytotrophy +cytotropic +cytotropism +cytozoic +cytozoon +cytozymase +cytozyme +cytrynbaum +cytula +cyzicene +czaja +czajnik +czappa +czar +czardas +czardases +czardom +czardoms +czarevitch +czarevna +czarevnas +czarian +czaric +czarinas +czaring +czarinian +czarish +czarism +czarisms +czarist +czaristic +czarists +czarita +czaritza +czaritzas +czarnecki +czarowitch +czarowitz +czars +czarship +czarski +czeban +czech +czechic +czechish +czechization +czechoslovak +czechs +czepeye +czerhaimi +czerny +czerwinska +czerwone +czes +czesci +czeslaw +czestochowa +cziewiek +czimeg +cziruchin +czlowiek +czontvary +czordas +czychun +czyrek +daaboul +daae +daagi +daai +daalder +daalen +daalu +daan +daang +daari +daarod +daasanech +daasenech +daba +dabai +dabakala +dabareh +dabay +dabb +dabba +dabbasheth +dabbed +dabber +dabbing +dabbled +dabbler +dabblers +dabbles +dabbling +dabblingly +dabblingness +dabblings +dabbs +dabby +dabchick +dabe +daberath +dabi +dabida +dabidjan +dabih +dabila +dabitis +dablet +dabli +dabner +dabney +dabneys +daboia +dabola +dabolt +dabosa +dabou +daboya +dabra +dabrowska +dabrowski +dabs +dabster +dabu +dabugus +dabura +dabus +dabuso +dacal +dace +dacelo +daceloninae +dacelonine +daces +dacey +dacgmine +dacgnault +dach +dacha +dachas +dache +dachelet +dachi +dachsea +dachshound +dachshunds +dacia +dacian +dacie +dacite +dacitic +dack +dacker +dacklehorse +dacko +dacla +dacoit +dacoitage +dacoits +dacoity +dacom +dacoma +dacono +dacorumanian +dacqmine +dacre +dacron +dacryagogue +dacrydium +dacryelcosis +dacryocele +dacryocyst +dacryolite +dacryolith +dacryoma +dacryon +dacryops +dacryopyosis +dacryosyrinx +dacryuria +dactylar +dactylate +dactylically +dactyliology +dactylion +dactylis +dactylist +dactylitic +dactylitis +dactylogram +dactylograph +dactyloid +dactylology +dactylonomy +dactylopius +dactylopore +dactylorhiza +dactyloscopy +dactylose +dactylotheca +dactylous +dactylozooid +dactyls +dactylus +dacula +dacus +dacy +dacyorrhea +dada +dadaisms +dadaists +dadalt +dadap +dadas +dadayag +dadazen +dadc +dadda +daddah +dadder +daddi +daddie +daddies +daddle +daddling +daddock +daddocky +daddy +daddynut +dadecity +dadenhudd +dadeville +dadgar +dadia +dadianci +dadibi +dadie +dadier +dadiya +dadjo +dadju +dadkhah +dadnaw +dado +dadoed +dadoes +dadoing +dados +dadoxylon +dadra +dads +dadu +dadua +daduchus +dadupanthi +daduwa +daedal +daedalea +daedalean +daedalia +daedalian +daedalic +daedalidae +daedalist +daedaloid +daedalus +dael +daele +daemon +daemonelix +daemonic +daemons +daemonurgist +daemonurgy +daemony +daeng +daer +daerah +daerahdaerah +daeva +dafauca +daff +daffaires +daffer +dafferstaett +daffery +daffi +daffie +daffier +daffiest +daffiness +daffing +daffish +daffle +daffo +daffobatura +daffodil +daffodilly +daffodils +daffy +dafi +dafinescu +dafing +dafla +dafoe +daft +daftar +daftberry +dafter +daftest +daftlike +daftly +daftness +dafuhu +dafwegilong +dafydd +daga +dagaaba +dagaari +dagaati +dagaba +dagaga +dagai +dagama +dagame +dagamumi +dagan +daganonga +daganyonga +dagara +dagari +dagarro +dagassa +dagati +dagauda +dagba +dagbala +dagbamba +dagbane +dagbani +dagbe +dagbert +dagel +dagenais +dagenava +dagert +dages +dagesh +dagestan +dagestani +dagg +dagga +dagger +daggerbush +daggered +daggerfall +daggerlike +daggerproof +daggers +daggett +daggle +daggletail +daggletailed +daggly +daggoo +daggy +daghesh +daghestan +dagi +dagig +dagin +dagley +dagli +dagliana +daglock +dagmar +dagna +dagnall +dagnelie +dagnija +dago +dagoba +dagobas +dagoda +dagoes +dagoi +dagomba +dagon +dagora +dagos +dagoulis +dagover +dagpakha +dags +dagsboro +dagu +daguerre +daguerrean +dagui +daguor +dagupan +dagur +dagusmines +dagwood +dahabeah +dahabeeyah +dahabiah +dahalo +dahan +dahati +dahating +daher +dahest +dahhanu +dahinda +dahit +dahiya +dahl +dahlart +dahlbeck +dahlberg +dahlgren +dahlia +dahlias +dahlke +dahlonega +dahlsten +dahlstrom +dahmen +dahms +dahn +dahnkn +daho +dahodoo +dahoman +dahomeen +dahomey +dahomeyan +dahoon +dahufra +dahui +dahuk +dahuni +daiamuni +daibiao +daibutsu +daic +daidle +daidly +daido +daidoji +daier +daigakusi +daigle +daigneault +daigok +daijiro +daijo +daiken +daiker +daikon +daikos +dail +dailamite +daile +dailer +dailey +dailies +dailiness +daillie +dailups +daily +daimee +daimen +daimi +daimiate +daimio +daimon +daimonic +daimonion +daimonistic +daimonology +daimons +daimyo +daimyos +dain +daincha +daine +daingerfield +daingnet +dainichi +dainteth +daintier +dainties +daintiest +daintify +daintihood +daintily +daintiness +daintith +dainton +dainty +daio +daioi +daiomuni +daiquiri +daiquiris +dair +daira +dairi +dairies +dairy +dairying +dairymaid +dairymaids +dairywoman +daises +daisetta +daisey +daisho +daisi +daisie +daisied +daisies +daisley +daiso +daisuke +daisy +daisybush +daisychained +daisytown +daitc +daitch +daito +daitoshoto +daitya +daiva +daivers +daiyaataiyal +daiz +daja +dajabon +daje +dajerling +dajou +daju +daka +dakaka +dakakari +dakani +dakar +dakarkari +daker +dakheczjha +dakhini +dakhla +dakhlet +dakin +dakir +dakis +dakka +dakkarkari +daklan +dako +dakoit +dakoits +dakota +dakotacity +dakotan +dakotans +dakotas +dakpa +dakrouri +daksut +daktjerat +daktylon +daktylos +dakunza +dakuwa +dakuya +dakwa +dala +dalaba +dalabon +dalad +daladier +dalai +dalaiah +dalal +dalam +dalar +dalarnian +dalasi +dalasysla +dalat +dalati +dalayap +dalban +dalbar +dalbergia +dalbes +dalbo +dalbret +dalby +dalcassian +dald +daldi +dale +dalea +dalecarlian +daled +daledh +dalek +daleko +daleman +dalen +dalene +dalenius +dalenna +dalentin +daler +dalera +dales +dalesfolk +dalesman +dalesmen +dalespeople +daleswoman +daleth +daleths +daleville +daley +dalhart +dali +dalia +daliah +dalian +daliance +dalibarda +dalila +dalin +dalio +dalip +dalit +daliya +dalk +dalkowska +dall +dalla +dallack +dallago +dallaire +dallal +dallas +dallascenter +dallascity +dallastown +dallben +dalle +dalles +dallesandro +dallesport +dallessandro +dalliance +dalliances +dallied +dallier +dalliers +dallies +dallimore +dallo +dallol +dally +dallying +dallyingly +dallyn +dalm +dalmania +dalmanites +dalmanutha +dalmar +dalmard +dalmatia +dalmatian +dalmatians +dalmatic +dalmatoff +daloa +daloka +dalong +daloris +daloua +dalphon +dalradian +dalroy +dalrymple +dalsiel +dalt +dalteen +dalton +daltoncity +daltonian +daltonic +daltonism +daltonist +daltos +daltrey +daltriss +daltry +daly +dalya +dalyan +dalycity +dama +damadian +damage +damageable +damageably +damaged +damagement +damager +damagers +damages +damaging +damagingly +damakwa +damal +damali +damalo +damamono +daman +damango +damani +damante +damao +damaqua +damar +damara +damaraju +damaraland +damaris +damariscotta +damascene +damascened +damascener +damascenes +damascenine +damascening +damascus +damasked +damaskeen +damasks +damaso +damasse +damassin +damat +damata +damatanthie +damatic +damayanti +dambala +dambenieks +dambi +dambonitol +dambose +dambro +dambrod +dambrosia +dambu +damel +dameli +damena +damenization +damerji +dameron +dames +dameski +damesquarter +damewort +damgalnunna +dami +damia +damian +damiana +damiani +damianist +damiano +damico +damie +damiecki +damien +damier +damietta +damil +damin +damine +damini +daminyu +damioli +damion +damit +damita +damitrof +damkjernite +damla +damlale +damlike +dammam +dammann +dammar +dammara +damme +dammed +dammend +dammer +dammers +damming +dammish +dammit +damn +damnability +damnable +damnableness +damnably +damnation +damnatory +damndest +damned +damneder +damnedest +damner +damners +damnify +damnifying +damnii +damning +damningly +damningness +damnit +damnitall +damnonians +damnonii +damnous +damnously +damns +damo +damoclean +damocles +damoetas +damoiseau +damoiselle +damon +damone +damongo +damonico +damosel +damosels +damot +damotte +damourite +damozel +damozels +damp +dampal +dampang +damped +dampelas +dampelasa +dampened +dampener +dampeners +dampening +dampens +damper +dampers +dampest +dampezzo +damphu +dampier +damping +dampish +dampishly +dampishness +dampler +damply +dampness +dampproof +dampproofer +dampproofing +damps +dampy +damrey +damrod +damron +dams +damsel +damselfish +damselflies +damselfly +damselhood +damsels +damsleth +damson +damsons +damude +damulian +damwlak +dana +danaan +danab +danach +danae +danagher +danagla +danaher +danai +danaid +danaidae +danaide +danaidean +danailov +danainae +danaine +danais +danaite +danakil +danalite +danane +danao +danaos +danapoint +danare +danaroff +danaru +danau +danaw +danboro +danbrook +danburite +danbury +danby +danc +dancalite +dance +danced +dancefloor +danceland +dancer +danceress +dancers +dancery +dances +dancette +danchik +danciger +dancin +dancing +dancingly +dancourt +dancy +dancys +dand +danda +dandami +dandara +dandawa +dandehall +dandekar +dandelion +dandelions +dander +dandered +danders +dandi +dandiacal +dandiacally +dandically +dandier +dandies +dandiest +dandieu +dandified +dandifies +dandify +dandifying +dandilly +dandily +dandini +dandiprat +dandizette +dandle +dandled +dandler +dandlers +dandles +dandling +dandlingly +dando +dandridge +dandrige +dandruff +dandruffy +dandun +dandurand +dandy +dandydom +dandyish +dandyism +dandyisms +dandyize +dandyling +dane +daneball +daneel +daneflower +danegeld +danegelds +danegger +danelaw +daneliuc +danell +danella +danelle +daneman +danen +danes +danese +daneshzadeh +danet +danette +danevang +daneweed +danewort +danford +danforth +dang +danga +dangal +dangaleat +dangali +dangarik +dangbala +dangbe +dangbon +danged +danger +dangered +dangerfield +dangerful +dangerfully +dangerless +dangerous +dangerously +dangers +dangersome +dangha +dangi +danging +dangio +dangken +dangla +danglars +dangleberry +dangled +danglement +dangler +danglers +dangles +danglin +dangling +danglingly +dangme +dangrania +dangreen +dangri +dangs +dangson +dangu +dangubic +dangura +dani +dania +danial +danian +danic +danica +danice +danicism +danie +daniel +daniela +danielak +daniele +danieli +danielic +daniell +daniella +danielle +daniells +daniels +danielsville +danier +daniglacial +danii +danika +danikurima +danikwerba +danila +danileiko +danilo +danilowicz +daniluk +danio +danis +danisa +danish +danisin +danism +danit +danita +danite +danites +danitza +danization +danize +danja +danjaan +danjean +danjon +danjongka +dankali +dankasa +danker +dankest +dankish +dankishness +dankly +dankness +danko +dankuta +dankwart +dankworth +dankyira +danladi +danlery +danli +danmark +dann +danna +dannag +dannah +dannebrog +dannegger +dannemann +dannemeyer +dannemora +dannemorite +danner +dannevirke +danni +dannie +dannii +danning +dannock +dannreuther +danny +dannye +dano +danoo +danoranja +danova +danpuriya +danquah +dans +dansant +danse +dansereau +danseur +danseurs +danseuse +danseuses +danseusse +dansez +danshe +dansk +dansker +danskin +danson +dansville +danta +dantai +dantas +dante +dantean +dantes +dantesque +danthaman +danthonia +dantine +dantist +dantley +dantology +dantomania +danton +dantonesque +dantonist +dantophilist +dantophily +dantu +dantzer +dantzler +danu +danube +danubetisza +danubia +danum +danuri +danus +danuse +danuwar +danvers +danville +dany +danya +danyelle +danyette +danzeisen +danzig +danziger +danzinger +daoine +daoist +daonda +daosta +daoud +daouda +daoukro +daoust +dapalan +dapaon +dapaong +dapedium +dapedius +dapel +dapera +daphene +daphine +daphla +daphna +daphnaceae +daphne +daphnean +daphnephoria +daphneplane +daphnetin +daphnia +daphnias +daphnin +daphnioid +daphnis +daphnoid +dapicho +dapico +dapifer +dapitan +dapo +dappel +dapper +dapperer +dapperest +dapperling +dapperly +dapperness +dapping +dappled +dapples +dappling +dapron +dapson +daqahliyah +daquano +dara +darabukka +darac +daraf +daraga +daragawan +darai +darang +daranyi +darapti +darasa +darassa +darat +darava +darawshah +darazo +darazs +darb +darbha +darbie +darbo +darbon +darby +darbyism +darbyite +darc +darcee +darcel +darcey +darci +darcie +darclee +darcom +darcy +dard +darda +dardan +dardanarius +dardanelle +dardanelles +dardani +dardanium +dardanius +dardaol +dardauna +darden +dardic +dardis +dardistan +dare +dareall +dared +daredevilism +daredevilry +daredevils +daredeviltry +dareen +dareful +darell +darelle +daren +darer +darers +dares +daresay +daressalaam +darfeuil +darfler +darfung +darfur +darg +dargah +darger +darghin +dargin +dargintsy +dargo +dargot +dargsman +dargue +dargwa +darha +darhan +dari +daria +daribah +daribi +daric +darice +darie +darien +dariena +dariencenter +dariganga +darii +darimiya +darin +darina +daring +daringly +daringness +darings +dario +dariole +daris +darit +darius +darjeeling +darjula +dark +darka +darkb +darkc +darkcity +darkd +darkdoor +darked +darken +darkened +darkener +darkeners +darkeneth +darkening +darkens +darker +darkest +darkey +darkeyed +darkeys +darkful +darkgrey +darkhaired +darkhan +darkhat +darkhearted +darkie +darkies +darking +darkish +darkishness +darkknight +darklands +darkled +darkles +darklier +darkliest +darklighter +darkling +darklings +darklord +darkly +darkmans +darkness +darknesses +darknight +darko +darkon +darkonlight +darkot +darkroom +darkrooms +darks +darksheer +darkside +darkskin +darksome +darksomeness +darkstar +darktower +darkwarr +darkweider +darkwolf +darky +darla +darlac +darlan +darlanne +darleen +darlen +darlene +darles +darley +darlin +darline +darling +darlingly +darlingness +darlings +darlington +darlingtonia +darlleen +darlong +darly +darmence +darmiya +darmok +darmon +darms +darmstadt +darmstadter +darnah +darnation +darnay +darndest +darndests +darned +darneder +darnedest +darnel +darnell +darnels +darner +darners +darnex +darning +darnings +darnley +darns +daro +daroga +darom +daromatu +daron +daroo +daroro +darou +daroueche +darpa +darr +darra +darragh +darrai +darrang +darras +darrein +darrel +darrell +darrelle +darren +darrieu +darrieux +darrimon +darrin +darrington +darro +darroch +darrol +darrouzett +darrow +darry +darryl +darsay +darsey +darshan +darshana +darshi +darsie +darsonval +darsonvalism +darst +darstellen +dart +dartagnan +dartars +dartboard +darted +darter +darters +darth +darthvader +darting +dartingly +dartingness +dartle +dartlike +dartman +dartmoor +dartmouth +dartoic +dartoid +dartos +dartre +dartrose +dartrous +darts +dartsemdo +dartsman +dartvax +daru +daruba +darubia +darussalam +darvas +darveau +darvon +darwaz +darwazi +darwell +darwent +darwin +darwinians +darwinical +darwinically +darwinism +darwinist +darwinistic +darwinists +darwinite +darwinize +darwyn +dary +darya +daryl +daryll +daryn +darzee +dasa +dasarathy +dasari +dasc +dasch +daschagga +daschle +dasd +dasea +dasein +dasenech +dasener +dasgupta +dash +dasha +dashboard +dashboards +dashed +dashedly +dashee +dasheen +dasher +dashers +dashes +dasheth +dashiell +dashier +dashik +dashiki +dashikis +dashing +dashingly +dashmaker +dashnak +dashnakist +dashplate +dashpot +dashpots +dashwa +dashwheel +dashy +dasi +dasie +dasilva +dasiphora +dasjan +daskorn +dasnt +dasps +dasrath +dass +dassa +dassani +dassel +dassie +dassin +dassy +dast +dastardize +dastardly +dastardness +dastards +dastardy +daste +dastur +dasturi +dasya +dasyatidae +dasyatis +dasylirion +dasymeter +dasypaedal +dasypaedes +dasypaedic +dasypeltis +dasyphyllous +dasypodidae +dasypodoid +dasyprocta +dasyproctine +dasypus +dasystephana +dasyure +dasyuridae +dasyurine +dasyuroid +dasyurus +dasyus +data +dataanalysis +dataaware +database +databasename +databases +datable +datableness +datably +databse +datacell +datacenter +datacomms +datacomputer +datacontrols +datacops +datadian +datadirect +dataexplorer +datafile +datafit +dataflow +datag +dataglove +datagnon +datagram +datagrams +datakit +datalanguage +datalayouts +datalink +datalore +datalynx +datamation +datamon +datanami +datanet +dataor +dataoriented +datapac +datapad +datapoint +datapunch +datarecieved +dataria +datary +datas +datasafe +dataset +datasetname +datasets +datasheet +datasize +datastream +datasupport +datatype +datatypes +datch +datcha +datchas +datcheka +datcher +date +dateable +dated +datedly +datedness +dateedit +datefield +datehack +datei +dateien +dateless +dateline +datelined +datelines +datelining +datema +datemark +daten +daterman +daters +dates +datestamp +datestr +datha +dathan +dathanaic +dathanaik +dathanik +dathe +dathon +datil +datina +dating +dation +datisca +datiscaceae +datiscaceous +datiscetin +datiscin +datiscoside +datisi +datism +datival +dative +datively +datives +dato +datog +datoga +datolite +datolitic +datong +datooga +datoua +datri +datskie +datskih +datsuns +datsw +datta +dattalo +datto +dattock +dattore +datu +datuk +datum +datums +datura +daturas +daturic +daturism +dauan +daub +daube +daubed +daubentonia +dauber +dauberies +daubers +daubery +daubes +daubier +daubing +daubingly +daubreeite +daubreelite +daubs +daubster +dauby +dauchvili +daucus +daud +daudi +daudin +dauern +daufil +daugavet +daugavietis +daughers +daugherty +daughter +daughterhood +daughterkin +daughterless +daughterlike +daughterling +daughterly +daughters +daughtership +daughtery +daughton +daughtrey +daughtry +daui +daujaro +daulatabad +daulias +daulton +daumery +daumier +daunais +daunch +dauncy +daune +daunii +daunt +daunted +daunter +daunters +daunting +dauntingly +dauntingness +dauntless +dauntlessly +daunton +daunts +dauphinais +dauphiness +dauphinois +dauphins +daupka +daur +daurand +dauri +daurier +daurine +dauro +dausame +daussmond +daut +dautenhahn +dauterive +dauti +dautie +dauvray +dauw +dauwa +dauzig +davach +davak +davallia +davalo +davalos +davant +davao +davaoen +davari +davawen +davawenyo +davay +davayte +dave +daveen +davelor +davem +daven +davenport +davenports +daver +daverdy +davers +daveta +davey +davgun +davi +david +davida +davidbender +davidcity +davide +davidek +davidge +davidian +davidic +davidical +davidist +davidite +davidm +davidmorales +davidoff +davidovich +davidow +davids +davidson +davidsonite +davidsville +davidweilla +davie +davies +daviesia +daviesite +davila +davilla +davin +davina +davinci +davinder +davine +davington +davion +davis +davisboro +davisburg +daviscity +daviscreek +davison +daviss +davisson +davisstation +daviston +davisville +daviswharf +davita +davits +davno +davo +davoch +davoli +davray +davreux +davros +davtaradze +davvin +davy +davydov +davyne +davys +davyss +dawa +dawadasiausi +dawai +dawalagiri +dawan +dawana +dawar +dawari +dawas +dawawa +dawayo +dawda +dawdle +dawdled +dawdler +dawdlers +dawdles +dawdling +dawdlingly +dawdy +dawe +daweloor +dawera +dawes +dawid +dawida +dawish +dawker +dawkin +dawkins +dawley +dawlish +dawmont +dawn +dawna +dawnay +dawne +dawned +dawney +dawning +dawnlight +dawnlike +dawns +dawnstreak +dawnward +dawny +dawoer +dawood +dawoods +dawplucker +dawro +dawson +dawsonia +dawsoniaceae +dawsonite +dawsonville +dawtet +dawtit +dawut +daxsea +daya +dayabhaga +dayah +dayak +dayakker +dayal +dayan +dayang +dayao +daybazaar +daybeam +daybeds +dayberry +dayblush +daybook +daybooks +daybreak +daybreaks +daydawn +daydreamed +daydreamer +daydreamers +daydreaming +daydreams +daydreamt +daydreamy +daydrudge +daye +dayeh +dayes +dayflies +dayflower +dayflowers +dayfly +dayglow +dayglows +daygoing +dayhoit +dayi +dayipu +dayka +daykarhanova +daykin +dayle +dayless +daylight +daylighted +daylights +daylilies +daylily +daylit +daylong +daylor +daym +dayman +daymare +daymark +daymond +daymont +dayna +dayofweek +dayoh +daypacks +dayplanner +dayr +dayroom +dayrooms +days +dayscreek +dayshine +dayside +daysides +daysman +dayspring +daystar +daystars +daystreak +daystrom +daytale +daytide +daytime +daytimes +daytoday +dayton +daytona +daytonabeach +dayut +dayville +dayward +daywork +dayworker +daywrit +dayz +daza +dazai +daze +dazed +dazedly +dazedness +dazement +dazes +dazey +dazhe +dazing +dazingly +dazur +dazy +dazza +dazzle +dazzled +dazzlement +dazzler +dazzlers +dazzles +dazzling +dazzlingly +dbar +dbardistance +dbartisan +dbase +dbasefor +dbasepc +dbaware +dbctrls +dbdemos +dbed +dbench +dbest +dbfff +dbgpoke +dbgraph +dbgrid +dbimage +dblistview +dbmemo +dbms +dbnavigator +dboutline +dbscroll +dbtables +dbtreeview +dbus +dcbname +dccr +dccs +dcec +dcems +dchemal +dciem +dcmail +dcnet +dcommsystest +dcra +dcri +dcrl +dcro +dcrp +dcrs +dcrt +dcsc +dcsem +dcso +dcss +dcssparc +dcssvx +dctedit +ddarm +dddd +ddddd +dddddd +ddddddd +dddddddd +ddddddddd +ddefs +ddemanual +ddene +ddeservice +ddespy +ddetopic +ddimensional +ddis +ddmp +ddmt +ddname +ddnt +ddntrouble +ddocdb +ddou +ddress +ddrnd +ddsun +ddtc +ddts +deaccession +deaccessions +deacetis +deacetylate +deach +deacidified +deacidify +deacidifying +deacon +deaconal +deaconate +deaconed +deaconesses +deaconhood +deaconing +deaconize +deaconries +deaconry +deacons +deaconship +deactivate +deactivated +deactivates +deactivating +deactivation +deactivator +deactivators +dead +deadbeat +deadbeats +deadbeef +deadborn +deadcenter +deadcity +deadened +deadener +deadeners +deadening +deadens +deader +deadest +deadeye +deadeyes +deadfall +deadfalls +deadguy +deadheaded +deadheadism +deadheads +deadhearted +deadhouse +deading +deadish +deadishly +deadishness +deadlatch +deadlier +deadliest +deadlight +deadlily +deadline +deadlines +deadliness +deadlock +deadlocked +deadlocking +deadlocklike +deadlocks +deadlooking +deadly +deadman +deadmarshes +deadmelt +deadness +deadnight +deadpan +deadpanned +deadpans +deadpay +deadrick +deads +deadtf +deadtongue +deadweight +deadwoods +deadwort +deaerate +deaeration +deaerator +deaf +deafened +deafening +deafeningly +deafens +deafer +deafest +deafforest +deafish +deafly +deafmute +deafness +deagle +deagneaux +deagol +deah +deair +deairs +deak +deakin +deakins +deal +dealable +dealate +dealated +dealation +dealbate +dealbation +dealbuminize +dealcoholist +dealcoholize +deale +dealer +dealerdom +dealers +dealership +dealerships +dealest +dealeth +dealey +dealfish +dealing +dealings +dealisland +dealkalize +dealkylate +dealkylation +deallocated +deallocates +deallocating +deallocation +dealmeida +deals +dealt +dealto +dealwith +deambulation +deambulatory +deamidase +deamidate +deamidation +deamidize +deaminase +deaminate +deamination +deaminize +deammonation +deamon +deamuni +dean +deana +deanda +deane +deaner +deaneries +deanery +deaness +deangelis +deanie +deanimalize +deaning +deann +deanna +deanne +deans +deansboro +deanship +deanships +deanville +deappetizing +deaquation +dear +dearabicized +dearaujo +dearbhla +dearborn +dearborne +dearden +deardon +deardurff +dearer +dearest +dearies +dearing +dearj +dearly +dearman +dearmanville +dearness +dearomatize +dears +dearsenicate +dearsenicize +dearson +dearth +dearthfu +dearths +dearworth +dearworthily +deary +deash +deasil +deason +deaspirate +deaspiration +death +deathbed +deathbeds +deathblow +deathblows +deathcup +deathcups +deathday +deatherage +deathful +deathfully +deathfulness +deathify +deathin +deathiness +deathland +deathless +deathlessly +deathlike +deathliness +deathling +deathly +deathmatch +deathmatches +deathrate +deathrates +deathroot +deaths +deathshot +deathsman +deathstar +deathtrap +deathtraps +deathvalley +deathwards +deathwatch +deathwatches +deathweed +deathworm +deathy +deaton +deatrick +deatsville +deave +deavely +deaver +debabaon +debacles +debadeep +debadge +debamboozle +debanzie +debarbarize +debark +debarkation +debarkations +debarked +debarking +debarkment +debarks +debarment +debarrance +debarras +debarrass +debarration +debarred +debars +debary +debase +debased +debasedness +debasement +debaser +debasers +debases +debasing +debasingly +debassige +debatable +debatably +debate +debateable +debated +debateful +debatefully +debatement +debaters +debates +debating +debatingly +debatsa +debauched +debauchedly +debauchee +debauchees +debaucher +debaucheries +debauches +debauching +debauchment +debbarma +debbi +debbie +debby +debee +debehogne +debeige +debellate +debellation +debellator +deben +debennedeto +debentured +debentures +debenzolize +debeque +debera +debernardo +deberry +debever +debi +debian +debicki +debile +debilissima +debilitant +debilitated +debilitates +debilitating +debilitation +debilitative +debilities +debin +debind +debir +debitable +debited +debiteuse +debiting +debitor +debits +debituminize +deblaterate +deble +deblock +deblocked +deblocking +deblois +debnam +deboer +debois +deboistly +deboistness +debonaire +debonairity +debonairly +debonairness +debone +deboned +debonnaire +debor +debora +deborah +debord +debordment +deborra +debortoli +debosh +deboshed +debouch +debouche +debouched +debouches +debouching +debouchment +debouny +debra +debralee +debri +debriac +debride +debrided +debridement +debrie +debriefed +debriefing +debriefings +debriefs +debris +debrominate +debruise +debruising +debrun +debrusk +debs +debt +debtee +debtful +debtless +debtor +debtors +debtorship +debts +debubly +debucourt +debug +debuge +debugged +debuggedyour +debugger +debuggers +debugging +debuglevel +debugs +debugtut +debuisson +debullition +debunked +debunker +debunkers +debunking +debunkment +debunks +debus +debussy +debussyan +debussyanize +debut +debutant +debutantes +debutants +debuted +debuting +debuts +deby +deca +decabrina +decachord +decacqueray +decad +decadal +decadally +decadarch +decadarchy +decadary +decadation +decade +decadence +decadency +decadentism +decadently +decadents +decades +decadescent +decadianome +decadic +decadist +decadrachm +decadrachma +decaesarize +decaffeinize +decafid +decagon +decagonal +decagons +decagram +decagramme +decahedra +decahedral +decahedron +decahedrons +decahydrate +decahydrated +decaire +decaisnea +decaitre +decalcified +decalcifier +decalcifies +decalcify +decalcifying +decalcomania +decalescence +decalescent +decalin +decaliter +decaliters +decalitre +decalobate +decalogist +decalogue +decalomania +decals +decalvant +decalvation +decameral +decameron +decameronic +decamerous +decameter +decameters +decametre +decamp +decamped +decamping +decampment +decamps +decan +decanal +decanally +decanate +decane +decangular +decani +decanically +decanonize +decantate +decantation +decanted +decanter +decanters +decantherous +decanting +decants +decap +decapetalous +decaphyllous +decapitable +decapitalize +decapitate +decapitated +decapitates +decapitating +decapitation +decapitator +decapod +decapoda +decapodal +decapodan +decapodiform +decapodous +decapods +decapolis +decapper +decapsulate +decapua +decarbonate +decarbonator +decarbonize +decarbonized +decarbonizer +decarburize +decarch +decarchy +decardo +decare +decares +decarhinus +decarie +decarlo +decarnate +decarnated +decart +decasemic +decasepalous +decasper +decaspermal +decaspermous +decast +decastellate +decastere +decastich +decastyle +decasualize +decasyllabic +decasyllable +decasyllabon +decate +decathlons +decatize +decatizer +decatoic +decator +decatur +decaturville +decatyl +decaudate +decaudation +decay +decayable +decayed +decayedness +decayer +decayers +decayeth +decaying +decayless +decays +decb +decca +deccan +decco +decease +deceased +deceases +deceasing +decedents +deceit +deceitful +deceitfully +deceits +deceivable +deceivably +deceive +deceived +deceiver +deceivers +deceives +deceiveth +deceiving +deceivingly +deceivings +decelerate +decelerated +decelerates +decelerating +deceleration +decelerator +decelerators +decell +decelles +december +decemberish +decemberly +decembrist +decemcostate +decemdentate +decemfid +decemflorous +decemfoliate +decemjugate +decemlocular +decempartite +decempeda +decempedal +decempedate +decempennate +decemplex +decemplicate +decemstriate +decemuiri +decemvir +decemviral +decemvirate +decemvirship +decenaries +decenary +decence +decencies +decency +decene +decennal +decennary +decennia +decenniad +decennially +decennials +decennium +decenniums +decennoval +decent +decenter +decentered +decentest +decently +decentness +decentralism +decentralist +decentralize +decentration +decentre +decentring +decenyl +deceptible +deception +deceptions +deceptious +deceptiously +deceptitious +deceptive +deceptively +deceptivity +decerebrate +decerebrize +decern +decerniture +decernment +decert +decertified +decertifying +decesaris +decess +decession +dechagny +dechamp +dechead +dechenite +decherd +dechlog +dechlore +dechlorinate +dechoralize +deci +decian +deciare +deciares +deciatine +decibels +deciccio +decicco +deciceronize +decidability +decidable +decide +decided +decidedly +decidedness +decider +deciders +decides +deciding +decidingly +decidua +decidual +deciduary +deciduata +deciduate +deciduitis +deciduoma +deciduous +deciduously +decigram +decigramme +decigrams +decil +deciliter +deciliters +decilitre +decillion +decillionth +decima +decimal +decimalism +decimalist +decimalize +decimalized +decimalizes +decimalizing +decimally +decimals +decimated +decimates +decimating +decimation +decimator +decimestrial +decimeter +decimeters +decimetre +decimetres +decimilli +decimolar +decimole +decimosexto +decimus +decin +decinormal +decipher +decipherable +decipherably +deciphered +decipherer +deciphering +decipherment +deciphers +decipium +decipolar +decision +decisions +decisive +decisively +decisiveness +decison +decistere +decisteres +decit +decitizenize +decius +decivilize +deck +deckard +decke +decked +deckedst +deckel +decker +deckers +deckerville +deckest +decketh +deckham +deckhand +deckhands +deckhead +deckhouse +deckie +decking +deckings +deckle +deckles +deckload +decks +deckswabber +decl +declaimant +declaimed +declaimer +declaimers +declaiming +declaims +declair +declamations +declan +declarable +declarant +declaration +declarations +declaratives +declarators +declare +declared +declaredly +declaredness +declarer +declarers +declares +declareth +declaring +declass +declasse +declassicize +declassified +declassifies +declassing +decleir +declension +declensional +declensions +declercq +declimatize +declin +declinable +declinal +declinate +declinations +declinatory +declinature +decline +declined +declinedness +decliner +decliners +declines +declineth +declining +declinograph +declinometer +declipper +declivate +declive +declivities +declivitous +declivous +declo +declutch +decmate +decnet +deco +decoagulate +decoat +decocainize +decoct +decocted +decoctible +decocting +decoction +decoctive +decocts +decoctum +decode +decoded +decoder +decoders +decodes +decoding +decodings +decodon +decohere +decoherence +decoherer +decohesion +decoic +decoke +decollate +decollated +decollation +decollator +decollete +decolonized +decolonizes +decolonizing +decolor +decolorant +decolorate +decoloration +decolorize +decolorizer +decolour +decombie +decomble +decompensate +decompile +decompiler +decompiling +decomplex +decomponible +decomposed +decomposer +decomposers +decomposes +decomposing +decomposite +decomposure +decompound +decompoundly +decompressed +decompresses +decompressor +deconcini +decongest +decongestant +decongested +decongesting +decongestion +decongestive +decongests +deconinck +deconsecrate +deconsider +decontrols +decopperize +decor +decorability +decorable +decorably +decorah +decorament +decorated +decorates +decorating +decoration +decorations +decorative +decoratively +decorator +decorators +decoratory +decorist +decorously +decorousness +decors +decorsica +decorticator +decorticosis +decorums +decostate +decoudre +decoufle +decoupage +decouple +decoupled +decouples +decoupling +decourcy +decoursin +decoy +decoyduck +decoyed +decoyer +decoyers +decoying +decoyman +decoys +decrassify +decream +decrease +decreased +decreaseless +decreases +decreasing +decreasingly +decreation +decreative +decree +decreeable +decreed +decreement +decreer +decreers +decrees +decreet +decrement +decremented +decrementing +decrements +decremeter +decrepid +decrepit +decrepitate +decrepitly +decrepitness +decrepitude +decrescence +decrescendo +decrescendos +decrescent +decretal +decretalist +decrete +decretist +decretive +decretively +decretorial +decretorily +decretory +decretum +decrew +decrial +decrials +decried +decrier +decriers +decries +decrown +decrowns +decrustation +decrying +decrypt +decrypted +decrypter +decrypting +decryption +decryptions +decrypts +decs +decsrc +decstation +decsystem +dectape +dectective +decuac +decuana +decubital +decubitus +decultivate +deculturate +decuman +decumana +decumanus +decumaria +decumary +decumbence +decumbency +decumbent +decumbently +decumbiture +decuple +decuplet +decuration +decuria +decurion +decurionate +decurrence +decurrency +decurrent +decurrently +decurring +decursion +decursive +decursively +decurtate +decurvation +decurvature +decurve +decury +decus +decussate +decussated +decussately +decussation +decussis +decussorium +decvax +decw +decwriter +decwrl +decyl +decylene +decylenic +decylic +decyne +decypher +deczky +dedalus +dedan +dedanim +dedanite +dedas +dede +dedea +dedecorate +dedecoration +dedecorous +dedee +dedekind +dedendum +dedentition +dedham +dedi +dedicant +dedicate +dedicated +dedicatee +dedicates +dedicating +dedication +dedicational +dedications +dedicative +dedicator +dedicatoria +dedicatorial +dedicatorily +dedicators +dedicatory +dedicature +dedie +dediebo +dedimus +dedintsev +deditician +dediticiancy +dedition +dedo +dedogmatize +dedolation +dedolph +dedougou +dedra +dedrick +dedua +deduae +deducation +deduced +deducement +deducer +deduces +deducibility +deducibly +deducing +deducive +deducted +deductibles +deducting +deduction +deductions +deductive +deductively +deductory +deducts +deduk +dedview +dedwing +dedza +deeann +deeanne +deed +deedbox +deeded +deedee +deedeed +deedeetee +deedful +deedfully +deedier +deedily +deediness +deeding +deedless +deeds +deedsville +deedy +deeford +deegan +deejay +deejays +deek +deel +deelan +deeley +deem +deemed +deemer +deemie +deeming +deemon +deemphasis +deemphasized +deemphasizes +deems +deemster +deemstership +deena +deenu +deep +deepak +deepcolored +deepdyed +deeped +deepened +deepener +deepeners +deepening +deepeningly +deepens +deeper +deepest +deepfreeze +deepgap +deeping +deepish +deeplier +deeply +deepmost +deepmouthed +deepness +deepread +deepriver +deeprooted +deeprun +deeps +deepseabed +deepsky +deepsome +deepsounding +deepthroat +deeptoned +deepwater +deepwaterman +deer +deerberry +deerbrook +deercreek +deerdog +deerdre +deerdrive +deere +deerez +deerfield +deerfly +deerflys +deerfood +deergrove +deerhair +deerharbor +deerherd +deerhorn +deerhound +deering +deerisle +deerlet +deerlodge +deermeat +deerpark +deerriver +deers +deerskins +deerslayer +deerstalkers +deerstalking +deerstand +deerstealer +deersville +deerton +deertongue +deertrail +deerweed +deerweeds +deerwood +deery +deeryard +dees +deescalate +deescalated +deescalates +deescalating +deescalation +deesy +deeth +deev +deevens +deever +deevey +deevilick +deevoh +deeyn +deezen +defa +defaceable +defaced +defacement +defacements +defacendis +defacer +defacers +defaces +defacing +defacingly +defacto +defailt +defaka +defalcate +defalcated +defalcates +defalcating +defalcation +defalcations +defalcator +defalco +defalk +defamation +defamations +defamatory +defame +defamed +defamer +defamers +defames +defaming +defamingly +defanged +defarge +defassa +defat +defatigation +defats +defatted +defauce +default +defaultant +defaulted +defaulter +defaulters +defaulting +defaultless +defaults +defaulture +defazio +defcon +defeasance +defeasanced +defease +defeasible +defeat +defeated +defeater +defeaters +defeating +defeatism +defeatist +defeatists +defeatment +defeats +defeature +defecant +defecated +defecates +defecating +defecation +defecator +defect +defected +defecter +defecters +defectible +defecting +defection +defectionist +defections +defectious +defective +defectively +defectives +defectless +defectology +defectors +defectoscope +defects +defedation +defeminize +defeminized +defeminizing +defence +defenced +defences +defencive +defend +defendable +defendant +defendants +defendat +defended +defender +defenders +defendest +defending +defendress +defends +defendu +defenestrate +defensative +defense +defensed +defenseless +defenses +defensibly +defensing +defension +defensive +defensively +defensor +defensorship +defensory +defer +deferable +deference +deferens +deferent +deferential +deferentitis +deferiet +deferment +deferments +deferrals +deferred +deferrer +deferrers +deferreth +deferrize +defers +defervesce +defervescent +defeudalize +deffenbaugh +deffle +defiable +defial +defiance +defiances +defiant +defiantly +defiantness +defiber +defibrillate +defibrinate +defibrinize +deficience +deficiencies +deficiency +deficient +deficiently +deficits +defied +defier +defiers +defies +defiguration +defigure +defilade +defile +defiled +defiledness +defiledst +defilement +defilements +defiler +defilers +defiles +defileth +defiliation +defiling +defilingly +defilippis +defilippo +defina +definability +definable +definably +definately +define +defineable +definebox +defined +definedly +definefont +definement +definer +definers +defines +definiendum +definiens +defining +definite +definitely +definiteness +definition +definitional +definitiones +definitions +definitively +definitize +definitly +definitor +definitude +deflagrable +deflagrate +deflagrated +deflagrates +deflagrating +deflagration +deflagrator +deflated +deflates +deflating +deflation +deflationary +deflationist +deflations +deflator +deflators +deflea +deflectable +deflected +deflecting +deflection +deflections +deflective +deflectors +deflects +deflesh +deflex +deflexible +deflexion +deflexure +deflocculant +deflocculate +deflorate +defloration +deflorations +deflotte +deflower +deflowered +deflowerer +deflowering +deflowers +defluent +defluous +defluvium +defluxion +defoam +defoamed +defoamer +defocusses +defoe +defoedation +defog +defogged +defogger +defoggers +defogging +defogs +defoliage +defoliant +defoliants +defoliart +defoliate +defoliated +defoliates +defoliating +defoliation +defoliations +defoliator +defoliators +deforce +deforcement +deforceor +deforcer +deforciant +deford +defore +deforeit +deforested +deforester +deforesting +deforests +deformable +deformalize +deformation +deformations +deformative +deformed +deformedly +deformedness +deformer +deformers +deformeter +deforming +deformism +deformities +deformity +deforms +deforo +deforrest +defortify +defoul +defrag +defragment +defrancesco +defranchi +defranco +defrank +defraud +defraudation +defrauded +defrauder +defrauders +defrauding +defraudment +defrauds +defrayable +defrayal +defrayals +defrayed +defrayer +defrayers +defraying +defrayment +defrays +defreeze +defrication +defries +defrocked +defrocking +defrocks +defrosted +defroster +defrosters +defrosting +defrosts +defter +defterdar +deftest +deftly +deftness +deftones +defun +defunction +defunctive +defunctness +defunctorium +defused +defuses +defusing +defusion +defuze +defuzed +defuzes +defuzing +defy +defydd +defying +defyingly +degage +degan +degarmot +degarnish +degarro +degaru +degasifier +degasify +degass +degassed +degasser +degasses +degati +degauss +degaussed +degausses +degaussing +degeistirk +degel +degelatinize +degelation +degema +degen +degenan +degeneracies +degeneralize +degenerate +degenerated +degenerately +degenerates +degenerating +degeneration +degenerative +degeneres +degenova +degentilize +degerberg +degerine +degerm +degermed +degerminate +degerminator +degged +degger +degha +deghwari +deghy +degischer +deglaciation +deglaze +degli +deglutinate +deglutition +deglutitious +deglutitive +deglutitory +deglycerin +deglycerine +degnan +degne +degodia +degoja +degorge +degraauw +degradable +degradand +degradation +degradations +degradative +degrade +degraded +degradedly +degradedness +degradement +degrader +degraders +degrades +degrading +degradingly +degradiruesh +degraduate +degraduation +degraff +degrain +degrandis +degreased +degreaser +degreases +degreasing +degree +degreed +degreeless +degrees +degreewise +degression +degressive +degressively +degrey +degroot +degu +deguba +deguelia +deguelin +deguello +deguene +deguines +deguire +degummed +degummer +degums +degust +degustation +dehaan +dehair +dehairer +dehaites +dehart +dehati +dehaven +dehavites +dehawali +deheathenize +dehematize +dehenda +dehennin +dehepatize +dehes +deheuvels +dehgan +dehghan +dehisce +dehiscence +dehiscent +dehkan +dehl +dehlavi +dehli +dehlia +dehmert +dehner +dehnstufe +dehoff +dehok +dehonestate +dehong +dehorn +dehorned +dehorner +dehorning +dehorns +dehors +dehort +dehortation +dehortative +dehortatory +dehorter +dehose +dehoxde +dehu +dehue +dehull +dehumanize +dehumanized +dehumanizer +dehumanizes +dehumanizing +dehumidified +dehumidifier +dehumidifies +dehusk +dehwali +dehwar +dehwari +dehydrant +dehydrase +dehydrated +dehydrates +dehydrating +dehydration +dehydrator +dehydrators +dehydromucic +dehypnotize +dehypnotized +deia +deibert +deibler +deibula +deice +deiced +deicer +deicers +deices +deicher +deichmanns +deichsel +deicidal +deicide +deicides +deicing +deictic +deictical +deictically +deidealize +deidesheimer +deidre +deific +deifical +deification +deifications +deificatory +deified +deifier +deifiers +deifies +deiform +deiformity +deifying +deighan +deighton +deigned +deigning +deigns +deild +deim +deimel +deimos +deina +deincrustant +deinen +deinert +deing +deinhard +deinhibiting +deininger +deink +deino +deinoceras +deinodon +deinos +deinosauria +deinotherium +deinow +deinstall +deinsularize +deionization +deionize +deionized +deionizes +deionizing +deipara +deiparous +deiphobus +deipnophobia +deipotent +deira +deirdre +deiseal +deism +deisms +deist +deister +deistic +deistical +deistically +deistler +deists +deities +deitiker +deitrich +deitsch +deityship +deitz +deja +dejah +dejak +dejan +dejanara +dejanira +dejay +dejbuk +dejean +dejecta +dejected +dejectedly +dejectedness +dejectile +dejecting +dejection +dejections +dejectly +dejectory +dejects +dejecture +dejeou +dejerate +dejeration +dejerator +dejeune +dejeuner +dejima +dejoie +dejong +dejongh +dejopeja +dejunkerize +deka +dekabrist +dekabrya +dekagram +dekagrams +dekalb +dekaliter +dekaliters +dekameter +dekameters +dekaparsec +dekapode +dekar +dekares +deke +dekening +dekese +dekeyser +dekhed +dekina +dekini +dekka +dekker +dekko +dekl +dekle +deklerck +deknight +deko +dekoka +dekova +dekwambre +dela +delaat +delabialize +delabrement +delaceration +delacruzo +delactation +delaesh +delafield +delafosse +delage +delagorgue +delagrave +delahay +delaiah +delaine +delair +delala +delali +delamain +delamare +delambre +delamere +delami +delaminate +delamination +delancey +delanco +deland +delaney +delang +delangis +delano +delanson +delanvanti +delany +delaplaine +delaplane +delapp +delapse +delapsion +delargy +delaro +delasoft +delat +delate +delater +delatinize +delation +delator +delatorian +delattre +delaunay +delaune +delaura +delauro +delaval +delavan +delavane +delavanti +delave +delaware +delawarean +delawarecity +delawn +delay +delayable +delayage +delayed +delayer +delayers +delayeth +delayful +delaying +delayingly +delays +delbarton +delbene +delber +delbert +delbi +delbo +delbridge +delbrouck +delcambre +delcampe +delcina +delcine +delco +delcourt +dele +delead +delectable +delectably +delectation +delectations +delectible +delection +delectus +deled +delegacies +delegacy +delegalize +delegalizing +delegant +delegate +delegated +delegatee +delegates +delegateship +delegati +delegating +delegation +delegations +delegative +delegator +delegatory +deleing +delellis +delen +delenda +delenn +deleon +delerious +deles +delesseria +delet +delete +deleteable +deleted +deleter +deleterious +deletes +deletete +deletin +deleting +deletion +deletions +deletive +deletor +deletory +deleuze +delevan +delevanti +delevingne +delf +delfa +delfin +delfina +delfo +delford +delforge +delfos +delfosse +delfower +delft +delfts +delftware +delfzijl +delgada +delgade +delgadillo +delgado +delgados +delgazo +delgetti +delgrosse +delha +delhi +deli +delia +delian +deliberalize +deliberant +deliberate +deliberated +deliberately +deliberates +deliberating +deliberation +deliberative +deliberator +deliberators +delible +delicacies +delicacy +delicat +delicate +delicately +delicateness +delicates +delicatesse +delice +delicense +delichon +delicioso +delicious +deliciously +deliciouz +delict +delicto +delictum +deligated +deligation +deligdisch +delight +delightable +delighted +delightedly +delighter +delightest +delighteth +delightfully +delighting +delightingly +delightless +delights +delightsome +delignate +delikweir +delila +delilah +delillo +delim +delima +delime +deliminated +deliming +delimit +delimitate +delimitating +delimitative +delimited +delimiter +delimiters +delimiting +delimitize +delimits +delinda +delineable +delineated +delineates +delineating +delineation +delineations +delineative +delineator +delineatory +delineature +delinquence +delinquency +delinquently +delinquents +delinsky +delint +delinter +deliquation +deliquesced +deliquesces +deliquescing +deliquium +deliracy +delirament +deliration +deliria +deliriant +delirious +deliriously +delirium +deliriums +delis +delisle +delissaville +delist +delit +delitescence +delitescency +delitescent +delitto +deliva +deliver +deliverable +deliverables +deliverance +deliverances +delivered +deliveredst +deliverer +deliverers +deliveress +deliverest +delivereth +deliveries +delivering +deliveror +delivers +delivery +deliveryman +deliyannis +dell +della +dellacherie +dellarowe +dellcity +delle +dellenite +delli +dellinger +dellman +dellrapids +dellroy +dells +dellslow +dellums +delly +delman +delmar +delmare +delmary +delmas +delmita +delmonico +delmont +delno +delnorte +delo +delocalize +deloir +deloit +delolmodiez +delomorphic +delomorphous +delon +delong +delongis +delora +delorenzi +delorenzo +delores +deloria +deloris +delorme +delos +delouange +deloul +deloused +delouses +delousing +delp +delphacid +delphacidae +delphi +delphia +delphian +delphideals +delphifalls +delphin +delphine +delphinia +delphinic +delphinid +delphinidae +delphinin +delphinine +delphinite +delphiniums +delphinius +delphinoid +delphinoidea +delphos +delporte +delportia +delpy +delran +delray +delraybeach +delrey +delrina +delrio +delroy +delsarte +delsartean +delsartian +delschaft +delsemme +delt +delta +deltacity +deltacomm +deltacross +deltaic +deltal +deltarium +deltas +deltation +deltaville +delthyrial +delthyrium +deltic +deltidial +deltidium +deltiology +deltohedron +deltoidal +deltoids +deltold +delton +delts +delu +delubac +delubrum +deluc +deluca +deluce +deluco +deludable +deluded +deluder +deluders +deludes +deludher +deluding +deludingly +deluge +deluged +deluges +deluging +delugo +deluise +deluminize +delundung +delusion +delusional +delusionary +delusionist +delusions +delusively +delusiveness +delusory +deluster +delux +deluxe +deluzy +delvalle +delvaux +delve +delvecchio +delved +delver +delvers +delves +delving +delvische +delwar +delwyn +delzer +dema +demagnetize +demagnetized +demagnetizer +demagnetizes +demagog +demagogic +demagogical +demagogies +demagogism +demagogs +demagoguery +demagogues +demagogy +demain +demaio +demal +demam +demand +demandable +demandant +demanded +demander +demanders +demanding +demandingly +demands +demang +demanganize +demange +demantoid +demaratus +demarcated +demarcates +demarcating +demarcation +demarcations +demarcator +demarcators +demarch +demarche +demarches +demarchy +demarco +demaree +demarest +demarkation +demarking +demas +demast +dematiaceae +dematiaceous +demazis +demba +dembi +dembiya +dembo +dembowska +demchuk +deme +demeaned +demeaning +demeanor +demeanors +demeanour +demeans +demecio +demegoric +demen +demenais +demency +demeni +dement +dementate +dementation +demented +dementedly +dementedness +dementholize +dementi +dementia +dementias +dementing +dements +demeo +demephitize +demerara +demerest +demerille +demerited +demeriting +demerits +demerol +demers +demersal +demersed +demersion +demes +demesman +demesmerize +demesne +demesnes +demesnial +demesta +demestre +demet +demetallize +demeter +demethylate +demetra +demetral +demetre +demetri +demetria +demetrian +demetricize +demetrick +demetrio +demetrios +demetris +demetrius +demets +demeure +demi +demiadult +demiaf +demian +demianenko +demiangel +demiatheism +demiatheist +demibarrel +demibastion +demibath +demibeast +demibee +demibelt +demibob +demibold +demibombard +demibrassart +demibrigade +demibrute +demibuckram +demicadence +demicannon +demicanon +demicanton +demicaponier +demichamfron +demicircle +demicircular +demick +demicolumn +demicoronal +demicritic +demicuirass +demiculverin +demicylinder +demiddelaer +demideify +demideity +demidenko +demidevil +demidigested +demidistance +demiditone +demidoctor +demidoff +demidog +demidolmen +demidome +demieagle +demifarthing +demifigure +demifusion +demigauntlet +demiglobe +demigod +demigoddess +demigods +demigorge +demigration +demigriffin +demigroat +demihag +demihearse +demiheavenly +demihigh +demihogshead +demihorse +demihuman +demijambe +demijohns +demijour +demik +demikindred +demiking +demilance +demilancer +demilawyer +demilegato +demilion +demilitarize +demiliterate +demille +demillo +demilune +demiluster +demilustre +demiman +demimark +demimetope +demimondain +demimondaine +demimonde +demimonk +deminatured +demineralize +deming +deminude +deminudity +demiofficial +demiorbit +demiourgoi +demiowl +demiox +demipagan +demiparadise +demiparallel +demipauldron +demipesade +demipike +demipillar +demipique +demiplacate +demiplate +demipomada +demipremise +demipremiss +demipriest +demipuppet +demiquaver +demir +demiracle +demiram +demirel +demirelief +demirep +demirhumb +demirilievo +demirobe +demis +demisa +demisability +demisable +demisang +demisangue +demisavage +demise +demiseason +demisecond +demised +demisemitone +demises +demisheath +demishirt +demising +demisphere +demiss +demission +demissionary +demissly +demissness +demissory +demisuit +demitasse +demitasses +demitint +demitoilet +demitone +demitrain +demitri +demits +demitube +demiturned +demiurge +demiurgeous +demiurges +demiurgic +demiurgical +demiurgism +demiurgus +demivambrace +demivirgin +demivoice +demivol +demivolt +demivotary +demiwivern +demiwolf +demjanenka +demjanenko +demjen +demler +demme +demmet +demnition +demo +demob +demobbed +demobbing +demobilize +demobilized +demobilizes +demobilizing +demobs +democracies +democracy +democrat +democratian +democratic +democratical +democratie +democratique +democratism +democratist +democratize +democratized +democratizes +democrats +democraty +democrtic +demode +demodectic +demoded +demodex +demodicidae +demodocus +demodulated +demodulates +demodulating +demodulation +demodulator +demogenic +demogorgon +demographer +demographers +demographic +demographics +demographies +demographist +demoh +demoid +demoing +demoiselle +demoiselles +demokau +demolish +demolished +demolisher +demolishes +demolishing +demolishment +demolitions +demological +demology +demon +demonastery +demone +demoness +demonetize +demonetized +demonetizes +demonetizing +demongeot +demoniacal +demoniacally +demoniacism +demoniacs +demonial +demonian +demonianism +demoniast +demonic +demonical +demonifuge +demonise +demonish +demonism +demonisms +demonist +demonists +demonize +demonized +demonizes +demonizing +demonkind +demonlacal +demonland +demonlike +demonocracy +demonograph +demonography +demonoid +demonolater +demonolatry +demonologer +demonologic +demonologies +demonologist +demonology +demonomancy +demonomy +demonophobia +demonry +demons +demonship +demonstrable +demonstrably +demonstrant +demonstrate +demonstrated +demonstrater +demonstrates +demonstrator +demontelnet +demontluzin +demonworship +demonz +demooth +demophil +demophilism +demophobe +demophon +demophoon +demopolis +demoralize +demoralized +demoralizer +demoralizers +demoralizes +demoralizing +demorest +demoriane +demornay +demorphism +demos +demoshield +demospongiae +demoss +demossphere +demossville +demosthenean +demosthenes +demosthenic +demote +demoted +demotes +demotic +demotics +demoting +demotion +demotions +demotist +demotte +demoulina +demount +demounted +demounting +demounts +demoversion +dempar +demps +dempsey +dempster +demren +demsa +demshin +demta +demulce +demulcent +demulcents +demulsify +demulsion +demunn +demura +demurely +demureness +demurer +demurest +demurity +demurrable +demurrage +demurrages +demurral +demurrals +demurrant +demurrers +demurringly +demurs +demutization +demwa +demy +demyan +demyship +demystify +demystifying +dena +denag +denair +denali +denarcotize +denard +denarest +denarii +denarinarii +denarius +denaro +denary +denat +denate +denated +denaturalize +denaturant +denaturants +denaturate +denaturation +denatured +denatures +denaturing +denaturize +denaturizer +denaut +denava +denawa +denazified +denazifies +denazify +denberg +denbigh +denbili +denbo +denbow +denby +dench +denda +dendi +dendje +dendoro +dendrachate +dendral +dendraspis +dendraxon +dendric +dendriform +dendrites +dendritic +dendritical +dendritiform +dendrium +dendrobates +dendrobe +dendrobium +dendrocoela +dendrocoelan +dendrocoele +dendroctonus +dendrocygna +dendrodont +dendrodus +dendroeca +dendrogaea +dendrogaean +dendrograms +dendrograph +dendrography +dendrohyrax +dendroica +dendroid +dendroidal +dendroidea +dendrolagus +dendrolatry +dendrolene +dendrolite +dendrologic +dendrologist +dendrologous +dendrology +dendromecon +dendrometer +dendron +dendrons +dendrophil +dendrophile +dendropogon +dene +deneb +denebeim +deneen +deneev +deneg +denegate +denegation +denehole +denemark +denervate +denervation +denest +denet +denethor +denette +deneuve +deney +deng +dengalu +dengdeng +dengel +dengese +dengfap +dengka +dengkalelain +dengue +dengues +dengyuan +dengyuang +denham +denhoff +denholm +deni +deniably +denial +denials +denian +denice +denicotinize +deniece +denied +denier +denierage +denierer +deniers +denies +denieth +denigomodu +denigrated +denigrates +denigrating +denigration +denigrations +denigrator +denigrators +denigratory +denike +denim +denims +denio +denis +denise +denishawn +denison +denisova +denissis +denitrate +denitration +denitrator +denitrifier +denitrify +denitrize +denization +denizenation +denizenize +denizens +denizenship +denizli +denje +denjonka +denjonke +denk +denker +denktas +denktash +denley +denlinger +denman +denmark +denna +dennard +denned +dennehy +dennen +dennerly +dennery +dennet +denney +denni +dennie +denning +dennings +dennis +dennison +dennisov +dennispalm +dennisport +denniston +dennistone +dennisville +denno +dennstaedtia +denny +dennysville +deno +denom +denominable +denominated +denominates +denominating +denomination +denominative +denominator +denominators +denomme +denoon +denormand +denos +denotable +denotational +denotations +denotatively +denotatum +denote +denoted +denotement +denotes +denoting +denotive +denouements +denounce +denounced +denouncement +denouncer +denouncers +denounces +denouncing +dens +dense +densely +densen +denseness +denser +densest +denshare +densher +denshire +densified +densifier +densifies +densify +densifying +densimeter +densimetric +densimetry +densities +density +densmore +densoft +denson +dent +dentacfhaz +dentagra +dental +dentale +dentalgia +dentaliidae +dentalism +dentality +dentalium +dentalize +dentally +dentals +dentaphone +dentaria +dentarthur +dentary +dentata +dentate +dentated +dentately +dentation +dented +dentel +dentelated +dentelle +dentelure +denter +dentex +dentical +denticate +denticeti +denticle +denticular +denticulate +denticulated +denticule +dentiferous +dentiform +dentifrice +dentifrices +dentigerous +dentil +dentilabial +dentilated +dentilation +dentile +dentilingual +dentiloquist +dentiloquy +dentimeter +dentin +dentinal +dentinalgia +dentinasal +dentine +dentines +denting +dentinitis +dentinoblast +dentinoid +dentinoma +dentins +dentiparous +dentiphone +dentiroster +dentirostral +dentirostres +dentiscalp +dentist +dentistic +dentistical +dentistries +dentists +dentition +dentlieu +dentoid +dentolabial +dentolingual +denton +dentonasal +dentong +dents +dentural +dentures +denty +denuclearize +denucleate +denudant +denudate +denudations +denudative +denuded +denuder +denuders +denudes +denuding +denumerably +denumeral +denumerant +denumeration +denumerative +denunciable +denunciant +denunciative +denunciator +denunciatory +denutrition +denver +denvercity +denville +denwa +deny +denya +denyer +denying +denyingly +denys +denyse +denz +denza +denzel +denzil +denzo +deobstruct +deobstruent +deoculate +deodand +deodar +deodara +deodars +deodorants +deodorize +deodorized +deodorizer +deodorizers +deodorizes +deodorizing +deokhar +deokri +deol +deong +deonne +deontologist +deontology +deoperculate +deoppilant +deoppilate +deoppilation +deoppilative +deor +deordination +deorganize +deori +deorwine +deosali +deosculation +deossify +deota +deoxidant +deoxidate +deoxidation +deoxidative +deoxidator +deoxidize +deoxidized +deoxidizer +deoxidizers +deoxidizes +deoxidizing +deoxygenate +deoxygenated +deozonize +deozonizer +depa +depaganize +depaint +depalma +depapre +depardieu +depark +deparliament +depart +departamento +departed +departement +departements +departer +departeth +departing +departition +department +departmental +departments +departs +departure +departures +depas +depascent +depass +depasturable +depasturage +depasture +depatriate +depaul +depauperate +depauperize +depauville +depauw +depeche +depeditate +depeditated +depelteau +depencil +depend +dependable +dependably +dependance +dependant +dependants +depended +dependence +dependencia +dependencias +dependencies +dependency +dependent +dependently +dependents +depender +depending +dependingly +depends +depeople +deperdite +deperditely +deperdition +depere +deperition +depersonize +depetalize +depeter +depetticoat +depew +depeyster +dephase +dephased +dephasing +dephi +dephlegmate +dephlegmator +dephoure +depickle +depicted +depicter +depicters +depicting +depiction +depictions +depictive +depictment +depictor +depictors +depicts +depicture +depigment +depigmentate +depigmentize +depilate +depilated +depilates +depilating +depilation +depilator +depilatories +depilatory +depilitant +depilous +depinna +deplaceable +deplane +deplaned +deplanes +deplaning +deplaster +deplenish +depletable +depleteable +depleted +depletes +deplethoric +depleting +depletions +depletive +depletory +deploitation +deplorable +deplorably +deploration +deplored +deploredly +deploredness +deplorer +deplorers +deplores +deploring +deploringly +deploy +deployable +deployed +deploying +deployment +deployments +deploys +deplumate +deplumated +deplumation +deplume +deplump +depoebay +depoetize +depoh +depolarize +depolarized +depolarizer +depolarizers +depolarizes +depolarizing +depolish +depolished +depolishes +depolishing +depoliticize +depolymerize +depone +deponent +deponents +deponing +depooter +depopularize +depopulate +depopulated +depopulates +depopulating +depopulation +depopulative +depopulator +depopulators +deportable +deportations +deported +deportees +deporter +deporting +deportiruiut +deportment +deportnut +deports +deposable +deposal +deposals +deposed +deposer +deposers +deposes +deposing +deposit +depositaries +depositation +deposited +depositee +depositing +deposition +depositional +depositions +depositive +depositories +depositors +depository +deposits +depositum +depositure +depot +depotentiate +depots +depoy +depp +deppe +depraeter +deprato +depravation +depraved +depravedly +depravedness +depravement +depraver +depraves +depraving +depravingly +depravities +depravity +deprecable +deprecated +deprecates +deprecating +deprecation +deprecations +deprecative +deprecator +deprecators +depreciant +depreciated +depreciates +depreciating +depreciation +depreciative +depreciator +depreciators +depreciatory +depredated +depredating +depredation +depredations +depredator +depredatory +deprehension +depreseed +depressant +depressants +depressed +depresses +depressing +depressingly +depression +depressional +depressions +depressively +depressives +depressors +depreter +deprez +depriest +deprint +depriorize +deprivable +deprival +deprivals +deprivate +deprivation +deprivations +deprivative +deprive +deprived +deprivement +depriver +deprivers +deprives +depriving +deprocedured +deprogram +deprogrammed +deprogrammer +deprograms +deprycker +depside +dept +depth +depthen +depthing +depthless +depthometer +depths +depththe +depthwise +depue +depurant +depurate +depuration +depurative +depurator +depuratory +depursement +depusse +deputable +deputados +deputati +deputatilor +deputational +deputations +deputative +deputatively +deputator +deputatov +deputed +deputes +deputies +deputing +deputize +deputized +deputizes +deputizing +deputy +deputyship +dequant +dequantitate +dequeen +dequet +dequeue +dequeued +dequeues +dequeuing +dequincey +dequincy +dera +deraaf +derabbinize +derace +deracialize +deracinate +deracination +deradelphus +deradenitis +deradenoncus +derah +deraign +derailed +derailer +derailing +derailleur +derailleurs +derailment +derailments +derails +deramee +derangeable +deranged +derangement +derangements +deranger +deranges +deranging +deraposi +derasa +derasanya +derat +derater +deratization +derats +derawali +deray +derbe +derbend +derbent +derbies +derbitz +derby +derbyline +derbylite +derbyshire +derderian +dere +derebai +derebridge +derect +derectory +dereferenced +dereferences +deregister +deregulated +deregulates +deregulating +deregulation +dereism +dereistic +derek +derelict +dereliction +derelictions +derelictly +derelictness +derelicts +dereligion +derenne +deresco +deresford +deresinate +deresinize +derestrict +deret +derevia +derevskaya +derez +derezz +derezzing +derganc +deri +deribas +deric +derice +derick +deridder +deride +derided +derider +deriders +derides +deriding +deridingly +derin +deringa +deringer +deripia +derisible +derision +derisions +derisive +derisively +derisiveness +derisory +derivability +derivable +derivably +derival +derivant +derivately +derivation +derivational +derivations +derivatist +derivative +derivatively +derivatives +derive +derived +derivedly +derivedness +derivedto +deriver +derivers +derives +deriving +derk +derlostuh +derm +derma +dermabrasion +dermacentor +dermad +dermahemia +dermal +dermalgia +dermalith +dermamyiasis +derman +dermaptera +dermapteran +dermapterous +dermardiros +dermas +dermastro +dermasurgery +dermatagra +dermatalgia +dermatauxe +dermathemia +dermatic +dermatine +dermatitis +dermatitises +dermatobia +dermatocele +dermatocyst +dermatodynia +dermatogen +dermatograph +dermatoid +dermatology +dermatolysis +dermatoma +dermatome +dermatomere +dermatomic +dermatomyces +dermatomyoma +dermatonosus +dermatophone +dermatophony +dermatophyte +dermatoplasm +dermatoplast +dermatopsy +dermatoptera +dermatoptic +dermatorrhea +dermatoscopy +dermatosis +dermatotome +dermatotomy +dermatozoon +dermatrophia +dermatrophy +dermenchysis +dermestes +dermestid +dermestidae +dermestoid +dermic +dermis +dermises +dermitis +dermoblast +dermochelys +dermochrome +dermococcus +dermogastric +dermographia +dermographic +dermography +dermohemal +dermohemia +dermohumeral +dermoid +dermoidal +dermol +dermolysis +dermomycosis +dermoneural +dermoosseous +dermopathic +dermopathy +dermophobe +dermophyte +dermophytic +dermoplasty +dermoptera +dermopteran +dermopterous +dermorhynchi +dermostosis +dermot +dermotropic +dermott +dermovaccine +derms +dermuha +dermutation +dern +derness +dernhelm +dernier +derodidymus +derogated +derogately +derogates +derogating +derogation +derogations +derogative +derogatively +derogator +derogatorily +derogatory +derome +derosa +derosenroll +derossa +derotrema +derotremata +derotremate +derotreme +derouen +derout +deroux +derr +derrell +derren +derrett +derrick +derrickcity +derricking +derrickman +derricks +derride +derrieres +derries +derrik +derrin +derringdo +derringer +derringers +derris +derrises +derro +derry +dersb +dershin +dersi +dertougos +dertrotheca +dertrum +deru +deruaz +derufin +deruinate +derum +deruralize +derust +deruyter +dervis +dervish +dervishes +dervishhood +dervishism +dervishlike +dervoerin +derwent +derwick +dery +deryck +deryni +derzsi +desa +desacralize +desaeuvre +desagneauxa +desagrement +desai +desailly +desales +desalinate +desalinated +desalinates +desalinating +desalination +desalinize +desalinized +desalinizes +desalinizing +desalis +desallemands +desalt +desalted +desalter +desalters +desalting +desalts +desam +desanctis +desand +desano +desantis +desarbo +desarc +desari +desarthe +desaturate +desaturation +desaura +desaurin +desautels +desawa +desaware +desc +descale +descamisada +descanso +descanted +descanter +descanting +descantist +descants +descartes +descas +descaut +descedit +descend +descendable +descendance +descendant +descendants +descended +descendence +descendental +descendents +descender +descenders +descendeth +descendible +descending +descendingly +descends +descension +descensional +descensive +descent +descents +desch +deschamps +deschampsia +deschanel +deschedule +descheduled +descheduling +descher +deschiffart +deschon +descide +descided +descirbes +descisions +descloizite +descom +descombes +descort +descoteaux +descotes +describable +describably +describe +described +describer +describers +describes +describeth +describing +descried +descrier +descrieres +descriers +descries +descript +description +descriptions +descriptive +descriptives +descriptor +descriptors +descriptory +descrive +descry +descrying +desctope +desdemona +dese +desecrated +desecrates +desecrating +desecration +desecrations +desecrator +deseed +desegmented +desegregated +desegregates +deselect +deselected +deselecting +deselects +deseminated +desenchantee +desensitize +desensitized +desensitizer +desensitizes +deseret +desert +desertcenter +deserted +desertedly +desertedness +deserter +deserters +desertful +desertfully +desertic +deserting +desertion +desertions +desertism +desertless +desertlessly +desertlike +desertness +desertress +desertrice +deserts +desertward +deserve +deserved +deservedly +deservedness +deserveless +deserver +deservers +deserves +deserveth +deserving +deservingly +deservings +desex +desexed +desexes +desexing +desexualize +desexualized +desha +deshabille +deshadowed +deshalb +desham +desharnais +deshe +deshee +deshenoys +deshevle +deshiya +deshler +deshonra +deshovie +deshpande +desi +desia +desiable +desica +desiccant +desiccants +desiccate +desiccated +desiccates +desiccating +desiccation +desiccations +desiccative +desiccator +desiccators +desiccatory +desiderant +desiderata +desiderate +desideration +desiderative +desiderio +desight +desightment +design +designable +designand +designate +designated +designates +designating +designation +designations +designative +designator +designators +designatory +designatum +designcd +designed +designedin +designedly +designedness +designedto +designee +designees +designer +designers +designerteam +designful +designfully +designing +designingly +designless +designlessly +designment +designof +designs +designsand +desilets +desilicate +desilicify +desiliconize +desilver +desilvered +desilverize +desilverizer +desimone +desin +desinence +desinent +desipience +desipiency +desipient +desir +desirability +desirable +desirably +desirade +desirae +desire +desireable +desired +desiredly +desiredness +desiredst +desiree +desireful +desireless +desirer +desirers +desires +desirest +desireth +desiri +desiring +desiringly +desirless +desirous +desirously +desirousness +desist +desistance +desisted +desisting +desistive +desists +desitination +desition +desitter +desize +desjardin +desjardins +desjarlais +desk +deskbrain +deskey +deskeys +deskjet +desklike +deskman +deskmate +deskmen +deskpro +desks +deskset +desktop +desktopplant +deslacs +deslandes +deslaurier +deslauriers +deslime +desloges +deslogin +desma +desmachyme +desmacyte +desman +desmanthus +desmarais +desmarestia +desmarets +desmatippus +desmectasia +desmet +desmic +desmid +desmidiaceae +desmidiales +desmidiology +desmine +desmitis +desmocyte +desmocytoma +desmodactyli +desmodium +desmodont +desmodus +desmodynia +desmogen +desmogenous +desmognathae +desmography +desmoid +desmoines +desmology +desmoma +desmomyaria +desmon +desmoncus +desmond +desmonde +desmonds +desmopathy +desmopelmous +desmopexia +desmorrhexis +desmoscolex +desmosis +desmosite +desmothoraca +desmotomy +desmotrope +desmotropic +desmotropism +desmouline +desmoulins +desni +desnoyers +desnuda +desny +desobligeant +desocialize +desolate +desolated +desolately +desolateness +desolates +desolating +desolatingly +desolation +desolations +desolative +desole +desolidify +desonation +desorbay +desoto +desourdy +desoxalate +desoxyn +despair +despaired +despairer +despairful +despairfully +despairing +despairingly +despairs +despatch +despatched +despatcher +despatchers +despatches +despatching +despault +despecialize +despect +despensers +desperacy +desperado +desperadoes +desperadoism +desperados +desperate +desperately +desperation +despicable +despicably +despiciency +despie +despina +despinic +despiration +despire +despisable +despisal +despise +despised +despisedness +despisement +despiser +despisers +despises +despisest +despiseth +despising +despisingly +despite +despited +despiteful +despitefully +despiteous +despiteously +despites +despiting +desplaines +desplanque +despo +despoiled +despoiler +despoilers +despoiling +despoilment +despoilments +despoils +despoliation +desponded +despondence +despondency +despondently +desponder +desponding +despondingly +desponds +desportes +despos +despotat +despotes +despotical +despotically +despoticly +despotism +despotisms +despotist +despotize +despotovich +despots +despres +desprit +despumate +despumation +desq +desquamate +desquamation +desquamative +desquamatory +desqview +desreta +desrochers +desroches +desrosiers +dess +dessa +dessain +dessana +dessau +dessaulya +dessert +desserts +dessertspoon +desset +dessiatine +dessicated +dessicator +dessie +dessil +dessosse +dest +desta +destabilized +destac +destailles +destain +destained +destaing +destaining +deste +destech +destefani +desterilize +desti +destin +destination +destinations +destined +destines +destinezite +destinies +destining +destinism +destinist +destino +destiny +destitute +destitutely +destitution +desto +destour +destrehan +destress +destressed +destrier +destriers +destroy +destroyable +destroyed +destroyer +destroyers +destroyest +destroyeth +destroying +destroyingly +destroys +destruct +destructed +destructible +destructing +destruction +destructions +destructive +destructors +destructs +destry +destuff +destuffing +destuffs +desua +desucration +desuete +desuetudes +desugar +desugaring +desugarize +desulfured +desulphur +desulphurate +desulphurize +desultor +desultorily +desultorious +desultory +desume +deswali +desx +desy +desyatin +desyl +desylva +desynapsis +desynaptic +desynonymize +detachable +detachably +detached +detachedly +detachedness +detacher +detachers +detaches +detaching +detachment +detachments +detachs +detail +detailed +detailedly +detailedness +detailer +detailers +detailing +detailism +detailist +detaille +details +detain +detainable +detainal +detained +detainee +detainees +detainer +detainers +detaining +detainingly +detainment +detains +detalee +detar +detassel +detat +detax +detchard +detect +detectable +detectably +detectaphone +detected +detecter +detecters +detecti +detectible +detecting +detection +detections +detective +detectives +detectivism +detector +detectors +detects +detectwhat +detektivi +detemple +detenant +detentes +detentive +detents +detenu +deter +deterge +deterged +detergence +detergency +detergents +deterger +deterges +detergible +detering +deteriorated +deteriorates +deteriorator +deteriorism +deteriority +determ +determent +determents +determinable +determinably +determinacy +determinant +determinants +determinate +determinator +determine +determined +determinedly +determiner +determiners +determines +determining +determinism +determinist +determinists +determinoid +deterration +deterrence +deterrents +deterrer +deterrers +deters +detersion +detersive +detersively +detest +detestable +detestably +detestations +detested +detester +detesters +detesting +detests +deth +dethronable +dethrone +dethroned +dethronement +dethroner +dethrones +dethroning +dethyroidism +deti +detikhwe +detin +detinet +detinue +detisski +detlef +detlev +detmax +detmers +detonate +detonated +detonates +detonating +detonation +detonations +detonative +detonator +detonators +detonize +detoo +detorsion +detort +detortion +detou +detoured +detouring +detournement +detours +detoxicant +detoxicate +detoxicated +detoxicating +detoxication +detoxicator +detoxified +detoxifier +detoxifies +detoxifying +detr +detracted +detracter +detracting +detractingly +detraction +detractions +detractive +detractively +detractors +detractory +detractress +detracts +detrain +detrained +detraining +detrainment +detrains +detre +detribalize +detribalized +detrick +detriment +detrimental +detriments +detrital +detrited +detrition +detritus +detroi +detroit +detroiter +detroitlakes +detrude +detruire +detruncate +detruncation +detrusion +detrusive +detrusor +detskie +detstvo +dettect +dettori +dettrey +detubation +detumescence +detumescent +detune +detur +detweiler +deuced +deucedly +deuces +deuchar +deucing +deuel +deug +deugau +deugo +deuk +deul +deuniting +deuolt +deurbanize +deurell +deuren +deuri +deustche +deuteranomal +deuteranope +deuteranopia +deuteranopic +deuteric +deuteride +deuterocone +deuteroconid +deuterodome +deuterogamy +deuterogenic +deuteronomic +deuteronomy +deuterons +deuteropathy +deuteroplasm +deuteroprism +deuteroscopy +deuterostoma +deuterotoky +deuterotype +deuterozooid +deutobromide +deutomala +deutomalal +deutomalar +deutomerite +deuton +deutonephron +deutonymph +deutonymphal +deutoplasm +deutoplasmic +deutoplastic +deutoscolex +deutoxide +deutsch +deutsche +deutscher +deutschland +deutschmann +deutzia +deux +deva +devachan +devadasi +deval +devall +devallier +devallsbluff +devaloka +devalorize +devaluate +devaluated +devaluates +devaluating +devaluation +devaluations +devalue +devalued +devalues +devaluing +devan +devanagari +devance +devane +devaporate +devaporation +devarennes +devargas +devas +devast +devastated +devastates +devastating +devastation +devastations +devastative +devastator +devastators +devastavit +devaste +devaster +devata +devault +devchar +deveau +devein +deveined +deveining +deveins +devel +develin +develop +developable +develope +developed +developement +developer +developers +developes +developing +developist +developm +development +developments +developoid +develops +devenney +devenny +devens +devenyi +devenyns +devera +deveraux +devere +devereau +devereaux +devereux +deveridge +deverill +devers +devery +devest +devette +devex +devexity +devgon +devi +deviability +deviable +deviance +deviances +deviancies +deviancy +deviant +deviants +deviate +deviated +deviates +deviating +deviation +deviational +deviationism +deviationist +deviations +deviative +deviator +deviators +deviatory +device +deviceful +devicefully +devices +devide +devienne +devijver +devil +devilbird +devildom +deviled +deviler +deviless +devilet +devilfish +devilhood +deviling +devilish +devilishly +devilishness +devilism +devilize +devilkin +deville +devilled +devillike +devilling +devilman +devilmaycare +devilment +devilments +devilmonger +devilries +devilry +devils +devilselbow +devilship +devilslake +devilstower +deviltries +deviltry +devilward +devilwise +devilwood +devilworship +devily +devin +devina +devincenzi +devine +devinne +devinoni +devious +deviously +deviousness +devirginate +devirginator +devirilize +devis +devisable +devisal +devisals +deviscerate +devise +devised +devisees +deviser +devisers +devises +deviseth +devising +devisings +devisor +devisors +devitalize +devitalized +devitalizes +devitalizing +devitaminize +devitedness +devito +devitrify +devlin +devnetrouter +devnuhl +devo +devocalize +devoe +devoice +devoicing +devoir +devoirs +devol +devola +devolatilize +devolute +devolutive +devolved +devolvement +devolvements +devolves +devolving +devon +devondra +devonian +devonic +devonite +devonna +devonne +devonport +devonshire +devora +devorative +devore +devos +devosa +devoss +devota +devote +devoted +devotedly +devotedness +devoteeism +devotees +devotement +devoter +devotes +devoting +devotion +devotional +devotionally +devotionate +devotionist +devotions +devouges +devour +devourable +devoured +devourer +devourers +devouress +devourest +devoureth +devouring +devouringly +devourment +devours +devout +devoutless +devoutlessly +devoutly +devoutness +devow +devpad +devpoint +devrahall +devreeze +devries +devriess +devriez +devroye +devry +devulcanize +devulgarize +devuska +devvax +devvel +dewaeme +dewaere +dewalalewada +dewali +dewalt +dewan +dewanee +dewanship +dewardes +dewart +dewater +dewaterer +dewatering +dewax +dewaxed +dewaxes +dewayne +dewbeam +dewberries +dewberry +dewclaw +dewclawed +dewclaws +dewcup +dewdamp +dewdneys +dewdropper +dewdrops +dewed +deweese +dewer +dewes +dewey +deweylite +deweyville +dewfall +dewfalls +dewflower +dewhurst +dewi +dewier +dewiest +dewily +dewiness +dewing +dewit +dewitt +dewitte +dewittville +dewiya +dewlap +dewlapped +dewlaps +dewless +dewlight +dewlike +dewoi +dewoin +dewolf +dewolfe +dewolff +dewool +deworm +dewpicked +dewret +dews +dewtry +dewwingdo +dewworm +dewyrose +dexedrine +dexes +dexies +dexiocardia +dexiotrope +dexiotropic +dexiotropism +dexiotropous +dexter +dextercity +dexterical +dexterous +dexterously +dextrad +dextral +dextrality +dextrally +dextran +dextraural +dextrin +dextrinase +dextrinate +dextrinize +dextrinous +dextrins +dextro +dextroaural +dextrocardia +dextrocular +dextrogyrate +dextrogyrous +dextrolactic +dextropinene +dextrorotary +dextrorsal +dextrorse +dextrorsely +dextrosazone +dextroses +dextrosuria +dextrotropic +dextrously +dextrousness +dextry +deyah +deyburst +deyers +deyhouse +deyl +deyna +deynorm +deyoung +deyship +deywoman +dezaley +dezco +dezh +dezinc +dezincation +dezincify +dezoete +dezso +dezu +dezymotize +dfault +dfci +dffff +dfiferential +dfola +dfolder +dftnafix +dftnic +dftnmisc +dftnsqsh +dftsrv +dgernesiais +dghwede +dgis +dgoa +dgrtp +dgruyter +dgsc +dhabb +dhahran +dhai +dhaiso +dhak +dhaka +dhalagiri +dhaliwal +dhalla +dhalwangu +dhamar +dhamnoo +dhan +dhanagari +dhangar +dhangon +dhangu +dhangumi +dhanis +dhanka +dhanki +dhankuta +dhansukh +dhanuk +dhanusa +dhanush +dhanvantari +dhanvar +dhanvinder +dhanwar +dhar +dharana +dharani +dharawaal +dharawal +dharba +dharmadasa +dharmakaya +dharmapuri +dharmas +dharmasmriti +dharmasutra +dharmic +dharmsala +dharna +dharwar +dhataki +dhati +dhatki +dhaura +dhauri +dhaussy +dhava +dhaw +dhawal +dhawalagiri +dhayyi +dhcp +dhebang +dhed +dhedi +dhegiha +dhein +dhekaru +dhelki +dheneb +dheran +dheri +dhery +dhexe +dhiegh +dhillon +dhimal +dhimba +dhimiter +dhimorong +dhingra +dhir +dhiraj +dhiren +dhirendra +dhiresh +dhitoro +dhlamini +dhmc +dhobi +dhocolo +dhodhri +dhodia +dhogaryali +dhole +dholes +dholewari +dholubi +dholuo +dhom +dhoni +dhoon +dhopadhola +dhopaluo +dhore +dhotel +dhoti +dhotis +dhoul +dhow +dhowari +dhows +dhruva +dhry +dhrymes +dhrystone +dhrystones +dhuak +dhuga +dhule +dhunchee +dhunchi +dhundia +dhungri +dhungula +dhupar +dhuri +dhurra +dhuru +dhurwa +dhuwal +dhuwala +dhyal +dhyana +diabasic +diabe +diabelli +diabetic +diabetics +diabetogenic +diabetometer +diablerie +diablery +diablo +diabo +diabolarch +diabolarchy +diabolatry +diabolepsy +diaboleptic +diabolic +diabolical +diabolically +diabolify +diabolism +diabolist +diabolize +diabolo +diabologic +diabological +diabology +diabolology +diabolos +diabrosis +diabrotic +diabrotica +diabu +diacanthous +diacaustic +diacetamide +diacetate +diacetic +diacetin +diacetine +diacetonuria +diaceturia +diacetyl +diacetylene +diachenko +diachoretic +diachylon +diachylum +diacid +diaclase +diaclasis +diaclastic +diacle +diaclinal +diacodion +diacoele +diacoelia +diaconal +diaconate +diaconia +diaconicon +diaconicum +diaconis +diaconu +diacope +diacoustics +diacranteric +diacrisis +diacritics +diacromyodi +diact +diactin +diactinal +diactinic +diactinism +diadelphia +diadelphian +diadelphic +diadelphous +diadem +diadema +diadematoida +diademed +diadems +diaderm +diadermic +diadic +diadoche +diadochi +diadochian +diadochite +diadromous +diadumenus +diaene +diaereses +diaeresis +diaeretic +diaetetae +diag +diaga +diagb +diagc +diagd +diagenesis +diagenetic +diageotropic +diaghilev +diagilev +diaglyph +diaglyphic +diagnoseable +diagnosed +diagnosing +diagnosis +diagnostic +diagnostics +diagometer +diagonal +diagonale +diagonality +diagonalize +diagonally +diagonals +diagonalwise +diagonic +diagostino +diagram +diagramed +diagraming +diagrammable +diagrammed +diagrammer +diagrammers +diagrammeter +diagramming +diagrams +diagraph +diagraphic +diagraphical +diagraphics +diagraphs +diagredium +diagrydium +diagsoft +diaguitas +diaguite +diahann +diahnne +diaho +diahoue +diakhanke +diakinesis +diakkanke +dial +diala +dialcohol +dialdehyde +dialect +dialectal +dialectalize +dialectally +dialectic +dialectical +dialectician +dialecticism +dialecticize +dialectics +dialectology +dialector +dialects +dialed +dialegmenos +dialekh +dialekts +dialer +dialerp +dialers +dialin +dialing +dialings +dialist +dialister +dialists +dialkyl +dialkylamine +diallage +diallagic +diallagite +diallagoid +dialled +diallel +diallelon +diallelus +dialler +diallers +dialling +diallings +diallist +diallo +diallyl +dialo +dialog +dialoger +dialogged +dialogic +dialogical +dialogically +dialogism +dialogist +dialogistic +dialogite +dialogize +dialogos +dialogs +dialogscript +dialogue +dialogued +dialoguer +dialogues +dialoguing +dialonian +dialonke +dials +dialtone +dialup +dialuric +dialycarpous +dialypetalae +dialyse +dialysed +dialyser +dialyses +dialystelic +dialystely +dialytic +dialytically +dialyzable +dialyzate +dialyzation +dialyzator +dialyze +dialyzed +dialyzer +dialyzes +dialyzing +diam +diama +diamagnet +diamala +diamant +diamante +diamantidou +diamantine +diamantoid +diamare +diamb +diambic +diamere +diameter +diameters +diametral +diametrally +diametric +diametrical +diamicton +diamide +diamidogen +diamine +diaminogen +diaminogene +diammine +diammonium +diamond +diamondback +diamondbacks +diamonded +diamonding +diamondize +diamondlike +diamondpoint +diamonds +diamondville +diamondwise +diamondwork +diamorphine +diamylose +dian +diana +dianamarale +dianbao +diancecht +diander +diandra +diandria +diandrian +diandrous +diane +dianemarie +dianetics +diang +dianil +dianilid +dianilide +dianisidin +dianisidine +dianite +dianka +diann +dianna +dianne +diannne +dianodal +dianoetic +dianoetical +dianthaceae +dianthera +dianthus +dianthuses +diapalma +diapase +diapasm +diapason +diapasonal +diapasons +diapause +diapedesis +diapedetic +diapensia +diapente +diaper +diapered +diapering +diapers +diaphane +diaphaneity +diaphanie +diaphanotype +diaphanous +diaphanously +diaphany +diaphone +diaphonia +diaphonic +diaphonical +diaphonics +diaphony +diaphoresis +diaphoretic +diaphoretics +diaphorite +diaphote +diaphragmal +diaphragms +diaphtherin +diaphysial +diaphysis +diaplasma +diaplex +diaplexal +diaplexus +diapnoic +diapnotic +diapophysial +diapophysis +diaporesis +diaporthe +diapositive +diapsid +diapsida +diapsidan +diapyesis +diapyetic +diarbekir +diarch +diarchial +diarchic +diarchy +diarcy +diareg +diarhemia +diarial +diarian +diaries +diarist +diaristic +diarists +diarize +diarra +diarrhea +diarrheal +diarrheas +diarrheic +diarrhetic +diarrhoea +diarrhoeal +diarrhoeic +diarsenide +diarthric +diarthrodial +diarthrosis +diarticular +diary +dias +diaschisis +diaschisma +diaschistic +diascia +diascope +diascopy +diascord +diascordium +diaskeaus +diaskeuasis +diaskeuast +diaspidinae +diaspidine +diaspinae +diaspine +diaspirin +diaspora +diasporas +diaspore +diastaltic +diastase +diastasic +diastasis +diastataxic +diastataxy +diastatic +diastem +diastema +diastematic +diaster +diastole +diastoles +diastolic +diastomatic +diastral +diastrophe +diastrophic +diastrophism +diastrophy +diasynthesis +diasyrm +diatessaron +diathermacy +diathermal +diathermancy +diathermic +diathermies +diathermize +diathermous +diathesic +diathetic +diatoma +diatomaceae +diatomacean +diatomaceoid +diatomales +diatomeae +diatomean +diatomicity +diatomin +diatomist +diatomite +diatomous +diatoms +diatonical +diatonically +diatonous +diatoric +diatreme +diatribes +diatribist +diatropic +diatropism +diatrs +diatryma +diatta +diau +diaulic +diaulos +diavolo +diax +diaxial +diaxon +diaz +diazenithal +diazepam +diazeuctic +diazeuxis +diazide +diazine +diazo +diazoamine +diazoamino +diazoate +diazobenzene +diazoic +diazoimide +diazoimido +diazole +diazoma +diazomethane +diazonium +diazotate +diazotic +diazotizable +diazotize +diazotype +dibabaon +dibabawon +dibagat +dibaj +dibase +dibasic +dibasicity +dibatag +dibatis +dibba +dibbed +dibber +dibbers +dibbing +dibbingley +dibbled +dibbler +dibblers +dibbles +dibbling +dibbs +dibbuk +dibbukim +dibbuks +dibenedetto +dibenzoyl +dibenzyl +dibergi +diberti +dibhole +dibiasu +diblaim +diblastula +diblath +dibler +dibo +diboll +dibombari +dibon +dibongad +dibono +diborate +diboum +dibrach +dibranch +dibranchia +dibranchiata +dibranchiate +dibranchious +dibre +dibri +dibrom +dibromid +dibromide +dibs +dibstone +dibutyrate +dibutyrin +dicacity +dicacodyl +dicaeidae +dicaeology +dicalcic +dicalcium +dicamay +dicapprio +dicaprio +dicarbonate +dicarbonic +dicarboxylic +dicarlo +dicarpellary +dicaryon +dicaryophase +dicaryophyte +dicaryotic +dicast +dicastery +dicastic +dicasts +dicata +dicatalectic +dicatalexis +diccico +diccionario +diccon +dice +diceboard +dicebox +dicecup +diced +dicellate +diceman +dicenta +dicentra +dicentrine +dicenzo +dicephalism +dicephalous +dicephalus +diceplay +dicer +diceras +diceratidae +dicerion +dicerous +dicers +dices +dicetyl +dicey +dich +dichapetalum +dichas +dichasial +dichasium +dichastic +dichelyma +dichloramine +dichocarpism +dichocarpous +dichogamous +dichogamy +dichopodial +dichoptic +dichord +dichoree +dichotic +dichotomal +dichotomic +dichotomies +dichotomist +dichroic +dichroiscope +dichroism +dichroite +dichroitic +dichromasy +dichromat +dichromate +dichromatic +dichromatism +dichromic +dichromism +dichronous +dichrooscope +dichroous +dichroscope +dichroscopic +dichter +diciembre +dicier +diciest +dicing +dick +dickard +dicken +dickens +dickenses +dickensian +dickensiana +dickenson +dicker +dickered +dickering +dickers +dickerson +dickersonrun +dickeson +dickeybird +dickeys +dickeyville +dickford +dickhead +dickie +dickies +dickinson +dickinsonite +dickler +dickless +dickman +dicko +dickon +dicks +dicksen +dickson +dicksonia +dickstein +dickus +dickuth +dicky +diclinic +diclinism +diclinous +diclytra +dico +dicoccous +dicodeine +dicoelious +dicolic +dicolon +dicondylian +dicostanzo +dicot +dicots +dicotyl +dicotyledons +dicotyles +dicotylidae +dicotylous +dicoumarin +dicousu +dicranaceae +dicranaceous +dicranoid +dicranterian +dicranum +dicrostonyx +dicrotal +dicrotic +dicrotism +dicrotous +dicruridae +dict +dicta +dictaen +dictamnus +dictaphone +dictaphones +dictate +dictated +dictates +dictating +dictatingly +dictation +dictational +dictations +dictative +dictator +dictators +dictatorship +dictatory +dictatress +dictatrix +dictature +dicthash +dictic +dictional +dictionalist +dictionaries +dictionary +dictions +dictograph +dictronics +dictu +dictums +dictynid +dictynidae +dictyogen +dictyogenous +dictyoid +dictyonema +dictyonina +dictyonine +dictyophora +dictyopteran +dictyopteris +dictyosiphon +dictyosome +dictyostele +dictyostelic +dictyota +dictyotaceae +dictyotales +dictyotic +dictyoxylon +dicyanide +dicyanine +dicyanogen +dicycle +dicyclic +dicyclica +dicyclist +dicyema +dicyemata +dicyemid +dicyemida +dicyemidae +dicygotic +dicynodon +dicynodont +dicynodontia +dida +didache +didachist +didactical +didactically +didactician +didacticism +didacticity +didactics +didactive +didacts +didactyl +didactylism +didactylous +didani +didapper +didar +didascalar +didascaliae +didascalic +didascalos +didascaly +didayi +didder +diddest +diddled +diddler +diddlers +diddles +diddley +diddling +diddy +dide +didei +didelph +didelphia +didelphian +didelphic +didelphid +didelphidae +didelphine +didelphis +didelphoid +didelphous +didelphyidae +didepsid +didepside +didessa +didi +dididae +didie +didier +didies +didigaru +didigavu +didine +didinga +didingamurle +didinium +didipas +didle +didn +didna +didnt +dido +didoes +didoginukh +didoi +didona +didont +didos +didra +didrachma +didrachmal +didrah +didriksen +didrikson +didromy +didst +diduch +diduction +diductor +didunculidae +didunculinae +didunculus +didus +didy +didylowski +didym +didymate +didymia +didymitis +didymium +didymoid +didymolite +didymous +didymus +didynamia +didynamian +didynamic +didynamous +didynamy +didyr +dieasl +dieb +dieback +diebacks +diebougou +diec +dieckhoff +dieckvoss +diectasis +diective +died +diederichs +diedral +diedric +diedrich +diee +diefendorf +diego +dieguen +diegueno +diehands +diehards +diehl +dieing +diekirch +diekman +dieko +dielectrics +dielike +diello +dielman +dielytra +diem +diemaker +diemakers +diemaking +diembering +diemel +diemen +dien +diena +diencephalic +diencephalon +diene +diener +dienstes +diep +dieplinger +dier +dierdre +diereses +dieresis +diergaardt +dieri +dierk +dierkes +dierking +dierkop +dierks +diersch +diervilla +dies +diese +diesel +dieselize +diesels +diesem +dieser +dieses +diesing +diesinker +diesinking +diesis +diessl +diest +diestel +diestock +diestocks +diestro +diet +dietal +dietarian +dietary +dieted +dieter +dieterich +dieterle +dieters +dietersun +dietetically +dietetics +dietetist +dieth +diethelm +diethyl +diethylamide +diethylamine +dietic +dieticians +dietics +dieties +dietine +dieting +dietist +dietitian +dietitians +dietlinde +dietmar +dietotherapy +dietotoxic +dietrich +dietrichite +dietrichson +dietro +diets +dietsch +dietzeite +dieu +dieudonne +dieuwertje +diewise +dieyerie +diez +diezeugmenon +difalco +difda +diference +diferrion +diff +diffa +diffame +diffee +differ +differed +differen +difference +differenced +differences +differencing +different +differentia +differentiae +differential +differently +differents +differer +differers +differeth +differing +differingly +differnce +differs +difficile +difficult +difficulties +difficultly +difficultto +difficulty +diffidation +diffide +diffidence +diffidently +diffie +diffinity +diffloth +diffluence +diffluent +difflugia +difform +difformed +difformity +diffracted +diffraction +diffractions +diffractive +diffracts +diffrangible +diffring +diffs +diffugient +diffusate +diffuse +diffused +diffusedly +diffusely +diffuseness +diffuser +diffusers +diffuses +diffusibly +diffusimeter +diffusing +diffusion +diffusionism +diffusionist +diffusions +diffusively +diffusivity +diffusor +diffusors +difilippo +diformin +difrancesco +digaetano +digal +digallate +digallic +digametic +digamist +digamma +digammated +digammic +digamous +digamy +digaro +digart +digaru +digastric +digby +digenea +digeneous +digenesis +digenetic +digenetica +digenic +digenja +digenous +digenova +digeny +digerent +digeronimo +digest +digestant +digested +digestedly +digestedness +digester +digesters +digestibly +digesting +digestional +digestively +digestment +digestor +digestors +digests +diggable +digged +diggedst +digger +diggers +diggertal +digges +diggeth +digging +diggings +diggins +diggle +diggs +dight +dighted +dighter +dighton +dights +digiacomo +digiboard +digicomp +digiday +digil +digilio +digimarc +digini +digiorgio +digit +digital +digitalein +digitalin +digitalism +digitalize +digitalized +digitalizing +digitally +digitals +digitaria +digitated +digitately +digitation +digitiform +digitigrada +digitigrade +digitinerved +digitiser +digitization +digitize +digitized +digitizer +digitizes +digitizing +digitogenin +digitonin +digitorium +digitoxin +digitoxose +digits +digitule +digitus +digladiate +digladiation +digladiator +digley +diglossia +diglot +diglots +diglottic +diglottism +diglottist +diglucoside +diglyceride +diglyph +diglyphic +digmeat +dignam +digneris +dignified +dignifiedly +dignifies +dignifying +dignitarial +dignitarian +dignitaries +dignities +dignity +digo +digoel +digoneutic +digoneutism +digonoporous +digonous +digor +digott +digraph +digraphic +digraphs +digredience +digrediency +digredient +digressed +digresses +digressing +digressingly +digression +digressional +digressions +digressive +digressively +digressory +digs +digu +diguanide +digue +diguen +digul +digut +digynia +digynian +digynous +dihalide +dihalo +dihalogen +dihedrals +dihedron +dihexagonal +dihexahedral +dihexahedron +dihina +dihn +dihybrid +dihybridism +dihydrate +dihydrated +dihydrazone +dihydric +dihydride +dihydrite +dihydrofolic +dihydrogen +dihydrol +dihydroxy +dihysteria +diiamb +diiambus +diila +diiodide +diiodo +diiodoform +diiorio +diipenates +diipolia +diir +diirty +diisatogen +dijama +dije +dijit +dijkstra +dijkstras +diju +dijudicate +dijudication +dika +dikage +dikaitis +dikamali +dikanka +dikaryon +dikaryophase +dikaryophyte +dikaryotic +dikayu +dikdik +dikdiks +dike +diked +dikegrave +dikele +dikens +diker +dikereeve +dikers +dikes +dikeside +diketo +diketone +dikhil +diking +dikkens +dikkop +dikku +diklah +diklic +diko +dikolo +dikota +dikovina +diktyonite +diku +dikume +dikuta +dikwa +dila +dilacerate +dilaceration +dilallo +dilambdodont +dilamination +dilantin +dilapidated +dilapidating +dilapidation +dilapidator +dilatability +dilatable +dilatably +dilatancy +dilatant +dilatants +dilatate +dilatations +dilatative +dilatator +dilatatory +dilated +dilatedly +dilatedness +dilater +dilaters +dilates +dilating +dilatingly +dilation +dilations +dilative +dilatometer +dilatometric +dilatometry +dilator +dilatorily +dilatoriness +dilators +dilaudid +dilautbadjao +dilava +dilber +dildano +dildo +dildoe +dildoes +dildos +dilea +dilean +dilection +dilemi +dilemite +dilemma +dilemmas +dilemmatic +dilemmatical +dilemmic +dilen +dileo +dilettant +dilettantes +dilettanti +dilettantish +dilettantism +dilettantist +dilg +dili +dilian +diligence +diligency +diligent +diligentia +diligently +diligentness +dilinja +dilip +dilithium +dilke +dilker +dilkie +dill +dillabough +dillane +dillard +dillaway +dillcity +dille +dillen +dillenia +dilleniaceae +dilleniad +diller +dillert +dilley +dilli +dillier +dillies +dilligrout +dilliner +dilling +dillinger +dillingham +dillings +dillinja +dillion +dillman +dillo +dillon +dillonbeach +dillonvale +dillow +dilloway +dills +dillsboro +dillsburg +dillseed +dillsome +dilltown +dillue +dilluer +dillusion +dillweed +dillwyn +dilly +dillydallied +dillydallier +dillydallies +dillydally +dillyman +dilman +dilo +dilogy +diloreto +dilpreet +dilsey +dilson +dilucidation +diluents +diluted +dilutedly +dilutedness +dilutee +dilutely +diluteness +dilutent +diluter +diluters +dilutes +diluting +dilutions +dilutive +dilutor +dilutors +diluvia +diluvial +diluvialist +diluvian +diluvianism +diluvion +diluvium +dilvo +dilworth +dilyana +dilyovska +dilys +dima +dimacs +dimagnesic +dimako +dimanche +dimanganion +dimanganous +dimantadine +dimapur +dimaris +dimartino +dimarzo +dimas +dimasa +dimashq +dimastigate +dimatis +dimbambang +dimber +dimberdamber +dimble +dimbokro +dimbong +dimbovita +dime +dimebox +dimech +dimensible +dimension +dimensional +dimensioned +dimensioning +dimensions +dimensive +dimeo +dimer +dimera +dimeran +dimercuric +dimercurion +dimercury +dimeric +dimeride +dimerism +dimerization +dimerlie +dimerous +dimers +dimes +dimetallic +dimeter +dimethoxy +dimetra +dimetria +dimetric +dimeyed +dimholt +dimication +dimichnet +dimidiate +dimidiation +dimili +dimillo +diminish +diminishable +diminished +diminisher +diminishes +diminishing +diminishment +diminuendo +diminuendos +diminutal +diminute +diminution +diminutions +diminutival +diminutively +diminutivize +dimir +dimishing +dimisi +dimiss +dimission +dimissorial +dimissory +dimit +dimitar +dimiter +dimities +dimitra +dimitri +dimitriadis +dimitrije +dimitrijevic +dimitrios +dimitris +dimitrov +dimitrova +dimitry +dimittis +dimity +dimka +dimli +dimly +dimmable +dimmed +dimmedness +dimmer +dimmers +dimmest +dimmet +dimming +dimmish +dimmitt +dimmock +dimmuk +dimmy +dimna +dimnah +dimness +dimo +dimock +dimolecular +dimon +dimonah +dimondale +dimoric +dimorph +dimorphic +dimorphism +dimorphisms +dimorphous +dimotiki +dimout +dimouts +dimpled +dimplement +dimples +dimpling +dimply +dimps +dimpsy +dimrill +dims +dimsal +dimsdale +dimsighted +dimsisi +dimster +dimtim +dimu +dimuga +dimuk +dimwar +dimwit +dimwits +dimwitted +dimyaria +dimyarian +dimyaric +dina +dinah +dinaites +dinajpur +dinalic +dinalt +dinalupinan +dinamode +dinantian +dinaoro +dinaphthyl +dinapoli +dinar +dinarchy +dinaric +dinars +dinarzade +dinder +dindiga +dindje +dindle +dindymene +dindymus +dine +dined +dinehart +dineke +dinelli +diner +dinergate +dineric +dinero +dineros +diners +dines +dinesh +dinette +dinettes +dineuric +dingaka +dingando +dingar +dingbat +dingbats +dingdong +dingdonged +dingdongs +dinge +dinged +dingee +dingell +dinges +dingess +dingey +dingeys +dinghee +dinghies +dingi +dingier +dingiest +dingily +dinginess +dinging +dingiri +dingis +dingkom +dingla +dingle +dingleberry +dinglebird +dingledangle +dingleman +dingles +dingley +dingly +dingman +dingmaul +dingo +dingoes +dings +dinguiray +dinguiraye +dingus +dinguses +dingwall +dingzhou +dinh +dinhabah +dinheiro +dinhhoa +dinic +dinica +dinical +dinichthys +dining +dinit +dinitrate +dinitril +dinitrile +dinitro +diniz +dinje +dink +dinka +dinkas +dinkel +dinker +dinkey +dinkeys +dinkier +dinkies +dinkiest +dinking +dinku +dinkum +dinky +dinler +dinmont +dinn +dinned +dinner +dinnerless +dinnerly +dinners +dinnerville +dinnerware +dinnery +dinnie +dinnin +dinning +dinny +dino +dinobryon +dinoceras +dinocerata +dinoceratan +dinoceratid +dinomic +dinomys +dinophilea +dinophilus +dinophyceae +dinornis +dinornithes +dinornithic +dinornithid +dinornithine +dinornithoid +dinos +dinosaur +dinosauria +dinosaurian +dinosaurs +dinothere +dinotheres +dinotherian +dinotherium +dinr +dins +dinsdale +dinse +dinsmore +dinsome +dinted +dinting +dintless +dints +dinu +dinuba +dinuccio +dinulescu +dinus +dinwiddie +diobely +diobol +diocese +dioceses +diocisian +diocletian +dioctahedral +dioctophyme +diodes +diodia +diodio +diodon +diodont +diodontidae +dioecia +dioecian +dioecious +dioeciously +dioecism +dioecy +dioestrous +dioestrum +dioestrus +diogen +diogene +diogenean +diogenes +diogenic +diogenite +diogo +dioi +dioicous +diol +diola +diolagusilay +diolefin +diolefinic +diomede +diomedea +diomedeidae +diomedes +diomou +dion +dionaea +dionaeaceae +dione +dionews +dionicio +dionis +dionise +dionisie +dionisio +dionkor +dionne +dionym +dionymal +dionysia +dionysiac +dionysiacal +dionysius +dionysos +dioon +diop +diopsidae +diopside +diopsis +dioptase +diopters +dioptidae +dioptograph +dioptometer +dioptometry +dioptoscopy +dioptra +dioptral +dioptrate +dioptre +dioptric +dioptrical +dioptrically +dioptrics +dioptrometer +dioptrometry +dioptroscopy +dioptry +dior +dioramas +dioramic +diordinal +diore +diorism +dioristic +diorites +dioritic +diorthosis +diorthotic +dios +dioscorea +dioscorein +dioscorine +dioscuri +dioscurian +diosdado +diose +diosma +diosmin +diosmose +diosmosis +diosmotic +diosphenol +diospyraceae +diospyros +diossogou +diota +diotic +diotima +diotocardia +diotomite +diotrephes +diouf +dioula +dioulasso +dioum +diourbel +diovular +dioxane +dioxide +dioxides +dioxids +dioxime +dioxin +dioxindole +dioxy +dipac +dipace +dipala +dipankor +dipaolo +diparentum +dipartimento +dipartite +dipartition +dipaschal +dipasquale +dipendra +dipentene +dipeptid +dipeptide +diperna +dipesto +dipetalous +dipetto +dipg +diphase +diphaser +diphasic +diphead +diphenol +diphenyl +diphenylene +diphone +diphosgene +diphosphate +diphosphide +diphosphoric +diphrelatic +diphtherial +diphtherian +diphtheric +diphtheritic +diphtheritis +diphtheroid +diphthongal +diphthongic +diphthongize +diphthongs +diphtongs +diphycercal +diphycercy +diphyes +diphygenic +diphyletic +diphylla +diphylleia +diphyllous +diphyodont +diphyozooid +diphysite +diphysitism +diphyzooid +dipicrate +dipicrylamin +dipierro +dipietro +dipl +diplacanthus +diplacusis +dipladenia +diplan +diplanar +diplanetic +diplanetism +diplantidian +diplarthrism +diplarthrous +diplasiasmus +diplasic +diplasion +diplayed +diplegia +dipleura +dipleural +diplex +diploblastic +diplocardia +diplocardiac +diplocarpon +diplocephaly +diplococcal +diplococcic +diplococcoid +diplococcus +diploconical +diplocoria +diplodia +diplodocus +diplodus +diploe +diploetic +diplogenesis +diplogenetic +diplogenic +diplograph +diplographic +diplography +diplohedral +diplohedron +diploic +diploidic +diploidion +diploids +diplois +diplokaryon +diplomacies +diplomacy +diplomas +diplomat +diplomate +diplomates +diplomatic +diplomatical +diplomatics +diplomatique +diplomatism +diplomatist +diplomatists +diplomatize +diplomats +diplomyelia +diplonema +diploneural +diplont +diplophase +diplophyte +diplopia +diplopic +diploplacula +diplopod +diplopoda +diplopodic +diploptera +diplopterous +diplopteryga +diplopy +diplosis +diplosome +diplosphenal +diplosphene +diplostemony +diplotaxis +diplotegia +diplotene +diplotocus +diplozoon +diplumbic +dipneumona +dipneumones +dipneumonous +dipneustal +dipneusti +dipnoan +dipnoi +dipnoid +dipnoous +dipode +dipodic +dipodidae +dipodomyinae +dipodomys +dipody +dipolar +dipolarize +dipole +dipoles +dipolog +diporpa +dipotassic +dipotassium +dippable +dipped +dipper +dipperful +dippers +dippeth +dippier +dippiest +dipping +dippings +dippy +diprima +diprimary +diprismatic +dipropargyl +dipropyl +diprotodon +diprotodont +dips +dipsacaceae +dipsacaceous +dipsaceae +dipsaceous +dipsacus +dipsadinae +dipsas +dipsetic +dipsey +dipso +dipsomania +dipsomaniac +dipsomaniacs +dipsosaurus +dipsosis +dipstick +dipsticks +dipt +dipter +diptera +dipteraceae +dipteraceous +dipterad +dipteral +dipteran +dipterist +dipterocarp +dipterology +dipteron +dipteros +dipterous +dipteryx +diptote +diptyca +diptych +diptychs +dipus +diput +diputados +dipware +dipygus +dipylon +dipyre +dipyrenous +dipyridyl +diquero +diquiyo +dira +dirac +diradmin +diraj +dirasha +dirayta +dirblocks +dirbm +dirca +dircaean +dirce +dird +dirdum +dire +direchlets +direcly +direct +directable +directed +directer +directest +directeth +directeur +directfax +directing +direction +directional +directions +directitude +directive +directively +directives +directivity +directly +directlyfrom +directlyto +directness +directoire +director +directoral +directorates +directorie +directories +directors +directorship +directory +directress +directs +directx +direful +direfully +direfulness +direkte +direktor +direly +dirempt +diremption +direness +direption +direr +direst +diretto +dirextx +dirge +dirgeful +dirgelike +dirgeman +dirges +dirgler +dirgo +dirham +dirhams +dirhem +diri +dirian +dirichletian +diride +dirienzo +dirigent +dirigibility +dirigible +dirigibles +dirigomotor +dirikis +diriko +diriku +dirilten +dirim +diriment +dirin +diriya +dirk +dirked +dirking +dirks +dirksen +dirku +dirl +dirlewanger +dirlock +dirma +dirmap +dirndl +dirndls +diro +dirosario +dirprefix +dirrane +dirrectory +dirrim +dirs +dirt +dirtbird +dirtboard +dirten +dirtied +dirtier +dirties +dirtiest +dirtily +dirtiness +dirtplate +dirts +dirty +dirtying +dirtyread +diruption +dirwali +dirwide +dirx +dirya +diryata +diryawa +disa +disabilities +disability +disable +disabled +disablement +disabler +disablers +disables +disabling +disabusal +disabuse +disabused +disabuses +disabusing +disaccharose +disaccord +disaccordant +disaccustom +disacidify +disacquaint +disadjust +disadorn +disadvance +disadvantage +disadventure +disadvise +disaffect +disaffected +disaffecting +disaffection +disaffects +disaffiliate +disaffirm +disafforest +disaggregate +disagio +disagree +disagreeable +disagreeably +disagreed +disagreeing +disagreement +disagreer +disagrees +disagreing +disalicylide +disalign +disalignment +disalike +disallow +disallowable +disallowance +disallowed +disallowing +disallows +disally +disalvo +disambiguate +disamenity +disamis +disanalogous +disanimal +disanimate +disanimation +disannex +disannul +disannulled +disannuller +disannulleth +disannulling +disannulment +disanoint +disanti +disapostle +disapparel +disappead +disappear +disappeared +disappearer +disappearing +disappears +disappoint +disappointed +disappointer +disappoints +disapproval +disapprovals +disapprove +disapproved +disapprover +disapproves +disapproving +disaproned +disarm +disarmament +disarmature +disarmed +disarmer +disarmers +disarming +disarmingly +disarms +disarrange +disarranged +disarranges +disarranging +disarray +disarrayed +disarraying +disarrays +disasinate +disasinize +disassemble +disassembled +disassembler +disassembles +disassembly +disassociate +disaster +disasters +disastimeter +disastrous +disastrously +disattaint +disattire +disattune +disauthorize +disavow +disavowable +disavowal +disavowals +disavowed +disavowedly +disavower +disavowing +disavowment +disavows +disawa +disazo +disbalance +disband +disbanded +disbanding +disbandment +disbandments +disbands +disbar +disbark +disbarment +disbarments +disbarred +disbarring +disbars +disbelief +disbeliefs +disbelieve +disbelieved +disbeliever +disbelievers +disbelieves +disbelieving +disbench +disbenchment +disbloom +disbody +disbosom +disbound +disbowel +disbrain +disbranch +disbud +disbudder +disburden +disburdened +disburdening +disburdens +disbursable +disbursal +disbursed +disbursement +disburser +disburses +disbursing +disburthen +disbury +disbutton +disc +discage +discal +discalceate +discalced +discanonize +discanter +discants +discantus +discard +discardable +discarded +discarder +discarding +discardment +discards +discarnate +discarnation +discase +discased +discases +discastle +disced +discenza +discept +disceptation +disceptator +discern +discernable +discerned +discerner +discerners +discerneth +discernibly +discerning +discerningly +discernment +discerns +discerp +discerpible +discerptible +discerption +disch +discharacter +discharge +discharged +dischargee +discharger +dischargers +discharges +discharging +discharity +discharm +dischase +disci +disciflorae +discifloral +disciform +discigerous +discina +discinct +discing +discinoid +disciple +disciplelike +disciples +discipleship +disciplinal +disciplinant +discipline +disciplined +discipliner +discipliners +disciplines +discipling +disciplining +discipular +discipulus +discission +discitis +discjuggler +disclaim +disclaimant +disclaimed +disclaimer +disclaimers +disclaiming +disclaims +disclamation +disclamatory +disclamer +disclass +disclassify +disclave +disclike +disclimax +discloister +disclose +disclosed +discloser +discloses +disclosing +disclosive +disclosure +disclosures +discloud +discluamer +disco +discoach +discoactine +discoblastic +discobolus +discocarp +discocarpium +discocarpous +discodactyl +discoglossid +discography +discohopping +discoidal +discoidea +discoideae +discoids +discolichen +discolith +discolor +discolorate +discolored +discoloring +discolorment +discolors +discoloured +discomedusae +discomedusan +discomfited +discomfiter +discomfiting +discomfits +discomfiture +discomfort +discomforted +discomforts +discommend +discommender +discommode +discommoded +discommodes +discommoding +discommodity +discommon +discommons +discommunity +discomorula +discompose +discomposed +discomposes +discomposing +discomposure +discomycete +discomycetes +disconanthae +disconcert +disconcerted +disconcerts +disconcord +disconduce +disconducive +disconectae +disconform +discongruity +disconjure +disconnect +disconnected +disconnecter +disconnector +disconnects +disconsider +disconsolate +disconsonant +disconted +discontent +discontented +discontents +discontinue +discontinued +discontinuee +discontinuer +discontinues +discontinuor +disconula +discophile +discophora +discophoran +discophore +discophorous +discoplasm +discopodous +discord +discordance +discordancy +discordantly +discordful +discordia +discordian +discording +discords +discorporate +discos +discotheque +discotheques +discount +discountable +discounted +discounter +discounters +discounting +discounts +discouple +discourage +discouraged +discourager +discourages +discouraging +discourse +discoursed +discourser +discoursers +discourses +discoursing +discoursive +discourteous +discourtesy +discous +discovenant +discover +discoverable +discoverably +discovered +discoverer +discoverers +discovereth +discoveries +discovering +discovers +discovert +discoverture +discovery +discplay +discreate +discreation +discredence +discredit +discredited +discrediting +discredits +discreet +discreeter +discreetly +discreetness +discrepance +discrepancy +discrepantly +discrepate +discrepation +discrested +discretely +discreteness +discretetime +discretion +discretional +discretive +discretively +discrim +discriminal +discriminant +discrown +discrowned +discs +disculpate +disculpation +disculpatory +discumbency +discumber +discursative +discursify +discursion +discursive +discursively +discursory +discursus +discurtain +discus +discused +discuses +discuss +discussable +discussants +discussed +discusser +discusses +discussible +discussing +discussion +discussional +discussionis +discussions +discussive +discussment +discutable +discutient +disdain +disdainable +disdained +disdainer +disdainful +disdainfully +disdaining +disdainly +disdains +disdeceive +disdiaclast +disdiapason +disdiazo +disdub +disease +diseased +diseasedly +diseasedness +diseaseful +diseases +diseasing +disecondary +disedge +disedify +diseducate +diselder +diselectrify +diselenide +disematism +disembargo +disembark +disembarked +disembarking +disembarks +disembarrass +disembattle +disembed +disembellish +disembitter +disembodied +disembodies +disembody +disembodying +disembogue +disembosom +disemboweled +disembowels +disembower +disembowwl +disembroil +disemburden +diseme +disemic +disemplane +disemploy +disemployed +disemploying +disemploys +disempower +disenable +disenact +disenactment +disenamor +disenamour +disenchain +disenchant +disenchanted +disenchanter +disenchants +disencharm +disenclose +disencourage +disencumber +disencumbers +disendow +disendower +disendowment +disengage +disengaged +disengages +disengaging +disengirdle +disenjoy +disenjoyment +disenmesh +disennoble +disennui +disenshroud +disenslave +disensoul +disensure +disentagle +disentail +disentangle +disentangled +disentangler +disentangles +disenthral +disenthrall +disenthralls +disenthrone +disentient +disentitle +disentitling +disentomb +disentrain +disentrammel +disentrance +disentwine +disenvelop +disepalous +disequalize +disequalizer +disere +disespouse +disestablish +disesteem +disesteemer +diseuse +disfaith +disfame +disfashion +disfavor +disfavored +disfavorer +disfavors +disfeature +disfen +disfigure +disfigured +disfigurer +disfigures +disfiguring +disflesh +disfoliage +disforest +disfranchise +disfrequent +disfriar +disfrock +disfrocked +disfrocks +disfunction +disfunctions +disfurnish +disgarland +disgarnish +disgarrison +disgavel +disgeneric +disgenius +disgig +disglorify +disglut +disgood +disgorge +disgorged +disgorgement +disgorger +disgorges +disgorging +disgospel +disgown +disgrace +disgraced +disgraceful +disgracement +disgracer +disgracers +disgraces +disgracing +disgracious +disgradation +disgrade +disgregate +disgregation +disgruntled +disgruntles +disgruntling +disguisable +disguisal +disguise +disguised +disguisedly +disguiseless +disguisement +disguiser +disguises +disguiseth +disguising +disgulf +disgust +disgusted +disgustedly +disguster +disgustfully +disgusting +disgustingly +disgustitude +disgusts +dish +dishabille +dishabituate +dishallow +dishan +disharmonic +disharmonies +disharmonism +disharmonize +disharmony +dishart +dishboard +dishcloth +dishcloths +dishclout +dishcover +dishdrying +disheart +dishearten +disheartened +disheartener +disheartens +disheaven +dished +dishellenize +dishelm +disher +disherent +disherison +disherit +disheritment +dishes +disheveled +disheveling +dishevelled +dishevelling +dishevelment +dishevels +dishful +dishfuls +dishier +dishing +dishley +dishlike +dishling +dishmaker +dishmaking +dishmonger +dishome +dishon +dishonest +dishonesties +dishonestly +dishonesty +dishong +dishonor +dishonorable +dishonorably +dishonorary +dishonored +dishonorer +dishonoring +dishonors +dishonour +dishonourest +dishonoureth +dishorn +dishorner +dishorse +dishouse +dishpan +dishpanful +dishpans +dishrack +dishrag +dishrags +dishtowel +dishtowels +dishumanize +dishwalla +dishware +dishwares +dishwashers +dishwashing +dishwashings +dishwatery +dishwiper +dishwiping +dishy +disidentify +disilane +disilicane +disilicate +disilicic +disilicid +disilicide +disillude +disillusion +disillusions +disillusive +disimagine +disimbitter +disimitate +disimitation +disimmure +disimpark +disimprison +disimprove +disincarnate +disincline +disinclined +disinclines +disinclining +disincrust +disinfect +disinfectant +disinfected +disinfecter +disinfecting +disinfection +disinfective +disinfector +disinfects +disinfest +disinfestant +disinflame +disinflate +disinflation +disingenuity +disingenuous +disinherison +disinherit +disinherited +disinherits +disinhume +disinsure +disintegrant +disintegrate +disintegrity +disintegrous +disintensify +disinter +disinterest +disinterment +disinterred +disinterring +disinters +disintrench +disintricate +disinvest +disinvite +disinvolve +disisto +disjasked +disject +disjection +disjoin +disjoinable +disjoined +disjoining +disjoins +disjoint +disjointed +disjointedly +disjointing +disjointly +disjointness +disjoints +disjointure +disjunction +disjunctions +disjunctive +disjunctor +disjuncts +disjuncture +disjune +disk +diskbase +diskcat +diskcopy +diskdrive +diskdupe +disked +diskeeper +diskelion +diskette +diskettes +diski +diskin +diskindness +disking +diskio +diskless +disklike +disklock +diskmapper +diskmeter +disko +diskordi +diskov +diskplay +disks +diskspace +disktype +diskworld +diskwriter +dislaurel +disleaf +dislevelment +dislicense +dislikable +dislike +dislikeable +disliked +disliker +dislikes +disliking +dislimn +dislink +dislip +dislite +disload +dislocable +dislocate +dislocated +dislocatedly +dislocates +dislocating +dislocation +dislocations +dislocator +dislocatory +dislodge +dislodgeable +dislodged +dislodgement +dislodges +dislodging +dislodgment +dislove +disloyal +disloyalist +disloyally +disloyalties +disloyalty +disluster +dismain +dismal +dismaler +dismalest +dismality +dismalize +dismally +dismalness +dismals +disman +dismantle +dismantled +dismantler +dismantles +dismantling +dismarble +dismark +dismarket +dismask +dismast +dismasting +dismastment +dismay +dismayable +dismayed +dismayedness +dismayful +dismayfully +dismaying +dismayingly +dismays +disme +dismember +dismembered +dismemberer +dismembering +dismembers +dismembrate +dismembrator +dismes +dismet +disminion +disminister +dismiss +dismissable +dismissals +dismissed +dismisser +dismissers +dismisses +dismissible +dismissing +dismissingly +dismission +dismissive +dismissory +dismoded +dismortgage +dismortgaged +dismount +dismountable +dismounted +dismounting +dismounts +dismukes +dismutation +disna +disnature +disnest +disnew +disney +disneyland +disneylands +disneys +disniche +disnosed +disnumber +diso +disobedience +disobedient +disobey +disobeyal +disobeyed +disobeyer +disobeyers +disobeying +disobeys +disoblige +disobliged +disobliger +disobliges +disobliging +disoccupy +disodic +disodium +disoha +disolves +disomatic +disomatous +disomic +disomus +disorb +disorchard +disordained +disorder +disordered +disorderedly +disorderer +disordering +disorderly +disorders +disordinated +disorganic +disorganize +disorganized +disorganizer +disorganizes +disorient +disorientate +disoriented +disorienting +disorients +disown +disownable +disowned +disowning +disownment +disowns +disoxygenate +disozonize +disp +dispair +dispansion +dispapalize +disparaged +disparager +disparages +disparaging +disparately +disparation +disparities +disparity +dispark +dispart +dispartment +dispassion +dispassioned +dispatch +dispatched +dispatcher +dispatchers +dispatches +dispatchful +dispatching +dispater +dispatriated +dispauper +dispauperize +dispeace +dispeaceful +dispell +dispeller +dispells +dispels +dispend +dispender +dispending +dispendious +dispenditure +dispensaries +dispensation +dispensative +dispensator +dispensatory +dispensatrix +dispense +dispensed +dispenser +dispensers +dispenses +dispensing +dispensingly +dispeople +dispeopler +dispepsia +dispergate +dispergation +dispergator +disperiwig +dispermic +dispermous +dispermy +disperor +dispersal +dispersals +dispersant +disperse +dispersed +dispersedly +dispersement +disperser +dispersers +disperses +dispersing +dispersion +dispersions +dispersity +dispersively +dispersoid +dispersonate +dispersonify +dispetal +disphenoid +dispiece +dispireme +dispirit +dispirited +dispiritedly +dispiriting +dispiritment +dispirits +dispiteous +dispiteously +displace +displaceable +displaced +displacement +displacency +displacer +displaces +displacing +displant +displanted +display +displayable +displaye +displayed +displayer +displayfile +displayhe +displaying +displaylabel +displays +displease +displeased +displeasedly +displeaser +displeases +displeasing +displeasure +displeasures +displenish +displicency +displode +displosion +displume +displuviate +dispoholnon +dispondaic +dispondee +dispone +disponee +disponent +disponer +dispope +disporous +disport +disported +disporting +disportive +disportment +disports +disporum +disposable +disposal +disposals +dispose +disposed +disposedly +disposedness +disposer +disposers +disposes +disposing +disposingly +disposition +dispositions +dispositive +dispossess +dispossessed +dispossesses +dispossessor +dispost +disposure +dispowder +dispractice +dispraise +dispraised +dispraiser +dispraising +dispread +dispreader +disprejudice +disprepare +disprince +disprison +disprivacied +disprivilege +disprize +disprobative +dispromise +disproof +disproofs +disprovable +disproval +disprove +disproved +disprovement +disproven +disprover +disproves +disproving +dispulp +dispunct +dispunitive +disputable +disputably +disputant +disputanta +disputants +disputation +disputations +disputatious +disputative +disputator +dispute +disputed +disputeless +disputer +disputers +disputes +disputing +disputings +disqualified +disqualifies +disqualify +disquantity +disquiet +disquieted +disquietedly +disquieten +disquieter +disquieting +disquietly +disquietness +disquiets +disquietudes +disquiparant +disquisite +disquisitive +disquisitor +disquisitory +disquixote +disraeli +disrank +disrate +disrealize +disregard +disregardant +disregarded +disregarder +disregardful +disregarding +disregards +disrelated +disrelation +disrelish +disremember +disrepair +disreputable +disreputably +disrepute +disrespect +disrespecter +disrestore +disring +disrobe +disrobed +disrobement +disrober +disrobers +disrobes +disrobing +disroof +disroost +disroot +disrudder +disrump +disrupt +disruptable +disrupted +disrupter +disrupting +disruption +disruptions +disruptively +disruptment +disruptor +disrupts +disrupture +diss +dissatisfied +dissatisfies +dissatisfy +dissaturate +disscepter +disseat +dissect +dissected +dissectible +dissecting +dissection +dissectional +dissections +dissective +dissector +dissectors +dissects +disseize +disseizee +disseizin +disseizor +disseizoress +disselboom +dissemblance +dissembled +dissembler +dissemblers +dissembles +dissembleth +dissembling +dissembly +disseminated +disseminates +disseminator +disseminule +dissension +dissensions +dissent +dissented +dissenter +dissenterism +dissenters +dissentience +dissentiency +dissentient +dissentients +dissenting +dissentingly +dissentious +dissentism +dissentment +dissents +dissepiment +dissert +dissertate +dissertative +dissertator +disserts +disserve +disservice +disservices +dissever +disseverance +dissevered +dissevering +disseverment +dissevers +disshadow +dissheathe +disshroud +dissidence +dissidently +dissidents +dissight +dissightly +dissilience +dissiliency +dissilient +dissimilar +dissimilarly +dissimilars +dissimilate +dissimile +dissimular +dissimulate +dissimulated +dissimulates +dissimulator +dissimule +dissimuler +dissinger +dissipable +dissipated +dissipatedly +dissipater +dissipaters +dissipates +dissipating +dissipation +dissipations +dissipative +dissipator +dissipators +dissocial +dissociality +dissocialize +dissociant +dissociated +dissociates +dissociating +dissociation +dissociative +dissoconch +dissogeny +dissogony +dissoluble +dissolute +dissolutely +dissolution +dissolutions +dissolutive +dissolvable +dissolve +dissolved +dissolvent +dissolver +dissolves +dissolvest +dissolving +dissolvingly +dissonance +dissonances +dissonancy +dissonant +dissonantly +dissonous +dissoul +dissuadable +dissuaded +dissuader +dissuades +dissuading +dissuasion +dissuasions +dissuasive +dissuasively +dissuasory +dissuit +dissuitable +dissuited +dissyllabic +dissyllabify +dissyllabism +dissyllabize +dissyllable +dissymmetric +dissymmetry +dissympathy +dist +distad +distaff +distaffs +distain +distale +distally +distalwards +distance +distanced +distanceless +distances +distancing +distancy +distannic +distant +distantly +distantness +distaste +distasted +distasteful +distastes +distasting +distater +distel +distemonous +distemper +distempered +distemperer +distenant +distend +distended +distendedly +distender +distending +distends +distensible +distension +distensions +distensive +distent +distention +distentions +disthene +disthrall +disthrone +distibuted +distich +distichlis +distichous +distichously +distichs +distil +distill +distillable +distillage +distilland +distillates +distillation +distillatory +distilled +distiller +distilleries +distillers +distilling +distillmint +distills +distils +distinct +distincter +distinctify +distinction +distinctions +distinctive +distinctly +distinctness +distingue +distinguish +distingushes +distoclusion +distoma +distomatidae +distomatosis +distomatous +distome +distomian +distomiasis +distomidae +distomum +distorsion +distort +distortable +distorted +distortedly +distorter +distorters +distorting +distortion +distortional +distortions +distortive +distorts +distr +distract +distracted +distractedly +distracter +distractible +distracting +distraction +distractions +distractive +distracts +distrain +distrainable +distrainee +distrainer +distrainment +distrainor +distraint +distrait +distraite +distraught +distress +distresse +distressed +distressedly +distresses +distressful +distressing +distributary +distribute +distributed +distributee +distributer +distributes +distributeth +distributing +distribution +distributive +distributor +distributors +district +districted +districts +distrikt +distrikten +distritbute +distritbuted +distritbutes +distrito +distritos +distrouser +distrto +distrust +distrusted +distruster +distrustful +distrusting +distrusts +dists +distune +disturb +disturbance +disturbances +disturbative +disturbed +disturbedly +disturber +disturbers +disturbing +disturbingly +disturbs +disturn +disturnpike +disulfonic +disulfuric +disulphate +disulphide +disulphonate +disulphone +disulphonic +disulphoxide +disulphuret +disulphuric +disunctive +disuniform +disunify +disunion +disunionism +disunionist +disunite +disunited +disuniter +disuniters +disunites +disunities +disuniting +disunity +disusage +disusance +disuse +disused +disuses +disusing +disutility +disutilize +disvaluation +disvalue +disvaluing +disvisage +disvoice +diswarren +diswench +diswood +disworth +disyllabic +disyoke +dita +dital +ditamari +ditammari +ditaylin +ditch +ditchbank +ditchbur +ditchdigger +ditchdown +ditched +ditcher +ditchers +ditches +ditching +ditchless +ditchside +ditchwater +dite +ditecco +diter +diterpene +ditertiary +dites +ditetragonal +ditfurth +dith +dithalous +dithecal +ditheism +ditheist +ditheistic +ditheistical +dithematic +dither +dithered +dithering +dithers +dithery +dithioglycol +dithioic +dithion +dithionate +dithionic +dithionite +dithionous +dithymol +dithyramb +dithyrambic +dithyrambos +dithyrambus +ditial +ditko +ditman +ditmar +dito +ditokous +ditolyl +ditone +ditrematous +ditremid +ditremidae +ditriglyph +ditriglyphic +ditrigonal +ditrigonally +ditrocha +ditrochean +ditrochee +ditrochous +ditroff +ditroite +ditson +dittamy +dittander +dittany +dittay +dittburner +dittenhoffer +ditti +dittied +ditties +dittmer +ditto +dittoed +dittoes +dittogram +dittograph +dittographic +dittography +dittoing +dittology +ditton +dittos +ditty +diula +diumvirate +diuranate +diureide +diuresis +diuretic +diuretically +diuretics +diurna +diurnally +diurnalness +diurnals +diurnation +diurne +diurnule +diuturnal +diuturnity +diva +divagate +divagated +divagates +divagating +divagation +divagations +divakara +divalence +divana +divans +divariant +divaricate +divaricately +divaricating +divarication +divaricator +divas +divata +divb +divd +dive +divebomb +divebombed +dived +divehi +divehli +divekeeper +divel +divellent +divellicate +diver +diverged +divergement +divergence +divergences +divergency +divergently +diverges +diverging +divergingly +divernon +divers +diverse +diversely +diversen +diverseness +diversified +diversifier +diversifies +diversiform +diversifying +diversion +diversional +diversionist +diversions +diversities +diversity +diversly +diversory +divert +diverted +divertedly +diverter +diverters +divertible +diverticle +diverticula +diverticular +diverticulum +diverting +divertingly +divertive +divertor +diverts +dives +divested +divestible +divesting +divestitive +divestitures +divestment +divests +divesture +divf +divg +divh +dividable +divide +dividebyzero +divided +dividedly +dividedness +dividend +dividends +divider +dividers +divides +divideth +dividing +dividingly +dividual +dividualism +dividually +dividuity +dividuous +divilacan +divinable +divinail +divination +divinations +divinator +divinatory +divine +divined +divinely +divineness +diviner +divineress +diviners +divines +divinest +divineth +diving +divinify +divining +diviningly +divinise +divinities +divinity +divinityship +divinization +divinize +divinyl +divisibility +divisibly +division +divisionally +divisionary +divisionism +divisionist +divisions +divisively +divisiveness +divison +divisor +divisorial +divisors +divisory +divisural +divl +divo +divoire +divoka +divorce +divorceable +divorced +divorcees +divorcement +divorcements +divorcer +divorcers +divorces +divorcible +divorcing +divorcive +divorzio +divot +divoto +divots +divp +divu +divulgate +divulgater +divulgation +divulgatory +divulge +divulged +divulgement +divulgence +divulgences +divulger +divulgers +divulges +divulging +divulse +divulsion +divulsive +divulsor +divus +divuvsdiv +divvers +divvied +divvies +divvsdivu +divvy +divvying +divw +diwala +diwami +diwata +dixenite +dixfield +dixiana +dixie +dixiecrat +dixit +dixmont +dixon +dixons +dixonsmills +dixonsprings +dixonville +dixy +diyala +diyarbakir +diyari +diyi +dizahab +dizain +dizdar +dize +dized +dizen +dizenment +dizi +dizimaji +dizney +dizoic +dizoid +dizon +dizthem +dizview +dizygotic +dizz +dizzard +dizzied +dizzier +dizzies +dizziest +dizzily +dizziness +dizzy +dizzying +djadha +djadiwitjibi +djado +djafolo +djaga +djagatay +djair +djakarta +djakun +djalasiga +djallon +djallonke +djamala +djambala +djambi +djamchidi +djamindjung +djanet +djang +djanga +djanggu +django +djangu +djanti +djao +djapa +djapu +djarai +djarrwark +djart +djaru +djasakid +djasing +djau +djauan +djauanic +djaul +djave +djawa +djawali +djaya +djdsun +djedji +djehad +djelfa +djellaba +djellabas +djem +djema +djembe +djemma +djenana +djeradj +djeragan +djerbi +djerejian +djerem +djerib +djerma +djermakoye +djersa +djezair +djgpp +djhd +djia +djibasso +djibo +djibouti +djiboutian +djida +djidanan +djidja +djikini +djimi +djimini +djimu +djin +djinang +djinba +djingburu +djingila +djingili +djinn +djinni +djinns +djinny +djins +djiri +djiru +djirubal +djjatshkov +djoablin +djoeka +djohar +djok +djoko +djola +djolof +djonbi +djondo +djonga +djonggunu +djongkang +djongor +djonkor +djordje +djougou +djoula +djoum +djpango +djrpc +djudko +djugu +djuka +djula +djuloi +djundjung +djungl +djuwali +djuzheff +djvex +djwalden +djykstra +dkuug +dlas +dlavolos +dlaya +dlbbs +dlgxrsizer +dlib +dlige +dlinnoe +dllavailable +dllpath +dlls +dllsand +dllview +dlogo +dlpath +dlphi +dlpi +dlta +dlugosz +dlya +dmaacgad +dmahtc +dmail +dmailweb +dmake +dmaodsdcc +dmaodsdcp +dmaodsdoe +dmaodsdop +dmaodshost +dmarr +dmatest +dmcs +dmesg +dmick +dmins +dmitri +dmitrienko +dmitriev +dmitrievna +dmitriy +dmitrovgrad +dmitry +dmlconv +dmmis +dmris +dmsdb +dmsetup +dmspc +dmsrtime +dmssc +dmssg +dmssyd +dmuchalsky +dmxlight +dnadoc +dnas +dncri +dneprov +dnews +dney +dniren +dnloaded +dnsproj +dnya +dnyah +doab +doable +doak +doan +doane +doarium +doat +doated +doater +doating +doatish +doayo +doazan +doba +dobase +dobazaritsa +dobb +dobbed +dobber +dobbie +dobbing +dobbins +dobbs +dobbsferry +dobby +dobe +dobegin +dobek +dobel +doberkat +doberman +dobermans +dobi +dobie +dobies +dobisch +dobish +dobkin +dobkins +dobla +doblas +doble +doblem +doblon +doboduru +doboko +dobosh +dobra +dobransky +dobrao +dobras +dobrescu +dobrie +dobrin +dobro +dobronravin +dobrovoleva +dobrovolsky +dobrowa +dobrushin +dobtcheff +dobu +doby +dobzhansky +doca +docb +docc +doce +docena +docent +docents +docentship +docetae +docetic +docetically +docetism +docetist +docetistic +docetize +doch +docherty +dochkafuara +dochmiac +dochmiacal +dochmiasis +dochmius +docibility +docible +docibleness +docilely +docilities +docility +docimasia +docimastic +docimastical +docimasy +docimology +docity +dock +dockage +dockages +docked +docken +dockendorff +docker +dockers +dockerty +dockery +docketed +docketing +dockets +dockett +dockhand +dockhands +dockhead +dockhouse +docking +dockization +dockize +dockland +docklands +dockmackie +dockman +dockmaster +docks +docksides +dockson +dockstader +dockworker +dockyardman +dockyards +docmac +docname +doco +docoglossa +docoglossan +docoglossate +docolomansky +docosane +docrus +docs +docsmith +docsweep +docteur +doctor +doctora +doctorally +doctorates +doctorbird +doctordom +doctored +doctoress +doctorfish +doctorhood +doctorial +doctorially +doctoring +doctorize +doctorjones +doctorless +doctorlike +doctorly +doctors +doctorship +doctorthat +doctorweb +doctress +doctrinal +doctrinalism +doctrinalist +doctrinality +doctrinally +doctrinarian +doctrinarily +doctrinarity +doctrinary +doctrinate +doctrine +doctrines +doctrinism +doctrinist +doctrinize +doctrix +docudrama +docudramas +docuette +documements +document +documentable +documental +documentary +documentatio +documented +documenter +documenters +documenting +documention +documentize +documentor +documents +doczy +doda +dodaga +dodai +dodanim +dodavah +dodd +doddart +doddcity +dodded +dodder +doddered +dodderer +dodderers +doddering +dodders +doddery +doddie +dodding +doddle +doddridge +dodds +doddsville +doddy +doddypoll +dode +dodecade +dodecadrachm +dodecafid +dodecagon +dodecagonal +dodecahedric +dodecamerous +dodecane +dodecanese +dodecanesian +dodecanoic +dodecant +dodecarch +dodecarchy +dodecasemic +dodecastyle +dodecastylos +dodecatemory +dodecatheon +dodecatoic +dodecatyl +dodecatylic +dodecuplet +dodecyl +dodecylene +dodecylic +dodeo +dodero +dodge +dodgecenter +dodgecity +dodged +dodgeful +dodger +dodgers +dodgery +dodges +dodgeville +dodgier +dodgily +dodginess +dodging +dodgson +dodgy +dodi +dodie +dodier +dodiis +dodinga +dodkin +dodlet +dodman +dodo +dodoes +dodoism +dodoisms +dodoma +dodona +dodonaea +dodonaeaceae +dodonaean +dodonean +dodonian +dodos +dodoth +dodou +dodrans +dodson +dodsworth +dody +doebird +doeblin +doeblins +doedicurus +doeg +doeglic +doegling +doehill +doehler +doehren +doer +doerfel +doerfer +doerksen +doerman +doermer +doerr +doers +doerun +does +doeskin +doeskins +doesn +doesnot +doesnt +doest +doeswindows +doeth +doeuvre +dofana +dofar +doffed +doffer +doffers +doffing +doffs +doftberry +doga +dogaari +dogacak +dogal +dogari +dogate +dogati +dogba +dogbanes +dogberries +dogberry +dogberrydom +dogberryism +dogbite +dogblow +dogbo +dogboat +dogbogbe +dogbolt +dogboyou +dogbush +dogcart +dogcarts +dogcatcher +dogcatchers +dogcow +dogdom +dogear +dogeared +dogears +dogedom +dogeless +doges +dogeship +dogey +dogeys +dogface +dogfaces +dogfall +dogfight +dogfights +dogfishes +dogfoot +dogg +dogge +dogged +doggedly +doggedness +dogger +doggerel +doggereler +doggerelism +doggerelist +doggerelize +doggerelizer +doggerels +doggers +doggery +doggess +doggett +doggie +doggier +doggies +doggiest +dogging +doggish +doggishly +doggishness +doggo +doggoned +doggoner +doggones +doggonest +doggoning +doggrel +doggrelize +doggy +doghead +doghearted +doghen +doghold +doghole +doghood +doghose +doghosie +doghosiegrus +doghouse +doghouses +dogie +dogies +doglegged +doglegging +doglegs +dogless +doglike +dogly +dogma +dogman +dogmas +dogmata +dogmatic +dogmatical +dogmatically +dogmatician +dogmatics +dogmatist +dogmatists +dogmatize +dogmatized +dogmatizer +dogmatizing +dogmouth +dognap +dognaped +dognaper +dognapers +dognaping +dognapped +dognapping +dognaps +dogo +dogobah +dogom +dogon +dogorindi +dogoro +dogose +dogosie +dogoso +dogotuki +dogovoritsa +dogpatch +dogplate +dogproof +dogra +dogri +dogrib +dogrikangra +dogrikangri +dogs +dogsbodies +dogsbody +dogship +dogshore +dogsick +dogskin +dogsled +dogsleds +dogsleep +dogstone +dogtail +dogteeth +dogtie +dogtoothing +dogtrick +dogtrots +dogtrotted +dogue +dogura +dogvane +dogwa +dogwash +dogwatch +dogwatches +dogweary +dogwoods +dogy +dogz +doha +dohalovsky +dohan +dohanos +dohe +doherty +dohm +dohmler +dohna +dohoi +dohuk +doibo +doig +doigt +doigts +doil +doiled +doilies +doillon +doily +doin +doina +doing +doings +doit +doited +doitkin +doitrified +dojo +dojos +dojran +doka +dokachin +dokan +dokantchence +doke +doketic +doketism +dokhma +dokhobe +dokhosie +doki +dokimastic +dokken +doklad +dokmarok +doko +dokoh +dokouyanga +dokshi +doksum +doktor +dokumenti +dokuzoguz +dokwara +dola +dolabra +dolabrate +dolabriform +dolak +dolakha +dolan +doland +dolbilov +dolbiozhka +dolby +dolcan +dolci +dolcian +dolciano +dolcino +dolde +doldol +dole +doled +dolefish +doleful +dolefuller +dolefully +dolefulness +dolefuls +dolek +doleman +dolen +dolenjsko +dolent +dolente +dolently +dolenz +dolerite +doleritic +doles +dolesman +dolesome +dolesomely +dolesomeness +doless +dolette +dolezal +dolf +dolg +dolgan +dolgeville +dolgich +dolginoff +dolgo +dolgorucki +dolgov +doli +dolia +dolichoblond +dolicholus +dolichos +dolichosaur +dolichosauri +dolichosoma +dolichotmema +dolichuric +dolichurus +doliidae +dolin +dolina +doline +doling +dolinsky +dolioform +doliolidae +doliolum +doliska +dolitzkaya +dolium +dolj +doljen +doljni +doljno +dolkhali +doll +dollar +dollarbay +dollarbird +dollardee +dollardom +dollarfish +dollarhide +dollarhyde +dollarleaf +dollars +dollbeer +dolldom +dolled +dollette +dolley +dollface +dollfish +dollfus +dollhood +dollhouse +dollhouses +dolli +dollie +dollied +dollier +dollies +dolliness +dolling +dollish +dollishly +dollishness +dolliver +dollmaker +dollmaking +dollops +dolls +dollship +dolly +dollying +dollyman +dollyway +dolman +dolmen +dolmenic +dolmens +dolna +dolo +dolokhov +dolomedes +dolomites +dolomitize +dolomization +dolomize +dolophine +dolor +dolores +dolorescyr +doloriferous +dolorific +dolorifuge +dolorita +doloritas +doloroso +dolorous +dolorously +dolorousness +dolors +dolose +dolour +dolours +dolous +dolowicz +dolozal +dolpa +dolph +dolphin +dolphinlike +dolphins +dolphus +dolpo +dols +dolsin +dolson +dolthead +doltishly +doltishness +dolton +dolts +dolworth +dolwya +dolwyn +dolzhna +doma +domack +domagalski +domagnano +domain +domainal +domainist +domainos +domains +domaki +domal +domanial +domanico +domanski +domara +domarco +domaren +domari +domas +domashnee +domatium +domatophobia +domba +dombano +dombasle +dombe +dombeya +dombo +dombosaina +domburg +domdaniel +domdom +domdumitru +dome +domed +domelike +domenic +domenici +domenick +domenico +domeniga +doment +domer +domergue +domes +domesday +domesdaybook +domesman +domestic +domesticable +domestically +domesticated +domesticates +domesticator +domesticity +domesticize +domestics +domestos +domett +domeykite +domeyko +domic +domical +domically +domicella +domich +domicil +domiciled +domicilement +domiciles +domiciliar +domiciliary +domiciliate +domiciliated +domiciling +domicils +domina +dominance +dominancy +dominantly +dominants +dominate +dominated +dominates +dominating +dominatingly +domination +dominations +dominative +dominator +dominators +domine +domineered +domineerer +domineering +domineers +domines +dominey +doming +dominga +domingo +domingos +dominguez +dominguin +domini +dominial +dominic +dominica +dominical +dominicale +dominicans +dominici +dominie +dominik +dominion +dominionism +dominionist +dominions +dominique +dominium +domino +dominoe +dominoes +dominos +dominque +dominquez +dominus +domison +domitable +domite +domitian +domitic +domitila +domitius +domiziana +domkhoe +dommara +dommety +domn +domnei +domo +domoid +domokos +domolpos +domona +domoni +domoraud +domoy +dompa +dompago +dompim +dompt +domra +domroese +doms +domstolen +domu +domung +domy +dona +donaana +donable +donacidae +donaciform +donad +donadio +donaghue +donahee +donahue +donak +donal +donald +donalda +donaldina +donaldo +donalds +donaldson +donall +donann +donapa +donar +donary +donat +donatary +donate +donated +donatee +donatella +donatelli +donates +donath +donati +donatiaceae +donating +donatio +donation +donationes +donations +donationware +donatism +donatist +donatistic +donatistical +donative +donatively +donatives +donato +donator +donators +donatory +donatress +donax +donc +doncan +doncaster +doncell +doncella +doncha +dondaro +donde +dondel +dondi +dondia +dondo +dondov +done +donee +donees +donegal +donegan +doneghy +donelan +donell +donella +donelle +donelli +donelson +doneness +doner +donet +donetta +doneux +doneva +donevan +doney +dong +donga +dongamangung +dongamantung +dongani +dongari +dongarra +dongay +dongby +dongchuan +dongen +donggala +donggl +dongiro +dongjol +dongl +dongle +donglecrack +dongledisk +dongles +dongo +dongola +dongolakenuz +dongolawi +dongolese +dongon +dongotono +dongou +dongs +dongxiang +dongxing +donia +doniac +donica +donicie +donie +donielle +doniphan +doniphon +donita +donizetti +donjon +donjons +donk +donkers +donkey +donkeyback +donkeyish +donkeyism +donkeyman +donkeys +donkeywork +donlan +donlevy +donley +donleycott +donlin +donlon +donmeh +donn +donna +donnadieu +donnajean +donnamarie +donnas +donne +donned +donnees +donnell +donnelley +donnellson +donnelly +donnelsville +donner +donnera +donnered +donnerstag +donnert +donnette +donnetti +donni +donnice +donnie +donning +donnish +donnishness +donnism +donnolly +donnot +donny +donnybrooks +donoghue +donohoe +donohue +donora +donors +donorship +donothing +donouan +donought +donovan +donovon +dons +donship +donsie +donsker +donstelli +dont +donte +donu +donum +donut +donuts +dony +donyale +donyanyo +donyayo +donyiro +donyoro +donzel +doob +doobs +dooby +doocot +dood +doodab +doodad +doodads +doodeman +doodia +doodlebug +doodled +doodler +doodlers +doodles +doodlesack +doodling +doody +doofus +doohan +doohickey +doohickus +doohinkey +doohinkus +doohyaayo +dooja +dook +dooka +dooket +dookit +dool +doole +doolee +doolen +dooley +dooli +doolie +doolies +doolin +doolins +doolittle +dooly +doom +doomadgee +doomage +doombook +doomed +doomer +doomful +dooming +doompas +dooms +doomsday +doomsdays +doomsman +doomstead +doomster +doomsters +doon +doonan +doondo +doone +doonyarat +doop +door +doorba +doorbell +doorbells +doorboy +doorbrand +doorcase +doorcheek +doored +doorframe +doorgames +doorhead +doorinfodir +doorjamb +doorjambs +doorkeeper +doorkeepers +doorknobs +doorless +doorlike +doormaid +doormaker +doormaking +doorman +doormat +doormats +doormouse +doorn +doornail +doornails +doorplate +doorplates +doorpost +doorposts +doorroot +doors +doorsill +doorsills +doorstead +doorstep +doorsteps +doorstone +doorstop +doorstops +doortje +doorward +doorway +doorways +doorweed +doorwise +dooryard +dooryards +doosy +doowaayo +dooyaayo +dooyayo +doozer +doozies +doozy +dopa +dopamelanin +dopants +dopaoxidase +dopatta +dope +dopebook +doped +doper +dopers +dopes +dopester +dopey +dophagy +dophkah +dopie +dopier +dopiest +dopiness +doping +doppelganger +doppelkummel +dopper +doppia +doppio +dopplerite +doppo +doptimal +doptimality +doptimum +dopy +doquet +doqui +dora +dorab +dorad +doradidae +dorado +dorais +doralee +doralia +doralin +doralyn +doralynn +doralynne +doram +doramundo +doran +dorantes +doraphobia +dorask +doraskean +dorat +dorato +doraundi +doray +dorbeetle +dorbet +dorcas +dorcastry +dorcatherium +dorcey +dorcopsis +dordar +dordari +dordrecht +dore +dorea +doree +doreen +doreian +doreille +dorein +dorelia +dorella +dorelle +dorelli +doremus +doren +dorena +dorene +dorestane +doretta +dorette +dorety +dorey +dorf +dorffel +dorfman +dorgan +dorhawk +dorhosye +dori +doria +dorian +dorical +dorice +doricism +doricize +doriden +dorididae +dorie +dories +dorig +dorin +dorinda +dorine +dorinfo +doring +dorinne +dorio +dorion +doriot +doriri +doris +dorisa +dorise +dorism +dorit +dorita +dorival +dorize +dorje +dorji +dorkin +dorking +dorla +dorlach +dorleac +dorli +dorloo +dorlot +dorlyth +dorm +dorman +dormancies +dormancy +dormant +dormer +dormered +dormers +dormeuse +dormice +dormie +dormient +dormilona +dormition +dormitive +dormitories +dormo +dormont +dormouse +dorms +dormy +dorn +dornan +dornback +dornbierer +dornburg +dorne +dorneck +dorner +dornford +dornic +dornick +dorning +dornock +dornod +dornogovi +dornsife +dorny +doro +dorobe +dorobo +doroge +dorogo +dorogori +dorogovato +dorogoy +dorolice +dorolisa +dorombe +doromu +doron +dorong +doronicum +doronin +doronta +doropo +dororo +dorosie +dorosoma +dorot +dorota +dorotea +doroteya +dorothea +dorothee +dorothy +dorotich +dorottya +dorp +dorpat +dorphs +dorr +dorrance +dorree +dorreen +dorrell +dorri +dorrie +dorris +dorrit +dorro +dorronsoro +dorry +dors +dorsa +dorsad +dorsal +dorsale +dorsalgia +dorsalis +dorsally +dorsalmost +dorsals +dorsalward +dorsalwards +dorsay +dorsch +dorsel +dorser +dorset +dorsett +dorsey +dorsha +dorsi +dorsibranch +dorsicollar +dorsicolumn +dorsicornu +dorsiduct +dorsiferous +dorsifixed +dorsiflex +dorsiflexion +dorsiflexor +dorsigerous +dorsigrade +dorsilateral +dorsilumbar +dorsimedian +dorsimesal +dorsimeson +dorsiparous +dorsispinal +dorsiventral +dorsoapical +dorsocaudad +dorsocaudal +dorsocentral +dorsodynia +dorsolateral +dorsolumbar +dorsomedial +dorsomedian +dorsomesal +dorsonasal +dorsonuchal +dorsopleural +dorsoradial +dorsosacral +dorsosternal +dorsovelar +dorsoventrad +dorsoventral +dorstenia +dorsulum +dorsum +dorsumbonal +dort +dorter +dorthea +dorthy +dortiness +dortiship +dorton +dorts +dorty +doruck +dorv +dorval +dorwot +dory +doryan +doryanthes +dorylinae +doryphorus +dorze +dorziat +dorzinya +dosa +dosadh +dosage +dosages +dosanga +dosango +dosanjh +dosbug +dose +dosed +dosedit +dosenbach +doser +doseresponse +dosers +doses +dosfrom +dosguide +dosh +doshi +doshypertext +dosi +dosidle +dosimeters +dosimetric +dosimetries +dosimetrist +dosimetry +dosing +dosinia +dosint +dosiology +dosis +dositheans +dositheos +doskas +doskey +doskis +dosmenu +dosmerge +dosnotes +doso +dosology +dospalos +dosref +doss +dossal +dossed +dossel +dosser +dosseret +dossers +dosses +dossett +dossev +dosshell +dossiers +dossil +dossing +dossman +dosso +dossougbete +dossyo +dost +dostal +dostips +dostoievye +dostojevsky +dosundoc +dosvidanya +dosway +doswell +dota +dotage +dotages +dotal +dotanga +dotard +dotardism +dotardly +dotards +dotardy +dotate +dotation +dotchin +dotcode +dote +doted +doteli +doter +doters +dotes +doth +dothan +dothass +dothe +dothideacea +dothideales +dothidella +dothiorella +dothis +doti +dotier +dotiest +dotiness +doting +dotingly +dotingness +dotish +dotishness +dotkin +dotless +dotlike +doto +dotonidae +dotrice +dots +dotsey +dotson +dott +dotted +dottels +dotter +dotterel +dotters +dotti +dottie +dottier +dottiest +dottily +dottin +dottiness +dotting +dottings +dottle +dottler +dottles +dottore +dotty +doty +douai +douala +douanier +douar +douarei +double +doubleback +doublebar +doublecheck +doubled +doubledamn +doubleday +doubledigit +doubledisk +doubledos +doubleedged +doublefaced +doubleganger +doublegear +doubleglitch +doublehanded +doublehorned +doubleleaf +doublelunged +doubleminded +doubleness +doublequotes +doubler +doublers +doubles +doublesided +doublesin +doublespace +doublet +doubleted +doublethink +doubletone +doubletrack +doubletree +doublets +doublewidth +doubleword +doublewords +doubling +doubloons +doubly +doublydyed +doubt +doubtable +doubtably +doubted +doubtedly +doubter +doubters +doubteth +doubtful +doubtfully +doubtfulness +doubting +doubtingly +doubtingness +doubtless +doubtlessly +doubtmonger +doubtous +doubts +doubtsome +douc +douce +doucely +douceness +douces +doucet +doucette +douceur +douche +douched +douches +douching +doucin +doucine +doud +doude +doudjik +doudle +douds +douet +doufelgou +doufou +doug +dougal +dougall +dough +doughbird +doughboy +doughboys +dougherty +doughface +doughfaced +doughfaceism +doughfoot +doughhead +doughier +doughiest +doughiness +doughlike +doughmaker +doughmaking +doughman +doughnuts +doughs +dought +doughtier +doughtiest +doughtily +doughtiness +doughty +doughy +dougl +douglas +douglascity +douglass +douglasville +dougnac +dougnan +dougou +dougour +dougs +doukhobors +douking +doukoula +doukoure +doul +doulayako +doulocracy +doum +douma +doumanian +doumbou +doume +doumel +doumen +doumet +doumo +doumori +douna +doundake +dounias +doup +doupa +douphol +douping +dour +doura +dourbeye +dourer +dourest +dourfuss +douridas +dourif +dourine +dourley +dourly +dourness +dourou +douroum +douroun +douse +doused +douser +dousers +douses +dousing +dousings +dousman +dousnior +dout +douta +doutai +doutel +douter +doutey +doutin +doutous +doutreval +douvangar +douville +douwe +doux +douze +douzepers +douzieme +dovbnya +dove +dovecot +dovecote +dovecotes +dovecots +dovecreek +doveflower +dovefoot +dovehouse +dovekey +dovel +dovelet +dovelike +doveling +dover +doverchivii +doverhouse +dovernj +doverplains +doverpub +doves +dovetailed +dovetailer +dovetailing +dovetails +dovetailwise +doveweed +dovewood +dovima +dovish +dovitch +dovray +dovyalis +dovydaitis +dowa +dowable +dowagerism +dowagers +dowagiac +dowayayo +dowcet +dowcity +dowd +dowdier +dowdies +dowdiest +dowdily +dowdiness +dowding +dowdy +dowdyish +dowdyism +dowed +doweled +doweling +dowell +dowelled +dowelling +dowelltown +dowels +dower +doweral +dowered +doweress +doweries +dowering +dowerless +dowers +dowery +dowes +dowf +dowhen +dowhile +dowie +dowieism +dowieite +dowily +dowiness +dowing +dowitch +dowitchers +dowiyogo +dowjones +dowker +dowl +dowlas +dowless +dowling +dowload +dowloading +down +downbear +downbeard +downbeats +downby +downcanyon +downcast +downcastly +downcastness +downcasts +downcayon +downcome +downcomer +downcoming +downcourt +downcry +downcurved +downcut +downdale +downdraft +downed +downer +downers +downersgrove +downes +downey +downface +downfall +downfallen +downfalling +downfalls +downfeed +downflow +downfold +downfolded +downgate +downgone +downgraded +downgrades +downgrading +downgrowth +downham +downhanging +downhaul +downheaded +downhearted +downhill +downhills +downie +downier +downiest +downieville +downily +downiness +downing +downingia +downingtown +downland +downless +downlie +downlier +downligging +downlike +downline +downlink +downlinked +downlinking +downlinks +download +downloadable +downloaded +downloader +downloading +downloadoff +downloadon +downloads +downlooked +downlooker +downlying +downmost +downmy +downness +downplayed +downplaying +downplays +downpouring +downpours +downrange +downreaching +downrightly +downrush +downrushing +downs +downset +downshare +downshift +downshifted +downshifting +downshifts +downshore +downsinking +downsitting +downsize +downsized +downsizers +downsizes +downsizing +downsliding +downslip +downslope +downsman +downspouts +downstage +downstairs +downstater +downstep +downstream +downstreet +downstroke +downstrokes +downsville +downswing +downswings +downtake +downthrow +downthrown +downthrust +downtime +downtimes +downto +downton +downtowns +downtreading +downtrends +downtrod +downturns +downward +downwardly +downwardness +downwards +downway +downweed +downweigh +downweight +downweighted +downwind +downwith +downy +dowp +dowries +dowry +dows +dowsabel +dowse +dowsed +dowser +dowsers +dowses +dowset +dowsing +dowson +doxa +doxantha +doxastic +doxasticon +doxie +doxies +doxographer +doxography +doxological +doxologies +doxologize +doxology +doxy +doyaayo +doyau +doyayo +doybel +doydut +doyen +doyenne +doyennes +doyens +doyhamboure +doyle +doyles +doylestown +doyley +doylies +doyline +doyly +doyon +doze +dozed +dozen +dozened +dozener +dozening +dozens +dozenth +dozenths +dozer +dozers +dozes +dozier +doziest +dozily +doziness +dozing +dozois +dozous +dozy +dozza +dozzled +dpalri +dpari +dparus +dpbonaire +dpcuracao +dper +dpierre +dplayer +dpmi +dpms +dpnbuild +dpnis +dpnlab +dprk +dpsc +dpst +draa +draal +drab +draba +drabbed +drabber +drabbest +drabbet +drabbets +drabbing +drabbish +drabble +drabbler +drabbletail +drabby +drabek +drabitou +drably +drabness +drabs +drac +dracaena +dracaenaceae +drach +drache +drachm +drachma +drachmae +drachmai +drachmal +drachmas +drachms +draci +drackman +dracma +draco +draconian +draconianism +draconic +draconically +draconid +draconis +draconism +draconites +draconitic +dracontian +dracontiasis +dracontic +dracontine +dracontites +dracontium +dracula +dracunculus +dracut +draeger +draegerman +draff +draffin +draffman +draffy +draft +draftable +draftage +drafted +draftee +draftees +drafter +drafters +draftier +draftiest +draftily +draftiness +drafting +draftings +draftman +draftmanship +draftproof +drafts +draftsman +draftswoman +draftwoman +drafty +drag +draga +dragade +dragan +dragbar +dragbolt +draged +drager +dragert +dragg +dragged +dragger +draggers +draggett +draggier +draggiest +draggily +dragginess +dragging +draggingly +draggle +draggled +draggles +draggletail +draggling +draggly +draggy +draghound +dragline +draglines +dragman +dragnea +dragnets +drago +dragoman +dragomanate +dragomanic +dragomanish +dragomans +dragomanska +dragomen +dragomie +dragomir +dragon +dragonesque +dragoness +dragonet +dragonfish +dragonflies +dragonfly +dragonhood +dragonish +dragonism +dragonize +dragonkind +dragonlady +dragonlike +dragonnade +dragonroot +dragons +dragonslayer +dragontail +dragonwort +dragoonable +dragoonade +dragoonage +dragooned +dragooner +dragooning +dragoons +dragos +dragrope +dragropes +drags +dragsaw +dragsawing +dragsman +dragstaff +dragster +dragsters +dragtext +dragula +drahota +draier +drail +drain +drainable +drainage +drainages +drainboard +draine +drained +drainer +drainerman +drainers +draining +drainless +drainman +drainpipe +drainpipes +drains +draintile +draisine +drakage +drake +drakes +drakesboro +drakesbranch +drakestone +drakesville +drakon +drakonia +drakonite +drama +dramalogue +dramamine +dramas +dramatic +dramatical +dramatically +dramaticism +dramatics +dramaticule +dramatis +dramatism +dramatists +dramatizable +dramatize +dramatized +dramatizer +dramatizes +dramatizing +dramaturge +dramaturgic +dramaturgist +dramia +dramm +drammage +dramme +drammed +drammer +dramming +drammock +drams +dramseller +dramshop +drane +drang +drank +dransfield +drant +drapable +draparnaldia +drape +drapeable +draped +draper +draperess +draperied +draperies +drapers +drapes +drapetomania +draping +drapinska +drapke +drappel +drapping +draque +dras +drasco +drassid +drassidae +drastic +drastically +drat +dratchell +drate +drats +dratted +dratting +draught +draughtboard +draughthouse +draughtier +draughtiest +draughting +draughtman +draughts +draughtsman +draughty +draulio +drave +dravei +dravenka +dravens +draves +dravic +dravida +dravidian +dravidic +dravido +dravosburg +dravot +dravya +draw +drawable +drawarm +drawback +drawbacks +drawbar +drawbars +drawbeam +drawbench +drawboard +drawbolt +drawbore +drawboy +drawbridge +drawbridges +drawcansir +drawcat +drawcut +drawdown +drawee +drawer +drawers +draweth +drawfile +drawfiling +drawgate +drawgear +drawglove +drawhead +drawhorse +drawing +drawinghand +drawingroom +drawings +drawit +drawk +drawknife +drawknives +drawknot +drawlatch +drawled +drawler +drawlers +drawlier +drawling +drawlingly +drawlingness +drawlink +drawloom +drawls +drawly +drawn +drawnet +drawnly +drawnness +drawnout +drawnwork +drawoff +drawout +drawplate +drawpoint +drawrod +draws +drawshave +drawsheet +drawspan +drawspring +drawstop +drawstring +drawstrings +drawthe +drawtogether +drawtongs +drawtube +drax +dray +drayage +drayages +drayden +drayed +draying +drayman +draymen +drays +drayson +drayton +drazac +drazel +drazen +drbdos +drbios +drcb +drcvax +drea +dread +dreadable +dreaded +dreader +dreadful +dreadfully +dreadfulness +dreadfuls +dreadhead +dreading +dreadingly +dreadless +dreadlessly +dreadlocks +dreadly +dreadnaught +dreadness +dreadnoughts +dreads +dream +dreamage +dreamchild +dreamed +dreamer +dreamers +dreamery +dreameth +dreamful +dreamfully +dreamfulness +dreamhole +dreamhouse +dreamier +dreamiest +dreamily +dreamin +dreaminess +dreaming +dreamingly +dreamish +dreamland +dreamless +dreamlessly +dreamlet +dreamlike +dreamlit +dreamlore +dreams +dreamscape +dreamsily +dreamsiness +dreamsy +dreamtide +dreamweaver +dreamwhile +dreamwise +dreamworld +dreamy +drear +drearfully +drearier +drearies +dreariest +drearily +dreariment +dreariness +drearisome +drearly +drearness +dreary +drebneva +dreck +drecks +drecnet +dred +dreddy +dredge +dredged +dredgeful +dredger +dredgers +dredges +dredging +dredgings +dredi +dree +dreelan +dreelen +dreem +dreen +dreep +dreepiness +dreepy +dreese +drefahl +dreggier +dreggiest +dreggily +dregginess +dreggish +dreggy +dregless +dregs +drehu +dreidel +dreidels +dreidl +dreidls +dreier +dreikikir +dreiling +dreisbach +dreissensia +dreissiger +dreizehn +drek +dreknet +dreks +dreky +dremann +drenan +drenched +drencher +drenchers +drenches +drenching +drenchingly +dreng +drengage +drengene +drennan +drennen +drenner +drenter +drenthe +dreo +drepanaspis +drepanidae +drepanididae +drepaniform +drepanis +drepanium +drepanoid +dreparnaudia +drescher +dresda +dresdel +dresden +dresher +dreske +dress +dressage +dressages +dressar +dressed +dresser +dressers +dressership +dresses +dresseth +dressier +dressiest +dressily +dressiness +dressing +dressings +dressler +dressline +dressmaker +dressmakers +dressmakery +dressmaking +drest +drestro +dretsky +drev +drevo +drew +drewe +drewes +drewest +drewite +drewitz +drewryville +drewsey +drewsvillenh +drexel +drexelhill +drexler +dreyer +dreyfus +dreyfusism +dreyfusist +dreyfuss +drezner +dria +driafleisuma +drias +dribb +dribbed +dribbing +dribble +dribbled +dribblement +dribbler +dribblers +dribbles +dribblet +dribblets +dribbling +driblet +driblets +dribs +driddle +dried +driedger +driedst +drieka +drierman +driers +dries +driessler +driest +drieth +drift +driftage +driftages +driftbolt +drifted +drifter +drifters +driftier +driftiest +drifting +driftingly +driftland +driftless +driftlet +driftman +drifton +driftpiece +driftpin +driftpins +drifts +driftway +driftweed +driftwind +driftwood +drifty +driggers +driggs +drightin +drill +drilled +driller +drillers +drillet +drilling +drillings +drillman +drillmaster +drillmasters +drills +drillstock +drilon +drily +drimys +drina +drinda +dringle +drink +drinkability +drinkable +drinkably +drinke +drinkee +drinker +drinkers +drinketh +drinking +drinkless +drinkproof +drinks +drinkwater +drinn +drinnan +drion +drip +dripless +dripped +dripper +drippers +drippier +drippiest +dripping +drippings +dripple +dripproof +drips +dripstick +dripstone +dript +driscoll +drisheen +drisk +dritte +drivable +drivage +drivas +drive +driveawake +driveaway +driveboat +drivebolt +drivehead +drivel +driveled +driveler +drivelers +driveling +drivelingly +drivelled +driveller +drivellers +drivelling +drivels +driven +drivepicker +drivepipe +driver +driverless +drivers +drivership +driverthat +driverto +drives +drivescrew +drivespace +driveth +driveways +drivewell +driving +drivingly +drivparm +drizzle +drizzled +drizzles +drizzlier +drizzliest +drizzling +drjones +drms +drno +drobeny +drobetaturnu +drobnik +drochuil +droddum +drofland +droger +drogh +drogher +drogherman +drogo +drogue +drogues +drohocka +droia +droid +droil +droit +droits +droitsman +droitural +droiturel +droitwich +drokpa +drole +drolet +droll +droller +drolleries +drollery +drollest +drollet +drolling +drollingly +drollish +drollishness +drollist +drollness +drolls +drolly +dromaeus +dromard +drome +dromedarian +dromedaries +dromedarist +dromedary +drometer +dromiacea +dromic +dromiceiidae +dromiceius +dromicia +dromm +dromograph +dromomania +dromometer +dromond +dromornis +dromos +dromotropic +drona +dronage +dronazzi +drone +droned +dronepipe +droner +droners +drones +drongo +drongos +droning +droningly +dronish +dronishly +dronishness +dronk +dronkgrass +drony +drood +drool +drooled +drooling +droolproof +drools +drooped +drooper +droopier +droopiest +droopily +droopiness +drooping +droopingly +droopingness +droops +droopt +drootin +drop +dropberry +dropcloth +dropdown +dropfiles +dropflower +dropin +dropins +dropke +dropkick +dropkicker +dropkicks +droplet +droplets +droplight +droplike +dropling +dropman +dropout +dropouts +dropped +dropper +droppers +droppeth +dropping +droppingly +droppings +droppy +drops +dropseed +dropshots +dropsical +dropsically +dropsied +dropsies +dropsite +dropsy +dropsywort +dropt +dropwise +dropworm +dropwort +dropworts +dror +drori +droschken +drosera +droseraceae +droseraceous +drosh +droshki +droshkies +droshky +droskies +drosky +drosograph +drosometer +drosophilae +drosophyllum +dross +drossel +drosselmeyer +drosser +drosses +drossier +drossiest +drossiness +drossless +drossos +drossy +drostdy +droste +droud +drouet +drought +droughter +droughtiness +droughts +droughty +drouin +drouk +drouot +drout +drouth +drouthy +drove +droved +drover +drovers +droves +drovin +droving +drovot +drovy +drow +drown +drownd +drownded +drownder +drownding +drownds +drowned +drowner +drowners +drowning +drowningly +drownings +drowns +drowse +drowsed +drowses +drowsier +drowsiest +drowsily +drowsiness +drowsing +drowze +droysen +droz +drozdek +drseuss +drubbed +drubber +drubbers +drubbing +drubbings +drubbly +drubea +drubld +drubs +druce +druci +drucie +drucill +drucken +drucy +drudged +drudger +drudgeries +drudgers +drudges +drudging +drudgingly +drudgism +drudy +drue +druery +druffel +drug +druga +drugeteria +drugged +drugger +druggery +drugget +druggeting +druggies +druggist +druggister +druggists +druggy +drugim +druginduced +drugless +drugmaker +drugman +drugoe +drugom +drugomu +drugoy +drugrelated +drugs +drugshop +drugstone +drugstore +drugstores +drugz +druidess +druidesses +druidic +druidical +druidism +druidisms +druidry +druids +druith +drujat +drujish +drujok +drukai +drukar +drukay +drukha +drukke +drukpa +drum +drumbeat +drumbeats +drumble +drumbledore +drumbler +drumfire +drumfish +drumheads +drumheller +drumlike +drumlin +drumline +drumlinoid +drumlins +drumloid +drumloidal +drumloop +drumly +drummed +drummemory +drummer +drummers +drumming +drummle +drummond +drummonds +drummy +drumnbass +drumore +drumread +drumreads +drumright +drumroll +drumrolls +drums +drumskin +drumstick +drumsticks +drumwood +drumz +druna +drung +drungar +drunk +drunka +drunkard +drunkards +drunked +drunken +drunkenly +drunkenness +drunkensome +drunkenwise +drunker +drunkery +drunkest +drunkly +drunkometer +drunks +drupa +drupaceae +drupaceous +drupal +drupe +drupel +drupelet +drupelets +drupeole +drupes +drupetum +drupiferous +druse +drusean +drusedom +drusi +drusie +drusilla +drussard +drussus +drusus +drusy +druthers +druxiness +druxy +druze +druzeta +druzey +druzhba +druzya +drvlock +drvoff +drweb +drwho +drwiega +drwxrwxrwt +drwxrwxrwx +dryable +dryades +dryadetum +dryadic +dryads +dryandra +dryas +dryasdust +drybeard +drybrained +drybranch +drycas +drycoal +drycreek +dryden +drydenian +drydenism +drydocks +dryer +dryers +dryest +dryfoot +dryfork +dryg +dryga +drygoodsman +dryhouse +drying +dryish +dryjishe +drylot +dryly +drynan +drynaria +dryness +drynesses +drynurse +dryobalanops +dryoi +dryope +dryopes +dryophyllum +dryopians +dryopithecid +dryopithecus +dryops +dryopteris +dryopteroid +drypoint +drypoints +dryprong +dryridge +dryrot +dryrun +drys +drysalter +drysaltery +drysdale +dryshod +dryster +dryth +drywall +drywalls +dryworker +dryzei +drzewicz +drzog +drzwi +dsac +dsbb +dsceh +dschagga +dschang +dschinghis +dschinhis +dschubba +dschugha +dschulfa +dsdd +dsect +dsects +dsfvax +dshd +dskcompr +dskxtrct +dsmi +dsname +dsnames +dspo +dspvax +dsqd +dsql +dsrd +dsreds +dsrgsun +dsri +dssd +dsseldrf +dssnap +dstlip +dstuffs +dstune +dtadiect +dtan +dtic +dtix +dtrc +dtrt +dtset +dtvms +duad +duadic +duads +dual +duala +duali +dualin +dualisms +dualist +dualistic +dualists +dualities +duality +dualization +dualize +dualized +dualizes +dualizing +dualla +dually +dualmode +dualmutef +dualogue +duals +duampu +duan +duana +duane +duanesburg +duang +duangchai +duangdao +duangphorn +duanne +duano +duarch +duarchy +duarte +duat +duau +duauru +dubac +dubach +dubai +dubak +dubala +dubarry +dubash +dubayy +dubb +dubba +dubbah +dubbed +dubbelman +dubbeltje +dubber +dubberly +dubbers +dubbin +dubbing +dubbings +dubbins +dubby +dube +dubea +dubeau +dubeck +dubee +duberi +duberly +dubes +dubhgall +dubiago +dubieties +dubiety +dubillard +dubin +dubins +dubinsky +dubio +dubiosity +dubious +dubiously +dubiousness +dubit +dubitably +dubitancy +dubitant +dubitate +dubitatingly +dubitation +dubitative +dubitatively +dubitousness +dubitzki +dubla +dubli +dublin +dubliner +dublino +dublon +dubly +dubmode +dubois +duboise +duboisia +duboisin +duboisine +duboistown +dubonnet +dubonnets +dubor +dubose +duboshin +dubost +dubourg +dubov +duboy +dubray +dubre +dubreck +dubreka +dubreuil +dubreuze +dubrey +dubroff +dubrou +dubrov +dubrovin +dubrovna +dubrovskaya +dubrovsky +dubroy +dubs +dubstar +dubtribe +dubu +dubuc +dubucourt +dubuduru +dubuisson +dubulu +dubuque +duby +ducal +ducally +ducamara +ducape +ducato +ducatoon +ducats +ducaux +ducdame +duce +ducelle +duceppe +duces +ducey +duchaine +duchamp +duchane +ducharme +duchaussoy +ducheane +duchesi +duchesne +duchesnea +duchess +duchesse +duchesses +duchesslike +duchi +duchies +duchin +duchy +ducic +ducie +duciel +duck +duckbill +duckbills +duckblind +duckboard +duckboards +duckboat +ducked +ducker +duckers +duckery +duckfoot +duckhearted +duckhill +duckhood +duckhouse +duckhunt +duckhunting +duckie +duckier +duckies +duckiest +ducking +ducklings +ducklingship +duckmeat +duckpin +duckpins +duckpond +duckriver +ducks +ducksoup +duckstein +duckstone +ducktail +ducktails +ducktown +duckwater +duckweed +duckweeds +duckwife +duckwing +duckworth +ducky +ducligan +duco +ducor +ducos +ducreux +ducros +ducrosa +duct +ductal +ducted +ductibility +ductible +ductilely +ductileness +ductilimeter +ductility +ductilize +ducting +ductings +duction +ductless +ductor +ducts +ductule +ducula +duculinae +duda +dudaim +dudarova +dudas +dudder +duddery +duddies +duddy +dude +dudeen +dudek +dudes +dudewicz +dudgeon +dudgeons +dudh +dudi +dudicourt +dudikoff +dudine +dudinka +dudish +dudishly +dudishness +dudism +dudler +dudley +dudleya +dudleyite +dudman +dudolf +dudon +dudrum +duds +dudu +duduela +dudying +duece +dueck +dueker +duekoue +duel +dueled +dueler +duelers +dueling +duelist +duelistic +duelists +duell +duelled +dueller +duellers +duelling +duellist +duellists +duello +duellos +duelo +duels +duena +dueness +duenna +duennadom +duennas +duennaship +duensing +duenweg +dueppen +duer +duering +dueringer +duerr +dues +duespaying +duessa +duets +duetted +duetting +duettist +duettists +duewest +dufala +dufau +duffadar +duffau +duffel +duffell +duffels +duffer +dufferdom +duffers +duffield +duffin +duffing +duffle +duffles +duffney +dufford +duffs +duffy +dufilho +dufloth +duflours +dufoil +duford +dufour +dufrenite +dufrenoysite +dufresne +duft +dufter +dufterdar +duftery +dufur +duga +dugal +dugan +dugar +dugarwa +dugas +dugbo +dugdug +duggan +dugger +duggleby +duggler +duggoi +duggs +dugong +dugongidae +dugongs +dugouts +dugs +dugspur +duguay +dugue +duguet +duguid +dugun +dugunza +dugur +duguranchi +dugurawa +duguri +dugurila +duguru +dugusa +duguza +dugway +dugwor +dugwujur +duhalde +duhamel +duhat +duhblyoo +duhmass +duhnda +duhr +duhtu +duiker +duikerbok +duilie +duilin +duilio +duim +duindui +duinhir +duisitor +duit +duitsman +dujan +duka +dukaekor +dukai +dukaiya +dukakis +dukanchi +dukanci +dukas +dukawa +duke +dukecenter +dukedoms +dukeleto +dukeling +dukely +dukery +dukes +dukesbury +dukeship +dukhn +dukker +dukkeripen +dukore +dukpa +dukpu +dukpuwasa +dukshi +dukslinu +duktengfif +duku +dukuna +dukunza +dukuri +dukwa +dula +dulac +dulaine +dulaney +dulanganes +dulat +dulbert +dulbret +dulbu +dulce +dulcea +dulcetly +dulcetness +dulcets +dulci +dulcia +dulcian +dulciana +dulcie +dulcifluous +dulcify +dulcigenic +dulcimer +dulcimers +dulcin +dulcine +dulcinea +dulcinist +dulcitol +dulcitude +dulcorate +dulcoration +dulcose +dulcy +duledge +duler +dules +duli +dulia +dulic +dulien +dulier +duliit +dulin +dulit +duljit +dull +dulla +dullac +dullaghan +dullard +dullardism +dullardness +dullards +dullay +dullbrained +dullea +dulled +duller +dullery +dulles +dullest +dullhead +dullhearted +dullify +dullin +dulling +dullish +dullity +dullness +dullpate +dulls +dullsells +dullsome +dully +dulmage +dulman +dulness +dulong +dulosis +dulotic +dulra +dulsea +dulseman +dulses +dult +dultie +dulude +duluth +dulwilly +dulzura +dumaesh +dumagat +dumaget +dumaguete +dumah +dumaine +dumais +dumaist +dumaiu +dumaki +dumal +dumansky +dumaran +dumaring +dumas +dumayu +dumb +dumba +dumbass +dumbbeller +dumbbells +dumbcow +dumbea +dumbed +dumbeddown +dumber +dumbest +dumbfound +dumbfounder +dumbhead +dumbing +dumbledore +dumbly +dumbness +dumbo +dumbowe +dumbrille +dumbs +dumbstruck +dumbu +dumbule +dumbwaiter +dumbwaiters +dumcke +dumdum +dumdums +dume +dumec +dumeniaud +dumensnil +dumesnil +dumestre +dumeter +dumetose +dumfound +dumfounded +dumfounder +dumfounding +dumfounds +dumfries +dumi +dumitriu +dumke +dummar +dummel +dummer +dummered +dummied +dummies +dumminess +dummkopf +dummkopfs +dummy +dummying +dummyism +dummyweed +dumne +dumoga +dumonceau +dumond +dumont +dumontia +dumontiaceae +dumontite +dumorte +dumortier +dumortierite +dumose +dumosity +dumouchel +dumouchelle +dump +dumpage +dumpas +dumpcart +dumpcarts +dumped +dumper +dumpers +dumpfile +dumphost +dumpier +dumpiest +dumpily +dumpiness +dumping +dumpings +dumpish +dumpishly +dumpishness +dumpkopfen +dumple +dumpling +dumplings +dumpo +dumpofiye +dumpoke +dumps +dumpster +dumpston +dumptrucks +dumpu +dumsola +dumu +dumun +dumut +dumyat +duna +dunabogaya +dunadan +dunagan +dunair +dunajski +dunal +dunant +dunaujvaros +dunaway +dunbar +dunberry +dunbird +dunbridge +duncan +duncanfalls +duncannon +duncans +duncansmills +duncanson +duncansville +duncanville +duncaster +duncedom +duncehood +duncery +dunces +dunch +dunciad +duncical +duncify +duncish +duncishly +duncishness +dunck +duncker +duncombe +dundalks +dundas +dundasite +dundee +dundees +dunder +dunderhead +dunderheaded +dunderheads +dunderpate +dunderpates +dundgovi +dundic +dundin +dundrom +dundu +dundy +dune +dunelike +dunellen +dunes +dunfermline +dunfield +dunfish +dunford +dung +dungan +dungannon +dungannonite +dungaree +dungarees +dungari +dungbeck +dungbird +dungbred +dunged +dungeon +dungeoner +dungeonlike +dungeons +dunger +dunghill +dunghills +dunghilly +dungi +dungier +dungiest +dunging +dungmali +dungol +dungon +dungri +dungs +dungsam +dungu +dunguntung +dungy +dungyard +dunham +dunharrow +dunhere +dunhill +dunik +dunite +dunjawa +dunjo +dunkadoo +dunkard +dunked +dunkel +dunkelberg +dunkelman +dunken +dunker +dunkerque +dunkers +dunkerton +dunki +dunking +dunkinson +dunkirk +dunkirker +dunks +dunkus +dunlap +dunlay +dunleavy +dunlendings +dunlevy +dunlin +dunlo +dunlop +dunlow +dunmali +dunmor +dunmore +dunn +dunnage +dunnages +dunncenter +dunne +dunnebier +dunned +dunnegan +dunneisen +dunnell +dunnellon +dunner +dunness +dunnett +dunnetts +dunnigan +dunning +dunningham +dunnion +dunnish +dunnite +dunno +dunnock +dunnsville +dunnville +dunny +dunnybrigg +dunod +dunowrthy +dunoyer +dunphy +dunpickle +dunreith +dunroy +duns +dunseith +dunsford +dunsheath +dunsmore +dunsmuir +dunson +dunst +dunstable +dunstan +dunt +duntle +dunton +duntz +dunu +dunwoody +dunworthy +duny +dunyapan +dunziekte +duocosane +duodecane +duodecennial +duodecillion +duodecimal +duodecimally +duodecimals +duodecimfid +duodecimo +duodecimole +duodecimomos +duodecuple +duodedena +duodedenums +duodena +duodenal +duodenary +duodenate +duodenation +duodene +duodenectomy +duodenitis +duodenogram +duodenoscopy +duodenostomy +duodenotomy +duodenum +duodenums +duodrama +duograph +duogravure +duole +duoliteral +duologue +duologues +duomachy +duong +duopod +duopolistic +duopsonistic +duopsony +duornik +duos +duosecant +duotone +duotones +duotype +dupa +dupability +dupable +dupac +dupack +dupaninan +dupas +dupaul +dupax +dupe +dupea +duped +dupedom +duper +dupere +duperey +duperies +duperoux +dupers +dupery +dupes +dupeyron +dupi +dupieu +duping +dupion +dupla +duplacey +duplan +duplanty +duplation +duplay +duple +duplessis +duplet +duplexed +duplexer +duplexers +duplexes +duplexing +duplexity +duplexs +duplicand +duplicate +duplicated +duplicates +duplicating +duplication +duplications +duplicative +duplicator +duplicators +duplicature +duplicia +duplicident +duplicitas +duplicities +duplicitous +duplify +duplone +dupo +dupois +duponchel +dupondius +dupont +duponta +dupped +duppy +dupras +dupre +dupree +dupres +dupreyon +duprez +dupuis +dupuy +dupuyer +duque +duquesne +duquette +duquoin +dura +durabilities +durability +durable +durableness +durables +durably +durag +durain +durairajan +durako +dural +durali +duralumin +duram +duramatral +duramen +duran +durances +durand +durandarte +duranduran +durangite +durani +duranmin +durant +duranta +durantaye +durante +duranyl +duraplasty +duraquara +duras +duraspinalis +duration +durational +durationless +durations +durative +duratives +duraux +durax +durazno +durba +durbachite +durban +durbar +durbet +durbeyfield +durbin +durbins +durbinwatson +durch +durchgefuert +durda +durdenite +durdles +durduran +dure +durenberger +durene +durenol +durer +duress +duresses +duressor +dureth +durette +durfee +durg +durga +durgan +durham +durhamville +duri +durian +duriankari +duriankere +duricrust +duridine +durie +durin +durindana +during +duringa +duringer +duringly +durinsaxe +durinsbane +durio +durity +durk +durken +durko +durling +durmast +durn +durndest +durned +durneder +durnedest +durnford +durning +durns +duro +duroc +duroche +durock +durometer +durop +duropprim +duroquinone +durose +durour +durousseau +duroux +durova +durovic +durr +durra +durrance +durrbaraza +durrell +durres +durrett +durrie +durrihamdani +durrin +durring +durrs +durru +durry +dursley +dursse +durst +durston +duru +durukuli +durum +duruma +durums +duruy +durva +durwan +durwaun +dury +duryea +duryeb +duryes +duryl +duryodhana +duryonna +durzada +dusa +dusack +dusadee +dusan +dusay +duschesne +duscle +duse +dusen +dusenberry +duser +dush +dushan +dushi +dushore +dusio +dusk +dusked +dusken +duskier +duskiest +duskily +duskiness +dusking +duskingtide +duskish +duskishly +duskishness +duskly +duskness +dusko +dusks +dusky +dusner +dusnir +dusoir +dusomos +duson +dussart +dussault +dussell +dussolier +dussollier +dust +dustbin +dustbins +dustbox +dustcloth +dustclouds +dustcolored +dusted +dustee +duster +dusterman +dusters +dustfall +dustheap +dustheaps +dustier +dustiest +dustily +dustin +dustine +dustiness +dusting +dustjunk +dustladen +dustless +dustlessness +dustman +dustmen +dustoori +dustpan +dustpans +dustproof +dustrag +dustrags +dusts +duststorms +dustuck +dustup +dustups +dustwoman +dusty +dustye +dustyfoot +dustystation +dusum +dusun +dusunic +dusunmurut +dusur +dutch +dutcher +dutchess +dutchflat +dutchify +dutchjohn +dutchman +dutchmen +dutchowned +dutchtown +dutchwoman +dutchy +duteous +duteously +duteousness +duthie +duthilleul +dutiability +dutied +duties +dutiful +dutifully +dutifulness +dutii +dutil +dutka +dutko +dutoit +dutour +dutra +dutreuil +dutronc +dutse +dutt +dutta +duty +dutybound +dutyfree +dutymonger +dutzow +duumvir +duumviral +duumvirate +duun +duupa +duvad +duvak +duval +duvall +duvalle +duvarci +duvauchelle +duvde +duveen +duvele +duvernoy +duvet +duvetyn +duvetyne +duvigne +duvitski +duvle +duvoisin +duvre +duwai +duwamish +duwe +duwet +duxbury +duyck +duyer +duyker +duymaer +duyn +dvaita +dvandva +dvcopy +dveri +dvina +dvips +dvmpeg +dvoboj +dvoih +dvoje +dvora +dvorak +dvore +dvoretzky +dvornik +dvorska +dvsmnthn +dvuh +dwags +dwain +dwaine +dwala +dwale +dwalin +dwalm +dwamish +dwan +dwang +dwar +dwardh +dwarf +dwarfed +dwarfer +dwarfest +dwarfing +dwarfish +dwarfishly +dwarfishness +dwarfism +dwarfisms +dwarflike +dwarfling +dwarfness +dwarfowl +dwarfs +dwarfy +dwarves +dwass +dwat +dwaya +dwayberry +dwayne +dweeb +dwela +dwell +dwelled +dweller +dwellers +dwellest +dwelleth +dwelling +dwellings +dwells +dwelly +dwelt +dwennel +dwera +dwerger +dwglock +dwier +dwiggins +dwight +dwim +dwimc +dwimmerlaik +dwindle +dwindled +dwindlement +dwindles +dwindling +dwine +dwingi +dwinsock +dwire +dwite +dwivedi +dwon +dword +dworkin +dwornik +dworsky +dwyer +dwyka +dyabarma +dyable +dyadaso +dyadic +dyadics +dyads +dyafarabe +dyago +dyair +dyak +dyakanke +dyakish +dyakonov +dyala +dyalanu +dyall +dyalon +dyalonke +dyamala +dyamate +dyan +dyana +dyane +dyangirte +dyann +dyanna +dyanne +dyanu +dyapa +dyarchic +dyarchical +dyarchy +dyarma +dyas +dyassic +dyaster +dyaus +dyba +dybbuk +dybbukim +dybbuks +dybenko +dyce +dyck +dycusburg +dyeable +dyed +dyegueme +dyehouse +dyeings +dyeleaves +dyemaker +dyemaking +dyen +dyeraidy +dyerma +dyers +dyersburg +dyersville +dyes +dyess +dyester +dyestuff +dyestuffs +dyeware +dyeweed +dyewood +dyfed +dygogram +dyimini +dying +dyingly +dyingness +dyings +dyirbal +dyirbalic +dyke +dykehopper +dykeman +dyken +dyker +dykereeve +dykes +dyking +dykstra +dylan +dyle +dyllis +dymally +dymchurch +dyment +dymon +dymond +dyna +dynacomm +dynagraph +dynah +dynaip +dynam +dynamene +dynameter +dynametric +dynametrical +dynamic +dynamical +dynamically +dynamics +dynamicstore +dynamint +dynamis +dynamisms +dynamist +dynamistic +dynamists +dynamitard +dynamite +dynamited +dynamiter +dynamiters +dynamites +dynamitic +dynamitical +dynamiting +dynamitish +dynamitism +dynamitist +dynamix +dynamization +dynamize +dynamo +dynamogenic +dynamogenous +dynamogeny +dynamometer +dynamometers +dynamometric +dynamometry +dynamoneure +dynamophone +dynamos +dynamoscope +dynamostatic +dynamotor +dynar +dynarski +dynastes +dynastical +dynastically +dynasticism +dynastid +dynastidan +dynastides +dynasties +dynastinae +dynasts +dynatron +dynatrons +dynazip +dyndns +dynes +dynie +dynip +dynkin +dynkins +dynner +dynode +dyoba +dyokay +dyola +dyolof +dyophone +dyophysite +dyophysitic +dyophysitism +dyotheism +dyothelete +dyotheletian +dyotheletic +dyotheletism +dyothelism +dyoula +dyphone +dyrdahl +dyrek +dyrenforth +dysacousia +dysacousis +dysanalyte +dysaphia +dysart +dysarthria +dysarthric +dysarthrosis +dysbulia +dysbulic +dyschiria +dyschroa +dyschroia +dyschronous +dysci +dyscrasia +dyscrasial +dyscrasic +dyscrasite +dyscratic +dysenteric +dysenterical +dysenteries +dysentery +dysepulotic +dyserethisia +dysergasia +dysergia +dysesthesia +dysesthetic +dysfunction +dysfunctions +dysgenesic +dysgenesis +dysgenetic +dysgenic +dysgenical +dysgenics +dysgeogenous +dysgnosia +dysgraphia +dysidrosis +dyskeratosis +dyskinesia +dyskinetic +dyslalia +dyslectic +dyslexia +dyslexias +dyslexic +dyslexics +dyslogia +dyslogistic +dyslogy +dysluite +dyslysin +dysmenorrhea +dysmerism +dysmeristic +dysmeromorph +dysmetria +dysmnesia +dysmorphism +dysneuria +dysnomy +dysodile +dyson +dysona +dysorexia +dysorexy +dysort +dysoxidation +dysoxidize +dyspathetic +dyspathy +dyspepsia +dyspepsy +dyspeptical +dyspeptics +dysphagia +dysphagic +dysphasia +dysphasic +dysphemia +dysphonia +dysphonic +dysphony +dysphoria +dysphoric +dysphotic +dysphrasia +dysphrenia +dysplastic +dyspnaeal +dyspnaeic +dyspncea +dyspnea +dyspneal +dyspneic +dyspnoic +dysprosia +dysraphia +dyssnite +dyssodia +dyssynergia +dyssystole +dyst +dystaxia +dystectic +dysteleology +dystocia +dystocial +dystome +dystomic +dystomous +dystopia +dystopian +dystopias +dystrophia +dystrophic +dystrophies +dysuria +dysuric +dysyntribite +dytiscid +dytiscidae +dytiscus +dyula +dyumba +dyurop +dyvig +dzad +dzaiven +dzakhachin +dzalamo +dzama +dzamba +dzambazi +dzando +dzanggali +dzaoudzi +dzaui +dzavhan +dzawi +dzaze +dzek +dzem +dzemay +dzepao +dzer +dzeren +dzevad +dzhalil +dzhangar +dzhanibekov +dzhek +dzheki +dzhemper +dzhempera +dzhidi +dzhudezmo +dzhuhuric +dzhulfa +dzhunyan +dziadzia +dziamba +dziawa +dzibidzonga +dzidek +dziemian +dziewonski +dzihana +dzili +dzimou +dzinda +dzing +dzioba +dzlerzbn +dzodinka +dzombak +dzong +dzonga +dzongadzibi +dzongkha +dzorgai +dzorgaish +dzowo +dzubucua +dzubukua +dzukish +dzumbo +dzumdzum +dzuna +dzundeva +dzundza +dzung +dzungar +dzunza +dzuoasi +dzus +dzuuba +dzwabo +eaca +each +eachcommand +eachelle +eachwhere +eada +eadb +eades +eadie +eadith +eads +eady +eagar +eagarville +eagels +eager +eagerer +eagerest +eagerly +eagerness +eagers +eagle +eaglebauer +eaglebay +eaglebend +eaglebridge +eaglebutte +eaglecreek +eagleeyed +eaglegrove +eagleharbor +eaglelake +eaglelike +eaglenest +eaglepass +eaglepoint +eagleriver +eaglerock +eagles +eaglescout +eaglesmere +eagleson +eaglesprings +eagless +eaglestone +eaglet +eagletown +eaglets +eagleville +eaglewood +eagre +eakes +eakins +eakly +ealasaid +ealdorman +eales +eama +eames +eammon +eamon +eamonn +eansor +earache +earaches +earbob +earcap +earcockle +eardeafening +eardrop +eardropper +eardrops +eardrums +eareckson +eared +earendil +earflap +earflaps +earflower +earful +earfuls +earhart +earhole +earing +earings +earjewel +earl +earlap +earlaps +earldom +earldoms +earle +earles +earless +earlet +earleton +earleville +earley +earlham +earlier +earliest +earlike +earlimart +earliness +earling +earlington +earlish +earlobe +earlobes +earlock +earlocks +earlpark +earls +earlsboro +earlship +earlships +earlton +earlville +early +earlybranch +earlylines +earlysville +earma +earmarked +earmarking +earmarkings +earmarks +earmaster +earmuff +earmuffs +earn +earnable +earned +earner +earners +earnest +earnestly +earnestness +earnests +earneth +earnful +earnhardt +earning +earnings +earns +earnshaw +earnur +earopen +earp +earphone +earphones +earpick +earpiece +earpieces +earpiercing +earplug +earplugs +earps +earreach +earrending +earring +earringed +earrings +ears +earsaver +earscrew +earshell +earshot +earshots +earsore +earstone +eartab +eartagged +earth +eartha +earthboard +earthborn +earthbound +earthbred +earthdrake +earthed +earthen +earthenware +earthfall +earthfast +earthflax +earthgall +earthglobe +earthgrubber +earthian +earthier +earthiest +earthily +earthiness +earthing +earthist +earthists +earthkin +earthless +earthlier +earthliest +earthlight +earthlike +earthliness +earthling +earthlings +earthly +earthmaker +earthmaking +earthman +earthmother +earthmover +earthmovers +earthmoving +earthnut +earthpea +earthquake +earthquaked +earthquaken +earthquakes +earthquaking +earths +earthsets +earthshaker +earthshine +earthshock +earthslide +earthsmoke +earthstar +earthtime +earthtongue +earthtrek +earthtuner +earthwall +earthward +earthwards +earthwork +earthworks +earthworm +earthworms +earthy +earticular +earwax +earwaxes +earwigged +earwigginess +earwigging +earwiggy +earwigs +earwitness +earwood +earworm +earworms +earwort +easaw +ease +eased +easeful +easefully +easefulness +easeless +easels +easement +easements +easer +easers +eases +easially +easier +easies +easiest +easily +easiness +easing +easley +eason +easson +east +eastaboga +eastabout +eastabuchie +eastalton +eastamherst +eastandover +eastanollee +eastaurora +eastbaldwin +eastbank +eastbarre +eastbend +eastberlin +eastbernard +eastberne +eastbethany +eastboothbay +eastbrady +eastbranch +eastburke +eastbutler +eastcalais +eastcanaan +eastcandia +eastcarbon +eastcentral +eastchatham +eastchicago +eastclaridon +eastconcord +eastcorinth +eastdennis +eastderry +eastdetroit +eastdixfield +eastdorset +eastdouglas +eastdover +eastdubuque +eastdurham +eastearl +eastellijay +eastely +easter +easterbrook +easterlies +easterling +easterlings +easterly +eastern +easterner +easterners +easternism +easternly +easternmost +easters +eastertide +eastfalmouth +eastflatrock +eastford +eastfreedom +eastfreetown +eastgerman +eastgermany +eastgranby +easthaddam +eastham +easthampton +easthanover +easthardwick +easthartford +easthartland +easthaven +easthebron +easthelena +easthickory +eastholden +easthomer +eastick +eastin +easting +eastings +eastislip +eastjewett +eastjordan +eastkingston +eastlake +eastlakeweir +eastland +eastlands +eastlansing +eastlebanon +eastlempster +eastleroy +eastley +eastliberty +eastlonex +eastlyme +eastlynn +eastlynne +eastmachias +eastman +eastmarion +eastmeadow +eastmeredith +eastmoline +eastmoriches +eastmost +eastnassau +eastnewport +eastnorwich +eastof +eastolympia +easton +eastorange +eastorland +eastorleans +eastotis +eastotto +eastover +eastpalatka +eastpalmyra +eastpembroke +eastperu +eastphalian +eastpoint +eastpoland +eastpoole +eastport +eastprairie +eastprospect +eastquogue +eastrandolph +eastre +eastreg +eastroad +eastrockaway +eastryegate +easts +eastsandwich +eastschodack +eastsebago +eastsetauket +eastside +eastsound +eastsparta +eastspencer +eaststonegap +eaststoneham +eastsullivan +eastswanzey +eastsyracuse +easttaunton +easttawas +easttexas +eastthetford +easttroy +eastus +eastview +eastville +eastwalpole +eastward +eastwardly +eastwards +eastwareham +eastwest +eastweymouth +eastwilton +eastwindsor +eastwinthrop +eastwood +easy +easycab +easycase +easycd +easyclean +easycom +easyfetcher +easymonitor +easyopen +easyredocean +easytalk +easytohandle +easytrace +easywriter +eatability +eatable +eatableness +eatables +eatage +eatanswill +eatberry +eaten +eater +eateries +eaters +eatery +eatest +eateth +eath +eating +eatings +eatme +eaton +eatonpark +eatonrapids +eatonton +eatontown +eatonville +eats +eatwell +eauclaire +eaugalle +eauripik +eauthor +eaux +eaved +eavedrop +eaver +eaves +eavesdrops +eaykit +ebadidi +ebai +ebal +ebali +ebara +ebargtuo +ebata +ebauche +ebaw +ebba +ebbed +ebberfeld +ebbesen +ebbing +ebbinghaus +ebbman +ebbs +ebcasc +ebcd +ebcdic +ebcdicvs +ebdomarius +ebed +ebedmelech +ebekwara +ebeling +ebella +ebembe +eben +ebenaceae +ebenaceous +ebenales +ebenay +ebenen +ebeneous +ebenezer +ebenjunction +ebensburg +eber +ebera +eberhard +eberhardt +eberhart +eberle +eberlin +ebersberg +ebersole +ebert +eberthella +eberts +ebervale +ebeseder +ebet +ebeteng +ebeye +ebfff +ebhele +ebiasaph +ebila +ebina +ebinger +ebionism +ebionite +ebionitic +ebionitism +ebionize +ebira +ebirah +ebiri +ebitoso +eboe +eboh +ebon +ebonee +ebonies +ebonist +ebonite +ebonites +ebonize +ebonizing +ebons +ebony +eboo +eboom +eborna +ebot +eboue +eboulement +eboze +ebracteate +ebracteolate +ebrahim +ebriate +ebrie +ebriety +ebriosity +ebrious +ebriously +ebro +ebronah +ebsee +ebsen +ebstein +ebudu +ebugombe +ebuja +ebuku +ebullate +ebullience +ebulliency +ebulliently +ebulliometer +ebullioscope +ebullioscopy +ebullition +ebullitions +ebullitive +ebulus +ebuna +ebunnoke +ebunnugbo +eburated +eburin +eburine +eburn +eburna +eburnated +eburnation +eburne +eburnean +eburneoid +eburneous +eburnian +ebwe +ecad +ecalcarate +ecamier +ecanda +ecardinal +ecardines +ecarinate +ecarte +ecas +ecassociated +ecaterina +ecaudata +ecaudate +ecballium +ecbatic +ecblastesis +ecbole +ecbolic +ecca +eccaleobion +ecce +eccentrate +eccentric +eccentrical +eccentricity +eccentrics +eccentring +ecchondroma +ecchondrosis +ecchymoma +ecchymose +ecchymosis +eccl +eccles +ecclesia +ecclesial +ecclesiarch +ecclesiarchy +ecclesiast +ecclesiastes +ecclesiastry +ecclesiology +eccleston +ecco +eccoprotic +eccrine +eccrinology +eccrisis +eccritic +eccyclema +eccyesis +ecdemic +ecdemite +ecderon +ecderonic +ecdysial +ecdysiast +ecdysis +ecesic +ecesis +ecevit +ecgonine +echad +echafaudage +echague +echandi +echappee +echar +eche +echea +echelette +echeloned +echeloning +echelonment +echelons +echeloot +echeneidae +echeneidid +echeneididae +echeneidoid +echeneis +echerd +echevaria +echevarria +echeveria +echeverria +echidnae +echidnas +echidnidae +echidzindza +echijinja +echijita +echimys +echinacea +echinal +echinate +echinid +echinidea +echinital +echinite +echinocactus +echinocaris +echinocereus +echinochloa +echinochrome +echinococcus +echinoderes +echinoderma +echinodermal +echinodermic +echinodorus +echinoid +echinoidea +echinologist +echinology +echinomys +echinopanax +echinops +echinopsine +echinorhinus +echinostoma +echinostome +echinozoa +echinulate +echinulated +echinulation +echinuliform +echinus +echis +echisubia +echitamine +echites +echitotela +echium +echiurid +echiurida +echiuroid +echiuroidea +echiurus +echnida +echo +echoaldi +echoarea +echoed +echoer +echoers +echoes +echoey +echoic +echoing +echoingly +echoism +echoisms +echoist +echoize +echola +echolalia +echolalic +echoless +echolist +echolists +echolocation +echols +echomail +echometer +echopractic +echopraxia +echos +echosaw +echospy +echotag +echotags +echowise +echuca +echus +ecija +ecijita +eciliate +eciton +ecize +ecizinza +eckart +eckartsberg +eckbart +eckehart +eckelson +eckemyr +ecker +eckerman +eckersley +eckert +eckerty +eckhardt +eckhart +eckhartmines +ecki +eckland +ecklein +eckles +eckley +ecklund +eckman +eckstein +eckstine +eckstrom +ecla +eclac +eclair +eclairs +eclampsia +eclamptic +eclar +eclats +eclc +eclectical +eclectically +eclecticism +eclecticize +eclectics +eclectism +eclectist +eclegm +eclegma +eclesctism +eclipsable +eclipsareon +eclipsation +eclipse +eclipsed +eclipser +eclipses +eclipsing +eclipsis +ecliptic +ecliptical +ecliptically +ecliptics +eclogite +eclogues +eclosion +ecmnesia +ecob +ecocafe +ecocidal +ecocide +ecoffery +ecoffey +ecoglenost +ecoid +ecok +ecol +ecole +ecoles +ecoloagalev +ecologic +ecological +ecologically +ecologies +ecologist +ecologists +ecology +ecomomist +econ +econometer +econometrics +economic +economical +economically +economics +economies +economike +economique +economiques +economism +economists +economite +economize +economized +economizer +economizers +economizes +economizing +economy +ecopad +ecophene +ecophobia +ecorse +ecorticate +ecosoc +ecospecies +ecospecific +ecostate +ecosystem +ecosystems +ecotonal +ecotone +ecotype +ecotypes +ecotypic +ecotypically +ecoute +ecowas +ecphonesis +ecphorable +ecphore +ecphoria +ecphorize +ecphrasis +ecplise +ecraaa +ecraseur +ecrasite +ecrhythmus +ecrivez +ecrm +ecroyd +ecru +ecrus +ecrustaceous +ecst +ecstacy +ecstasies +ecstasis +ecstasize +ecstasy +ecstatica +ecstatical +ecstatically +ecstaticize +ecstatics +ecstrophy +ectablished +ectad +ectadenia +ectal +ectally +ectasia +ectasis +ectatic +ectene +ectental +ectethmoid +ectethmoidal +ecthelion +ecthesis +ecthetically +ecthlipsis +ecthyma +ectiris +ectobatic +ectoblast +ectoblastic +ectocardia +ectocarpales +ectocarpic +ectocarpous +ectocarpus +ectocinerea +ectocinereal +ectocoelic +ectocondylar +ectocondyle +ectocornea +ectocranial +ectocuniform +ectocyst +ectodermal +ectodermic +ectodermosis +ectoentad +ectoenzyme +ectoethmoid +ectogene +ectogeneous +ectogenesis +ectogenic +ectogenous +ectoglia +ectognatha +ectolecithal +ectoloph +ectomere +ectomeric +ectomorph +ectomorphic +ectomorphy +ectoparasite +ectopatagium +ectophloic +ectophyte +ectophytic +ectopia +ectopistes +ectoplacenta +ectoplasm +ectoplasmic +ectoplastic +ectoplasy +ectoproct +ectoprocta +ectoproctan +ectoproctous +ectopy +ector +ectoretina +ectorganism +ectorhinal +ectosarc +ectosarcous +ectoskeleton +ectosomal +ectosome +ectosphenoid +ectosphere +ectosteal +ectosteally +ectostosis +ectotheca +ectotoxin +ectotrophi +ectotrophic +ectozoa +ectozoan +ectozoic +ectozoon +ectrodactyly +ectrogenic +ectrogeny +ectromelia +ectromelian +ectromelic +ectromelus +ectropion +ectropium +ectropometer +ectypal +ectype +ectypography +ecuador +ecuadoran +ecuadorean +ecuadorian +ecuadorperu +ecuatoriana +ecuatoriano +ecuelling +ecumenical +ecumenically +ecumenicism +ecumenicity +ecumenism +ecus +ecuyer +ecwa +ecxecuted +ecyphellate +eczema +eczemas +eczematoid +eczematosis +eczematous +edacious +edaciously +edaciousness +edacity +edain +edam +edana +edangabo +edaphic +edaphology +edaphon +edaphosauria +edaphosaurus +edar +edas +edawapi +edburga +edcars +edcouch +edcs +edda +eddaic +edder +eddi +eddic +eddie +eddied +eddies +eddington +eddins +eddisford +eddish +eddo +eddoes +eddowes +eddra +eddresses +eddy +eddying +eddyk +eddyroot +eddystone +eddyville +edea +edeagra +edee +edeitis +edek +edel +edeleman +edeline +edelio +edelman +edelmann +edelstein +edeltraud +edelweisses +edema +edemas +edemata +edemic +eden +edenic +edenite +edenization +edenize +edenprairie +edental +edentalous +edentata +edentate +edentates +edenton +edentulate +edentulous +edenvalley +edenville +edeodynia +edeology +edeomania +edeoscopy +edeotomy +eder +ederah +edesanyam +edeson +edessa +edessan +edestan +edestin +edestosaurus +edet +edey +edeyi +edeyoruba +edffff +edgar +edgard +edgardo +edgarsprings +edgarton +edgartown +edge +edgebone +edgecombe +edged +edgefield +edgeless +edgeley +edgeline +edgell +edgemaker +edgemaking +edgeman +edgemont +edgemoor +edger +edgerman +edgers +edges +edgeshot +edgestone +edgette +edgewater +edgeways +edgeweed +edgewood +edgeworth +edgier +edgiest +edgily +edginess +edging +edgingly +edgings +edgington +edgreen +edgrew +edholm +ediba +edibali +edibility +edible +edibleness +edibles +edictal +edictally +edicts +edicule +edie +ediengo +edificable +edification +edificator +edificatory +edifice +edifices +edificial +edified +edifier +edifiers +edifies +edifieth +edify +edifying +edifyingly +edifyingness +ediinsall +edile +edilson +edin +edina +edinboro +edinburg +edinburgh +edingtonite +edirne +ediro +edis +edison +edisona +edisons +edistoisland +edit +edita +editable +edital +editchar +editcopy +editcut +edited +editeur +edith +editha +edithe +editi +editie +editing +edition +editions +editor +editore +editorial +editorialist +editorialize +editorially +editorials +editorom +editors +editorship +editorships +editorwith +editpaste +editpc +editplus +editress +editresses +edits +editthe +editundo +ediuadig +ediv +ediva +ediya +edizioni +edjagam +edkins +edle +edlene +edley +edlund +edme +edmea +edmee +edmeston +edmett +edmison +edmon +edmond +edmondo +edmonds +edmondson +edmonson +edmonton +edmore +edmund +edmundo +edmunds +edmundsen +edmx +edmxtest +edna +edney +edneyville +ednoc +edoardo +edolphus +edols +edom +edomite +edomites +edomitish +edon +edoni +edos +edouard +edouart +edourd +edplot +edppackage +edra +edrc +edrei +edresses +edric +edrich +edright +edroy +edsac +edsel +edsger +edson +eduaard +eduard +eduarda +eduardo +educ +educabilia +educabilian +educability +educand +educatable +educate +educated +educatee +educates +educating +educatio +education +educational +educationary +educationist +educations +educative +educator +educators +educatory +educatress +educe +educed +educement +educes +educible +educing +educive +educom +educt +eduction +eductions +eductive +eductor +eductors +educts +edulcorate +edulcoration +edulcorative +edulcorator +edulia +edulis +edulla +edun +eduria +eduskunta +edvard +edvige +edvin +edwall +edward +edwarda +edwardean +edwardeanism +edwardes +edwardl +edwards +edwardsburg +edwardsia +edwardsiidae +edwardsport +edwardsville +edwidge +edwige +edwin +edwina +edyta +edyth +edythe +edzard +eeafeng +eean +eeba +eebi +eebo +eebr +eece +eechi +eecl +eecmy +eecs +eedan +eedave +eedsp +eeee +eeeee +eeeeee +eeeeeee +eeeeeeee +eeeevil +eega +eegatu +eegham +eegrass +eegregg +eegs +eehu +eeji +eejr +eeke +eeksee +eekunu +eelam +eelboat +eelbob +eelbobber +eelc +eelcake +eelcatcher +eeler +eelery +eelfare +eelfish +eelgrasses +eelier +eeliest +eellike +eelpot +eelpout +eels +eelshop +eelskin +eelspear +eelware +eelworm +eely +eema +eemaks +eematt +eemayl +eemohticon +eems +eemshaven +eemu +eenslit +eenthlit +eeohef +eeohel +eeohyoo +eepf +eeprom +eeri +eerie +eerier +eeriest +eeriness +eerisome +eerotiks +eerste +eeru +eery +eesg +eesh +eesmith +eesun +eeti +eeurton +eewi +eeyogi +eeyore +efaeyong +efate +efaykyoo +efca +efcommander +efdal +effable +effaced +effacement +effacer +effacers +effaces +effacing +effect +effected +effecter +effecters +effectful +effectible +effecting +effective +effectively +effectivity +effectless +effector +effectors +effects +effectual +effectuality +effectualize +effectually +effectuated +effectuates +effectuating +effectuation +effeepee +effeminacy +effeminate +effeminately +effemination +effeminatize +effeminize +effendi +effendis +efferents +effernelli +effervesce +effervesced +effervescent +effervesces +effervescing +effervescive +effetely +effeteness +effetman +effff +effi +efficacies +efficacity +efficacy +efficent +efficience +efficiencies +efficiency +efficiencyof +efficient +efficiently +effie +effigial +effigiate +effigiation +effigies +effigurate +effiguration +effigy +effingham +effium +efflate +efflation +effleurer +effloresced +effloresces +efflorescing +efflower +effluence +effluences +effluency +effluents +effluvial +effluvias +effluviate +effluvious +effluviums +effluvivia +effluviviums +efflux +effluxes +effluxion +effodient +effodientia +efford +efform +efformation +efformative +effort +effortful +effortless +effortlessly +efforts +effossion +effraction +effranchise +effronteries +effrontery +effs +effulge +effulged +effulgence +effulgences +effulgent +effulgently +effulges +effulging +effund +effurun +effuse +effused +effuses +effusing +effusiometer +effusions +effusively +effusiveness +efifa +efik +efimov +efira +efland +efnoz +efogi +efoliolate +efoliose +efoveolate +efraim +efrem +efremiana +efren +efri +efroimovich +efron +efroni +efrons +efstration +efta +efteepee +efter +eftest +efthim +eftp +efts +eftsoon +eftsoons +efutop +efutu +efva +egad +egads +egalitarians +egalite +egalites +egality +egan +egatek +egba +egbdf +egbeda +egbema +egbert +egbira +egbo +egbura +egdorf +egedde +egede +egegik +egejo +egeland +egelbauer +egelhoffer +egence +egene +egeo +egeran +egeria +egerman +egerton +egest +egesta +egestion +egestions +egestive +egeus +egezo +egezon +egfrith +eggable +eggan +eggar +eggbeater +eggbeaters +eggberry +eggcup +eggcupful +eggcups +eggeater +eggebraaten +eggebrecht +egged +eggelboffer +eggenton +egger +eggerikx +eggers +eggersgluess +eggerston +eggert +eggerth +eggfish +eggfruit +eggharbor +egghe +egghead +eggheads +egghot +egging +eggler +eggless +eggleston +eggleton +egglike +eggnog +eggnogs +eggon +eggplants +eggroll +eggrolls +eggs +eggshaped +eggshell +eggshells +eggy +eghom +egilops +egipto +egis +egises +egisto +eglah +eglaim +eglamore +eglandular +eglandulose +eglantine +eglantines +eglatere +egler +eglestonite +eglevsky +egli +eglin +eglinafb +eglon +egma +egmont +egnar +egner +egocentrism +egocerus +egohood +egoism +egoisms +egoist +egoistic +egoistical +egoistically +egoists +egoity +egoize +egoizer +egol +egolatrous +egolf +egomania +egomaniac +egomaniacal +egomaniacs +egomanias +egomism +egon +egongot +egonoc +egophonic +egophony +egor +egos +egosyntonic +egotheism +egotisms +egotistic +egotistical +egotists +egotize +egregiously +egrei +egrep +egress +egressed +egresses +egressing +egression +egressive +egressor +egrets +egretta +egrid +egrimony +egueiite +egun +egupipa +egupita +egurgitate +eguttulate +egwa +egypt +egyptian +egyptianism +egyptianize +egyptians +egyptize +egyptologer +egyptologic +egyptologist +egyptology +egzek +ehab +ehatisaht +ehelman +eheu +ehie +ehime +ehkali +ehkili +ehlers +ehlite +ehmann +ehmi +ehob +ehode +ehom +ehow +ehrdni +ehrenberg +ehrenbergs +ehrenfest +ehrenfeucht +ehrenfried +ehrengard +ehrenholz +ehretia +ehretiaceae +ehrhardt +ehrlich +ehrlichman +ehrman +ehrsson +ehrwaldite +ehser +ehtejab +ehuawa +ehud +ehwe +eibe +eibenschitz +eibenstein +eichberg +eichbergite +eiche +eicheim +eichelberger +eicheldinger +eichenberg +eicher +eichheim +eichhorn +eichhornia +eichmann +eichorn +eichsfeldia +eichwaldite +eicker +eicon +eicosahedron +eicosane +eide +eident +eidently +eider +eiderdown +eiders +eidetic +eidilleg +eidleman +eidograph +eidola +eidolic +eidolism +eidoloclast +eidology +eidolology +eidolon +eidolons +eidoptometry +eidos +eidouranion +eidson +eidsvik +eielson +eierstock +eifersucht +eiff +eiffel +eiga +eigen +eigenen +eigener +eigenes +eigengroup +eigenvalues +eigenvectors +eight +eightball +eightballs +eightbit +eighteen +eighteenfold +eighteenmo +eighteens +eighteenth +eighteenthly +eighteenths +eighteenun +eightfoil +eighth +eighthes +eighthly +eighths +eighties +eightieth +eightieths +eightling +eightpenny +eights +eightscore +eightsman +eightsome +eighty +eightycolumn +eightyeight +eightyfold +eightyfour +eigne +eiji +eike +eikemo +eikenberry +eiko +eikon +eikonogen +eikonology +eikusi +eilanden +eilbacher +eilber +eileen +eileene +eilene +eiler +eilers +eileton +eilif +eilis +eilly +eilonwy +eilsler +eily +eimak +eimer +eimeria +eimile +einar +einarsson +eine +einem +einen +einer +einersen +eines +einfach +einfaches +einfeld +eingabe +eingebaute +eingehende +eingehenden +eingetragen +einige +einkorn +einmal +eino +einrichten +eins +einspahr +einstein +einsteinium +einstellbar +eintragen +einya +einzelnen +eipo +eipomek +eireann +eireannach +eirena +eirene +eiresione +eirik +eisa +eisabus +eisegesis +eisegetical +eisele +eisen +eisenach +eisenberg +eisenfeld +eisenhart +eisenmann +eisi +eisler +eisley +eislin +eisnor +eisodic +eisteddfod +eisteddfodic +eisteddfods +eiswirth +eitaro +either +eitiep +eiting +eitner +eitung +eitz +eitzen +eivind +eivo +eiwaja +eizo +ejacula +ejaculated +ejaculates +ejaculating +ejaculation +ejaculations +ejaculative +ejaculator +ejaculators +ejaculatory +ejaculum +ejagam +ejagham +ejaham +ejam +ejaz +ejecta +ejectable +ejected +ejecting +ejection +ejections +ejective +ejectively +ejectives +ejectivity +ejectment +ejectors +ejects +ejectum +ejep +ejercito +ejicient +ejja +ejko +ejlif +ejoo +ejutla +ekaboron +ekacaesium +ekagi +ekaha +ekajuk +ekalaka +ekalesia +ekama +ekamanganese +ekamtulufu +ekanes +ekang +ekard +ekari +ekas +ekasilicon +ekatantalum +ekatat +ekaterina +ekaw +ekbebe +ekberg +ekblad +ekdahl +ekebergite +eked +ekegusii +ekele +eker +ekerite +ekerot +ekert +ekes +eket +eketahuna +ekezian +ekhirit +ekibena +ekiert +ekiguria +ekihaya +ekikerebe +ekikinga +ekikira +ekikumbule +ekimate +ekin +eking +ekinyambo +ekip +ekipangwa +ekisanza +ekishu +ekisongoora +ekistic +ekistics +ekiswaga +ekit +ekitangi +ekiti +ekiyira +ekiziba +ekjolfsson +ekka +ekkehard +ekland +eklenjuy +eklund +eklundh +ekman +ekmanner +ekmekyemez +ekoi +ekoid +ekoidmbe +ekoka +ekoke +ekoko +ekokoma +ekokos +ekoma +ekombe +ekon +ekonda +ekondo +ekondotiti +ekor +ekparagong +ekpari +ekpe +ekpene +ekpenmen +ekpenmi +ekperem +ekperi +ekpeshe +ekpetiama +ekpeye +ekphore +ekpon +ekpwo +ekra +ekron +ekronite +ekronites +eksath +eksch +eksee +eksekseks +ekskl +eksoff +eksohr +eksref +ekstram +ekstroem +ekswiezizee +ektene +ektenes +ekumbe +ekumtak +ekumuru +ekundipe +ekuri +ekvall +ekwa +ekware +ekwe +ekwok +elaan +elab +elaboates +elaborate +elaborated +elaborately +elaborates +elaborating +elaboration +elaborations +elaborative +elaborator +elaborators +elaboratory +elabrate +elachista +eladah +eladio +eladl +elaeagnaceae +elaeagnus +elaeis +elaeoblast +elaeoblastic +elaeocarpus +elaeococca +elaeodendron +elaeodochon +elaeometer +elaeoptene +elaeothesium +elah +elaidate +elaidic +elaidin +elaidinic +elain +elaina +elaine +elaioleucite +elaioplast +elaiosome +elam +elamite +elamites +elamitic +elamitish +elana +elance +eland +elands +elane +elanet +elanor +elans +elanus +elaphe +elaphebolion +elaphine +elaphodus +elaphomyces +elaphrium +elaphure +elaphurine +elaphurus +elapid +elapidae +elapinae +elapine +elapoid +elaps +elapse +elapsed +elapses +elapsing +elapsoidea +elara +elasah +elashoff +elasmobranch +elasmosaur +elasmosaurus +elasmothere +elastance +elastic +elastica +elastically +elastician +elasticin +elasticities +elasticity +elasticize +elasticized +elasticizer +elasticizes +elasticizing +elasticness +elastics +elasticum +elastin +elastins +elastivity +elastomeric +elastomers +elastometer +elastometry +elastose +elat +elatcha +elated +elatedly +elatedness +elater +elaterid +elateridae +elaterin +elaterite +elaterium +elateroid +elaters +elates +elath +elatha +elatinaceae +elatinaceous +elatine +elating +elation +elations +elative +elatives +elato +elator +elatrometer +elattar +elayne +elazig +elba +elbasan +elbassiouni +elbe +elbereth +elberfeld +elberon +elbert +elberta +elbertina +elbertine +elberton +elbethel +elbeze +elbi +elbing +elblag +elbmig +elbow +elbowboard +elbowbush +elbowchair +elbowed +elbower +elbowing +elbowlake +elbowpiece +elbowroom +elbows +elbowy +elbridge +elbrun +elburn +elcaja +elcajon +elcampo +elcapitan +elcar +elcentro +elcerrito +elchakieh +elchee +elcho +elco +elcom +elcott +elct +elda +eldaah +eldad +eldar +eldena +elder +elderberries +elderberry +elderbush +elderhood +elderliness +elderly +elderman +elderon +elders +eldership +eldersville +elderton +elderwoman +elderwood +elderwort +eldest +eldfagein +eldin +elding +eldjezair +eldon +eldora +eldorado +eldred +eldredge +eldress +eldreth +eldrich +eldridge +eldring +eldritch +elds +eldsaeter +elea +elead +elealeh +elean +eleanor +eleanora +eleanore +eleasah +eleatic +eleaticism +eleazar +elebbs +elecampane +eleceng +elect +electable +elected +electee +electees +electicism +electing +election +electionary +electioneer +electioneers +elections +elective +electively +electiveness +electives +electivism +electivity +electly +electorally +electorates +electorial +electors +electorship +electra +electragist +electragy +electralize +electrepeter +electrets +electric +electrical +electrically +electrican +electricans +electriccity +electrician +electricians +electricity +electricize +electrics +electrified +electrifier +electrifiers +electrifies +electrify +electrifying +electrion +electrionic +electrizable +electrize +electrizer +electro +electrobank +electrobath +electrobus +electrocute +electrocuted +electrocutes +electrodes +electroform +electrofuse +electrofused +electrogild +electrogilt +electrogram +electrograph +electroionic +electrolier +electrologic +electrology +electrolux +electrolyses +electrolytes +electrolyze +electrolyzed +electrolyzer +electromer +electromeric +electrometer +electrometry +electromotor +electron +electronic +electronics +electronik +electrons +electrooptic +electropathy +electrophone +electrophore +electropism +electroplate +electroplax +electropoion +electropolar +electropower +electropult +electroscope +electroshock +electrosteel +electrotaxis +electrotest +electrotonic +electrotonus +electrotype +electrotyper +electrotypes +electrotypic +electrotypy +electrovital +electrowin +electrum +electrums +elects +electuary +eleda +eleear +eleele +eleemosynary +eleen +eleet +elefante +eleftheriou +elegance +elegances +elegancies +elegancy +elegant +elegante +eleganter +elegantly +elegiacal +elegiacs +elegiambic +elegiambus +elegiast +elegibility +elegies +elegise +elegised +elegises +elegist +elegists +elegit +elegize +elegized +elegizes +elegizing +eleidin +elek +eleke +eleko +elektra +elektroson +eleku +elele +elelments +elema +eleman +elembe +eleme +element +elemental +elementalism +elementalist +elementality +elementalize +elementally +elementals +elementarily +elementary +elementoid +elements +elemi +elemicin +elemin +elen +elena +elench +elenchi +elenchic +elenchical +elenchically +elenchize +elenchtic +elenchtical +elenchus +elenctic +elend +elendil +elene +elenge +eleni +eleniak +elenka +elenor +elenora +elenore +eleoblast +eleocharis +eleolite +eleomargaric +eleometer +eleomore +eleonora +eleonore +eleonorite +eleoptene +eleostearate +eleostearic +eleousa +eleph +elephant +elephanta +elephantiac +elephantic +elephantidae +elephantine +elephantlike +elephantoid +elephantopus +elephantous +elephantry +elephants +elephas +elepi +eleroy +eles +elessar +elettaria +eleusine +eleusinia +eleusinian +eleusinion +eleut +eleuterio +eleuthera +eleutherarch +eleutheri +eleutheria +eleutherian +eleutherios +eleutherism +eleutherozoa +eleva +elevate +elevated +elevatedly +elevatedness +elevates +elevating +elevatingly +elevation +elevational +elevations +elevator +elevators +elevatory +eleve +eleven +elevener +elevenfold +elevens +eleventh +eleventhly +elevenths +elevon +elevons +elex +elexia +eley +elfattah +elfenfolk +elfers +elffers +elffriend +elfhaven +elfhood +elfic +elfick +elfie +elfins +elfinwood +elfish +elfishly +elfishness +elfkin +elfland +elflike +elflock +elflocks +elfreda +elfrid +elfrida +elfrieda +elfriede +elfship +elfstone +elfstrom +elfwife +elfwort +elga +elgar +elgeyo +elgie +elgin +elgon +elgranada +elgumi +elhage +elhamahmy +elhamy +elhanan +elhi +elia +eliab +eliada +eliadah +eliah +eliahba +eliakim +eliam +elian +eliana +eliane +elianic +elianora +elianore +elias +eliasaph +eliashib +eliasite +eliasville +eliathah +elicia +elicit +elicitable +elicitate +elicitation +elicited +eliciting +elicitor +elicitors +elicitory +elicits +elida +elidad +elided +elides +elidible +eliding +elie +eliel +elienai +eliezer +elif +eligibility +eligible +eligibleness +eligibles +eligibly +elihoenai +elihoreph +elihu +elijah +elika +elim +elimar +elimbari +elimelech +eliminable +eliminand +eliminant +eliminate +eliminated +eliminates +eliminating +elimination +eliminations +eliminative +eliminator +eliminators +eliminatory +elin +elina +elindio +eline +eling +elinor +elinore +elinvar +elio +elioenai +elios +eliot +eliott +elip +eliphal +eliphalet +eliphaz +elipheleh +eliphelet +eliquate +eliquation +eliri +elisa +elisabet +elisabeth +elisabetha +elisabetta +elisangela +eliscu +elise +eliseev +eliser +eliseus +elisha +elishah +elishama +elishaphat +elisheba +elishua +elisions +eliska +elisor +elisp +elissa +elita +elite +elitebios +eliteness +elitenet +elites +elith +elitism +elitisms +elitist +elitists +elitsa +eliud +eliwys +elixation +elixir +elixirs +eliya +eliza +elizabet +elizabeta +elizabeth +elizabethans +elizabethton +elizalde +elizaphan +elizaville +elizbieta +elize +elizondo +elizur +elja +eljadidi +eljay +elje +eljebel +elka +elkader +elkaim +elkana +elkanah +elkapark +elkas +elkcity +elkcreek +elkdom +elke +elkei +elkesaite +elkfalls +elkfork +elkgarden +elkgrove +elkhartlake +elkholei +elkhorn +elkhorncity +elkhound +elkhounds +elki +elkin +elkington +elkins +elkland +elkmills +elkmont +elkmound +elkmountain +elko +elkoosh +elkoshite +elkpark +elkplaza +elkpoint +elkport +elkrapids +elkriver +elks +elkslip +elkton +elkuma +elkview +elkville +elkwood +ella +ellabell +ellachick +ellacott +elladan +elladine +ellagate +ellagic +ellagitannin +ellamore +ellane +ellansby +ellas +ellasar +ellaville +elle +elleck +elledge +elleen +ellef +ellefsen +elleke +elleleng +ellem +ellement +ellen +ellenberg +ellenboro +ellenburg +ellendale +ellender +ellene +ellens +ellensburg +ellenstein +ellenton +ellentouch +ellenville +ellenwood +ellenyard +elleoncito +eller +ellerbe +ellerby +ellerian +ellerman +ellers +ellerslie +ellery +ellesmere +ellette +ellettsville +ellfish +elli +ellice +ellicean +ellick +ellicott +ellicottcity +ellie +ellijay +elliman +ellinger +ellington +ellinwood +elliot +elliott +elliottsburg +elliottville +ellipse +ellipses +ellipsograph +ellipsoids +ellipsone +ellipsonic +elliptical +elliptically +ellipticity +elliptograph +elliptoid +ellis +ellisburg +ellisgrove +ellison +ellisonbay +ellissa +elliston +ellisville +ello +ellomkodjo +ellops +elloree +elloy +ellport +ells +ellsinore +ellsler +ellstein +ellston +ellsworth +ellsworthafb +ellswrth +ellul +ellum +ellwand +ellwood +ellwoodcity +elly +ellye +ellyn +ellynn +elma +elmaghraby +elmansun +elmar +elmaton +elmawaziny +elmay +elmcity +elmcreek +elmdale +elmendorf +elmendorfafb +elmendrf +elmer +elmercity +elmerfudd +elmers +elmgrove +elmhall +elmhurst +elmier +elmiest +elmira +elmirage +elmmott +elmo +elmodam +elmolo +elmont +elmonte +elmora +elmore +elmorecity +elmos +elmrock +elms +elmsford +elmsprings +elmwood +elmwoodpark +elmy +elna +elnaam +elnadi +elnar +elnath +elnathan +elneweihi +elnido +elno +elnora +elnore +eloah +elobey +eloc +elocation +elocular +elocute +elocution +elocutionary +elocutioner +elocutionist +elocutionize +elod +elodea +elodeaceae +elodes +elog +eloge +elogium +elohim +elohimic +elohism +elohist +elohistic +eloi +eloign +eloigner +eloignment +eloisa +eloise +elomay +elon +eloncollege +elong +elongated +elongates +elongating +elongation +elongations +elongative +elonite +elonites +elonore +eloped +elopement +elopements +eloper +elopers +elopes +elopidae +eloping +elops +eloquence +eloquent +eloquential +eloquently +eloquentness +elora +elorriaga +elorrieta +elotepec +eloth +elotherium +elotillo +elowa +eloy +eloyi +elpaal +elpalet +elpaputi +elpaputih +elparan +elpaso +elpasolite +elpatuti +elpedia +elphick +elphinstone +elpida +elpidio +elpidite +elpira +elpis +elportal +elprado +elrama +elreno +elric +elrich +elrito +elrod +elrohir +elrond +elrosa +elroy +elsa +elsah +elsaid +elsavador +elsayed +elsberry +elsbeth +else +elsegundo +elsehow +elsen +elses +elset +elsewards +elseways +elsewehere +elsewhen +elsewhere +elsewheres +elsewhither +elsewise +elsey +elsheikh +elsholtz +elsholtzia +elsi +elsie +elsin +elsing +elsinore +elsmere +elsmore +elsner +elsom +elson +elspeth +elster +elston +elsy +eltekeh +eltekon +eltham +eltigen +eltime +elting +eltolad +elton +eltopia +eltoro +eltron +eltz +elucidate +elucidated +elucidates +elucidating +elucidation +elucidations +elucidative +elucidator +elucidators +elucidatory +elucubrate +elucubration +elude +eluded +eluder +eluders +eludes +eluding +eluethera +eluethra +elukara +elul +elumba +elunay +elunchun +eluned +elung +eluosi +elusion +elusive +elusively +elusiveness +elusoriness +elusory +eluthera +eluthra +elutor +elutriate +elutriation +elutriator +eluvial +eluviate +eluviating +eluviation +eluvium +eluzai +elva +elvan +elvanite +elvanitic +elvaston +elve +elvenhome +elvensmiths +elver +elvera +elverano +elvers +elverson +elvert +elverta +elvery +elves +elvet +elvezio +elvia +elvin +elvina +elvira +elvire +elviria +elviry +elvis +elvish +elvishly +elwell +elwen +elwenspoek +elwes +elwin +elwing +elwira +elwood +elwyn +elxsi +elya +elydoric +elymas +elymi +elymus +elyn +elyna +elynor +elyria +elysburg +elyse +elysee +elysha +elysia +elysian +elysiidae +elysium +elyssa +elyte +elytra +elytral +elytriferous +elytriform +elytrigerous +elytrin +elytrocele +elytroclasia +elytroid +elytron +elytroposis +elytrorhagia +elytrotomy +elytrous +elytrum +elza +elzabad +elzaphan +elzbieta +elzer +elzevir +elzevirian +elzie +elzinger +elzy +emaciate +emaciated +emaciates +emaciating +emaciation +emacs +emad +emae +emai +email +emailbombing +emailed +emailing +emails +emailthe +emailto +emailwolf +emailzip +emajagua +emalangeni +emalee +emalia +emamelware +emami +eman +emanant +emanated +emanates +emanating +emanation +emanational +emanationism +emanationist +emanations +emanatism +emanatist +emanatistic +emanativ +emanative +emanatively +emanator +emanators +emanatory +emancipated +emancipates +emancipating +emancipation +emancipatist +emancipative +emancipator +emancipators +emancipatory +emancipist +emandibulate +emane +emaniation +emanium +emanon +emanuel +emanuela +emanuelle +emarcid +emarginate +emarginately +emargination +emarginula +emarle +emasculated +emasculates +emasculating +emasculation +emasculative +emasculator +emasculators +emasculatory +emau +emba +embadomonas +emball +emballonurid +embalm +embalmed +embalmer +embalmers +embalming +embalmment +embalms +embaloh +embanked +embanking +embankment +embankments +embanks +embannered +embar +embarassed +embarcadero +embarcation +embaressing +embargoed +embargoing +embargoist +embark +embarkation +embarkations +embarked +embarking +embarkment +embarks +embarras +embarrased +embarrass +embarrassed +embarrasses +embarrassing +embarred +embarrel +embarring +embars +embase +embassador +embassadress +embassage +embassies +embassy +embastioned +embathe +embattled +embattlement +embattles +embattling +embay +embayment +embayments +embays +embden +embed +embedded +embedding +embeddings +embedment +embeds +embeggar +embelia +embelic +embellish +embellished +embellisher +embellishers +embellishes +embellishing +embena +ember +embera +embergoose +emberiza +emberizidae +emberizinae +emberizine +embers +embezzled +embezzlement +embezzler +embezzlers +embezzles +embezzling +embiidae +embiidina +embind +embiodea +embioptera +embiotocid +embiotocidae +embiotocoid +embira +embiricos +embitter +embittered +embitterer +embittering +embitterment +embitters +emblaze +emblazer +emblazers +emblazing +emblazoned +emblazoner +emblazoning +emblazonment +emblazonry +emblazons +emblema +emblematical +emblematist +emblematize +emblement +emblements +embleming +emblemist +emblemize +emblemology +emblems +emblic +embling +emblossom +embo +embodied +embodier +embodiers +embodies +embodiments +embody +embodying +embog +embogue +emboitement +emboldened +emboldener +emboldeneth +emboldening +emboldens +embole +embolectomy +embolemia +emboli +embolic +emboliform +embolism +embolismal +embolismic +embolisms +embolismus +embolite +embolium +embolization +embolize +embolo +embololalia +embolomeri +embolomerism +embolomerous +embolum +embolus +emboly +embonpoint +emborder +embordered +emborders +emboscata +embosom +embosomed +embosoming +embosoms +embossage +embossed +embosser +embossers +embosses +embossing +embossman +embossment +embossments +embosture +embottle +embouchures +embound +embow +embowed +embowel +emboweled +emboweler +emboweling +embowelled +embowelment +embowered +embowering +embowerment +embowers +embowment +embows +embox +embrace +embraceably +embraced +embracement +embraceor +embracer +embracers +embracery +embraces +embracest +embracing +embracingly +embracive +embrail +embranchment +embrangle +embrasure +embrasures +embreathe +embrechts +embree +embreeville +embrica +embright +embroaden +embrocate +embrocated +embrocates +embrocating +embrocation +embrocations +embroglios +embroider +embroidered +embroiderer +embroiderers +embroideress +embroideries +embroidering +embroiders +embroidery +embroiled +embroiler +embroiling +embroilment +embroilments +embroils +embronze +embrown +embrujo +embryectomy +embryo +embryocardia +embryoctonic +embryoctony +embryoferous +embryogenic +embryogeny +embryogony +embryography +embryoid +embryoism +embryologic +embryologies +embryologist +embryology +embryoma +embryon +embryonal +embryonary +embryonate +embryonated +embryonic +embryoniform +embryony +embryophore +embryophyta +embryophyte +embryos +embryoscope +embryoscopic +embryotega +embryotic +embryotome +embryotomy +embryotrophy +embryous +embryulcia +embryulcus +embu +embubble +embudja +embudo +embuia +embus +embusk +embuskin +emceed +emceeing +emcees +emdash +emde +emden +emed +emeditor +emeeje +emeeme +emeer +emeerate +emeers +emeership +emeffteeell +emeigh +emel +emelda +emeldsdorf +emelia +emelina +emeline +emelita +emelle +emelyne +emend +emendandum +emendate +emendating +emendation +emendations +emendator +emendatory +emended +emender +emenders +emending +emends +ementhal +emer +emera +emerado +emerald +emeraldine +emeraldisle +emeralds +emeraude +emeren +emerge +emerged +emergence +emergences +emergencies +emergency +emergently +emergentness +emergents +emergers +emerges +emerging +emerick +emeries +emerillon +emerilon +emerita +emerited +emerize +emerods +emerse +emersed +emersion +emersions +emerson +emersonian +emerte +emerton +emerum +emery +emerymills +emesa +emesdos +emesh +emesidae +emesis +emetatrophia +emeteria +emetic +emetically +emetics +emetine +emeto +emetology +emeurdroud +emeute +emfinu +emgalla +emhardt +emhart +emhpasizing +emication +emich +emiction +emictory +emig +emigh +emigrant +emigrants +emigrated +emigrates +emigrating +emigration +emigrational +emigrations +emigrative +emigrator +emigratory +emigre +emigree +emigres +emigsville +emil +emilda +emile +emilee +emilfork +emili +emilia +emilian +emiliano +emilie +emilija +emiline +emilio +emillia +emillie +emily +emim +emims +emine +eminence +eminences +eminencies +eminency +eminent +eminently +emington +emins +emir +emira +emiramussau +emirates +emirian +emirs +emirship +emirza +emison +emissaries +emissarium +emissary +emissaryship +emissile +emissions +emissive +emit +emita +emits +emitted +emittent +emitters +emitting +emlek +emlen +emlenton +emly +emlyn +emlynn +emlynne +emma +emmailleure +emmalee +emmalena +emmaline +emmalyn +emmalynn +emmalynne +emmannuelle +emmanouel +emmanouil +emmanuel +emmanuelle +emmarble +emmarvel +emmaus +emmc +emmek +emmeleia +emmeline +emmell +emmenagogic +emmenagogue +emmenic +emmeniopathy +emmenology +emmensite +emmental +emmer +emmergoose +emmerich +emmerstorfer +emmert +emmet +emmetrope +emmetropia +emmetropic +emmetropism +emmetropy +emmets +emmetsburg +emmette +emmey +emmi +emmie +emmies +emmigrant +emmitsburg +emmonak +emmons +emmor +emmott +emmy +emmye +emney +emoa +emodd +emodf +emodg +emodh +emodin +emogene +emok +emollescence +emolliate +emollient +emollients +emoloa +emolumental +emolumentary +emoluments +emom +emond +emoro +emory +emote +emoted +emoter +emoters +emotes +emoticon +emoticons +emoting +emotion +emotionable +emotional +emotionalism +emotionalist +emotionality +emotionalize +emotionally +emotioned +emotionist +emotionize +emotionless +emotions +emotive +emotively +emotiveness +emotivity +emowhua +emowilliams +empacket +empahsis +empaistic +empale +empalement +empalers +empaling +empall +empanel +empaneled +empaneling +empanelled +empanelling +empanelment +empanels +empanoply +empaper +emparadise +emparchment +empark +empasm +empath +empathetic +empathic +empathically +empathies +empathize +empathized +empathizes +empathizing +empawa +empdb +empedoclean +empeirema +empennage +empennages +empeo +empera +empereur +emperio +emperor +emperors +emperorship +empery +empesa +empetraceae +empetraceous +empetrum +empey +empezar +emphasis +emphasize +emphasized +emphasizes +emphasizing +emphatical +emphatically +emphirical +emphlysis +emphractic +emphraxis +emphyteusis +emphyteuta +emphyteutic +empicture +empididae +empidonax +empiecement +empierce +empire +empirema +empires +empirical +empirically +empiricism +empiricist +empiricists +empirics +empirin +empirion +empirism +empiristic +emplaced +emplacement +emplacements +emplaces +emplacing +emplane +emplaning +emplastic +emplastrum +emplectite +empleomania +employ +employable +employe +employed +employee +employeeclub +employees +employers +employing +employless +employment +employments +employs +emplume +empocket +empodium +empoison +empoisoned +empoisonment +emporer +emporetic +emporeutic +emporia +emporial +emporiria +empoririums +emporium +emporiums +empower +empowered +empowering +empowerment +empowers +empress +empressement +empresses +empressment +emprise +empt +emptied +emptier +emptiers +empties +emptiest +emptily +emptiness +emptings +emptins +emption +emptional +emptive +emptor +empty +emptyheaded +emptyhearted +emptying +emptys +emptysis +empui +empurple +empurpled +empurples +empurpling +empusa +empyema +empyemic +empyesis +empyocele +empyreal +empyrean +empyreans +empyreuma +empyreumatic +empyromancy +empyrosis +emran +emrick +emro +emrycc +emrys +emsi +emsilog +emsworth +emtec +emua +emuan +emughan +emul +emulable +emulant +emulate +emulated +emulates +emulating +emulation +emulations +emulative +emulatively +emulator +emulators +emulatory +emulatress +emulgence +emulgent +emulive +emulous +emulously +emulousness +emulsibility +emulsible +emulsifiable +emulsified +emulsifier +emulsifiers +emulsifies +emulsifying +emulsin +emulsionize +emulsions +emulsive +emulsoid +emulsoids +emulsor +emultor +emumu +emunctory +emundation +emunim +emunix +emus +emwac +emwae +emyd +emydea +emydian +emydidae +emydinae +emydosauria +emydosaurian +emyle +emylee +emys +enable +enabled +enablement +enablemenu +enabler +enablers +enables +enabling +enact +enactable +enacted +enacting +enaction +enactive +enactment +enactments +enactor +enactors +enactory +enacts +enaena +enage +enajim +enalid +enaliornis +enaliosaur +enaliosauria +enallachrome +enallage +enalotto +enaluron +enam +enamber +enambush +enamdar +enameled +enameler +enamelers +enameling +enamelist +enamelled +enameller +enamellers +enamelless +enamelling +enamellist +enameloma +enamels +enamelware +enamelwork +enami +enamor +enamorada +enamorato +enamored +enamoredness +enamoring +enamorment +enamors +enamour +enamoured +enamouring +enamourment +enamours +enan +enanguish +enanthem +enanthema +enanthesis +enantiomer +enantiomorph +enantiopathy +enantiosis +enantiotropy +enantobiosis +enapt +enarbor +enarbour +enarch +enarched +enargite +enarm +enarme +enarthrodia +enarthrodial +enarthrosis +enate +enates +enatic +enation +enawene +enayat +enberg +enbrave +encabellado +encaenia +encage +encaged +encages +encaging +encake +encalendar +encallow +encamp +encamped +encampeth +encamping +encampment +encampments +encamps +encances +encanker +encanthis +encapsulate +encapsulated +encapsulates +encapsule +encapsuled +encapsules +encapsuling +encarditis +encarna +encarnacion +encarnadine +encarnalize +encarnation +encarpium +encarpus +encarta +encase +encased +encasement +encases +encash +encashable +encashment +encasing +encasserole +encastage +encauma +encaustes +encaustic +encave +encefalon +enceinte +enceladus +encelia +encell +encenter +encephala +encephalic +encephalin +encephalitic +encephalitis +encephaloid +encephaloma +encephalon +encephalous +encercles +enchafe +enchain +enchained +enchaining +enchainment +enchainments +enchains +enchair +enchalice +enchancement +enchancer +enchannel +enchant +enchanted +enchantees +enchanter +enchanters +enchanting +enchantingly +enchantment +enchantments +enchants +encharge +encharnel +enchase +enchaser +enchasten +enchequer +enchest +enchev +enchilada +enchiladas +enchiridion +enchodontid +enchodontoid +enchodus +enchondroma +enchondrosis +enchorial +enchurch +enchylema +enchymatous +enchytrae +enchytraeid +enchytraeus +encina +encinal +encincture +encinder +encinillo +encinitas +encino +encintcture +encipher +enciphered +enciphering +encipherment +enciphers +encircle +encircled +encirclement +encircler +encircles +encircling +encist +encitadel +encl +enclaret +enclasp +enclasping +enclave +enclavement +enclaves +enclisis +enclitic +enclitical +enclitically +encloak +encloister +enclos +enclosable +enclose +enclosed +encloser +enclosers +encloses +enclosing +enclosure +enclosures +enclothe +encloud +encoach +encode +encoded +encoder +encoders +encodes +encoding +encodings +encoffin +encoignure +encoil +encolden +encollar +encolor +encolpion +encolumn +encomendero +encomenderos +encomiast +encomiastic +encomic +encomienda +encomimia +encomimiums +encomiologic +encomiums +encommon +encompass +encompassed +encompasser +encompasses +encompassing +enconding +encoop +encorbelment +encore +encored +encores +encoring +encoronal +encoronate +encoronet +encounter +encountered +encounterer +encounterers +encountering +encounters +encourage +encouraged +encourager +encouragers +encourages +encouraging +encowl +encraal +encradle +encranial +encratic +encratism +encratite +encraty +encreel +encrimson +encrinal +encrinic +encrinidae +encrinital +encrinite +encrinitic +encrinitical +encrinoid +encrinoidea +encrinus +encrisp +encroached +encroacher +encroaches +encroaching +encroachment +encrotchet +encrown +encrownment +encrust +encrustation +encrusted +encrusting +encrustment +encrypt +encrypted +encrypting +encryption +encryptions +encryptor +encrypts +encuirassed +encumbered +encumberer +encumbering +encumberment +encumbers +encumbrancer +encumbrances +encup +encurl +encurtain +encushion +encyclic +encyclical +encyclicals +encyclics +encyclopedia +encyrtid +encyrtidae +encyst +encystation +encysted +encysting +encystment +encystments +encysts +endable +endaemonism +endaemonist +endagany +endally +endamage +endamageable +endamaged +endamagement +endamages +endamaging +endamask +endameba +endamebic +endamoeba +endamoebic +endamoebidae +endangen +endanger +endangered +endangerer +endangering +endangerment +endangers +endangium +endaortic +endaortitis +endar +endara +endarch +endarchy +endarterial +endarteritis +endarterium +endaspidean +endaze +endboard +endbrain +endbrains +endc +ende +endear +endearance +endeared +endearedly +endearedness +endearing +endearingly +endearment +endearments +endears +endeavor +endeavored +endeavorer +endeavoring +endeavors +endeavour +endeavoured +endeavouring +endeavours +ended +endegegn +endegen +endeh +endeictic +endekan +endelio +endellionite +endemial +endemic +endemically +endemicity +endemics +endemiology +endemism +endenburg +endends +endenization +endenizen +ender +enderbreith +enderbury +enderby +endere +enderle +enderlein +enderlin +endermatic +endermic +endermically +enderon +enderonic +enders +endersby +endeth +endevil +endew +endfile +endgate +endhouses +endi +endiadem +endiaper +endicott +endif +endimanche +ending +endings +endite +enditing +endive +endives +endjunk +endleaf +endleaves +endless +endlessly +endlessness +endlichite +endlong +endmatcher +endmost +endnote +endnotes +endo +endoangiitis +endoaortitis +endobiotic +endoblast +endoblastic +endocardiac +endocardial +endocarditic +endocarditis +endocardium +endocarp +endocarpal +endocarpic +endocarpoid +endocellular +endocentric +endoceras +endoceratite +endocervical +endochondral +endochorion +endochrome +endochylous +endoclinal +endocline +endocoelar +endocoele +endocoeliac +endocolitis +endocolpitis +endocone +endoconidium +endocortex +endocranial +endocranium +endocrinal +endocrine +endocrines +endocrinic +endocrinism +endocrinous +endocritic +endocycle +endocyclic +endocyemate +endocyst +endocystitis +endodermal +endodermic +endodermis +endoderms +endodontia +endodontic +endodontist +endoenzyme +endofaradism +endoffile +endogamic +endogastric +endogen +endogenae +endogenesis +endogenetic +endogenic +endogenously +endogeny +endoglobular +endognath +endognathal +endognathion +endogonidium +endolemma +endolumbar +endolymph +endolymphic +endolysin +endome +endomesoderm +endometrial +endometritis +endometrium +endometry +endomitosis +endomitotic +endomixis +endomorph +endomorphic +endomorphy +endomyces +endomysial +endomysium +endoneurial +endoneurium +endonuclear +endonuclease +endoparasite +endopathic +endopelvic +endoperidial +endoperidium +endophagous +endophagy +endophasia +endophasic +endophragm +endophragmal +endophyllous +endophyllum +endophytal +endophyte +endophytic +endophytous +endoplasm +endoplasma +endoplasmic +endoplast +endoplastron +endoplastule +endopleura +endopleural +endopleurite +endopod +endopodite +endopoditic +endoproct +endoprocta +endoproctous +endopsychic +endor +endorachis +endoral +endore +endorhinitis +endorphins +endorsable +endorsation +endorsed +endorsee +endorsees +endorsement +endorsements +endorser +endorsers +endorses +endorsing +endorsingly +endorsor +endos +endosambirir +endosarc +endosarcode +endosarcous +endosclerite +endoscope +endoscopes +endoscopic +endoscopies +endoscopy +endosepsis +endosiphon +endosiphonal +endoskeletal +endoskeleton +endosmometer +endosmosic +endosmosis +endosmosmic +endosmotic +endosome +endospermic +endospore +endosporium +endosporous +endoss +endosteal +endosteally +endosteitis +endosteoma +endosternite +endosternum +endosteum +endostitis +endostoma +endostome +endostosis +endostracal +endostracum +endostylar +endostyle +endostylic +endotheca +endothecal +endothecate +endothecial +endothecium +endothelia +endothelioid +endothelioma +endothelium +endothermal +endothermous +endothermy +endothia +endothoracic +endothorax +endothrix +endothys +endotoxic +endotoxin +endotoxoid +endotrophi +endotrophic +endotys +endovenous +endow +endowed +endower +endowers +endowing +endowment +endowments +endows +endozoa +endozoic +endpaper +endpapers +endpiece +endplate +endplates +endplogo +endpoint +endpoints +endre +endrenyi +endrin +endrology +endromididae +endromis +endrys +ends +endsection +endsley +endspan +endsw +endtoend +endu +endue +endued +enduement +endues +enduing +endungeon +endura +endurability +endurable +endurably +endurant +endure +endured +endurer +endures +endureth +enduring +enduringly +enduringness +enduro +enduros +enduser +endvar +endways +endwise +endy +endyma +endymal +endymion +endysis +enea +eneas +enec +eneclann +eneeme +eneevax +eneglaim +enema +enemas +enemies +enemy +enemylike +enemyship +enenga +enepidermic +ener +energeia +energesis +energetic +energetical +energeticist +energetics +energetistic +energia +energic +energical +energid +energies +energii +energise +energism +energist +energize +energized +energizer +energizers +energizes +energizing +energumen +energumenon +energy +energyrich +enervated +enervates +enervating +enervation +enervative +enervator +enervators +enet +enets +eneuch +eneuenemare +eneugh +enewetak +enface +enfacement +enfamous +enfants +enfasten +enfatico +enfeature +enfeeble +enfeebled +enfeeblement +enfeebler +enfeebles +enfeebling +enfelon +enfeoff +enfeoffed +enfeoffing +enfeoffment +enfester +enfetter +enfettered +enfetters +enfever +enfevered +enfevering +enfevers +enfigure +enfilade +enfiladed +enfilades +enfilading +enfile +enfiled +enfin +enflagellate +enflame +enflamed +enflames +enflaming +enflesh +enfleurage +enflower +enfocus +enfoil +enfold +enfolded +enfolden +enfolder +enfolders +enfolding +enfoldings +enfoldment +enfolds +enfonced +enforce +enforceable +enforced +enforcedly +enforcement +enforcer +enforcers +enforces +enforcing +enforcingly +enfork +enfoul +enframe +enframed +enframement +enframes +enframing +enfranchise +enfranchised +enfranchiser +enfranchises +enfree +enfrenzy +enfuddle +enfurrow +enga +engadine +engage +engaged +engagedly +engagedness +engagement +engagements +engager +engagers +engages +engaging +engagingly +engagingness +engakyaka +engana +enganadas +engannim +enganno +engaol +engarb +engarble +engarland +engarment +engarrison +engastrimyth +engaud +engaze +engbert +engedi +engel +engelberg +engelbert +engelbrecht +engelhard +engelhardt +engelhart +engelmann +engelmanni +engelmannia +engels +engelstorfer +engem +engen +engender +engendered +engenderer +engendering +engenderment +engenders +engenius +engenni +enger +engerminate +engfeldt +engganese +enggano +enggipiloe +enggipilu +engh +enghosted +engicf +engild +engilding +engilds +engin +engine +engined +engineer +engineered +engineering +engineers +engineership +enginehouse +engineless +enginelike +engineman +engineries +enginery +engines +engining +enginous +engird +engirded +engirding +engirdle +engirdled +engirdles +engirdling +engirds +engirt +engjateigur +engl +englacial +englacially +englad +engladden +england +englanders +engle +englebrick +engledow +englehorn +engleman +engler +englert +engles +engleska +englewood +englifier +englify +englisch +english +englishable +englished +englisher +englishes +englishhood +englishing +englishism +englishize +englishly +englishman +englishness +englishry +englishtown +englishwoman +englishwomen +englobe +englobed +englobement +englobing +engloom +englory +englund +englut +englutting +englyn +engman +engnessang +engobe +engold +engolden +engore +engorge +engorged +engorgement +engorges +engorging +engouled +engr +engrace +engracia +engraff +engraft +engraftation +engrafted +engrafter +engrafting +engraftment +engrafts +engrail +engrailed +engrailing +engrailment +engrain +engrained +engrainedly +engrainer +engraining +engram +engramma +engrammatic +engramme +engrammes +engrammic +engrams +engrandize +engraphia +engraphic +engraphy +engrapple +engrasp +engraulidae +engraulis +engrave +engraved +engravement +engraven +engraver +engravers +engraves +engraving +engravings +engreen +engrg +engrian +engrieve +engroove +engros +engross +engrossed +engrossedly +engrosser +engrossers +engrosses +engrossing +engrossingly +engrossment +engstrand +engstrom +enguard +engulf +engulfed +engulfing +engulfment +engulfs +engyscope +engywook +enhaddah +enhakkore +enhallow +enhalo +enhaloed +enhaloes +enhaloing +enhamper +enhance +enhanced +enhancement +enhancements +enhancer +enhancers +enhances +enhancing +enhancive +enharmonic +enharmonical +enhat +enhaunt +enhazor +enhearse +enheart +enhearten +enhedge +enhelm +enhemospore +enhen +enherit +enheritage +enheritance +enhorror +enhunger +enhusk +enhydra +enhydrinae +enhydris +enhydrite +enhydritic +enhydros +enhydrous +enhypostasia +enhypostasis +enhypostatic +eniac +enibura +enicuridae +enid +enif +enigma +enigmas +enigmata +enigmatical +enigmatist +enigmatize +enigmatology +enim +enima +enimaca +enimaga +enis +enisle +enison +eniwetak +eniwetok +enjail +enjamb +enjambed +enjambment +enjambments +enjelly +enjeopard +enjeopardy +enjewel +enjoin +enjoinders +enjoined +enjoiner +enjoiners +enjoining +enjoinment +enjoins +enjoiras +enjolras +enjoy +enjoyable +enjoyably +enjoyed +enjoyer +enjoyers +enjoying +enjoyingly +enjoyment +enjoyments +enjoys +enka +enke +enkelembu +enkerchief +enkernel +enki +enkidu +enkindle +enkindled +enkindler +enkindles +enkindling +enkraal +enkw +enlace +enlaced +enlacement +enlacing +enlard +enlarge +enlarged +enlargedly +enlargedness +enlargement +enlargements +enlarger +enlargers +enlarges +enlargeth +enlarging +enlargingly +enlaurel +enleaf +enleague +enlevement +enlief +enlife +enlight +enlighten +enlightened +enlightener +enlighteners +enlightening +enlightens +enlink +enlinkment +enlist +enlisted +enlistee +enlistees +enlister +enlisters +enlisting +enlistment +enlistments +enlists +enlivened +enlivener +enlivening +enliveningly +enlivenment +enlivenments +enlivens +enlock +enlodge +enlodgement +enloe +enlow +enmarble +enmask +enmass +enmesh +enmeshed +enmeshes +enmeshing +enmeshment +enmeshments +enmishpat +enmist +enmities +enmity +enmoss +enmuffle +enmylinskij +enna +ennamor +ennead +enneadianome +enneadic +enneads +enneagon +enneagons +enneagynous +enneahedral +enneahedria +enneahedron +enneasemic +enneastyle +enneastylos +enneateric +enneatic +enneatical +ennedi +enneking +ennemie +ennemor +enneqor +ennerve +ennery +ennice +enniche +enning +ennio +ennis +ennoble +ennobled +ennoblement +ennoblements +ennobler +ennoblers +ennobles +ennobling +ennoblingly +ennoblment +ennoic +ennomic +enns +ennui +ennuis +ennulat +ennvironment +enny +ennyworth +enoah +enobarbus +enoch +enochic +enochs +enocyte +enodal +enodally +enoil +enola +enolate +enolic +enolizable +enolization +enolize +enomania +enomaniac +enomotarch +enomoty +enon +enontekio +enonvalley +enoooooough +enophthalmos +enophthalmus +enopla +enoplan +enoptromancy +enor +enoree +enorganic +enorm +enormities +enormity +enormous +enormously +enormousness +enos +enosh +enostosis +enotepad +enough +enoughs +enounce +enounced +enouncement +enounces +enouncing +enounters +enow +enphagy +enphytotic +enplane +enplaned +enplanes +enplaning +enqueue +enqueued +enqueues +enquicken +enquire +enquired +enquirer +enquires +enquirest +enquiries +enquiring +enquiringly +enquiry +enrace +enrage +enraged +enragedly +enragement +enrages +enraging +enrange +enrank +enrapt +enrapture +enraptured +enrapturer +enraptures +enrapturing +enravish +enravished +enravishes +enravishing +enravishment +enray +enregiment +enregister +enregistry +enrekang +enrib +enrica +enricco +enrich +enriched +enricher +enrichers +enriches +enrichest +enrichetta +enriching +enrichingly +enrichment +enrichments +enrico +enright +enrika +enrile +enrimmon +enring +enrique +enriqueta +enriquez +enriva +enrive +enrobe +enrobed +enrobement +enrober +enrobers +enrobes +enrobing +enrockment +enrogel +enrol +enroll +enrolled +enrollees +enroller +enrollers +enrolling +enrollment +enrollments +enrolls +enrolment +enrols +enroot +enrough +enruin +enrut +ensaffron +ensaint +ensample +ensamples +ensand +ensandal +ensanguine +ensanguined +ensate +enscene +ensconced +ensconces +ensconcing +enscroll +enscrolled +enscrolls +ensculpture +ense +enseam +enseat +enseem +enseigne +ensellure +ensemble +ensembles +ensenada +ensepulcher +ensepulchre +enseraph +enserf +enserfing +ensete +enshade +enshadow +enshawl +ensheathe +ensheathed +ensheathes +ensheathing +ensheaths +enshell +enshelter +enshemesh +enshield +enshrine +enshrined +enshrinement +enshrines +enshrining +enshroud +enshrouded +enshrouding +enshrouds +ensiferi +ensiform +ensign +ensigncy +ensignhood +ensignment +ensignry +ensigns +ensignship +ensilage +ensilaged +ensilages +ensilaging +ensilate +ensilation +ensile +ensiled +ensiles +ensiling +ensilist +ensilver +ensing +ension +ensisternum +ensky +enskying +enslave +enslaved +enslavedness +enslavement +enslavements +enslaver +enslavers +enslaves +enslaving +enslein +ensmall +ensnare +ensnared +ensnarement +ensnarements +ensnarer +ensnarers +ensnares +ensnaring +ensnaringly +ensnarl +ensnarled +ensnarling +ensnarls +ensnow +ensoniq +ensor +ensorcel +ensorceled +ensorcelize +ensorcell +ensorcels +ensoul +ensouling +enspell +ensphere +ensphered +enspheres +enspirit +enstamp +enstar +enstate +enstatitic +enstatolite +ensteel +enstone +enstool +enstore +enstrengthen +ensuable +ensuance +ensuant +ensue +ensued +ensuer +ensues +ensuing +ensuingly +ensulphur +ensun +ensure +ensured +ensurer +ensurers +ensures +ensuring +enswathe +enswathed +enswathement +enswathes +ensweep +entablature +entablatured +entablement +entach +entad +entada +entail +entailable +entailed +entailer +entailers +entailing +entailment +entailments +entails +ental +entame +entamoeba +entamoebic +entangle +entangled +entangledly +entanglement +entangler +entanglers +entangles +entangleth +entangling +entanglingly +entapophysis +entappuah +entarthrotic +entasekera +entasia +entasis +entech +entechtaiwan +entelam +entelechy +entellus +entelodon +entelodont +entelsat +entempest +entemple +entendres +entente +ententes +ententophil +enter +enterable +enteraden +enteral +enteralgia +enterate +enterauxe +enterclose +enterectomy +entered +enterer +enterers +entereth +entergogenic +enteria +enteric +entericoid +entering +enteritidis +enteritis +entermete +entero +enterocele +enteroclisis +enteroclysis +enterocoela +enterocoele +enterocoelic +enterocrinin +enterocyst +enterodynia +enterogenous +enterogram +enterograph +enterography +enteroid +enterokinase +enterolith +enterolobium +enterology +enteromegaly +enteromere +enteromorpha +enteron +enteropathy +enteropexia +enteropexy +enteroplasty +enteroplegia +enteropneust +enteroptosis +enteroptotic +enterorrhea +enteroscope +enterosepsis +enterospasm +enterostasis +enterostomy +enterotome +enterotomy +enterozoa +enterozoan +enterozoic +enterpise +enterpower +enterprise +enterpriser +enterprises +enterprising +enterprize +enters +entertain +entertained +entertainer +entertainers +entertaining +entertains +entete +entfert +entgtg +entheal +enthelmintha +enthetic +enthral +enthraldom +enthralldom +enthralled +enthraller +enthralling +enthrallment +enthralls +enthralment +enthrals +enthrone +enthroned +enthronement +enthrones +enthroning +enthronize +enthuse +enthused +enthuses +enthusiasm +enthusiasms +enthusiast +enthusiastic +enthusiastly +enthusiasts +enthusing +enthymematic +enthymeme +entia +entiat +entice +enticeable +enticed +enticeful +enticement +enticements +enticer +enticers +entices +enticeth +enticing +enticingly +enticingness +entifical +entification +entify +entincture +entings +entir +entire +entirely +entireness +entires +entireties +entiris +entists +entitative +entitatively +entite +entities +entitle +entitled +entitlement +entitles +entitling +entity +ently +entmaidens +entoblast +entoblastic +entocarotid +entocele +entocnemial +entocoele +entocoelic +entocondylar +entocondyle +entocone +entoconid +entocornea +entocranial +entocuniform +entocyemate +entocyst +entoderm +entodermal +entodermic +entogastric +entogenous +entoglossal +entohyal +entoil +entoiled +entoiling +entoilment +entoils +entoloma +entomb +entombed +entombing +entombment +entombments +entombs +entomere +entomeric +entomic +entomical +entomion +entomogenous +entomoid +entomologic +entomologies +entomologist +entomologize +entomophaga +entomophagan +entomophila +entomophily +entomostraca +entomotaxy +entomotomist +entomotomy +enton +entone +entonement +entoolitic +entoparasite +entophytal +entophyte +entophytic +entophytous +entopic +entopical +entoplasm +entoplastic +entoplastral +entoplastron +entoprocta +entoproctous +entoptic +entoptical +entoptically +entoptics +entoptoscope +entoptoscopy +entoretina +entorganism +entosarc +entosclerite +entosphenal +entosphenoid +entosphere +entosternal +entosternite +entosternum +entothorax +entotic +entoto +entotrophi +entotympanic +entourage +entourages +entozoa +entozoal +entozoan +entozoarian +entozoic +entozoology +entozoon +entpackt +entr +entracte +entrail +entrails +entrain +entrained +entrainer +entraining +entrainment +entrains +entral +entrammel +entrance +entranced +entrancedly +entrancement +entrances +entrancing +entrancingly +entrants +entrap +entrapment +entrapments +entrapped +entrapper +entrapping +entrappingly +entraps +entray +entre +entreasure +entreat +entreated +entreateth +entreaties +entreating +entreatingly +entreatment +entreats +entreaty +entree +entrees +entremet +entremets +entrench +entrenched +entrenches +entrenching +entrenchment +entrepas +entrepot +entresol +entries +entriken +entrochite +entrochus +entrop +entropies +entropion +entropionize +entropium +entropy +entrough +entrust +entrusted +entrusting +entrustment +entrusts +entry +entrybox +entryman +entryway +entryways +ents +entstehender +enturret +entwade +entwash +entwhistle +entwicklung +entwine +entwined +entwinement +entwines +entwining +entwist +entwisted +entwisting +entwistle +entwists +entwives +entwood +entyloma +enucleate +enucleation +enucleator +enuff +enukki +enumclaw +enumerate +enumerated +enumerates +enumerating +enumeration +enumerations +enumerative +enumerator +enumerators +enunciate +enunciated +enunciates +enunciating +enunciation +enunciations +enunciative +enunciator +enunciators +enunciatory +enure +enureses +enuresis +enuretic +enurmin +enurny +enus +enuxha +envangelii +envapor +envapour +envassal +envassalage +envault +enveil +envelope +enveloped +enveloper +envelopers +envelopes +enveloping +envelopment +envelopments +envelops +envenom +envenomation +envenomed +envenoming +envenoms +enver +enverdure +envermeil +enviableness +enviably +envied +envier +enviers +envies +enviest +envieth +enville +envineyard +envious +enviously +enviousness +envira +enviro +enviroment +enviroments +environ +environage +environal +environed +environic +environing +environm +environment +environments +environs +envisage +envisaged +envisagement +envisages +envisaging +envision +envisioned +envisioning +envisions +envoi +envois +envolume +envoy +envoys +envoyship +envvars +envy +envying +envyingly +envyings +enwallow +enwheeling +enwiden +enwind +enwinding +enwisen +enwoman +enwomb +enwombing +enwood +enworthed +enwound +enwrap +enwrapment +enwrapped +enwrapping +enwreathe +enwrite +enwrought +enya +enyart +enyau +enyay +enyembe +enyong +enyowuh +enza +enzeb +enzo +enzone +enzootic +enzooty +enzym +enzyme +enzymes +enzymic +enzymically +enzymologies +enzymologist +enzymolysis +enzymolytic +enzymosis +enzymotic +eoan +eoanthropus +eodevonian +eogaea +eogaean +eoghanacht +eohippuses +eoin +eola +eolanda +eolande +eolation +eolia +eolian +eolie +eolipiles +eolith +eolithic +eoliths +eoln +eolus +eomecon +eomer +eomund +eonian +eonism +eons +eopalaeozoic +eopaleozoic +eophyte +eophytic +eophyton +eoptimal +eoptimality +eored +eorhyolite +eorl +eorlingas +eory +eosate +eosaurus +eoside +eosin +eosinate +eosinic +eosinoblast +eosinophile +eosinophilia +eosinophilic +eosphorite +eothan +eotile +eowyn +eozoic +eozoon +eozoonal +epacmaic +epacme +epacrid +epacridaceae +epacris +epact +epactal +epaenetus +epagoge +epagogic +epagomenae +epagomenal +epagomenic +epagomenous +epai +epaleaceous +epalpate +epanagoge +epanalepsis +epanaleptic +epanaphora +epanaphoral +epanastrophe +epanchement +epanodos +epanody +epanorthidae +epanorthosis +epanorthotic +epanthous +epaphras +epaphroditus +epapillate +epappose +eparch +eparchate +eparchean +eparchial +eparchy +eparcuale +eparterial +epatha +epaule +epaulement +epauleted +epaulets +epaulette +epauletted +epauliere +epaxial +epaxially +epcc +epebor +epedaphic +epee +epeeist +epeeists +epees +epeios +epeira +epeiric +epeirid +epeiridae +epeirogenic +epeirogeny +epeisodion +epem +epembryonic +epena +epencephal +epencephalic +epencephalon +ependyma +ependymal +ependyme +ependymitis +ependymoma +ependytes +epenthesis +epenthesize +epenthetic +epephragmal +epepophysial +epepophysis +epera +eperdu +epergne +epergnes +eperjes +eperjesy +eperotesis +eperouta +eperua +epes +epexegesis +epexegetic +epexegetical +epfl +epha +ephah +ephai +epharmonic +epharmony +ephebe +ephebeion +ephebeum +ephebic +ephebos +ephebus +ephectic +ephedra +ephedraceae +ephedras +ephedrin +ephedrine +ephedrins +ephelcystic +ephelis +ephemera +ephemerae +ephemeral +ephemerality +ephemerally +ephemeran +ephemeras +ephemerid +ephemerida +ephemeridae +ephemerist +ephemeron +ephemerous +epher +ephesdammim +ephesian +ephesians +ephesine +ephesus +ephetae +ephete +ephetic +ephialtes +ephidrosis +ephippia +ephippial +ephippium +ephlal +ephod +ephor +ephoral +ephoralty +ephorate +ephoric +ephorship +ephorus +ephphatha +ephraim +ephraimite +ephraimites +ephraimitic +ephraimitish +ephraitic +ephrata +ephratah +ephrath +ephrathite +ephrathites +ephriam +ephron +ephthalite +ephthianura +ephthianure +ephydra +ephydriad +ephydrid +ephydridae +ephymnium +ephyra +ephyrula +epibasal +epibaterium +epibenthic +epibenthos +epiblast +epiblastema +epiblastic +epiblema +epibole +epibolic +epibolism +epiboly +epibranchial +epic +epical +epically +epicalyces +epicalyx +epicalyxes +epicanthic +epicanthus +epicardia +epicardiac +epicardial +epicardium +epicarid +epicaridan +epicaridea +epicarides +epicarp +epicauta +epicede +epicedial +epicedian +epicedium +epicele +epicene +epicenes +epicenism +epicenity +epicenter +epicenters +epicentral +epicentrum +epiceratodus +epicerebral +epicheirema +epichil +epichile +epichilium +epichirema +epichordal +epichorial +epichoric +epichorion +epichoristic +epichristian +epicier +epicism +epicist +epiclastic +epicleidian +epicleidium +epiclesis +epiclidal +epiclinal +epicly +epicnemial +epicoela +epicoelar +epicoele +epicoelia +epicoeliac +epicoelian +epicoeloma +epicoelous +epicolic +epicondylar +epicondyle +epicondylian +epicondylic +epicoracoid +epicormic +epicorolline +epicortical +epicostal +epicotyl +epicotyleal +epicranial +epicranium +epicranius +epicrates +epicrisis +epicritic +epics +epictetian +epicureanism +epicureans +epicures +epicurish +epicurishly +epicurism +epicurize +epicycles +epicyclical +epicycloid +epicycloidal +epicyemate +epicyesis +epicystotomy +epicyte +epideictic +epideictical +epideistic +epidemic +epidemical +epidemically +epidemicity +epidemics +epidemy +epidendral +epidendric +epidendron +epidendrum +epiderm +epiderma +epidermal +epidermatic +epidermatoid +epidermatous +epidermical +epidermis +epidermoid +epidermoidal +epidermose +epidermous +epiderms +epidesmine +epidialogue +epidiascope +epidiascopic +epidictic +epidictical +epididymal +epididymis +epididymite +epididymitis +epidiorite +epidosite +epidote +epidotic +epidural +epidydimus +epidymides +epie +epieatissa +epiengome +epifanita +epifascial +epifocal +epigaea +epigamic +epigaster +epigastraeum +epigastral +epigastrial +epigastric +epigastrical +epigastrium +epigeal +epigean +epigeic +epigene +epigenesis +epigenesist +epigenic +epigenist +epigenous +epigeous +epigi +epiglottal +epiglottic +epiglottis +epiglottises +epiglottitis +epignathous +epigon +epigonal +epigonation +epigone +epigoni +epigonic +epigonium +epigonos +epigonous +epigonus +epigrams +epigrapher +epigraphic +epigraphical +epigraphist +epigraphs +epigraphy +epiguanine +epigyne +epigynous +epigynum +epigyny +epihippus +epihyal +epihydric +epihydrinic +epikeia +epiklesis +epikouros +epilabrum +epilachna +epilachnides +epilamellar +epilaryngeal +epilate +epilation +epilatory +epilegomenon +epilemma +epilemmal +epilepsies +epilepsy +epileptics +epileptiform +epileptoid +epileptology +epilimnion +epilobe +epilobiaceae +epilobium +epilog +epilogation +epilogic +epilogical +epilogist +epilogistic +epilogize +epilogs +epilogued +epilogues +epiloguing +epimachinae +epimacus +epimanikia +epimedium +epimenidean +epimer +epimeral +epimere +epimeric +epimeride +epimerite +epimeritic +epimeron +epimerum +epimetheus +epimorphic +epimorphosis +epimysium +epimyth +epinaos +epinastic +epinasty +epineolithic +epinephelus +epinephrine +epinette +epineural +epineurial +epineurium +epinger +epinglette +epinicial +epinician +epinicion +epinine +epinmi +epiopticon +epiotic +epipactis +epiparasite +epiparodos +epipastic +epipetalous +epiphanies +epiphanous +epiphany +epipharynx +epiphegus +epiphenomena +epiphloedal +epiphloedic +epiphloeum +epiphonema +epiphora +epiphragm +epiphylline +epiphyllous +epiphyllum +epiphysary +epiphysial +epiphysitis +epiphytal +epiphyte +epiphytes +epiphytic +epiphytical +epiphytism +epiphytology +epiphytotic +epiphytous +epipial +epiplankton +epiplasm +epiplasmic +epiplastral +epiplastron +epiplectic +epipleura +epipleural +epiplexis +epiploce +epiplocele +epiploic +epiploitis +epiploon +epiplopexy +epipodial +epipodiale +epipodite +epipoditic +epipodium +epipolic +epipolism +epipolize +epipteric +epipterous +epipterygoid +epipubic +epipubis +epirhizous +epirogenic +epirogeny +epirote +epirotic +epirotulian +epirrhema +epirrhematic +epirrheme +epirus +episarcine +episcenium +episclera +episcleral +episcleritis +episcopable +episcopacies +episcopacy +episcopalism +episcopality +episcopally +episcopates +episcopature +episcope +episcopes +episcopicide +episcopize +episcotister +episematic +episepalous +episiocele +episioplasty +episiotomy +episkeletal +episkotister +episodal +episode +episodes +episodial +episodical +episodically +epispadiac +epispadias +epispastic +episperm +epispermic +epispinal +episplenitis +epispore +episporium +epistapedial +epistasies +epistasis +epistatic +epistaxis +epistemic +epistemolog +epistemonic +episternal +episternalia +episternite +episternum +epistilbite +epistlar +epistle +epistler +epistlers +epistles +epistolarian +epistolarily +epistolary +epistoler +epistolet +epistolic +epistolical +epistolist +epistolize +epistolizer +epistoma +epistomal +epistome +epistomian +epistroma +epistrophe +epistropheal +epistropheus +epistrophic +epistrophy +epistylar +epistyle +epistylis +episuite +episyllogism +episynthetic +episyntheton +epitactic +epitaph +epitapher +epitaphial +epitaphian +epitaphic +epitaphical +epitaphist +epitaphize +epitaphless +epitaphs +epitasis +epitaxially +epitela +epitendineum +epitenon +epithalamia +epithalamial +epithalamic +epithalamion +epithalamium +epithalamize +epithalamus +epithalamy +epithalline +epitheca +epithecal +epithecate +epithecium +epithelia +epithelilia +epithelioid +epithelioma +epitheliosis +epitheliums +epithelize +epitheloid +epithem +epithermal +epithermally +epithesis +epithetic +epithetical +epithetician +epithetize +epitheton +epithets +epithumetic +epithyme +epithymetic +epitimesis +epitoke +epitomator +epitomatory +epitomes +epitomic +epitomical +epitomically +epitomist +epitomize +epitomized +epitomizer +epitomizes +epitomizing +epitonic +epitoniidae +epitonion +epitonium +epitoxoid +epitrichial +epitrichium +epitrite +epitritic +epitrochlea +epitrochlear +epitrochoid +epitrope +epitrophic +epitrophy +epitympanic +epitympanum +epityphlitis +epityphlon +epiural +epivalve +epixylous +epizeuxis +epizoa +epizoal +epizoan +epizoarian +epizoic +epizoicide +epizoon +epizootic +eplain +eplay +eplett +eplf +eplot +epnm +epoch +epocha +epochally +epochism +epochist +epochmaking +epochs +epode +epodic +epollicate +epomophorus +eponine +eponychium +eponym +eponymic +eponymies +eponymism +eponymist +eponymize +eponymous +eponyms +eponymus +eponymy +epoophoron +epopee +epopoca +epopoean +epopoeia +epopoeist +epopt +epoptes +epoptic +epoptist +epornitic +epos +epoxied +epoxies +epoxyed +epoxying +eppelmann +eppenstiner +eppersen +epperson +eppich +eppie +epping +eppler +epplett +epps +eppy +eprm +eproboscidea +eprom +eproms +epruinose +epsilon +epsilonc +epsilondelta +epsilons +epsomite +epson +epstein +epsy +eptatretidae +eptatretus +epting +epulary +epulation +epulis +epulo +epuloid +epulosis +epulotic +epulu +epupillate +epural +epurate +epuration +epwau +epworth +epyaxa +epyllion +epyrus +equability +equableness +equably +equador +equaeval +equal +equalable +equaled +equaling +equalise +equalised +equaliser +equalises +equalising +equalist +equalitarian +equalities +equality +equalization +equalize +equalized +equalizer +equalizers +equalizes +equalizing +equalled +equalling +equally +equalness +equals +equangular +equanil +equanimous +equanimously +equant +equatable +equate +equated +equates +equateur +equating +equation +equational +equationally +equationism +equationist +equations +equator +equatoria +equatorial +equatorially +equators +equatorward +equatorwards +equently +equerries +equerry +equerryship +equestrial +equestrians +equestrienne +equiangle +equiangular +equiatomic +equiaxed +equiaxial +equibalance +equibalanced +equicellular +equicohesive +equiconvex +equicostate +equicrural +equicurve +equid +equidense +equidensity +equidiagonal +equidist +equidistance +equidiurnal +equidivision +equidominant +equidurable +equiform +equiformal +equiformity +equiglacial +equigranular +equijacent +equilibrant +equilibrated +equilibrates +equilibrator +equilibrial +equilibriate +equilibrio +equilibrious +equilibriria +equilibrist +equilibrity +equilibrium +equilibriums +equilibrize +equilobate +equilobed +equilocation +equilucent +equimodal +equimolar +equimomental +equimultiple +equinao +equinate +equinely +equines +equinia +equinities +equinity +equinovarus +equinox +equinoxe +equinoxes +equinunk +equinus +equip +equipaga +equipage +equipages +equiparant +equiparate +equiparation +equipartile +equipartisan +equiped +equipedal +equiperiodic +equipluve +equipment +equipmentage +equipments +equipoises +equipollence +equipollency +equipollent +equipostile +equipped +equipper +equippers +equiprobable +equips +equiradial +equiradiate +equiradical +equired +equirotal +equisetaceae +equisetales +equisetic +equisetum +equisided +equisignal +equisized +equison +equisonance +equisonant +equispaced +equispatial +equisurface +equitable +equitably +equitant +equitative +equitemporal +equites +equities +equitist +equity +equivalence +equivalenced +equivalences +equivalency +equivalent +equivalently +equivalents +equivaliant +equivalue +equivaluer +equivalve +equivalved +equivalvular +equivariant +equivelant +equivelocity +equivocacies +equivocacy +equivocal +equivocality +equivocally +equivocated +equivocates +equivocating +equivocation +equivocator +equivocators +equivocatory +equivoke +equivokes +equivoque +equivorous +equivote +equoid +equoidean +equpiment +equpment +equuleus +equus +eraans +eraclio +erade +eradiate +eradiation +eradicant +eradicate +eradicated +eradicates +eradicating +eradication +eradications +eradicative +eradicator +eradicators +eradicatory +eradiculose +eragrostis +erai +erakor +erakwa +eral +eran +eranadans +eranist +eranites +eranthemum +eranthis +erap +erard +eras +erase +eraseable +erased +erasement +eraser +erasers +erases +erasing +erasion +erasions +erasmian +erastian +erastianism +erastianize +erastus +erasure +erasures +erat +erath +erato +eratosthenes +erau +erava +eravallan +eravas +erave +erawa +erbach +erbacon +erbakan +erbd +erbe +erbert +erbia +erbilgin +erbisbuhl +erbiums +erblicket +erbogocen +erbore +ercilla +erda +erdal +erdelyi +erdelyl +erdem +erdenet +erdman +erdmann +erdoesrenyi +erdos +erdreich +erdvark +erebato +erebus +erech +erechinsky +erechtheum +erechtheus +erechtites +erect +erectable +erected +erecter +erecters +erectile +erectilities +erectility +erecting +erection +erections +erective +erectly +erectness +erecton +erectopatent +erector +erectors +erects +erei +ereignisse +erelong +erem +eremacausis +eremagok +eremenko +eremian +eremic +eremital +eremite +eremites +eremiteship +eremitic +eremitical +eremitish +eremitism +eremochaeta +eremology +eremophyte +eremopteris +erempi +eremurus +eren +erena +erenach +erendira +erenga +erenity +erenow +erepsin +erept +ereptase +ereptic +ereption +eresky +erestor +erethic +erethisia +erethism +erethismic +erethistic +erethitic +erethizon +eretrian +erevan +erew +erewa +erewhile +erewhiles +erfani +erfelt +erfolgter +erford +erfordia +erfurt +ergal +ergamine +ergane +ergasia +ergasterion +ergastic +ergastoplasm +ergastulum +ergatandrous +ergatandry +ergates +ergatocracy +ergatocrat +ergatogyne +ergatogynous +ergatogyny +ergatoid +ergatomorph +ergle +ergmeter +ergo +ergoa +ergob +ergoc +ergod +ergodicity +ergoe +ergof +ergog +ergogram +ergograph +ergographic +ergoh +ergoi +ergoism +ergoj +ergok +ergology +ergom +ergomaniac +ergometer +ergometric +ergometrine +ergon +ergonomic +ergonomics +ergonovine +ergop +ergophile +ergophobia +ergophobiac +ergoplasm +ergoq +ergor +ergos +ergostat +ergosterin +ergosterol +ergot +ergotamine +ergotaminine +ergoted +ergotic +ergotin +ergotinine +ergotism +ergotisms +ergotist +ergotization +ergotize +ergotized +ergotoxin +ergotoxine +ergots +ergou +ergov +ergow +ergox +ergoy +ergoz +ergs +erguen +ergusia +erguven +erhalten +erhan +erhard +erhardt +eria +erian +erianthus +eric +erica +ericaceae +ericaceous +ericad +erical +ericales +ericas +ericetal +ericetum +erich +ericha +erichsen +erichthus +erichtoid +ericineous +ericius +erick +ericka +erickson +ericoid +ericolin +ericophyte +erics +ericson +ericsson +ericta +erida +eridanid +erie +erienborn +eriepa +erieville +eriga +erigenia +erigeron +erigerons +erigible +eriglossa +eriglossate +erigone +erik +erika +erikbatsa +erikite +eriko +erikpatsa +eriksen +erikson +eriksson +eriline +erim +erima +erin +erina +erinaceidae +erinaceous +erinaceus +erineum +erinite +erinize +erinn +erinna +erinose +eriobotrya +eriocaulon +eriocomi +eriodendron +eriodictyon +erioglaucine +eriogonum +eriometer +erionite +eriop +eriophorum +eriophyes +eriophyidae +eriophyllous +eriosoma +eriphyla +eriphyle +erique +eris +eristalis +eristic +eristical +eristically +eristics +eritai +eritalking +erites +erithacus +eritrea +eritrean +eriwan +eriya +erizo +erkan +erkel +erkenbrand +erkennt +erklingen +erland +erlang +erlanger +erlangian +erlaubt +erle +erlene +erlenheim +erler +erli +erlich +erlichman +erling +erlking +erlynne +erma +ermadean +ermanaric +ermand +ermani +ermanno +ermanrich +ermarkaryan +ermax +ermelin +ermelli +ermengarde +ermeni +ermentrude +ermera +ermey +ermina +ermine +ermined +erminee +ermines +erminia +erminie +erminites +erminois +ermisch +ermita +ermitan +ermiten +ermo +ermolaev +erna +ernabella +ernaline +ername +ernart +erne +ernest +ernesta +ernestina +ernestine +ernesto +ernet +ernga +erni +ernie +ernina +erning +erno +ernotte +erns +ernst +ernster +ernsterich +ernul +erny +erochka +eroded +erodent +erodes +eroding +erodium +erogeneity +erogenesis +erogenetic +erogenic +erogenous +erogeny +eroglu +erohwa +eroica +erok +erokh +erokwanas +eroler +eromanga +eron +erorup +eros +erose +erosely +eroses +erosi +erosion +erosional +erosionist +erosions +erosiveness +erosivity +erostrate +eroteme +erotesis +erotetic +erotic +erotica +erotical +erotically +eroticism +eroticist +eroticize +eroticizing +eroticomania +erotics +erotism +erotisms +erotization +erotize +erotized +erotizing +erotogeneses +erotogenesis +erotogenetic +erotogenic +erotomania +erotomaniac +erotopath +erotopathic +erotopathy +erotylidae +erpetologist +erpoo +errability +errable +errableness +errabund +erramanga +errancies +errand +errands +errantia +errantly +errantness +errantries +errants +errata +erratas +erratic +erratical +erratically +erraticism +erraticness +erratics +errazuriz +errcodes +erred +erreth +errhine +erring +erringly +errite +errol +erromanga +erronan +erronens +erroneous +erroneously +erronius +error +errorand +errordump +errorful +errorist +errorless +errorlevel +erroroneous +errors +errorunder +errs +errsyn +ersar +ersari +ersatz +ersatzes +erse +ersh +ershad +ershov +ersil +erskine +erst +erstein +erstellen +erstwhile +ertan +ertebolle +erten +erth +ertha +erthen +erthling +erthly +ertl +erubescence +erubescent +erubescite +eruc +eruca +erucic +eruciform +erucin +erucivorous +eruct +eructance +eructate +eructated +eructates +eructating +eructation +eructative +eructed +eructing +eruction +eructs +erudit +eruditely +eruditeness +eruditical +eruditional +eruditionist +eruerwauwau +erueuwauwau +erugate +erugation +erugatory +erukala +erumpent +erundi +erupt +erupted +erupting +eruption +eruptional +eruptions +eruptive +eruptively +eruptiveness +eruptives +eruptivity +erupts +erusu +eruwa +ervenholder +ervi +erville +ervin +erving +ervipiame +ervum +erway +erwin +erwinia +erwinna +erwinville +erwogen +eryg +eryhtrism +eryk +erymanthian +eryn +eryngium +eryngo +erynia +eryon +eryops +erysibe +erysimum +erysipelas +erysipeloid +erysipelous +erysiphaceae +erysiphe +erythea +erythema +erythematic +erythematous +erythemic +erythraea +erythraean +erythraeidae +erythrasma +erythrean +erythremia +erythrene +erythrin +erythrina +erythrine +erythrinidae +erythrinus +erythrismal +erythristic +erythrite +erythritic +erythritol +erythroblast +erythrocyte +erythrocytes +erythrocytic +erythrogenic +erythroid +erythrol +erythrolein +erythrolysin +erythrolysis +erythrolytic +erythromycin +erythron +erythronium +erythropenia +erythrophage +erythrophore +erythrophyll +erythropia +erythropsia +erythropsin +erythroscope +erythrose +erythrosin +erythrosis +erythroxylon +erythroxylum +erythrozyme +erythrulose +eryuan +eryx +erzenka +erzerum +erzeugen +erzeugt +erzgebirge +erzincan +erzsebet +erzsi +erzurum +erzya +esaala +esac +esafe +esaias +esam +esambayev +esambi +esan +esania +esarhaddon +esari +esarn +esaro +esary +esau +esaun +esbano +esbjerg +esbon +esca +escalada +escalade +escaladed +escalader +escalades +escalading +escalado +escalan +escalante +escalated +escalates +escalating +escalation +escalations +escalator +escalators +escalatory +escaldes +escalier +escalin +escallonia +escallop +escalloped +escalloping +escallops +escalon +escalop +escaloped +escalops +escambio +escambron +escamez +escamilla +escamillo +escamoter +escamoterie +escampette +escanaba +escande +escap +escapable +escapade +escapades +escapage +escape +escaped +escapees +escapeful +escapeless +escapement +escapements +escaper +escapers +escapes +escapeth +escapeway +escaping +escapingly +escapism +escapisms +escapist +escapists +escarbuncle +escargatoire +escargot +escargots +escarole +escaroles +escarp +escarped +escarping +escarpment +escarpments +escars +escartefigue +escartifique +escatawpa +escd +esce +escerny +escf +esch +eschalon +eschalot +eschalots +eschar +eschara +escharine +escharoid +escharotic +eschatocol +eschatology +esche +escheatable +escheatage +escheated +escheatment +escheator +eschen +escher +eschers +eschew +eschewal +eschewals +eschewance +eschewed +eschewer +eschewers +escheweth +eschewing +eschews +eschira +eschnapur +escho +eschynite +escimos +esclandre +esclangona +esclavage +escoba +escobadura +escobal +escobar +escobedo +escobido +escobilla +escobita +escoheag +escolar +escondido +esconson +escopet +escopette +escorial +escort +escortage +escorted +escortee +escorting +escortment +escorts +escoting +escout +escrapment +escrava +escriba +escribano +escribe +escrira +escritoires +escritorial +escriva +escrol +escropulo +escrowed +escrowee +escrowing +escrows +escruage +escuages +escuder +escudo +escudos +escuelacocha +escuintla +esculapian +esculent +esculents +esculetin +esculin +escurra +escutcheoned +escutcheons +escutellate +escutin +escwa +esdi +esdragol +esdras +esdvax +esdvst +esebor +esebrias +esek +esel +esemplastic +esemplasy +eseptate +eser +esere +eserine +eserv +eses +eset +esexual +esfahan +esfandiar +esformes +esgate +esguerra +esham +eshbaal +eshban +eshcol +eshe +eshean +eshek +eshelman +esherick +eshet +eshin +eshio +eshira +eshisango +eshkalonites +eshkashimi +eshkashmi +eshley +eshnapur +esho +eshtaol +eshtaulites +eshtemoa +eshtemoh +eshton +eshtor +esiluyana +esimbi +esimbowe +esimon +esingee +esiphonal +esiriun +eskdale +esker +eskew +eskicioglu +eskil +eskildsen +eskimauan +eskimoaleut +eskimoes +eskimoic +eskimoid +eskimoized +eskimos +eskisehir +esko +eskojuhani +eskridge +eskualdun +eskuara +eslambolchi +esle +esler +esli +eslibi +eslick +esliger +esma +esmail +esmaili +esmaria +esme +esmelton +esmeralda +esmeraldan +esmeraldas +esmeraldina +esmeraldite +esmeralida +esmeril +esmond +esmont +esmtp +esne +esnet +esoanhydride +esobe +esocidae +esociform +esocyclic +esodic +esoenteritis +esogastritis +esomhill +esona +esonarthex +esoneural +esophagal +esophagalgia +esophageal +esophagean +esophagism +esophagismus +esophagitis +esophago +esophagocele +esophagotome +esophagotomy +esophagus +esophoria +esophoric +esopus +esoqq +esoteric +esoterica +esoterical +esoterically +esotericism +esotericist +esoterics +esoterism +esoterist +esoterize +esotery +esothyropexy +esotrope +esotropia +esotropic +esox +espacement +espadon +espadrille +espadrilles +espagnole +espaillat +espaldas +espalier +espaliered +espaliers +espan +espana +espanita +espanol +espanola +espanoles +espantalcon +espantalean +espantoon +esparcet +esparsette +esparta +esparto +esparza +espathate +espave +especiall +especially +especialness +espejo +espen +esperance +esperantic +esperantido +esperantism +esperantist +esperanto +esperanza +espi +espial +espials +espichellite +espied +espiegle +espieglerie +espier +espies +espinal +espinet +espinette +espingole +espinillo +espino +espinosa +espinoza +espion +espionage +espionnage +espionne +espirito +espiritu +esplanades +esplees +espoir +esponton +esposito +esposti +espousals +espouse +espoused +espousement +espouser +espousers +espouses +espousing +espresso +espressos +espriella +espringal +esprits +espundia +espy +espying +esql +esquamate +esquamulose +esquiline +esquirearchy +esquired +esquiredom +esquires +esquireship +esquiring +esquivel +esrom +esry +essa +essadze +essam +essance +essang +essaouira +essay +essayed +essayer +essayers +essayette +essayical +essaying +essayish +essayism +essayist +essayistic +essayistical +essayists +essaylet +essays +esscher +esse +essed +essedones +esseedee +essek +essel +esselbach +essele +esselen +esselenian +essence +essences +essency +essene +essenian +essenianism +essenic +essenical +essenin +essenis +essenism +essenize +essentia +essential +essentialism +essentialist +essentiality +essentialize +essentiall +essentially +essentials +essenwood +essequibo +esser +essery +esses +essex +essexfells +essexite +essexs +essexville +essey +essezogbadji +essie +essig +essil +essimbi +essington +essler +esslin +essling +essoh +essohess +essoin +essoinee +essoiner +essoinment +esson +essonite +essorant +essouma +esspeeell +essy +esta +estaban +estabished +establish +established +establisher +establishes +establisheth +establishing +estabrooks +estacada +estacade +estadal +estadio +estado +estados +estadual +estafette +estafetted +estamene +estaminet +estamp +estampage +estampede +estampedero +estancia +estancias +estas +estate +estated +estates +estatesman +estating +estce +este +esteban +esteben +estee +esteem +esteemable +esteemed +esteemer +esteemeth +esteeming +esteems +esteghamat +estel +estele +esteli +estelita +estell +estella +estelle +estelline +estellmanor +estenssoro +estep +ester +esterase +esterases +esterellite +esterhazy +esteridge +esteriferous +esterify +esterization +esterize +esterlin +esterling +estern +estero +esters +estes +estespark +estetla +estevan +estevez +estevin +estey +esth +esthacyte +esthcote +esther +estheria +estherian +estheriidae +estherville +estherwood +esthesia +esthesias +esthesio +esthesiogen +esthesiogeny +esthesiology +esthesis +esthete +esthetes +esthetic +esthetically +esthetics +esthetology +esthetophore +esthiomene +estill +estillfork +estimability +estimably +estimate +estimated +estimates +estimatesof +estimating +estimatingly +estimation +estimationof +estimations +estimative +estimator +estimators +estipulate +estivage +estival +estivate +estivated +estivates +estivating +estivation +estivator +estivet +estmark +estmate +esto +estoc +estoile +estonia +estonian +estonians +estoppage +estopped +estoppel +estoppels +estopping +estops +estoril +estotiland +estouteville +estovers +estrada +estrade +estradiol +estradiot +estragole +estragon +estragons +estranged +estrangement +estranger +estranges +estranging +estranho +estrapade +estray +estraying +estre +estreat +estreating +estrella +estrellita +estrello +estremenho +estrepe +estrepement +estress +estria +estriate +estriche +estridge +estrin +estriol +estrogen +estrogenic +estrogens +estrone +estrongo +estrous +estrual +estruate +estruation +estrum +estrus +estruses +estry +estuaire +estuarial +estuaries +estuarine +estuation +estufa +estuous +estus +estute +estzterke +esulau +esuma +esumbu +esuriant +esurience +esurient +esuriently +esvax +eswara +eszter +esztergalyos +eszterhazy +etaballi +etacism +etacist +etagere +etageres +etah +etaix +etalage +etalon +etam +etamin +etamine +etana +etaoin +etape +etas +etatism +etatist +etats +etcetera +etceteragrad +etceteras +etch +etched +etcher +etchers +etches +etchieson +etchimin +etching +etchingham +etchings +etee +etel +etelena +etemad +etemadi +eteminan +eteoclus +eteocretes +eteocreton +eteoneus +eternal +eternalism +eternalist +eternalize +eternally +eternalness +eternals +eterne +eternise +eternities +eternity +eternization +eternize +eternized +eternizes +eternizing +etes +etesian +etessence +ethal +ethaldehyde +etham +ethan +ethanal +ethanamide +ethanedial +ethanediol +ethanes +ethanethial +ethanethiol +ethanim +ethanolamine +ethanols +ethanolysis +ethanoyl +ethbaal +ethdump +ethel +ethelbert +ethelda +ethelin +ethelind +etheline +ethell +ethelred +ethelreda +ethelsville +ethelyn +ethene +etheneldeli +ethenes +ethenic +ethenoid +ethenoidal +ethenol +ethenyl +etheostoma +etheostomoid +ether +etherate +etherboy +etherdisk +etherea +etherealism +ethereality +etherealize +etherealized +ethereally +etherealness +etherean +ethered +ethereous +etherexpress +etherfind +etherhose +etheria +etherial +etherially +etheric +etheridgea +etherified +etherifies +etheriform +etherify +etheriidae +etherin +etherion +etherish +etherism +etherization +etherize +etherized +etherizer +etherizes +etherizing +etherlink +ethernet +ethernets +etherolate +etherous +etherpacket +ethers +ethertwist +ethhdr +ethic +ethical +ethicalism +ethicalities +ethicality +ethically +ethicalness +ethicals +ethician +ethicians +ethicism +ethicist +ethicists +ethicize +ethicized +ethicizes +ethicizing +ethicosocial +ethics +ethid +ethide +ethidene +ethier +ethine +ethington +ethiodide +ethionic +ethiop +ethiopia +ethiopian +ethiopians +ethiopic +ethiops +ethiosemitic +ethload +ethmofrontal +ethmoid +ethmoidal +ethmoiditis +ethmolith +ethmonasal +ethmopalatal +ethmophysal +ethmovomer +ethmyphitis +ethnal +ethnan +ethnarch +ethnarchy +ethne +ethni +ethnic +ethnical +ethnically +ethnicism +ethnicist +ethnicity +ethnicize +ethnicon +ethnics +ethnize +ethnobiology +ethnobotanic +ethnobotany +ethnocentric +ethnocracy +ethnodicy +ethnoflora +ethnogenic +ethnogeny +ethnographer +ethnographic +ethnologer +ethnologic +ethnological +ethnologist +ethnologists +ethnomaniac +ethnopsychic +ethnos +ethnoses +ethnozoology +ethography +etholide +ethologic +ethological +ethologies +ethologist +ethologists +ethonomic +ethonomics +ethopoeia +ethoses +ethoxide +ethoxyl +ethridge +ethrog +ethun +ethyl +ethylamide +ethylamine +ethylate +ethylated +ethylates +ethylation +ethyle +ethylenes +ethylenic +ethylenimine +ethylenoid +ethylic +ethylidene +ethylidyne +ethylin +ethyls +ethyne +ethynyl +etien +etienne +etievant +etim +etimi +etin +etinan +etintim +etiogenic +etiolate +etiolated +etiolates +etiolating +etiolation +etiolin +etiolize +etiologic +etiological +etiologies +etiologist +etiologue +etions +etiophyllin +etiotropic +etiquettes +etiquettical +etishi +etiwanda +etkye +etkywa +etla +etlan +etley +etlinger +etna +etnagreen +etnas +etnean +etogo +etoh +etoile +etoiles +etom +etomu +eton +etonian +etono +etoro +etorofu +etossio +etot +etowah +etoy +etpison +etrange +etranger +etre +etroit +etruria +etrurian +etruscans +etruscology +etsako +etsakor +etsi +etsu +etsuko +etta +ettarre +etten +ettenburg +etter +etters +etterville +etti +ettie +etting +ettingen +ettinger +ettle +ettlinger +ettore +ettrick +ettridge +ettson +etty +etua +etudes +etui +etulo +etumbwe +etung +etuno +eturo +etvlib +etwas +etyee +etym +etymic +etymography +etymologer +etymologic +etymological +etymologicon +etymologies +etymologist +etymologists +etymologize +etymology +etymon +etymonic +etype +etypic +etypical +etypically +etzel +etzell +euahlayi +euangiotic +euaster +euba +eubacterium +eubank +eubanks +eubasidii +euboea +euboean +euboic +eubranchipus +eubulus +eucaine +eucairite +eucalypt +eucalypteol +eucalypti +eucalyptian +eucalyptic +eucalyptol +eucalyptole +eucalyptuses +eucarida +eucatropine +eucephalous +eucha +eucharis +eucharistial +eucharistic +eucharistize +eucharists +eucharitidae +euchite +euchlaena +euchloric +euchlorine +euchological +euchologion +euchology +euchorda +euchre +euchred +euchres +euchring +euchroic +euchroite +euchromatic +euchromatin +euchrome +euchromosome +euchrone +eucine +eucirripedia +euclase +euclea +eucleidae +euclid +euclidean +euclideanism +euclides +eucnemidae +eucolite +eucom +eucommia +eucommiaceae +eucone +euconic +euconjugatae +eucopepoda +eucosia +eucosmid +eucosmidae +eucrasia +eucrasite +eucrasy +eucrite +eucryphia +eucryptite +euctical +eucyclic +eudaemon +eudaemonia +eudaemonic +eudaemonical +eudaemonics +eudaemonism +eudaemonist +eudaemonize +eudaemons +eudaemony +eudaimonia +eudaimonism +eudaimonist +eudal +eudardo +eudemian +eudemons +eudendrium +eudeve +eudiagnostic +eudialyte +eudidymite +eudiometer +eudiometric +eudiometry +eudioscope +eudipleural +eudist +eudo +eudora +eudorina +eudoxian +eudromias +eudyptes +euergetes +eufaula +eufemia +eufemio +euge +eugen +eugena +eugene +eugenesic +eugenesis +eugenetic +eugeni +eugenia +eugenical +eugenically +eugenicist +eugenicists +eugenics +eugenie +eugenio +eugenion +eugenisis +eugenism +eugenist +eugenists +eugeniusz +eugenol +eugenolate +eugeny +eugine +euglandina +euglena +euglenaceae +euglenales +euglenas +euglenida +euglenidae +euglenineae +euglenoid +euglenoidina +euglobulin +eugranitic +eugubine +eugubium +euharmonic +euhedral +euhemerism +euhemerist +euhemeristic +euhemerize +euhyostylic +euhyostyly +euid +eukrate +euktolite +eula +eulachon +eulalia +eulalie +euler +euless +eulima +eulimidae +eulogia +eulogic +eulogical +eulogically +eulogies +eulogious +eulogise +eulogism +eulogist +eulogistic +eulogistical +eulogists +eulogium +eulogiums +eulogization +eulogize +eulogized +eulogizer +eulogizers +eulogizes +eulogizing +eulysite +eulytine +eulytite +eumenco +eumenes +eumenid +eumenidae +eumenidean +eumenorrhea +eumerism +eumeristic +eumeromorph +eumex +eumitosis +eumitotic +eumoiriety +eumoirous +eumolpides +eumolpus +eumorphic +eumorphous +eumycete +eumycetes +eumycetic +eunectes +eunice +eunicid +eunicidae +eunike +eunomia +eunomian +eunomianism +eunomy +eunuch +eunuchal +eunuchism +eunuchize +eunuchoid +eunuchoidism +eunuchry +eunuchs +euodias +euomphalid +euomphalus +euonym +euonymin +euonymous +euonymus +euonymy +euornithes +euornithic +euorthoptera +euosmite +euouae +eupad +eupanorthus +eupathy +eupatorin +eupatorium +eupatory +eupatrid +eupatridae +eupen +eupenmalme +eupepsia +eupepsy +eupeptic +eupepticism +eupepticity +euphausia +euphausiacea +euphausiid +euphausiidae +euphemia +euphemian +euphemious +euphemiously +euphemisms +euphemistic +euphemize +euphemizer +euphemous +euphemy +euphenics +euphon +euphone +euphonetic +euphonetics +euphonia +euphonic +euphonical +euphonically +euphonies +euphonious +euphoniously +euphonism +euphonium +euphonize +euphonon +euphonous +euphony +euphonym +euphorbium +euphoria +euphorias +euphorically +euphory +euphrasia +euphrasy +euphratean +euphrates +euphroe +euphrosene +euphrosyne +euphues +euphuism +euphuist +euphuistic +euphuistical +euphuize +euphyllopoda +eupione +eupittonic +euplastic +euplectella +euplexoptera +euplocomi +euploeinae +euploid +euploidy +eupnea +eupolidean +eupolyzoa +eupolyzoan +eupomatia +eupora +eupractic +eupraksia +eupraxia +euprepia +euproctis +eupsychics +euptelea +eupterotidae +eupyrchroite +eupyrene +eupyrion +eurafric +eurafrican +euraquilo +eurasian +eurasianism +eurasians +eurasiatic +eure +eureca +eureka +eurhodine +eurhodol +eurich +eurindic +euripidean +euripides +euripus +eurit +eurite +eurithmics +euro +euroafricans +euroaquilo +eurobin +euroclydon +eurodollar +eurodollars +euronesians +euronews +europa +europasian +europe +european +europeanism +europeanize +europeanized +europeanly +europeans +europecond +europedemi +europeext +europeward +europhium +europiums +europress +eurovision +eurus +euryalae +euryale +euryaleae +euryalean +euryalida +euryalidan +euryalus +euryanthe +eurybathic +eurybenthic +eurycephalic +euryclea +eurydike +eurygaea +eurygaean +eurygnathic +eurygnathism +eurygnathous +euryhaline +eurykleia +eurylaimi +eurylaimidae +eurylaimoid +eurylaimus +eurymus +eurynome +euryon +eurypelma +eurypharynx +euryprosopic +eurypterid +eurypterida +eurypteroid +eurypterus +eurypyga +eurypygae +eurypygidae +eurypylous +euryscope +eurystheus +eurythermal +eurythermic +eurythmic +eurythmical +eurythmics +eurythmies +eurythmy +eurytomid +eurytomidae +eurytus +euryzygous +eusa +euscaro +eusebia +eusebian +eusebio +euselachii +eusi +euskaldun +euskara +euskarian +euskaric +euskera +euskuara +eusol +euspongia +eustace +eustachian +eustachium +eustacia +eustathian +eustatic +eustatius +eustis +eustomatous +euston +eustrel +eustyle +eusuchia +eusuchian +eusynchite +eutaenia +eutanasia +eutannin +eutaw +eutawville +eutaxic +eutaxite +eutaxitic +eutaxy +eutechnic +eutechnics +eutectoid +eutelsat +euterpe +euterpean +eutexia +euthamia +euthanasia +euthanasy +euthanizing +euthenics +euthenist +eutheria +eutherian +euthermic +euthycomi +euthycomic +euthyneura +euthyneural +euthyneurous +euthytatic +euthytropic +eutomous +eutony +eutopia +eutopian +eutrophic +eutrophies +eutrophy +eutropic +eutropous +eutychian +eutychianism +eutychus +euug +euwww +euxanthate +euxanthic +euxanthone +euxenite +euxine +euzaine +euzawa +euzkadi +evabritt +evabs +evacuant +evacuants +evacuate +evacuated +evacuates +evacuating +evacuation +evacuations +evacuative +evacuator +evacuators +evacue +evacuee +evacuees +evadable +evadale +evaded +evader +evaders +evades +evadi +evadible +evading +evadingly +evadne +evagation +evaginable +evaginate +evagination +eval +evaleen +evaline +evaluable +evaluate +evaluated +evaluates +evaluating +evaluation +evaluations +evaluative +evaluator +evaluators +evalue +evalution +evalyn +evan +evanascence +evand +evanesce +evanesced +evanescence +evanescency +evanescently +evanesces +evanescible +evanescing +evangelary +evangelia +evangelian +evangeliary +evangelical +evangelicals +evangelican +evangelicism +evangelicity +evangelie +evangelin +evangelina +evangeline +evangelion +evangelique +evangelism +evangelist +evangelistic +evangelists +evangelium +evangelize +evangelized +evangelizer +evangelizes +evangelizing +evangelo +evangelos +evangels +evania +evanid +evaniidae +evanish +evanished +evanishes +evanishment +evanition +evanne +evans +evansatgw +evanscity +evansite +evansmills +evanson +evansport +evanston +evansville +evant +evapia +evaporable +evaporate +evaporated +evaporates +evaporating +evaporation +evaporations +evaporative +evaporator +evaporators +evaporimeter +evaporite +evaporitic +evaporize +evaporometer +evapu +evarist +evart +evarts +evase +evasible +evasional +evasions +evasively +evasiveness +evdict +evdokia +evdokiya +evea +eveanson +evechurr +evection +evectional +evegnia +evehood +evejar +eveleen +eveleigh +eveless +eveleth +evelien +evelight +evelina +eveline +evella +evello +evellyn +evelong +evely +evelyn +evelyna +evelyne +even +evenblush +evendim +evendown +evened +evener +eveners +evenest +evenfall +evenfalls +evenforth +evenglow +evenhandedly +evenhouse +evenin +evening +evenings +eveningshade +eveningtide +evenki +evenkia +evenlight +evenlong +evenly +evenmete +evenminded +evenness +evens +evenson +evensongs +evenstar +evensville +event +eventbased +eventful +eventfully +eventfulness +eventide +eventides +eventime +eventless +eventlessly +eventognath +eventognathi +eventration +events +eventual +eventuality +eventualize +eventually +eventuated +eventuates +eventuating +eventuation +eventuations +evenwise +evenworthy +evenwrite +eveque +ever +everard +everbearer +everbearing +everbloomer +everblooming +everchanging +everdene +everduring +everest +everestdemi +everestultra +everet +everett +everette +everetts +everettville +everex +everflowing +everglade +evergood +evergreen +evergreenery +evergreenite +evergreens +everhart +everitt +everlasting +everley +everliving +everly +evermore +everness +evernia +evernioid +everpopular +everrett +evers +eversible +eversion +eversions +eversive +everson +eversporting +evert +evertebral +evertebrata +evertebrate +everted +evertile +everting +everton +evertor +evertors +everts +everwhich +everwho +every +everybodies +everybody +everybodys +everyday +everydayness +everyhow +everyime +everylike +everymen +everyness +everyone +everyones +everyplace +everything +everytime +everyting +everyvendor +everyway +everywhen +everywhence +everywhere +everywheres +everywhither +eves +evesham +evestar +evetide +evette +eveweed +evey +evgeni +evgenia +evgeny +evgeview +evhgueni +evhro +evia +evict +evicted +evictee +evictees +evicting +eviction +evictions +evictor +evictors +evicts +evidence +evidenced +evidences +evidencing +evidencive +evident +evidentially +evidentiary +evidently +evidentness +evie +eviia +evil +evildisposed +evildoer +evildoers +evildoing +eviler +evilest +evilftp +evilhearted +eviller +evillest +evilly +evilmerodach +evilminded +evilmouthed +evilness +evilproof +evils +evilsayer +evilspeaker +evilspeaking +evilwishing +evilwood +evin +evinced +evincement +evinces +evincible +evincibly +evincing +evincingly +evincive +evington +evinston +evirate +eviration +evis +eviscerate +eviscerated +eviscerates +eviscerating +evisceration +evisite +evison +evita +evitable +evitate +evitation +evittate +evitts +evlugate +evocations +evocative +evocatively +evocator +evocators +evocatory +evocatrix +evodia +evoe +evoke +evoked +evoker +evokers +evokes +evoking +evolute +evolutes +evolutinary +evolution +evolutional +evolutionary +evolutionism +evolutionist +evolutionize +evolutions +evolutive +evolutoid +evolvable +evolved +evolvement +evolvements +evolvent +evolver +evolvers +evolves +evolving +evona +evonne +evons +evonymus +evora +evorra +evote +evouzok +evovae +evraire +evremonde +evrie +evritania +evrope +evropu +evros +evry +evseev +evulgate +evulgation +evulse +evulsion +evulsions +evvie +evvoia +evvy +evzones +ewabeach +ewage +ewagenotu +ewald +ewallet +ewan +ewanchyna +ewande +ewart +ewasyshyn +ewder +ewdokia +ewelease +ewell +ewen +ewenki +ewens +ewer +ewerer +ewers +ewery +ewes +ewing +ewings +ewodi +ewok +ewoks +ewondo +ewota +ewry +ewsd +ewumbonga +ewundu +ewww +exacerbated +exacerbates +exacerbating +exacerbation +exact +exacta +exactable +exactas +exacted +exacters +exactest +exacteth +exacting +exactingly +exactingness +exaction +exactions +exactitude +exactive +exactiveness +exactly +exactment +exactness +exactor +exactors +exactress +exacts +exactually +exadversum +exaggerated +exaggerates +exaggerating +exaggeration +exaggerative +exaggerator +exaggerators +exaggeratory +exagitate +exagitation +exairesis +exalate +exalbuminose +exalbuminous +exallotriote +exalt +exaltation +exaltations +exaltative +exalte +exalted +exaltedly +exaltedness +exalter +exalters +exaltest +exalteth +exalting +exalts +exam +examen +examinable +examinant +examinate +examination +examinations +examinative +examinator +examinatory +examine +examined +examinee +examinees +examiner +examiners +examinership +examines +examing +examining +examiningly +example +exampled +exampleless +examples +exampleship +exampling +exams +exanimate +exanimation +exanthem +exanthema +exanthematic +exarate +exaration +exarch +exarchal +exarchate +exarchic +exarchies +exarchist +exarchs +exarchy +exareolate +exarhos +exarillate +exaristate +exarteritis +exarticulate +exasperated +exasperates +exasperating +exasperation +exasperative +exaspidean +exaudi +exaugurate +exauguration +excalate +excalation +excalcarate +excalceate +excalceation +excalibur +excamb +excamber +excambion +excandescent +excantation +excarnate +excarnation +excathedra +excathedral +excaudate +excavated +excavates +excavating +excavation +excavations +excavator +excavatorial +excavators +excavatory +excave +excecate +excecation +excedent +exceed +exceedance +exceedances +exceeded +exceeder +exceeders +exceedest +exceedeth +exceeding +exceedingly +exceeds +excel +excelan +excelente +excelled +excellence +excellences +excellencies +excellency +excellent +excellently +excellest +excelleth +excello +excels +excelsin +excelsior +excelsis +excelsitude +excentral +excentric +excentrical +excentricity +exceprtion +except +exceptant +excepted +excepting +exception +exceptional +exceptionary +exceptions +exceptious +exceptive +exceptively +exceptor +excepts +excercise +excercising +excern +excerpt +excerpta +excerpted +excerptible +excerpting +excerption +excerptive +excerptor +excerpts +excess +excesses +excessive +excessively +excessman +exch +exchange +exchangeably +exchanged +exchanger +exchangers +exchanges +exchanging +exchangite +exchequer +exchequers +excide +excipient +exciple +excipulaceae +excipular +excipule +excipuliform +excipulum +excircle +excised +exciseman +excisemen +excises +excising +excisions +excisor +excitability +excitable +excitably +excitancy +excitant +excitants +excitations +excitative +excitator +excite +excited +excitedly +excitedness +excitement +excitements +exciter +exciters +excites +exciting +excitingly +excitive +excitomotion +excitomotor +excitomotory +excitons +excitor +excitors +excitory +excl +exclaim +exclaimed +exclaimer +exclaimers +exclaiming +exclaimingly +exclaims +exclam +exclamation +exclamations +exclamative +exclave +exclaves +exclosure +excludable +exclude +excluded +excludenames +excluder +excluders +excludes +excluding +excludingly +exclusion +exclusioner +exclusionism +exclusionist +exclusions +exclusive +exclusively +exclusivism +exclusivist +exclusivity +exclusivly +exclusory +excmu +excoecaria +excogitable +excogitate +excogitated +excogitates +excogitating +excogitation +excogitative +excogitator +exconjugant +excoriable +excoriated +excoriates +excoriating +excoriation +excoriations +excoriator +excorticate +excrak +excrement +excremental +excrementary +excrementive +excrements +excresce +excrescence +excrescences +excrescency +excresence +excreta +excretal +excreted +excreter +excreters +excretes +excreting +excretionary +excretions +excretitious +excretive +excriminate +excruciable +excruciating +excruciation +excruciator +excubant +excudate +exculpable +exculpated +exculpates +exculpating +exculpation +exculpations +exculpative +excurrent +excurse +excursiion +excursion +excursional +excursionary +excursioner +excursionism +excursionist +excursionize +excursions +excursive +excursively +excursory +excursuses +excurvate +excurvated +excurvation +excurvature +excurved +excusability +excusably +excusal +excusative +excusator +excusatory +excuse +excused +excuseful +excusefully +excuseless +excuser +excusers +excuses +excusezmoi +excusing +excusingly +excusive +excuss +excyst +excystation +excysted +excystment +exdelicto +exdie +exeat +exec +execed +execeptional +execise +execling +execlp +execpt +execrably +execrated +execrates +execrating +execration +execrations +execrative +execratively +execrator +execrators +execratory +execs +executable +executableby +executables +executancy +executant +execute +executed +executedst +executer +executers +executes +executest +executeth +executible +executing +execution +executional +executioner +executioners +executionist +executions +executive +executively +executives +executor +executorial +executors +executorship +executory +executress +executrices +executrixes +executry +exedent +exedra +exegeses +exegesist +exegetes +exegetic +exegetical +exegetically +exegetics +exegetist +exeinfo +exeland +exelenz +exelmans +exempla +exemplar +exemplaric +exemplarily +exemplarism +exemplarity +exemplars +exemplary +exempli +exemplified +exemplifier +exemplifiers +exemplifies +exemplifying +exemplum +exempt +exempted +exemptible +exemptile +exempting +exemption +exemptionist +exemptions +exemptive +exemptpw +exempts +exencephalia +exencephalic +exencephalus +exene +exensions +exenterate +exenteration +exepc +exept +exeption +exequatur +exequial +exequies +exequy +exercise +exercised +exerciser +exercisers +exercises +exerciseth +exercising +exercitant +exercitation +exercitor +exercitorial +exercitorian +exeresis +exergual +exergue +exert +exerted +exerting +exertion +exertionless +exertions +exertive +exerts +exes +exeter +exeunt +exfiguration +exfigure +exfiltration +exflagellate +exflect +exfodiate +exfodiation +exfoliate +exfoliation +exfoliative +exfoliatory +exhalable +exhalant +exhalants +exhalation +exhalations +exhalatory +exhaled +exhalent +exhales +exhaling +exhaust +exhaustable +exhausted +exhaustedly +exhauster +exhausting +exhaustingly +exhaustion +exhaustive +exhaustively +exhaustless +exhausts +exheredate +exheredation +exhibit +exhibitable +exhibitant +exhibited +exhibiter +exhibiters +exhibiting +exhibition +exhibitional +exhibitioner +exhibitions +exhibitive +exhibitively +exhibitorial +exhibitors +exhibitory +exhibits +exhilarant +exhilarated +exhilarates +exhilarating +exhilaration +exhilarative +exhilarator +exhilaratory +exhort +exhortation +exhortations +exhortative +exhortator +exhortatory +exhorted +exhorter +exhorters +exhorteth +exhorting +exhortingly +exhorts +exhumate +exhumations +exhumator +exhumatory +exhume +exhumed +exhumer +exhumers +exhumes +exhuming +exhusband +exibits +exicon +exigeant +exigence +exigences +exigencies +exigency +exigenter +exigently +exigible +exiguities +exiguity +exiguous +exiguously +exiguousness +exilarch +exilarchate +exile +exiled +exiledom +exilement +exiler +exiles +exilian +exilic +exiling +exility +exim +eximious +eximiously +eximiousness +exinanite +exinanition +exindusiate +exinguinal +exira +exist +existability +existance +existant +existas +existe +existed +existence +existences +existent +existential +existently +existents +exister +existibility +existible +existing +exists +exit +exite +exited +exiter +exitilus +exiting +exition +exitproc +exits +exitser +exitus +exkorean +exlex +exline +exmeridian +exmoor +exmore +exner +exnsun +exoarteritis +exoascaceae +exoascaceous +exoascales +exoascus +exobasidium +exobiologist +exobiology +exocardia +exocardiac +exocardial +exocarp +exoccipital +exocentric +exochorda +exochorion +exoclinal +exocline +exocoelar +exocoele +exocoelic +exocoelom +exocoetidae +exocoetus +exocolitis +exocone +exocrine +exoculate +exoculation +exocyclic +exocyclica +exocycloida +exode +exoderm +exodermis +exodic +exodist +exodontia +exodontist +exodos +exodromic +exodromy +exodus +exoduses +exody +exoenzyme +exoenzymic +exoergic +exofficial +exogamic +exogamies +exogastric +exogastritis +exogen +exogenae +exogeneity +exogenetic +exogenic +exogenously +exogeny +exognathion +exognathite +exogonium +exogyra +exolemma +exometritis +exomion +exomis +exomologesis +exomorphic +exomorphism +exomphalos +exomphalous +exomphalus +exon +exonarthex +exoner +exonerated +exonerates +exonerating +exoneration +exonerations +exonerative +exonerator +exonerators +exoneural +exonian +exonship +exopathic +exoperidium +exophagous +exophagy +exophasia +exophasic +exophoria +exophoric +exophthalmic +exophthalmos +exoplasm +exopod +exopodite +exopoditic +exopterygota +exorability +exorable +exorableness +exorbital +exorbitance +exorbitancy +exorbitant +exorbitantly +exorbitate +exorbitation +exorcisation +exorcised +exorcisement +exorciser +exorcisers +exorcises +exorcising +exorcismal +exorcisms +exorcisory +exorcistic +exorcistical +exorcists +exorcize +exorcized +exorcizes +exorcizing +exordia +exordial +exordium +exordiums +exordize +exorganic +exorhason +exoriation +exormia +exornation +exos +exosepsis +exoskeletal +exosmic +exosmose +exosmosis +exosmotic +exosperm +exosphere +exospheres +exospheric +exosporal +exospore +exosporium +exosporous +exostema +exostome +exostosed +exostosis +exostotic +exostra +exostracism +exostracize +exoteric +exoterical +exoterically +exotericism +exoterics +exotheca +exothecal +exothecate +exothecium +exothermal +exothermous +exotic +exotically +exoticalness +exoticbeer +exoticism +exoticist +exoticity +exoticness +exotics +exotism +exotisms +exotospore +exotoxic +exotoxin +exotropia +exotropic +exotropism +expalpate +expand +expandable +expanded +expandedly +expandedness +expander +expanders +expandible +expanding +expandingly +expands +expanse +expanses +expansibly +expansile +expansion +expansional +expansionary +expansionism +expansionist +expansions +expansive +expansively +expansivity +expansometer +expansure +exparrot +expatiated +expatiater +expatiates +expatiating +expatiation +expatiations +expatiative +expatiator +expatiators +expatiatory +expatriate +expatriated +expatriates +expatriating +expatriation +expdt +expecially +expect +expectable +expectance +expectancies +expectancy +expectant +expectantly +expectation +expectations +expectative +expected +expectedly +expectedtime +expecter +expecters +expecting +expectingly +expective +expectorants +expectorated +expectorates +expectorator +expects +expede +expediate +expedicion +expedience +expediences +expediencies +expediency +expedient +expediential +expedientist +expediently +expedients +expeditate +expeditation +expedited +expeditely +expediteness +expediter +expediters +expedites +expediting +expedition +expeditions +expeditor +expedius +expel +expellant +expelled +expellee +expellees +expeller +expellers +expelling +expels +expend +expendable +expended +expender +expenders +expendible +expending +expenditor +expenditrix +expenditure +expenditures +expends +expense +expensed +expenseful +expensefully +expenseless +expenses +expensing +expensive +expensively +expenthesis +experience +experienced +experiencer +experiences +experiencing +experient +experiment +experimental +experimented +experimentee +experimenter +experimently +experiments +expert +experted +experting +expertise +expertism +expertize +expertly +expertness +experts +expertship +expiated +expiates +expiating +expiation +expiational +expiations +expiatist +expiative +expiator +expiators +expiatory +expilate +expilation +expilator +expirable +expirant +expirate +expirated +expiration +expirations +expirator +expiratory +expire +expired +expiree +expirer +expirers +expires +expiries +expiring +expiringly +expiry +expiscate +expiscation +expiscator +expiscatory +explain +explainable +explaination +explained +explainer +explainers +explaining +explainingly +explains +explanatary +explanate +explanation +explanations +explanative +explanator +explanatory +explanitory +explant +explantation +explanted +explanting +explement +explemental +expletively +expletives +expletory +explicated +explicates +explicating +explication +explications +explicative +explicator +explicators +explicatory +explicit +explicitly +explicitness +explicits +explict +explodable +explode +exploded +explodent +exploder +exploders +explodes +exploding +exploer +exploit +exploitable +exploitage +exploitation +exploitative +exploited +exploitee +exploiter +exploiters +exploiting +exploitive +exploits +exploiture +explorable +exploration +explorations +explorative +explorator +exploratory +explore +explored +exploreer +explorement +explorer +explorers +explores +exploring +exploringly +explosible +explosion +explosionist +explosions +explosive +explosively +explosives +exploszia +explotation +expm +expo +expone +exponence +exponency +exponent +exponentials +exponention +exponents +exponible +export +exportable +exportations +exported +exporter +exporters +exportimport +exporting +exports +expos +exposal +exposals +expose +exposed +exposedness +exposer +exposers +exposes +exposing +exposited +expositing +exposition +expositional +expositions +expositive +expositively +expositorial +expositorily +expositors +expositress +exposits +expostulate +expostulated +expostulates +expostulator +exposure +exposures +expound +expoundable +expounded +expounder +expounders +expounding +expounds +expprint +expr +expres +express +expressable +expressage +expressed +expresser +expresses +expressibly +expressing +expression +expressional +expressions +expressively +expressivism +expressivity +expressless +expressly +expressman +expressness +expresso +expressway +expressways +exprimable +exprobate +exprobation +exprobrate +exprobration +exprobratory +expromission +expromissor +expropriable +expropriated +expropriates +expropriator +exprts +expt +expugn +expugnable +expugnation +expuition +expuitition +expulsatory +expulse +expulsed +expulser +expulses +expulsing +expulsion +expulsionist +expulsions +expulsive +expulsory +expunction +expungeable +expunged +expungement +expunger +expungers +expunges +expunging +expurgated +expurgates +expurgating +expurgation +expurgations +expurgative +expurgator +expurgators +expurgatory +expurge +expwy +exquisibar +exquisite +exquisitely +exquisitism +exradio +exradius +exremes +exrupeal +exsanguinate +exsanguine +exsanguinity +exsanguinous +exsanguious +exscind +exscinding +exscissor +exscriptural +exsculptate +exscutellate +exsect +exsectile +exsection +exsector +exsequatur +exsert +exserted +exsertile +exserting +exsertion +exserts +exship +exsibilate +exsibilation +exsiccant +exsiccatae +exsiccate +exsiccation +exsiccative +exsiccator +exsiliency +exslave +exsolution +exsomatic +exspawn +exspuition +exspuitition +exsputory +exstipulate +exstrophy +exstudents +exsuccous +exsuction +exsufflate +exsufflation +exsufflicate +exsurge +exsurgent +exsuscitate +extaci +extant +extarc +extasy +extasyy +extemporal +extemporally +extemporary +extemporize +extemporized +extemporizer +extemporizes +extend +extendable +extended +extendedly +extendedness +extendend +extender +extenders +extendeth +extending +extends +extense +extensible +extensile +extensimeter +extensiole +extension +extensional +extensionist +extensionof +extensions +extensis +extensity +extensive +extensively +extenso +extensometer +extensor +extensors +extensory +extensum +extent +extention +extentions +extents +extenuated +extenuates +extenuating +extenuation +extenuations +extenuative +extenuator +extenuatory +exter +exterieur +exterior +exteriorate +exteriority +exteriorize +exteriorized +exteriorly +exteriorness +exteriors +exterminable +exterminate +exterminated +exterminates +exterminator +exterminist +extern +external +externalism +externalist +externality +externalize +externalized +externalizes +externally +externals +externate +externation +externe +externity +externize +externs +externum +exteroceptor +exterraneous +extfs +extima +extinct +extincted +extincteur +extincting +extinction +extinctionof +extinctions +extinctive +extinctor +extincts +extine +extinguised +extinguished +extinguisher +extinguishes +extipulate +extirpated +extirpates +extirpating +extirpation +extirpations +extirpative +extirpator +extirpatory +extispex +extispicious +extispicy +extogenous +extol +extoled +extoling +extoll +extollation +extolled +extollers +extollingly +extollment +extolls +extolment +extols +exton +extoolitic +extorsion +extorsive +extorsively +extorted +extorter +extorters +extorting +extortion +extortionary +extortionate +extortioner +extortioners +extortionist +extortions +extortive +extorts +extra +extrabold +extrabuccal +extrabulbar +extrabureau +extraburghal +extrac +extracardial +extracarpal +extracivic +extracloacal +extracosmic +extracostal +extracranial +extract +extractable +extractant +extracted +extracter +extractible +extractiform +extracting +extraction +extractions +extractive +extractor +extractors +extracts +extracurial +extracystic +extradited +extradites +extraditing +extraditions +extrados +extradosed +extradoses +extradotal +extraduction +extradural +extraenteric +extrafloral +extrafocal +extraformal +extragastric +extrahieren +extrait +extralateral +extralight +extralite +extrality +extramental +extramodal +extramoney +extramoral +extramundane +extramurally +extramusical +extranatural +extranean +extraneity +extraneous +extraneously +extranidal +extranormal +extranuclear +extraocular +extraoral +extraorbital +extraovate +extraovular +extrapelvic +extrapleural +extrapolar +extrapolate +extrapolated +extrapolates +extrapolator +extrapopular +extraquiz +extrared +extraregular +extrarenal +extraretinal +extras +extraschool +extrasensory +extraserous +extrasocial +extrasolar +extrasomatic +extraspinal +extrastate +extrasterile +extrasystole +extratabular +extratarsal +extratension +extratensive +extraterrene +extrathecal +extratorrid +extratribal +extratubal +extrauterine +extravagance +extravagancy +extravagant +extravagate +extravaginal +extravasate +extravastate +extraversion +extravert +extraverted +extraverts +extravillar +extraviolet +extraweekend +extrefafter +extrefbefore +extremadura +extreme +extremeless +extremely +extremeness +extremenord +extremer +extremes +extremest +extremevalue +extremism +extremist +extremistic +extremists +extremital +extremities +extremity +extremly +extricably +extricate +extricated +extricates +extricating +extrication +extrications +extrinsical +extrinsicate +extro +extrogator +extroitive +extropical +extrorsal +extrorse +extrorsely +extrospect +extroversive +extroverted +extrovertish +extroverts +extrude +extruded +extruder +extruders +extrudes +extruding +extrusile +extrusions +extrusory +extubate +extubation +extumescence +extund +extusion +extv +extzv +exuberance +exuberancy +exuberant +exuberantly +exuberate +exuberation +exudates +exudations +exudative +exuded +exudence +exudes +exuding +exulcerate +exulceration +exulcerative +exulceratory +exult +exultance +exultancy +exultant +exultantly +exultation +exulted +exultet +exulting +exultingly +exults +exululate +exuma +exumbral +exumbrella +exumbrellar +exundance +exundancy +exundate +exundation +exurb +exurban +exurbanite +exurbanites +exurbia +exurbias +exurbs +exusa +exusers +exuviability +exuviable +exuviae +exuvial +exuviate +exuviation +exzodiacal +eyadema +eyah +eyak +eyal +eyalet +eyan +eyare +eyas +eyasi +eyck +eyde +eydie +eyeable +eyeball +eyeballed +eyeballing +eyeballs +eyebalm +eyebar +eyebeam +eyebeams +eyeberry +eyeblink +eyebolt +eyebolts +eyebree +eyebridled +eyebrow +eyebrows +eyecatching +eyecup +eyecups +eyed +eyedness +eyedot +eyedrop +eyedropper +eyedroppers +eyeflap +eyefuls +eyeglance +eyeglasses +eyeglazing +eyehole +eyeholes +eyehook +eyehooks +eyeing +eyeish +eyelashes +eyeless +eyelessness +eyeleteer +eyelets +eyeletted +eyeletter +eyeletting +eyelids +eyelight +eyelike +eyeline +eyeliner +eyeliners +eyemark +eyemask +eyen +eyepieces +eyepit +eyepoint +eyepoints +eyer +eyereach +eyeroot +eyers +eyes +eyesalve +eyeseed +eyeservant +eyeserver +eyeservice +eyeshade +eyeshades +eyeshield +eyeshot +eyeshots +eyesight +eyesights +eyesome +eyesore +eyesores +eyespot +eyespots +eyestalk +eyestalks +eyestone +eyestones +eyestrain +eyestring +eyeteeth +eyetooth +eyewaiter +eyewash +eyewashes +eyewater +eyewaters +eyewear +eyewink +eyewinker +eyewinks +eyewitnesses +eyewort +eyey +eyez +eyezod +eyfel +eygk +eying +eyive +eyland +eylandt +eylandtan +eymont +eyne +eynsford +eyong +eyot +eyota +eyoty +eyra +eyre +eyrelle +eyrie +eyries +eyrir +eyry +eyssen +eytan +eythe +eyton +eyumodjock +eyung +ezaa +ezar +ezard +ezarra +ezawa +ezba +ezbai +ezbon +ezcat +ezdesk +ezdialogs +ezei +ezekias +ezekiel +ezekwe +ezel +ezella +ezelle +ezem +ezer +ezha +ezio +eziongaber +eziongeber +ezirc +ezlinkpm +ezmeralda +eznite +ezopong +ezquote +ezra +ezrahite +ezri +ezycom +ezzat +ezzikwo +faafu +faala +faasaleleaga +faawa +faba +fabaceae +fabaceous +fabarea +fabbing +fabbri +fabby +fabella +fabens +faber +faberge +fabes +fabia +fabian +fabiana +fabiani +fabianism +fabianist +fabien +fabienne +fabiform +fabijan +fabijanic +fabio +fabiola +fabius +fablas +fable +fabled +fabledom +fableist +fableland +fablemaker +fablemonger +fabler +fablers +fables +fabliau +fabling +fabm +fabraea +fabray +fabre +fabric +fabricant +fabricate +fabricated +fabricates +fabricating +fabrication +fabrications +fabricative +fabricator +fabricators +fabricatress +fabrice +fabricio +fabrics +fabrikoid +fabrini +fabrique +fabris +fabritek +fabrizi +fabrizio +fabrizius +fabronia +fabroniaceae +fabry +fabular +fabulist +fabulists +fabulosity +fabulous +fabulously +fabulousness +faburden +fabyan +facadal +facade +facaded +facades +facchini +faccino +face +faceable +facebread +facecloth +facecode +faced +facedown +faceharden +facei +faceit +faceless +facelessness +facelift +facelifts +facellite +facemaker +facemaking +faceman +facemark +faceoff +facepiece +faceplate +faceplates +facer +facers +faces +facesaving +facete +faceted +facetely +faceteness +facetiae +facetiation +faceting +facetiously +facetoface +facets +facetted +facetting +faceup +facewise +facework +fachara +facia +facial +facially +facials +faciant +facias +faciation +facie +faciend +facient +facies +facile +facilely +facileness +facilitate +facilitated +facilitates +facilitating +facilitation +facilitative +facilitator +facilities +facility +facimile +facing +facingly +facings +facinorous +faciolingual +facioplegia +fack +fackeltanz +fackings +fackins +fackler +facks +facnetrouter +facoubly +facsimile +facsimiles +facsimilist +facsimilize +fact +factable +factabling +factbook +factful +factice +facticide +faction +factional +factionalism +factionalist +factionary +factioneer +factionist +factions +factiously +factiousness +factish +factitial +factitious +factitiously +factitive +factitively +factitude +factive +facto +factoids +factopry +factor +factorable +factorage +factordom +factored +factoress +factorially +factorials +factories +factoring +factorist +factorize +factorized +factors +factorship +factory +factoryship +factoryville +factotum +factotums +factrix +facts +factual +factualism +factuality +factually +factualness +factum +facture +facty +facula +faculae +facular +faculative +faculous +facultate +facultied +faculties +facultize +faculty +facund +facundity +facundo +facusse +facy +fada +fadable +fadan +fadashi +fadawa +fadden +faddier +faddiness +faddish +faddishly +faddishness +faddism +faddisms +faddist +faddists +faddle +faddy +fade +fadeaway +fadeaways +faded +fadedly +fadedness +fadeev +fadel +fadeless +faden +fadenko +fader +fadern +faders +fades +fadeth +fadge +fadi +fadicca +fadicha +fadija +fadil +fadinand +fading +fadingly +fadingness +fadings +fadiro +fadjulu +fadlallah +fadlpath +fadmonger +fadmongering +fadmongery +fado +fadridden +fads +fady +fadzil +faeces +fael +faello +faerie +faeries +faeringehavn +faeroe +faeryland +faetano +faeto +fafara +fafaronade +faff +faffle +faffy +fafilelist +fafner +fagaceae +fagaceous +fagald +fagales +fagalulu +fagan +fagani +fagara +fagauve +fage +fagelia +fagend +fager +fagerberg +fagerholm +faget +fagg +fagged +fagger +faggery +fagging +faggingly +faggot +faggoting +faggots +fagin +fagine +fagnes +fagnia +fagopyrism +fagopyrismus +fagopyrum +fagot +fagoted +fagoter +fagoting +fagotings +fagots +fagottino +fagottist +fagoty +fags +fagudu +fagululu +fagundes +fagus +faham +fahd +fahey +fahim +fahlen +fahlerz +fahlman +fahlore +fahlunite +fahrenheim +fahrenheit +fahrenthold +fahrion +fahy +faiama +faicke +faience +faiences +faig +faigmane +fail +failed +faileth +faili +failing +failingly +failingness +failings +faille +fails +failts +failure +failures +fain +faina +fainaigue +fainaiguer +fainaru +fainberg +faineance +faineancy +faineant +faineantism +fainecos +fainer +fainest +fainly +fainness +fains +faint +fainted +fainter +fainters +faintest +fainteth +faintful +faintheart +fainthearted +fainting +faintingly +faintings +faintish +faintishness +faintly +faintness +faints +fainty +faipule +fair +fairacres +fairbairn +fairbairns +fairbank +fairbanks +fairbluff +fairborn +fairbrother +fairburn +fairbury +fairchance +fairchild +fairclough +fairdale +fairdealing +faire +faired +fairer +fairerizal +fairest +fairfield +fairfieldite +fairfolk +fairford +fairforest +fairgoing +fairgrass +fairground +fairgrounds +fairgrove +fairhaven +fairhope +fairi +fairies +fairily +fairing +fairings +fairish +fairishly +fairkeeper +fairland +fairlawn +fairlee +fairless +fairley +fairlie +fairlike +fairling +fairly +fairm +fairman +fairmont +fairmount +fairness +fairoaks +fairplay +fairpoint +fairport +fairs +fairseeming +fairstead +fairtime +fairton +fairuza +fairview +fairwater +fairway +fairways +fairweather +fairy +fairydom +fairyfolk +fairyhood +fairyish +fairyism +fairyland +fairylands +fairylike +fairyologist +fairyology +fairyship +fairytales +fais +faisal +faishang +faison +fait +faita +faith +faithbreach +faithbreaker +faithed +faithful +faithfull +faithfully +faithfulness +faithfuls +faithholding +faithing +faithless +faithlessly +faiths +faithwise +faithworthy +faitour +faits +faiwol +faiwolmin +faiz +faizal +fajara +fajardo +fajelu +fajulu +faka +fakai +fakaldi +fakanshi +fakaofo +fakara +fakawa +fake +faked +fakeer +fakeers +fakement +faker +fakeries +fakers +fakery +fakes +fakhri +fakiness +faking +fakir +fakirism +fakirs +fakkan +fako +fakobly +fakofo +faky +fala +falaba +falahu +falaki +falalap +falalus +falam +falanaka +falange +falangism +falangist +falardeau +falasha +falashas +falashi +falbala +falbee +falcade +falcao +falcata +falcate +falcated +falcation +falcer +falces +falchion +falchions +falcial +falcidian +falciform +falcinellus +falciparum +falco +falcon +falconbill +falcone +falconelle +falconer +falconers +falcones +falconet +falconets +falconetti +falconext +falconi +falconidae +falconinae +falconine +falconis +falconlike +falconoid +falconries +falcons +falcopern +falcula +falcular +falculate +falcunculus +faldage +falderal +faldfee +faldstool +faleiva +falenius +faleomavaega +falerian +falernian +falerno +fales +faletti +faley +falfa +falfurrias +falguerolles +fali +falibele +falibossoum +falidourbeye +falin +faline +faliscan +falisci +falk +falke +falken +falkenburg +falkenstein +falkenstern +falkenstrom +falkland +falklands +falkman +falkner +falkon +falkville +fall +falla +fallace +fallacies +fallacious +fallaciously +fallacy +fallada +fallage +fallah +fallahi +fallal +fallam +fallation +fallaway +fallback +fallbacks +fallbranch +fallbrook +fallcity +fallcreek +falldown +fallectomy +fallen +fallender +fallenness +fallentimber +fallentin +faller +fallers +fallest +falleth +falletti +fallfish +fallibility +fallible +fallibleness +fallibly +fallin +falling +fallingrock +fallings +fallis +falloffs +fallohide +fallon +fallopian +fallostomy +fallotomy +fallott +fallout +fallouts +fallow +fallowdeer +fallowed +fallowing +fallowist +fallowness +fallows +fallriver +fallrock +falls +fallsburg +fallschurch +fallscity +fallscreek +fallsmill +fallsmills +fallsofrough +fallston +fallsvillage +fallthrough +falltime +fallway +fally +faln +faloise +falor +falquero +falsary +falsche +false +falseface +falsehearted +falsehood +falsehoods +falsely +falsen +falseness +falsepass +falser +falsest +falsettist +falsetto +falsettos +falsework +falsidical +falsie +falsies +falsifiable +falsificate +falsificator +falsified +falsifier +falsifiers +falsifies +falsifying +falsism +falsities +falsity +falstaff +falstaffian +falt +faltboat +faltboats +faltche +faltered +falterer +falterers +faltering +falteringly +faltermeyer +falters +falun +falunian +faluns +falutin +falx +fama +famagusta +famaka +famateiskua +famatinite +famba +famble +fame +famed +fameflower +fameful +fameless +famelessly +famelessness +famery +fames +fameuse +fameworthy +familarity +familia +familiadis +familiar +familiarism +familiarity +familiarize +familiarized +familiarizer +familiarizes +familiarness +familiars +familie +families +familiiu +familist +familistere +familistery +familistic +familistical +famillar +famille +family +familyish +familyowned +familystyle +famine +famines +faming +famish +famished +famishes +famishing +famishment +famke +famous +famously +famousness +famulary +famulus +fana +fanagolo +fanakolo +fanal +fanale +fanam +fananu +fanat +fanatic +fanatica +fanatical +fanatically +fanaticism +fanaticize +fanaticized +fanatico +fanatics +fanback +fanbearer +fanchea +fancher +fanchette +fanchi +fanchon +fanciable +fancical +fancie +fancied +fancier +fanciers +fancies +fanciest +fancifully +fancifulness +fancify +fanciless +fancily +fanciness +fancourt +fancy +fancyfarm +fancygap +fancying +fancymonger +fancysick +fancywork +fand +fandangle +fandango +fandangoes +fandangos +fandom +fandoms +fane +fanechka +fanega +fanegada +fanekolo +fanes +fanez +fanfarade +fanfare +fanfares +fanfaron +fanfaronade +fanfarons +fanflower +fanfolds +fanfoot +fang +fanged +fangio +fangle +fanglement +fangless +fanglet +fanglomerate +fangorn +fangot +fangs +fangy +fanhouse +fani +fania +fanian +faniente +faninal +fanion +fanioned +fanjet +fanjets +fanlight +fanlights +fanlike +fanmaker +fanmaking +fanman +fann +fannai +fanned +fannel +fanner +fanners +fannettsburg +fanni +fannia +fannie +fannier +fannies +fannin +fanning +fannish +fannizadeh +fanny +fanogo +fanon +fanro +fanrock +fans +fanshaw +fanshawe +fansher +fansi +fant +fantail +fantailed +fantails +fantara +fantasia +fantasias +fantasie +fantasied +fantasies +fantasists +fantasize +fantasized +fantasizes +fantasizing +fantasm +fantasma +fantasmi +fantasms +fantasque +fantassin +fantast +fantastic +fantastica +fantastical +fantasticate +fantasticism +fantasticly +fantastico +fantastik +fantastry +fantasts +fantasy +fantasya +fantasying +fantauzzi +fante +fantera +fanthome +fanti +fantigue +fantine +fanting +fantini +fantoccini +fantocine +fantoddish +fantods +fantom +fantoms +fantoni +fantozzi +fantuan +fanucci +fanuidhol +fanus +fanwe +fanweed +fanwise +fanwood +fanwork +fanwort +fanworts +fanwright +fany +fanya +fanyan +fanzine +fanzines +faon +faoro +faou +fapesmo +fapu +faqih +faqir +faqirs +faqlist +faqmaster +faqs +faqserver +faquir +fara +farabundo +faracy +faradaic +faraday +faradays +faradic +faradism +faradization +faradize +faradizer +faradje +faradmeter +farads +farady +farag +farago +farah +farahvash +farakos +faraldo +farallon +faramarz +faramir +faranah +farand +faranda +farandole +farant +faranyao +farasula +farattach +faraulep +faravalli +faraway +farawayness +farbige +farbrother +farc +farca +farced +farcel +farcelike +farcer +farcers +farces +farcetta +farceur +farceurs +farcial +farcialize +farcicality +farcically +farcicalness +farcied +farcies +farcify +farcing +farcinoma +farcist +farctate +farcus +farcy +farde +fardel +fardelet +fardh +fardo +fards +fare +farealine +farebrother +fared +farek +farelli +farengue +farentino +farer +farers +fares +farese +faresonen +farewell +farewelled +farewells +farfamed +farfara +farfel +farfels +farfugium +farg +fargas +farge +fargeton +fargey +fargher +fargis +fargo +fargoing +fargood +fargue +farguharson +farhad +farhadi +farhan +farhills +fari +faria +fariab +farian +farias +fariba +faribault +fariborz +farica +farid +faridpur +farily +farimag +farina +farinaceous +farinas +farinella +faring +faringdon +faringi +farinometer +farinose +farinosely +farinulent +fariq +faris +farish +farisita +faritanin +farkleberry +farl +farla +farlan +farlane +farleft +farler +farles +farleu +farley +farlington +farlp +farm +farmable +farmage +farman +farmdale +farmed +farmer +farmercity +farmeress +farmerette +farmerlike +farmers +farmersburg +farmership +farmersville +farmerville +farmery +farmhand +farmhands +farmhold +farmhouses +farmhousey +farming +farmingdale +farmings +farmingville +farmlands +farmost +farmplace +farms +farmstead +farmsteading +farmsteads +farmtown +farmville +farmwoman +farmy +farmyard +farmyards +farmyardy +farn +farnam +farnborough +farner +farnesol +farness +farnham +farnhamville +farnk +farnley +farnod +farnovian +farnsworth +farnum +farodokument +faroe +faroeish +faroese +faroff +farolito +faron +farooq +faros +farot +farouche +farouel +farouk +farp +farpoin +farpoint +farquhar +farquharson +farr +farra +farraday +farrady +farraginous +farrago +farragoes +farragut +farrah +farraj +farrand +farrandly +farrantly +farranto +farrar +farre +farreaching +farreate +farreation +farrel +farrell +farrelly +farren +farrer +farrier +farrieries +farrierlike +farriers +farriery +farrington +farris +farrisite +farrockaway +farronato +farroni +farrow +farroway +farrowed +farrowing +farrows +farruca +farrukh +farry +fars +farsalah +farse +farseeing +farseer +farset +farshid +farsi +farsightedly +farson +fart +farted +farth +farther +farthermost +farthest +farthing +farthingale +farthingales +farthingless +farthings +farting +farts +faruaru +faruk +faruque +farwaniyyah +farwell +farweltered +faryab +farzad +farzin +fasa +fascell +fasces +fascet +fascia +fasciae +fascial +fascias +fasciate +fasciated +fasciately +fasciation +fascicled +fascicles +fascicular +fascicularly +fasciculated +fascicule +fasciculus +fascinated +fascinatedly +fascinates +fascinating +fascination +fascinations +fascinative +fascinator +fascinatress +fascine +fascinery +fascio +fasciodesis +fasciola +fasciolar +fasciolaria +fasciole +fasciolet +fascioliasis +fasciolidae +fascioloid +fascioplasty +fasciotomy +fascis +fascisms +fascista +fascisti +fascistic +fascisticize +fascistize +fascists +fash +fashed +fasher +fashery +fashes +fashing +fashion +fashionable +fashionably +fashioned +fashioner +fashioners +fashioneth +fashioning +fashionist +fashionize +fashionless +fashions +fashious +fashiousness +fasibitikite +fasih +fasinite +fasken +faso +fasold +fasolt +fass +fassalite +fassbinder +fassnacht +fast +fasta +fastaccess +fastback +fastbacks +fastball +fastballs +fastboot +fastcard +fastcd +fastcounter +fastdisk +fastdupe +fastecho +fasted +fasten +fastened +fastener +fasteners +fastening +fastenings +fastens +faster +fasters +fastest +fastfax +fastfeat +fastfind +fastfix +fastgoing +fastgraph +fasthold +fastidiosity +fastidiously +fastidium +fastigate +fastigated +fastigiate +fastigium +fasting +fastingly +fastings +fastish +fastkick +fastland +fastlex +fastlink +fastlst +fastmer +fastmoving +fastness +fastnesses +fastone +fastowl +fastpack +fastpost +fastraq +fastrexmit +fasts +fastsaw +fasttext +fasttracker +fastuous +fastuously +fastuousness +fastus +fastuue +fastwolf +fastzip +fasu +fatafehi +fatagaga +fatal +fatale +fataleka +fatales +fatalism +fatalisms +fatalist +fatalistic +fatalists +fatalities +fatality +fatalize +fatally +fatalness +fatals +fataluku +fatback +fatbacks +fatbird +fatboy +fatbrained +fatcaps +fate +fated +fateful +fatefully +fatefulness +fatelike +faten +fater +fates +fatfleshed +fatharta +fathead +fatheaded +fatheads +fathearted +father +fathercraft +fathered +fatherhood +fathering +fatherland +fatherlands +fatherless +fatherlike +fatherliness +fatherling +fatherly +fathers +fathership +fathi +fathmur +fathomable +fathomage +fathomed +fathomer +fathometer +fathoming +fathomless +fathomlessly +fathoms +fatica +fatick +fatidic +fatidical +fatidically +fatiferous +fatigability +fatigable +fatigation +fatiguable +fatigue +fatigued +fatigueless +fatigues +fatiguesome +fatiguing +fatiguingly +fatiha +fatihah +fatil +fatiloquent +fatima +fatimid +fating +fatiscence +fatiscent +fatless +fatling +fatlings +fatly +fatme +fatness +fatnesses +fatool +fatras +fats +fatsas +fatsia +fatso +fatsoes +fatsos +fatstocks +fatt +fattable +fatted +fatten +fattenable +fattened +fattener +fatteners +fattening +fattens +fatter +fattest +fattier +fatties +fattiest +fattily +fattiness +fatting +fattish +fattishness +fattorini +fattouh +fattrels +fatty +fatu +fatuism +fatuities +fatuitous +fatuity +fatuleu +fatunda +fatuoid +fatuously +fatuousness +fatuus +fatvax +fatwood +fatyanov +faubert +faubourg +faubourgs +faubush +faucal +faucalize +faucalized +fauces +faucets +faucett +fauchard +faucher +fauchery +faucial +faucitis +faucon +faucre +faudoncide +faugeras +faugh +faujasite +fauld +faulds +faulk +faulkland +faulkner +faulkton +faulpath +fault +faultage +faulted +faulter +faultfind +faultfinder +faultfinders +faultfinding +faultful +faultfully +faultier +faultiest +faultily +faultiness +faulting +faultless +faultlessly +faults +faultsman +faulty +faun +faunae +faunal +faunally +faunas +faunated +faunie +faunish +faunist +faunistic +faunistical +faunlike +faunological +faunology +fauns +faunsdale +faunule +faur +faure +fauro +fause +faussebraie +faussebrayed +faust +faustin +faustina +faustine +faustino +faustman +fausto +faustolo +faut +fautas +faute +fauterer +fauteuil +fautino +fautor +fautorship +fauve +fauves +fauvism +fauvisms +fauvist +fauvists +faux +fava +favaginous +fave +favell +favella +favellidium +favelloid +faventine +faveolate +faveolus +faversham +favershim +favieres +faviform +favilla +favillous +favio +favism +favissa +favn +favonian +favonius +favor +favorability +favorable +favorably +favored +favoredly +favoredness +favorer +favorers +favoress +favoring +favoringly +favorite +favorites +favoritism +favorlang +favorlangsch +favorless +favors +favose +favosely +favosite +favosites +favositidae +favositoid +favour +favourable +favourably +favoured +favourer +favourers +favourest +favoureth +favouring +favourite +favourites +favours +favous +favreau +favrini +favrot +favus +fawcett +fawdon +fawell +fawi +fawn +fawncolored +fawne +fawned +fawner +fawners +fawnery +fawngrove +fawnia +fawnier +fawning +fawningly +fawningness +fawnlike +fawns +fawnskin +fawny +faxd +faxed +faxes +faxing +faxit +faxmodems +faxnetxx +faxon +faxpad +faxsserver +faxworks +fayah +fayal +fayalite +fayard +fayaway +faydra +faye +fayek +fayeta +fayette +fayettecity +fayetteville +fayettism +fayichuck +fayina +faying +fayit +faylan +faylen +fayles +fayma +fayre +fays +fayth +faythe +fayu +fayumic +fayve +faywood +fayyum +fazed +fazel +fazenda +fazes +fazil +fazing +fazio +fazlur +fazoglo +fbada +fbbind +fbcancel +fbcreate +fbdeclare +fbdie +fbdisable +fbenable +fbget +fbinitialize +fbkernel +fbkill +fblist +fbmove +fbname +fbpackage +fbpragma +fbreceive +fbsd +fbsend +fbset +fbsimulate +fbtable +fbuboat +fbwait +fbwho +fcadd +fcaddl +fcaobleq +fcbleq +fcbound +fcbs +fccall +fccc +fcchk +fccmp +fccmps +fccmpsb +fccmpsd +fccmpsw +fcediv +fchar +fclui +fcmove +fcmovel +fcnop +fcodes +fcom +fcomp +fconv +fconvert +fcor +fcos +fcpolyf +fcsethi +fcsl +fctbnd +fddi +fdffff +fdformat +fdfs +fdftm +fdisk +fdiv +fdname +fdnames +fdserver +fdtype +fdub +fdubs +feaberry +fead +feague +feak +feal +fealties +feanor +feanorian +fear +fearable +feared +fearedly +fearedness +fearer +fearers +fearest +feareth +fearful +fearfuller +fearfully +fearfulness +fearing +fearingly +fearless +fearlessly +fearlessness +fearn +fearnley +fearnought +fears +fearsomely +fearsomeness +feasance +feasances +feasant +fease +feaserftp +feasibility +feasible +feasibleness +feasibly +feasor +feast +feasted +feasten +feaster +feasters +feasterville +feastful +feastfully +feasting +feastless +feasts +feat +feater +featest +feather +featherback +featherbird +featherbone +featherdom +feathered +featheredge +featheredged +featheredges +featherer +featherers +featherfalls +featherfew +featherfoil +featherhead +featherier +featheriness +feathering +featherleaf +featherless +featherlet +featherlike +featherman +featherpate +featherpated +feathers +featherston +featherstone +featherway +featherweed +featherwing +featherwise +featherwood +featherwork +feathery +featlier +featliest +featliness +featly +featness +featous +feats +featural +featurally +feature +featurectomy +featured +featureful +featurefull +featureladen +featureless +featurely +featurerich +features +featuring +featurism +featuritis +featy +feaze +feazings +febbs +febrerista +febricant +febricide +febricity +febricula +febrifacient +febriferous +febrific +febrifugal +febrifuge +febrifuges +febrile +febrility +febronian +febronianism +februaries +februarius +february +februation +fecakomodiyo +fecal +fecalith +fecaloid +feces +fecher +fechner +fechnerian +fecho +fechos +feci +feck +feckenham +feckful +feckfully +feckless +fecklessly +fecklessness +feckly +feconv +fecture +fecula +feculence +feculency +feculent +fecundate +fecundated +fecundates +fecundating +fecundation +fecundations +fecundative +fecundator +fecundatory +fecundify +fecundities +fecundity +fecundize +fedaiyin +fedak +fedare +fedayeen +fedchenko +feddan +feddeman +fedder +feddersen +fedecamaras +fedelapp +fedele +feder +federacy +federal +federaldam +federale +federales +federalism +federalist +federalists +federalize +federalized +federalizes +federalizing +federally +federalness +federalni +federals +federalsburg +federated +federates +federating +federation +federational +federations +federatist +federative +federatively +federator +federe +federer +federgruen +federica +federico +federspiel +federwitz +fedex +fedia +fedicca +fedide +fedija +fedja +fedor +fedora +fedoras +fedorov +fedorova +fedorowicz +fedoruk +fedoseev +fedosseeva +fedration +feds +fedscreek +fedya +fedyk +fedynskij +feeable +feeble +feebleman +feebleminded +feebleness +feebler +feeblest +feebling +feeblish +feebly +feechrie +feechrizm +feed +feedable +feedback +feedbacks +feedbag +feedbags +feedbin +feedboard +feedbox +feedboxes +feeded +feeder +feeders +feedest +feedeth +feedhead +feeding +feedinghills +feedingplace +feedings +feedlot +feedlots +feedman +feedme +feeds +feedsman +feedstock +feedstocks +feedstuff +feedstuffs +feedway +feedy +feefawfum +feefee +feeing +feel +feelable +feeld +feeler +feelers +feeless +feeley +feelgood +feelie +feelies +feeling +feelingful +feelingless +feelingly +feelingness +feelings +feels +feemer +feenden +feeney +feep +feeper +feeping +feepr +feer +feere +feering +fees +feesburg +feet +feetage +feetch +feetless +feeweeweewee +feeze +fefe +fefnicute +fegan +fegary +fegatella +fegolmin +fehderau +feher +fehmic +fehr +fehrmann +feichtinger +feiert +feif +feigen +feighan +feigher +feigin +feigl +feign +feigned +feignedly +feignedness +feigner +feigners +feignest +feigning +feigningly +feigns +feijoa +feil +feild +feilden +feiler +fein +feinman +feinson +feinstein +feinted +feinting +feints +feis +feist +feistier +feistiest +feists +feisty +feith +feivel +feiveson +fejer +fejos +fekill +fekkesh +fekri +fela +felanor +felapton +felarof +felaron +felasha +felba +felber +felch +felczak +feld +felda +feldary +feldberg +felden +felder +feldman +feldmann +feldmar +feldon +feldsher +feldshuh +feldspars +feldspathic +feldspathoid +feldt +feldwebel +felecia +felecie +felfli +felgman +felicca +felicdad +felice +felicetti +felichita +felichthys +felicia +feliciano +felicide +felicific +felicita +felicitas +felicitate +felicitated +felicitates +felicitating +felicitation +felicitator +felicitators +felicite +felicities +felicitously +felicity +felicle +felid +felidae +felido +feliform +felig +feliks +felinae +feline +felinely +felineness +felines +felinities +felinity +felinophile +felinophobe +felip +felipa +felipe +felippa +felippe +felis +felisa +felisberta +felisha +felita +felix +felixa +felixstowe +feliz +feliza +felizjesus +fell +fella +fellable +fellage +fellah +fellaheen +fellahin +fellahs +fellamar +fellani +fellas +fellata +fellatah +fellate +fellated +fellatee +fellating +fellatio +fellation +fellations +fellatios +fellator +fellatrice +fellatrices +fellatrix +fellatrixes +felled +felleghy +fellegi +fellen +feller +fellers +fellest +felli +fellic +felliducous +fellies +fellifluous +fellihi +felling +fellingbird +fellinic +fellman +fellmonger +fellmongery +fellness +felloe +felloes +fellous +fellow +fellowa +fellowcraft +fellowed +fellowes +fellowess +fellowheirs +fellowhelper +fellowing +fellowless +fellowlike +fellowly +fellowman +fellowmen +fellows +fellowship +fellowships +fells +fellside +fellsman +fellsmere +felly +felmy +feloid +feloness +felonies +feloniously +felonries +felonry +felons +felonsetter +felonsetting +felonweed +felonwood +felonwort +feloup +fels +felsberg +felsburg +felsen +felsette +felsher +felsitic +felske +felsobanyite +felson +felsophyre +felsophyric +felstone +felt +felted +felter +felting +feltings +feltlike +feltmaker +feltmaking +feltman +feltmonger +feltness +felton +felts +feltsmills +feltwork +feltwort +felty +feltyfare +felucca +feluccas +felup +felupe +felwort +fely +female +femalely +femaleness +females +femality +femalize +feme +femerell +femic +femicide +femidom +feminacies +feminacy +feminal +feminality +feminate +femineity +feminie +feminility +feminin +feminine +femininely +feminineness +feminines +femininism +femininity +feminise +feminisms +feministic +feministics +feminists +feminities +feminity +feminization +feminize +feminized +feminizes +feminizing +feminologist +feminology +feminophobe +femke +femme +femmes +femora +femoral +femorocaudal +femorocele +femorotibial +fempty +femto +femtogram +femur +femurs +fenapes +fenastras +fenati +fenbank +fenberry +fence +fenced +fenceful +fencelake +fenceless +fencelet +fenceplay +fencer +fenceress +fencers +fences +fenchene +fenchone +fenchyl +fencible +fencibles +fencie +fencing +fencings +fend +fendable +fendall +fended +fendel +fender +fendered +fendering +fenderless +fenders +fendillate +fendillation +fending +fends +fendy +fenech +fenelia +fenell +fenella +fenelon +fenelton +fenemore +feneration +fenestella +fenestra +fenestrae +fenestral +fenestrate +fenestrated +fenestration +fenestrato +fenestrule +fenez +feng +fengel +fengelset +fenglin +fengshun +fengtzulin +fengyao +fengyuan +feni +fenian +fenianism +fenite +fenks +fenland +fenlander +fenley +fenman +fenn +fennec +fennecs +fennee +fennel +fennelflower +fennell +fennelly +fennels +fenner +fennessey +fennia +fennici +fennig +fenniman +fennimore +fennish +fennoman +fennville +fenny +fenouillard +fenouillet +fenrir +fens +fensive +fenstad +fenster +fent +fenter +fento +fenton +fentress +fentriss +fentry +fenway +fenwick +fenzelia +feod +feodal +feodality +feodary +feodatory +feodor +feodora +feodosia +feoff +feoffee +feoffeeship +feoffer +feoffment +feoffor +feower +fepped +fept +fequiere +feracious +feracity +ferae +ferahan +feral +feralin +feramin +feramorz +feranda +feranzano +ferash +ferazzi +ferberite +ferchaux +ferco +ferde +ferdi +ferdiad +ferdie +ferdin +ferdinand +ferdinanda +ferdinande +ferdinando +ferdwit +ferdy +fere +feredjan +feregyhazy +fereidoon +ferejdan +ferenc +ference +ferencz +ferengi +ferenz +fererro +feretory +feretrum +ferfathmur +ferfet +fergal +fergana +ferganite +fergie +ferguesen +fergus +fergusfalls +fergusite +ferguson +fergusonite +fergusson +fergvax +ferhati +feria +ferial +ferice +fericirea +ferida +feridgi +feridoun +ferie +ferike +ferine +ferinely +ferineness +feringi +ferio +ferison +feritlity +ferity +ferjac +ferjreiser +ferk +ferke +ferkesse +ferland +ferlies +ferlin +ferling +ferlinghetti +ferlus +ferly +ferm +fermail +fermanagh +fermat +fermata +fermatas +fermatian +ferme +fermel +fermentable +fermentarian +fermentative +fermentatory +fermented +fermenter +fermenting +fermentive +fermentology +fermentor +ferments +fermentum +fermerer +fermery +fermi +fermila +fermin +fermis +fermleigh +fermorite +fermoyle +fern +fernack +fernald +fernan +fernand +fernanda +fernande +fernandel +fernandes +fernandez +fernandian +fernandina +fernandinite +fernandino +fernandinos +fernando +fernandus +fernardel +fernbird +fernbrake +ferndale +ferndon +ferne +ferned +ferner +ferneries +ferney +ferngale +ferngrower +fernholz +ferniest +fernland +fernleaf +fernless +fernley +fernlike +fernman +fernridge +ferns +fernshaw +fernsick +fernside +ferntickle +ferntickled +fernwood +fernwort +ferny +ferocactus +ferocious +ferociously +ferocities +ferocous +feroge +feroghe +feroher +ferol +ferone +feronia +feroz +ferraby +ferraccio +ferracio +ferraday +ferrado +ferragut +ferral +ferrament +ferrand +ferrandis +ferrandt +ferrante +ferranti +ferrao +ferrar +ferrara +ferrard +ferrarese +ferrari +ferrario +ferraro +ferrate +ferrated +ferrateen +ferratin +ferre +ferrean +ferred +ferree +ferreira +ferrell +ferrellsburg +ferren +ferreol +ferreous +ferrer +ferreri +ferrero +ferrers +ferret +ferreted +ferreter +ferreters +ferreting +ferrets +ferretti +ferretto +ferrety +ferreux +ferri +ferriage +ferric +ferricyanate +ferricyanic +ferricyanide +ferriday +ferried +ferrier +ferriera +ferries +ferriferous +ferring +ferriprussic +ferrisburg +ferriss +ferritecore +ferriter +ferrites +ferrivorous +ferro +ferroalloy +ferroboron +ferrocalcite +ferrocerium +ferrochrome +ferrocyanate +ferrocyanic +ferrocyanide +ferroge +ferroglass +ferroinclave +ferrol +ferrold +ferron +ferronatrite +ferrone +ferronickel +ferroprint +ferroprussic +ferrosilicon +ferrosity +ferrotype +ferrotyper +ferrotypes +ferrous +ferrovius +ferruginate +ferruginean +ferruled +ferruler +ferrules +ferruling +ferrum +ferruminate +ferrums +ferruzzi +ferry +ferryage +ferryboat +ferryboats +ferryhouse +ferrying +ferryman +ferrymen +ferrysburg +ferryville +ferryway +ferschl +fersen +fertig +fertil +fertilation +fertile +fertilely +fertileness +fertilities +fertility +fertilizable +fertilize +fertilized +fertilizer +fertilizers +fertilizes +fertilizing +fertilla +fertner +feru +ferula +ferulaceous +ferule +feruled +ferules +ferulic +feruling +fervanite +fervencies +fervency +fervent +fervently +ferventness +fervescence +fervescent +fervid +fervidity +fervidly +fervidness +fervidor +fervor +fervorless +fervors +fervour +fervours +ferydoon +ferzetti +fesapo +fescennine +fescenninity +fescues +fesenkov +feserek +feshi +fesker +fesoa +fesq +fess +fesse +fessed +fessely +fessenden +fesses +fessier +fessing +fesslen +fessoa +fesswise +festal +festally +festat +festatb +feste +fester +festered +festering +festerment +festers +festgelegten +festilogy +festina +festinance +festinate +festinately +festination +festine +festino +festival +festivally +festivals +festive +festively +festiveness +festivities +festivity +festivous +festology +festoon +festooned +festoonery +festooning +festoons +festoony +festschrift +festuca +festucine +festus +feta +fetal +fetalism +fetalization +fetas +fetation +fetch +fetched +fetcher +fetchers +fetches +fetcheth +fetchez +fetching +fetchingly +fetchit +fetchmail +fetcht +feted +feteless +feterita +fetes +fetherston +fetherstone +fetherwood +fetial +fetiales +fetich +fetichism +fetichmonger +feticidal +feticide +feticides +feticism +fetidity +fetidly +fetidness +fetiferous +feting +fetiparous +fetish +fetisheer +fetishes +fetishic +fetishism +fetishist +fetishistic +fetishists +fetishize +fetishmonger +fetishry +fetlock +fetlocked +fetlocks +fetlow +feto +fetography +fetometry +fetool +fetor +fetors +fett +fetted +fetterbush +fettered +fetterer +fetterers +fettering +fetterless +fetterlock +fetterman +fetters +fettes +fetticus +fetting +fettler +fettles +fettling +fettlings +fettucini +fetus +fetuses +fetzko +feuage +feuar +feucht +feudal +feudalism +feudalist +feudalistic +feudalists +feudality +feudalizable +feudalize +feudally +feudary +feudatorial +feudatories +feuded +feudee +feudejoie +feuding +feudist +feudists +feuds +feued +feuer +feuerlein +feuerverger +feuillants +feuillard +feuille +feuillere +feulamort +feulliere +feunlink +feurabush +feury +feutil +feutlinske +feux +feve +fever +feverberry +feverbush +fevercup +fevered +feveret +feverfew +feverfews +fevergum +fevering +feverish +feverishly +feverishness +feverless +feverlike +feverous +feverously +feverroot +fevers +fevertrap +fevertwig +fevertwitch +feverweed +feverwort +fevillere +fevre +fevreblau +fewarren +fewer +fewest +fewlass +fewness +fewnesses +fewsome +fewter +fewterer +fewtrils +feyd +feyen +feyer +feyest +feyli +feyness +feynesses +feynman +feynmans +fezere +fezes +fezzan +fezzed +fezzes +fezzik +fezziwig +fezzy +ffef +fffc +fffe +ffff +fffff +ffffff +fffffff +ffffffff +ffffh +fffh +fflush +ffolkes +ffolliott +fformat +ffoulkes +fgrep +fgrid +fhmail +fiacre +fiadidja +fiala +fialova +fiamazzo +fianarantsoa +fiancees +fiances +fianchetto +fiander +fianga +fiann +fianna +fianni +fianse +fiar +fiard +fiare +fiascoes +fiascos +fiat +fiats +fiatt +fiba +fibbed +fibber +fibbers +fibbery +fibbing +fibbonacci +fibc +fibdom +fibel +fiber +fibered +fiberfill +fiberglass +fiberize +fiberized +fiberizer +fiberizes +fiberizing +fiberless +fiberous +fibers +fiberware +fibib +fiblocked +fibonacci +fibre +fibreless +fibres +fibreware +fibriform +fibril +fibrilated +fibrilation +fibrilations +fibrilla +fibrillar +fibrillary +fibrillate +fibrillated +fibrillation +fibrilled +fibrilliform +fibrillose +fibrillous +fibrils +fibrinate +fibrination +fibrine +fibrinemia +fibrinogen +fibrinogenic +fibrinolysin +fibrinolysis +fibrinolytic +fibrinose +fibrinosis +fibrinous +fibrins +fibrinuria +fibroadenia +fibroadenoma +fibroadipose +fibroangioma +fibroareolar +fibroblast +fibroblastic +fibrocaseose +fibrocaseous +fibrocyst +fibrocystic +fibrocystoma +fibrocyte +fibroelastic +fibrofatty +fibroferrite +fibroglia +fibroglioma +fibroid +fibroids +fibroin +fibrolipoma +fibrolite +fibrolitic +fibroma +fibromata +fibromatoid +fibromatosis +fibromatous +fibromucous +fibromyitis +fibromyoma +fibromyotomy +fibromyxoma +fibroneuroma +fibronuclear +fibroplasia +fibroplastic +fibropolypus +fibrosarcoma +fibrose +fibroserous +fibrosities +fibrositis +fibrosity +fibrotic +fibrously +fibrousness +fibrovasal +fibry +fibs +fibss +fibster +fibula +fibulae +fibular +fibulare +fibulas +fibytes +fica +ficaria +ficary +ficatier +ficaveat +ficco +fice +ficelle +fich +fiches +fichier +fichna +fichtean +fichteanism +fichtelite +fichtner +fichu +fichus +ficici +ficiform +ficken +ficker +fickert +fickes +fickle +fickleness +fickler +ficklest +ficklety +ficklewise +fickly +ficlasses +fico +ficofl +ficoid +ficoidaceae +ficoideae +ficoides +ficsh +fictation +fictile +fictileness +fictility +fiction +fictional +fictionalize +fictionally +fictionary +fictioneer +fictioner +fictionist +fictionistic +fictionize +fictions +fictious +fictitious +fictitiously +fictively +ficula +ficus +fidac +fidalgo +fidata +fidate +fidation +fidc +fiddle +fiddleback +fiddlecome +fiddled +fiddledeedee +fiddlefaced +fiddlefaddle +fiddlefoot +fiddlehead +fiddleheaded +fiddler +fiddlerfish +fiddlers +fiddlery +fiddles +fiddlesticks +fiddlestring +fiddletown +fiddlewood +fiddley +fiddling +fide +fidead +fideicommiss +fideism +fideist +fidejussion +fidejussor +fidejussory +fidel +fidela +fidele +fideles +fidelia +fidelio +fidelis +fidelities +fidelity +fidelmar +fidencio +fidenco +fider +fides +fidessa +fidfad +fidge +fidgeted +fidgeter +fidgeters +fidgetily +fidgetiness +fidgeting +fidgetingly +fidgets +fidgety +fidgit +fidia +fidicinal +fidicinales +fidicula +fido +fidocode +fidogate +fidolook +fidonet +fidonews +fidonodes +fidos +fidosoft +fidosoup +fidospam +fidouble +fids +fiducia +fiducially +fiduciaries +fiduciarily +fiducinales +fieberling +fiebich +fied +fiedler +fiedlerite +fiedor +fiefdoms +fieff +fiefl +fiefs +fiegel +field +fieldale +fieldball +fieldbird +fielded +fieldeffect +fielden +fielder +fielders +fieldfare +fielding +fieldish +fieldleft +fieldman +fieldmaster +fieldmice +fieldon +fieldpiece +fieldpieces +fields +fieldsman +fieldsteel +fieldston +fieldsup +fieldsupport +fieldtested +fieldton +fieldward +fieldwards +fieldworker +fieldwort +fieldy +fielerling +fiellers +fiels +fienberg +fiendful +fiendfully +fiendhead +fiendishly +fiendishness +fiendism +fiendlike +fiendliness +fiendly +fiends +fiendship +fient +fier +fierabras +fierasfer +fierasferid +fierasferoid +fierce +fiercely +fiercen +fierceness +fiercer +fiercest +fiercly +fierding +fierek +fierier +fieriest +fierily +fieriness +fiermonte +fiero +fierro +fierthaler +fiery +fiest +fiesta +fiestas +fiet +fieulamort +fievel +fievi +fiexecuted +fiexplicitly +fifed +fifelake +fifer +fifers +fifes +fifi +fifie +fifield +fifine +fifing +fifish +fifloat +fifo +fifofs +fifteen +fifteener +fifteenfold +fifteens +fifteenth +fifteenthly +fifteenths +fifth +fifthlargest +fifthly +fifths +fifties +fiftieth +fiftieths +fifty +fiftyfold +fiftylakes +figaro +figbird +figeater +figeaters +figenerated +figent +figged +figgery +figging +figgins +figgis +figgle +figgy +fight +fightable +fighter +fighteress +fighters +fighteth +fighting +fightingcock +fightingly +fightings +fightonet +fights +fightwite +figitidae +figless +figli +figlike +figment +figmental +figments +fign +figneria +fignu +figovo +figpecker +figs +figshell +figtree +figueiredo +figueras +figueroa +figuig +figuil +figulate +figulated +figuline +figura +figurability +figurable +figurant +figurante +figurants +figurately +figuration +figurational +figurations +figurative +figuratively +figure +figured +figuredly +figurehead +figureheads +figureless +figurer +figurers +figures +figuresome +figurethis +figurette +figurial +figurine +figurines +figuring +figurings +figurism +figurist +figuriste +figurize +figurki +figury +figworm +figwort +figworts +fiinsight +fijewska +fiji +fijian +fijians +fijio +fika +fikankayen +fike +fikie +fikis +fikre +fikyu +fila +filace +filaceous +filacer +filadelfia +filago +filagree +filagreed +filagrees +filamele +filamentar +filamented +filamentoid +filamentose +filamentous +filaments +filamentule +filander +filanders +filaneri +filanguage +filani +filann +filao +filar +filaree +filarees +filargi +filaria +filarial +filarian +filariasis +filaricidal +filariform +filariid +filariidae +filarious +filasse +filate +filati +filator +filature +filbert +filberts +filby +filched +filcher +filchers +filchery +filches +filching +filchingly +fildes +fildey +file +filea +fileable +fileappend +filearea +fileareas +fileas +fileattach +fileattaches +fileback +filebar +filebase +filebox +fileboxes +filebrowser +filebuffer +filechar +fileclose +filecomander +filecreate +filed +filedate +filedates +filedelete +filedialog +filedisplay +fileecho +fileechoes +fileechos +fileexists +fileexit +fileferret +filefiles +filefind +filefinder +filefish +filefix +filegeteof +fileherald +filehound +fileio +filekick +filelike +filelist +filelists +filelock +filemaker +filemaking +filemanager +filemark +filemarks +filemaximus +fileminder +filemot +filena +filename +filenames +filenets +filenew +fileopen +filepath +filepost +fileprint +fileptr +filequery +filer +filercity +filers +files +filesave +filesaveas +filesbbs +filescan +filesdir +fileserver +fileshell +filesize +fileslist +filesmith +filesniff +filespec +filespecs +filesplit +filestatus +filesystem +fileted +fileting +filetool +filetosser +filets +filetype +fileu +filevac +filewatch +filewhich +filez +filgen +filham +filho +fili +filia +filiality +filially +filialness +filiate +filiated +filiates +filiation +filiba +filibcurses +filibeg +filibert +filibmp +filibranch +filibranchia +filibustered +filibusterer +filibusters +filical +filicales +filicauline +filices +filicic +filicidal +filicide +filicides +filiciform +filicin +filicineae +filicinean +filicite +filicites +filicoid +filicologist +filicology +filicornia +filide +filiety +filiferous +filiform +filiformed +filigera +filigerous +filigranas +filigree +filigreed +filigreeing +filigrees +filii +fililwa +filin +filing +filings +filiol +filion +filionymic +filioque +filip +filipe +filipendula +filipenko +filipenok +filipina +filipiniana +filipinize +filipino +filipinos +filipoff +filipov +filippa +filippi +filippides +filippini +filippo +filippucci +filipski +filipuncture +filirwa +filisters +filite +filius +filix +filiya +filk +filkins +filks +fill +fillable +fillali +fillbeck +fille +filled +filledst +fillemot +fillenun +filler +fillercap +fillers +filles +fillest +fillet +filleted +filleter +filleth +filleting +filletlike +fillets +filletster +filleul +filley +fillibeg +fillies +fillim +fillin +filling +fillingly +fillingness +fillings +fillip +filliped +fillipeen +filliping +fillipo +fillips +fillister +fillmass +fillmore +fillock +fillowite +fills +fillsta +film +filma +filmable +filmcards +filmdoms +filmed +filmer +filmet +filmgoer +filmgoers +filmgoing +filmic +filmier +filmiest +filmiform +filmily +filminess +filming +filmish +filmist +filmize +filmland +filmlands +filmlike +filmogen +filmography +filmore +films +filmsets +filmslide +filmstrips +filmwerks +filmy +filo +filogamo +filomeno +filong +filoplume +filopodium +filosa +filose +filoselle +filotei +filpi +filpus +fils +filser +filson +filter +filterable +filtered +filterer +filterers +filtering +filterman +filters +filth +filthier +filthiest +filthify +filthily +filthiness +filthless +filthpig +filths +filthy +filtr +filtra +filtrability +filtrable +filtratable +filtrated +filtrates +filtrating +filtration +filus +fima +fimaga +fimalloc +fimble +fimbrethil +fimbria +fimbriae +fimbrial +fimbriate +fimbriated +fimbriation +fimbriatum +fimbricate +fimbricated +fimbrilla +fimbrillate +fimbrillose +fimbristylis +fimetarious +fimiani +fimicolous +fimmed +fimple +fina +finable +finableness +finagle +finagled +finagler +finaglers +finagles +finagling +finak +final +finalbox +finales +finalis +finalism +finalisms +finalist +finalists +finalities +finality +finalization +finalize +finalized +finalizes +finalizing +finally +finals +finaly +finance +financecalc +financed +finances +financial +financialist +financially +financiere +financiers +financiery +financing +financist +finane +finback +finbacks +fincaos +fincastle +finch +finchbacked +finched +finchery +finches +finchley +finchon +finchville +finck +finckler +find +findability +findable +findal +findarea +findeisen +finder +finders +findest +findeth +findfault +findfont +findiggle +finding +findings +findjan +findlater +findlay +findleylake +findoff +findon +findout +finds +findtext +finduilas +fine +fineable +finebent +fined +finedraw +finefingered +finegarten +finegayan +finegyn +fineish +fineleaf +fineless +finelli +finely +finelytuned +fineman +finement +fineness +fineprint +finer +finereader +fineries +finery +fines +fineschi +finespoken +finespun +finesser +finesses +finest +finestill +finestiller +finetoned +finetop +finetti +finettis +finetuning +finever +fineview +finfish +finfishes +finfoot +finfoots +fing +fingal +fingall +fingallian +fingar +fingaz +finge +fingent +finger +fingerable +fingerberry +fingerboard +fingerboards +fingerbone +fingerd +fingered +fingerer +fingerers +fingerfish +fingerflower +fingerhold +fingerhook +fingering +fingerings +fingerleaf +fingerless +fingerlet +fingerlike +fingerling +fingerlings +fingernail +fingernails +fingerparted +fingerprint +fingerprints +fingerroot +fingers +fingersmith +fingerspin +fingerstall +fingerstone +fingertip +fingertips +fingerville +fingerwise +fingerwork +fingery +finggrs +finglas +finglefangle +fingrigo +fingu +fini +finialed +finials +finical +finicality +finically +finicalness +finicism +finick +finickier +finickiest +finickily +finickiness +finicking +finickingly +finicky +finific +finify +finigan +finiglacial +finiished +finikin +finiking +fining +fininga +finings +finis +finises +finish +finishable +finished +finisher +finishers +finishes +finishing +finist +finisterre +finite +finitely +finiteness +finites +finitesimal +finitestage +finitive +finitude +finitudes +finity +finjan +finked +finkel +finkelstein +finkenzeller +finkhelstein +finking +finklestein +finks +finksburg +finland +finlander +finlay +finlayson +finless +finlet +finley +finleyville +finlike +finly +finmark +finn +finnac +finnan +finned +finnegan +finner +finnerty +finnesko +finney +finng +finni +finnic +finnicize +finnickier +finnicky +finnie +finnier +finniest +finnigan +finnighan +finning +finnip +finnish +finnmark +finnmarks +finnon +finnougric +finns +finocchiaro +finochio +finochios +finola +finon +finot +finow +finrod +fins +finsbury +finschhafen +finsdale +finsen +finster +finstock +fintan +fintsi +fintzi +finucane +finumber +finungwa +finungwan +finyl +finzel +finzi +finzie +fiodorov +fiome +fiona +fionan +fionavar +fionna +fionnuala +fionnula +fiord +fiorded +fiords +fiore +fiorella +fiorello +fiorentini +fiorentino +fiorenze +fiorenzo +fioretti +fiorile +fiorillo +fiorin +fiorina +fiorita +fiorite +fiorito +fiot +fiote +fioti +fiown +fipa +fipamambwe +fipcc +fipenny +fippinger +fipple +fipps +fiprior +fiprocess +fips +fique +fira +firan +firat +firatin +firbank +firbolg +firca +firdevs +firdu +fire +fireable +firearmed +firearms +fireback +fireball +fireballs +firebarrel +firebase +firebases +firebaugh +firebird +firebirds +fireblende +fireboard +fireboats +firebolt +firebolted +firebomb +firebombed +firebombing +firebombs +firebote +firebottle +firebox +fireboxes +fireboy +firebrand +firebrands +firebrat +firebreaks +firebrick +firebricks +firebugs +fireburn +firechild +fireclays +firecoat +firecrackers +firecrest +firectory +fired +firedamp +firedamps +firedog +firedogs +firedrake +fireduced +firefall +firefang +firefanged +firefighter +firefighters +firefighting +fireflaught +fireflies +fireflirt +fireflower +firefly +firefoot +firefox +fireguard +firehalls +firehand +firehouse +firehouses +fireign +fireirons +fireless +firelight +firelike +fireling +firelit +firelock +fireman +firemanship +firemaster +firemountain +firenew +firepan +firepans +fireplace +fireplaces +fireplug +fireplugs +fireproofing +firer +firerobin +fireroom +firers +fires +firesafe +firesafeness +firesafety +fireshaft +fireshine +fireside +firesider +firesides +firesideship +firesign +firespout +firestarter +firesteel +firestone +firestopping +firestorm +firestormed +firestricted +firetail +firetop +firetrap +firetraps +firewall +firewalled +firewalling +firewallis +firewalls +firewarden +firewater +fireweed +fireweeds +firewire +firewood +firewoods +firework +fireworkless +fireworks +fireworky +fireworm +fireworms +fireworship +fireworx +firey +firing +firings +firiss +firisss +firk +firker +firkin +firkins +firlot +firm +firma +firmament +firmamental +firmaments +firman +firmance +firmed +firment +firmer +firmers +firmest +firmhearted +firmin +firming +firmisternal +firmisternia +firmly +firmness +firms +firmware +firn +firoloida +firon +firons +firozkohi +firring +firry +firs +firschke +firshberg +firshman +first +firstborn +firstclass +firstcolumn +firstcomer +firstform +firstfruit +firstfruits +firstindex +firstling +firstlings +firstly +firstname +firstness +firstorder +firstpacket +firstpassage +firstrate +firstripe +firsts +firstship +firsttwo +firth +firthface +firths +firtos +firunning +firuz +fisarskova +fisc +fiscalify +fiscalism +fiscalize +fiscally +fiscals +fischbeck +fischer +fischerite +fischetti +fise +fisenko +fiset +fisetin +fisette +fish +fishable +fishback +fishbed +fishberry +fishbolt +fishbone +fishbowl +fishbowls +fishburn +fishburne +fishcamp +fishcreek +fishe +fisheater +fished +fishencord +fisher +fisherboat +fisherboy +fisheress +fisherfolk +fishergirl +fisherian +fisheries +fisherman +fishermen +fisherpeople +fishers +fishershill +fishersville +fishertown +fisherville +fisherwoman +fishes +fishet +fisheye +fisheyes +fishfall +fishfinger +fishful +fishgarth +fishgig +fishhood +fishhook +fishhooks +fishhouse +fishier +fishiest +fishify +fishily +fishiness +fishing +fishingcreek +fishingly +fishings +fishke +fishkill +fishless +fishlet +fishlike +fishline +fishlines +fishling +fishman +fishmanger +fishmeal +fishmouth +fishnet +fishnets +fishort +fishplate +fishpole +fishpoles +fishponds +fishpool +fishpools +fishpot +fishpotter +fishpound +fishseddy +fishskin +fishtail +fishtailed +fishtailing +fishtails +fishtank +fishtrap +fishway +fishways +fishweed +fishweir +fishwife +fishwives +fishwoman +fishwood +fishworker +fishworks +fishworm +fishyard +fisico +fiskdale +fiskeville +fisnoga +fisopn +fisprod +fissate +fisseha +fissette +fissibility +fissicostate +fissidactyl +fissidens +fissileness +fissilingual +fissilinguia +fissility +fission +fissionable +fissionables +fissioned +fissioning +fissions +fissipalmate +fissiparism +fissiparity +fissiparous +fissiped +fissipeda +fissipedal +fissipedate +fissipedia +fissipedial +fissipes +fissirostral +fissirostres +fissive +fissue +fissural +fissuration +fissure +fissured +fissureless +fissurella +fissures +fissuriform +fissuring +fissury +fist +fisted +fister +fistfight +fistful +fistfuls +fistiana +fistic +fistical +fisticuffer +fisticuffery +fisticuffs +fistify +fistiness +fisting +fistlike +fistmele +fistnote +fists +fistuca +fistula +fistulae +fistulana +fistular +fistularia +fistularioid +fistulas +fistulate +fistulated +fistulatome +fistulatous +fistule +fistuliform +fistulina +fistulize +fistulose +fistulous +fistwise +fisty +fisuspended +fiszbach +fiszman +fita +fitask +fitch +fitched +fitchee +fitcher +fitchery +fitches +fitchet +fitchew +fitchews +fitchmueller +fite +fiteny +fitext +fitfully +fitfulness +fithe +fithian +fiti +fitime +fitip +fitly +fitment +fitments +fitness +fitnesses +fitnyc +fito +fitoday +fitout +fitri +fitroff +fitroot +fits +fitsori +fittable +fittage +fitted +fittedness +fitten +fitter +fitters +fittest +fitteth +fittily +fittiness +fitting +fittingly +fittingness +fittings +fitton +fittonia +fitts +fittstown +fitty +fittyfied +fittyways +fittywise +fitweed +fitz +fitzbanks +fitzcarraldo +fitzclarence +fitzek +fitzgerald +fitzgibbon +fitzgibbons +fitzherbert +fitzhubert +fitzhugh +fitzhume +fitzjohn +fitzmahony +fitzmaurice +fitzpatrick +fitzroy +fitzroya +fitzsimmon +fitzsimmons +fitzsimons +fitzswalter +fitzurse +fitzwalter +fitzwiller +fitzwilliam +fiuman +five +fivebar +fivecol +fivefoldness +fiveforks +fiveislands +fivelargest +fiveling +fiveo +fiveounce +fiveparty +fivepence +fivepenny +fivepins +fivepointed +fivepoints +fivepound +fiver +fivers +fives +fivescore +fivesome +fivestones +fivetowered +fiveyear +fivi +fivs +fiwaga +fiwage +fixable +fixage +fixated +fixates +fixatif +fixating +fixation +fixations +fixative +fixatives +fixator +fixature +fixe +fixed +fixedlength +fixedly +fixedness +fixedsize +fixedwidth +fixer +fixers +fixes +fixidity +fixing +fixings +fixit +fixities +fixity +fixpack +fixpacks +fixpak +fixsen +fixture +fixtureless +fixtures +fixup +fixups +fixure +fixures +fixutil +fixxxer +fiyacc +fiyadikka +fiyadikkya +fiyour +fizelyite +fizere +fizgig +fizgigs +fizi +fizz +fizzed +fizzer +fizzers +fizzes +fizzgig +fizzier +fizziest +fizzing +fizzle +fizzled +fizzles +fizzling +fizzy +fjarding +fjeld +fjelmose +fjerding +fjodorov +fjordane +fjords +fjorgyn +fjortoft +fkware +flab +flabbergasts +flabbier +flabbiest +flabbily +flabbiness +flabellarium +flabellate +flabellation +flabelliform +flabellum +flabrum +flabs +flaccid +flaccidities +flaccidity +flaccidly +flaccidness +flacco +flach +flacherie +flacian +flacianism +flacianist +flack +flacke +flacked +flacker +flacket +flackite +flackites +flacks +flaco +flacon +flacons +flacourtia +flacq +flad +fladrif +flaemmchen +flaff +flaffer +flag +flagboat +flagella +flagellant +flagellants +flagellar +flagellaria +flagellata +flagellatae +flagellated +flagellates +flagellating +flagellation +flagellative +flagellator +flagellators +flagellatory +flagelliform +flagellist +flagello +flagellosis +flagellula +flagellum +flagellums +flageolets +flagexit +flagfall +flagg +flagged +flaggelate +flaggelated +flaggelating +flaggelation +flagger +flaggers +flaggery +flaggier +flaggiest +flaggily +flagginess +flaggingly +flaggings +flaggish +flaggy +flagin +flagitate +flagitation +flagitious +flagitiously +flagleaf +flaglerbeach +flagless +flaglet +flaglike +flagmaker +flagmaking +flagman +flagmen +flagon +flagonet +flagonless +flagons +flagpole +flagpoles +flagpond +flagrance +flagrancy +flagrante +flagrantly +flagrantness +flagration +flagroot +flags +flagship +flagshipped +flagships +flagstaff +flagstaffs +flagstick +flagstone +flagstones +flagtown +flagworm +flaherty +flailed +flailing +flaillike +flails +flair +flairs +flaith +flaithship +flajolotite +flak +flakage +flake +flaked +flakeless +flakelet +flakenstein +flaker +flakers +flakes +flakey +flakier +flakiest +flakily +flakiness +flaking +flakked +flamage +flamand +flamandize +flamant +flamarion +flamb +flambe +flambeau +flambeaus +flambeaux +flambee +flambeed +flambeing +flamberg +flambes +flambeur +flamboyance +flamboyancy +flamboyant +flamboyantly +flamboyer +flame +flamecolored +flamed +flameflower +flameless +flamelet +flamelike +flamemen +flamen +flamenca +flamenco +flamencos +flamenship +flament +flameout +flameouts +flameproof +flamer +flamers +flames +flamethrower +flamewar +flamfew +flami +flamier +flamineous +flamines +flaming +flamingant +flamingly +flamingoes +flamingos +flaminian +flaminica +flaminical +flammability +flammably +flammario +flammarion +flammed +flammen +flammeous +flammiferous +flamming +flammulated +flammulation +flammule +flams +flamy +flan +flanagan +flancard +flanch +flanched +flanconade +flandan +flander +flanderka +flandern +flanders +flandowser +flandreau +flandrin +flandry +flane +flaneur +flangan +flanged +flangeless +flanger +flangers +flanges +flangeway +flanging +flanigan +flank +flankard +flanked +flanker +flankers +flanking +flanks +flankwise +flanky +flann +flannagan +flannel +flannelbush +flanneled +flannelet +flannelette +flanneling +flannelleaf +flannelled +flannelly +flannelmouth +flannels +flannery +flannigan +flanque +flans +flansburg +flant +flapcake +flapdock +flapdoodle +flapdragon +flapjack +flapjacks +flapless +flapmouthed +flappable +flapped +flapper +flapperdom +flapperhood +flapperish +flapperism +flappers +flappier +flappiest +flapping +flappy +flaps +flare +flareback +flareboard +flared +flareless +flares +flaring +flaringly +flarp +flary +flaser +flash +flashbacks +flashbios +flashboard +flashbulb +flashbulbs +flashcube +flashcubes +flashdance +flashed +flasher +flashers +flashes +flashet +flashflood +flashforward +flashfxp +flashgun +flashguns +flashie +flashier +flashiest +flashily +flashiness +flashing +flashingly +flashings +flashlamp +flashlamps +flashlight +flashlights +flashlike +flashly +flashman +flashness +flashover +flashpan +flashproof +flashsite +flashtester +flashtube +flashtubes +flashy +flask +flasker +flasket +flasklet +flasks +flasque +flastaff +flat +flatascii +flatbeds +flatboat +flatboats +flatbottom +flatbush +flatcap +flatcar +flatcars +flatdom +flateau +flated +flatfeet +flatfile +flatfish +flatfishes +flatfoot +flatfooted +flatfoots +flatfork +flatgap +flathat +flatheads +flatirons +flatland +flatlands +flatlet +flatley +flatlick +flatline +flatlined +flatling +flatly +flatman +flatmate +flatness +flatnesses +flatnose +flatonia +flatriver +flatrock +flats +flatscreen +flatte +flatted +flatten +flattened +flattener +flatteners +flattening +flattens +flatter +flatterable +flattercap +flatterdock +flattered +flatterer +flatterers +flattereth +flatteries +flattering +flatteringly +flatters +flattery +flattest +flattie +flatting +flattish +flattop +flattopped +flattops +flatulence +flatulences +flatulencies +flatulency +flatulently +flatuses +flatwares +flatway +flatways +flatweed +flatwise +flatwoods +flatwork +flatworks +flatworms +flaubert +flaubertian +flaught +flaughter +flauhault +flaumel +flaunce +flaunt +flaunted +flaunter +flaunters +flauntier +flauntiest +flauntily +flauntiness +flaunting +flauntingly +flaunts +flaunty +flaus +flautino +flautists +flavanilin +flavaniline +flavanthrene +flavanthrone +flavedo +flavedos +flaveria +flaversham +flavescence +flavescent +flavia +flavian +flavic +flavicant +flavid +flavin +flavine +flavio +flavius +flavo +flavone +flavonoid +flavonol +flavonols +flavoprotein +flavor +flavored +flavorer +flavorers +flavorful +flavorfully +flavoring +flavorings +flavorless +flavorous +flavors +flavorsome +flavory +flavour +flavoured +flavourful +flavouring +flavourless +flavours +flavoury +flavous +flaw +flawed +flawflower +flawful +flawier +flawing +flawless +flawlessly +flawlessness +flawn +flaws +flawy +flax +flaxboard +flaxbush +flaxdrop +flaxes +flaxfield +flaxier +flaxlike +flaxman +flaxseeds +flaxtail +flaxton +flaxville +flaxweed +flaxwench +flaxwife +flaxwoman +flaxwort +flaxy +flay +flayed +flayer +flayers +flayflint +flaying +flaym +flays +flea +fleabag +fleabags +fleabane +fleabanes +fleabite +fleabites +fleabitten +fleadock +fleam +fleas +fleaseed +fleaweed +fleawood +fleay +flebile +fleche +fleches +flechette +flecked +flecken +flecker +fleckered +fleckiness +flecking +fleckled +fleckless +flecklessly +flecks +fleckstein +flecky +flecnodal +flecnode +flection +flectional +flectionless +flector +fled +fleddest +fledge +fledged +fledgeless +fledgeling +fledges +fledgier +fledging +fledglings +fledgy +flee +fleece +fleeceable +fleeced +fleeceflower +fleeceless +fleecelike +fleecer +fleecers +fleeces +fleech +fleechment +fleecier +fleeciest +fleecily +fleeciness +fleecing +fleecy +fleeing +fleenor +fleer +fleered +fleerer +fleering +fleeringly +fleers +flees +fleet +fleeted +fleeter +fleetest +fleetfoot +fleetful +fleeth +fleeting +fleetingly +fleetingness +fleetings +fleetly +fleetness +fleets +fleetville +fleetwing +fleetwood +flegenheimer +flegler +flehinger +fleifer +fleisch +fleischer +fleischman +fleischmanns +fleishacker +fleishman +fleishmann +fleiss +fleissig +flekman +flem +fleming +flemings +flemingsburg +flemington +flemished +flemishes +flemming +flemyng +flench +flenched +flenches +flenching +flends +flensburg +flense +flensed +flenser +flensers +flenses +flensing +fleo +flerry +flesch +flesh +fleshbrush +fleshburn +fleshcolored +fleshed +fleshen +flesher +fleshers +fleshes +fleshful +fleshhood +fleshhook +fleshhooks +fleshier +fleshiest +fleshiness +fleshing +fleshings +fleshless +fleshlier +fleshliest +fleshlike +fleshlily +fleshliness +fleshly +fleshment +fleshmonger +fleshpot +fleshpots +fleshspots +fleshy +fleskes +flet +fleta +fletched +fletcher +fletcherism +fletcherite +fletcherize +fletchers +fletches +fletching +fletes +flether +fleuchaus +fleugel +fleur +fleurdelis +fleuret +fleurette +fleurettee +fleuretty +fleuri +fleurima +fleurist +fleuron +fleuronnee +fleurot +fleurs +fleury +flevoland +flew +flewddur +flewed +flewelling +flewit +flews +flex +flexanimous +flexed +flexes +flexibility +flexibilty +flexible +flexibleness +flexiblere +flexibly +flexicast +flexile +flexility +flexing +flexion +flexionless +flexions +flexitime +flexor +flexors +flexowriter +flexrestart +flexuose +flexuosity +flexuous +flexuously +flexuousness +flexured +flexures +fley +fleyed +fleyedly +fleyedness +fleyland +fleysome +flherty +flicflac +flick +flickan +flicked +flicker +flickered +flickering +flickeringly +flickerproof +flickers +flickertail +flickery +flicking +flickinger +flickner +flickor +flicks +flicksville +flicky +flics +flidder +flidel +flied +flieder +flier +fliers +flies +fliest +flieth +fligger +flight +flightcheck +flighted +flighter +flightful +flightier +flightiest +flightily +flightiness +flighting +flightless +flights +flightshot +flighty +fligner +flikker +flimflam +flimflammer +flimflammery +flimflams +flimmer +flimp +flimsier +flimsies +flimsiest +flimsily +flimsiness +flimsy +flinch +flinched +flincher +flinchers +flinches +flinching +flinchingly +flindall +flinder +flinders +flindersia +flindosa +flindosy +fling +flinger +flingers +flinging +flings +flingy +flink +flinkite +flinstones +flint +flintall +flinted +flinter +flinthearted +flinthill +flintier +flintiest +flintify +flintily +flintiness +flinting +flintless +flintlike +flintlocks +flinton +flintridge +flints +flintstone +flintville +flintwood +flintwork +flintworker +flinty +flioma +flip +flipe +flipee +flipflop +flipjack +flippancies +flippancy +flippantly +flippantness +flipped +flippen +flipper +flipperling +flippers +flippery +flippest +flippin +flipping +flippy +flips +flipside +fliptech +flirtable +flirtational +flirtations +flirted +flirter +flirters +flirtier +flirtiest +flirtigig +flirting +flirtingly +flirtish +flirtishness +flirtling +flirts +flirty +flis +flisk +flisky +flit +flitch +flitched +flitchen +flitches +flitching +flite +flites +flitfold +fliting +flits +flitted +flitter +flitterbat +flittered +flittering +flittermouse +flittern +flitters +flitting +flittingly +flitwite +flivver +flivvers +flix +flixweed +flloko +flnks +fload +floakora +float +floatability +floatable +floatage +floatages +floatation +floatative +floatboard +floate +floated +floater +floaters +floatier +floatiest +floatiness +floating +floatinghead +floatingly +floative +floatless +floatmaker +floatman +floatplane +floats +floatsman +floatstone +floaty +flob +flobby +floccipend +floccose +floccosely +flocculable +flocculant +floccular +flocculation +flocculator +floccule +flocculence +flocculency +flocculent +flocculently +floccules +flocculi +flocculose +flocculus +floccus +floch +floche +flock +flocked +flocker +flockier +flockiest +flocking +flockings +flockless +flocklike +flockman +flockmaster +flockowner +flocks +flockwise +flocky +flocoon +flodge +flodin +flodquist +floeberg +floem +floerdke +floerkea +floersheim +floes +floey +flog +flogdell +floggable +flogged +flogger +floggers +floggingly +floggings +flogmaster +flogs +flogster +floi +floirac +flokite +flom +flomaton +floming +flomot +flon +flong +flood +floodable +floodage +floodboard +floodcock +flooded +flooder +flooders +floodgates +flooding +floodless +floodlet +floodlighted +floodlights +floodlike +floodmark +floodometer +floodplain +floodproof +floods +floodstage +floodtime +floodwater +floodway +floodways +floodwood +floody +flooey +floogle +flook +flookes +floor +floorage +floorages +floorboard +floorboards +floorcloth +floored +floorer +floorers +floorhead +flooring +floorings +floorke +floorless +floorman +floors +floorshift +floorshifts +floorshow +floorspace +floorthrough +floorwalker +floorwalkers +floorward +floorway +floorwise +floosies +floozie +floozies +floozy +flop +flophouse +flophouses +flopomor +flopover +flopovers +flopped +flopper +floppers +floppier +floppies +floppiest +floppily +floppiness +flopping +floppy +floppynet +floppys +floppystones +flops +flopwing +flor +flora +florabelle +florae +florahome +florakis +floral +florala +floralcity +floralia +floralize +florally +floralpark +floramor +floran +florance +florange +floras +florate +florath +floravista +floray +flore +floreal +floreate +florecito +florella +florelle +florence +florences +florencia +florencio +florendo +florennes +florens +florent +florentia +florentina +florentines +florentinism +florentium +florenz +florenza +floreo +flores +florescence +florescent +florescu +floressence +floresta +florestan +floresville +floret +floreted +florets +florette +floretum +florez +florhampark +flori +floria +florian +floriana +florianne +floriate +floriated +floriation +floricin +floriculture +florid +florida +floridan +floridans +florideae +floridean +florideous +floridian +floridians +floridity +floridly +floridness +florie +florien +floriferous +floriform +florigen +florigenic +florigraphy +florikan +floriken +florilegium +florimania +florimanist +florimond +florina +florinda +florine +floriniotes +florins +florio +floriot +floriparous +floripondio +floris +floriscope +florissant +florista +floristic +floristics +floriston +floristry +florists +florisugent +florita +florivorous +florizel +florjancic +floroon +floroscope +florri +florrie +florry +florula +florulent +florus +flory +florya +floscular +floscularia +floscularian +floscule +flosculose +flosculous +flosh +floss +flosse +flossed +flosser +flosses +flossflower +flossi +flossie +flossier +flossies +flossiest +flossing +flossmoor +flossy +flostre +flot +flota +flotage +flotant +flotations +flotative +flotillas +flotorial +flotsam +flotsams +flottans +floud +flounced +flounces +flouncey +flouncier +flounciest +flouncing +flouncy +flounder +floundered +floundering +flounders +floup +flour +floured +flourescent +flouring +flourish +flourishable +flourished +flourisher +flourishes +flourisheth +flourishing +flourishment +flourishy +flourlike +flournoy +flours +flourtown +flouse +flouted +flouter +flouters +flouting +floutingly +flouts +flovilla +flow +flowable +flowage +flowages +flowcharted +flowcharter +flowcharting +flowcharts +flowcontrol +flowed +flower +flowerage +flowered +flowerer +flowerers +floweret +flowerets +flowerful +flowerier +floweriest +flowerily +floweriness +flowering +flowerist +flowerless +flowerlet +flowerlike +flowerpecker +flowerpots +flowers +flowerwork +flowery +floweth +flowfiles +flowing +flowingly +flowingness +flowmanostat +flowmark +flowmeter +flown +flowoff +flows +floyd +floydada +floyddale +floydsknobs +floyery +floysvik +flplabel +flss +fltac +fltcincais +fluate +fluavil +flubbed +flubber +flubbing +flubdub +flubdubbery +flubdubs +flubs +fluc +flucan +flucht +fluckiger +fluctiferous +fluctigerous +fluctisonant +fluctisonous +fluctuable +fluctuant +fluctuate +fluctuated +fluctuates +fluctuating +fluctuation +fluctuations +fluctuosity +fluctuous +fluctutaions +fludgate +flueckinger +flued +fluegel +fluegelman +fluegge +flueless +fluellen +fluellite +flueman +fluencies +fluent +fluently +fluentness +fluer +flues +fluet +fluework +fluey +fluff +fluffed +fluffer +fluffier +fluffiest +fluffily +fluffiness +fluffing +fluffs +fluffy +flug +flugelhorn +flugelman +fluible +fluid +fluidal +fluidally +fluidextract +fluidible +fluidic +fluidics +fluidifier +fluidify +fluidimeter +fluidism +fluidist +fluidities +fluidity +fluidization +fluidize +fluidized +fluidizes +fluidizing +fluidly +fluidness +fluidoscope +fluidram +fluidrams +fluids +fluigram +fluitant +fluke +fluked +flukeless +fluker +flukes +flukeworm +flukewort +flukey +flukier +flukiest +flukily +flukiness +fluking +fluky +flumdiddle +flume +flumed +flumerin +flumes +fluming +fluminose +flummadiddle +flummer +flummeries +flummery +flummox +flummoxed +flummoxes +flummoxing +flummydiddle +flump +flumped +fluney +flung +flunked +flunker +flunkers +flunkey +flunkeydom +flunkeyhood +flunkeyish +flunkeyism +flunkeyize +flunkeys +flunkies +flunking +flunks +flunky +flunkydom +flunkyhood +flunkyish +flunkyism +flunkyistic +flunkyite +flunkyize +fluoaluminic +fluoarsenate +fluoborate +fluoboric +fluoborid +fluoboride +fluoborite +fluobromide +fluocerine +fluocerite +fluochloride +fluohydric +fluor +fluoran +fluoranthene +fluorapatite +fluorate +fluorbenzene +fluorene +fluorenes +fluorenyl +fluoresage +fluoresced +fluorescence +fluorescent +fluoresces +fluorescin +fluorescing +fluorhydric +fluoric +fluoridated +fluoridates +fluoridating +fluoridation +fluorides +fluoridize +fluorimeter +fluorinate +fluorinated +fluorinates +fluorinating +fluorination +fluorindine +fluorine +fluorines +fluorites +fluormeter +fluoroborate +fluoroform +fluoroformol +fluorogen +fluorogenic +fluorography +fluoroid +fluorometer +fluoroscope +fluoroscoped +fluoroscopes +fluoroscopic +fluoroscopy +fluorosis +fluorotype +fluors +fluoryl +fluosilicate +fluosilicic +fluotantalic +fluotitanate +fluotitanic +fluozirconic +flup +flurn +flurr +flurried +flurriedly +flurries +flurriment +flurry +flurrying +flury +flus +flush +flushable +flushboard +flushed +flusher +flusherman +flushers +flushes +flushest +flushgate +flushing +flushingly +flushleft +flushmode +flushness +flushright +flushtop +flushy +flusk +flusker +flusterate +flusteration +flustered +flusterer +flustering +flusterment +flusters +flustery +flustra +flustrine +flustroid +flustrum +flute +flutebird +fluted +flutelike +flutemouth +fluter +fluters +flutes +flutework +flutidae +flutier +flutiest +flutina +fluting +flutings +flutist +flutists +flutter +flutterable +flutteration +fluttered +flutterer +flutterers +fluttereth +fluttering +flutteringly +flutterless +flutterment +flutters +fluttersome +fluttery +fluty +flutzpahs +fluvanna +fluviaatile +fluvialist +fluviatic +fluviatile +fluvicoline +fluviograph +fluviology +fluviomarine +fluviometer +fluviose +flux +fluxation +fluxed +fluxer +fluxes +fluxibility +fluxible +fluxibleness +fluxibly +fluxile +fluxility +fluxing +fluxion +fluxional +fluxionally +fluxionary +fluxionist +fluxions +fluxmeter +fluxroot +fluxweed +flyable +flyaway +flyaways +flyback +flyball +flybane +flybelt +flyblow +flyblown +flyblows +flyboat +flyboy +flyby +flybys +flycatchers +flycreek +flyeater +flyer +flyers +flyflap +flyflapper +flyflower +flying +flyinganimal +flyingh +flyingly +flyings +flyleaf +flyleaves +flyless +flyman +flymen +flyn +flyness +flynn +flyover +flyovers +flypaper +flypapers +flype +flyproof +flysch +flyspeck +flyspecked +flyspecks +flyswatters +flytail +flytier +flytrap +flytraps +flyways +flyweight +flyweights +flywheel +flywheels +flywinch +flywort +fmail +fman +fmark +fmboss +fmbox +fmdv +fmhead +fmlh +fmln +fmnote +fmpb +fmscad +fmthard +fnal +fname +fndation +fngate +fnnet +fnos +foad +foaf +foal +foaled +foalfoot +foalhood +foaling +foals +foaly +foam +foambow +foamed +foamer +foamers +foameth +foamier +foamiest +foamily +foaminess +foaming +foamingly +foamless +foamlike +foamrubber +foams +foasi +foau +fobbed +fobbing +fobert +fobs +fobur +foby +focal +focalised +focalises +focalization +focalize +focalized +focalizes +focalizing +focally +focaloid +focas +foch +focht +focimeter +focimetry +focke +focoids +focometer +focometry +focsaneanu +focsle +focus +focusable +focused +focuser +focusers +focuses +focusing +focusless +focussed +focusses +focussing +fodag +fodara +fodda +fodder +foddered +fodderer +foddering +fodderless +fodders +fodderwing +fodell +foder +fodge +fodgel +fodient +fodientia +foehn +foehnlike +foehns +foeish +foeldessy +foeless +foelike +foeman +foemanship +foemen +foeniculum +foenngreek +foeppel +foersund +foes +foeship +foessl +foest +foetal +foeti +foeticide +foetid +foetor +foetors +foetus +foetuses +fofana +fofanov +fogbe +fogbound +fogbow +fogdog +fogdom +fogeater +fogel +fogelin +fogelson +fogelsville +fogertown +fogerty +fogey +fogeys +fogfruit +fogg +foggage +foggages +fogged +fogger +foggers +foggia +foggier +foggiest +foggily +fogginess +foggish +foghorn +foghorns +foght +fogie +fogiel +fogies +fogle +fogleman +fogless +foglietta +fogman +fogny +fogo +fogon +fogou +fogproof +fogram +fogramite +fogramity +fogs +fogscoffer +fogsignal +fogus +fogydom +fogyish +fogyism +fogyisms +fohat +fohramrum +foibles +foil +foilable +foiled +foiler +foiling +foils +foilsman +foilsmen +foin +foining +foiningly +foins +fois +foisie +foism +foison +foisonless +foisted +foister +foistiness +foisting +foists +foisty +foiter +foix +foja +fokas +fokhine +fokis +fokker +fola +folatre +folayan +folca +folcker +folco +folcroft +fold +foldable +foldage +foldaway +foldboat +foldboats +foldcourse +folded +foldedly +folden +foldenyi +folder +folderol +folderols +folderopen +folders +foldes +foldesay +foldeth +foldi +folding +foldless +foldouts +folds +foldskirt +foldure +foldwards +foldy +fole +folepi +foley +folger +folgerite +folia +foliaceous +foliage +foliaged +foliageous +foliages +folial +foliar +foliary +foliated +foliates +foliating +foliation +foliature +folic +folie +foliicolous +foliiferous +foliiform +folio +foliobranch +folioed +folioing +foliolate +foliole +foliolose +folios +foliose +foliosity +foliot +folious +foliously +folipi +folis +folium +foljambe +folk +folkcraft +folke +folkert +folketing +folkfree +folkins +folkish +folkland +folklore +folklores +folkloric +folklorish +folklorism +folklorist +folkloristic +folklorists +folkmoot +folkmooter +folkmoots +folkmot +folkmote +folkmoter +folkmotes +folkright +folks +folksier +folksiest +folksily +folksiness +folksinger +folksongs +folkston +folktale +folktales +folkvang +folkvangr +folkvett +folkway +folkways +folky +folland +follansbee +follerau +folles +follet +folletage +follett +follette +follick +follicles +folliculate +folliculated +follicule +folliculin +folliculina +folliculitis +folliculose +folliculosis +folliculous +follies +folliful +follina +folliot +follis +follmer +follo +follow +followable +followed +followedby +followedst +follower +followers +followership +followeth +following +followingly +followings +follows +followup +followups +followupto +folly +follybeach +follyproof +folmer +folollowed +folome +folowing +folowwing +folse +folsky +folsom +folsomville +folwell +foma +fomalhaut +fombell +fomboni +fomby +foment +fomentation +fomentations +fomented +fomenter +fomenters +fomenting +foments +fomes +fominyen +fomites +fomopea +fond +fonda +fondacaro +fondak +fondant +fondanti +fondants +fonddulac +fondebougou +fonded +fonder +fondest +fonding +fondish +fondjomekwet +fondled +fondler +fondlers +fondles +fondlesome +fondlike +fondling +fondlingly +fondlings +fondness +fonds +fondu +fondue +fondues +fonduk +fonemafon +foneswood +fong +fongbe +fongondeng +foni +fonille +fonly +fonnie +fonnish +fonnu +fono +fons +fonseca +fonseke +font +fontain +fontaine +fontainea +fontainha +fontal +fontally +fontan +fontana +fontanadam +fontane +fontanel +fontanelle +fontanels +fontanet +fontange +fontanilla +fontanini +fontanino +fontanne +fontayne +fontbbox +fontdiddling +fonted +fontedit +fontelieu +fontem +fonteney +fontenot +fontenoy +fontezy +fontfamily +fontfinder +fontful +fontgen +fonticulus +fontina +fontinal +fontinalis +fontinas +fontlab +fontlet +fontlister +fontlook +fontmagik +fontmatrix +fontminder +fontographer +fontpath +fonts +fontscale +fontsee +fontshop +fontshow +fonttest +fonttype +fontvieille +fontvielle +fony +fonyo +foobar +foobaz +foochow +foochowese +food +fooder +foodful +foodgrain +foodgrains +foodless +foodlessness +foodo +foodp +foods +foodservices +foodstuffs +foodtrough +foody +fooey +foofaraw +foofaraws +fool +fooldom +fooled +fooleries +foolery +fooless +foolfish +foolhardier +foolhardiest +foolhardily +foolhardness +foolhardy +foolin +fooling +foolish +foolisher +foolishest +foolishly +foolishness +foollike +foolo +foolocracy +foolproof +fools +foolscap +foolscaps +foolship +foom +fooner +foong +foop +fooqux +foos +foosland +fooster +foosterer +foot +footage +footages +footback +football +footballer +footballist +footballs +footband +footbath +footbaths +footblower +footboard +footboards +footboy +footbreadth +footbridges +footcandle +footcandles +footcloth +footed +footeite +footer +footers +footfalls +footfarer +footfault +footfolk +footful +footganger +footgear +footgears +footgeld +foothalt +foothigh +foothills +foothold +footholds +foothook +foothot +footier +footing +footingly +footings +footle +footler +footless +footlessness +footlicker +footlight +footlights +footling +footlining +footlock +footlocker +footlockers +footloose +footmaker +footmanhood +footmanry +footmanship +footmark +footmarks +footmen +footnote +footnoted +footnotes +footnoting +footpace +footpaces +footpaddery +footpads +footpaths +footpick +footplate +footpound +footpounds +footprint +footprints +footrace +footraces +footrail +footrest +footrests +footrill +footroom +footrope +footropes +foots +footscald +footscray +footsie +footsies +footslog +footslogger +footslogs +footsoldier +footsoldiers +footsore +footsoreness +footstalk +footstall +footsteps +footstick +footstock +footstone +footstool +footstools +footsy +foottall +footville +footwalk +footwall +footwarmer +footwarmers +footway +footways +footwears +footwork +footworks +footworn +footy +foovax +fooyoung +foozle +foozler +foozlers +foozling +fopling +fopo +fopobua +fopped +fopperies +foppery +fopping +foppington +foppishly +foppishness +foppy +fops +fopship +fora +foraba +foraged +foragement +forager +foragers +forages +foraging +forak +foraker +foralite +foramatter +foramen +foramina +foraminated +foramination +foraminifer +foraminifera +foraminose +foraminous +foraminulate +foraminule +foraminulose +foraminulous +foran +forane +foraneen +foraneous +foraramens +foraramina +forasmuch +forastero +foray +forayed +forayer +forayers +foraying +forays +forb +forbad +forbade +forbag +forbar +forbare +forbathe +forbear +forbearable +forbearance +forbearances +forbearant +forbearantly +forbearer +forbearers +forbeareth +forbearing +forbearingly +forbears +forbes +forbesite +forbesroad +forbestown +forbid +forbidals +forbiddable +forbiddal +forbiddance +forbidden +forbiddenly +forbidder +forbiddeth +forbidding +forbiddingly +forbids +forbish +forbit +forbled +forblow +forbode +forboded +forbodes +forboding +forboess +forborn +forboth +forbow +forbrich +forbs +forbush +forby +forcas +force +forceable +forceallcaps +forced +forcedly +forcedness +forcedup +forcefully +forcefulness +forceless +forcemeat +forcement +forceps +forcepslike +forcer +forcers +forces +forchase +forche +forchion +forcibility +forcible +forcibleness +forcibly +forcina +forcing +forcingly +forcipate +forcipated +forcipes +forcipiform +forcipulata +forcipulate +forciveness +forcleave +forconceit +forcue +ford +fordable +fordableness +fordam +fordana +fordat +fordata +fordate +fordays +fordcity +fordcliff +forde +forded +forden +fordgw +fordicidia +fordid +fording +fordland +fordless +fordo +fordoche +fordone +fordprefect +fords +fordsbranch +fordsville +fordunga +fordville +fordwine +fordy +fordyce +fore +foreaccustom +foreach +foreacquaint +foreact +foreadapt +foreadmonish +foreadvice +foreadvise +foreallege +foreallot +foreannounce +foreanswer +foreappoint +forearm +forearmed +forearming +forearms +foreassign +forebay +forebear +forebearing +forebears +forebemoan +forebemoaned +forebespeak +forebitt +forebitten +forebitter +forebless +foreboard +forebode +foreboded +forebodement +foreboder +forebodes +forebodies +foreboding +forebodingly +forebodings +forebody +foreboot +forebowels +forebowline +forebrace +forebrain +forebreast +forebridge +foreburton +forebush +foreby +forebye +forecar +forecariah +forecarriage +forecast +forecasted +forecaster +forecasters +forecasting +forecastle +forecastles +forecasts +forecatching +forechamber +forechase +forechoice +forechoose +forechurch +forecited +foreclaw +foreclosable +foreclose +foreclosed +forecloses +foreclosing +foreclosure +foreclosures +forecome +forecommend +foreconceive +foreconclude +forecondemn +foreconsent +foreconsider +forecontrive +forecool +forecooler +forecounsel +forecount +forecourse +forecourt +forecourts +forecover +forecovert +foredafa +foredate +foredated +foredates +foredating +foredawn +foreday +foredeck +foredecks +foredeclare +foredecree +foredeep +foredefeated +foredefine +foredenounce +foredescribe +foredeserved +foredesign +foredesk +foredestine +foredestiny +foredevised +foredevote +foredid +forediscern +foredispose +foredivine +foredo +foredoing +foredone +foredoom +foredoomed +foredoomer +foredooming +foredooms +foredoor +foreface +forefather +forefatherly +forefathers +forefault +forefeel +forefeeling +forefeels +forefeet +forefelt +forefend +forefended +forefends +forefield +forefigure +forefin +forefinger +forefingers +forefit +foreflank +foreflap +foreflipper +forefoot +forefront +forefronts +foregallery +foregame +foreganger +foregate +foregather +foregift +foregirth +foreglance +foregleam +foreglimpse +foreglow +forego +foregoer +foregoers +foregoes +foregone +foregoneness +foreground +foregrounds +foreguess +foreguidance +foregut +forehalf +forehall +forehammer +forehand +forehanded +forehandedly +forehands +forehandsel +forehard +forehatch +forehatchway +forehead +foreheaded +foreheads +forehear +forehearth +foreheater +forehelp +forehill +forehinting +forehold +forehood +forehoof +forehoofs +forehook +forehooves +foreign +foreigner +foreigners +foreignism +foreignize +foreignly +foreignness +foreignowned +foreigns +foreimagine +foreinclined +foreinstruct +foreintend +foreiron +forejudge +forejudged +forejudger +forejudging +forejudgment +foreke +forekeel +foreking +foreknee +foreknew +foreknow +foreknowable +foreknower +foreknowing +foreknown +foreknows +forel +foreladies +forelady +foreland +forelands +forelay +foreleech +foreleg +forelegs +forelimb +forelimbs +forelive +forell +forelock +forelocks +forelook +foreloop +forelooper +foreloper +foremade +foreman +foremanship +foremarch +foremark +foremartyr +foremast +foremasthand +foremastman +foremasts +foremean +foremeant +foremelt +foremen +foremention +foremilk +foremistress +foremost +foremostly +foremother +forename +forenamed +forenames +forenews +forenight +forenoon +forenoons +forenote +forenoted +forenotice +forenotion +forensal +forensical +forensically +forensics +foreordain +foreordained +foreordains +foreorder +foreordinate +foreorlop +forepad +forepale +foreparents +forepart +foreparts +forepassed +forepast +forepaw +forepaws +forepayment +forepeak +forepeaks +foreperiod +forepiece +foreplace +foreplan +foreplanting +foreplay +foreplays +forepleasure +forepole +foreporch +forepost +foreprepare +foreproduct +foreproffer +forepromise +forepromised +foreprovided +forepurpose +forequarter +forequarters +forequoted +foreran +forerank +forereach +forereaching +foreread +forereading +forerecited +forereckon +forereport +forerequest +forerib +forerigging +foreright +foreroom +foreroyal +forerun +forerunner +forerunners +forerunning +forerunnings +foreruns +fores +foresaddle +foresaid +foresail +foresails +foresaw +foresay +foresaying +foresays +forescene +forescent +foreschool +forescript +forescu +forese +foreseason +foreseat +foresee +foreseeable +foreseeing +foreseeingly +foreseen +foreseer +foreseers +foresees +foreseeth +foreseize +foresend +foresense +foresentence +foreset +foresettle +foresettled +foreshadow +foreshadowed +foreshadower +foreshadows +foreshaft +foreshank +foreshape +foresheet +foresheets +foreshift +foreship +foreshock +foreshoe +foreshop +foreshore +foreshorten +foreshortens +foreshot +foreshoulder +foreshow +foreshowed +foreshower +foreshowing +foreshown +foreshows +foreshroud +foresi +foreside +foresides +foresight +foresighted +foresightful +foresights +foresign +foresignify +foresin +foresing +foresinger +foreskin +foreskins +foreskirt +foresleeve +foresound +forespeak +forespeed +forespencer +forest +foresta +forestaff +forestage +forestair +forestal +forestall +forestalled +forestaller +forestalling +forestalls +forestarling +forestate +forestation +forestay +forestays +forestaysail +forestburg +forestburgh +forestcity +forestcraft +forestdale +forested +foresteep +forestem +forestep +forester +foresters +forestership +forestery +forestfalls +forestful +forestgrove +foresthill +foresthills +foresthome +forestial +forestian +forestick +forestier +forestiera +forestieri +forestine +foresting +forestish +forestknolls +forestlake +forestless +forestlike +forestology +foreston +forestpark +forestport +forestral +forestranch +forestress +forestriver +forests +forestside +forestudy +forestville +forestwards +foresty +foresummer +foresummon +foreswear +foreswearing +foresweat +foreswore +foresworn +foretack +foretackle +foretalk +foretalking +foretaste +foretasted +foretaster +foretastes +foretasting +foretell +foretellable +foreteller +foretellers +foretelling +foretells +forethink +forethinker +forethought +forethrift +foreti +foretime +foretimed +foretimes +foreto +foretoken +foretokened +foretokening +foretokens +foretold +foretop +foretopman +foretops +foretrace +foretrysail +foreturn +foretype +foretypified +foreuse +foreutter +foreva +forevalue +forever +forevermore +forevers +foreview +forevision +forevouch +forevouched +forevow +forewarm +forewarmer +forewarn +forewarned +forewarner +forewarning +forewarnings +forewarns +forewaters +foreween +foreweep +foreweigh +forewent +forewing +forewings +forewinning +forewisdom +forewish +forewoman +forewomen +forewonted +foreword +forewords +foreworld +foreworn +forewritten +forewrought +foreyard +foreyear +forfairn +forfar +forfare +forfars +forfault +forfaulture +forfeit +forfeitable +forfeited +forfeiter +forfeiting +forfeits +forfeitures +forfended +forfending +forfends +forficate +forficated +forfication +forficiform +forficula +forficulate +forficulidae +forfouchten +forfoughen +forfoughten +forgainst +forgan +forgat +forgather +forgathered +forgathering +forgathers +forgave +forgavest +forge +forgeability +forgeable +forged +forgedly +forgeful +forgeman +forger +forgeries +forgeron +forgers +forgery +forges +forget +forgetable +forgetful +forgetfully +forgetive +forgetness +forgets +forgettably +forgetter +forgetters +forgettest +forgetteth +forgetting +forgettingly +forghani +forgie +forging +forgings +forgivable +forgivably +forgive +forgiveable +forgiveless +forgiven +forgiveness +forgiver +forgivers +forgives +forgiveth +forgiving +forgivingly +forgoer +forgoers +forgoes +forgoil +forgoing +forgone +forgot +forgott +forgotten +forgrow +forgrown +forgues +forhigh +forhoo +forhooy +forhow +forinsec +forint +forints +foris +foristell +forjesket +forjudge +forjudged +forjudger +forjudges +forjudging +fork +forkable +forkbeard +forkboy +forked +forkedly +forkedness +forkedriver +forker +forkers +forkful +forkfuls +forkhead +forkier +forkiness +forking +forkland +forkless +forklift +forklifts +forklike +forkman +forks +forksful +forksmith +forksville +forktail +forkunion +forkville +forkwise +forky +forland +forlani +forleft +forlet +forlong +forlorn +forlorner +forlornest +forlornity +forlornly +forlornness +form +forma +formability +formable +formably +formagen +formagenic +formagie +formal +formalazine +formaldoxime +formalesque +formalin +formalins +formalism +formalisms +formalist +formalistic +formalith +formalities +formality +formalize +formalized +formalizer +formalizes +formalizing +formally +formalness +formals +formamide +formamidine +formamido +forman +formanilide +formants +format +formated +formating +formation +formational +formations +formative +formatively +formats +formatted +formatter +formatters +formatting +formature +formazyl +formby +formcount +formcreate +forme +formeasuring +formed +formedon +formee +formel +formene +formenic +formenting +former +formeret +formerly +formerness +formers +formeth +formeulehre +formfeed +formfeeds +formfitting +formful +formiate +formican +formicariae +formicarian +formicarioid +formicarium +formicaroid +formicary +formicate +formication +formicative +formichi +formicicide +formicid +formicidae +formicide +formicina +formicinae +formicine +formicivora +formicoidea +formicola +formidable +formidably +formin +forminate +forming +formless +formlessly +formlessness +formol +formolite +formonitrile +formor +formosan +formose +formoso +formoxime +formpal +formpost +forms +formstyle +formto +formula +formulable +formular +formularies +formularism +formularist +formularize +formulary +formulas +formulate +formulated +formulates +formulating +formulation +formulations +formulator +formulators +formulatory +formule +formulism +formulist +formulistic +formulize +formulizer +formvs +formwork +formy +formyl +formylal +formylate +formylation +formynderne +forn +fornac +fornacic +fornam +fornari +fornaught +fornax +fornaxid +fornenst +fornent +forney +fornical +fornicate +fornicated +fornicates +fornicating +fornication +fornications +fornicator +fornicators +fornicatress +fornicatrix +forniciform +forninst +fornio +fornix +forno +fornost +forom +foron +foronjy +forpet +forpine +forpit +forprise +forquet +forrad +forrard +forrest +forrestcity +forrester +forreston +forride +forristal +forrit +forritsome +forro +forros +forrue +forsake +forsaken +forsakenly +forsakenness +forsaker +forsakers +forsakes +forsaketh +forsaking +forsale +forsan +forsburgh +forsee +forseeable +forseen +forset +forseti +forshame +forshaw +forshay +forshtay +forslow +forslund +forsomuch +forsook +forsookest +forsooth +forspeak +forspend +forspent +forspread +forst +forster +forsterite +forsvundne +forsvunna +forswear +forswearer +forswearing +forswears +forswore +forsworn +forswornness +forsymmetric +forsyne +forsyth +forsythe +forsyther +forsythia +forsythias +forsytia +fort +fortaleza +fortalice +fortann +fortapache +fortashby +fortatkinson +fortbelvoir +fortbenton +fortbidwell +fortbragg +fortbranch +fortbridger +fortcalhoun +fortcampbell +fortchaffee +fortcobb +fortcollins +fortdavis +fortdefiance +fortdefrance +fortdeposit +fortdodge +fortduchesne +forte +fortedward +fortee +fortelage +fortes +fortescure +fortesque +fortet +fortgaines +fortgarland +fortgay +fortgibson +forth +forthall +forthancock +fortharrison +forthbring +forthbringer +forthcomer +forthcoming +forthcut +forthe +forthfare +forthfigured +forthgaze +forthgo +forthgoing +forthill +forthink +forthoward +forthputting +forthright +forthrightly +forthrights +forthtell +forthteller +forthunter +forthwith +forthx +forthy +forti +fortier +forties +fortieth +fortieths +fortifiable +fortified +fortifier +fortifiers +fortifies +fortify +fortifying +fortifyingly +fortifys +fortinbras +fortine +fortiner +fortirwin +fortis +fortissimo +fortitudes +fortjennings +fortjohnson +fortjones +fortkent +fortklamath +fortknox +fortlamy +fortlaramie +fortlawn +fortlee +fortlet +fortloramie +fortloudon +fortlupton +fortlyon +fortmadison +fortman +fortmccoy +fortmckavett +fortmeade +fortmill +fortmitchell +fortmorgan +fortmyers +fortneal +fortner +fortney +fortnight +fortnightly +fortnights +fortnum +fortogden +fortord +fortpayne +fortpeck +fortpierce +fortpierre +fortplain +fortran +fortranh +fortranlike +fortrans +fortransom +fortrash +fortravail +fortread +fortrecovery +fortrero +fortress +fortressed +fortresses +fortrice +fortripley +fortritner +fortrock +forts +fortscott +fortsenal +fortseneca +fortseybert +fortshaw +fortsheridan +fortsmith +fortson +fortspring +fortstanton +fortstockton +fortsumner +fortsupply +fortthomas +fortthompson +forttotten +forttowson +fortuin +fortuities +fortuitism +fortuitist +fortuitous +fortuitously +fortuitus +fortuity +fortuna +fortunaledge +fortunate +fortunately +fortunati +fortunato +fortunatus +fortune +fortuned +fortuneless +fortunella +fortunes +fortunetell +fortuning +fortunio +fortunion +fortunite +fortuno +fortus +fortvalley +fortville +fortwashakie +fortwayne +fortwhite +fortwingate +fortworth +forty +fortyates +fortyfive +fortyfives +fortyfold +fortythird +fortythree +forum +forumize +forumn +forums +forus +forut +forwander +forward +forwardal +forwardation +forwarded +forwarder +forwarders +forwardest +forwarding +forwardly +forwardness +forwards +forwean +forweend +forweight +forwhy +forwindowsis +forwiss +forwoden +forword +forworden +forworn +forysinski +forzando +forzandos +forzane +foscarie +foschi +fosco +fosdick +fosgate +fosh +fosie +fosimondi +fosite +foss +fossa +fossae +fossage +fossamla +fossane +fossarian +fossate +fossati +fosse +fossed +fosser +fosses +fossette +fossey +fossick +fossicker +fossiform +fossil +fossilage +fossilated +fossilation +fossildom +fossiled +fossilify +fossilism +fossilist +fossilizable +fossilize +fossilized +fossilizes +fossilizing +fossillike +fossilogist +fossilogy +fossilology +fossils +fossong +fossor +fossores +fossoria +fossorial +fossorious +fosston +fossula +fossulate +fossule +fossulet +fossurmer +fostell +foster +fosterable +fosterage +fostercity +fostered +fosterer +fosterers +fosterhood +fostering +fosteringly +fosterland +fosterling +fosterlings +fosters +fostersfalls +fostership +fosterville +fostoria +fostress +fotch +fother +fothergill +fothergilla +fotheringay +fotini +fotki +fotmal +foto +fotograf +fotok +fotos +fotouni +fotui +fotuna +fouad +foubert +foucault +fouchard +fouche +fouchek +foud +foudre +foudroyant +fouet +fouette +fougade +fougamou +fougasse +fougere +fought +foughten +foughty +fouillard +foujdar +foujdary +fouke +foul +foula +foulage +foulard +foulards +foulasso +foulcher +fouled +fouledst +fouler +foulest +fouletier +foulfellow +foulfoulde +foulger +fouling +foulings +foulish +foulk +foulkes +foully +foulminded +foulmouthed +foulness +foulplay +fouls +foulse +foulsome +foulspoken +foumart +foumban +foun +found +foundas +foundation +foundational +foundationed +foundationer +foundations +founded +founder +foundered +foundering +founderous +founders +foundership +foundery +foundest +founding +foundlings +foundress +foundries +foundry +foundryman +founds +fountain +fountaincity +fountaine +fountained +fountaineer +fountainhill +fountaining +fountaininn +fountainless +fountainlet +fountainous +fountainrun +fountains +fountaintown +fountainwise +fountful +founts +fouquet +fouquette +fouquier +fouquieria +four +fourastie +fourble +fourcade +fourche +fourchee +fourcher +fourchette +fourchite +fourcolor +fourcorners +fourer +fouret +fourflusher +fourflushers +fourfold +fourfooted +fourgoula +fourier +fourierian +fourierism +fourierist +fourieristic +fourierite +fourinhand +fourlakes +fourleaf +fourletter +fourling +fourman +fourmart +fourmile +fourneau +fournel +fourney +fournides +fournier +fouroaks +fourpack +fourparms +fourparty +fourpass +fourpence +fourpenny +fourpointed +fourposter +fourposters +fourpounder +fourre +fourrier +fours +fourscore +fourseasons +foursecond +foursome +foursomes +foursquare +foursquarely +fourstates +fourstrand +fourteen +fourteener +fourteenfold +fourteens +fourteenth +fourteenthly +fourteenths +fourtenths +fourth +fourther +fourthly +fourths +fourtunio +fourwheeler +fouryear +fous +foussa +foussard +fouta +foute +fouter +fouth +fouts +foutz +fovaros +foveae +foveal +foveate +foveated +foveation +foveiform +foveola +foveolarious +foveolate +foveolated +foveole +foveolet +fowells +fowk +fowl +fowlds +fowle +fowled +fowler +fowlerite +fowlers +fowlerton +fowlerville +fowlery +fowles +fowley +fowlfoot +fowling +fowlings +fowlkes +fowlpox +fowls +fowlston +fowlstown +fownes +foxbane +foxbase +foxbat +foxberry +foxboro +foxborough +foxburg +foxchapel +foxchop +foxcore +foxe +foxed +foxer +foxery +foxes +foxfeet +foxfinger +foxfire +foxfires +foxfish +foxflory +foxgloves +foxhall +foxhill +foxhole +foxholes +foxholm +foxhome +foxhounds +foxi +foxier +foxiest +foxily +foxiness +foxing +foxings +foxish +foxisland +foxlake +foxley +foxlike +foxpark +foxpro +foxproof +foxptrm +foxship +foxskin +foxskins +foxtail +foxtailed +foxtails +foxton +foxtongue +foxtown +foxtrot +foxwood +foxworth +foxworthy +foxx +foxy +foya +foyaite +foyaitic +foyboat +foyer +foyers +foyil +foyle +fozie +foziness +fozy +fozzie +fpatan +fplot +fpomiami +fponewyork +fposeattle +fprot +fpsched +fptan +frab +frabbit +frabjous +frabjously +frabjulated +frabous +fracas +fracases +fracasse +fracastoro +fracci +fracedinous +frache +frack +frackowiak +frackville +fractable +fractabling +fractal +fractals +fracted +fracticipita +fractile +fraction +fractional +fractionally +fractionary +fractionated +fractionator +fractioned +fractionize +fractionlet +fractions +fractious +fractiously +fractonimbus +fractoria +fractuosity +fracturable +fractural +fracture +fractured +fractures +fracturing +fradette +frady +frae +fraenkel +fraer +frafra +frag +fraga +fragaria +frage +frager +fragged +fragging +fraggings +fraggle +fraghan +fragibility +fragilaria +fragile +fragilely +fragileness +fragilidad +fragilities +fragility +fragment +fragmental +fragmentally +fragmentary +fragmentate +fragmented +fragmenting +fragmentist +fragmentize +fragments +fragnito +fragolente +fragrance +fragrances +fragrancies +fragrancy +fragrant +fragrantly +fragrantness +frags +fraia +fraid +fraik +frail +frailejon +frailer +frailest +frailish +frailly +frailness +frails +frailties +frain +fraina +fraise +fraiser +frait +frajt +frake +fraker +frakes +fraktura +fraley +fralick +fralix +fram +framable +framableness +frame +framea +frameable +framed +frameless +framemaker +framer +framers +frames +framesmith +frameth +frametown +framework +frameworks +framing +framingham +frammit +frampler +frampold +frampton +fran +franc +franca +francais +francaise +francas +franccomtois +france +francen +francene +frances +francesc +francesca +francesco +francese +francestown +francesville +francette +franceville +francey +francha +franchecomte +franchette +franchetti +franchi +franchini +franchisal +franchised +franchisee +franchisees +franchiser +franchisers +franchises +franchising +franchot +francia +francic +francie +francilla +francina +francine +francini +francioli +franciosa +francis +francisc +francisca +franciscan +franciscans +francisco +franciscreek +franciscus +franciska +francistown +franciszek +francitas +franciums +francize +franck +francks +franco +francoeur +francois +francoise +francolin +francolini +francolite +francomania +franconia +franconian +francophile +francophobe +francophobia +francophone +francs +franctireur +francucci +francyne +frandisi +frane +franey +frangcon +frangent +frangi +frangibility +frangible +frangipane +frangos +frangoulis +frangula +frangulaceae +frangulic +frangulin +frangulinic +frank +franka +frankability +frankable +frankalmoign +frankaus +frankclay +frankcom +franke +franked +franken +frankenia +frankenmuth +frankenstein +franker +frankers +frankest +frankeur +frankewing +frankfather +frankford +frankfort +frankforter +frankfurt +frankfurters +frankham +frankhearted +franki +frankie +frankify +frankincense +franking +frankish +frankist +frankland +franklandite +franklidge +franklin +franklina +franklinia +franklinian +frankliniana +franklinic +franklinism +franklinist +franklinite +franklinken +franklinpark +franklins +franklinton +franklintown +frankly +franklyn +frankness +franknfurter +franko +frankos +frankovich +frankovitch +frankpledge +franks +frankston +franksun +franksville +frankton +franktown +frankville +franky +franni +frannie +franny +franquelli +frans +franscetti +fransen +franti +frantic +frantically +franticly +franticness +frantisek +frantuzzi +frantz +franus +franz +franza +franze +franzen +franzi +franzia +franziska +franzky +franzwa +franzy +frap +frape +frappazini +frappe +frapped +frappes +frappier +frapping +fraps +frar +frasco +frase +fraser +frasera +frasier +frasquita +frass +frat +fratch +fratched +fratcheous +fratcher +fratchety +fratchy +fratelli +frater +fratercula +fraternal +fraternalism +fraternalist +fraternality +fraternally +fraternate +fraternation +fraternism +fraternitas +fraternities +fraternize +fraternized +fraternizer +fraternizes +fraternizing +fratery +fratia +fraticelli +fraticellian +fraties +fratority +fratriage +fratricelli +fratricidal +fratricide +fratricides +fratry +frats +fraud +fraudful +fraudfully +fraudless +fraudlessly +fraudproof +frauds +fraudulence +fraudulency +fraudulently +frauen +frauenthal +fraughan +fraught +fraughted +fraughts +fraulein +frauleins +fraulichen +fraunhofer +fraunhofers +fraunhoffer +fraus +fraustein +fravel +frawley +frawn +fraxetin +fraxin +fraxinella +fraxinus +fray +frayda +frayed +frayedly +frayedness +fraying +frayings +frayle +frayn +frayne +frayproof +frays +fraze +frazee +frazer +frazeysburg +frazier +frazierpark +frazil +frazzeled +frazzled +frazzles +frazzling +frbs +frcc +frden +frea +freak +freakdom +freaked +freakery +freakful +freakier +freakiest +freakily +freakiness +freaking +freakishly +freakishness +freakout +freakouts +freaks +freaky +frealaf +fream +frears +freath +freatures +freawine +frechet +frechette +freck +frecken +freckened +frecket +freckled +freckledness +freckleproof +freckles +frecklier +freckliest +freckling +frecklish +freckly +fred +freda +fredaine +fredd +freddi +freddie +freddy +fredegundis +fredelia +fredemo +fredenburgh +freder +frederic +frederica +frederich +frederici +fredericia +frederick +fredericka +frederickson +frederico +frederik +frederika +frederiksen +frederiksted +frederique +fredersen +fredette +fredi +fredia +frediani +fredine +fredman +frednet +fredo +fredonia +fredra +fredric +fredrich +fredricite +fredrick +fredricks +fredrickson +fredrik +fredrika +fredriksen +fredrikson +fredriksson +fredrikstad +freds +freduced +fredville +free +freebee +freebees +freebie +freebies +freebit +freeboard +freebooted +freebooter +freebooters +freebootery +freebooting +freeboots +freeborn +freebsd +freeburg +freeburn +freeby +freecell +freed +freedie +freedman +freedom +freedoms +freedwoman +freefd +freefloating +freefolk +freefone +freeforall +freeform +freehand +freehanded +freehandedly +freehearted +freehold +freeholder +freeholders +freeholding +freeholds +freeing +freeings +freeish +freek +freekeyware +freekirker +freel +freela +freelage +freelance +freelanced +freelances +freelancing +freeland +freelander +freeldptr +freeley +freeling +freeload +freeloaded +freeloader +freeloaders +freeloading +freeloads +freelords +freeloving +freelovism +freely +freeman +freemandyson +freemansburg +freemanship +freemanspur +freemantle +freemarket +freemartin +freemason +freemasonic +freemasonism +freemasonry +freemasons +freemem +freen +freend +freeness +freenet +freeport +freer +freerun +frees +freese +freeset +freesia +freesoft +freesoil +freesp +freespac +freespace +freespeech +freespoken +freestanding +freestate +freestones +freestyle +freestylers +freet +freeth +freethinker +freethinkers +freethinking +freetown +freetrader +freetrial +freety +freeunion +freeville +freewar +freeward +freeware +freeway +freeways +freewheeler +freewheelers +freewheeling +freewill +freewoman +freezable +freeze +freezed +freezedry +freezer +freezers +freezes +freezing +freezingly +fregata +fregatae +fregatidae +frege +fregosa +fregues +frehel +frei +freia +freibergite +freida +freiden +freidkin +freight +freightage +freighted +freighter +freighters +freighting +freightless +freightment +freights +freightyard +freihart +freiheit +freimark +freir +freire +freiss +freistatt +freit +freitag +freitas +freity +freiwald +freixe +freja +frelimo +frell +fremantle +fremd +fremdly +fremdness +fremen +fremescence +fremescent +fremitus +fremlin +fremont +fremontia +frempong +fremyear +frena +frenal +frenatae +frenate +french +frencham +frenchbased +frenchboro +frenchburg +frenchcamp +frenchcreek +frenched +frenches +frenchglen +frenchgulch +frenchhorn +frenchie +frenchify +frenchily +frenchiness +frenching +frenchism +frenchize +frenchless +frenchlick +frenchly +frenchness +frenchowned +frenchtown +frenchville +frenchwise +frenchwoman +frenchwomen +frenchy +frendo +frendov +freneau +frenetic +frenetical +frenetically +frenetics +frenette +frenghi +frenkel +freno +frenssen +frenular +frenulum +frenum +frenzelite +frenzied +frenziedly +frenzies +frenzily +frenzy +frenzying +freq +freqs +freqsome +freqtape +frequence +frequencies +frequency +frequent +frequentable +frequentage +frequented +frequenter +frequenters +frequenting +frequentist +frequently +frequentness +frequents +freqview +frere +freres +frerichs +frerking +frescade +frescoed +frescoer +frescoers +frescoes +frescoing +frescoist +frescoists +frescos +fresh +freshed +freshen +freshened +freshener +fresheners +freshening +freshens +fresher +freshes +freshest +freshet +freshets +freshhearted +freshie +freshing +freshish +freshly +freshmanhood +freshmanic +freshmanship +freshness +freshwoman +fresison +fresnay +fresne +fresnels +fresno +freson +fresson +fret +fretful +fretfully +fretfulness +fretless +frets +fretsaw +fretsaws +fretsome +frett +frettage +frettation +frette +fretted +fretter +fretters +fretteth +frettier +frettiest +fretting +frettingly +fretty +fretum +fretways +fretwise +fretwork +fretworked +fretworks +fretz +freuchen +freud +freudenberg +freudian +freudianism +freudians +freudism +freudist +freudlose +freund +frew +frewen +frewer +frewsburg +frey +freya +freyalite +freycinetia +freyd +freyermuth +freyja +freyler +freyman +freyndikh +freyr +fria +friability +friableness +friand +friandise +friant +friar +friarbird +friarhood +friaries +friarling +friarly +friars +friarshill +friarspoint +friary +frib +fribble +fribbleism +fribbler +fribblery +fribbling +fribblish +fribby +friberg +fribourg +fric +fricandeau +fricandel +fricassee +fricasseed +fricasseeing +fricassees +frication +fricatives +fricativized +fricatrice +fricke +fricken +fricker +fricks +friction +frictionable +frictionally +frictionize +frictionless +frictions +frid +frida +friday +fridayharbor +fridays +fridel +fridell +friderici +fridge +fridges +fridh +fridila +fridley +fridstool +frie +friebus +fried +frieda +friedberg +friedcake +friedel +friedelite +friedemann +frieden +friedenberg +friedens +friedensburg +frieder +friederike +friedheim +friedhelm +friedkin +friedl +friedman +friedmantype +friedns +friedo +friedrich +friedrichs +friedrichson +friedrick +friel +friell +friels +friend +friended +friending +friendless +friendlier +friendlies +friendliest +friendlike +friendlily +friendliness +friendliwise +friendly +friendman +friends +friendship +friendships +friendsville +friendswood +frienly +friens +frieohdz +frier +frieren +friers +frierson +fries +friese +frieseite +friesen +friesian +friesic +friesish +friesland +frieze +friezed +friezer +friezes +friezing +friezy +frig +frigage +friganza +frigates +frigatoon +frigga +frigged +frigging +friggle +fright +frightable +frighted +frighten +frightenable +frightened +frightenedly +frightener +frightening +frightens +frighter +frightfully +frighting +frightless +frightment +frights +frighty +frigid +frigidarium +frigidities +frigidity +frigidly +frigidness +frigiferous +frigola +frigolabile +frigoric +frigorific +frigorifical +frigorify +frigorimeter +frigostable +frigotherapy +frigs +frija +frijol +frijole +frijoles +frijolillo +frijolito +frike +frikke +frill +frillback +frilled +friller +frillers +frillery +frillier +frilliest +frillily +frilliness +frilling +frillings +frills +frilly +frim +frimaire +frined +frinel +fringe +fringed +fringeflower +fringeless +fringelet +fringelike +fringent +fringepod +fringes +fringetail +fringier +fringiest +fringilla +fringillidae +fringilline +fringilloid +fringing +fringy +frink +frio +friode +friolin +friona +frioulan +frioulian +frip +fripperer +fripperies +frippery +frisbee +frisbees +frisbie +frisby +frisca +frischem +frischknecht +frisco +friscocity +friscoe +frisen +frisesomorum +frisette +friseur +frishberg +frisia +frisian +frisii +frisk +frisked +frisker +friskers +frisket +friskets +friskful +friskier +friskiest +friskily +friskiness +frisking +friskingly +frisks +frisolee +frison +frisson +frissons +frissung +frist +fristedt +frisure +frit +fritch +frith +frithborh +frithbot +frithles +frithsoken +frithstool +frithwork +fritillaria +fritiniancy +fritiof +fritlof +friton +frits +fritsch +fritt +fritted +frittered +fritterer +fritterers +frittering +fritters +fritterware +fritting +fritton +fritts +fritz +fritzel +fritzi +fritzie +fritzthecat +friulano +friulian +frivilously +frivol +frivoled +frivoler +frivolers +frivoling +frivolism +frivolist +frivolities +frivolize +frivolled +frivolling +frivolous +frivolously +frixion +friz +frizado +frize +frizer +frizettes +frizz +frizzed +frizzell +frizzer +frizzers +frizzes +frizzier +frizziest +frizzily +frizziness +frizzing +frizzle +frizzled +frizzlefried +frizzler +frizzlers +frizzles +frizzlier +frizzliest +frizzling +frizzly +frizzy +frna +frnstruction +froast +frob +frobbed +frobbing +frobbotzim +frobbozz +frobe +frobel +froberg +frobisher +frobn +frobnicate +frobnikayt +frobnits +frobnitz +frobnitzem +frobnitzm +frobnool +frobnule +froboess +frobozz +frobs +frobule +frochard +frochlich +frocked +frocking +frockless +frocklike +frockmaker +frocks +frockt +froda +frode +frodo +frodsham +froe +froebe +froebelian +froebelism +froebelist +froehlich +froehling +froeling +froes +froesch +froesner +frog +frogbit +frogeater +frogeye +frogeyed +frogeyes +frogface +frogfish +frogfishes +frogflower +frogfoot +frogged +froggery +frogget +froggie +froggier +froggies +froggiest +frogginess +frogging +froggish +froggy +froghood +froghopper +frogland +frogleaf +frogleg +froglet +froglets +frogley +froglike +frogling +frogman +frogmen +frogmore +frogmouth +frognose +frogs +frogskin +frogstool +frogtongue +frogwort +frohike +frohna +froid +froide +froise +frolicful +frolich +frolick +frolicked +frolicker +frolickers +frolicking +frolicky +frolicly +frolicness +frolics +frolicsome +frolicsomely +froll +frollo +frolov +from +froma +fromage +fromages +froman +fromberg +frome +fromfile +fromkis +fromm +frommer +fromplex +frompos +fromputer +fromsett +fromthat +fromthe +fromvisual +fromward +fromwards +fromyour +fron +froncek +fronczewski +frond +frondage +fronded +frondent +fronder +frondesce +frondescence +frondescent +frondeur +frondiferous +frondiform +frondigerous +frondivorous +frondlet +frondose +frondosely +frondous +frondozo +fronds +front +frontad +frontager +frontages +frontalis +frontality +frontally +frontals +frontaura +frontbencher +frontdoor +fronted +frontenac +frontend +frontends +fronter +frontera +frontier +frontierlike +frontierman +frontiers +frontiersmen +frontignan +fronting +frontingly +frontispiece +frontl +frontless +frontlessly +frontlet +frontlets +frontloaders +frontman +frontolysis +frontomallar +frontomental +frontonasal +frontpage +frontpanel +frontpiece +frontroyal +fronts +frontshiftl +frontsman +frontspiece +frontspieces +frontstall +frontward +frontwards +frontways +frontwise +froom +frore +frory +frosh +frosini +fross +frossard +frosst +frost +frostation +frostbird +frostbit +frostbites +frostbiting +frostbitten +frostbound +frostbow +frostburg +frostburn +frosted +frosteds +froster +frostfish +frostflower +frostia +frostier +frostiest +frostily +frostiness +frosting +frostings +frostless +frostlike +frostmof +frostnip +frostnipped +frostproof +frostroot +frosts +frostweed +frostwork +frostwort +frosty +frot +frota +frothed +frother +frothi +frothier +frothiest +frothily +frothiness +frothing +frothingham +frothless +froths +frothsome +frotton +frotz +frotzed +frotzt +froud +froude +froufrou +froufrous +frough +froughy +froukje +froukou +frounce +frounceless +frouncing +frouzy +frow +froward +frowardly +frowardness +frower +frowl +frowley +frown +frowned +frowner +frowners +frowney +frownful +frowning +frowningly +frownless +frowns +frowny +frowsier +frowst +frowstier +frowstiest +frowstily +frowstiness +frowsty +frowsy +frowy +frowze +frowzier +frowziest +frowzily +frowziness +frowzled +frowzly +froy +froydis +froze +frozen +frozenly +frozenness +frqfix +frqgen +frqview +frta +frucci +frucht +fructed +fructescence +fructescent +fructidor +fructiferous +fructified +fructifier +fructifies +fructiform +fructifying +fructiparous +fructivorous +fructoses +fructoside +fructuary +fructuosity +fructuous +fructuously +frueh +fruehauf +frueher +fruen +frug +frugal +frugalism +frugalist +frugalities +frugality +frugally +frugalness +fruges +fruggan +frugged +fruggeri +frugging +frugiferous +frugivora +frugivorous +frugs +fruhbotz +fruhboz +fruilian +fruit +fruita +fruitade +fruitage +fruitages +fruitarian +fruitbat +fruitbearing +fruitcake +fruitcakes +fruitdale +fruited +fruiter +fruiterer +fruiterers +fruiteress +fruiters +fruitery +fruitful +fruitfully +fruitfulness +fruitgrower +fruitgrowing +fruithurst +fruitier +fruitiest +fruitiness +fruiting +fruitions +fruitist +fruitive +fruitland +fruitless +fruitlessly +fruitlet +fruitlets +fruitling +fruitport +fruits +fruitstalk +fruittime +fruitvale +fruitwise +fruitwoman +fruitwood +fruitworm +fruity +fruityloops +fruitz +fruma +frumentation +frumenties +frumenty +frumerie +frumious +frump +frumpery +frumpier +frumpiest +frumpily +frumpiness +frumpish +frumpishly +frumpishness +frumple +frumps +frumpy +frunze +frush +frusta +frustrate +frustrated +frustrately +frustrates +frustrateth +frustrating +frustration +frustrations +frustrative +frustratory +frustule +frustulent +frustulose +frustums +fruteau +frutescence +frutescent +fruticetum +fruticose +fruticous +fruticulose +frutify +frutti +fryar +fryburg +fryd +frydach +frydlova +frydman +frydtberg +fryeburg +fryer +fryers +frying +fryingpan +fryk +frypan +frypans +frysinger +frysk +fryst +frystown +fsadm +fsasya +fsck +fscocos +fseek +fsin +fsincos +fsln +fsmdiform +fsol +fsquares +fsstayontop +fsstnd +fssup +fstab +fstatistic +fstatistics +fstc +fstore +fstyp +fsus +ftab +ftan +ftatoteeta +ftbelvor +ftbhnrsn +ftbnhrsn +ftbragg +ftdevens +ftdougls +ftdrum +ftell +fter +ftest +fteustis +ftgate +ftgdah +ftgillem +ftgreely +fthiotis +fthood +ftime +ftknox +ftlee +ftlewis +ftlvnwrt +ftmccoy +ftmeade +ftncmd +ftnerr +ftour +ftout +ftover +ftpcontrol +ftpd +ftpedit +ftping +ftpmax +ftpspy +ftpsrv +ftpsync +ftpusers +ftpweb +ftpwolf +ftriley +ftrucker +ftsc +ftshaftr +ftsherdn +ftsmhstn +fttest +ftwnwght +fuad +fuan +fubar +fubbed +fubbing +fubby +fuberlin +fubini +fubinitype +fubsier +fubsy +fuca +fucaceae +fucaceous +fucales +fucate +fucation +fucatious +fuccini +fuchow +fuchs +fuchsberger +fuchsia +fuchsian +fuchsias +fuchsin +fuchsine +fuchsinophil +fuchsite +fuchsone +fuchye +fuci +fucik +fuciletto +fucini +fucinita +fuciphagous +fucito +fuck +fucka +fucked +fucker +fuckin +fucking +fuckoff +fucks +fuckup +fuckware +fucni +fucoid +fucoidal +fucoideae +fucosan +fucose +fucous +fucoxanthin +fucsok +fuction +fuctionality +fucus +fudd +fuddie +fuddle +fuddled +fuddler +fuddles +fuddling +fudds +fuder +fudge +fudged +fudger +fudges +fudging +fudgy +fuds +fuegian +fuego +fuehlt +fuehrer +fuehrers +fuel +fueled +fueler +fuelers +fueling +fuelizer +fuelled +fueller +fuellers +fuelling +fuels +fuenf +fuentes +fuer +fuera +fuerbringer +fuerst +fuerstenberg +fuerte +fuerza +fuetterer +fufala +fuff +fuffy +fuga +fugacious +fugaciously +fugacity +fugally +fugar +fugard +fugatos +fuget +fugged +fuggier +fugging +fuggly +fuggy +fugient +fugio +fugit +fugitate +fugitation +fugitive +fugitively +fugitiveness +fugitives +fugitivism +fugitivity +fugle +fugleman +fuglemanship +fugler +fugs +fugu +fugued +fugues +fuguing +fuguist +fuguists +fuhd +fuhglee +fuhrer +fuhrers +fuhrmann +fuidhir +fuirdays +fuirena +fujayrah +fuji +fujian +fujianese +fujii +fujikawa +fujiki +fujikoshi +fujimagari +fujimaki +fujimori +fujimoto +fujino +fujioka +fujis +fujita +fujiwara +fujiyama +fujuge +fukac +fukaki +fukarel +fukasaku +fuken +fukien +fukienese +fukuda +fukui +fukunaga +fukuoka +fukushima +fukutomi +fula +fulacunda +fulah +fulakunda +fulani +fulannara +fulas +fulbe +fulchignoni +fulciform +fulciment +fulcra +fulcral +fulcrate +fulcrumage +fulcrums +fulda +fuldmaegtig +fuleiro +fulero +fulfil +fulfill +fulfilled +fulfiller +fulfillers +fulfilling +fulfillment +fulfillments +fulfills +fulfilment +fulfils +fulford +fulful +fulfulde +fulfullment +fulgencio +fulgent +fulgently +fulgentness +fulgid +fulgide +fulgidity +fulgor +fulgora +fulgorid +fulgoridae +fulgoroidea +fulgorous +fulgur +fulgural +fulgurant +fulgurantly +fulgurata +fulgurate +fulgurating +fulguration +fulgurator +fulgurite +fulgurous +fulham +fuli +fulica +fulicinae +fulicine +fuliginosity +fuliginous +fuliginously +fuligula +fuligulinae +fuliguline +fuliiru +fulilwa +fuliro +fulirwa +fulk +fulksrun +fulkunda +full +fullager +fullam +fullbacks +fullbore +fullcharged +fullcoll +fullcolored +fulldelphi +fulldisk +fulled +fuller +fullered +fulleries +fullering +fullers +fullery +fullest +fullface +fullfeatured +fullfed +fullfil +fullflavored +fullfraught +fullgrown +fullhearted +fullhouse +fulling +fullish +fullladen +fullmer +fullmoon +fullmouth +fullmouthed +fullness +fullnesses +fullo +fullom +fullonian +fullpath +fullrank +fulls +fullscreen +fullsized +fullstack +fullterm +fulltilt +fulltime +fulltoned +fulltrottle +fullum +fullweek +fullword +fullwords +fully +fulmar +fulmarus +fulmer +fulmicotton +fulminancy +fulminant +fulminated +fulminates +fulminating +fulmination +fulminations +fulminator +fulminatory +fulmine +fulmineous +fulminic +fulminous +fulminurate +fulminuric +fulness +fulnesses +fulnio +fulop +fulse +fulshear +fulsome +fulsomely +fulsomeness +fulth +fulton +fultondale +fultonham +fultonville +fults +fultz +fuluka +fulup +fulvene +fulvescent +fulvia +fulvid +fulvidness +fulvien +fulvio +fulvous +fulwa +fulyie +fulzie +fuma +fumaca +fumacious +fumado +fumage +fumagine +fumago +fumarate +fumaria +fumariaceae +fumariaceous +fumaric +fumarine +fumarium +fumaroid +fumaroidal +fumarole +fumaroles +fumarolic +fumaryl +fumatorium +fumatory +fumbled +fumbler +fumblers +fumbles +fumbling +fume +fumed +fumeless +fumer +fumeroot +fumers +fumerton +fumes +fumet +fumets +fumette +fumettes +fumewort +fumid +fumiduct +fumier +fumiest +fumiferana +fumiferous +fumigants +fumigate +fumigated +fumigates +fumigating +fumigation +fumigations +fumigator +fumigatorium +fumigators +fumigatory +fumiko +fumily +fuminess +fuming +fumingly +fumio +fumistery +fumitory +fumiyo +fumiyoshi +fumose +fumosity +fumous +fumously +fumy +funa +funafuti +funai +funambulate +funambulator +funambulic +funambulism +funambulist +funambulo +funamoto +funaria +funariaceae +funariaceous +funato +func +funchal +funchess +funcinpec +funcions +function +functional +functionally +functionals +functionate +functioned +functioning +functionize +functionless +functions +functionsin +functors +fund +fundable +fundada +fundal +fundament +fundamental +fundamentals +fundatorial +fundatrix +funded +funder +funderburg +funders +fundholder +fundi +fundic +fundiform +fundin +funding +fundis +funditor +fundless +fundmaster +fundmonger +fundong +fundraising +funds +fundulinae +funduline +fundulus +fundungi +fundus +fundy +funebrial +funeral +funeralize +funerals +funerary +funereally +funes +funest +funet +funfair +funfairs +fung +fungaceous +fungales +fungate +fungation +funge +fungia +fungian +fungibility +fungible +fungic +fungicidal +fungicidally +fungicides +fungicolous +fungiferous +fungiform +fungilliform +fungin +fungistatic +fungitoxic +fungivorous +fungo +fungoidal +fungoids +fungological +fungologist +fungology +fungom +fungor +fungose +fungosity +fungous +fungur +fungus +fungused +funguses +funguslike +fungusy +fungwe +funhouse +funiara +funicello +funicle +funicular +funiculars +funiculate +funicule +funiculitis +funiculus +funiform +funika +funis +funje +funk +funke +funked +funkenstein +funker +funkers +funkhauser +funkia +funkier +funkiest +funkiness +funking +funks +funkstown +funktion +funktionen +funkvist +funky +funmaker +funmaking +funned +funneled +funnelform +funneling +funnelled +funnellike +funnelling +funnels +funnelwise +funnier +funnies +funniest +funnily +funniment +funniness +funning +funny +funnybugs +funnyman +funnymen +funori +funpoker +funster +funston +funt +funtionality +funtumia +fuortes +fupimoto +fuqing +fuqua +furacious +furacity +fural +furaldehyde +furan +furanoid +furapawa +furat +furawi +furazan +furazane +furbelow +furbelows +furbish +furbishable +furbished +furbisher +furbishes +furbishing +furbishment +furca +furcal +furcate +furcated +furcately +furcates +furcation +furcellaria +furcellate +furciferine +furciferous +furciform +furcraea +furcula +furculae +furcular +furculum +furdel +furdoonji +furet +furfooz +furfur +furfuraceous +furfural +furfuramide +furfuran +furfuration +furfurine +furfuroid +furfurole +furfurous +furfuryl +furgerson +furia +furiant +furibund +furied +furies +furify +furil +furilic +furio +furiosa +furiosity +furioso +furious +furiouser +furiously +furiousness +furison +furlable +furlan +furled +furler +furlers +furless +furlin +furling +furlongs +furloughed +furloughing +furloughs +furlow +furls +furmaniak +furnace +furnaced +furnacelike +furnaceman +furnacer +furnaces +furnacing +furnacite +furnage +furnariidae +furnariides +furnarius +furnbacher +furneaux +furnell +furner +furnesa +furness +furnio +furnish +furnishable +furnished +furnisher +furnishes +furnishing +furnishings +furnishment +furniture +furnitures +furodiazole +furoic +furoid +furoin +furole +furomethyl +furomonazole +furona +furor +furore +furores +furors +furoy +furphy +furqan +furred +furriered +furrieries +furriers +furriery +furriest +furrily +furriner +furriners +furriness +furring +furrings +furrow +furrowed +furrower +furrowers +furrowing +furrowless +furrowlike +furrows +furrowy +furrukh +furry +furs +furse +furst +furstone +fursum +furtado +furter +furth +further +furtherance +furtherances +furthered +furtherer +furtherest +furthering +furtherly +furthermore +furthers +furthersome +furthest +furtive +furtively +furtiveness +furu +furuawa +furud +furuncle +furuncles +furuncular +furunculoid +furunculosis +furunculous +furupagha +furuya +furvis +fury +furyl +furzechat +furzed +furzeling +furzery +furzes +furzetop +furzier +furzy +fusain +fusarial +fusariose +fusariosis +fusarium +fusarole +fusate +fusc +fusca +fuscescent +fuscin +fusco +fuscohyaline +fuscous +fuseboard +fused +fusee +fusees +fusel +fuselage +fuselages +fuseless +fuseli +fusels +fuseplug +fuses +fusht +fusibility +fusibleness +fusibly +fusicladium +fusicoccum +fusier +fusiformis +fusil +fusilade +fusilades +fusile +fusileer +fusileers +fusilier +fusiliers +fusillade +fusilladed +fusillades +fusillading +fusilly +fusils +fusing +fusinist +fusion +fusional +fusionism +fusionist +fusionless +fusions +fusl +fusoid +fuson +fuss +fussbudget +fussbudgets +fussed +fussell +fusser +fussers +fusses +fussey +fussier +fussiest +fussify +fussily +fussiness +fussing +fussock +fusspot +fusspots +fust +fustanella +fustee +fuster +fusteric +fustet +fustian +fustianish +fustianist +fustianize +fustians +fustic +fustics +fustier +fustiest +fustigate +fustigation +fustigator +fustigatory +fustilugs +fustily +fustin +fustiness +fustle +fustukian +fusty +fusulina +fusuma +fusure +fusus +futa +futang +futchel +futcher +fute +futh +futhermore +futhorc +futile +futilely +futileness +futilitarian +futilities +futility +futilize +futtermassel +futtock +futu +futuna +futunaaniwa +futunan +futura +futural +future +futureless +futureness +futures +futuresplach +futuric +futuris +futurism +futurisms +futurist +futuristic +futurists +futurities +futurition +futurity +futurize +futuro +futurologist +futurology +futwa +futz +fuumu +fuuta +fuwalda +fuye +fuyu +fuyuge +fuyughe +fuyuko +fuzal +fuze +fuzed +fuzee +fuzees +fuzes +fuzhou +fuzil +fuzils +fuzing +fuzz +fuzzball +fuzzbox +fuzzbubble +fuzzed +fuzzes +fuzzier +fuzziest +fuzzily +fuzzines +fuzziness +fuzzing +fuzzle +fuzzy +fvalues +fverbs +fwagoumak +fwai +fwait +fwend +fwendth +fwpas +fwpco +fwpreg +fwprog +fwptools +fxedit +fyam +fydor +fyedka +fyer +fyfe +fyffe +fyke +fyle +fylfot +fylfots +fylke +fylker +fyodor +fyodorina +fyodorov +fyodorova +fyrd +fyrst +fysh +fyssoun +fywo +gaadangme +gaafu +gaal +gaalpu +gaam +gaanda +gaandu +gaar +gaas +gaash +gaastra +gaawro +gaba +gabadi +gabardines +gabare +gabas +gabasov +gabba +gabbai +gabbard +gabbatha +gabbed +gabber +gabbers +gabbey +gabbi +gabbie +gabbier +gabbiest +gabbiness +gabbing +gabbled +gabblement +gabbler +gabblers +gabbles +gabbling +gabbo +gabbra +gabbroic +gabbroid +gabbroitic +gabbros +gabbs +gabby +gabe +gabel +gabelle +gabelled +gabelleman +gabeller +gaberdine +gaberdines +gabere +gaberi +gaberlunzie +gabert +gabes +gabey +gabfest +gabfests +gabgab +gabi +gabiano +gabie +gabin +gabino +gabion +gabionade +gabionage +gabioned +gabison +gablai +gablatores +gableboard +gabled +gablelike +gabler +gables +gablet +gablewise +gabling +gablock +gabo +gabobora +gabold +gabon +gabonese +gaboon +gabor +gaborone +gabou +gabourel +gabourie +gaboury +gabra +gabralla +gabri +gabriel +gabriela +gabriele +gabriell +gabriella +gabrielle +gabriellia +gabriello +gabrielrache +gabriels +gabrila +gabrio +gabrova +gabs +gabu +gabunese +gabutamon +gaby +gace +gaceta +gach +gachancipa +gachet +gachikolo +gackle +gaconnier +gada +gadaba +gadabout +gadabouts +gadabuke +gadabursi +gadaisu +gadala +gadang +gadarene +gadarenes +gadaria +gadba +gadbas +gadbee +gadbois +gadbush +gadd +gaddang +gadded +gadden +gadder +gadders +gaddest +gaddi +gaddiel +gadding +gaddingly +gaddis +gaddish +gaddishness +gaddson +gaddsons +gaddyali +gade +gaden +gades +gadeyev +gadeyne +gadflies +gadge +gadger +gadget +gadgeteer +gadgeteers +gadgetries +gadgets +gadgety +gadhang +gadhavali +gadhawala +gadher +gadi +gadid +gadidae +gadin +gading +gadinine +gadio +gaditan +gadite +gadites +gadiyo +gadling +gadman +gado +gadoid +gadoidea +gadolin +gadolinia +gadolinic +gadolinite +gadouchis +gadre +gadroon +gadroonage +gads +gadsbodikins +gadsbud +gadsby +gadsden +gadsdon +gadslid +gadsman +gadsson +gadsup +gadswoons +gadu +gaduin +gaduliya +gadus +gaduwa +gadwahi +gadwall +gadyaga +gadyri +gadzik +gadzinowski +gadzooks +gaea +gaebel +gaefke +gaejawa +gael +gaeldom +gaeli +gaelic +gaelicism +gaelicist +gaelicize +gaelle +gaels +gaeltacht +gaen +gaenssler +gaertner +gaertnerian +gaet +gaetan +gaetane +gaetano +gaete +gaetulan +gaetuli +gaetulian +gaetz +gafat +gafatinya +gaffed +gaffer +gaffers +gaffes +gaffey +gaffing +gaffkya +gaffle +gaffney +gaffs +gaffsman +gafsnet +gaftea +gafuku +gafunkel +gaga +gagadu +gagaemauga +gagaifomauga +gagan +gaganidze +gaganov +gagarin +gagate +gagatl +gagauz +gagauzi +gageable +gaged +gagee +gageite +gagelike +gager +gagers +gagership +gages +gagetown +gagged +gagger +gaggers +gaggery +gagging +gaggle +gaggled +gaggler +gaggles +gaggling +gaggsy +gaging +gagliardi +gagman +gagmen +gagne +gagnier +gagnoa +gagnoabete +gagnon +gagnoua +gagool +gagoola +gagor +gagoro +gagou +gagouts +gagroot +gags +gagster +gagsters +gagtooth +gagu +gagudju +gahagan +gaham +gahan +gahar +gahir +gahlot +gahn +gahnite +gahom +gahore +gahr +gahri +gahrwali +gahuku +gahunia +gaia +gaialive +gaiarsa +gaiassa +gaibandha +gaidasu +gaididj +gaieties +gaiety +gaigan +gaige +gaiger +gaika +gaikundi +gaikunti +gail +gailard +gaile +gailey +gaili +gaillac +gaillard +gaily +gailya +gaime +gain +gaina +gainable +gainage +gainbirth +gaincall +gaincome +gaine +gained +gaineford +gainer +gainers +gaines +gainesboro +gainestown +gainful +gainfully +gainfulness +gaining +gainless +gainlessness +gainlier +gainliest +gainliness +gainly +gainor +gainotti +gains +gainsaid +gainsay +gainsayer +gainsayers +gainsaying +gainsays +gainsborough +gainsbourg +gainset +gainsome +gainspeaker +gainspeaking +gainst +gainstrive +gainsville +gainturn +gaintwist +gainyield +gaiotti +gaipa +gair +gaire +gairfish +gairin +gairish +gairy +gaiser +gaisling +gait +gaitan +gaitano +gaited +gaiter +gaiterless +gaiters +gaither +gaiting +gaito +gaits +gaius +gaize +gajda +gajdariya +gajendra +gajewski +gajibogumsu +gajila +gajili +gajjar +gajo +gajol +gajomang +gajowiak +gajzago +gaka +gakk +gakona +gakpa +gaktai +gakvari +gala +galaagu +galaba +galabia +galabiya +galabra +galabru +galabrue +galabu +galacaceae +galactagogue +galactan +galactase +galactemia +galactia +galactic +galactite +galactocele +galactohemia +galactoid +galactolipin +galactolysis +galactolytic +galactoma +galactometer +galactometry +galactonic +galactopathy +galactophore +galactopyra +galactorrhea +galactoscope +galactosemia +galactoside +galactosis +galactosuria +galacturia +galadima +galadon +galadriel +galagala +galaginae +galago +galah +galahad +galahads +galal +galam +galambe +galambi +galambos +galambu +galan +galanakis +galanas +galanchog +galang +galanga +galangal +galangin +galani +galant +galante +galanthus +galantine +galantsev +galantuomo +galany +galapago +galapagos +galas +galassia +galasso +galata +galatae +galatea +galateas +galati +galatia +galatian +galatians +galatic +galatikova +galavant +galavda +galavi +galax +galaxian +galaxias +galaxies +galaxiidae +galaxina +galaxy +galaxys +galba +galbahar +galban +galbanum +galbeed +galbo +galbraith +galbula +galbulae +galbulidae +galbulinae +galbulus +galcha +galchapamir +galchic +galdi +galdor +galdrim +galdwin +galdy +gale +galea +galeage +galeai +galeate +galeated +galebagla +galee +galeed +galeen +galeeny +galega +galegine +galei +galeid +galeidae +galeiform +galek +galela +galelaloloda +galembi +galempung +galen +galenapark +galenas +galene +galenian +galenic +galenical +galenicals +galenism +galenist +galenoid +galento +galeodes +galeodidae +galeoid +galeopsis +galeorchis +galeorhinus +galeproof +galera +galericulate +galerum +galerus +gales +galesaurus +galesburg +galesferry +galeshi +galesville +galet +galeton +galets +galeus +galeva +galeville +galevo +galewort +galey +galeya +galffi +galga +galgadungu +galgaduun +galgal +galgen +galgenvogel +galguduud +galgulidae +gali +galia +galiatsos +galibi +galice +galiche +galicia +galician +galictis +galidia +galidictis +galien +galik +galil +galila +galilaean +galilaeans +galilea +galilean +galilee +galilees +galilei +galileo +galili +galim +galimathias +galimatias +galina +galinaceous +galindo +galingale +galinsoga +galion +galiongee +galionji +galiot +galipeau +galipidine +galipine +galipoidin +galipoidine +galipoipin +galipot +galits +galitzine +galium +galivant +galiwinku +galka +galke +gall +galla +gallab +gallagher +gallah +gallaher +gallais +gallamine +galland +gallandra +gallanilide +gallant +gallanted +gallanting +gallantize +gallantly +gallantness +gallantries +gallants +gallantyshow +gallard +gallardo +gallate +gallatin +gallature +gallaudet +gallauner +gallavotti +gallaway +gallbladder +gallbladders +gallbush +galle +gallea +galleani +galleass +galled +gallegan +gallegher +gallegly +gallego +gallegos +gallein +gallen +gallenbeck +galleon +galleons +galler +galleria +gallerian +galleried +galleries +galleriidae +galleriies +gallery +gallerying +gallerylike +gallet +galleta +galletti +galley +galleyfoist +galleylike +galleyman +galleys +galleyworm +gallflies +gallflower +gallfly +galli +gallia +galliambic +galliambus +gallian +galliano +galliard +galliardise +galliardly +galliardness +galliards +galliass +gallic +gallican +gallicanism +gallicism +gallicisms +gallicize +gallicizer +gallicola +gallicolae +gallicole +gallicolous +gallied +gallien +gallier +gallies +galliferous +gallifilet +galliform +galliformes +gallify +galligan +galligaskin +galligaskins +gallim +gallimaufry +gallimore +gallina +gallinaceae +gallinacean +gallinacei +gallinaceous +gallinae +gallinago +gallinas +gallinazo +galline +gallines +galling +gallinger +gallingly +gallingness +gallinipper +gallinula +gallinules +gallinulinae +gallinuline +gallinya +gallio +gallion +galliot +gallipoli +gallipolis +gallipot +gallirallus +gallisa +gallisin +gallitzin +galliums +gallivanted +gallivanter +gallivanters +gallivanting +gallivants +gallivat +gallivert +gallivorous +galliwasp +gallman +gallnut +gallnuts +gallo +galloa +gallocyanin +gallocyanine +galloflavine +galloglass +galloman +gallomania +gallomaniac +galloner +gallong +galloni +gallons +galloon +gallooned +galloot +galloots +gallop +gallopade +galloped +galloper +galloperdix +gallopers +gallophile +gallophilism +gallophobe +gallophobia +galloping +gallops +galloptious +galloromance +gallot +gallotannate +gallotannic +gallotannin +galloudec +gallous +gallouzi +gallovidian +gallow +galloway +gallowglass +gallows +gallowses +gallowsmaker +gallowsness +gallowsward +gallqudet +galls +gallstone +gallstones +gallucci +gallupville +gallurese +galluses +gallux +galluzzi +gallweed +gallwort +gally +gallybagger +gallybeggar +gallycrow +galmes +galmond +galo +galoa +galoche +galois +galoisian +galole +galoli +galoma +galong +galoot +galoots +galop +galopade +galops +galore +galores +galosh +galoshe +galoshed +galoshes +galovitch +galp +galpin +galravage +galravitch +gals +galslight +galsworthy +galt +galtee +galton +galtonia +galtonian +galtonwatson +galu +galua +galuba +galuchat +galuewa +galumpang +galumph +galumphed +galumphing +galumphs +galumptious +galung +galuppi +galusha +galuth +galva +galvan +galvanical +galvanically +galvanist +galvanize +galvanized +galvanizer +galvanizers +galvanizes +galvanizing +galvano +galvanoglyph +galvanograph +galvanology +galvanolysis +galvanometry +galvanoscope +galvanoscopy +galvanotaxis +galvanotonic +galvao +galvarino +galvaxdaxa +galvayne +galvayning +galves +galveston +galvez +galvin +galwa +galway +galways +galwegian +galwey +galwinnath +galya +galyac +galyak +galyn +galziekte +gama +gamache +gamadge +gamadia +gamaewe +gamahe +gamai +gamale +gamaliel +gamana +gamargu +gamari +gamarnik +gamashes +gamasid +gamasidae +gamasoidea +gamati +gamawa +gamb +gamba +gambade +gambadi +gambado +gambaga +gambai +gambang +gambar +gambaroff +gambas +gambashidze +gambaye +gambeer +gambela +gambelli +gambeson +gambet +gambette +gambi +gambia +gambian +gambians +gambias +gambier +gambina +gambini +gambino +gambir +gambist +gambits +gambitt +gamblai +gamble +gambled +gambler +gamblers +gambles +gamblesome +gambling +gambo +gambodic +gamboge +gambogian +gambogic +gamboised +gambola +gambold +gamboled +gamboling +gambolled +gambolling +gambols +gamboma +gambon +gamboura +gambrel +gambreled +gambrills +gambroon +gambusia +gambusias +gambwe +gamdeboo +gamdugun +game +gamebag +gameball +gamecocks +gamecraft +gamed +gameful +gamehack +gamehost +gamei +gamekeeper +gamekeepers +gamekeeping +gamelan +gamelang +gamelans +gameless +gamelike +gamelion +gamelotte +gamely +gamene +gameness +gameoriented +gamephones +gameplaying +gamer +gamera +gamergou +gamergu +gamero +gamers +gamerz +games +gamesmanship +gamesome +gamesomely +gamesomeness +gamespy +gamest +gamester +gamesters +gamestress +gameta +gametal +gametange +gametangium +gamete +gametes +gametic +gametically +gametocyst +gametocyte +gametogenic +gametogenous +gametogeny +gametogonium +gametogony +gametoid +gametophagia +gametophore +gametophyll +gametophyte +gametophytic +gamey +gamezzzz +gamgee +gamic +gamici +gamidge +gamier +gamiest +gamil +gamila +gamilaraay +gamilaroi +gamily +gamine +gamines +gaminesque +gaminess +gaming +gamings +gamini +gaminish +gamins +gamit +gamkonora +gamlamo +gamlin +gamling +gamma +gammacad +gammacism +gammacismus +gammadims +gammadion +gammage +gammara +gammarid +gammaridae +gammarine +gammaroid +gammarus +gammas +gammatech +gammation +gammel +gammell +gammelost +gammer +gammerel +gammerstang +gammexane +gammick +gammock +gammon +gammoner +gammoning +gammons +gammy +gamo +gamobium +gamodesmic +gamodesmy +gamogenesis +gamogenetic +gamogony +gamolepis +gamomania +gamont +gamopetalae +gamopetalous +gamophagia +gamophagy +gamophyllous +gamor +gamore +gamori +gamosepalous +gamostele +gamostelic +gamostely +gamotropic +gamotropism +gamp +gampaha +gampel +gamphrel +gamprin +gampu +gams +gamsa +gamta +gamti +gamul +gamuts +gamy +gana +ganaan +ganade +ganado +ganadry +ganagana +ganagawa +ganakhwe +ganalbingu +ganale +ganam +ganan +ganancial +ganang +gananwa +ganapati +ganaq +ganati +ganawuri +gance +ganch +gancheva +ganching +ganda +gandaki +gandalei +gandalf +gandanju +gandar +gandeeville +gandered +ganderess +gandergoose +gandering +gandermooner +ganders +ganderteeth +gandett +gandhara +gandharva +gandhi +gandhiism +gandhism +gandhist +gandju +gando +gandole +gandolfo +gandomogou +gandon +gandua +gandul +gandum +gandurah +gandy +gane +ganef +ganefs +ganelon +ganesalingam +ganesh +ganet +ganetta +ganev +ganevs +ganful +gang +ganga +gangaly +gangan +ganganda +gangapari +gangapariya +gangava +gangbang +gangboard +gangdom +gange +ganged +gangel +gangemi +ganger +gangers +ganges +gangetic +ganggai +ganggalida +ganggalita +ganggang +ganging +gangism +ganglander +ganglands +ganglau +ganglia +gangliac +ganglial +gangliar +gangliate +gangliated +gangliectomy +ganglier +gangliest +gangliform +gangliglia +gangliglions +gangliitis +ganglioblast +gangliocyte +ganglioform +ganglioid +ganglioma +ganglionary +ganglionate +ganglioneure +ganglionic +ganglionitis +ganglionless +ganglions +gangly +gangman +gangmaster +gangoffour +gangola +gangomogou +gangotra +gangplanks +gangplow +gangplows +gangrel +gangrene +gangrened +gangrenes +gangrening +gangrenous +gangs +gangsman +gangsta +gangster +gangsterism +gangsters +gangte +gangtide +gangue +ganguela +ganguella +gangues +ganguly +gangum +gangwayman +gangways +gani +ganikhwe +ganilau +ganino +ganios +ganister +ganja +ganjam +ganjawle +ganjiro +ganjule +ganjuwa +gann +gannaway +ganner +ganness +gannets +gannon +gannonssun +gannvalley +ganocephala +ganocephalan +ganodont +ganodonta +ganodus +ganoid +ganoidal +ganoidean +ganoidei +ganoidian +ganoin +ganomalite +ganongga +ganophyllite +ganor +ganosis +ganowanian +ganpai +ganpetr +ganrango +gans +gansel +ganser +gansevoort +gansey +ganster +gansters +gansu +gansy +gant +ganta +gantang +gante +ganti +gantleted +gantleting +gantlets +gantline +gantner +ganton +gantries +gantry +gantryman +gants +gantsl +gantt +ganungrawang +ganye +ganymed +ganymede +ganymedes +ganz +ganza +ganzel +ganzen +ganzhorn +ganzi +ganzie +ganzo +ganzourgou +gaobughotu +gaol +gaolbird +gaoled +gaoler +gaolers +gaoling +gaols +gaon +gaonate +gaonic +gaoua +gaoual +gapa +gapagos +gapapaiwa +gaped +gapelta +gaper +gapers +gapes +gapeseed +gapeworm +gapi +gaping +gapingly +gapingstock +gapinji +gapinski +gapland +gapmills +gapo +gaposis +gapped +gapperi +gappier +gapping +gappy +gaps +gapun +gapville +gapy +gaqo +gara +garabato +garabet +garad +garadjiri +garadyari +garaganza +garage +garaged +garageman +garages +garaging +garaicoetxea +garaka +garakuta +garam +garama +garaman +garamba +garamond +garamvolgyi +garan +garance +garancine +garand +garant +garanty +garap +garapata +garardsfort +garas +garasia +garass +garatao +garati +garava +garavance +garawa +garawan +garawi +garay +garaza +garba +garbabi +garbage +garbages +garbanzo +garbanzos +garbardine +garbed +garbel +garbell +garber +garberville +garbill +garbing +garbini +garbis +garbish +garbitsch +garbleable +garbled +garbler +garblers +garbles +garbless +garbling +garbo +garboard +garboil +garbs +garbure +garby +garce +garces +garchery +garcia +garciasville +garcilaso +garcin +garcinia +garcon +garcons +garcos +gard +garda +gardakau +gardant +gardare +gardarov +gardashian +garday +garde +gardeen +garden +gardena +gardenable +gardenaes +gardencity +gardencraft +gardendale +gardened +gardener +gardeners +gardenership +gardenesque +gardenful +gardengrove +gardenhood +gardenias +gardenin +gardening +gardenize +gardenless +gardenlike +gardenly +gardenmaker +gardenmaking +gardenplain +gardens +gardenvalley +gardenville +gardenwards +gardenware +gardenwise +gardeny +garderobe +garderoyale +gardes +gardescu +gardevin +gardian +gardien +gardin +gardiner +gardinia +gardner +gardners +gardnerville +gardulla +gardy +gardyloo +gare +garea +gareb +garee +garefowl +gareh +gareis +garel +garet +gareth +garetta +garetti +garewaite +garey +garf +garfield +garfish +garfishes +garfld +garfunkel +garg +gargan +garganey +gargani +gargano +gargantua +gargantuan +gargas +gargen +gargery +garget +gargety +gargiullo +gargled +gargler +garglers +gargles +gargling +gargoet +gargol +gargon +gargoyle +gargoyled +gargoyles +gargoyley +gargoylish +gargoylishly +gargoylism +garguilo +gargul +gargulak +garhi +garhwal +garhwali +gari +garia +garial +gariba +garibaldi +garibaldian +garifuna +garigombo +garijo +garikai +garimani +garin +garinger +garis +garish +garishly +garishness +garissa +garita +garito +gariwala +garkin +garko +garland +garlandage +garlandcity +garlanded +garlanding +garlandless +garlandlike +garlandry +garlands +garlandwise +garle +garlena +garlic +garlich +garlick +garlicky +garliclike +garlicmonger +garlics +garlicwort +garling +garlington +garlits +garmalangga +garman +garment +garmented +garmenting +garmentless +garmentmaker +garments +garmenture +garmes +garmite +garmiza +garmon +garmonii +garn +garnavillo +garnder +garneau +garnel +garner +garnerage +garnered +garnering +garners +garnerville +garnet +garnetberry +garneter +garnetlike +garnets +garnett +garnette +garnetter +garnetwork +garnetz +garney +garnice +garnick +garniec +garnier +garnierite +garnish +garnishable +garnished +garnishee +garnisheed +garnisheeing +garnishees +garnisher +garnishes +garnishing +garnishment +garnishments +garnishry +garniture +garnitures +garo +garoeb +garofalo +garoin +garon +garoni +garonne +garoo +garookuh +garoted +garotes +garoting +garotte +garotted +garotter +garotters +garottes +garotting +garoua +garp +garplay +garplee +garply +garr +garrafa +garralaga +garran +garrani +garrard +garre +garreh +garrehajuran +garrel +garret +garreted +garreteer +garretmaster +garrets +garretson +garrett +garrettpark +garrick +garrie +garris +garrison +garrisoned +garrisoning +garrisonism +garrisons +garrity +garrivier +garrochales +garron +garrone +garrot +garrote +garroted +garroter +garroters +garrotes +garroting +garrotte +garrotted +garrotter +garrottes +garrotting +garrotto +garrow +garrulinae +garruline +garrulity +garrulously +garrulus +garrupa +garry +garrya +garryaceae +garryowen +gars +garse +garsell +garsha +garshuni +garsil +garson +garston +gart +garten +garter +garterblue +gartered +gartering +garterless +garters +garth +gartha +garthman +garths +gartias +gartley +gartner +gartshore +garu +garua +garucci +garuda +garuh +garulf +garum +garumna +garus +garuwahi +garvan +garvanzo +garven +garver +garvey +garvin +garvock +garwa +garwe +garwhal +garwi +garwin +garwood +gary +garyfallo +garysburg +garyville +garza +garzah +garzon +gasan +gasbag +gasbags +gasburg +gasc +gascho +gascity +gascogne +gascoigny +gascon +gasconade +gasconader +gasconading +gasconism +gascromh +gase +gaseity +gaselier +gaseosity +gaseously +gaseousness +gases +gasfiring +gash +gashaka +gashake +gashan +gashash +gashed +gasher +gashes +gashful +gashika +gashikom +gashing +gashish +gashliness +gashly +gashmu +gasholder +gashouse +gashouses +gashua +gashwali +gashy +gasifiable +gasification +gasified +gasifier +gasifies +gasiform +gasifying +gasikowski +gasim +gasin +gaskets +gaskin +gasking +gaskins +gasless +gaslighted +gaslighting +gaslights +gaslit +gaslock +gasmaker +gasman +gasmata +gasmen +gasmeter +gasogenes +gasogenic +gasolene +gasoliers +gasoliery +gasoline +gasolineless +gasoliner +gasolines +gasolmex +gasometer +gasometric +gasometrical +gasometry +gaspar +gaspara +gaspard +gasparillo +gasparini +gasparis +gasparotto +gaspe +gasped +gasper +gaspereau +gaspergou +gaspers +gaspiness +gasping +gaspingly +gasport +gaspra +gasproof +gasps +gaspy +gasquet +gass +gassama +gassaway +gasse +gassed +gasser +gasserian +gassers +gasses +gassier +gassiest +gassiness +gassing +gassings +gassko +gassman +gassmann +gassol +gassowski +gassville +gast +gastaldite +gastaldo +gastelot +gaster +gasteralgia +gasteropod +gasteropoda +gasterosteid +gasterosteus +gasterotheca +gasterozooid +gastight +gastightness +gastion +gaston +gastone +gastoni +gastonia +gastonville +gastornis +gastraea +gastraead +gastraeadae +gastraeal +gastraeum +gastral +gastralgia +gastralgic +gastralgy +gastraneuria +gastrectasia +gastrectasis +gastrectomy +gastrelcosis +gastric +gastricism +gastrilegous +gastriloquy +gastrin +gastritic +gastritis +gastroatonia +gastrocele +gastrochaena +gastrocoel +gastrocolic +gastrocystic +gastrocystis +gastrodisk +gastrodynia +gastrograph +gastroid +gastrolater +gastrolavage +gastrolienal +gastrolith +gastrolobium +gastrologer +gastrologist +gastrology +gastrolysis +gastrolytic +gastromancy +gastromelus +gastromenia +gastromyces +gastronomer +gastronomes +gastronomic +gastronomist +gastronosus +gastropathic +gastropathy +gastropexy +gastrophile +gastrophilus +gastroplasty +gastroplenic +gastropod +gastropoda +gastropodan +gastropodous +gastropods +gastropore +gastroptosia +gastroptosis +gastrorrhea +gastroscope +gastroscopic +gastroscopy +gastrosoph +gastrosopher +gastrosophy +gastrospasm +gastrostaxis +gastrostegal +gastrostege +gastrostomus +gastrostomy +gastrotheca +gastrothecal +gastrotome +gastrotomic +gastrotomy +gastrotricha +gastroxynsis +gastrozooid +gastrula +gastrular +gastrulas +gastrulate +gastrulation +gastwirt +gastwirth +gastwirths +gasul +gasworker +gasworks +gata +gatam +gatan +gataq +gatch +gatchina +gatchwork +gate +gateado +gateage +gateau +gatech +gatecity +gatecrasher +gatecrashers +gated +gatefold +gatefolds +gatehouse +gatekeeper +gatekeepers +gateless +gateley +gatelike +gatemaker +gateman +gatemen +gatepost +gateposts +gater +gates +gatesmills +gateson +gatesville +gatetender +gateward +gatewards +gateway +gatewaying +gatewayman +gateways +gatewise +gatewoman +gatewood +gateworks +gatewright +gath +gatha +gathaka +gather +gatherable +gathercole +gathered +gatherer +gatherers +gatherest +gathereth +gathering +gatherings +gathers +gathhepher +gathic +gathrimmon +gathway +gating +gatka +gatliff +gatling +gato +gatope +gator +gatos +gats +gatsame +gatsby +gatt +gatte +gatter +gatteridge +gatti +gattle +gattling +gattman +gatto +gattrell +gatty +gatuyev +gatwick +gatz +gatzke +gaua +gauar +gaub +gaube +gaubert +gauby +gaucha +gauchely +gaucheness +gaucher +gaucheries +gauchest +gaucho +gauchos +gaucitos +gaud +gaudagno +gaudeamus +gaudel +gaudens +gauderies +gaudery +gaudet +gaudete +gaudful +gaudi +gaudier +gaudies +gaudiest +gaudily +gaudiness +gaudless +gaudon +gaudreau +gauds +gaudsman +gaudy +gaufer +gauffer +gauffered +gauffre +gaufre +gaufrette +gauge +gauged +gauger +gaugers +gaugership +gauges +gaughan +gauging +gaugler +gauguin +gauhe +gauk +gaul +gaulding +gauleybridge +gaulic +gaulin +gaulish +gaulle +gaullism +gaullist +gauls +gault +gaulter +gaultherase +gaultheria +gaultherin +gaum +gaumish +gaumless +gaumlike +gaumy +gaun +gauner +gaungto +gaunted +gaunter +gauntest +gauntier +gauntleted +gauntlets +gauntly +gauntness +gauntries +gauntry +gaunty +gaup +gaupus +gaura +gauri +gaurian +gaus +gause +gauss +gaussage +gaussbergite +gausses +gaussia +gaussian +gaussmarkov +gaussnewton +gauster +gausterer +gaut +gauteite +gautet +gauthier +gautier +gauuari +gauvin +gauwada +gauze +gauzelike +gauzes +gauzewing +gauzi +gauzier +gauziest +gauzily +gauziness +gauzy +gava +gavage +gavaio +gavall +gavan +gavar +gavaznha +gave +gaveled +gaveler +gaveling +gavelkind +gavelkinder +gavelled +gaveller +gavelling +gavelman +gavelock +gavels +gaven +gavens +gaver +gavest +gavia +gaviae +gavial +gavialis +gavialoid +gaviao +gavidi +gavidia +gaviiformes +gavilan +gavillucci +gavin +gavinia +gavino +gaviola +gaviotas +gaviria +gavit +gavko +gavle +gavleborgs +gavno +gavoni +gavot +gavots +gavotted +gavottes +gavotting +gavra +gavri +gavriel +gavrielle +gavrila +gavrillac +gavrilov +gavrilova +gavroche +gavyuti +gawa +gawaar +gawain +gawan +gawanga +gawar +gawarbati +gawargy +gawari +gawata +gawawa +gawby +gawcie +gawdan +gawigl +gawil +gawir +gawk +gawked +gawker +gawkers +gawkhammer +gawkier +gawkies +gawkiest +gawkihood +gawkily +gawkiness +gawking +gawkish +gawkishly +gawkishness +gawks +gawky +gawm +gawn +gawney +gawri +gawronski +gawsie +gawthorne +gawtrey +gawwada +gawwison +gawyn +gaya +gayal +gayam +gayan +gayardilt +gayata +gayatri +gaybine +gaybree +gaycat +gaydiang +gaydos +gaye +gayegi +gayel +gayer +gayest +gayeties +gayety +gayford +gayi +gayish +gayissues +gayl +gayla +gayle +gayleen +gaylene +gaylesville +gaylor +gaylord +gaylords +gaylussacia +gaylussite +gayly +gayman +gayment +gaymon +gaymona +gayndah +gayne +gaynes +gayness +gaynesses +gaynor +gayo +gayoom +gayou +gaypoo +gayrat +gayronza +gays +gayscreek +gaysmills +gaysome +gayson +gaysville +gayville +gaywings +gayyou +gaza +gazabo +gazangabin +gazania +gazankulu +gazathites +gaze +gazebo +gazeboes +gazebos +gazed +gazee +gazehound +gazel +gazeless +gazella +gazelle +gazelles +gazelline +gazelling +gazement +gazer +gazers +gazes +gazettal +gazetted +gazetteer +gazetteerage +gazetteerish +gazetteers +gazettes +gazetting +gazez +gazi +gaziantep +gazianter +gazier +gazili +gazillion +gazing +gazingly +gazingstock +gazipur +gazites +gazo +gazogene +gazon +gazpacho +gazpachos +gazy +gazzam +gazzaniga +gazzara +gazzetta +gazzo +gazzollo +gazzolo +gbade +gbadi +gbadie +gbado +gbadogo +gbaeson +gbaga +gbagyi +gbaison +gbak +gbaka +gbakeson +gbakpwa +gbaleng +gbambiya +gban +gbanda +gbande +gbandere +gbandi +gbane +gbang +gbanrain +gbanu +gbanzili +gbanzilisere +gbanziri +gbara +gbaranmatu +gbarbo +gbari +gbarzon +gbaso +gbatiri +gbaya +gbayadara +gbayagboko +gbayandogo +gbbs +gbea +gbean +gbeapo +gbedde +gbee +gbendembu +gbendere +gbense +gbepo +gberi +gbese +gbete +gbetibouro +gbeya +gbhu +gbidowlu +gbigbil +gbigolo +gbii +gbkp +gblou +gboao +gboare +gboati +gbobo +gbodio +gboffua +gbofi +gboko +gboloo +gbonkobo +gboo +gborbo +gborbon +gbote +gbowehran +gbuhwe +gbunde +gburg +gbwata +gbwate +gbwende +gcio +gciriku +gconv +gconvert +gcos +gcsb +gdansk +gdeto +gdinfo +gdowik +gdss +gdynia +geadah +geadephaga +geadephagous +geagea +geal +gealeka +gean +geanticlinal +geanticline +gear +gearbox +gearboxes +gearcase +gearcases +geared +gearing +gearings +gearksutite +gearless +gearman +gearon +gears +gearset +gearshift +gearshifts +gearwheel +gearwheels +geary +gearys +gease +geason +geaster +geat +geatas +geater +geay +geba +gebal +gebang +gebanga +gebbie +gebe +gebelein +geber +gebert +gebeto +gebhard +gebhardt +gebhart +gebi +gebim +gebizlioglu +gebra +gebrael +gebu +gebuhr +gebur +gecarcinidae +gecarcinus +gecho +geck +gecko +geckoes +geckoid +geckos +geckotian +geckotid +geckotidae +geckotoid +gecks +gecos +gedackt +gedaged +gedaliah +gedania +gedanite +gedas +gedda +gedde +gedder +geddes +gede +gedeckt +gedecktwork +gedegede +gedeh +gedeo +gedeon +geder +gederah +gederathite +gederite +gederobo +gederoth +gederothaim +gedge +gedia +gediminas +gedman +gedney +gedo +gedor +gedren +gedrick +gedrite +geebong +geebung +geech +geechee +geechie +geechy +geed +geef +geegaw +geegaws +geeing +geejee +geek +geekdom +geeks +geelbec +geeldikkop +geelhout +geelong +geelvink +geen +geena +geenie +geepound +geer +geerah +geerini +geert +geertja +geertruida +gees +geese +geesman +geeson +geest +geet +geetha +geety +geez +geezer +geezers +gefahr +geff +geffcock +geffen +geffner +geffney +geffroy +gefilte +gefion +gefreiter +gefrorene +gegenuber +gegg +geggee +gegger +geggery +gehan +gehazi +geheimrat +gehenna +gehey +gehlenite +gehm +gehman +geho +gehr +gehrels +gehrig +gehring +gehrlein +geht +geibarger +geier +geifner +geiger +geigern +geigertown +geijer +geijerstam +geikia +geikielite +geilen +gein +geinah +geir +geira +geise +geisei +geisenheimer +geiser +geisha +geishas +geisler +geismar +geison +geisotherm +geisothermal +geisser +geissler +geissoloma +geissorhiza +geist +geistinger +geistown +geitjie +geitonogamy +gejawa +gejdenson +geji +gejza +gekas +gekho +gekin +gekisus +gekko +gekkones +gekkonid +gekkonidae +gekkonoid +gekkota +geko +gekoyo +gekxun +gela +gelab +gelada +gelais +gelaki +gelalak +gelama +gelanc +gelanchi +gelandejump +gelao +gelasian +gelasimus +gelastic +gelatigenous +gelatin +gelatinate +gelatination +gelatined +gelatines +gelating +gelatiniform +gelatinify +gelatinity +gelatinize +gelatinized +gelatinizer +gelatinizing +gelatinoid +gelatinotype +gelatinously +gelatins +gelation +gelatose +gelawa +gelbard +gelber +gelda +geldability +geldable +geldant +geldart +gelded +gelden +gelder +gelderland +gelders +geldersch +geldert +gelding +geldings +geldof +geldonia +geldrez +gelds +gele +geleb +geleba +gelebda +gelebinya +gelechia +gelechiid +gelechiidae +gelee +gelees +gelekidoria +gelenbe +gelewa +geleznyak +gelfand +gelfomino +gelid +gelidiaceae +gelidity +gelidium +gelidly +gelidness +gelignite +gelik +gelilah +gelilla +geliloth +gelin +gelinas +gelinotte +gell +gella +gellar +gelled +gellert +gelling +gellivara +gellivare +gelly +gelman +gelo +gelogenic +gelong +geloscopy +gelose +gelosin +gelotherapy +gelotometer +gelotoscopy +gelovani +gelria +gels +gelsema +gelsemic +gelsemine +gelseminic +gelseminine +gelsemium +gelsey +gelster +gelt +gelts +gelubba +gelvaxdaxa +gelya +gelyo +gema +gemainde +gemalli +geman +gemara +gemariah +gemaric +gemarist +gemasakun +gematria +gematrical +gemauve +gemawa +gemayel +gembu +gemeinde +gemeinden +gemel +gemeled +gemella +gemelli +gemellione +gemellus +gemena +geminae +geminated +geminately +geminates +geminating +gemination +geminations +geminative +gemini +geminid +geminiform +geminis +geminous +gemitores +gemitorial +gemjek +gemless +gemma +gemmaceous +gemmae +gemmate +gemmation +gemmative +gemmed +gemmell +gemmeous +gemmer +gemmier +gemmiest +gemmiferous +gemmiform +gemmill +gemmily +gemminess +gemming +gemmingia +gemmipara +gemmipares +gemmiparity +gemmiparous +gemmoid +gemmological +gemmologist +gemmologists +gemmology +gemmula +gemmulation +gemmule +gemmy +gemno +gemological +gemologies +gemologist +gemologists +gemology +gemot +gemote +gempart +gemquality +gems +gemsbok +gemsboks +gemsbuck +gemsbucks +gemser +gemshorn +gemstones +gemu +gemul +gemuti +gemutlich +gemwork +gemya +gemz +gemze +gemzek +gena +genadiyi +genagane +genal +genapp +genapper +genarch +genarcha +genarchaship +genarchship +genaro +genbank +gence +genco +gencode +gendaime +gendarme +gendarmerie +gendarmes +gende +gendengiin +gender +gendered +genderer +gendereth +gendering +genderless +genders +gendja +gendok +gendre +gendron +gendzabali +gene +genealogic +genealogical +genealogies +genealogist +genealogists +genealogize +genealogizer +genealogy +genear +geneat +geneau +geneautry +genecologic +genecologist +genecology +genecor +genee +geneina +geneki +genep +genera +generaal +generability +generable +general +generalate +generalcy +generale +generales +generalia +generalidad +generalific +generalised +generalism +generalist +generalistic +generalists +generalities +generaliting +generality +generalize +generalized +generalizer +generalizers +generalizes +generalizing +generall +generally +generalness +generals +generalship +generalships +generalty +generant +generate +generated +generater +generates +generating +generation +generational +generationg +generations +generative +generatively +generator +generators +generatrix +generel +generic +generical +generically +genericize +generics +generiert +generis +generosities +generosity +generoso +generous +generously +generousness +generral +genes +genesee +geneseedepot +geneseo +geneserine +geneses +genesia +genesiac +genesiacal +genesial +genesic +genesiology +genesis +genesisdof +genesisvfx +genesitic +genesiurgic +genest +genet +genethliac +genethliacal +genethliacon +genethliacs +genethlic +genetic +genetical +genetically +geneticism +geneticist +geneticists +genetics +genetika +genetmoil +genetous +genetrix +genetta +geneura +geneva +genevan +genevas +geneve +genevese +genevie +genevieve +genevois +genevoise +genevra +genflou +geng +genga +gengbe +genge +gengele +genghis +gengle +gengma +gengo +genia +genial +geniality +genialize +genially +genialness +genian +genic +genichesk +genicular +geniculate +geniculated +geniculately +geniculation +geniculum +genie +genies +genin +genioglossal +genioglossi +genioglossus +geniohyoid +geniolatry +genion +genioplasty +genip +genipa +genipap +genipapada +genis +genisaro +genista +genistein +genitalia +genitalic +genitals +genitival +genitivally +genitives +genitocrural +genitor +genitorial +genitors +genitory +geniture +genitures +geniunely +genius +geniuses +genizah +genizero +genkova +genlin +genn +genna +gennadi +gennady +gennaken +gennaro +gennesaret +genni +gennie +gennifer +gennini +genny +genoacity +genoan +genoblast +genoblastic +genocidal +genocide +genocides +genoese +genogani +genom +genome +genomes +genomic +genonema +genos +genotechs +genotex +genotypes +genotypic +genotypical +genoud +genova +genovera +genovese +genoveva +genovino +genovise +genowefa +genres +genro +genrsa +gens +gensac +gensch +genschow +genske +genson +genstat +gensym +gensymmed +gent +gente +genteeler +genteelest +genteelish +genteelism +genteelize +genteelly +genteelness +gentelec +genteng +gentes +genthite +gentiana +gentianaceae +gentianales +gentianella +gentianic +gentianin +gentianose +gentians +gentianwort +gentil +gentile +gentiledom +gentiles +gentilesse +gentilhomme +gentilic +gentilism +gentilitial +gentilitian +gentilities +gentilitious +gentilize +gentille +gentiobiose +gentiopicrin +gentisein +gentisic +gentisin +gentle +gentled +gentlefolk +gentlefolks +gentlehood +gentleman +gentlemanism +gentlemanize +gentlemanly +gentlemans +gentlemen +gentlemens +gentleness +gentlepeople +gentler +gentles +gentleship +gentlest +gentlewoman +gentlewomen +gentling +gently +gentman +gentoo +gentrice +gentries +gentryville +gents +genty +gentzler +genu +genua +genual +genubath +genuclast +genuflect +genuflected +genuflecting +genuflection +genuflector +genuflectory +genuflects +genuflex +genuflexion +genuflexuous +genuine +genuinely +genuineness +genus +genuses +genvieve +genya +genyantrum +genyem +genyoplasty +genys +geoaesthesia +geoagronomic +geobiologic +geobiology +geobiont +geobios +geoblast +geobotanic +geobotanical +geobotanist +geobotany +geoboy +geocarpic +geocentrical +geocerite +geochemist +geochemists +geochronic +geochrony +geococcyx +geocoronium +geocratic +geocronite +geocyclic +geodaesia +geodakov +geodal +geodata +geode +geodes +geodesia +geodesic +geodesical +geodesics +geodesist +geodesists +geodete +geodetical +geodetically +geodetician +geodetics +geodic +geodiferous +geodist +geoducks +geodynamic +geodynamical +geodynamics +geoemtry +geoethnic +geoff +geoffery +geoffrey +geoffreys +geoffrion +geoffroyin +geoffroyine +geoform +geog +geogenesis +geogenetic +geogenic +geogenous +geogeny +geoglossum +geoglyphic +geognosis +geognosist +geognost +geognostic +geognostical +geognosy +geogonic +geogonical +geogony +geograph +geographers +geographic +geographical +geographics +geographies +geographism +geographize +geographos +geography +geogre +geohub +geohydrology +geoid +geoidal +geoids +geoisotherm +geol +geolatry +geologer +geologers +geologian +geologic +geological +geologically +geologician +geologies +geologist +geologists +geologize +geology +geom +geomagnetic +geomagnetics +geomagnetism +geomagnetist +geomalic +geomalism +geomaly +geomance +geomancer +geomancies +geomancy +geomant +geomantic +geomantical +geomedicine +geometers +geometria +geometric +geometrical +geometricize +geometrid +geometridae +geometries +geometriform +geometrina +geometrine +geometrize +geometroid +geometroidea +geometry +geomoroi +geomorphic +geomorphist +geomorphy +geomyid +geomyidae +geomys +geon +geonegative +geonic +geonim +geonoma +geopath +geophagia +geophagism +geophagist +geophagous +geophagy +geophila +geophilid +geophilidae +geophilous +geophilus +geophone +geophones +geophysicist +geophyte +geophytes +geophytic +geoplana +geoplanidae +geopolar +geopolitical +geopolitics +geopolitik +geoponic +geoponical +geoponics +geopony +geopositive +geoprumnon +georama +geordi +geordie +georg +georgann +georganne +george +georgeann +georgeanna +georgeanne +georgemas +georgena +georgenko +georgeo +georges +georgescu +georgesmills +georget +georgeta +georgetown +georgetta +georgette +georgewest +georgi +georgia +georgian +georgiana +georgiane +georgianna +georgianne +georgians +georgic +georgics +georgie +georgiev +georgina +georgine +georginia +georgio +georgiou +georgitsis +georgiy +georguitsis +georgy +geoscientist +geoscopic +geoscopy +geoselenic +geosid +geoside +geosphere +geospiza +geostatic +geostatics +geostrategic +geostrategy +geostrophic +geosynclinal +geosyncline +geosynclines +geotactic +geotaxis +geotaxy +geotechnic +geotechnics +geotectology +geotectonic +geotectonics +geoteuthis +geothe +geotherm +geothermal +geothermic +geothlypis +geotic +geotical +geotilla +geotonic +geotonus +geotropic +geotropism +geotropy +geoty +geowilliams +gepackter +gepatit +gepeoo +gepetto +gephardt +gephyrea +gephyrean +gephyrocercy +gepidae +gepma +gepp +geppeta +geppeto +geptrova +gera +geraas +geraci +gerad +geraghty +gerah +gerahs +geraine +gerais +gerakan +geral +gerald +geralda +geraldina +geraldine +geraldo +geraldton +geralene +geramita +geramtina +geraniaceae +geraniaceous +geranial +geraniales +geranic +geraniol +geranium +geraniums +geranomorph +geranyl +gerar +gerard +gerarda +gerardia +gerardias +gerardjan +gerardo +gerasene +gerasim +gerasimov +gerasimovich +gerastian +gerate +gerated +geratic +geratologic +geratologous +geratology +geraty +gerawa +geray +gerb +gerbe +gerbec +gerben +gerber +gerbera +gerberia +gerbillinae +gerbillus +gerbils +gercrow +gerd +gerda +gerdes +gere +gereagle +gereda +gerefa +gereighty +gerema +geremio +geren +gerenda +gerendum +gerenot +gerenser +gerent +gerenuk +geret +gerety +gereur +gereze +gerfalcon +gerfl +gergen +gergere +gergesenes +gergley +gerhard +gerhardine +gerhardt +gerhardtite +gerhart +geri +gerianna +gerianne +geriatrician +geriatrics +geriatrist +gerich +gerichtshof +gericke +gerig +gerika +gerim +gering +gerione +gerip +gerits +gerizim +gerka +gerkanchi +gerkawa +gerlach +gerlad +gerladina +gerlaw +gerlich +gerlinde +gerlinsky +gerlovo +gerlt +germ +germa +germain +germaine +germaines +germal +german +germana +germander +germanely +germaneness +germanesque +germanhood +germani +germania +germaniac +germanical +germanically +germanicized +germanics +germanicus +germanies +germanify +germanious +germanish +germanism +germanist +germanistic +germanite +germanity +germaniums +germanize +germanized +germanizer +germanly +germann +germanness +germano +germanomania +germanophile +germanophobe +germanos +germanous +germans +germansville +germanton +germanvalley +germany +germanyl +germarium +germe +germen +germfask +germfree +germi +germicides +germier +germiest +germifuge +germigenous +germin +germina +germinable +germinally +germinance +germinancy +germinant +germinate +germinated +germinates +germinating +germination +germinations +germinative +germinator +germing +germinogony +germiparity +germless +germlike +germling +germon +germont +germouprez +germproof +germs +germule +germy +gernay +gerner +gernitz +gernon +gernot +gernsback +gerny +gero +gerocomia +gerocomical +gerocomy +geroin +geroina +geroinovoy +geroinshikov +gerold +geroldingen +gerome +geromorphism +geronimo +geronomite +geront +gerontal +geronte +gerontes +gerontic +gerontine +gerontism +geronto +gerontocracy +gerontocrat +gerontogeous +gerontoxon +geroux +geroy +gerrard +gerrardstown +gerres +gerrhosaurid +gerri +gerridae +gerrie +gerrilee +gerringer +gerrit +gerritse +gerritsen +gerritt +gerrity +gerrixx +gerro +gerrold +gerroll +gerron +gerry +gerrymander +gerrymanders +gers +gersch +gersdorffite +gerse +gershanov +gershberg +gershen +gershom +gershon +gershonite +gershonites +gershuny +gershwin +gerson +gerstein +gersten +gerstenkorn +gerstle +gerstmar +gersuind +gersum +gert +gerta +gertan +gerth +gerti +gertie +gerton +gertridge +gertrud +gertruda +gertrude +gertrudis +gertsbakh +gerty +gertz +geruma +gerundially +gerundival +gerundively +gerunds +gerusia +gervais +gervaise +gervao +gervas +gervase +gervi +gerygone +gerynowicz +geryonia +geryonid +geryonidae +geryoniidae +gerze +gerzowski +gesa +gesan +gesawa +gesberg +geschonneck +geschwitz +gesda +gesellschaft +geser +gesera +gesham +geshem +geshur +geshuri +geshurites +gesinan +gesine +gesino +gesith +gesithcund +gesner +gesnera +gesneraceae +gesneraceous +gesneria +gesneriaceae +gesnerian +gesning +gesogo +gesperrt +gess +gessamine +gessiah +gessle +gessler +gessner +gesso +gessoes +gest +gestalt +gestalten +gestalter +gestaltist +gestalts +gestant +gestapolike +gestapos +gestate +gestated +gestates +gestating +gestation +gestational +gestations +gestative +gestatorial +gestatorium +gestatory +geste +gested +gesten +gestening +gestes +gesti +gestic +gestical +gesticulant +gesticular +gesticulated +gesticulates +gesticulator +gestion +gestito +gestning +gesto +gests +gestual +gestuelle +gestural +gesture +gestured +gestureless +gesturer +gesturers +gestures +gesturing +gesundheit +geta +getable +getaccess +getae +getah +getaq +getarg +getaway +getaways +getbit +getbuf +getcharacter +getchell +getcrc +getdev +getdomain +geterated +getest +getestet +getfd +gether +gethryn +gethsemane +gethsemanic +geti +getic +getid +geting +getling +getmata +getmem +geto +getpenny +getright +getrude +getrusage +gets +getsaayi +getsl +getsogho +getsogo +getson +getspa +getspace +getsul +gettable +gettell +getter +gettered +getters +getteth +gettig +gettim +gettin +gettinby +getting +gettinger +getto +gettogethers +getty +gettys +gettysburg +gettz +getup +getups +geturl +getver +getz +getzel +getzville +geudasprings +geuder +geuel +geula +geullah +geum +geums +geurts +geuter +geven +gevgelija +gevoko +gewaar +gewe +geweke +gewell +gewerken +gewgaw +gewgawed +gewgawish +gewgawry +gewgaws +gewgawy +gewicht +gewoz +geyan +geyer +geyerite +geylang +geylegphug +geymond +geyseral +geyseric +geyserine +geyserish +geyserite +geysers +geyserville +geyt +geza +gezawa +gezelle +gezer +gezon +gezrites +gfdctl +gfdhatch +gfdnet +gfunction +gggg +ggggg +gggggg +ggggggg +gggggggg +ggildor +ghaangala +ghabab +ghadamis +ghadikolahi +ghaemi +ghaemian +ghafar +ghafir +ghagar +ghai +ghaib +ghaimuta +ghaist +ghale +ghalva +gham +ghan +ghana +ghanaco +ghanaian +ghanaians +ghandi +ghanem +ghangurde +ghani +ghanian +ghannonga +ghanongga +ghanshyam +ghantous +ghanzi +gharbi +gharbiyah +ghardaia +ghari +gharial +gharib +gharnao +gharry +gharrywallah +ghartey +gharti +gharyan +ghasemian +ghashir +ghassan +ghassanid +ghassem +ghassi +ghast +ghastful +ghastily +ghastlier +ghastliest +ghastlily +ghastliness +ghastly +ghat +ghati +ghats +ghatta +ghattas +ghatti +ghatwal +ghatwazi +ghaut +ghazal +ghazban +ghazi +ghazism +ghaznevid +ghazni +ghboko +gheber +ghebeta +gheciu +ghedda +ghee +gheen +gheens +ghees +gheg +ghegish +ghein +ghekhol +ghekhu +gheko +ghelarducci +gheleba +gheleem +ghena +ghenaiem +gheorghe +gheorghiu +gherkins +gheroghe +ghesca +ghetchoo +ghetsogo +ghett +ghetti +ghetto +ghettoed +ghettoes +ghettoing +ghettoize +ghettoized +ghettoizes +ghettoizing +ghettos +ghezzi +ghfmt +ghia +ghibarama +ghibelline +ghibellinism +ghibli +ghidali +ghidole +ghidra +ghidrah +ghilardi +ghilzai +ghimarra +ghiordes +ghiotti +ghisadi +ghiselin +ghislain +ghislaine +ghisler +ghita +ghizite +ghod +ghol +ghomala +ghomara +ghond +ghone +ghoo +ghoom +ghor +ghorai +ghorani +ghorashy +ghosal +ghose +ghosh +ghossein +ghost +ghostbusters +ghostcraft +ghostdom +ghosted +ghoster +ghostess +ghostfish +ghostflower +ghosthood +ghostier +ghostiest +ghostified +ghostily +ghosting +ghostish +ghostism +ghostjob +ghostland +ghostless +ghostlet +ghostley +ghostlier +ghostliest +ghostlify +ghostlily +ghostliness +ghostly +ghostmonger +ghostology +ghosts +ghostscript +ghostship +ghosttyper +ghostview +ghostweed +ghostwheel +ghostwrite +ghostwriter +ghostwriters +ghostwrites +ghostwriting +ghostwritten +ghostwrote +ghosty +ghothenburg +ghotulmuria +ghotuo +ghoudrakova +ghoulery +ghoulies +ghoulishly +ghoulishness +ghouls +ghoussoub +ghove +ghoveo +ghowr +ghristie +ghrush +ghua +ghudavan +ghujulan +ghulam +ghulati +ghulfan +ghumghum +ghuna +ghurry +ghurye +ghuz +ghye +ghyll +giachetti +giacinta +giacinto +giacobbe +giacobini +giacommo +giah +giahoi +giai +giallelis +giallo +giamatteo +giambalvo +giambattista +giambelluca +giampaolo +giampiero +gian +giana +giancarlo +gianciotto +gianfranco +giang +giangan +giangiacomo +giani +gianina +gianini +gianluca +gianna +gianni +giannini +giannino +gianola +giansar +giant +giantesque +giantesses +gianthood +giantish +giantism +giantisms +giantize +giantkind +giantlike +giantly +giantry +giants +giantship +giaour +giap +giarai +giardia +giardiasis +giardino +giardot +giarra +giarre +giarritta +giay +giazza +gibaio +gibarama +gibario +gibaro +gibb +gibbals +gibbar +gibbed +gibber +gibbered +gibberella +gibbergunyah +gibbering +gibberish +gibberose +gibberosity +gibbers +gibbeted +gibbethon +gibbeting +gibbets +gibbetted +gibbetwise +gibbi +gibbie +gibbing +gibbins +gibbled +gibblegabble +gibbles +gibbonglade +gibbons +gibbonsville +gibbose +gibbosities +gibbosity +gibbous +gibbously +gibbousness +gibbs +gibbsboro +gibbsite +gibbstown +gibbus +gibea +gibeah +gibeath +gibeathite +gibeault +gibed +gibel +gibelite +gibeon +gibeonite +gibeonites +giber +gibers +gibes +gibidai +gibing +gibingly +gibleh +giblets +giblin +giblites +gibney +gibor +gibraltar +gibraltarian +gibreel +gibs +gibsland +gibson +gibsonburg +gibsoncity +gibsonia +gibsonian +gibsonisland +gibsons +gibsonton +gibsonville +gibstaff +gibsu +gibt +gibus +gichode +gichugu +giclas +gicleon +gidabal +gidami +gidar +gidaro +giddalti +giddea +giddel +giddens +gidder +giddied +giddier +giddies +giddiest +giddify +giddily +giddiness +giddings +giddy +giddyberry +giddybrain +giddyhead +giddying +giddyish +giddypaced +gideon +gideoni +gideonite +gidere +gidgee +gidget +gidgid +gidiccho +gidicho +gidja +gidole +gidolinya +gidom +gidon +gidra +gied +giedre +giegoh +gieing +giekes +giel +gielgud +gien +gienah +gier +gierasch +gierash +giere +gierka +giermann +giertych +gieryn +giesbrecht +gieschen +giese +gieseckite +giesel +gieta +gifanimator +giff +giffgaff +giffin +giffy +gifola +gift +gifted +giftedly +giftedness +giftie +gifting +giftless +giftling +giftos +gifts +giftware +gifu +gifweb +giga +gigabits +gigabyte +gigabytes +gigantean +gigantesque +gigantic +gigantical +gigantically +giganticidal +giganticide +giganticness +gigantism +gigantize +gigantoblast +gigantocyte +gigantolite +gigantology +gigantomachy +gigartina +gigartinales +gigas +gigasampler +gigasoft +gigastar +gigatl +gigaton +gigatons +gigawatts +gigback +gigelira +gigeria +gigerium +gigful +gigged +gigger +giggish +giggit +giggle +giggled +giggledom +gigglement +giggler +gigglers +giggles +gigglesome +gigglier +giggliest +giggling +gigglingly +gigglish +giggly +gigharbor +gigi +gigikuyu +giglet +gigliato +giglio +gigliotti +giglot +gigman +gigmaness +gigmanhood +gigmania +gigmanic +gigmanically +gigmanism +gigmanity +gignate +gignitive +gigo +gigolo +gigolos +gigot +gigout +gigs +gigsman +gigster +gigtree +gigue +giguere +gigues +gigunu +giha +gihan +gihiteri +gihman +gihon +giitiro +gija +gijon +gikas +giklsan +gikolodjya +gikongoro +gikuyu +gikyode +gila +gilabend +gilaki +gilalai +gilan +gilani +gilard +gilat +gilbagala +gilbagale +gilbassier +gilbert +gilberta +gilbertage +gilberte +gilbertese +gilbertian +gilbertina +gilbertine +gilbertite +gilberto +gilberton +gilbertown +gilberts +gilbertson +gilbertville +gilboa +gilborn +gilbreath +gilbrun +gilby +gilchrest +gilchrist +gilcrest +gilda +gildable +gilded +gilden +gilder +gilders +gildersleeve +gildes +gildford +gildhall +gilding +gildings +gildo +gilds +gile +gilead +gileadite +gileadites +gilemette +gilempla +gileno +giler +giles +gilfford +gilford +gilgal +gilgalad +gilgamesh +gilger +gilgit +gilgiti +gilguy +gili +gilia +giliak +giliarovsky +gilika +gilim +gilima +giling +gilio +gilipanes +gill +gilla +gillam +gillan +gillard +gillaroo +gillbird +gillbt +gille +gilled +gilleland +gillem +gillen +gillenia +gillenormand +giller +gillers +gillert +gilles +gillespie +gillespy +gillet +gillett +gillette +gillettgrove +gilley +gillflirt +gillham +gillhooter +gilli +gilliam +gillian +gilliard +gillie +gillied +gillies +gilliflirt +gilligan +gilliland +gillin +gilling +gillingham +gillings +gillingwater +gillion +gillions +gillirb +gillis +gilliver +gillmer +gillmor +gillmore +gillnet +gillnets +gillom +gillon +gillot +gillotage +gillotype +gills +gillstoup +gillstrom +gillsville +gilly +gillyflower +gillygaupus +gilman +gilmancity +gilmanton +gilmartin +gilmer +gilmore +gilmorecity +gilmour +gilo +giloh +gilonite +gilpin +gilpy +gilquin +gilravage +gilravager +gilroy +gils +gilse +gilson +gilsonite +gilstorf +gilstrap +gilsum +gilt +giltcup +giltedged +gilthead +gilthoniel +giltner +gilts +gilttail +gilworth +gilyak +gilyard +giman +gimaras +gimarra +gimba +gimbaama +gimbala +gimbaled +gimbaling +gimbaljawed +gimballed +gimballing +gimbals +gimbe +gimberjawed +gimble +gimblet +gimbunda +gimcrack +gimcrackery +gimcracks +gimcracky +gimel +gimels +gimenez +gimerack +gimi +giminez +gimira +gimirrai +gimlet +gimleted +gimleteyed +gimleting +gimlets +gimlety +gimli +gimma +gimmal +gimme +gimmer +gimmerpet +gimmick +gimmicked +gimmicking +gimmicks +gimmicky +gimmira +gimnime +gimojan +gimon +gimp +gimped +gimpel +gimper +gimpier +gimpiest +gimping +gimps +gimpus +gimr +gimsbok +gimzo +gina +ginabwal +ginaourou +ginath +gindin +gindiri +gine +ginelle +ginest +ginette +ginetto +ginevra +ging +ginga +ginger +gingerade +gingerberry +gingerbread +gingerbready +gingered +gingerich +gingerin +gingering +gingerland +gingerleaf +gingerline +gingerliness +gingerly +gingerness +gingernut +gingerol +gingerous +gingerroot +gingers +gingersnap +gingersnaps +gingerspice +gingerwork +gingerwort +gingery +ginghamed +ginghams +gingili +gingiva +gingivae +gingival +gingivalgia +gingivectomy +gingivitis +gingkoes +gingkwe +gingle +ginglyform +ginglymodi +ginglymodian +ginglymoid +ginglymoidal +ginglymus +ginglyni +gingold +gingoog +gingras +gingrich +gingwak +ginhouse +gini +ginilike +ginis +gink +ginkgoaceae +ginkgoaceous +ginkgoales +ginkgoes +ginks +ginn +ginna +ginned +ginner +ginners +ginnery +ginnetho +ginnethon +ginney +ginni +ginnie +ginnier +ginnifer +ginning +ginnings +ginnle +ginny +gino +ginrich +gins +ginsengs +ginsling +gint +ginty +ginukh +ginukhtsy +ginuman +ginux +ginward +ginz +ginza +ginzburg +ginzo +giobertite +giodan +gioffre +gioi +gioia +giolio +giomus +gionet +giong +gionni +giono +giordani +giordano +giorgas +giorgelli +giorgetti +giorgi +giorgia +giorgin +giorgio +giornata +giornatate +giorni +giorno +giosa +giosue +giotis +giottesque +giovagnoli +giovana +giovane +giovann +giovanna +giovanne +giovanni +giovannino +giovannivan +giovinazzo +gipc +gipende +giphende +gipon +gipped +gipper +gippers +gipping +gippy +gips +gipser +gipsied +gipsies +gipsire +gipsy +gipsying +gipsyweed +gira +giraci +giraffa +giraffes +giraffesque +giraffidae +giraffine +giraffoid +giralda +giraldo +giraldoni +girandola +girandole +girango +girard +girardin +girardon +girardor +girardot +girardville +girasia +girasol +girasole +girasoles +giraud +giraudeau +giraudi +giraux +girawa +girba +girdd +girded +girder +girderage +girderless +girders +girdest +girdeth +girdhar +girding +girdingly +girdle +girdlecake +girdled +girdlelike +girdler +girdlers +girdles +girdlestead +girdletree +girdling +girdlingly +girds +girdvainis +girdwood +gire +gireaux +girei +girella +girelli +girellidae +giresun +giret +girga +girgashite +girgashites +girgasite +girgis +giri +giriama +girinti +girish +giriwe +girko +girl +girlbachelor +girleen +girlery +girlfriend +girlfriends +girlfully +girlhood +girlhoods +girlich +girlies +girliness +girling +girlish +girlishly +girlishness +girlism +girllike +girls +girly +girma +girn +girns +girny +giro +giroflore +giron +girondin +girondism +girondist +gironga +giros +girotti +girouard +girouette +girouettism +giroux +girr +girru +girsanovs +girse +girsh +girsle +girt +girted +girth +girthed +girthing +girths +girting +girtline +girts +girty +girvan +girvin +girwali +girwana +giryama +gisamjang +gisamjanga +gisarme +gisbourne +gisburo +giscard +gise +giseda +gisel +gisela +gisele +giselher +gisella +giselle +gisenyi +gish +gishu +gisi +gisida +gisiga +gisika +gisinger +gisira +giskes +gisla +gisladottir +gisle +gisler +gism +gismaster +gismo +gismonda +gismondine +gismondite +gismos +gisondi +gispa +gissi +gist +gists +gisu +gita +gitaligenin +gitalin +gitane +gitanemuck +gitanillo +gitano +gitanos +gitarama +gitata +gite +gitega +gith +gitin +gitksan +gitksian +gitl +gitoa +gitonga +gitonin +gitoxigenin +gitoxin +gitt +gitta +gittahhepher +gittaim +gitte +gittel +gittern +gittes +gitti +gittins +gittite +gittites +gittith +gittleson +gitty +gitua +gityskyan +giuditta +giuditte +giudizio +giuffre +giuhat +giuletta +giulia +giuliana +giuliani +giulietta +giulio +giunchi +giuntini +giur +giuranna +giurgiu +giuseppe +giuseppi +giuseppina +giustina +giustini +giustiniani +giusto +give +giveable +giveaways +given +givenness +givens +giver +giverment +giverom +givers +gives +givesme +givest +giveth +givey +givin +giving +givney +givon +givot +givrelles +giya +giyani +giza +gizay +gizela +gizi +giziga +gizima +gizmo +gizmos +gizonite +gizra +gizz +gizzard +gizzards +gizzen +gizzern +gizzi +gizzick +gjertsen +gjetost +gjetosts +gjezi +gjirokaster +gjunej +gkalan +gkjp +gkpb +gkpi +gkpm +gkps +gkss +gkst +glabella +glabellae +glabellar +glabellous +glabellum +glabrate +glabrescent +glabrio +glabrous +glabrus +glace +glaceed +glaceing +glaces +glaciable +glacial +glacialism +glacialist +glacialize +glacially +glaciaria +glaciarium +glaciarum +glaciated +glaciates +glaciating +glaciation +glacier +glaciered +glacieret +glacierist +glaciers +glaciologist +glaciology +glaciomarine +glaciometer +glacionatant +glacises +glack +glad +gladbach +gladbrook +gladded +gladdened +gladdener +gladdening +gladdens +gladder +gladdest +gladding +gladdon +glade +gladehill +gladek +gladelike +gladen +gladepark +glades +gladespring +gladevalley +gladeville +gladewater +gladeye +gladful +gladfully +gladfulness +gladhearted +gladi +gladiate +gladiatorial +gladiatorism +gladiators +gladiatrix +gladier +gladify +gladii +gladiola +gladiolar +gladiolas +gladiole +gladioli +gladioluses +gladius +gladkaite +gladkih +gladless +gladlier +gladliest +gladly +gladness +gladney +glado +glads +gladsome +gladsomely +gladsomeness +gladstone +gladstonian +gladvalley +gladwin +gladwyne +glady +gladys +glaeserne +glaessner +glafkos +glaga +glagging +glagol +glagolic +glagolitic +glagolitsa +glahn +glaieul +glaik +glaiket +glaiketness +glair +glaireous +glairiness +glairy +glaister +glaive +glaived +glaives +glaked +glaky +glam +glamberry +glamdring +glamor +glamorgan +glamorize +glamorized +glamorizer +glamorizes +glamorizing +glamorously +glamors +glamour +glamoured +glamouring +glamourize +glamourous +glamours +glamoury +glan +glance +glanced +glancer +glances +glancey +glancing +glancingly +gland +glanda +glandaceous +glandakhwe +glandarious +glandered +glanderous +glanders +glandes +glandiferous +glandiform +glandless +glandlike +glandorf +glands +glandularly +glandule +glanduliform +glandulose +glandulosity +glandulous +glanfield +glaniostomi +glans +glanville +glar +glare +glared +glareless +glareola +glareole +glareolidae +glareous +glareproof +glareridden +glares +glareworm +glarier +glarily +glariness +glaring +glaringly +glaringness +glark +glaro +glarona +glaros +glarotwabo +glarry +glarus +glary +glas +glasa +glasbey +glasby +glasco +glascow +glase +glasenappia +glaser +glaserian +glaserite +glasfet +glasford +glasgo +glasgow +glasha +glashan +glasnost +glaspie +glass +glassberg +glassblower +glassblowers +glassblowing +glassboro +glassbutton +glasscup +glasse +glassed +glassen +glasser +glasses +glassfet +glassfish +glassful +glassfuls +glasshouse +glassie +glassier +glassies +glassiest +glassily +glassine +glassines +glassiness +glassing +glassite +glassless +glasslike +glassmaker +glassmaking +glassman +glassmen +glasso +glassophone +glasspole +glassport +glassrope +glassteel +glasston +glassware +glassweed +glasswork +glassworker +glassworking +glassworks +glast +glastebury +glasten +glastonbury +glaszczak +glat +glathsheim +glathsheimr +glatman +glatthaar +glatzeder +glauberite +glaubrecht +glaucescence +glaucescent +glaucidium +glaucin +glaucine +glaucionetta +glaucium +glauco +glaucodot +glaucolite +glaucomas +glaucomatous +glaucomys +glauconia +glauconiidae +glauconite +glauconitic +glaucophane +glaucopis +glaucosuria +glaucously +glauke +glaukos +glaum +glaumrie +glaur +glaury +glausage +glaux +glavda +glave +glaver +glavey +glavia +glavkosmos +glavnoe +glawlo +glaza +glazah +glazar +glaze +glazebrook +glazed +glazen +glazer +glazerlvezic +glazers +glazes +glazeth +glazework +glazier +glazieries +glaziers +glaziery +glazily +glaziness +glazing +glazings +glazki +glazunova +glazy +glbs +gldirect +gleam +gleamed +gleamier +gleamiest +gleamily +gleaminess +gleaming +gleamingly +gleamless +gleams +gleamy +glean +gleanable +gleaned +gleaner +gleaners +gleaning +gleanings +gleans +gleary +gleason +gleaves +gleb +gleba +glebal +glebe +glebeless +glebo +glebous +glebov +glecker +gleckler +glecoma +gleda +glede +gledhill +gleditsch +gleditsia +gledy +glee +gleeb +gleed +gleefully +gleefulness +gleeishly +gleek +gleemaiden +gleeman +gleemen +gleep +glees +gleesome +gleesomely +gleesomeness +gleeson +gleet +gleety +gleewoman +gleg +glegly +glegness +gleichzeitig +gleit +glejsers +glem +glemboski +glen +glenallan +glenallen +glenalpine +glenarbor +glenarm +glenaubrey +glenbeulah +glenbrook +glenburn +glenburnie +glencampbell +glencarbon +glencliff +glencoe +glencove +glencross +glenda +glendal +glendale +glendaniel +glendean +glendenning +glendick +glendinning +glendive +glendo +glendon +glendora +glendwr +gleneaston +glenecho +glenelder +glenelg +glenellen +glenellyn +gleneyre +glenferris +glenfield +glenflora +glenford +glenfork +glengardner +glengarries +glengarry +glengary +glenham +glenhaven +glenhayes +glenhead +glenine +glenjean +glenlyn +glenlyon +glenmills +glenmont +glenmoore +glenmora +glenmorgan +glenn +glenna +glennallen +glenndale +glenne +glennie +glennis +glennister +glennsferry +glennville +glenohumeral +glenoid +glenoidal +glenois +glenolden +glenoma +glenpool +glenray +glenridge +glenrio +glenrock +glenrogers +glenrose +glens +glensfalls +glensfork +glenshaw +glenside +glenson +glenspey +glent +glentana +glentower +glenullin +glenview +glenvil +glenville +glenwhite +glenwild +glenwillard +glenwilton +glenwood +glenwoodcity +glenworthy +gleowine +glerawly +glessite +glew +gleyde +gleydund +glezakos +glia +gliadin +glial +glib +glibber +glibbery +glibbest +glibc +glibewa +glibly +glibness +glich +glick +glickman +glidder +gliddery +glide +glided +glideless +glideness +glider +gliderport +gliders +glides +glidewell +glidewort +gliding +glidingly +gliese +glietzen +gliff +gliffing +glim +glime +gliming +glimmered +glimmering +glimmeringly +glimmerings +glimmerite +glimmerous +glimmers +glimmery +glimpf +glimpse +glimpsed +glimpser +glimpsers +glimpses +glimpsing +glimpy +glims +glinda +glink +glinka +glinski +glint +glinted +glinting +glints +glinty +glio +glioma +gliomatous +gliooubi +gliosa +gliosis +glires +gliridae +gliriform +gliriformia +glirine +glis +glisk +glisky +glissaded +glissader +glissades +glissading +glissandi +glissando +glissandos +glissette +glistened +glistening +glisteningly +glistens +glister +glistered +glistering +glisteringly +glisters +glitch +glitched +glitches +glitho +glitman +glitnir +glitschen +glitshen +glitter +glitterance +glittered +glittering +glitteringly +glitters +glittersome +glittery +glitz +glitzy +gliwice +gllery +gloag +gloam +gloaming +gloamings +gloar +gloated +gloater +gloaters +gloating +gloatingly +gloats +glob +global +globalink +globalism +globalist +globalists +globalize +globalized +globalizing +globally +globals +globalscape +globalsearch +globate +globated +globbing +globe +globed +globefish +globeflower +globegirdler +globeholder +globelet +globero +globes +globetrotter +globicephala +globiferous +globigerina +globigerine +globin +globing +globo +globoid +globoids +globose +globosely +globoseness +globosite +globosities +globosity +globous +globously +globousness +globs +globularia +globularity +globularly +globularness +globules +globulet +globulicidal +globulicide +globuliform +globulimeter +globulin +globulins +globulinuria +globulite +globulitic +globuloid +globulolysis +globulose +globulous +globulysis +globy +glochid +glochideous +glochidia +glochidial +glochidian +glochidiate +glochidium +glochis +glock +glocken +glockenspiel +glockleigh +glodstone +gloea +gloeal +gloeocapsa +gloeocapsoid +gloeosporium +glofcheskie +glogg +gloggs +glohb +gloin +gloiopeltis +glome +glomerate +glomeration +glomerella +glomerulate +glomerule +glomerulitis +glomerulose +glomerulus +glomma +glommed +glommer +glomming +glommox +gloms +glomus +glonoin +glonoine +gloom +gloomed +gloomful +gloomfully +gloomier +gloomiest +gloomily +gloominess +glooming +gloomingly +gloomings +gloomless +glooms +gloomth +gloomy +glop +gloppen +glops +glor +glore +glorfindel +glori +gloria +gloriam +gloriana +gloriane +glorias +gloriation +gloried +glories +gloriest +glorieta +glorieth +gloriette +glorieuse +glorifiable +glorified +glorifier +glorifiers +glorifies +glorifieth +glorify +glorifying +glorinda +gloriole +gloriosa +gloriosity +glorioso +glorious +gloriously +gloriousness +gloris +glork +glorked +glornia +glory +gloryful +glorying +gloryingly +gloryless +glos +gloskowski +gloss +glossa +glossagra +glossal +glossalgia +glossalgy +glossanthrax +glossarial +glossarially +glossarian +glossaries +glossarist +glossarize +glossary +glossata +glossate +glossator +glossatorial +glossectomy +glosser +glossers +glosses +glossic +glossier +glossies +glossiest +glossily +glossina +glossiness +glossing +glossingly +glossiphonia +glossist +glossitic +glossitis +glossless +glossmeter +glossocele +glossocoma +glossocomon +glossodynia +glossograph +glossography +glossohyal +glossoid +glossolabial +glossolalia +glossolalist +glossolaly +glossologies +glossologist +glossology +glossolysis +glossoncus +glossop +glossopathy +glossopetra +glossophaga +glossophora +glossophytia +glossoplasty +glossoplegia +glossopode +glossopodium +glossopteris +glossoptosis +glossoscopia +glossoscopy +glossospasm +glossotomy +glossotype +glossy +glost +gloster +glosz +glottalite +glottalize +glottalized +glottazed +glottic +glottid +glottidean +glottides +glottiscope +glottises +glottogonic +glottogonist +glottogony +glottologic +glottologies +glottologist +glottology +glouster +glout +glove +gloved +gloveless +glovelike +glovemaker +glovemaking +glover +gloveress +glovers +gloversville +gloverville +gloves +glovey +gloving +glow +glowa +glowber +glowed +glower +glowered +glowerer +glowering +gloweringly +glowers +glowflies +glowfly +glowing +glowingly +glowna +glows +glowworm +glowworms +gloxinia +gloxinias +gloy +gloze +glozed +glozing +glozingly +glpro +glqoole +glub +glucase +glucemia +gluchkova +glucid +glucide +glucidic +glucina +glucine +glucinic +glucinium +glucinum +gluck +glucksman +glucokinin +glucolipid +glucolipide +glucolipin +glucolipine +glucolysis +glucosaemia +glucosamine +glucosan +glucosane +glucosazone +glucosemia +glucoses +glucosic +glucosid +glucosidal +glucosidase +glucoside +glucosidic +glucosin +glucosine +glucosone +glucosuria +glucuronic +glud +glue +glued +glueing +gluemaker +gluemaking +gluepot +gluer +gluers +glues +glueyness +glug +gluier +gluiest +gluily +gluish +gluishness +gluks +gluma +glumaceae +glumaceous +glumal +glumales +glume +glumiferous +glumiflorae +glumly +glummer +glummest +glummy +glumness +glumose +glumosity +glump +glumpily +glumpiness +glumpish +glumpy +glunch +gluneamie +glunreal +gluon +glure +glusid +gluside +glutamates +glutaminic +glutaric +glutathione +glutch +gluteal +glutei +glutelin +gluten +glutenin +glutenous +glutetei +glutethimide +gluteus +glutin +glutinate +glutination +glutinative +glutinize +glutinose +glutinosity +glutinous +glutinously +glutition +glutoid +glutose +gluts +glutted +glutter +gluttery +glutting +gluttingly +glutton +gluttoness +gluttonies +gluttonish +gluttonism +gluttonize +gluttonous +gluttonously +gluttons +gluttony +glutz +glycemia +glycerate +glyceria +glyceric +glycerinize +glycerins +glycerite +glycerize +glycerizin +glycerizine +glycerogel +glycerol +glycerolate +glycerole +glycerolize +glycerols +glycerose +glyceroxide +glyceryl +glyceryls +glycid +glycide +glycidic +glycidol +glycinin +glycob +glycocholate +glycocholic +glycocin +glycocoll +glycogelatin +glycogenesis +glycogenetic +glycogenic +glycogenize +glycogenous +glycogens +glycogeny +glycohaemia +glycohemia +glycolate +glycolic +glycolide +glycolipid +glycolipide +glycolipin +glycolipine +glycols +glycoluric +glycoluril +glycolyl +glycolylurea +glycolysis +glycolytic +glyconian +glyconic +glyconin +glycoproteid +glycoprotein +glycosaemia +glycose +glycosemia +glycoside +glycosides +glycosidic +glycosin +glycosine +glycosuria +glycosuric +glycosyls +glycuresis +glycuronic +glycyl +glycyphyllin +glycyrrhiza +glycyrrhizin +glymph +glyn +glynda +glyndon +glynis +glynn +glynne +glynnis +glyoxal +glyoxalase +glyoxalic +glyoxalin +glyoxaline +glyoxim +glyoxime +glyoxyl +glyoxylic +glyphic +glyphograph +glyphography +glyphs +glyptic +glyptical +glyptician +glyptics +glyptodon +glyptodont +glyptograph +glyptography +glyptolith +glyptologist +glyptology +glyptotheca +glyster +glztszki +gmbh +gmbll +gmdzi +gmelina +gmelinite +gmibm +gmih +gmist +gmit +gmuvax +gnabble +gnadenhutten +gnaedinger +gnaeus +gnagna +gnahouet +gnale +gname +gnamei +gnanadesikan +gnaphalioid +gnaphalium +gnar +gnarled +gnarlier +gnarliest +gnarliness +gnarling +gnarls +gnarly +gnars +gnash +gnashed +gnashes +gnasheth +gnashing +gnashingly +gnassingbe +gnat +gnatcatcher +gnatflower +gnathal +gnathalgia +gnathic +gnathidium +gnathion +gnathism +gnathite +gnathitis +gnatho +gnathobase +gnathobasic +gnathometer +gnathonic +gnathonical +gnathonism +gnathonize +gnathoplasty +gnathopod +gnathopoda +gnathopodite +gnathopodous +gnathostoma +gnathostome +gnathostomi +gnathotheca +gnatling +gnatpole +gnatproof +gnats +gnatsnap +gnatsnapper +gnatter +gnattier +gnatty +gnatworm +gnau +gnaw +gnawable +gnawed +gnawer +gnawers +gnawing +gnawingly +gnawings +gnawn +gnaws +gneiss +gneisses +gneissic +gneissitic +gneissoid +gneissose +gneissy +gnerre +gnessoa +gnetaceae +gnetaceous +gnetales +gnetum +gnilom +gnivo +gnmr +gnni +gnnnn +gnocchetti +gnocchi +gnoll +gnome +gnomed +gnomes +gnomesque +gnomic +gnomical +gnomically +gnomide +gnomish +gnomist +gnomists +gnomologic +gnomological +gnomologist +gnomology +gnomonia +gnomoniaceae +gnomonical +gnomonics +gnomonology +gnomons +gnoo +gnoomaks +gnoore +gnoses +gnosiology +gnosis +gnostical +gnostically +gnosticism +gnosticity +gnosticize +gnosticizer +gnostology +gnot +gnotobiology +gnotobiotic +gnotobiotics +gnui +gnulahaghe +gnumacs +gnus +gnuwarez +gnuzip +goad +goaded +goading +goads +goadsman +goadster +goaf +goahead +goahibo +goahiva +goajiro +goal +goala +goalage +goaldirected +goaled +goalee +goalen +goaler +goalers +goalie +goalies +goaling +goalkeeper +goalkeepers +goalkeeping +goalless +goalmouth +goalpost +goalposts +goals +goaltender +goaltenders +goam +goan +goanese +goanna +goari +goaribari +goasila +goat +goatbeard +goatbrush +goatbush +goatcher +goatee +goateed +goatees +goatfish +goath +goatherdess +goatherds +goatish +goatishly +goatishness +goatland +goatleaf +goatlike +goatling +goatly +goatroot +goats +goatsbane +goatsbeard +goatsfoot +goatskin +goatskins +goatstone +goatsucker +goatweed +goaty +goave +goba +gobabingo +gobabis +goback +goban +gobang +gobasi +gobato +gobbe +gobbed +gobber +gobbet +gobbets +gobbey +gobbi +gobbin +gobbing +gobbled +gobbledegook +gobbler +gobblers +gobbles +gobbling +gobbo +gobby +gobeil +gobeli +gobelin +gobell +gobemouche +gober +gobernadora +gobert +goberta +gobetween +gobey +gobeyo +gobeze +gobi +gobia +gobian +gobies +gobiesocid +gobiesocidae +gobiesox +gobiid +gobiidae +gobiiform +gobiiformes +gobin +gobinda +gobinism +gobinist +gobio +gobioid +gobioidea +gobioidei +gobirawa +gobla +gobler +gobles +goblet +gobleted +gobletful +goblets +goblin +gobline +goblinesque +goblinish +goblinism +goblinize +goblinry +goblins +gobmouthed +gobo +goboes +gobolka +gobonated +gobony +gobos +gobots +gobs +gobstick +gobstopper +gobu +gobugdua +goburra +goby +gobylike +gocart +gockel +goclenian +gocte +goda +godai +godambe +godambes +godard +godauli +godavari +godawful +godber +godbole +godby +godcharles +godchild +godchildren +goddam +goddamn +goddamned +goddamning +goddamns +goddams +goddard +goddaughter +goddaughters +godded +godden +godderis +goddess +goddesses +goddesshood +goddessship +goddette +goddikin +godding +goddize +goddy +gode +godeffroy +godel +godelae +godelureaux +godemann +godena +godet +godetia +godett +godezip +godfader +godfather +godfathers +godforsaken +godfred +godfrey +godful +godhead +godheads +godhood +godhoods +godi +godie +godin +godina +godinez +godinu +godish +godiva +godless +godlessly +godlessness +godlet +godley +godlier +godliest +godlike +godlikeness +godlily +godliman +godliness +godling +godlings +godlington +godlinnes +godly +godmaker +godmaking +godmamma +godman +godmothers +godo +godoberi +godoberin +godofsky +godolphin +godot +godown +godowns +godowsky +godoy +godpapa +godparents +gods +godsake +godschalk +godse +godsell +godsends +godship +godships +godsoe +godsons +godsonship +godspeed +godstow +godthaab +godthab +godule +godunov +godwani +godward +godwin +godwinian +godwits +gody +godye +godzil +godzilla +godzillagram +godzillas +goebbels +goebel +goebells +goedel +goeduck +goeffrey +goehner +goel +goelism +goelz +goemagot +goemai +goemot +goeppingen +goeran +goerge +goerges +goering +goers +goerss +goertz +goertzen +goes +goessel +goest +goesta +goetae +goeth +goethe +goethelink +goethian +goetia +goetic +goetical +goety +goetz +goetzke +goetzman +goetzville +gofa +gofer +gofers +goff +goffer +goffered +gofferer +goffering +goffin +goffle +goffstown +goforth +gofron +gogal +gogana +gogardus +gogarty +gogga +goggan +goggin +goggled +goggleeyed +goggleeyes +goggler +gogglers +goggles +gogglier +goggliest +goggling +goggly +gogin +goglet +goglets +gogodala +gogodalasuki +gogodara +gogol +gogolya +gogos +gogot +gogou +gogri +goguel +gogulich +gogwama +goharherkeri +gohdienamiks +goheen +gohila +gohilwadi +gohtsyn +goia +goiabada +goiala +goias +goidel +goidelic +goilala +goilalan +goin +going +goings +goins +goitcho +goiter +goitered +goiters +goitral +goitre +goitres +goitrogen +goitrogenic +goitrous +gojam +gojari +gojjam +gojri +gokal +gokana +gokhale +goklan +goklen +goklia +gokul +gokuraku +gokwom +gola +golabek +golach +goladar +golan +golandaas +golandause +golar +golari +golas +golaseccan +golasgil +golaszewski +golbert +golcard +golconda +golcondas +golczewski +gold +golda +goldar +goldarina +goldarn +goldarns +goldbach +goldbar +goldbeach +goldbeater +goldbeating +goldberg +goldberger +goldberry +goldbird +goldblatt +goldblum +goldbond +goldbrick +goldbricker +goldbrickers +goldbricks +goldbug +goldbugs +goldcolored +goldcrest +goldcup +golddiggers +golde +goldea +golded +golden +goldenback +goldenberg +goldencity +goldendale +goldeneagle +goldenen +goldener +goldenest +goldenfleece +goldengate +goldenhair +goldenhall +goldenknop +goldenlocks +goldenly +goldenmeadow +goldenmouth +goldenness +goldenpert +goldenrods +goldentop +goldenvalley +goldenwing +goldenwood +golder +goldest +goldeyes +goldfarb +goldfeld +goldfield +goldfielder +goldfinch +goldfinches +goldfinger +goldfinny +goldfishes +goldflower +goldgar +goldhammer +goldhead +goldhill +goldi +goldia +goldic +goldie +goldilocks +goldin +goldina +golding +goldini +goldish +goldiya +goldkorr +goldless +goldlike +goldman +goldmann +goldmine +goldner +goldnet +goldnode +goldoni +goldonian +goldonna +goldrun +golds +goldsboro +goldsborough +goldschmidt +goldseed +goldsinny +goldslatt +goldsmith +goldsmithery +goldsmithing +goldsmiths +goldson +goldsound +goldspink +goldstar +goldstein +goldston +goldstone +goldsworthy +goldtail +goldthorp +goldthwait +goldthwaite +goldtit +goldurn +goldurns +goldust +goldvein +goldwave +goldweed +goldwine +goldwork +goldworker +goldwyn +goldy +golee +golem +golems +golenzer +golets +golf +golfball +golfdom +golfe +golfed +golfer +golfers +golfing +golfings +golfito +golfs +golgi +golgotha +golgothas +goli +golia +goliad +goliard +goliardery +goliardic +goliath +goliathize +goliaths +golightly +golimimi +golin +golino +goliss +golitcin +golka +golkakra +golkar +goll +golland +gollandii +gollango +gollar +goller +golling +gollino +golliwog +golliwogg +golliwogs +gollum +golly +golm +golmard +golo +golodkin +goloe +golog +golomb +golonka +goloshes +golosom +golpe +golshan +golson +goltry +golts +golu +golub +golubev +golubi +golubsun +golumala +golva +golyak +golz +goma +gomadj +goman +gomantaki +gomar +gomari +gomarian +gomarist +gomarite +gomarov +gomart +gomashta +gomataki +gomavel +gomba +gombara +gombay +gombe +gombeen +gombeenism +gombell +gombi +gombo +gombojabin +gombos +gombroon +gombroons +gomeisa +gomen +gomeni +gomer +gomera +gomeral +gomes +gomez +gomia +gomis +gomjuer +gomlah +gomm +gommelin +gommu +gomogomo +gomontia +gomori +gomorrah +gomorrha +gomorrhean +gomper +gompers +gompertz +gompf +gomphocarpus +gomphodont +gompholobium +gomphosis +gomphrena +gomska +gomulka +gomuti +gona +gonad +gonadal +gonadectomy +gonadial +gonadic +gonadotropic +gonadotropin +gonads +gonaduct +gonagra +gonakie +gonal +gonalgia +gonangial +gonangium +gonapod +gonapophysal +gonapophysis +gonard +gonarthritis +gonayt +gonbade +goncalves +goncharow +goncz +gond +gondang +gondar +gondel +gondelaurier +gonder +gondi +gondikui +gondite +gondiva +gondla +gondola +gondolas +gondolatsch +gondolet +gondolier +gondoliers +gondor +gondora +gondorf +gondorff +gondu +gondwadi +gondwana +gone +gonedau +goneness +goneoclinic +gonepoiesis +gonepoietic +goner +goneril +goners +gonesome +gonfalon +gonfalonier +gonfalons +gonfanon +gonga +gonged +gonging +gongla +gongman +gongo +gongola +gongon +gongoresque +gongorism +gongorist +gongoristic +gongs +goni +gonia +goniac +gonial +goniale +goniaster +goniatite +goniatites +goniatitic +goniatitid +goniatitidae +goniatitoid +gonid +gonidangium +gonidia +gonidial +gonidic +gonidiferous +gonidioid +gonidiophore +gonidiose +gonidiospore +gonidium +gonif +gonifs +gonimic +gonimium +gonimolobe +gonimous +goniodoridae +goniodoris +goniometric +goniometry +gonion +goniopholis +goniostat +goniotakis +goniotropous +gonish +gonitis +gonium +gonja +gonk +gonkar +gonken +gonking +gonkst +gonkulator +gonkyoolaytr +gonna +gonnardite +gonne +gonnessia +gonoblast +gonoblastic +gonocalycine +gonocalyx +gonocheme +gonochorism +gonococcal +gonococci +gonococcic +gonococcoid +gonococcus +gonocoel +gonocyte +gonocytes +gonoecium +gonof +gonofs +gonolobus +gonomere +gonomery +gonoph +gonophore +gonophoric +gonophorous +gonophs +gonoplasm +gonopoietic +gonopores +gonorrhea +gonorrheal +gonorrheic +gonorrhoea +gonosomal +gonosome +gonosphere +gonostyle +gonotheca +gonothecal +gonotokont +gonotome +gonotype +gonozooid +gonsalves +gonshaw +gonska +gonsomon +gontrand +gonul +gonvick +gonville +gony +gonyalgia +gonydeal +gonydial +gonyocele +gonyoncus +gonys +gonystylus +gonytheca +gonzaga +gonzague +gonzale +gonzales +gonzalez +gonzalo +gonzo +gonzorgo +goobers +gooch +goochland +good +goodall +goodard +goodbar +goodbodies +goodby +goodbye +goodbyes +goodbys +goode +goodell +goodells +gooden +goodenia +goodeniaceae +goodenough +gooder +gooderham +gooders +goodfellow +goodfield +goodfllw +goodfriends +goodhartz +goodhead +goodheart +goodhearted +goodhope +goodhue +goodhumored +goodhusband +goodie +goodier +goodies +gooding +goodinson +goodish +goodishness +goodland +goodlet +goodley +goodlier +goodliest +goodlife +goodliffe +goodlihead +goodlike +goodliness +goodling +goodlooking +goodlow +goodly +goodman +goodmannered +goodmans +goodmanship +goodmen +goodnatured +goodner +goodness +goodnesses +goodnewsbay +goodnight +goodnow +goodrew +goodricke +goodridge +goodrow +goods +goodsome +goodson +goodspeed +goodspring +goodsprings +goodthunder +gooduser +goodusr +goodview +goodville +goodwater +goodway +goodwell +goodwife +goodwill +goodwillie +goodwillit +goodwills +goodwilly +goodwin +goodwine +goodwins +goodwives +goodyearsbar +goodyera +goodyish +goodyism +goodyness +goodyship +gooey +goofball +goofballs +goofed +goofer +goofier +goofiest +goofily +goofiness +goofing +goofs +goofy +googie +google +googlies +googly +googol +googolplex +googols +googul +googy +gooier +gooiest +gooijer +gook +gooks +gooky +gool +goola +goolah +goolby +goold +goolden +gooley +gools +goom +gooma +goombay +goomgharra +goon +goonawt +goondie +goondile +gooney +gooneys +goonie +goonies +gooniyandi +goons +goony +goooood +goop +gooper +goops +goopy +goorney +goorwitz +goos +goosander +goose +goosebeak +gooseberries +gooseberry +goosebill +goosebird +goosebone +gooseboy +goosecap +goosecreek +goosed +goosefish +gooseflesh +gooseflower +goosefoot +goosegirl +goosegog +gooseherd +goosehouse +gooselake +gooselike +goosemouth +gooseneck +goosenecked +gooserock +gooserumped +goosery +gooses +goosetongue +gooseweed +goosewing +goosewinged +goosey +goosier +goosiest +goosing +goosish +goosishly +goosishness +goossen +goosy +gootfried +goov +goovaerts +gooyer +gooz +gopal +gopalganj +gopaul +gope +gopher +gopherberry +gopherroot +gophers +gopherwood +gopi +gopinath +gopinathan +gopisetty +gopowalla +gopple +gopura +gora +goracco +gorachouqua +gorakhpuri +gorakor +goral +gorals +goram +goran +gorani +goranson +gorap +gorasia +gorath +gorau +goraze +gorb +gorbachev +gorbadoc +gorbag +gorbal +gorbe +gorbellied +gorbelly +gorberg +gorbet +gorble +gorblimy +gorbo +gorbov +gorce +gorcey +gorch +gorchakov +gorchev +gorcock +gorcrow +gorcy +gord +gordan +gordana +gorde +gorden +gordes +gordesch +gordiacea +gordiacean +gordiaceous +gordie +gordiidae +gordillo +gordin +gording +gordioidea +gordius +gordo +gordolobo +gordon +gordoni +gordonia +gordonmoans +gordonsville +gordonville +gordunite +gordy +gordyaean +gore +gorebucker +gorecka +gored +goree +gorelik +goremkin +gorenson +gorer +gores +goresprings +goretti +gorevan +goreville +gorey +gorfine +gorfly +gorfton +gorg +gorgan +gorgas +gorge +gorgeable +gorged +gorgedly +gorgelet +gorgeous +gorgeously +gorgeousness +gorger +gorgerin +gorgers +gorges +gorget +gorgeted +gorgets +gorging +gorglin +gorgo +gorgol +gorgolano +gorgon +gorgonacea +gorgonacean +gorgonaceous +gorgonesque +gorgoneum +gorgonia +gorgoniacea +gorgoniacean +gorgonian +gorgonin +gorgonize +gorgonlike +gorgons +gorgonzola +gorgor +gorgosaurus +gorgues +gorgun +gorham +gorhen +gorhendad +gorhum +gori +goria +goriantsev +goric +gorica +goricanec +goridkov +gorier +goriest +gorilla +gorillas +gorillaship +gorillian +gorilline +gorilloid +gorily +gorin +goriness +goring +gorini +goriot +gorius +gorizia +gorizont +gorj +gork +gorkha +gorkhali +gorki +gorkiesque +gorkiy +gorky +gorley +gorlick +gorlin +gorlois +gorlopis +gorlov +gorlunov +gorlushin +gorma +gorman +gormand +gormandize +gormandized +gormandizer +gormandizers +gormandizes +gormandizing +gormands +gormania +gormati +gormaw +gormaz +gormed +gormley +gorney +gornoaltai +gornomariy +goro +goroa +gorobec +gorodish +gorodu +goroka +gorong +gorontalic +gorontalo +goroot +gorose +gorostiza +gorotire +gorova +gorovu +gorowa +gorp +gorra +gorraf +gorrin +gorry +gorsebird +gorsechat +gorsedd +gorsehatch +gorses +gorshin +gorshkov +gorsier +gorsky +gorss +gorsy +gort +gortari +gortchakov +gorton +gortonian +gortonite +gorum +gorvin +gorwali +gorzocoski +gorzow +gosain +goschen +gosden +goserve +gosha +goshawks +goshen +goshenite +goshute +goshven +gosiute +goska +goslarite +goslet +gosling +goslings +gosmacs +gosmore +gosp +gospel +gospeler +gospelers +gospelist +gospelize +gospellike +gospelly +gospelmonger +gospels +gospelwards +gosper +gosperism +gosperisms +gosplan +gospodar +gospodin +gospodinov +gospondinov +gosport +goss +gossage +gossamer +gossamered +gossamers +gossamery +gossampine +gossan +gossard +gosselin +gosses +gosset +gossett +gossin +gossip +gossipdom +gossiped +gossipee +gossiper +gossipers +gossiphood +gossipiness +gossiping +gossipingly +gossipmonger +gossipped +gossipping +gossipred +gossipry +gossips +gossipy +gossmann +gossner +gossoon +gosswiller +gossy +gossypine +gossypium +gossypol +gossypose +gost +gosta +gostanian +gosti +gostin +gostinitse +gostrenko +goswick +goszczynski +gotard +gotbottom +gotch +gotcha +gotchall +gote +gotebo +goteborg +goteborgs +gotell +goth +gotha +gotham +gothamite +gothard +gothenburg +gothic +gothically +gothicism +gothicist +gothicity +gothicize +gothicizer +gothicness +gothics +gothie +gothish +gothism +gothite +gothlander +gothlandia +gothmog +gotho +gothonic +gothos +goths +gotiglacial +gotland +gotlands +goto +gotoh +gotomi +gotos +gotovogo +gotra +gotraja +gotried +gotserinsky +gott +gotta +gotte +gottell +gotten +gottfredson +gotthelf +gottier +gottlick +gottlieb +gottlob +gotto +gottowt +gottschalk +gottschee +gottschlich +gottstein +gottwald +gotz +gouache +gouaches +gouadagouada +gouan +gouaree +goubanov +goubi +goucester +gouda +goudal +goude +goudeau +goudi +goudou +goudour +goudreau +goudwal +goudy +gouff +gouge +gouged +gougeon +gouger +gougers +gouges +gough +gouging +gouhara +gouin +gouinlobi +gouinlobiri +gouinturka +gouitafla +goujon +goukon +goula +goulai +goulart +goulash +goulashes +goulaya +goulaye +goulburn +gould +gouldbusk +gouldcity +gouldsboro +gouldson +gouled +goulei +goulet +goulette +goulfei +goulfey +goulfine +goullet +goulmancema +goulue +goumbi +goumere +goumi +goun +gounaris +gouno +gounod +gounou +gounouko +goup +goupil +goura +gourad +gouraghie +gourami +gouramis +gourara +gouraud +gourd +gourde +gourdes +gourdful +gourdhead +gourdiness +gourdlike +gourdplant +gourds +gourdworm +gourdy +gourgaud +gourgue +gouri +gourieroux +gourinae +gourley +gourma +gourmance +gourmand +gourmander +gourmanderie +gourmandism +gourmandize +gourmands +gourmantche +gourmet +gourmetism +gourmets +gourney +gouro +gourounut +gourtchenko +gourzo +goustrous +gousty +gout +goutam +goutier +goutiest +goutify +goutily +goutiness +gouting +goutish +gouts +goutte +goutweed +goutwort +gouty +gouverneur +gouwar +gova +govain +govard +govari +govboro +gove +gover +govera +goverment +govern +governable +governably +governador +governail +governed +governessdom +governesses +governessy +governing +governingly +government +governmental +governments +governor +governorate +governorates +governors +governorship +governs +govialtay +govind +govindarajan +govindasamy +govindaswami +govnuk +govoril +govoriu +govoro +govorun +govrov +govt +gowa +gowan +gowanda +gowar +gowarbati +gowari +gowase +gowda +gowdnie +gowdy +gowen +gowencity +gowens +gower +gowf +gowfer +gowiddie +gowin +gowk +gowked +gowkedly +gowkedness +gowkit +gowl +gowlan +gowland +gowli +gown +gowned +gowning +gownlet +gowns +gownsman +gownsmen +gowpen +gowri +gowrie +gowro +gowron +gowrons +goya +goyal +goyana +goyazite +goyder +goye +goyer +goyetian +goyette +goyim +goyin +goyish +goyle +goys +goyvaerts +goza +gozales +gozan +gozell +gozen +gozier +gozinta +gozmaks +gozon +gozza +gozzard +gozzi +gpam +gpar +gpatch +gpevax +gpib +gpil +gpmail +gpmg +gpmnc +gpss +gpst +gptb +gpvax +graafian +graal +graals +graas +grab +grabbable +grabbe +grabbed +grabber +grabbers +grabbes +grabbier +grabbiest +grabbing +grabbings +grabble +grabbler +grabbling +grabbots +grabby +grabelnikov +graben +grabens +graber +grabhook +grabill +grabit +grable +grabley +grabner +grabo +grabouche +grabowski +grabs +graca +gracchus +gracco +grace +gracecity +graced +graceful +gracefully +gracefulness +graceland +graceless +gracelessly +gracelike +gracemont +gracer +graces +graceville +gracewood +gracey +grachev +gracia +gracias +gracie +graciela +gracilaria +gracilariid +gracile +gracilea +gracileness +graciles +gracilescent +gracilis +gracility +gracille +gracinda +gracindo +gracing +graciosity +gracioso +graciosos +gracious +graciously +graciousness +grackles +gracomda +graculus +gracy +grad +gradable +gradal +gradated +gradates +gradatim +gradating +gradation +gradational +gradations +gradative +gradatively +gradatory +gradd +graddan +grade +graded +gradefinder +gradely +grader +graders +grades +gradgrind +gradgrindian +gradgrindish +gradgrindism +gradie +gradient +gradienter +gradientia +gradients +gradin +gradine +grading +gradings +gradiometer +gradiometric +gradison +gradius +gradometer +grads +gradstudent +gradual +gradualism +gradualist +gradualistic +graduality +gradually +gradualness +graduals +graduand +graduands +graduate +graduated +graduates +graduateship +graduatical +graduating +graduation +graduations +graduator +graduators +gradus +grady +gradyville +graeae +graecae +graecize +graecized +graecizes +graecizing +graeculus +graef +graeff +graelich +graem +graeme +graessley +graettinger +graetz +graf +grafasi +grafenwoeh +graff +graffage +graffed +graffenwoehr +graffer +graffias +graffiti +graffito +graffity +grafischen +graford +grafship +graft +graftabl +graftage +graftages +graftdom +grafted +grafter +grafters +grafting +grafton +graftonite +graftproof +grafts +grafx +grag +graged +gragg +gragory +graham +grahame +grahamite +grahams +grahamsville +grahan +grahm +grahn +graia +graian +graibe +grail +graile +grailer +grailing +grails +grailshaped +grain +grainage +grained +grainedness +grainer +grainering +grainers +grainery +grainfield +grainger +grainier +grainiest +graininess +graining +grainland +grainless +grainman +grains +grainsick +grainsman +grainvalley +grainways +grainy +graip +graisse +graith +graley +grallae +grallatores +grallatorial +grallatory +grallic +grallina +gralline +gralloch +gralm +gram +grama +graman +gramarye +gramashes +gramatically +grambauer +grambling +gramby +gramcharlier +grame +gramenite +gramercy +gramiak +gramicidin +graminaceae +graminaceous +gramineae +gramineal +gramineous +graminiform +graminin +graminivore +graminology +graminous +gramling +gramm +gramma +grammalogue +grammar +grammarians +grammarless +grammars +grammatical +grammaticism +grammaticize +grammatics +grammatist +grammatite +gramme +grammer +grammers +grammes +grammies +grammont +grammontine +grammy +gramoches +gramophone +gramophones +gramophonic +gramophonist +gramp +grampa +grampian +gramps +grampus +grampuses +grampy +grams +gramsh +gramya +gran +grana +granach +granada +granadahills +granadilla +granadillo +granadine +granage +granara +granaries +granata +granate +granatum +granbery +granbury +granby +granch +grand +granda +grandad +grandads +grandam +grandame +grandames +grandams +grandanse +grandaunt +grandaunts +grandbaby +grandbay +grandblanc +grandbois +grandcane +grandcanyon +grandcayman +grandchain +grandchenier +grandcoteau +grandcoulee +granddad +granddaddy +granddads +grande +grandee +grandeeism +grandees +grandeeship +grandel +grander +grandes +grandesque +grandest +grandeur +grandeurs +grandeval +grandfalls +grandfather +grandfathers +grandfer +grandfield +grandfilial +grandforks +grandfort +grandgorge +grandhaven +grandi +grandin +grandinetti +grandinname +grandiose +grandiosely +grandiosity +grandisland +grandisle +grandison +grandisonant +grandisonian +grandisonous +grandkids +grandlahou +grandlake +grandledge +grandly +grandmarais +grandmarsh +grandmas +grandmason +grandmaster +grandmeadow +grandmontine +grandmother +grandmothers +grandmound +grandnephews +grandness +grandnieces +grandon +grandpa +grandparents +grandpas +grandpaw +grandpere +grandpierre +grandportage +grandprairie +grandral +grandrapids +grandridge +grandriver +grandrivers +grandronde +grands +grandsaline +grandsir +grandsire +grandsirs +grandsons +grandsonship +grandstadt +grandstaff +grandstander +grandstands +grandterre +grandtotal +grandtower +granduncle +granduncles +grandval +grandvalley +grandview +grandville +grandwazoo +grandy +grane +graneri +granfield +granford +grangal +grange +granger +grangerism +grangerite +grangerize +grangerizer +grangers +granges +grangeville +grangousier +granhagen +granholme +granic +granicey +granier +graniform +granik +granilla +granitc +granite +granitecanon +granitecity +granitefalls +granitelike +granites +graniteville +graniteware +granitical +granitiform +granitite +granitize +granitoid +granivore +granivorous +granize +granje +granjeno +grank +granlund +granma +granneman +granner +grannie +grannies +grannis +grannom +granny +grannybush +grano +granoblastic +granodiorite +granogabbro +granolite +granolith +granolithic +granomerite +granophyre +granophyric +granor +granose +granstedt +grant +grantable +grantcity +granted +grantedly +grantees +granter +granters +granth +grantha +grantham +grantia +grantiidae +granting +grantley +grantly +granton +grantors +grantpark +grants +grantsboro +grantsburg +grantsdale +grantsman +grantsmen +grantspass +grantsville +granttown +grantville +granula +granular +granularity +granularly +granulary +granulated +granulater +granulates +granulating +granulation +granulations +granulative +granulator +granulators +granule +granules +granulet +granuliform +granulite +granulitic +granulitis +granulitize +granulize +granulocyte +granuloma +granulosa +granulose +granulous +granville +granza +granzita +grape +graped +grapeflower +grapefruits +grapeful +grapeland +grapeless +grapelet +grapelike +grapenuts +graperies +graperoot +grapery +grapes +grapeshot +grapeskin +grapestalk +grapestone +grapeview +grapeville +grapevines +grapewin +grapewise +grapewort +graph +graphalloy +graphed +graphemes +graphemic +grapher +graphic +graphical +graphically +graphicly +graphicness +graphics +graphing +graphiola +graphiology +graphis +graphit +graphite +graphiter +graphites +graphitic +graphitize +graphitoid +graphitoidal +graphity +graphium +graphlog +graphoidea +graphologic +graphologies +graphologist +graphology +graphomania +graphomaniac +graphometer +graphometric +graphometry +graphomotor +graphophone +graphophonic +graphorrhea +graphoscope +graphospasm +graphostatic +graphotype +graphotypic +graphs +graphx +graphy +grapier +graping +grapnel +grapnels +grapo +grappa +grapple +grappled +grappler +grapplers +grapples +grappling +grapsidae +grapsoid +grapsus +grapta +graptolite +graptolitha +graptolitic +graptoloidea +graptomancy +grapy +gras +grasia +graskoff +grasman +grason +grasonville +grasp +graspable +grasped +grasper +graspers +grasping +graspingly +graspingness +graspless +grasps +grass +grassant +grassation +grassbird +grassby +grasschat +grasscreek +grasscut +grasscutter +grasse +grassed +grasselin +grasselli +grasser +grassers +grasses +grasset +grassfields +grassfire +grassflat +grassflower +grasshop +grasshopper +grasshoppers +grasshouse +grassia +grassias +grassier +grassiest +grassilli +grassily +grassiness +grassing +grasslake +grassland +grasslands +grassle +grassless +grassley +grasslike +grassman +grassmann +grassnut +grassplat +grassplot +grassquit +grassrange +grassroots +grasston +grassvalley +grasswards +grassweed +grasswork +grassworm +grassy +grassybutte +grassycreek +grat +grata +gratae +gratan +grate +grated +grateful +gratefull +gratefully +gratefulness +grateless +grateman +graters +grates +gratewise +grath +grather +gratia +gratiana +gratiano +gratias +graticulate +graticule +gratien +gratified +gratifiedly +gratifier +gratifies +gratifying +gratifyingly +gratility +gratillity +gratin +gratinate +grating +gratingly +gratings +gratins +gratiola +gratiolin +gratiosolin +gratiot +gratis +gratitude +graton +gratten +grattoir +gratton +gratuitant +gratuities +gratuitious +gratuitously +gratulant +gratulate +gratulation +gratulatory +gratus +gratz +grau +graubard +graubu +graubunden +grauer +grault +grauman +graupel +grausso +grav +gravamen +gravamina +gravat +grave +graveclod +gravecloth +graveclothes +graved +gravedigger +gravegarth +gravel +graveled +graveless +gravelike +graveling +gravelish +gravelle +gravelled +gravelliness +gravelling +gravelly +gravelroot +gravels +gravelstone +gravelswitch +gravelweed +gravely +gravemaker +gravemaking +graveman +gravemaster +graven +graveness +gravenstein +graveolence +graveolency +graveolent +graver +gravers +graves +gravesend +graveship +graveside +gravesmill +gravest +gravestead +gravestones +gravet +graveth +gravette +graveure +graveward +gravewards +graveworm +gravey +graveyards +gravi +gravic +gravicembalo +gravidity +gravidly +gravidness +gravies +gravigrada +gravigrade +gravimeter +gravimeters +gravimetric +gravimetry +gravina +graving +gravings +gravini +gravis +gravitated +gravitater +gravitates +gravitating +gravitation +gravitations +gravitative +gravitic +gravities +gravitometer +graviton +gravitons +gravitt +gravitte +gravity +gravoismills +gravure +gravures +grawberger +grawford +grawls +grawlt +grawn +grax +gray +grayam +grayback +graybacks +graybeards +graybill +graybilldeal +grayce +graycliffe +graycoat +graycourt +graydon +grayed +grayer +grayest +grayfish +grayfly +grayham +grayhame +grayhawk +grayhead +grayheaded +graying +grayish +graylag +grayland +grayle +grayling +graylings +grayly +graymalkin +graymill +graymont +grayne +grayness +grayouts +graypate +grayridge +grays +graysknob +grayslake +grayson +graysriver +graysummit +graysville +graytown +grayville +graywanderer +grayware +graywether +graz +grazable +graze +grazeable +grazed +grazer +grazers +grazes +grazia +graziano +grazie +graziella +grazier +grazierdom +graziers +graziery +grazing +grazingly +grazings +grazioso +grazyna +grazzi +grazzini +grback +grduw +greaaaaat +grease +greaseball +greasebush +greased +greasehorn +greaseless +greasepaint +greaseproof +greaser +greasers +greases +greasewood +greasier +greasiest +greasily +greasiness +greasing +greasy +great +greatbend +greatcacapon +greatcoated +greatcoats +greate +greaten +greatened +greatening +greatens +greater +greatersized +greaterthan +greatest +greatfalls +greatgate +greathead +greatheart +greathearted +greatish +greatlakes +greatly +greatmeadows +greatmills +greatmouthed +greatneck +greatness +greatorex +greatriver +greats +greatvalley +greatwall +greave +greaved +greaver +greaves +greaza +greazu +greb +grebenik +grebes +grebeshkova +grebil +greblicki +grebner +grebnev +grebo +grec +grece +grechko +greci +grecia +grecianize +grecians +grecism +grecize +grecized +grecizes +greco +grecomania +grecomaniac +grecophil +gree +greear +greeber +greece +greed +greedier +greediest +greedigut +greedily +greediness +greedless +greeds +greedsome +greedy +greedygut +greedyguts +greek +greekdom +greekery +greekess +greekish +greekism +greekist +greekize +greekless +greekling +greeks +greeley +greeleyville +greely +green +greenable +greenacres +greenage +greenalite +greenarrow +greenback +greenbacker +greenbackism +greenbacks +greenbank +greenbark +greenbaum +greenbay +greenber +greenberg +greenbone +greenbow +greenbrier +greenbush +greencamp +greencastle +greencity +greencloth +greencoat +greencollege +greencreek +greendale +greendell +greene +greened +greener +greeneries +greenery +greenest +greeneville +greeney +greenfeld +greenfield +greenfinch +greenfish +greenflies +greenford +greenforest +greengage +greengill +greengrocers +greengrocery +greenhalgh +greenhall +greenharbor +greenhead +greenheaded +greenheart +greenhearted +greenhew +greenhide +greenhill +greenhills +greenhood +greenhorn +greenhornism +greenhorns +greenhouse +greenhouses +greenhurst +greenier +greeniest +greening +greenings +greenish +greenishness +greenisland +greenisle +greenkeeper +greenkeeping +greenlake +greenlander +greenlandic +greenlandish +greenlandite +greenlandman +greenlane +greenlantern +greenlaw +greenlawn +greenleaf +greenlee +greenleek +greenlees +greenless +greenlet +greenling +greenly +greenman +greenness +greenock +greenockite +greenough +greenovite +greenpark +greenpond +greenport +greenridge +greenriver +greenroad +greenroom +greenrooms +greens +greensand +greensauce +greensboro +greensburg +greensea +greensfarms +greensfork +greenshank +greensick +greenside +greenskeeper +greenslade +greensleeves +greensmith +greenspring +greensprings +greenspun +greenstein +greenstick +greenstone +greenstreet +greenstuff +greenswarded +greentail +greenth +greenthumbed +greentop +greentown +greentree +greenuk +greenup +greenvale +greenvalley +greenview +greenvillage +greenville +greenwald +greenway +greenweed +greenwich +greenwing +greenwithe +greenwood +greenwoods +greenwort +greeny +greenyard +greep +greer +greet +greeted +greetedby +greeter +greeters +greeteth +greetham +greeting +greetingless +greetingly +greetings +greetingz +greets +greetz +greffi +greffier +greffotome +greg +gregal +gregale +gregaloid +gregarian +gregarianism +gregarick +gregarina +gregarinae +gregarinaria +gregarine +gregarinida +gregarinidal +gregarinina +gregarinosis +gregarinous +gregariously +gregaritic +gregbeu +grege +greger +gregerson +gregg +greggle +greggory +grego +gregoire +gregor +gregorek +gregori +gregoria +gregorian +gregorianist +gregorianize +gregorie +gregorio +gregoris +gregorius +gregorovious +gregorski +gregory +gregorz +gregson +gregsun +gregurevic +greguss +greifer +greiff +greig +greige +greigh +greigsmith +greil +greimas +grein +greiner +greis +greisen +greist +grelck +grellier +grema +gremial +gremlin +gremlins +gremlinsoft +gremmie +gremmies +gremmy +grenada +grenades +grenadian +grenadier +grenadierial +grenadierly +grenadiers +grenadin +grenadine +grenadines +grenand +grenander +grenanders +grendel +grendon +grenell +grenelle +grenfell +grenier +grenloch +grennell +grenola +grenon +grenora +grent +grenville +grenzbauerin +grenzfeuer +grenzpostens +grep +greping +grepping +gresham +greshno +greshnoe +gresi +gresik +gress +gressen +gressiker +gressis +gressoria +gressorial +gressorious +greszczuk +greta +gretal +gretchen +grete +gretel +grethe +grethel +grether +greti +gretia +gretl +gretler +gretna +gretry +grett +gretta +gretzbach +greund +grevedlog +greveling +greven +grevena +grevenmacher +greville +grevillea +grevy +grew +grewal +grewgious +grewhound +grewia +grewsome +grey +greyandblue +greybull +greycliff +greyeagle +greyed +greyer +greyest +greyfriars +greyheaded +greyhost +greyhound +greyhounds +greyiaceae +greying +greyish +greyly +greymalkin +greyman +greymountain +greyn +greyness +greypilgrim +greys +greyson +greystoke +greytock +greyton +greywood +gribbie +gribble +gribbon +gribbons +gribi +gribingui +griboedov +gribov +griccha +grice +grich +grid +gridded +gridding +griddlecake +griddlecakes +griddled +griddler +griddles +griddling +gride +grideau +grided +gridelin +gridenwa +grides +gridirons +gridley +gridlock +grido +gridoux +grids +gridwork +griece +grieced +grief +griefensee +griefful +grieffully +griefless +griefs +grieg +griego +griem +grier +grierson +gries +grieshoch +griet +grietje +grievance +grievances +grievant +grieve +grieved +grievedly +griever +grievers +grieves +grieveship +grieveth +grieving +grievingly +grievous +grievously +grievousness +grifasi +grifeo +griff +griffade +griffado +griffaun +griffe +griffeath +griffel +griffen +griffeth +griffies +griffin +griffinage +griffinesque +griffinhood +griffinish +griffinism +griffins +griffioen +griffis +griffiss +griffith +griffithite +griffiths +griffle +griffon +griffonage +griffonne +griffons +griffths +grift +grifted +grifter +grifters +grifties +grifting +grifton +grifts +grig +grigelionis +grigg +griggio +griggles +griggs +griggsville +grigio +grignet +grignon +grigor +grigorenko +grigorev +grigori +grigoriev +grigorios +grigorovich +grigory +grigoviou +grigri +grigs +grigsby +grigson +grihastha +grihyasutra +grik +grike +griku +grikwa +gril +griley +grilk +grill +grillade +grillades +grillage +grillages +grilled +griller +grillers +grilles +grillework +grilling +grillo +grillroom +grills +grilo +grilse +grilses +grim +grima +grimace +grimaced +grimacer +grimacers +grimaces +grimacier +grimacing +grimacingly +grimalda +grimalkin +grimau +grimaud +grimbeorn +grimble +grimed +grimes +grimesland +grimey +grimful +grimgribber +grimier +grimiest +grimily +griminess +griming +grimliness +grimly +grimm +grimme +grimmell +grimmer +grimmest +grimmett +grimmia +grimmiaceae +grimmiaceous +grimmick +grimmish +grimness +grimoire +grimp +grimpe +grimsby +grimsdyke +grimshaw +grimsley +grimson +grimsson +grimstead +grimvisaged +grimwig +grimwood +grimy +grin +grinagog +grinblat +grinch +grind +grindable +grinded +grindeland +grindelia +grinder +grinderman +grinders +grindery +grindhouse +grinding +grindingly +grindings +grindle +grinds +grindstones +griner +grinevia +gringer +gringo +gringoire +gringolee +gringolet +gringophobia +gringos +grinham +grink +grinling +grinnage +grinned +grinnell +grinnellia +grinner +grinners +grinning +grinningly +grinny +grins +grintern +grinyuvene +griot +griots +grioux +grip +gripe +griped +gripeful +griper +gripers +gripes +gripey +gripgrass +griphite +griphosaurus +gripier +gripiest +griping +gripingly +gripless +gripman +gripment +grippal +gripped +gripper +grippers +grippes +grippier +grippiest +grippiness +gripping +grippingly +grippingness +gripple +grippleness +grippotoxin +grippy +grips +gripsack +gript +gripy +griqua +griquaite +griqualander +gris +grisaille +grisanti +grisard +grisby +grischa +griscom +griselda +griseldis +griseous +grisette +grisettish +grisgris +grisha +grishnakh +griskin +grisled +grislier +grisliest +grisliness +grisly +grison +grisoni +grisons +grisounite +grisoutine +grissel +grissens +grissom +grissons +gristbite +grister +gristhorbia +gristle +gristles +gristlier +gristliest +gristliness +gristly +gristmiller +gristmilling +grists +gristy +griswald +griswold +grit +gritch +grith +grithbreach +grithman +gritless +gritrock +grits +gritstone +gritted +gritten +gritter +gritti +grittier +grittiest +grittily +grittiness +gritting +grittle +gritton +gritty +gritz +griveous +grivet +grivna +grixti +grizel +grizelda +grizzard +grizzel +grizzled +grizzler +grizzlers +grizzles +grizzley +grizzlier +grizzlies +grizzliest +grizzling +grizzly +grizzlyflats +grizzlyman +grmbl +grnhmcomn +groaker +groan +groaned +groaner +groaners +groaneth +groanful +groaning +groaningly +groanings +groans +groats +groatsworth +grobian +grobianism +grobitsch +groce +grocerdom +groceress +groceries +grocerly +grocers +grocerwise +grocery +groceryman +grochau +grod +grodenchik +grodin +grody +groellmann +groemer +groen +groenboom +groenendael +groener +groeneveld +groenne +groenning +groesbeck +groesse +groetsema +groff +groffo +grog +grogan +groggery +groggier +groggiest +groggily +grogginess +groggins +groggy +groghe +grogo +grogram +grograms +grogs +grogshop +grogshops +groh +grohk +grohovsky +groin +groined +groinery +groining +groins +grok +grokked +groks +grole +groleau +grolier +grolieresque +grom +groma +gromarty +gromatic +gromatics +gromek +gromia +gromiec +grommets +gromoff +gromov +gromwell +grona +grondin +gronemeyer +groningen +gronk +gronked +gronwall +groohum +groom +groomed +groomer +groomers +grooming +groomish +groomishly +groomlet +groomling +grooms +groomsman +groomsmen +groomy +groop +groose +groot +grootaert +groote +grootenboer +grootfontein +grooty +groove +grooved +grooveless +groovelike +groover +grooverhead +groovers +grooves +groovier +grooviest +grooviness +grooving +groovy +grope +groped +groper +gropers +gropes +gropeth +groping +gropingly +gropple +grorudite +gros +grosbeaks +groschen +grose +groser +groset +grosgrain +grosgrained +grosgrains +grosislet +grosjean +grosman +grosnay +grosper +gross +grossart +grosse +grossed +grosseile +grossen +grossepointe +grosser +grossers +grosses +grossest +grossetete +grosshead +grossheaded +grossify +grossing +grosskurth +grossly +grossman +grossmann +grossmith +grossness +grosso +grossular +grossularia +grossularite +grossutti +grosswald +grosz +groszy +grot +grote +grotesque +grotesquely +grotesquerie +grotesques +groth +grothine +grothite +grothum +grotian +grotianism +grotier +grotrian +grots +grottes +grottesco +grotto +grottoed +grottoes +grottolike +grottos +grottowork +grouch +grouched +groucher +grouches +grouchier +grouchiest +grouchily +grouchiness +grouching +grouchingly +groucho +grouchy +groudwork +grouf +grough +groulx +ground +groundable +groundably +groundage +groundberry +groundbird +grounded +groundedly +groundedness +groundenell +grounder +grounders +groundflower +groundhog +grounding +groundless +groundlessly +groundliness +groundling +groundlings +groundly +groundman +groundmass +groundneedle +groundnut +groundplot +grounds +groundsheet +groundsill +groundsman +groundswell +groundswells +groundward +groundwater +groundwave +groundwood +groundy +group +groupage +groupageness +grouped +grouper +groupers +groupid +groupie +groupies +grouping +groupings +groupist +grouplet +groupmail +groupment +groupname +groups +groupware +groupwise +grouse +grouseberry +grousecreek +groused +grouseless +grouser +grousers +grouses +grouseward +grousewards +grousing +grousy +grout +grouted +grouter +grouters +grouthead +groutier +groutiest +grouting +grouts +grouty +grouze +grove +grovecity +groved +grovehill +grovel +groveland +groveled +groveler +grovelers +groveless +groveling +grovelingly +grovelings +grovelled +grovelling +grovels +grovenor +groveoak +groveport +grover +grovercity +groverhill +grovers +grovertown +groves +grovescity +grovespring +grovestine +groveton +grovetown +grovy +grow +growable +growan +growden +growed +grower +growers +groweth +growing +growingly +growled +growler +growlers +growlery +growlier +growliest +growling +growlingly +growls +growly +grown +grownups +grows +growse +growsome +growth +growthful +growthiness +growthless +growths +growthy +groyne +grozart +grozet +groznyvek +grozyatcya +grscs +gruau +gruault +grub +gruba +grubb +grubba +grubbed +grubber +grubbers +grubbery +grubbier +grubbiest +grubbily +grubbiness +grubbing +grubbs +grubby +grube +grubel +gruber +grubhood +grubless +grubroot +grubs +grubstake +grubstaked +grubstaker +grubstakes +grubstaking +grubstreet +grubville +grubworm +grubworms +gruda +grudge +grudged +grudgeful +grudgefully +grudgekin +grudgeless +grudger +grudgers +grudgery +grudges +grudging +grudgingly +grudgingness +grudgment +grudt +grudzinski +grue +gruebler +gruel +grueled +grueler +gruelers +grueling +gruelingly +gruelings +gruelled +grueller +gruellers +gruelling +gruellings +gruelly +gruels +gruender +grueneich +gruenhagen +gruenspecht +gruenwald +grues +gruesome +gruesomely +gruesomeness +gruesomer +gruesomest +gruffed +gruffer +gruffest +gruffily +gruffiness +gruffish +gruffle +gruffly +gruffness +gruffs +gruffy +gruffydd +grufted +grugru +gruhl +gruhn +gruhnj +gruidae +gruiform +gruiformes +gruine +gruis +grulla +grum +grumbled +grumbler +grumblers +grumbles +grumblesome +grumbling +grumblingly +grumbly +grume +grumio +grumium +grumly +grummel +grummels +grummet +grummeter +grumness +grumose +grumous +grumousness +grump +grumped +grumph +grumphie +grumphy +grumpier +grumpiest +grumpily +grumpiness +grumping +grumpish +grumps +grumpy +grun +grunberg +grund +grundified +grundle +grundlov +grundy +grundycenter +grundyism +grundyist +grundyite +grunecker +gruneman +grunen +gruner +grunerite +grunge +grungier +grungiest +grungy +grunia +gruning +grunion +grunions +grunow +grunstadt +grunted +grunter +grunters +grunth +grunther +grunting +gruntingly +gruntle +gruntled +gruntles +gruntling +grunts +grunwald +grupe +grus +grush +grushie +grusi +grusian +grusigouin +grusinian +grusinskaya +gruska +gruss +gruszczynski +grutch +grutes +grutten +gruver +gruyere +gruys +gruzaf +gruzin +grybinski +gryde +gryder +gryff +grygla +grylli +gryllid +gryllidae +gryllos +gryllotalpa +gryllus +grym +grypanian +gryphaea +gryphia +grypho +gryphon +gryphons +gryphosaurus +gryposis +grypotherium +grypton +grysbok +grytviken +gryzman +grzegorek +grzegorz +grzesik +gsbacd +gsbadm +gschwind +gsfc +gsia +gspeed +gstm +gsview +gtewd +gtewis +gtrack +gtri +gtsang +gtsm +guaba +guacacoa +guacamole +guacaya +guachamaca +guacharo +guachipilin +guacho +guacico +guacimo +guacin +guaco +guacolda +guaconize +guadagnini +guadalajara +guadalcanal +guadalupe +guadalupita +guadeloupe +guadeloupian +guadelupe +guadema +guagatagare +guage +guaglio +guagu +guagua +guaharibo +guahiban +guahibo +guahivo +guai +guaiac +guaiacol +guaiacolize +guaiaconic +guaiacum +guaiaqui +guaiaretic +guaiasanol +guaica +guaicuru +guaicuruan +guaigua +guaika +guainia +guaiol +guaira +guaja +guajaja +guajajara +guajardo +guajaribo +guajibo +guajira +guajiro +guaka +gualaca +gualala +gualdi +gualtierotti +guama +guamanian +guambia +guambiano +guan +guana +guanabana +guanabano +guanacaste +guanaco +guanacos +guanaja +guanajuatite +guanajuato +guanamine +guanano +guanase +guanay +guanche +guaneide +guang +guanga +guangdong +guangfu +guanglan +guango +guangxi +guangzhou +guanica +guaniferous +guanin +guanize +guano +guanophore +guanos +guanosine +guansd +guansda +guantanamo +guanxi +guanyl +guanylic +guanyun +guao +guapena +guapilla +guapinol +guapore +guaque +guar +guara +guarabu +guaracha +guaraguao +guarana +guarani +guaranian +guaranies +guaranine +guaranis +guarantee +guaranteed +guaranteeing +guaranteer +guaranteers +guarantees +guarantied +guaranties +guarantine +guarantors +guarantying +guarao +guarapucu +guarate +guarategaja +guaratira +guaraunan +guarauno +guarayo +guarayos +guarayu +guarayuta +guard +guarda +guardable +guardant +guardants +guarded +guardedly +guardedness +guardeen +guarder +guarders +guardfish +guardful +guardfully +guardhouse +guardhouses +guardi +guardian +guardiancy +guardianess +guardianless +guardianly +guardians +guardianship +guardiela +guarding +guardingly +guardino +guardless +guardlike +guardmans +guardo +guardrail +guardroom +guards +guardship +guardsman +guardsmen +guardstone +guarea +guarekena +guarequena +guariba +guarico +guariji +guarijio +guarini +guarinite +guarino +guarnera +guarneri +guarnerius +guarneros +guarnieri +guarrau +guarri +guarrido +guars +guaruan +guasa +guasch +guastaferro +guastalline +guasti +guasurango +guasurangue +guatambu +guatemala +guatemalan +guatemalans +guatemoco +guativere +guato +guatoan +guatto +guatusan +guatuso +guauaenok +guava +guavaberry +guavas +guavi +guaviare +guavina +guaxare +guay +guayaba +guayabero +guayabi +guayabo +guayacan +guayaki +guayakiache +guayama +guayana +guayanilla +guayaqui +guayaquil +guayas +guayba +guaycuru +guaycuruan +guaymas +guaymi +guaymie +guaynabo +guayqueri +guayroto +guayule +guayuyaco +guaza +guazazara +guazuma +guba +gubabwingu +gubal +gubarev +gubat +gubatnon +gubawa +gubbertush +gubbin +gubbins +gubbish +gubblick +gubbo +gubenco +guber +gubernacula +gubernacular +gubernaculum +gubernation +gubernative +gubernator +gubernatrix +guberniya +gubi +gubu +gubuyakpa +gucci +gucer +guciz +guck +guckes +gucki +gucks +gudal +gudame +gudang +guddle +gude +gudebrother +gudefather +gudegast +gudeilla +gudella +gudemother +gudeni +gudenne +gudesake +gudesakes +gudesire +gudewife +gudge +gudgeon +gudgeons +gudget +gudgodah +gudi +gudiachvili +gudmundur +gudnitz +gudny +gudo +gudok +gudrun +gudschinsky +gudu +guduf +gudula +gudupe +gudushauri +gudwa +gudy +guebucu +guecia +gueckedou +gueden +guedry +gueeriero +guegue +guehne +guejarite +gueladjo +guelavi +guelavia +guelebda +guelfi +guellec +guelma +guelmim +guelpe +guelphic +guelphish +guelphism +guelstorff +guemal +guemshek +guena +guendel +guendolen +guenepe +guenette +guenevere +guenna +guenni +guenon +guenstigeren +guenter +guenther +gueorgui +guepard +guera +guerchard +guercio +guercioni +guerd +guerdjou +guerdonable +guerdoner +guerdonless +guerdons +guere +guererro +guerette +guereza +guerickian +guerilla +guerillas +guerin +guerinet +guerman +guermantes +guerneville +guernica +guernseyed +guernseys +guerra +guerrant +guerrasio +guerraud +guerre +guerreiro +guerrero +guerrier +guerrila +guerrilla +guerrillaism +guerrillas +guerrino +guerritore +guers +guertchikoff +guertin +guerze +guesdism +guesdist +guess +guessable +guessed +guesser +guessers +guesses +guessing +guessingly +guesstimate +guesstimates +guessworker +guest +guestbook +guestchamber +guested +guesten +guester +guesthouse +guesting +guestive +guestless +guestling +guestmaster +guests +guestship +guestwise +guetapens +guetar +guetare +guetary +guevara +gueve +guevea +guevera +guevin +guevrement +gueydan +gueye +gufa +guff +guffawed +guffawing +guffaws +guffer +guffey +guffin +guffs +guffy +gugada +gugadja +gugal +guganchi +gugbe +guggi +guggle +gugglet +guglet +guglia +guglielma +guglielmi +guglielmo +gugliemo +guglio +gugolka +gugu +gugubera +gugudayor +guguminjen +guguwara +guguyalanji +guguyimidjir +guha +guhayna +guhbish +guhjali +guhl +guhmbee +guhr +guhrke +guhusamane +guiam +guiana +guianan +guianese +guiarak +guib +guiba +guibas +guiberoua +guibwa +guiccioli +guich +guiche +guichicovi +guicoder +guicopoulos +guicuru +guida +guidable +guidage +guidance +guidances +guidar +guide +guideboard +guidebookish +guidebooks +guidecraft +guided +guideless +guidelines +guidelli +guideposts +guider +guideress +guiderock +guiders +guidership +guides +guideship +guidest +guideway +guidice +guidiff +guidimaka +guiding +guidman +guido +guidon +guidonian +guidons +guidwilly +guiffre +guige +guigley +guiglo +guignardia +guignet +guignon +guijo +guilandina +guilbaud +guilbault +guilbert +guild +guildenhorn +guildenstern +guilder +guilderland +guilders +guildic +guildry +guilds +guildship +guildsman +guile +guiled +guileful +guilefully +guilefulness +guileless +guilelessly +guiler +guilery +guiles +guilfanov +guilford +guilfords +guilfoyle +guilgud +guili +guilia +guilietta +guiling +guilio +guiljoyle +guilkey +guilla +guillaume +guillema +guillemet +guillemette +guillermina +guillermo +guillet +guillevat +guilliano +guilloche +guillochee +guillon +guillory +guillotinade +guillotined +guillotiner +guillotines +guillotining +guillotinism +guillotinist +guilmette +guilo +guilt +guiltier +guiltiest +guiltily +guiltiness +guiltless +guiltlessly +guilts +guiltsick +guiltware +guilty +guily +guimaraes +guimaras +guimbard +guimeyo +guimond +guimpe +guin +guinaang +guinan +guinau +guinda +guinde +guindi +guindon +guinea +guineabissau +guineaman +guinean +guineas +guinee +guiness +guinevere +guinevese +guinfo +guingand +guinn +guinna +guinnane +guinness +guinzadan +guiomar +guion +guipure +guipuzcoan +guirard +guiraut +guirguis +guiro +guirvidig +guisan +guisard +guise +guised +guiseppe +guiseppi +guiseppina +guiser +guises +guisian +guising +guisler +guisnay +guisol +guisseppi +guissey +guitar +guitard +guitare +guitarfish +guitarist +guitarists +guitars +guiterman +guitermanite +guitguit +guitierrez +guitry +guittard +guitti +guittonian +guivini +guiyang +guizar +guize +guizhou +guiziga +guizzardi +gujaaxet +gujalabiya +gujar +gujarat +gujarathi +gujarati +gujari +gujba +gujer +gujerathi +gujerati +guji +gujingalia +gujjari +gujji +gujranwala +gujrathi +gujrati +gujur +gujuri +gula +gulaalaa +gulae +gulager +gulaguleu +gulai +gulak +gulaman +gulancha +gulanga +gulanganes +gular +gularis +gulati +gulbahar +gulbrandsen +gulch +gulches +gulden +guldens +gule +guleguleu +gules +gulf +gulfan +gulfbreeze +gulfe +gulfed +gulfei +gulfhammock +gulfier +gulfing +gulflike +gulfport +gulfs +gulfshores +gulfside +gulfwards +gulfweed +gulfy +gulgul +gulguli +guli +guliano +gulicha +gulick +guliguli +gulili +gulinula +gulinulae +gulinular +gulis +gulix +gulko +gull +gullable +gullably +gullan +gulland +gulled +gullekson +gullen +gullery +gulleting +gullets +gulley +gulleys +gullfoyle +gullibility +gullible +gullibly +gullied +gullies +gulling +gullion +gullish +gullishly +gullishness +gulliver +gullivers +gulls +gullyhole +gullying +gulmancema +gulmit +gulngui +gulo +gulonic +gulose +gulosity +gulp +gulped +gulper +gulpers +gulph +gulpier +gulpilil +gulpin +gulping +gulpingly +gulps +gulpy +gulravage +gulsach +gulston +gultekin +gulud +gulumba +gulvin +gulyali +gumadir +gumahi +gumait +gumalu +gumanitarnom +gumas +gumasi +gumatj +gumawana +gumawasangka +gumb +gumba +gumbaingari +gumbang +gumbaynggir +gumbel +gumberry +gumbley +gumboil +gumboils +gumbos +gumbotil +gumbs +gumby +gumchewer +gumdigger +gumdigging +gumdrop +gumdrops +gumede +gumer +gumfield +gumflower +gumia +gumihan +gumine +gumis +gumless +gumlike +gumly +gumma +gummadi +gummage +gummaker +gummaking +gummata +gummatous +gummed +gummer +gummers +gummi +gummidge +gummier +gummiest +gummiferous +gumminess +gumming +gummite +gummites +gummose +gummosis +gummosity +gummous +gummy +gump +gumpel +gumphion +gumption +gumptionless +gumptions +gumptious +gumpus +gums +gumsai +gumshoe +gumshoed +gumshoes +gumspring +gumtree +gumtrees +gumushane +gumuz +gumweed +gumweeds +gumwood +gumwoods +guna +gunage +gunalada +gunantuna +gunar +gunars +gunasekera +gunate +gunation +gunawan +gunawitji +gunbalang +gunbarrel +gunbearer +gunbelt +gunboat +gunboats +gunbright +gunbuilder +gunch +guncotton +gunda +gundangbon +gundareva +gundawardene +gundecha +gundel +gunder +gundersen +gunderson +gundi +gundjeipme +gundlach +gundog +gundown +gundry +gundy +gunebo +gunei +guner +gunes +gunface +gunfer +gunfighter +gunfighters +gunfights +gunfires +gung +gunga +gungaadorj +gungalang +gunganchi +gungari +gungawa +gungbe +gungdekha +gunge +gunggara +gunggari +gunghi +gungho +gungor +gungu +gunguragone +gunhild +gunhouse +guni +gunian +guniandi +gunila +gunilla +gunin +gunite +gunites +guniyan +guniyn +gunj +gunkel +gunks +gunl +gunless +gunlock +gunlocks +gunlod +gunmaker +gunmaking +gunman +gunmanship +gunmarung +gunmetal +gunmetals +gunn +gunnage +gunnal +gunnar +gunne +gunned +gunnel +gunnell +gunnells +gunnels +gunnemark +gunner +gunnera +gunneraceae +gunneress +gunneries +gunners +gunnership +gunnie +gunnies +gunning +gunnings +gunnis +gunnison +gunnung +gunny +gunnysack +gunnysacks +guno +gunocracy +gunong +gunpaper +gunpapers +gunplays +gunpoint +gunpoints +gunpowder +gunpowderous +gunpowdery +gunpower +gunrack +gunraj +gunreach +gunroom +gunrooms +gunrunner +gunrunning +guns +gunsel +gunsels +gunship +gunships +gunshop +gunshot +gunshots +gunsights +gunslinger +gunslingers +gunslinging +gunsman +gunsmith +gunsmithery +gunsmithing +gunsmiths +gunsmoke +gunst +gunster +gunstick +gunstock +gunstocker +gunstocking +gunstocks +gunstone +gunter +guntersville +gunther +guntis +gunton +guntown +gunty +gunu +gunuakena +gununakena +gunung +gunvar +gunvor +gunwale +gunwales +gunwhale +gunwinggic +gunwinggu +gunwingguan +gunwingguic +gunya +gunyah +gunyamolo +gunyang +gunyeh +gunz +gunza +gunzburg +gunzian +gunzib +guoshoujing +guotie +guoyagui +guoyu +gupapuyngu +gupis +guppies +guppy +gupta +guptavidya +gupton +gura +gurabo +guradjara +guradze +gurage +gurageharari +guragie +gurague +guragureu +gurais +guramalum +guran +gurani +gurara +gurash +gurau +gurbaal +gurbe +gurble +gurcharan +gurchenko +gurdaspur +gurdfish +gurdip +gurdjar +gurdjieff +gurdle +gurdon +gurdwara +gure +gurekahugu +gurenne +gurer +guresha +gurevic +gurevitch +gurezi +gurfield +gurfle +gurge +gurgel +gurgenci +gurgeon +gurgeons +gurges +gurgi +gurgitation +gurgled +gurgles +gurglet +gurgling +gurglingly +gurgly +gurgo +gurgoyle +gurgulation +guri +gurian +gurianadzhar +guriasa +guriaso +guric +gurica +gurie +gurin +gurindji +gurinji +gurion +gurish +gurjar +gurjara +gurjinder +gurjindi +gurjit +gurjun +gurk +gurka +gurkakoff +gurkhali +gurkhas +gurko +gurkovsky +gurl +gurland +gurley +gurly +gurma +gurmana +gurmarti +gurmayom +gurmeet +gurmukhi +gurnard +gurnee +gurnet +gurnetty +gurney +gurneyite +gurneys +gurniad +gurnyak +guro +gurr +gurrah +gurreh +gurrum +gurry +gurs +gursahaney +gursharan +gursin +gurskii +gurt +guru +guruf +guruku +gurum +gurumukhi +gurung +gurungs +gurunsi +guruntum +gurupi +gurus +guruship +gurvali +gurvinder +gurzar +gusak +gusan +gusanos +gusap +gusapmot +gusar +gusawa +guseinzade +gusella +guseman +guser +guserid +gusev +gush +gushed +gusher +gushers +gushes +gushet +gushier +gushiest +gushily +gushiness +gushing +gushingly +gushingness +gushy +gusii +gusilay +guskin +gusla +gusle +guss +gussack +gusseted +gusseting +gussets +gussi +gussie +gussied +gussier +gussies +gussum +gussy +gussying +gust +gusta +gustable +gustaf +gustaffson +gustafson +gustafsson +gustafva +gustare +gustation +gustative +gustatorial +gustatorily +gustatory +gustavo +gustavsen +gustaw +gustay +gusted +gustful +gustfully +gustfulness +gusti +gustie +gustier +gustiest +gustily +gustine +gustiness +gusting +gustless +gustlin +gustoavo +gustoes +gustoish +guston +gusts +gustus +gusty +gusu +gusya +guta +gutcher +gutemberga +guten +gutenberg +gutermuth +guth +guthard +guthery +guthlaf +guthrie +guthries +guthro +guthrum +guthwine +guti +gutian +gutierrez +gutium +gutless +gutlessness +gutlike +gutling +gutman +gutmann +gutnic +gutnish +gutob +gutobi +gutobremo +gutobremogta +guts +gutschwager +gutsier +gutsiest +gutt +gutta +guttable +guttate +guttated +guttatim +guttation +guttberg +gutte +gutted +guttenberg +gutter +guttera +gutteral +gutterblood +guttered +guttering +gutterlike +gutterling +gutterman +gutters +guttersnipe +guttersnipes +gutterspout +gutterwise +guttery +gutti +guttide +guttie +guttier +guttiest +guttiferae +guttiferal +guttiferales +guttiferous +guttiform +guttiness +gutting +guttle +guttler +guttling +guttman +guttmann +guttula +guttulae +guttular +guttulate +guttule +guttural +gutturalism +gutturality +gutturalize +gutturally +gutturalness +gutturals +gutturize +gutturonasal +guttus +gutty +gutu +gutweed +gutwise +gutwort +guty +gutzmann +guus +guusje +guvacine +guvacoline +guvax +guve +guvja +guwet +guwii +guwot +guxhou +guyandot +guyanese +guybet +guydom +guyed +guyenne +guyer +guyers +guyhurst +guying +guylain +guylaine +guyler +guymas +guymon +guyomard +guyon +guyot +guys +guyse +guysmills +guysville +guyton +guytrash +guyuk +guyuwa +guzawa +guze +guzii +guzikov +guzma +guzman +guzmania +guzul +guzzled +guzzledom +guzzler +guzzlers +guzzles +guzzling +gvax +gvede +gvoko +gvsu +gwabegwabe +gwadar +gwadara +gwadi +gwag +gwaihir +gwak +gwaka +gwaltney +gwaluva +gwama +gwamba +gwana +gwanara +gwanda +gwandara +gwandu +gwangsam +gwanje +gwano +gwanto +gwantu +gwapa +gwara +gwaran +gwari +gwate +gwatuley +gwaza +gwean +gweat +gweda +gwede +gwedena +gweduc +gweduck +gweducks +gweducs +gweed +gweeon +gwely +gwemara +gwen +gwenda +gwendele +gwendolen +gwendolin +gwendoline +gwendolyn +gweneth +gwenette +gwenn +gwenneth +gwenni +gwennie +gwenny +gwennyth +gweno +gwenora +gwenore +gwent +gwerder +gwere +gweri +gwhost +gwibwen +gwichin +gwiini +gwikhwe +gwillim +gwilym +gwine +gwini +gwinn +gwinner +gwiyaku +gwoiden +gwoira +gwomo +gwomu +gwong +gworam +gwoza +gwozo +gwune +gwusun +gwuvax +gwuvm +gwuza +gwyn +gwyne +gwynedd +gwyneth +gwyniad +gwynith +gwynn +gwynne +gwynneville +gwynyth +gxon +gyaazi +gyakusatsu +gyan +gyange +gyarong +gyarung +gyascutus +gybe +gycerol +gyegem +gyel +gyem +gyemawa +gyenes +gyengyen +gyeta +gyeto +gyger +gyges +gygis +gyires +gyldenia +gyle +gyles +gyllen +gyllenspetz +gylys +gymble +gymel +gymkata +gymkhana +gymkhanas +gymnadenia +gymnanthes +gymnanthous +gymnarchidae +gymnarchus +gymnasia +gymnasiac +gymnasial +gymnasiarch +gymnasiarchy +gymnasiast +gymnasic +gymnasisia +gymnasisiums +gymnasiums +gymnastics +gymnasts +gymnemic +gymnetrous +gymnic +gymnical +gymnics +gymnite +gymnoblastea +gymnoblastic +gymnocarpic +gymnocarpous +gymnocerata +gymnocidium +gymnocladus +gymnoconia +gymnoderinae +gymnodinium +gymnodont +gymnodontes +gymnogen +gymnogenous +gymnoglossa +gymnogynous +gymnogyps +gymnolaema +gymnolaemata +gymnonoti +gymnopaedes +gymnopaedic +gymnophiona +gymnoplast +gymnorhina +gymnorhinal +gymnosoph +gymnosophist +gymnosophy +gymnospermae +gymnospermal +gymnospermic +gymnosperms +gymnospermy +gymnospore +gymnosporous +gymnostomata +gymnostomina +gymnostomous +gymnothorax +gymnotid +gymnotidae +gymnotoka +gymnotokous +gymnotus +gymnura +gymnure +gymnurinae +gymnurine +gympie +gyms +gynaecea +gynaeceum +gynaecic +gynaeocracy +gynander +gynandrarchy +gynandria +gynandrian +gynandrism +gynandroid +gynandrous +gynandry +gynantherous +gynarchic +gynarchy +gyne +gynecaeum +gynecic +gynecidal +gynecide +gynecocracy +gynecocrat +gynecocratic +gynecoid +gynecolatry +gynecologic +gynecologies +gynecologist +gynecology +gynecomania +gynecomastia +gynecomasty +gynecomazia +gyneconitis +gynecopathic +gynecopathy +gynecophore +gynecophoric +gynecotelic +gynecratic +gyneocracy +gyneolater +gyneolatry +gynephobia +gynerium +gynethusia +gyngell +gyniatrics +gyniatry +gynic +gynics +gynobase +gynobaseous +gynobasic +gynocardia +gynocardic +gynocracy +gynocratic +gynodioecism +gynoecia +gynoecium +gynogenesis +gynophagite +gynophore +gynophoric +gynospore +gynostegia +gynostegium +gynostemium +gynt +gynura +gyoengy +gyoengyoessy +gyoergy +gyogo +gyong +gyorgy +gyorsopron +gypaetus +gype +gypo +gypped +gypper +gyppers +gypping +gyppo +gyps +gypseian +gypseous +gypsied +gypsies +gypsiferous +gypsine +gypsiologist +gypsography +gypsologist +gypsology +gypsophila +gypsophilous +gypsophily +gypsoplast +gypsous +gypster +gypsums +gypsy +gypsydom +gypsydoms +gypsyesque +gypsyfy +gypsyhead +gypsyhood +gypsying +gypsyish +gypsyism +gypsyisms +gypsylike +gypsyry +gypsyweed +gypsywise +gypsywort +gyptis +gyracanthus +gyral +gyrally +gyrant +gyrated +gyrates +gyrating +gyration +gyrational +gyrations +gyrator +gyrators +gyratory +gyre +gyred +gyrencephala +gyrene +gyres +gyrfalcons +gyri +gyric +gyring +gyrinid +gyrinidae +gyrinus +gyro +gyrocar +gyroceracone +gyroceran +gyroceras +gyrochrome +gyrodactylus +gyrogonite +gyrograph +gyroidal +gyroidally +gyrolite +gyrolith +gyroma +gyromagnetic +gyromancy +gyromele +gyrometer +gyromitra +gyron +gyronny +gyrophora +gyrophoric +gyropigeon +gyroplane +gyros +gyroscopes +gyroscopic +gyroscopics +gyrose +gyrostachys +gyrostat +gyrostatic +gyrostatics +gyrotheca +gyrous +gyrova +gyrovagi +gyrovagues +gyrowheel +gyrus +gysel +gysi +gyte +gytha +gytling +gyula +gyurcsak +gyve +gyved +gyves +gyving +gzip +gzira +gzyl +haaaaaahhh +haaang +haab +haack +haade +haaf +haahashtari +haak +haake +haaksman +haal +haalpulaar +haan +haapai +haarman +haarmann +haartman +haas +haase +haasvelt +haath +haavu +habab +hababam +habaiah +habakkuk +habakuk +habana +habanera +habaneras +habau +habault +habaziniah +habbaniya +habbe +habbema +habble +habdalah +habe +habeeb +habel +habelrih +habema +haben +habena +habenal +habenar +habenaria +habendum +habenula +habenular +haber +haberdash +haberdasher +haberdashers +haberdine +haberfield +habergeon +habergeons +haberland +haberman +habermann +habersham +habert +habesha +habib +habich +habicht +habiganj +habilable +habilatory +habile +habilement +habiliment +habilimented +habiliments +habilitate +habilitation +habilitator +hability +habille +habipov +habiri +habiru +habit +habitability +habitable +habitably +habitacle +habitacule +habitally +habitan +habitance +habitancies +habitancy +habitantes +habitants +habitat +habitate +habitation +habitational +habitations +habitative +habitats +habited +habiting +habitmaker +habits +habituality +habitualize +habitually +habitualness +habituated +habituates +habituating +habituation +habituations +habitude +habitudinal +habitue +habitues +habitus +habiyon +habnab +habomai +haboob +habor +habra +habre +habronema +habronemic +habu +haburi +habutai +habutaye +habyarimana +hace +hacent +hacer +hach +hachadorian +hachaliah +hache +hachett +hachey +hachilah +hachiman +hachita +hachmoni +hachmonite +hachure +haci +haciendas +hack +hacka +hackable +hackalot +hackamatak +hackamore +hackandslash +hackandslay +hackathorne +hackbarrow +hackbolt +hackbush +hackbut +hackbuteer +hacked +hackee +hackenbush +hackensack +hackensacker +hacker +hackerbladet +hackercorp +hackerdom +hackerdoms +hackerism +hackerisms +hackerizer +hackerlike +hackerly +hackernature +hackernet +hackerom +hackerproof +hackers +hackerseye +hackerspeak +hackertype +hackervalley +hackerxx +hackery +hackerz +hacket +hackett +hackettstown +hacki +hackie +hackies +hackin +hacking +hackingly +hackings +hackintosh +hackish +hackishly +hackishness +hackitude +hackl +hackleback +hackleburg +hackled +hackler +hacklers +hackles +hacklier +hacklin +hackling +hacklog +hackly +hackmack +hackman +hackme +hackmen +hackmore +hacknet +hackneyer +hackneying +hackneyism +hackneyman +hackneys +hackorama +hacks +hacksaws +hackshaw +hacksilber +hacksneck +hacksoftware +hackster +hackstop +hackthorn +hacktree +hackwood +hackwork +hackworks +hacky +hackz +hackzone +hactrn +haczkiewicz +hadaareb +hadad +hadadezer +hadadrimmon +hadang +hadar +hadareb +hadarezer +hadash +hadashah +hadass +hadassah +hadattah +hadauti +hadawatha +hadaway +hadbot +hadd +hadda +haddad +haddam +haddaway +hadden +haddick +haddie +haddix +haddo +haddocker +haddocks +haddon +haddonfield +haddow +haddrick +hade +hadean +hadeja +hadejia +hadejiya +hadel +hadem +haden +hadendoa +hadendowa +hadensville +hadentomoid +haderach +hades +hadges +hadi +hadia +hadid +hadimu +hading +hadirahardjo +hadith +hadiya +hadiyya +hadj +hadjee +hadjees +hadjemi +hadjes +hadji +hadjis +hadjive +hadjiyanev +hadlai +hadland +hadley +hadlock +hadlyme +hadn +hadnt +hador +hadoram +hadoti +hadra +hadrach +hadramaut +hadramautian +hadramawt +hadria +hadriaca +hadrome +hadromerina +hadromycosis +hadronic +hadrons +hadrosaur +hadrosaurus +hadst +hadu +hadwiger +hady +hadya +hadye +hadza +hadzabi +hadzape +hadzapi +hadziev +haeberie +haeberle +haec +haecceity +haechler +haeckelian +haeckelism +haefeli +haefelin +haegelian +haeju +haeke +haekic +haela +haelterman +haem +haemamoeba +haemanthus +haematherm +haemathermal +haematin +haematinon +haematinum +haematite +haematobious +haematocrya +haematocryal +haematopus +haematoxylic +haematoxylin +haematoxylon +haemers +haemoglobin +haemogram +haemonchosis +haemonchus +haemony +haemophile +haemoproteus +haemorrhage +haemorrhagia +haemorrhagic +haemorrhoid +haemosporid +haemulidae +haemuloid +haenel +haeng +haengt +haenning +haeremai +haeribeny +haering +haerle +haerlin +haernqvist +haertel +haertl +haertner +haeshin +haestirettur +haet +haets +haeussler +haezendonck +hafanana +hafb +hafeezah +hafermalz +haff +haffet +haffkinize +haffle +haffner +hafgan +hafia +hafiz +haflee +hafleigh +haflifoeri +hafner +hafniums +hafnyl +hafouli +hafs +haft +hafta +hafted +haftel +hafter +hafting +haftlang +haftorah +haftorahs +hafts +hagab +hagaba +hagabah +hagadists +hagahai +hagaii +hagaman +hagan +haganah +hagar +hagarenes +hagarite +hagarites +hagarshores +hagarstown +hagarville +hagbard +hagberry +hagboat +hagborn +hagbush +hagbut +hagbuts +hagdon +hage +hagedorn +hageen +hagel +hagen +hagenbuch +hagenbuck +hageneralit +hagenheimer +hagenia +hagenuk +hager +hagerberg +hagercity +hagerhill +hagerite +hagerman +hagerstown +hagerstrom +hagerthy +hagerty +hages +hageulu +hagewood +hagfish +haggada +haggaday +haggadic +haggadical +haggadist +haggadistic +haggai +haggan +haggar +haggard +haggardly +haggardness +haggards +haggart +haggarty +hagged +hagger +haggerd +haggeri +haggerty +haggi +haggiah +hagging +haggis +haggises +haggish +haggishly +haggishness +haggister +haggites +haggith +haggled +haggler +hagglers +haggles +haggling +hagglund +haggly +haggy +haghi +haghios +hagi +hagia +hagiarchy +hagihara +hagiocracy +hagiographa +hagiographal +hagiographer +hagiographic +hagiography +hagiolater +hagiolatrous +hagiolatry +hagiologic +hagiological +hagiologist +hagiology +hagiophobia +hagioscope +hagioscopic +haglelgam +haglet +hagley +haglike +haglin +hagman +hagney +hagon +hagood +hagridden +hagride +hagrides +hagriding +hagrode +hagrope +hags +hagseed +hagship +hagstone +hagstrom +hagtaper +hagthorpe +haguebut +hagueti +hagweed +hagwood +hagworm +haha +hahaha +hahahah +hahahaha +hahaintesu +hahak +hahira +hahn +hahnemann +hahnemannian +hahnemannism +hahnium +hahntown +hahnville +haho +hahon +hahs +hahtsite +hahutan +haian +haiao +haiathalah +haid +haida +haidan +haidar +haidea +haidee +haider +haidi +haidingerite +haiduk +haig +haigh +haigha +haight +haigler +haihte +haijong +haik +haikai +haikal +haikh +haikwan +hail +hailar +haile +hailed +hailee +hailemariam +hailer +hailers +hailes +hailesboro +hailey +haileyville +haili +hailing +hailproof +hails +hailse +hailshot +hailstones +hailstorms +hailu +hailweed +haily +haim +haimavati +haimen +hain +haina +hainai +hainan +hainanese +hainault +hainaut +hainberry +haine +hainer +haines +hainescity +hainesfalls +hainesport +haing +hainik +haininh +hainline +hainman +haintsee +haiphong +hair +haira +hairball +hairballs +hairband +hairbands +hairbeard +hairbird +hairbrain +hairbreadth +hairbreadths +hairbrush +hairbrushes +haircaps +haircloth +haircloths +haircut +haircuts +haircutter +haircutting +hairdodos +hairdos +hairdress +hairdresser +hairdressers +hairdressing +hairdryer +hairdryers +haire +haired +hairen +hairhoof +hairhound +hairier +hairiest +hairif +hairiferous +hairiness +hairlace +hairless +hairlessness +hairlet +hairlike +hairline +hairlines +hairlock +hairlocks +hairmeal +hairmonger +hairnet +hairpiece +hairpieces +hairpins +hairraising +hairs +hairsbreadth +hairsplitter +hairspray +hairsprays +hairspring +hairsprings +hairston +hairstone +hairstreak +hairstyle +hairstyles +hairstyling +hairstylist +hairstylists +hairtail +hairtrigger +hairup +hairweaver +hairweavers +hairweaving +hairweed +hairwood +hairwork +hairworks +hairworm +hairy +hais +haise +haisla +haithal +haithe +haiti +haitian +haitians +haiton +haitovsky +haitshuari +haitshuwau +hajdubihar +haje +hajek +haji +hajib +hajilij +hajis +hajj +hajjah +hajjes +hajji +hajjis +hajkova +hajong +hajr +haka +hakaba +hakahara +hakalau +hakam +hakan +hakansson +hakari +hakashima +hakc +hakdar +hake +hakea +hakeem +hakeems +hakenkreuz +haker +hakerz +hakes +haketia +haketiya +haki +hakim +hakish +hakitia +hakka +hakkari +hakkatan +hakker +hakkia +hakkinen +hakkoz +hakmem +hako +hakoa +hakoila +hakola +hakone +hakr +hakspeek +hakspek +hakstian +haktek +haku +hakuna +hakupha +hala +halab +halaba +halabi +halachist +halah +halak +halakah +halakhist +halakic +halakist +halakistic +halakwalip +halal +halalas +halalcor +halam +halama +halang +halasz +halation +halavah +halavahs +halawe +halawi +halazone +halba +halbarad +halbedel +halberd +halberdier +halberdman +halberds +halberdsman +halbert +halbi +halbur +halch +halcyon +halcyonian +halcyonic +halcyonidae +halcyoninae +halcyonine +halcyons +hald +haldane +haldanite +haldeman +haldemann +haldin +haldir +haldmuller +haldol +hale +haleb +halebi +halecenter +halecomorphi +haled +haledon +haleigh +haleiwa +halejak +haleness +halenia +haler +halerman +halers +haleru +halerz +hales +halescorners +halesia +halesidanda +halesome +halest +halette +haley +haleyville +half +halfadozen +halfandhalf +halfanos +halfasleep +halfast +halfbacks +halfbaked +halfbeak +halfbeaks +halfblind +halfblood +halfbreed +halfbrother +halfbyte +halfcaste +halfcooked +halfderisive +halfdome +halfer +halfheaded +halfjokingly +halflearned +halflength +halflife +halfling +halflives +halfman +halfmesh +halfmoon +halfmoonbay +halfness +halfnote +halfopen +halford +halfpace +halfpaced +halfpence +halfpennies +halfpenny +halfprice +halfsample +halfsmiley +halfspace +halfstarved +halftime +halftimes +halftone +halftones +halftrack +halfuncial +halfway +halfwise +halfwit +halfwits +halfword +halfwords +halgania +halh +halhul +hali +halia +haliaeetus +halibios +halibiotic +halibiu +halibut +halibuter +halibuts +halicki +halicore +halicoridae +halides +halidom +halidome +halidomes +halidoms +halie +halieutic +halieutics +halifoersch +haligonian +halik +halikulov +halil +halima +halimeda +halimous +halina +haling +halinous +haliographer +haliography +haliotidae +haliotis +haliotoid +haliplankton +haliplid +haliplidae +haliserites +halisteresis +halisteretic +halitherium +haliti +halitoses +halitosis +halituosity +halituous +halitus +haliwell +halkola +halkomelem +hall +halla +hallabaloo +hallage +hallah +hallahan +hallak +hallam +hallan +hallandale +hallands +hallanshaker +hallaran +hallard +hallaren +hallari +hallatt +hallberg +halle +hallebardier +halleck +hallecret +halleflinta +hallel +halleluiah +hallelujah +hallelujahs +hallelujatic +hallenbeck +haller +halleria +hallerton +hallet +hallett +hallex +halley +halleyan +halli +halliard +halliblash +hallick +halliday +hallie +hallieford +halligan +halligen +hallin +halling +hallit +halliwell +halliwill +hallman +hallmarked +hallmarker +hallmarks +hallmoot +hallo +halloa +halloaing +halloas +hallock +halloed +halloes +halloffire +hallogram +hallohan +hallohesh +hallon +halloo +hallooed +hallooing +halloos +hallopididae +hallopodous +hallopus +halloran +hallorann +hallos +hallow +halloway +hallowday +hallowed +hallowedly +hallowedness +halloween +halloweens +hallowell +hallower +hallowers +hallowing +hallowmas +hallows +hallowtide +halloysite +halls +hallsboro +hallson +hallstatt +hallstattian +hallstead +hallstrom +hallsummit +hallsville +halltown +hallucal +hallucinated +hallucinates +hallucinator +hallucined +hallucinogen +hallucinoses +hallucinosis +hallux +hallvar +hallwachs +hallward +hallway +hallways +hallwood +hally +hallyday +halm +halmahera +halmalille +halmawise +halmay +halmer +halmstad +halo +haloa +halobates +halobios +halobiotic +halochromism +halochromy +haloed +haloes +haloesque +halogenate +halogenating +halogenation +halogenoid +halogenous +halogens +halogeton +halohesh +halohydrin +haloid +haloids +haloing +halolike +halolimnic +halomancy +halometer +halomorphic +halon +halop +haloperidol +halophile +halophilism +halophilous +halophylic +halophyte +halophytes +halophytic +halophytism +halopsyche +haloran +halos +halosauridae +halosaurus +haloscope +halosphaera +halotrichite +haloubek +halovanic +haloxene +halpenny +halperin +halpern +halpin +hals +halsam +halse +halsen +halser +halsfang +halsslag +halst +halstad +halstan +halsted +halt +halted +halter +halterbreak +haltered +halteres +halteridium +haltering +halterproof +halters +halteth +haltia +haltica +halting +haltingly +haltingness +haltless +haltmann +halton +halts +halttunen +halucket +haluk +halukkah +halul +halula +halurgist +halurgy +halus +halutz +halva +halvahs +halvaner +halvans +halvar +halvard +halvas +halved +halvelings +halver +halvers +halves +halvi +halving +halvor +halvorsen +halyard +halyards +halysites +hama +hamacher +hamacore +hamacratic +hamad +hamada +hamadan +hamadani +hamadou +hamadryad +hamah +hamailo +hamald +hamama +hamamelidin +hamamelin +hamamelis +hamamelites +hamamura +haman +hamap +hamar +hamarkoke +hamaroy +hamartiology +hamartite +hamate +hamated +hamath +hamathite +hamathzobah +hamatum +hamavand +hamba +hambadaga +hambali +hambantota +hamberg +hambergite +hamble +hamblen +hambleton +hambley +hamblin +hambling +hambo +hambone +hambourg +hambro +hambroline +hamburg +hamburga +hamburger +hamburgers +hamburgs +hamclock +hamd +hamdahl +hamdan +hamday +hamde +hamden +hame +hamed +hameed +hameenlinna +hameg +hamegan +hameha +hameil +hamel +hamelia +hamelin +hamer +hamerbanna +hamerschlag +hamersville +hamesucken +hamewith +hamfast +hamfat +hamfatter +hamgyongdo +hami +hamid +hamidi +hamidian +hamidieh +hamidou +hamidullah +hamiform +hamil +hamilcar +hamill +hamilton +hamiltoncity +hamiltondome +hamiltonia +hamiltonian +hamiltonism +hamin +hamina +hamingja +hamirostrate +hamirpur +hamish +hamiskhak +hamissi +hamital +hamite +hamites +hamitic +hamiticized +hamitism +hamitoid +hamius +hamk +hamlah +hamlay +hamlen +hamler +hamlet +hamleted +hamleteer +hamletize +hamlets +hamletsburg +hamlett +hamlin +hamlincpo +hamline +hamlinite +hamm +hammacher +hammada +hammam +hammami +hammand +hammar +hammarstrand +hammath +hammed +hammedatha +hammel +hammelech +hammer +hammerable +hammerbird +hammercloth +hammercoche +hammerdress +hammered +hammeren +hammerer +hammerers +hammerfall +hammerfish +hammerheaded +hammerheads +hammering +hammeringly +hammerkop +hammerless +hammerli +hammerlike +hammerlock +hammerlocks +hammerman +hammers +hammersbing +hammersley +hammersmith +hammersohn +hammerstein +hammerstone +hammertoe +hammertoes +hammerwise +hammerwork +hammerwort +hammett +hammier +hammiest +hammill +hammily +hamming +hammochrysos +hammock +hammocked +hammocks +hammoleketh +hammon +hammond +hammonds +hammondsport +hammong +hammonia +hammonton +hammothdor +hammou +hammoud +hammy +hamner +hamnett +hamon +hamonah +hamongog +hamor +hamori +hamose +hamoui +hamous +hamp +hampden +hampel +hamper +hampered +hamperedly +hamperedness +hamperer +hamperers +hampering +hamperman +hampers +hampf +hampionship +hamps +hampshire +hampshireman +hampshiremen +hampshirite +hampshirites +hampson +hampstead +hampton +hamptonbays +hamptonfalls +hamptonu +hamptonville +hamra +hamradio +hamrag +hamrell +hamrongite +hamrouche +hams +hamsa +hamschen +hamshackle +hamshen +hamshire +hamster +hamsters +hamstring +hamstringing +hamstrings +hamstrung +hamtai +hamtik +hamtiknon +hamtramck +hamuel +hamul +hamular +hamulate +hamule +hamulites +hamulose +hamulus +hamung +hamus +hamutal +hamza +hamzaoui +hamzat +hamzeh +hana +hanafi +hanafite +hanahan +hanak +hanakichi +hanako +hanald +hanalei +hanalik +hanama +hanameel +hanan +hananeel +hanani +hananiah +hananwa +hanapepe +hanaper +hanaster +hanauer +hanauma +hanavaba +hanavada +hanayome +hanbalite +hanbury +hance +hanced +hanceville +hanch +hancke +hanco +hancock +hancockite +hancza +hanczaryk +hand +handa +handahl +handakhwe +handbag +handbags +handball +handballer +handballs +handbank +handbanker +handbarrow +handbarrows +handbell +handbells +handbill +handbills +handblow +handbolt +handbook +handbooks +handbow +handbrake +handbreadth +handcar +handcars +handcart +handcarts +handclap +handclasps +handcloth +handcock +handcraft +handcrafted +handcrafting +handcraftman +handcrafts +handcuff +handcuffed +handcuffing +handcuffs +handcut +hande +handed +handedly +handedness +handel +handelian +hander +handersome +handfast +handfasted +handfasting +handfastly +handfastness +handfasts +handflower +handforth +handful +handfuls +handgrasp +handgravure +handgrip +handgriping +handgrips +handgun +handguns +handhacking +handhaving +handheld +handholding +handholds +handhole +handi +handicap +handicappers +handicaps +handicrafts +handicuff +handier +handies +handiest +handily +handiness +handing +handistroke +handiwork +handjob +handkercher +handkerchief +handl +handlaid +handle +handlebars +handled +handleless +handler +handlers +handles +handless +handleth +handlettered +handley +handlike +handling +handlings +handlists +handloom +handlooms +handmaid +handmaiden +handmaidenly +handmaidens +handmaids +handnoreport +handoff +handoffs +handoko +handouts +handown +handpick +handpicked +handpicking +handpicks +handpiece +handpost +handprint +handrail +handrailing +handrails +handreader +handreading +hands +handsale +handsaw +handsaws +handsbreadth +handschy +handscrape +handsdown +handsel +handseller +handselling +handsets +handsewn +handsful +handshake +handshaker +handshakes +handshaking +handsmooth +handsof +handsom +handsome +handsomeish +handsomely +handsomeness +handsomer +handsomest +handspade +handspoke +handspring +handsprings +handstaff +handstands +handstaves +handstone +handstroke +handtohand +handtuned +handwave +handwear +handwheel +handwhile +handwork +handworkman +handworks +handwoven +handwr +handwrist +handwrit +handwriter +handwrites +handwriting +handwritings +handwrote +handy +handyblow +handybook +handygrip +handywork +handzlik +hanekroot +hanel +hanes +haney +hanford +hanft +hang +hanga +hangability +hangala +hangalai +hangan +hangar +hangared +hangaring +hangars +hangaza +hangbird +hangby +hangchow +hangdog +hangdogs +hange +hanged +hangee +hanger +hangers +hangeth +hangfire +hanggira +hangie +hanging +hangingly +hangings +hangiro +hangkang +hangle +hangman +hangmanship +hangment +hangnail +hangnails +hangnest +hangouts +hangover +hangovers +hangs +hangtag +hangul +hangup +hangups +hangwoman +hangworm +hangworthy +hangzhou +hanh +hanham +hanhb +hanhi +hani +hania +haniel +hanif +hanifism +hanifite +hanifiya +hanify +hanila +hanin +hanington +hanion +hanis +hanisch +hanish +haniyi +hanja +hanjo +hanjorg +hank +hanka +hankamer +hankammer +hanke +hanked +hanker +hankered +hankerer +hankerers +hankering +hankeringly +hankerings +hankers +hankie +hankies +hankin +hanking +hankins +hankinson +hankle +hanko +hanks +hanksite +hanksville +hankutchin +hanky +hanlan +hanley +hanleyfalls +hanlin +hanlons +hanlontown +hann +hanna +hannacity +hannacroix +hannaford +hannah +hannalore +hannan +hannassey +hannastown +hannathon +hannawafalls +hannawald +hannay +hannayite +hanne +hannegan +hanneke +hannele +hannelor +hannelore +hanneman +hannen +hanner +hannerl +hannes +hanney +hanni +hannibal +hannibalian +hannibalic +hannibalsson +hannible +hannie +hanniel +hannig +hannigan +hannis +hanniu +hanno +hannon +hannover +hanns +hannu +hannula +hannuolavi +hanny +hano +hanoch +hanochites +hanoi +hanon +hanonoo +hanover +hanoverize +hanoverton +hanrahan +hanray +hans +hansa +hansan +hansard +hansardize +hansboro +hanscom +hanse +hanseatic +hansel +hansell +hanseman +hansen +hanser +hansford +hansgrave +hanshermann +hansi +hansig +hansjochen +hansjoerg +hansjuergen +hanska +hanskya +hansli +hansoms +hanson +hansos +hansquine +hansrolf +hanssens +hansson +hanston +hansville +hanswilhelm +hant +hantle +hantong +hants +hanty +hantyho +hanu +hanukkah +hanuman +hanumans +hanumara +hanun +hanunoo +hanz +hanzel +hanzlicek +hanzlik +haole +haoles +haoma +haori +haos +haoussa +hapa +hapag +hapale +hapalidae +hapalote +hapalotis +hapao +hapaxanthous +hapenin +haphazard +haphazardly +haphraim +haphtarah +hapi +hapke +hapless +haplessly +haplessness +haplite +haplodoci +haplodon +haplodont +haplodonty +haplography +haploidic +haploids +haplolaly +haplologic +haploma +haplomi +haplomid +haplomous +haplont +haplophase +haplophyte +haploscope +haploscopic +haplosis +haplotype +haply +hapool +happed +happelia +happen +happend +happened +happeneth +happenin +happening +happenings +happens +happenstance +happer +happier +happiest +happify +happiless +happily +happiness +happing +happler +happy +happybox +happycamp +happyface +happyhacker +happynewyear +haps +hapsort +hapten +haptene +haptenic +haptere +hapteron +haptic +haptics +haptometer +haptophor +haptophoric +haptophorous +haptotropic +haptotropism +hapu +hapuku +hapura +haqaru +haqearu +haqueton +hara +harabedian +harada +haradah +haradrim +haragure +harahu +harahui +harakeke +harakiri +harakmbet +haraktera +haralambie +haralambos +harald +haralick +haralson +haran +haraneu +harangued +harangueful +haranguer +haranguers +harangues +haranguing +harano +harapiak +harar +harare +harareet +hararese +harari +hararite +hararri +harasho +harasis +harassable +harassed +harassedly +harasser +harassers +harasses +harassing +harassingly +harassment +harassments +haratch +haratin +harauti +harava +harawi +haraya +harayt +harb +harbacher +harback +harbans +harbaugh +harben +harbergage +harbert +harbeson +harbi +harbinge +harbingers +harbingery +harbison +harbona +harbonah +harbor +harborage +harborbeach +harborcity +harborcreek +harbord +harbored +harborer +harborers +harboring +harborless +harborous +harbors +harborside +harbort +harborton +harborview +harborward +harbottle +harbour +harboured +harbouring +harbours +harbrough +harbutt +harc +harco +hard +hardage +hardanger +hardaway +hardback +hardbacks +hardball +hardballs +hardbar +hardbeam +hardberry +hardboot +hardboots +hardbought +hardbound +hardburly +hardcase +hardcastle +hardcode +hardcoded +hardcopies +hardcopy +hardcore +hardcover +hardcovers +harddisks +harddrive +hardearned +hardee +hardeeville +harden +hardenable +hardenberg +hardenbergia +hardened +hardener +hardeners +hardeneth +hardening +hardenite +hardens +hardenville +hardeo +harder +harderian +harders +hardersen +hardes +hardest +hardesty +hardfern +hardfist +hardfisted +hardfought +hardhack +hardhacks +hardhanded +hardhats +hardhead +hardheaded +hardheadedly +hardheads +hardhearted +hardie +hardier +hardies +hardiest +hardihood +hardily +hardim +hardiman +hardiment +hardin +hardiness +harding +hardins +hardinsburg +hardish +hardishrew +hardison +hardlink +hardly +hardman +hardmouth +hardmouthed +hardness +hardnose +hardock +hardouin +hardpan +hardpans +hards +hardset +hardsf +hardshell +hardship +hardships +hardstand +hardstanding +hardstands +hardsurfaced +hardt +hardtacks +hardtail +hardtner +hardtodetect +hardtops +hardung +hardware +hardwareman +hardwares +hardwarily +hardwary +hardweirilee +hardwich +hardwick +hardwicke +hardwickia +hardwired +hardwood +hardwoods +hardy +hardyal +hardyman +hardystonite +hardyville +hare +harebell +harebells +harebottle +harebrain +harebrained +harebur +hared +hareem +hareems +harefoot +harefooted +harehearted +harehound +harelda +harelike +harelipped +harelips +harell +harem +haremari +haremism +haremlik +harems +haren +harengan +harengiform +harens +hareph +harer +harerge +hares +hareslave +hareth +hareton +harewood +harfang +harfoots +harford +harfordmills +harfstrong +hargadon +hargenson +harghita +hargill +hargis +hargitay +hargraves +hargreaves +hargrove +hargrow +harhaiah +harhas +harhur +hari +haria +hariamba +hariani +haricot +hariff +harigalds +harigawa +harigaya +harilaos +harim +hariman +harinder +haring +hariolate +hariolation +hariolize +hariph +haripmor +haris +hariseldon +harish +haritath +harith +harka +harked +harken +harkened +harkener +harkeners +harkening +harkens +harker +harkin +harking +harkins +harkley +harkness +harkonnen +harks +harl +harlam +harlan +harland +harlander +harlansmith +harlee +harleian +harleigh +harlem +harleman +harlemese +harlemite +harlene +harlequin +harlequina +harlequinade +harlequinery +harlequinic +harlequinism +harlequinize +harlequins +harless +harleton +harley +harleysville +harleyville +harli +harlie +harling +harlingen +harllee +harlley +harlock +harlot +harlotries +harlotry +harlots +harlow +harlowe +harlowton +harm +harmachis +harmakhis +harmal +harmala +harmaline +harman +harmans +harmarville +harmattan +harmed +harmel +harmer +harmers +harmful +harmfully +harmfulness +harmi +harmie +harmine +harming +harminic +harmless +harmlessly +harmlessness +harmon +harmonia +harmoniacal +harmonial +harmonical +harmonically +harmonicas +harmonichord +harmonici +harmonicism +harmonicon +harmonics +harmonie +harmonies +harmoniously +harmoniphon +harmoniphone +harmonist +harmonistic +harmonite +harmonium +harmoniums +harmonizable +harmonize +harmonized +harmonizer +harmonizers +harmonizes +harmonizing +harmonogram +harmonograph +harmonometer +harmonsburg +harmony +harmor +harmost +harmotome +harmotomic +harmproof +harms +harn +harned +harnepher +harner +harness +harnessed +harnesser +harnessers +harnesses +harnessing +harnessry +harnitz +harnois +harnotta +harnpan +haro +harod +harodite +haroeh +haroi +harold +harolday +harolde +harom +haron +haroon +harorite +harosheth +haroun +haroutounian +harp +harpa +harpago +harpagon +harpagornis +harpal +harpalides +harpalinae +harpalus +harpe +harped +harpenden +harper +harperess +harperrow +harpers +harpersferry +harpersfield +harperspoon +harpersville +harperville +harpidae +harpier +harpies +harping +harpings +harpist +harpists +harpless +harplike +harpo +harpocrates +harpooned +harpooner +harpooners +harpooning +harpoons +harpootlian +harpreet +harpress +harps +harpsichords +harpster +harpula +harpullia +harpursville +harpwise +harpy +harpyia +harpylike +harquebus +harquebusade +harquebusier +harquebuss +harr +harra +harrah +harrap +harrassed +harrassing +harrateen +harrawood +harraz +harrell +harrells +harrelson +harrer +harrest +harrfaces +harri +harridan +harridans +harrie +harried +harrier +harriers +harries +harriet +harriett +harrietta +harriette +harrigan +harrihan +harrine +harrington +harriot +harriott +harris +harrisatd +harrisburg +harrisia +harrisite +harrison +harrisonburg +harrisoncity +harriss +harriston +harristown +harrisville +harrity +harro +harrod +harrodsburg +harrodscreek +harrogate +harrold +harron +harrop +harrovian +harrow +harrowed +harrower +harrowers +harrowhouse +harrowing +harrowingly +harrowment +harrows +harrumph +harrumphed +harrumphs +harry +harryfan +harrying +harsanvi +harsch +harsh +harsha +harsham +harshaw +harshened +harshening +harshens +harsher +harshest +harshfield +harshish +harshly +harshness +harshweed +harsley +harso +harst +harstigite +hart +hartal +hartand +hartberry +hartcore +harte +hartebeest +hartell +hartenfeld +harter +hartfield +hartford +hartfordcity +hartgrove +hartigan +hartin +hartinger +hartington +hartite +hartkopf +hartland +hartleb +hartleben +hartleian +hartlepool +hartleton +hartlett +hartley +hartleyan +hartline +hartling +hartly +hartman +hartmann +hartmannia +hartmut +hartnell +hartnett +hartogia +hartridge +hartrott +harts +hartsburg +hartsdale +hartsel +hartsell +hartselle +hartsey +hartsfield +hartshorn +hartshorne +hartstone +hartstongue +hartstown +hartsville +harttite +hartungen +hartville +hartwell +hartwick +hartwig +hartwood +harty +hartz +hartzel +haru +harua +haruai +harue +haruester +haruhiko +haruko +haruku +harum +harumaph +harumi +harumscarum +haruphite +harupsical +haruro +haruru +harusi +haruspex +haruspical +haruspicate +haruspice +haruspices +haruspicy +harut +haruyasu +haruz +harv +harvard +harvardian +harvardize +harvards +harvardyale +harve +harveian +harvel +harveps +harvest +harvestable +harvestbug +harvested +harvester +harvesters +harvesthome +harvesting +harvestless +harvestman +harvestmen +harvestry +harvests +harvesttime +harvey +harveyize +harveysburg +harveyslake +harveyville +harviell +harvill +harville +harvison +harvisr +harway +harwell +harwerth +harwich +harwichport +harwick +harwicz +harwock +harwood +haryana +harzani +harzburgite +hasada +hasadiah +hasakah +hasan +hasaniya +hasanuddin +hasanya +hasbeen +hasbrook +hasbrouck +hasck +hasegawa +hasek +haselwood +hasemann +hasen +hasenau +hasenpfeffer +hasenuah +hasereth +hash +hashab +hashabiah +hashabnah +hashabniah +hasham +hashbadana +hashbrowns +hashcheck +hashed +hasheesh +hasheeshes +hashem +hashemi +hashemite +hasher +hashes +hashhead +hashheads +hashim +hashimite +hashimoto +hashing +hashishes +hashiya +hashizo +hashknife +hashmake +hashmi +hashmonah +hashsize +hashstat +hashub +hashubah +hashum +hashupha +hashy +hasid +hasidean +hasidic +hasidim +hasidism +hasina +hasinai +hask +haskalah +haskell +haskins +haskness +hasky +haslach +hasler +haslet +haslett +haslewood +haslinger +haslock +haslong +haslund +hasmid +hasmonaean +hasn +hasnt +hasp +hasped +hasping +haspling +hasps +haspspecs +hasquote +hasrah +hass +hassall +hassan +hassana +hassanabad +hassanal +hassanali +hassanein +hassani +hassaniya +hassar +hassard +hasse +hassel +hasselbacher +hasselblad +hassell +hasselmax +hasselqvist +hassels +hassen +hassenaah +hassenklover +hasserman +hasset +hassey +hasshub +hassingham +hassled +hassler +hassles +hassling +hasso +hassock +hassocks +hassocky +hassold +hast +hasta +hastamanana +hastate +hastately +hastati +haste +hasted +hasteful +hastefully +hasteless +hasten +hastened +hastener +hasteners +hasteneth +hastening +hastens +hasteproof +haster +hastert +hastes +hasteth +hastic +hastie +hastier +hastiest +hastilude +hastily +hastiness +hasting +hastings +hastingsite +hastish +hastler +hastrow +hasty +hasufel +hasupha +haswell +hasza +hatable +hatabout +hatach +hataikan +hatam +hatanaka +hatangkayey +hatano +hatay +hatband +hatbands +hatboro +hatbox +hatboxes +hatbrim +hatbrush +hatburn +hatch +hatchability +hatchable +hatchback +hatchbacks +hatcheck +hatched +hatchel +hatcheler +hatcheling +hatchelled +hatcher +hatcheries +hatchers +hatchery +hatcheryman +hatches +hatchet +hatchetback +hatchetfaced +hatchetfish +hatcheth +hatchetlike +hatchetman +hatchets +hatchett +hatchettine +hatchety +hatchgate +hatching +hatchings +hatchling +hatchman +hatchment +hatchminder +hatchwayman +hatchways +hatcreek +hate +hateable +hated +hateful +hatefully +hatefulness +hateless +hatelessness +hately +hatemonger +haters +hateruma +hates +hatesong +hatest +hateth +hatfield +hatful +hatfuls +hath +hathath +hathaway +hatherlite +hathersall +hatheyer +hathi +hathnau +hathor +hathoric +hathorne +hati +hatice +hatie +hatigoria +hatikvah +hatillo +hating +hatipha +hatiri +hatita +hatless +hatlessness +hatley +hatlike +hatmaker +hatmakers +hatmaking +hato +hatoma +hatorah +hatori +hatpin +hatpins +hatrack +hatracks +hatrail +hatred +hatreds +hatress +hatrick +hatridge +hats +hatsa +hatsape +hatsful +hatshepsut +hatstand +hatsue +hatsuko +hatt +hatta +hattam +hattan +hattangady +hattar +hatted +hattemist +hatten +hatter +hatteria +hatters +hattery +hatti +hattic +hattie +hattieville +hattil +hatting +hattingh +hattisherif +hattism +hattize +hattmay +hattock +hatton +hattori +hattush +hatty +hatu +hatuchmap +hatue +hatuhaha +hatumetan +hatuolo +hatusua +hatwara +hatz +hatzke +hauberget +hauberk +hauberks +haubert +haubstadt +hauck +haudenschild +haudepin +haudricourt +hauer +hauerite +hauerstock +haufe +hauff +hauffer +haufler +haufrect +hauge +haugh +haughey +haughland +haught +haughtier +haughtiest +haughtily +haughtiness +haughtly +haughtness +haughton +haughtonite +haughty +haughwout +haugrud +hauhunu +haujobb +hauk +haul +haulabout +haulageway +haulback +hauld +hauled +hauler +haulers +haulier +hauling +haulm +haulmy +hauls +haulster +haulyard +haulyards +haumann +hauna +haunched +hauncher +haunches +haunching +haunchless +haunchy +haunt +haunted +haunter +haunters +haunting +hauntingly +haunts +haunty +haunui +haununu +hauppauge +haupt +hauptman +hauptmann +haura +hauraki +hauran +hauranitic +hauriant +haurie +haurient +hauruha +haus +hausa +hausawa +hausdorff +hause +hausen +hauser +hausfrau +hausfrauen +hausfraus +hausman +hausmannite +hausner +haussa +hausse +haussmann +haussmannize +haussy +haust +haustellate +haustellated +haustellous +haustellum +haustement +haustorial +haustorium +haustral +haustrum +haut +hautala +hautanen +hautbassin +hautbois +hautboy +hautboyist +hautboys +hautchamp +hautclerc +haute +hautekotto +hautesangha +hauteur +hauteurs +hautkenyang +hautlomami +hautmbomou +hautogooue +hautsbassins +hautshaba +hautuele +hautzaire +hauula +hauwa +hauwai +hauynite +hauynophyre +hava +havaco +havage +havaiki +havaikian +havana +havanese +havannah +havard +havarti +havasupai +have +haveable +haveage +havebeen +havecarded +haveit +haveke +havel +haveland +haveless +haveli +havelkova +havelock +haveman +haven +havenage +havened +havener +havenership +havenet +havenful +havening +havenless +havens +havensville +havent +havenward +haver +havercake +haverel +haverer +haverford +havergrass +haverhill +haverkamp +haverman +havermann +havermeal +havers +haversack +haversacks +havershield +haversian +haversine +haverstick +haverstock +haverstraw +havertown +haverty +haves +havesome +havethat +havetime +haveto +haveyour +havi +havier +havig +havilah +haviland +havildar +having +havingness +haviors +haviour +haviours +havis +havisham +haviss +havnia +havoc +havock +havocked +havocker +havockers +havocking +havocs +havothjair +havran +havre +havredegrace +havu +havunese +hawaii +hawaiians +hawaiite +hawalli +hawar +hawarden +hawat +hawbuck +hawcubite +hawdon +hawe +hawed +hawer +hawera +hawes +hawesville +hawfinch +hawfrey +hawi +hawick +hawing +hawiya +hawiyah +hawiyya +hawk +hawkbill +hawkbills +hawkbit +hawke +hawked +hawken +hawker +hawkers +hawkery +hawkes +hawkesbury +hawkeye +hawkeyed +hawkeys +hawkie +hawkies +hawking +hawkings +hawkins +hawkinsville +hawkip +hawkish +hawklike +hawkmoth +hawkmoths +hawknose +hawknoses +hawknut +hawkpoint +hawkrun +hawks +hawksbill +hawkshaw +hawkshaws +hawksprings +hawkweed +hawkweeds +hawkwise +hawky +hawland +hawley +hawleyville +hawm +hawn +hawok +haworth +haworthia +hawramani +hawrami +hawriver +hawryluk +hawrysh +hawryszko +haws +hawsa +hawse +hawsehole +hawseman +hawsepiece +hawsepipe +hawser +hawsers +hawserwise +hawses +hawsley +hawthorne +hawthorned +hawthorns +hawthorny +hawtree +hawtrey +hawu +hawul +haxan +haxby +haxnet +haxor +haxtun +haya +hayahaya +hayajita +hayakawa +hayarkon +hayashi +hayband +haybird +haybote +haycap +haycart +haycock +haycocks +haydar +haydee +hayden +haydenite +haydenville +haydn +haydock +haydon +hayduk +haye +hayed +hayeladim +hayenga +hayer +hayers +hayes +hayescenter +hayeset +hayesville +hayey +hayfields +hayfork +hayforks +haygarth +haygate +haygrower +hayil +haying +hayings +hayle +hayley +haylift +haylock +hayloft +haylofts +haymaker +haymakers +haymaking +hayman +haymarket +haymes +haymid +haymow +haymows +haynau +hayne +haynes +haynesville +hayneville +haynie +hayrack +hayracks +hayrake +hayraker +hayrick +hayricks +hayride +hayrides +hayrinen +hayseed +hayseeds +haysel +haysi +haysprings +haystacks +haysuck +haysville +hayter +hayti +haytime +hayu +hayward +haywards +hayweed +haywire +haywires +haywoam +haywood +hayworth +hayz +haza +hazael +hazaiah +hazake +hazara +hazaraddar +hazaragi +hazarajat +hazaras +hazard +hazardable +hazarded +hazarder +hazardful +hazarding +hazardize +hazardless +hazardous +hazardously +hazardry +hazards +hazarenan +hazargaddah +hazaribagh +hazarmaveth +hazarshual +hazarsusah +hazarsusim +hazazontamar +haze +hazec +hazed +hazedorn +hazel +hazelcrest +hazeldine +hazeled +hazelelponi +hazeless +hazelgreen +hazelhurst +hazell +hazelly +hazelnut +hazelnuts +hazelpark +hazelrig +hazelrun +hazels +hazeltine +hazelton +hazelwood +hazelwort +hazem +hazen +hazenboom +hazer +hazerim +hazeroth +hazers +hazes +hazezontamar +hazi +haziel +hazier +haziest +hazili +hazily +haziness +hazing +hazings +hazle +hazlehurst +hazlet +hazleton +hazlett +hazmesterne +haznadar +hazo +hazor +hazu +hazy +hazza +hazzan +hazzard +hbound +hcjb +hconvert +hdcopy +hddspeed +hdictionary +hdinfo +hdlc +hdnoise +hdpark +hdqrs +hdrconvertor +hdtips +hdtronic +head +headache +headaches +headachier +headachy +headband +headbander +headbands +headboards +headborough +headbox +headcap +headchair +headcheese +headchute +headcloth +headcol +headdresses +headed +headend +headender +headends +header +headercard +headers +headfirst +headforemost +headframe +headful +headgear +headgears +headhunt +headhunted +headhunter +headhunters +headhunting +headhunts +headier +headiest +headily +headin +headiness +heading +headingboxed +headings +headington +headkerchief +headlamp +headlamps +headland +headlands +headledge +headless +headlessness +headley +headlight +headlighting +headlights +headlike +headline +headlined +headliner +headlines +headlining +headlock +headlocks +headlong +headlongly +headlongs +headlongwise +headly +headman +headmark +headmasterly +headmasters +headmen +headmistress +headmold +headmost +headnote +headnotes +headpenny +headphone +headphoned +headphones +headpiece +headpieces +headpin +headpins +headplate +headpost +headquarters +headrace +headrail +headreach +headrent +headrest +headrests +headrick +headright +headrillaz +headring +headroom +headrooms +headrope +headrow +headrush +heads +headsail +headsets +headsex +headshake +headship +headshots +headshrinker +headsill +headskin +headspring +headstall +headstalls +headstands +headstar +headstart +headstay +headstick +headstock +headstone +headstones +headstream +headstrongly +headtotail +headwaiter +headwaiters +headwall +headward +headwark +headwaters +headway +headways +headwear +headwinds +headword +headwords +headwork +headworker +headworking +headworks +heady +heaerfile +heaf +heal +healable +heald +healder +healdsburg +healdton +healed +healer +healers +healeth +healey +healful +healing +healingly +healings +healless +heals +healsome +healsomeness +health +healthand +healthcare +healthcraft +healthfully +healthguard +healthier +healthiest +healthily +healthiness +healthless +healths +healthsome +healthsomely +healthward +healthy +healy +heaney +heanons +heanzian +heap +heaped +heaper +heapeth +heaping +heaps +heapstead +heapy +hear +hearable +heard +heardest +hearer +hearers +hearest +heareth +hearing +hearingless +hearings +hearken +hearkened +hearkenedst +hearkener +hearkeneth +hearkening +hearkens +hearn +hearnden +hearne +hears +hearsays +hearsecloth +hearsed +hearselike +hearses +hearsing +hearst +heart +heartache +heartaches +heartaching +heartbeat +heartbeats +heartbird +heartblood +heartbreak +heartbreaker +heartbreaks +heartbroke +heartbroken +heartburn +heartburning +heartburns +heartbutte +heartdeep +heartease +hearted +heartedly +heartedness +heartened +heartener +heartening +hearteningly +heartens +heartfelt +heartful +heartfully +heartfulness +heartgrief +hearth +hearthless +hearthman +hearthpenny +hearthrug +hearths +hearthside +hearthsides +hearthstead +hearthstone +hearthstones +hearthward +heartier +hearties +heartiest +heartikin +heartily +heartiness +hearting +heartland +heartlands +heartleaf +heartless +heartlessly +heartlet +heartling +heartly +heartnut +heartpea +heartquake +heartrending +heartrobbing +heartroot +hearts +heartscald +heartscalded +heartsease +heartseed +heartsette +heartsick +heartsinking +heartsome +heartsomely +heartsore +heartstring +heartstrings +heartthrob +heartthrobs +heartward +heartwarming +heartwater +heartweed +heartwell +heartwise +heartwood +heartworm +heartwort +hearty +heasley +heaslip +heaslop +heasman +heat +heatable +heatdrop +heated +heatedly +heater +heaterman +heaters +heatful +heath +heathaze +heathberry +heathbird +heathcliff +heathcock +heathcote +heathen +heathendom +heathendon +heatheness +heathenesse +heathenhood +heathenishly +heathenism +heathenize +heathenness +heathenry +heathens +heathenship +heather +heathered +heatheriness +heatherley +heathers +heathertoes +heatherton +heathery +heathier +heathiest +heathless +heathley +heathlike +heathrow +heaths +heathsprings +heathsville +heathwort +heathy +heating +heatingly +heatless +heatlike +heatly +heatmaker +heatmaking +heaton +heatproof +heatronic +heats +heatsman +heatstroke +heatstrokes +heatter +heaume +heaumer +heautarit +heautophany +heave +heaved +heaveless +heaven +heavenborn +heavener +heavenese +heavenful +heavenhood +heavenish +heavenishly +heavenize +heavenless +heavenlier +heavenlike +heavenliness +heavenly +heavens +heavenwardly +heavenwards +heaver +heavers +heaves +heavier +heavies +heaviest +heavily +heaviness +heaving +heavisome +heavity +heavy +heavyback +heavyduty +heavyhanded +heavyheaded +heavyhearted +heavyporn +heavyset +heavyweights +heba +hebamic +hebbar +hebbronville +hebdomad +hebdomadal +hebdomadally +hebdomadary +hebdomader +hebdomarian +hebdomary +hebe +hebeanthous +hebecarpous +hebecladous +hebegynous +hebei +hebenon +hebepetalous +hebephrenia +heber +hebercity +heberites +heberle +hebersprings +hebert +hebes +hebetate +hebetation +hebetative +hebete +hebetic +hebetomy +hebetude +hebetudinous +hebey +hebi +hebo +hebraean +hebraica +hebraical +hebraically +hebraicize +hebraism +hebraist +hebraistic +hebraistical +hebraists +hebraization +hebraize +hebraized +hebraizer +hebraizes +hebraizing +hebrant +hebrew +hebrewdom +hebrewess +hebrewism +hebrews +hebrician +hebridean +hebrides +hebron +hebronite +hebronites +hecatean +hecates +hecatic +hecatine +hecatombaeon +hecatombs +hecatomped +hecatompedon +hecatontome +hech +heche +hecht +hechtia +heck +heckart +heckel +heckelphone +heckendorff +heckendorn +hecker +heckerism +heckimal +heckled +heckler +hecklers +heckles +heckling +heckman +heckmann +heckmans +hecks +hecky +hecla +hectar +hectare +hectares +hecte +hectic +hectical +hectically +hecticly +hecticness +hecto +hectocotyl +hectocotyle +hectocotylus +hectogram +hectograms +hectograph +hectographic +hectography +hectokilo +hectoliter +hectoliters +hectometer +hectometers +hector +hectorean +hectored +hectorian +hectoring +hectoringly +hectorism +hectorly +hectors +hectorship +hectory +hectostere +hectowatt +hecuba +heda +hedaya +hedayat +hedda +heddell +hedden +heddi +heddie +heddle +heddlemaker +heddler +heddy +hede +hedebo +hedenbergite +hedengran +hedeoma +heder +hedera +hederaceous +hederated +hederic +hederiferous +hederiform +hederigerent +hederin +hederl +hederose +hedeya +hedge +hedgeberry +hedgeborn +hedgebote +hedgebreaker +hedged +hedgehoggy +hedgehogs +hedgehop +hedgehopped +hedgehopper +hedgehopping +hedgehops +hedgeless +hedgemaker +hedgemaking +hedgepig +hedgepigs +hedger +hedgerow +hedgerows +hedgers +hedges +hedgesmith +hedgesville +hedgeweed +hedgewise +hedgewood +hedgier +hedgiest +hedging +hedgingly +hedgy +hedi +hedin +hediron +hedison +hedit +hedke +hedley +hedlund +hedman +hedmark +hedonia +hedonic +hedonical +hedonically +hedonics +hedonisms +hedonistic +hedonists +hedonology +hedora +hedren +hedrich +hedrick +hedrocele +hedrumite +hedvig +hedvige +hedwig +hedwiga +hedwige +hedy +hedychium +hedyphane +hedysarum +heed +heeded +heeder +heeders +heedful +heedfully +heedfulness +heedily +heediness +heeding +heedless +heedlessly +heedlessness +heeds +heedy +heehaw +heehawed +heehawing +heehaws +heel +heelball +heelballs +heelband +heelcap +heeled +heeler +heelers +heelgrip +heeling +heelings +heelless +heelmaker +heelmaking +heelpath +heelpiece +heelplate +heelpost +heelposts +heelprint +heels +heelstrap +heeltap +heeltaps +heeltree +heemraad +heendeniya +heep +heer +heeralall +heerin +heery +heesters +heets +heeze +heezie +heezy +heffalump +heffalumps +hefferman +heffernan +heffley +heffner +hefley +heflin +hefner +heft +hefte +hefted +hefter +hefters +heftier +heftiest +heftily +heftiness +hefting +hefts +hegai +hegari +hege +hegedus +hegel +hegelian +hegelianism +hegelianize +hegelizer +hegemon +hegemonic +hegemonical +hegemonies +hegemonist +hegemonizer +hegengran +heggie +hegins +hegira +hegiras +hegumen +hegumene +hegyen +hehe +heheh +hehehe +hehehehe +hehenawa +hehh +hehheh +hehir +hehn +hehuat +heiau +heiban +heibantalodi +heiberg +heiberger +heida +heide +heidebrecht +heideggar +heidegger +heidelberg +heidelberga +heidelberger +heidelinde +heidemann +heiden +heidenheimer +heidepriem +heiderl +heidi +heidie +heidler +heidrick +heidrun +heidt +heifer +heiferhood +heifers +heighday +height +heightened +heightener +heightening +heightens +heighth +heighths +heighton +heights +heii +heike +heikes +heikkila +heiknert +heikom +heikum +heil +heilbron +heilbronn +heile +heiled +heilig +heiliger +heiling +heilmann +heilong +heilongjiang +heils +heilsnis +heiltsuk +heilwood +heim +heimat +heimbuch +heimdal +heimel +heimin +heimkin +heims +heineman +heinemann +heinemned +heinen +heiner +heinersdorff +heinesque +heinich +heinie +heinies +heinjus +heink +heinke +heinlein +heinleiner +heinleiners +heinleinism +heinleins +heino +heinonen +heinous +heinously +heinousness +heinox +heinri +heinrichs +heinsdorff +heinsick +heinsohn +heintel +heinth +heintje +heintzite +heinz +heinze +heinzman +heipang +heir +heirapparent +heirarchy +heirate +heiratet +heirdom +heirdoms +heired +heiressdom +heiresses +heiresshood +heirich +heiring +heirless +heirloom +heirlooms +heirman +heirophant +heirs +heirship +heirships +heirskip +heise +heisemann +heisenbergs +heisenbug +heisenbugs +heiser +heiskanen +heiskell +heisler +heislerville +heisse +heissen +heisses +heisson +heisst +heist +heisted +heister +heisters +heisting +heists +heit +heitiki +heitmann +hejazi +hejazian +hejira +hejra +hekate +hekatostos +hekel +hekels +heki +hekiro +heksit +hektare +hektares +hekteus +hektor +hela +helah +helaina +helaine +helam +helambu +helbah +helbeh +helbert +helbon +helcer +helcoid +helcology +helcoplasty +helcosis +helcotic +held +heldabrand +heldai +helden +heldenbrand +heldentenor +helder +heldon +hele +heleb +helebi +helechawa +heled +heleen +helek +helekites +helem +helen +helena +helendale +helene +helenian +helenin +helenioid +helenium +helenka +helenos +helens +helenus +helenville +helenwood +heleph +helepole +helewalda +heleworuru +helez +helfand +helfen +helfenstein +helford +helfrick +helga +helge +helgeland +helgoland +helgolander +helgy +heli +heliacal +heliacally +heliaea +heliaean +heliamphora +heliand +helianthemum +helianthic +helianthin +helianthium +helianthus +heliast +heliastic +heliazophyte +helically +helicanhorn +heliced +helices +helichryse +helichrysum +helicidae +heliciform +helicin +helicina +helicine +helicinidae +helicitic +helicity +helicline +helicograph +helicogyrate +helicogyre +helicoid +helicoidal +helicoidally +helicoids +helicometry +helicon +heliconia +heliconian +heliconiidae +heliconiinae +heliconist +heliconius +helicons +helicopter +helicopters +helicopts +helicorubin +helicotrema +helicteres +helictite +helide +helier +heligman +heligmus +helin +helina +heling +helio +heliochrome +heliochromic +heliochromy +helioculture +heliodon +heliodor +heliodoro +heliofugal +heliogabalus +heliogram +heliograph +heliographer +heliographic +heliographs +heliography +heliogravure +helioid +heliolater +heliolatrous +heliolatry +heliolite +heliolites +heliolithic +heliolitidae +heliologist +heliology +heliometer +heliometric +heliometry +helion +helionape +heliophagous +heliophilia +heliophiliac +heliophilous +heliophobe +heliophobia +heliophobic +heliophobous +heliophyte +heliopora +helioporidae +heliopsis +heliopticon +heliornis +heliornithes +helios +heliosblack +helioscond +helioscope +helioscopic +helioscopy +heliosext +heliosis +helioslight +heliostat +heliostatic +heliosthin +heliotactic +heliotaxis +heliotherapy +heliothis +heliotroper +heliotropes +heliotropian +heliotropic +heliotropine +heliotropism +heliotropium +heliotropy +heliotype +heliotypic +heliotypy +heliozoa +heliozoan +heliozoic +helipad +helipads +heliport +heliports +helipterum +helispheric +helistop +helistops +helium +heliums +helix +helixes +helizitic +helkaa +helkai +helkath +hell +hella +helladian +helladic +helland +hellandite +hellanodic +hellas +hellbent +hellberg +hellbilly +hellborn +hellbox +hellboxes +hellbred +hellbroth +hellcat +hellcats +helldog +helle +helleborein +hellebores +helleboric +helleborin +helleborine +helleborism +helleborus +helled +hellelt +hellen +hellenbrand +hellene +hellenes +hellenian +hellenically +hellenicism +hellenikon +hellenism +hellenist +hellenistic +hellenists +hellenize +hellenizer +hellenophile +hellenpolis +heller +helleri +hellers +hellerstein +hellertown +hellespont +hellespontus +hellfare +hellfire +hellfires +hellhag +hellhole +hellholes +hellhound +helli +hellicat +hellier +helling +hellinger +hellion +hellions +hellish +hellishly +hellishness +hellkite +hellman +hellmer +hellmich +hellmut +hellmuth +hellness +hello +helloed +helloes +helloing +hellop +hellos +helloween +hellraider +hellraiser +hellroot +hells +hellship +hellspontus +hellstrom +helluo +helluva +hellward +hellweed +hellwig +helly +hellyer +helm +helma +helmage +helman +helmand +helmberg +helmed +helmer +helmers +helmes +helmet +helmeted +helmeting +helmetlike +helmetmaker +helmetmaking +helmets +helmetta +helmholtz +helmholtzian +helmholz +helming +helmingas +helminth +helminthes +helminthic +helminthism +helminthite +helminthoid +helminthous +helmless +helmo +helmon +helmond +helmore +helmos +helms +helmsburg +helmsdike +helmsgate +helmsmanship +helmut +helmuth +helmville +helmy +helo +helobious +heloderm +heloderma +helodes +heloe +heloise +heloma +helon +helong +helonias +helonin +helosis +helot +helotage +helotes +helotism +helotize +helotomy +helotry +helots +help +helpable +helpabout +helpb +helpclouds +helpcontents +helpdelphi +helped +helpentry +helper +helperror +helperrtable +helpers +helperware +helpeth +helpfile +helpfiles +helpful +helpfully +helpfulness +helpgen +helphowtouse +helpindex +helping +helpingly +helpings +helpless +helplessly +helplessness +helpline +helply +helpman +helpmann +helpmates +helpmatic +helpmeet +helpmeets +helpptr +helps +helpscribble +helpscribe +helpsearch +helpsome +helpworthy +helpwriter +helsa +helseth +helsing +helsingborg +helsingkite +helsinki +helstab +helton +heltonville +helve +helved +helveg +helvell +helvella +helvellaceae +helvellales +helvellic +helver +helves +helvetia +helvetian +helvetic +helvetica +helvetii +helvidian +helving +helvite +helwege +helwerthia +hely +helyn +helzer +hema +hemachate +hemachrome +hemachrosis +hemacite +hemad +hemadrometer +hemadrometry +hemadynamic +hemadynamics +hemafibrite +hemagogic +hemagogue +hemal +hemalbumen +hemam +hemamoeba +heman +hemangioma +hemanord +hemant +hemanta +hemaphein +hemapod +hemapodous +hemapoiesis +hemapoietic +hemapophysis +hemarthrosis +hemase +hemastatics +hemasud +hemat +hematal +hematein +hematemesis +hematemetic +hemath +hematherapy +hematherm +hemathermal +hemathermous +hematic +hematid +hematidrosis +hematimeter +hematin +hematinic +hematinuria +hematites +hematitic +hematobic +hematobious +hematobium +hematoblast +hematocele +hematochezia +hematochrome +hematoclasia +hematoclasis +hematocolpus +hematocrit +hematocryal +hematocyanin +hematocyst +hematocystis +hematocyte +hematogen +hematogenic +hematogenous +hematography +hematoid +hematoidin +hematolin +hematolite +hematologic +hematologies +hematologist +hematology +hematolysis +hematolytic +hematoma +hematomancy +hematomas +hematometer +hematometra +hematometry +hematomyelia +hematonic +hematopexis +hematophobia +hematophyte +hematoplast +hematorrhea +hematoscope +hematoscopy +hematose +hematosepsis +hematosin +hematosis +hematothorax +hematoxic +hematozoa +hematozoal +hematozoan +hematozoic +hematozoon +hematuresis +hematuria +hematuric +hemautogram +hemautograph +hemba +hembrick +hemdan +heme +hemellitene +hemellitic +hemelytral +hemelytron +hemen +hemera +hemeralope +hemeralopia +hemeralopic +hemerobian +hemerobiid +hemerobiidae +hemerobius +hemerocallis +hemerologium +hemerology +hemerythrin +hemet +hemi +hemiablepsia +hemiacetal +hemiageusia +hemiageustia +hemialbumin +hemialbumose +hemialgia +hemiamb +hemianacusia +hemianopia +hemianopic +hemianopsia +hemianoptic +hemianosmia +hemiapraxia +hemiascales +hemiasci +hemiataxia +hemiataxy +hemiatrophy +hemiazygous +hemibasidii +hemibasidium +hemibenthic +hemibranch +hemibranchii +hemic +hemicanities +hemicardia +hemicardiac +hemicarp +hemicentrum +hemicerebrum +hemichorda +hemichordate +hemichorea +hemicircle +hemicircular +hemick +hemiclastic +hemicollin +hemicrane +hemicrania +hemicranic +hemicrany +hemicycle +hemicyclic +hemicyclium +hemidactylus +hemidiapente +hemiditone +hemidomatic +hemidome +hemidrachm +hemidysergia +hemiekton +hemielliptic +hemiepilepsy +hemifacial +hemiform +hemigale +hemigalus +hemiganus +hemigeusia +hemiglossal +hemiglyph +hemignathous +hemihdry +hemihedral +hemihedrally +hemihedric +hemihedrism +hemihedron +hemihydrate +hemihydrated +hemihydrosis +hemikaryon +hemikaryotic +hemileia +hemilethargy +hemiligulate +hemilingual +hemimellitic +hemimelus +hemimeridae +hemimerus +hemimetabola +hemimetabole +hemimetaboly +hemimorph +hemimorphic +hemimorphism +hemimorphite +hemimorphy +hemimyaria +hemin +hemina +hemine +heminee +heminger +hemingford +hemiobol +hemiola +hemiolas +hemiolia +hemiolic +hemionus +hemiope +hemiopia +hemiopic +hemiparasite +hemiparesis +hemiparetic +hemipenis +hemipeptone +hemiphrase +hemipic +hemipinnate +hemiplane +hemiplankton +hemiplegia +hemiplegic +hemiplegy +hemipodan +hemipode +hemipodii +hemipodius +hemiprism +hemiprotein +hemipter +hemiptera +hemipteral +hemipteran +hemipteroid +hemipteron +hemipterous +hemipyramid +hemiramph +hemiramphine +hemiramphus +hemisch +hemiscotosis +hemisect +hemisection +hemispasm +hemispheral +hemisphere +hemisphered +hemispheres +hemispheroid +hemispherule +hemistater +hemistich +hemistichal +hemistichs +hemisymmetry +hemisystole +hemiterata +hemiteratic +hemiteratics +hemiteria +hemiterpene +hemitery +hemitone +hemitremor +hemitrichous +hemitriglyph +hemitropal +hemitrope +hemitropic +hemitropism +hemitropous +hemitropy +hemitype +hemitypic +hemivagotony +hemline +hemlines +hemlock +hemlocks +hemme +hemmed +hemmel +hemmer +hemmerle +hemmers +hemming +hemmings +hemmingway +hemoblast +hemochrome +hemoclasia +hemoclasis +hemoclastic +hemocoel +hemocoele +hemocoelic +hemocoelom +hemoconia +hemoconiosis +hemocry +hemoculture +hemocyanin +hemocyte +hemocytozoon +hemocyturia +hemodialyses +hemodialysis +hemodilution +hemodrometer +hemodrometry +hemodynamic +hemodynamics +hemoerythrin +hemofuscin +hemogastric +hemogenesis +hemogenetic +hemogenic +hemogenous +hemogloben +hemoglobic +hemoglobinic +hemoglobulin +hemogram +hemoid +hemokonia +hemokoniosis +hemol +hemologist +hemology +hemolymph +hemolysate +hemolysin +hemolysis +hemolyze +hemometer +hemometry +hemopathy +hemopexis +hemophage +hemophagia +hemophagous +hemophagy +hemophile +hemophileae +hemophilia +hemophiliac +hemophiliacs +hemophilic +hemophilus +hemophobia +hemophthisis +hemoplastic +hemopod +hemopoiesis +hemopoietic +hemoproctia +hemoptoe +hemoptysis +hemopyrrole +hemorrhaged +hemorrhages +hemorrhagic +hemorrhagin +hemorrhaging +hemorrhea +hemorrhodin +hemorrhoidal +hemorrhoids +hemosalpinx +hemoscope +hemoscopy +hemospasia +hemospastic +hemospermia +hemosporid +hemostasia +hemostasis +hemostat +hemostatic +hemostats +hemotherapy +hemothorax +hemotoxic +hemotoxin +hemotrophe +hemotropic +hemozoon +hempa +hempas +hempbush +hempel +hempen +hemphill +hempier +hempinstall +hemplike +hemps +hempseed +hempseeds +hempstead +hempstone +hempstring +hempweed +hempweeds +hempwort +hempy +hems +hemsley +hemstitch +hemstitched +hemstitcher +hemstitches +hemstitching +hena +henaberry +henabery +henad +henadad +henagar +henalima +henan +henao +henbanes +henbill +henbit +henbits +hence +henceforth +henceforward +hench +henchboy +henchmanship +henck +hencke +henckel +henckels +henckles +hencoop +hencoops +hencote +hend +hende +hendecacolic +hendecagon +hendecagonal +hendecane +hendecasemic +hendecatoic +hendecoic +hendecyl +hendershot +henderson +hendiadys +hendley +hendly +hendness +hendon +hendra +hendren +hendrickje +hendricks +hendrickse +hendricksen +hendrie +hendrigg +hendrik +hendrika +hendriks +hendriksen +hendrix +hendrum +hendry +hendrycks +henefer +heneghan +heneicosane +henein +henen +heneng +henery +heney +henfish +henfrey +henfry +heng +henga +hengameh +henganofi +hengchun +hengeveld +henghua +hengl +hengst +hengyang +henhearted +henhouse +henhouses +henhussy +henia +henie +henig +henism +henk +henka +henkel +henlawson +henley +henlike +henline +henmoldy +henn +henna +hennaed +hennaing +hennas +henneberg +henneberger +henneberry +hennebique +hennebury +hennelly +hennepin +henner +henneries +hennery +hennes +hennesey +hennessey +hennessy +henneth +henney +hennie +henniker +hennin +henning +henninger +hennings +hennion +hennish +hennon +hennrietta +henny +henoch +henogeny +henotheism +henotheist +henotheistic +henotic +henpecked +henpecking +henpecks +henpen +henreid +henrey +henri +henrician +henrick +henrico +henrie +henried +henries +henrieta +henrietta +henriette +henrieville +henrik +henrika +henriksen +henrikson +henriksson +henriques +henriquez +henroost +henry +henryetta +henryk +henrys +henryton +henryville +hens +henschke +hensel +hensen +henshaw +hensler +hensley +henslowe +henson +hensonville +henstridge +hensy +hent +hentenian +henter +henthorne +henting +hentiy +hents +henty +hentzau +henveru +henware +henwife +henwise +henwood +henwoodite +henyard +henyey +henze +heortologion +heortology +hepar +heparin +heparinize +hepatalgia +hepatatrophy +hepatauxe +hepatectomy +hepatic +hepaticae +hepatical +hepaticas +hepaticology +hepaticotomy +hepatics +hepatite +hepatization +hepatize +hepatized +hepatizes +hepatocele +hepatocolic +hepatocystic +hepatodynia +hepatoflavin +hepatogenic +hepatogenous +hepatography +hepatoid +hepatolith +hepatolithic +hepatologist +hepatology +hepatolysis +hepatolytic +hepatoma +hepatomegaly +hepatopathy +hepatopexia +hepatopexy +hepatophyma +hepatoportal +hepatoptosia +hepatoptosis +hepatorenal +hepatorrhea +hepatorrhoea +hepatoscopy +hepatostomy +hepatotomy +hepburn +hepcat +hepcats +hephaesteum +hephaestian +hephaestic +hephaestus +hephaistos +hepher +hepherites +hephthemimer +hephzibah +hepialid +hepialidae +hepialus +heping +hepler +hepner +heppell +heppen +hepper +heppes +hepple +heppner +heptace +heptachord +heptacolic +heptacosane +heptad +heptadecane +heptadecyl +heptads +heptaglot +heptagon +heptagonal +heptagons +heptagynous +heptahedral +heptahedron +heptahydrate +heptahydric +heptahydroxy +heptal +heptameride +heptameron +heptamerous +heptameter +heptameters +heptanchus +heptandrous +heptanes +heptanesian +heptangular +heptanoic +heptanone +heptaploid +heptaploidy +heptapodic +heptapody +heptarch +heptarchal +heptarchic +heptarchical +heptarchist +heptarchs +heptarchy +heptasemic +heptastich +heptastylar +heptastyle +heptateuch +heptatomic +heptatonic +heptatrema +heptavalent +heptene +hepteris +heptine +heptite +heptitol +heptoic +hepton +heptorite +heptose +heptoses +heptoxide +heptranchias +heptyl +heptylene +heptylic +heptyne +hepworth +hepzibah +hera +heraclean +heracleidan +heracleonite +heracles +heracleum +heraclid +heraclidae +heraclidan +heraclitean +heraclitic +heraclitical +heraclitism +herak +herakles +herald +heralded +heraldess +heraldic +heraldical +heraldically +heralding +heraldist +heraldists +heraldize +heraldress +heraldries +heraldry +heralds +heraldship +herapathite +herat +herati +herault +herb +herba +herbaceous +herbaceously +herbage +herbaged +herbager +herbages +herbagious +herbal +herbalism +herbalist +herbalists +herbalize +herbalizer +herbals +herbane +herbaria +herbarial +herbarian +herbariia +herbariiums +herbarism +herbarist +herbarium +herbariums +herbarize +herbartian +herbary +herbe +herbel +herberger +herbers +herbert +herberta +herberton +herbescent +herbest +herbicidal +herbicidally +herbicide +herbicides +herbicolous +herbie +herbier +herbiferous +herbig +herbin +herbish +herbist +herbivora +herbivore +herbivores +herbivority +herbivorous +herbless +herblet +herblike +herbman +herborist +herborize +herborizer +herbose +herbosity +herbous +herbrand +herbs +herbst +herbster +herbwife +herbwoman +herby +hercegovina +hercogamous +hercogamy +herculanean +herculaneum +herculanian +hercule +herculeo +hercules +herculeses +herculid +herculina +hercynia +hercynian +hercynite +herd +herdbook +herdboy +herded +herdegen +herder +herderite +herders +herdic +herding +herdman +herdmen +herds +herdship +herdsmen +herdswoman +herdswomen +herdwick +here +hereabouts +hereadays +hereafter +hereamong +hereat +hereaway +hereaways +herebefore +hereby +heredia +heredipetous +heredipety +hereditable +hereditably +hereditament +hereditarian +hereditarily +hereditarist +hereditary +hereditation +hereditative +heredities +hereditism +hereditist +hereditivity +heredium +heredolues +heredoluetic +herefords +herefore +herefrom +heregeld +herehere +herein +hereinbefore +hereinto +herem +hereness +hereniging +hereof +hereon +hereright +herero +hereroland +heres +heresh +heresiarch +heresies +heresimach +heresiologer +heresiology +heresy +heresyphobia +heresyproof +heretic +heretical +heretically +hereticate +heretication +hereticator +hereticide +hereticize +heretick +heretics +heretoch +heretofore +heretoga +heretrix +hereunto +hereupon +hereward +herewith +herewithal +herge +herger +herget +hergiani +hergira +herhardt +herhhy +heriat +heribelle +herile +hering +herington +heriot +heriotable +herisson +heritability +heritably +heritage +heritages +heritance +heritary +heritiera +heritor +heritors +heritress +heritrix +herjedalen +herk +herki +herking +herky +herl +herlie +herlihan +herlihy +herlinda +herlinde +herling +herlitzka +herlong +herluga +herm +herma +hermack +hermaean +hermaic +herman +hermanek +hermann +hermanns +hermannsson +hermano +hermanos +hermans +hermansville +hermantier +hermanville +hermas +hermeneut +hermeneutics +hermeneutist +hermentaria +hermes +hermesian +hermesianism +hermetic +hermetical +hermetically +hermeticism +hermetics +hermetism +hermetist +hermia +hermidin +hermie +hermien +hermila +hermina +hermine +herminia +herminie +herminio +herminone +hermione +hermisillo +hermiston +hermit +hermitage +hermitages +hermitary +hermite +hermitess +hermitic +hermitical +hermitically +hermitish +hermitism +hermitize +hermitry +hermits +hermitship +hermleigh +hermo +hermodact +hermodactyl +hermogenes +hermogenian +hermoglyphic +hermokopid +hermon +hermonites +hermosabeach +hermosillo +hermoso +hermy +hern +hernaldo +hernan +hernandez +hernandia +hernando +hernanesell +hernani +hernant +herndon +herne +herner +hernia +herniae +hernial +herniaria +herniarin +herniary +hernias +herniate +herniated +herniates +herniating +herniation +herniations +hernime +hernioid +herniology +herniotome +herniotomist +herniotomy +hernon +hernrich +hernshaw +hero +heroarchy +herod +herodian +herodianic +herodians +herodias +herodii +herodion +herodiones +herodionine +herodotus +heroes +heroess +herohead +herohood +heroic +heroical +heroically +heroicalness +heroicity +heroicly +heroicness +heroicomic +heroicomical +heroics +heroid +heroides +heroify +heroin +heroine +heroines +heroineship +heroinism +heroinize +heroins +heroisms +heroistic +heroization +heroize +heroized +heroizes +heroizing +herold +herolike +herominski +heromonger +heron +heroner +heronite +heronlake +heronry +herons +heroogony +heroologist +heroology +herophile +herophilist +heros +heroship +herotheism +heroux +herpes +herpeses +herpestes +herpestinae +herpestine +herpetic +herpetiform +herpetism +herpetoid +herpetologic +herpetomonad +herpetomonas +herpetotomy +herpolhode +herpotrichia +herr +herradura +herrage +herrara +herre +herreid +herren +herrenvolk +herrera +herrero +herrick +herrier +herrin +herring +herringbones +herringer +herrings +herrington +herriotts +herrman +herrmann +herrmans +herrndorf +herrnhuter +herrod +herron +herronald +herrys +hers +hersch +herschel +herschelian +herschelite +herscher +herscovici +herscovitch +herse +hersed +hersee +herself +hersent +hersey +hersham +hershberger +hershel +hershey +hership +hersholt +hersilia +hersir +herson +herst +herstigte +herta +hertan +hertel +hertford +hertha +herti +hertie +hertle +hertler +hertz +hertzberg +hertzes +hertzian +hertzlinger +hertzog +hertzsprung +heruggrim +heruli +herulian +herums +hervati +herve +hervert +hervey +herviale +herz +herzberg +herzegovina +herzel +herzeleid +herzen +herzfeld +herzfrequenz +herzig +herzog +herzsprung +herzstein +hesburgh +hesche +heschke +hese +hesed +heselwood +hesh +hesham +heshbon +heshiu +heshmon +hesiodic +hesione +hesionidae +hesitance +hesitancies +hesitancy +hesitant +hesitantly +hesitate +hesitated +hesitaters +hesitates +hesitating +hesitatingly +hesitation +hesitations +hesitative +hesitatively +hesitator +hesitatory +hesk +hesketh +heslop +heso +hesper +hespera +hesperia +hesperian +hesperic +hesperid +hesperidate +hesperidene +hesperideous +hesperides +hesperidian +hesperidin +hesperidium +hesperiid +hesperiidae +hesperinon +hesperis +hesperitin +hesperornis +hess +hesse +hessel +hesseman +hessen +hesser +hessians +hession +hessite +hessler +hessling +hessmer +hessner +hessonite +hesston +hest +hestand +hestenes +hester +hestern +hesternal +hesther +hesthogenous +hestia +heston +hesychasm +hesychast +hesychastic +hetaera +hetaerae +hetaeras +hetaeria +hetaeric +hetaerism +hetaerist +hetaeristic +hetaerocracy +hetaerolite +hetaery +hetenyi +heteradenia +heteradenic +heterakid +heterakis +heteralocha +heterandrous +heterandry +heterarchy +heteratomic +heterauxesis +heteraxial +heteric +heterically +hetericism +hetericist +heterism +heterization +heterize +hetero +heteroauxin +heteroblasty +heterocarpus +heterocera +heterocerc +heterocercal +heterocercy +heterocerous +heterochiral +heterochrome +heterochromy +heterochrony +heterochthon +heterocline +heteroclital +heteroclite +heterocoela +heterocycle +heterocyst +heterodactyl +heterodera +heterodon +heterodont +heterodonta +heterodontus +heterodox +heterodoxal +heterodoxies +heterodoxly +heterodoxy +heterodromy +heteroecious +heteroecism +heteroecy +heteroepic +heteroepy +heteroerotic +heterogamete +heterogamety +heterogamic +heterogamy +heterogen +heterogene +heterogeneal +heterogenean +heterogenic +heterogenist +heterogenous +heterogeny +heterognath +heterognathi +heterogone +heterogonism +heterogonous +heterogony +heterograft +heterography +heterogyna +heterogynal +heterogynous +heteroicous +heteroimmune +heteroist +heterokaryon +heterokontae +heterokontan +heterolalia +heterolith +heterolobous +heterologic +heterologous +heterology +heterolysin +heterolysis +heterolytic +heteromeles +heteromera +heteromeral +heteromeran +heteromeri +heteromeric +heteromerous +heterometric +heteromi +heteromita +heteromorpha +heteromorphy +heteromya +heteromyaria +heteromyidae +heteromys +heteronereid +heteronereis +heteroneura +heteronomous +heteronomy +heteronym +heteronymic +heteronymous +heteronymy +heteroousia +heteroousian +heteropathic +heteropathy +heterophaga +heterophagi +heterophasia +heterophemy +heterophile +heterophobia +heterophoria +heterophoric +heterophylly +heterophyly +heterophyte +heterophytic +heteropia +heteropidae +heteroplasia +heteroplasm +heteroplasty +heteroploid +heteroploidy +heteropod +heteropoda +heteropodal +heteropodous +heteropoetic +heteropolar +heteropoly +heteropter +heteroptera +heteroptics +heteros +heteroscope +heteroscopy +heteroses +heteroside +heterosis +heterosomata +heterosomati +heterosome +heterosomi +heterosomous +heterosporic +heterospory +heterostatic +heterostraca +heterostraci +heterostyled +heterostyly +heterotactic +heterotaxia +heterotaxic +heterotaxis +heterotaxy +heterotelic +heterotic +heterotopia +heterotopic +heterotopism +heterotopous +heterotopy +heterotrich +heterotricha +heterotropal +heterotroph +heterotrophy +heterotropia +heterotropic +heterotype +heterotypic +heteroxenous +heterozygote +heth +hething +hethlon +hethmon +hetland +hetmanate +hetmanship +hetre +hetrick +hetter +hetterly +hetti +hettick +hettie +hettinger +hetty +hetzel +hetzron +heuau +heuchenne +heuchera +heugh +heulandite +heumite +heun +heune +heung +heuny +heures +heuretic +heureux +heurich +heurikon +heuristic +heuristics +heuskara +heuvel +heuvelton +heve +hevea +heves +hevi +hewa +hewable +hewage +hewart +hewe +hewed +hewel +hewer +hewers +hewes +heweth +hewett +hewettite +hewhall +hewing +hewison +hewitt +hewland +hewlet +hewlett +hewn +hews +hewson +hewt +hexa +hexabasic +hexabiblos +hexabiose +hexabromide +hexacanth +hexacanthous +hexacapsular +hexacarbon +hexace +hexachord +hexachronous +hexacid +hexacolic +hexacoralla +hexacorallan +hexacorallia +hexacosane +hexact +hexactinal +hexactine +hexactinian +hexacyclic +hexad +hexadactyle +hexadactylic +hexadactyly +hexadd +hexadecane +hexadecanoic +hexadecene +hexadecimal +hexadecyl +hexadic +hexadiene +hexadiyne +hexads +hexafoil +hexaglot +hexagonal +hexagonally +hexagonial +hexagonical +hexagonous +hexagons +hexagram +hexagrammoid +hexagrammos +hexagrams +hexagyn +hexagynia +hexagynian +hexagynous +hexahedra +hexahedral +hexahedron +hexahedrons +hexahydrate +hexahydrated +hexahydric +hexahydride +hexahydrite +hexahydroxy +hexameral +hexameric +hexamerism +hexameron +hexamerous +hexameters +hexametral +hexametric +hexametrical +hexametrist +hexametrize +hexamita +hexamitiasis +hexammine +hexammino +hexanchidae +hexanchus +hexandria +hexandric +hexandrous +hexandry +hexanedione +hexanes +hexangular +hexangularly +hexanitrate +hexapartite +hexaped +hexapetaloid +hexapetalous +hexaphyllous +hexapla +hexaplar +hexaplarian +hexaplaric +hexaploid +hexaploidy +hexapod +hexapoda +hexapodal +hexapodan +hexapodies +hexapodous +hexapods +hexapody +hexapterous +hexaradial +hexarch +hexarchies +hexarchy +hexaseme +hexasemic +hexasepalous +hexaspermous +hexaster +hexastich +hexastichic +hexastichon +hexastichous +hexastichy +hexastigm +hexastylar +hexastyle +hexastylos +hexasulphide +hexasyllabic +hexateuch +hexateuchal +hexathlon +hexatomic +hexatriose +hexavalent +hexdt +hexec +hexecontane +hexed +hexedit +hexen +hexenbesen +hexene +hexenii +hexer +hexerei +hexeris +hexers +hexes +hexestrol +hexicology +hexidecimal +hexine +hexing +hexiological +hexiology +hexis +hexit +hexitol +hexnumbers +hexode +hexoestrol +hexogen +hexoic +hexokinase +hexone +hexonic +hexosamine +hexosaminic +hexosan +hexose +hexoylene +hexpartite +hexs +hexsub +hexsunfs +hext +hextat +hexum +hexyl +hexylene +hexylic +hexyls +hexyne +heya +heybroek +heyburn +heydays +heyde +heydey +heydeys +heydon +heydt +heyer +heyerdahl +heyes +heylen +heyman +heynen +heyns +heyo +heys +heyse +heystraeten +heyward +heywood +heyworth +hezareh +hezarei +hezdrel +hezeki +hezekiah +hezhe +hezhen +hezion +hezir +hezrai +hezro +hezron +hezronites +hfuhruhurr +hfunction +hgentleman +hgwells +hhhh +hhhhh +hhhhhh +hhhhhhh +hhhhhhhh +hhhow +hhmhmhmhmh +hhmhmmhm +hhohho +hhoj +hhok +hhos +hhsp +hiai +hialeah +hianakoto +hiant +hiao +hiart +hiashi +hiatal +hiate +hiation +hiatuses +hiawassee +hiawatha +hibachis +hibaradai +hibberd +hibbert +hibbertia +hibbin +hibbing +hibbs +hibernacle +hibernacular +hibernaculum +hibernal +hibernated +hibernates +hibernating +hibernation +hibernator +hibernators +hibernia +hibernian +hibernianism +hibernic +hibernical +hibernically +hibernicism +hibernicize +hibernize +hiberno +hibernology +hibiscus +hibiscuses +hibito +hibitos +hibler +hibox +hibunci +hicaque +hicatee +hiccough +hiccoughed +hiccoughs +hiccup +hiccuped +hiccuping +hiccupped +hiccupping +hiccups +hichiro +hichkaryana +hick +hickam +hickan +hickenbottom +hickerson +hickey +hickeys +hickin +hickman +hickock +hickok +hickories +hickory +hickoryflat +hickorygrove +hickoryridge +hickorywithe +hickox +hicks +hicksite +hicksley +hickson +hicksville +hickwall +hicky +hico +hicock +hicolor +hicoria +hida +hidable +hidage +hidalgism +hidalgo +hidalgoism +hidalgos +hidari +hidas +hidated +hidation +hidatsa +hidayat +hiddai +hiddekel +hidden +hiddenite +hiddenly +hiddenmost +hiddenness +hide +hideaki +hideaway +hideaways +hidebind +hidebound +hided +hidego +hideki +hideko +hideland +hideless +hideling +hidenari +hideo +hideosity +hideous +hideously +hideousness +hideout +hideouts +hider +hiders +hides +hidest +hideth +hidetora +hideyo +hideyoshi +hidi +hiding +hidings +hidir +hidiroglou +hidkala +hidling +hidlings +hidradenitis +hidrocystoma +hidromancy +hidropoiesis +hidrosis +hidrotic +hiebert +hiebsch +hiechware +hied +hieder +hieing +hiel +hielaman +hield +hielmite +hielscher +hiemal +hiemation +hien +hienghe +hieperspays +hier +hieracian +hieracium +hierapicra +hierapolis +hierarch +hierarchal +hierarchcal +hierarchial +hierarchical +hierarchies +hierarchism +hierarchist +hierarchize +hierarchs +hierarchy +hierarhy +hieratical +hieratically +hieraticism +hieratite +hiero +hierochloe +hierocracy +hierocratic +hierodule +hierodulic +hierofalco +hierogamy +hieroglyph +hieroglypher +hieroglyphy +hierogram +hierogrammat +hierograph +hierographa +hierographer +hierographic +hierography +hierolatry +hierologic +hierological +hierologist +hierology +hieromachy +hieromancy +hieromnemon +hieromonach +hieron +hieronimus +hieronymic +hieronymite +hieropathic +hierophancy +hierophant +hierophantes +hierophantic +hierophants +hieros +hieroscopy +hierro +hiers +hierurgical +hierurgy +hies +hiev +hiew +hiezenbuhg +higa +higaonon +higbee +higby +higden +higdon +higelin +higest +higgaion +higganum +higgens +higginbotham +higgins +higginsite +higginslake +higginson +higginsport +higginsville +higgle +higglehaggle +higgler +higglery +higgs +high +higham +highballed +highballs +highbelia +highbinder +highbit +highboard +highborn +highboys +highbred +highbridge +highbrow +highbrows +highcapacity +highchair +highcolored +highcourt +higher +higherlevel +highermost +higherorder +higherpaying +highest +highet +highfalls +highfalutin +highfaluting +highfed +highflier +highflown +highflying +highgrade +highgrowth +highhalf +highhandedly +highhatting +highhearted +highhill +highincome +highinterest +highish +highisland +highjack +highjacked +highjacker +highjacks +highland +highlandcity +highlander +highlanders +highlandhome +highlandish +highlandlake +highlandman +highlandpark +highlandry +highlands +highlevel +highlight +highlighted +highlighter +highlighting +highlights +highlit +highliving +highlow +highly +highman +highmettled +highminded +highmoor +highmore +highmost +highmount +highness +highnesses +highnoise +highorder +highoverhead +highpitched +highpoint +highport +highpowered +highquality +highranking +highridge +highroads +highs +highschool +highshoals +highsmith +highsouled +highsounding +highspeed +highspire +highsprings +highstrung +hight +hightailed +hightailing +hightails +hightasted +hightech +highted +hightes +hightest +highth +highths +highting +hightoby +hightone +hightoned +hightop +hightower +hightown +hightraffic +hights +hightstown +highusage +highview +highvolume +highwater +highway +highwayc +highwayman +highways +highwire +highwood +highwrought +highyielding +higi +higir +higley +higone +higson +higuchi +higuera +higuero +hihat +hiiraan +hijaak +hijack +hijacked +hijacker +hijackers +hijacking +hijackings +hijacks +hijaq +hijaz +hiji +hijo +hijuk +hikaru +hikatoo +hike +hiked +hiken +hiker +hikers +hikes +hikgds +hikina +hiking +hikita +hikmet +hiko +hikurangi +hila +hilaire +hilakaitetu +hiland +hilaret +hilaria +hilarie +hilario +hilarious +hilariously +hilaritas +hilarities +hilary +hilarymas +hilarytide +hilasmic +hilb +hilberman +hilbert +hilbertspace +hilbig +hilbing +hilboldt +hilborn +hilbourne +hilburn +hilch +hild +hilda +hildagard +hildagarde +hildburg +hilde +hildebran +hildebrand +hildebranda +hildebrandic +hildebrandt +hildegaard +hildegard +hildegarde +hilder +hildething +hildi +hildileis +hilding +hildreth +hildrun +hildum +hildy +hildys +hiledgarde +hilen +hilfe +hilger +hilham +hiliferous +hiligainon +hiligaynon +hilir +hilkiah +hill +hilla +hillaire +hillard +hillario +hillary +hillberg +hillberry +hillbillies +hillburn +hillcity +hillcrest +hillculture +hilled +hillel +hiller +hillerman +hillers +hillery +hillet +hillevi +hilley +hillgrove +hillhouse +hillhousia +hilli +hilliard +hilliards +hilliary +hillias +hillidge +hillie +hillier +hilliest +hilliness +hilling +hillis +hillisburg +hillister +hillmdss +hillocked +hillocks +hillocky +hillpoint +hillring +hillrose +hills +hillsale +hillsalesman +hillsboro +hillsborough +hillsdale +hillsgrove +hillside +hillsides +hillsman +hillson +hillsville +hilltop +hilltops +hilltown +hilltribe +hilltrot +hillview +hillward +hillwoman +hilly +hillyer +hilmar +hilmi +hilo +hilow +hils +hilsa +hilsdon +hilsson +hilt +hilted +hilter +hilting +hiltless +hilton +hiltons +hilts +hiltz +hilus +hilwa +hima +himachal +himalayan +himalayas +himalayish +himalia +himanshu +himantopus +himaras +himarima +himation +himatsuri +himba +himbaps +himeji +himelstein +himes +himi +himmel +himmelbett +himmelfarb +himmelstoss +himmler +himp +himrod +hims +himsel +himself +himst +himward +himwards +himyaric +himyarite +himyaritic +hina +hinahon +hinano +hinapavosa +hinaraya +hinau +hinayana +hinch +hinchcliff +hincher +hinchey +hinchley +hinckley +hincks +hind +hinda +hindberry +hindborg +hindbrain +hindcast +hinddeck +hinde +hindeman +hindenburg +hinder +hinderance +hindered +hinderer +hinderers +hinderest +hindereth +hinderful +hinderfully +hindering +hinderingly +hinderlands +hinderlings +hinderlins +hinderly +hindermann +hinderment +hindermost +hinders +hindersome +hindgut +hindguts +hindhand +hindhead +hindi +hindiurdu +hindki +hindko +hindle +hindley +hindman +hindmost +hindquarter +hindquarters +hindrances +hinds +hindsaddle +hindsboro +hindsight +hindsite +hindson +hindsville +hindu +hinduize +hindus +hindustan +hindustani +hindustanis +hindward +hindy +hine +hiner +hines +hinesburg +hineston +hinesville +hinfix +hing +hinge +hingebreak +hingecorner +hinged +hingeflower +hingeless +hingelike +hinger +hingers +hinges +hingeways +hingham +hinghua +hinging +hingkam +hingle +hingleman +hingsen +hingst +hingtgen +hini +hinihon +hink +hinkel +hinkie +hinkins +hinkle +hinkley +hinks +hinkson +hinna +hinney +hinnible +hinnied +hinnies +hinnites +hinnom +hinny +hino +hinoid +hinoideous +hinojosa +hinoki +hinrich +hinrichsen +hinsdale +hinsdalite +hinshaw +hinsley +hinson +hinstance +hint +hinted +hintedly +hinter +hinterlands +hinters +hintinfo +hinting +hintingly +hinton +hintproof +hints +hintze +hintzeite +hinux +hinwood +hinz +hiochuwau +hiodon +hiodont +hiodontidae +hiortdahlite +hiotshuwau +hiowe +hipbone +hipbones +hipe +hipel +hiper +hiphalt +hiphuggers +hipkin +hipl +hipless +hiplewaite +hipline +hipmold +hipness +hipnesses +hipnotize +hipp +hippa +hipparch +hipparchs +hipparion +hippeastrum +hipped +hippelates +hippen +hipper +hippert +hippest +hippia +hippian +hippiater +hippiatric +hippiatrical +hippiatrics +hippiatrist +hippiatry +hippic +hippidae +hippidion +hippidium +hippie +hippiedom +hippier +hippies +hipping +hippish +hipple +hippo +hippobosca +hippoboscid +hippocamp +hippocampal +hippocampi +hippocampine +hippocampus +hippocaust +hippocentaur +hippocerf +hippocras +hippocratea +hippocratian +hippocratism +hippocrene +hippocrenian +hippocrepian +hippodamia +hippodamous +hippodromes +hippodromic +hippodromist +hippoglossus +hippogriff +hippogriffin +hippoid +hippolite +hippolith +hippological +hippologist +hippology +hippolyta +hippolytan +hippolyte +hippolytidae +hippolytus +hippomachy +hippomancy +hippomanes +hippomedon +hippomelanin +hippomenes +hippometer +hippometric +hippometry +hipponactean +hippophagi +hippophagism +hippophagist +hippophagous +hippophagy +hippophile +hippophobia +hippopod +hippopotami +hippopotamic +hippos +hipposelinum +hippotigrine +hippotigris +hippotomical +hippotomist +hippotomy +hippotragine +hippotragus +hippurate +hippuric +hippurid +hippuris +hippurite +hippurites +hippuritic +hippuritidae +hippuritoid +hippus +hippy +hips +hipshot +hipson +hipsters +hipwort +hira +hirabayashi +hirable +hiraga +hiragana +hiraganas +hirah +hirakawa +hiraki +hiram +hiramite +hiranyasap +hirara +hirata +hirayama +hircarra +hircine +hircinous +hircocerf +hircocervus +hircosity +hird +hirdygirdy +hire +hireable +hired +hireless +hireling +hirelings +hireman +hiren +hirer +hirers +hires +hirest +hirgon +hiri +hiring +hirings +hirluin +hirmologion +hirmos +hirneola +hiro +hirohito +hiroilamgang +hirok +hiroki +hiroko +hiromi +hiromichi +hiromitsu +hironaka +hironao +hirondelle +hirons +hirooki +hirose +hiroshi +hiroshige +hiroshima +hirotugu +hirourzi +hiroyuki +hirple +hirrient +hirsch +hirschfeld +hirschorn +hirse +hirsel +hirsh +hirshman +hirsle +hirson +hirst +hirsuteness +hirsuties +hirsutism +hirsutulous +hirt +hirtella +hirtellous +hirth +hirthe +hirudin +hirudine +hirudinea +hirudinean +hirudinidae +hirudinize +hirudinoid +hirudo +hirundine +hirundinidae +hirundinous +hirundo +hisaki +hisako +hisakuni +hisao +hisashi +hisataka +hisaya +hiscoe +hiscott +hiseville +hish +hisham +hishchak +hishkaryana +hisingerite +hisko +hislop +hisn +hisoshi +hispa +hispania +hispanicism +hispanicize +hispanics +hispanidad +hispaniola +hispaniolate +hispaniolize +hispanist +hispanize +hispano +hispanophile +hispanophobe +hispid +hispidity +hispidulate +hispidulous +hispinae +hiss +hissahntes +hissala +hissao +hissar +hissed +hissein +hisself +hisser +hissers +hisses +hissing +hissingly +hissings +hissop +hissproof +hist +histamin +histaminase +histamines +histaminic +histamins +histed +histie +histing +histiocyte +histiocytic +histioid +histiology +histiophorus +histman +histoblast +histoclastic +histocyte +histogen +histogenesis +histogenetic +histogenic +histogenous +histogeny +histogram +histograms +histographer +histographic +histography +histoid +histoire +histologic +histological +histologist +histologists +histolysis +histolytic +histon +histonal +histone +histonomy +histophyly +histoplasma +histoplasmin +historia +historial +historian +historians +historiated +historic +historical +historically +historician +historicism +historicity +historicize +historics +historicus +historied +historier +histories +historiette +historify +historik +historiology +historious +historism +historize +history +histotherapy +histotome +histotomy +histotrophic +histotrophy +histotropic +histozoic +histozyme +histrio +histrion +histrionical +histrionics +histrionism +histroy +hists +hitachi +hitadipa +hitary +hitau +hitaupororan +hitch +hitchcock +hitched +hitcher +hitchers +hitches +hitchhike +hitchhiked +hitchhiker +hitchhikers +hitchhikes +hitchhiking +hitchily +hitchiness +hitching +hitchings +hitchins +hitchita +hitchiti +hitchproof +hitchy +hite +hitech +hithe +hither +hithermost +hitherto +hitherward +hitia +hitigima +hitkala +hitkalanchi +hitler +hitlerism +hitlerite +hitless +hitlist +hitman +hito +hitomi +hitoshi +hitry +hits +hitt +hittable +hittaway +hitter +hitterdal +hitters +hitting +hittite +hittites +hittitics +hittitology +hittology +hittscher +hitty +hitu +hiusser +hiva +hive +hived +hivefile +hiveless +hively +hiver +hiveroot +hives +hiveward +hiving +hivite +hivites +hiwasse +hiwassee +hiwi +hixkariana +hixkarya +hixkaryana +hixon +hixson +hixton +hiya +hiye +hiyowe +hizballah +hizkiah +hizkijah +hizkiyahu +hizkyahu +hizz +hjalmarsson +hjartarson +hjckrrh +hjehn +hjelm +hjelt +hjordis +hjorth +hjulian +hkahku +hkaku +hkaluk +hkamti +hkanung +hkauri +hkawa +hkbp +hknong +hkun +hkwinhpang +hladik +hlady +hlam +hlanganu +hlauschek +hlavacova +hlave +hlawthai +hldchk +hlengwe +hler +hlidhskjalf +hlig +hlist +hlithskjalf +hllnd +hlls +hloka +hlolan +hlorrithi +hlota +hlubi +hlusicka +hluttaw +hmanggona +hmar +hmcvax +hmmm +hmmmm +hmong +hmonono +hmph +hmview +hmviewf +hmwaeke +hmwaveke +hnatshyn +hngry +hnidek +hnoc +hoadley +hoag +hoagies +hoagland +hoagley +hoaglin +hoai +hoak +hoamoal +hoamol +hoang +hoannya +hoanya +hoar +hoard +hoarded +hoarder +hoarders +hoarding +hoardings +hoards +hoardward +hoare +hoarfrost +hoarfrosts +hoarhead +hoarheaded +hoarhound +hoarier +hoariest +hoarily +hoariness +hoarish +hoarness +hoarse +hoarsely +hoarsen +hoarsened +hoarseness +hoarsening +hoarsens +hoarser +hoarsest +hoarstone +hoarwort +hoary +hoaryheaded +hoast +hoastman +hoatley +hoatzin +hoatzins +hoava +hoax +hoaxed +hoaxee +hoaxer +hoaxers +hoaxes +hoaxing +hoaxproof +hobab +hobah +hoban +hobard +hobb +hobber +hobbes +hobbesian +hobbet +hobbian +hobbie +hobbies +hobbig +hobbil +hobbinya +hobbism +hobbist +hobbistical +hobbit +hobbits +hobble +hobblebush +hobbled +hobbledehoy +hobbledehoys +hobbledygee +hobbler +hobblers +hobbles +hobbling +hobblingly +hobbly +hobbs +hobbsville +hobby +hobbyhorses +hobbyism +hobbyist +hobbyists +hobbyless +hobcraft +hobe +hobel +hoberman +hobert +hobes +hobesh +hobesound +hobglobin +hobgoblin +hobgoblins +hobgood +hobhouse +hobiecat +hobin +hobley +hoblike +hobnail +hobnailed +hobnailer +hobnails +hobnob +hobnobbed +hobnobbing +hobnobs +hoboed +hoboes +hoboing +hoboism +hoboisms +hoboken +hobomoco +hobophobic +hobos +hobs +hobson +hobthrush +hobu +hobucken +hoby +hocco +hoceima +hoch +hochbauer +hochberg +hochberger +hochdorfer +hoche +hochelaga +hochesh +hochetsa +hochheim +hochheimer +hochman +hochu +hock +hockaday +hockchew +hockday +hocked +hockelty +hocker +hockers +hockessin +hocket +hockey +hockeypux +hockeys +hocking +hockingport +hockley +hocks +hockshin +hockshop +hockshops +hockstader +hocktide +hocky +hoctor +hocus +hocused +hocuses +hocusing +hocuspocus +hocussed +hocusses +hocussing +hocutt +hocyigit +hodad +hodaddy +hodads +hodaiah +hodaviah +hoddel +hodden +hodder +hoddinott +hoddle +hoddleston +hoddog +hoddy +hoddydoddy +hode +hodel +hodening +hodesh +hodevah +hodful +hodge +hodgeman +hodgen +hodgens +hodgenville +hodgepodges +hodges +hodgins +hodgkin +hodgkins +hodgkiss +hodgson +hodh +hodiah +hodiak +hodiernal +hodijah +hodina +hodiok +hodish +hodjem +hodman +hodmandod +hodo +hodograph +hodometer +hodometrical +hodos +hodrung +hods +hodson +hoecake +hoecakes +hoed +hoedown +hoedowns +hoefer +hoeffding +hoefgen +hoeflich +hoeful +hoeg +hoegnaes +hoehere +hoehlig +hoehling +hoehn +hoehne +hoei +hoeing +hoejre +hoek +hoeksma +hoekstra +hoel +hoeler +hoelig +hoellische +hoelscher +hoemann +hoen +hoene +hoenig +hoequist +hoer +hoerbiger +hoerl +hoernesite +hoers +hoerter +hoes +hoeschel +hoess +hoey +hofbankler +hofbauer +hofer +hoferek +hoffa +hoffbauer +hoffelt +hoffer +hofferth +hoffman +hoffmann +hoffmannist +hoffmannite +hoffmeier +hoffmeister +hoffpauir +hoffstedder +hoffstetter +hoffy +hoflich +hofman +hofmann +hofmeister +hofrat +hofstadter +hofstadters +hofstede +hofstetter +hofstra +hoftman +hoga +hogans +hogansburg +hogansville +hogarth +hogarthian +hogback +hogbacks +hogbush +hoge +hogeboom +hogeland +hoger +hogfish +hogfishes +hogframe +hogg +hoggan +hogganbeck +hoggar +hogged +hogger +hoggerel +hoggers +hoggery +hogget +hoggett +hoggie +hoggin +hoggins +hoggish +hoggishly +hoggishness +hoggism +hoggle +hoggs +hoggy +hogherd +hoghide +hoghood +hogirano +hoglah +hoglike +hogling +hogmace +hogmanay +hogni +hognose +hognoses +hognut +hognuts +hogo +hogpen +hograno +hogreeve +hogrophyte +hogs +hogshead +hogsheads +hogship +hogshouther +hogskin +hogsta +hogsty +hogtie +hogtied +hogtieing +hogties +hogtying +hogue +hogward +hogwash +hogwashes +hogweed +hogweeds +hogwort +hogyard +hoham +hohannes +hohberger +hohe +hohenegg +hohengarten +hohensteina +hohenwald +hohenzollern +hohl +hohlfeld +hohm +hohmann +hohn +hohnecker +hoho +hohodena +hohodene +hohoe +hohoejasikan +hohohohohoho +hohokam +hohokus +hohol +hohumono +hoick +hoiesterett +hoin +hoinville +hoisan +hoise +hoised +hoisington +hoist +hoistaway +hoisted +hoister +hoisters +hoisting +hoistman +hoists +hoistside +hoistway +hoit +hojeria +hojjat +hojjatiyeh +hojl +hoju +hokah +hokchia +hoke +hoked +hokey +hokeypokey +hokianga +hokier +hokiest +hoking +hokka +hokkaido +hokkien +hoklo +hokstad +hokum +hokums +hokusai +hokypokies +hokypoky +holabird +holadi +holagogue +holahan +holar +holarctic +holard +holari +holarthritic +holarthritis +holaspidean +holbaek +holberry +holborn +holbrook +holbrooks +holby +holbytla +holcad +holchih +holcodont +holcomb +holcombe +holconoti +holcroft +holcus +hold +holda +holdable +holdall +holdalls +holdaway +holdback +holdbacks +holden +holdenite +holdenville +holder +holderness +holderread +holders +holdership +holdest +holdeth +holdfast +holdfastness +holdfasts +holding +holdingford +holdingly +holdings +holdouts +holdovers +holdrege +holdren +holds +holdsman +holdsworth +holdups +holdwine +hole +holectypina +holectypoid +holed +holeless +holem +holeman +holeproof +holer +holes +holesinger +holethnic +holethnos +holewort +holey +holf +holford +holgate +holger +holgersson +holgerssons +holguin +holi +holia +holian +holibaugh +holicker +holicong +holiday +holidayed +holidayer +holidaying +holidayism +holidaymaker +holidays +holidayz +holier +holies +holiest +holikachuk +holily +holima +holimombo +holiness +holing +holinight +holinski +holism +holisms +holist +holister +holistic +holistically +holists +holiya +holkeri +holl +holla +hollack +holladay +hollaite +holland +hollanda +hollandale +hollander +hollanders +hollandia +hollandish +hollandite +hollands +hollansburg +hollantide +hollar +hollbach +hollen +hollenbach +hollenbeck +hollenberg +hollengworth +holler +holleran +hollered +hollering +hollers +holles +holley +holli +holliday +hollidays +hollie +hollies +holliford +holliman +hollin +hollinghead +hollings +hollingshead +hollingsway +hollington +hollingworth +hollins +holliper +hollis +holliscenter +hollister +holliston +holliwell +hollman +hollmann +hollo +holloaing +hollock +holloman +hollon +hollong +hollooing +holloran +hollow +holloway +hollowed +hollower +hollowest +hollowfaced +hollowfoot +hollowing +hollowly +hollowness +hollowrock +hollows +hollowville +hollran +hollsopple +holluschick +holly +hollyanne +hollybluff +hollybush +hollygrove +hollyhill +hollyhocks +hollypond +hollyridge +hollysprings +hollytree +hollywood +hollywooder +hollywoodize +holm +holma +holman +holmans +holmberg +holmberry +holmdel +holmen +holmer +holmes +holmescity +holmesian +holmesmill +holmestrand +holmesville +holmgang +holmhaven +holmia +holmic +holmiums +holmos +holmquist +holms +holmsby +holmsten +holmsville +holmwood +holness +holo +holobaptist +holobenthic +holoblastic +holobranch +holocaine +holocam +holocams +holocarpic +holocarpous +holocaustal +holocaustic +holocausts +holocentrid +holocentroid +holocentrus +holocephala +holocephalan +holocephali +holochoanoid +holochordate +holochroal +holoclastic +holocrine +holocryptic +holodactylic +holodeck +holodedron +holodiscus +holodkov +holofernes +hologamous +hologamy +hologastrula +holognatha +holognathous +hologonidium +holograms +holograph +holographic +holographies +holographs +holohedral +holohedric +holohedrism +holoholo +holohyaline +holometabola +holometabole +holometaboly +holometer +holomorph +holomorphic +holomorphism +holomorphy +holomyaria +holomyarian +holomyarii +holon +holonoise +holoparasite +holophane +holophotal +holophote +holophrase +holophrasis +holophrasm +holophrastic +holophyte +holophytic +holoplankton +holoplexia +holopneustic +holoproteide +holoptic +holoptychian +holoptychiid +holoptychius +holoquinoid +holoquinonic +holorhinal +holos +holoside +holosiderite +holosigns +holosiphona +holosomata +holosomatous +holospondaic +holostean +holostei +holosteous +holosteric +holosteum +holostomata +holostomate +holostome +holostomous +holostylic +holosymmetry +holosystolic +holothecal +holothoracic +holothuria +holothurian +holothuridea +holothurioid +holotonia +holotonic +holotony +holotrich +holotricha +holotrichal +holotrichida +holotrichous +holotype +holotypes +holoubek +holour +holowon +holozoic +holpath +holpen +holsclaw +holst +holsteins +holster +holstered +holsters +holstrom +holten +holter +holthaus +holton +holtrinhart +holts +holtsa +holtssummit +holtsville +holtville +holtwood +holtz +holtze +holtzman +holtzmann +holu +holualoa +holubovi +holvey +holy +holycross +holyday +holydays +holygrail +holyokeite +holyrood +holystones +holytide +holz +holzachuk +holzer +holzhausen +holzinger +holzman +holzmann +holzschuh +holzschuk +holzscruh +homa +homageable +homaged +homager +homagers +homages +homaging +homaloid +homaloidal +homalonotus +homalopsinae +homaloptera +homam +homan +homans +homaridae +homarine +homaroid +homarus +homatomic +homaxial +homaxonial +homaxonic +homayoon +homayoun +hombergk +hombo +hombre +hombres +homburg +homburgs +home +homebankla +homebanksf +homebodies +homebody +homeborn +homebred +homebreds +homebrew +homebrewed +homebuilders +homecomer +homecomings +homecraft +homecroft +homecrofter +homecrofting +homed +homedale +homedir +homedisplays +homefarer +homefelt +homefolk +homegoer +homegrown +homeier +homekeeper +homekeeping +homelander +homelands +homeless +homelessly +homelessness +homelet +homelier +homeliest +homelike +homelikeness +homelily +homeliness +homeling +homely +homelyn +homemaker +homemakers +homemaking +homeo +homeoblastic +homeogenic +homeogenous +homeoid +homeoidal +homeoidality +homeokinesis +homeokinetic +homeomerous +homeomorphy +homeopathic +homeopathies +homeopathist +homeopathy +homeophony +homeoplasia +homeoplastic +homeoplasy +homeopolar +homeosis +homeostases +homeostatic +homeotic +homeotype +homeotypic +homeotypical +homeowners +homeozoic +homepage +homepageoff +homepageon +homer +homercity +homerian +homerical +homerically +homerid +homeridae +homeridian +homering +homerist +homero +homerologist +homerology +homeromastix +homeroom +homerooms +homers +homerton +homerville +homes +homeseeker +homesick +homesickly +homesickness +homesite +homesome +homespun +homespuns +homestall +homestead +homesteader +homesteaders +homesteads +homested +homester +homestretch +hometown +hometowns +homewardly +homewards +homewise +homewood +homework +homeworker +homeworks +homeworld +homewort +homeworth +homey +homeyness +homicidal +homicidally +homicide +homicides +homicidious +homiculture +homier +homiest +homilete +homiletic +homiletical +homiletics +homiliarium +homiliary +homilies +homilist +homilists +homilite +homilize +hominal +hominem +hominess +homing +hominian +hominid +hominidae +hominids +hominies +hominiform +hominify +hominine +hominivorous +hominized +hominoid +hominoids +hominy +homish +homishness +homm +homma +homme +hommedieu +hommell +hommes +homn +homo +homoanisic +homobaric +homoblastic +homoblasty +homocarpous +homocentric +homocerc +homocercal +homocercy +homocerebrin +homochiral +homochrome +homochromic +homochromous +homochromy +homochronous +homoclinal +homocline +homocoela +homocoelous +homocreosol +homocyclic +homodermic +homodermy +homodont +homodontism +homodox +homodoxian +homodromal +homodrome +homodromous +homodromy +homodynamic +homodynamous +homodynamy +homodyne +homoean +homoeanism +homoecious +homoeoarchy +homoeogenic +homoeogenous +homoeography +homoeomerae +homoeomeri +homoeomeria +homoeomerian +homoeomeric +homoeomerous +homoeomery +homoeomorph +homoeomorphy +homoeopath +homoeopathic +homoeopathy +homoeophony +homoeoplasia +homoeoplasy +homoeopolar +homoeosis +homoeotel +homoeotic +homoeotopy +homoeotype +homoeotypic +homoeozoic +homoerotic +homoerotism +homogametic +homogamic +homogamous +homogamy +homogen +homogene +homogeneal +homogeneate +homogeneize +homogenesis +homogenetic +homogenic +homogenize +homogenized +homogenizer +homogenizers +homogenizes +homogenizing +homogenous +homogentisic +homogeny +homoglot +homogone +homogonous +homogonously +homogony +homograft +homograph +homographic +homographs +homography +homohedral +homoiotherm +homoiousia +homoiousian +homoiousious +homolateral +homolecithal +homolegalis +homolka +homolog +homologate +homologation +homologic +homological +homologies +homologist +homologize +homologizer +homologon +homolography +homolosine +homolousian +homolysin +homolysis +homomallous +homomeral +homomerous +homometrical +homomorph +homomorpha +homomorphous +homomorphy +homoneura +homonick +homonomous +homonomy +homonuclear +homonymic +homonymies +homonymous +homonymously +homonyms +homonymy +homoousia +homoousian +homoousiast +homoousion +homoousious +homopathy +homoperiodic +homopetalous +homophene +homophenous +homophile +homophiles +homophobic +homophone +homophones +homophonic +homophonous +homophony +homophthalic +homophylic +homophyllous +homophyly +homoplasis +homoplasmic +homoplasmy +homoplast +homoplastic +homoplasy +homopolar +homopolarity +homopolic +homopter +homoptera +homopteran +homopteron +homopterous +homor +homorelaps +homorganic +homos +homosassa +homoseismal +homosexual +homosexually +homosexuals +homosporous +homospory +homosteus +homostyled +homostylic +homostylism +homostylous +homostyly +homosystemic +homotactic +homotatic +homotaxeous +homotaxia +homotaxial +homotaxially +homotaxic +homotaxis +homotaxy +homothallic +homothallism +homothetic +homothety +homotonic +homotonous +homotonously +homotony +homotopic +homotropal +homotropous +homotypal +homotype +homotypic +homotypical +homotypy +homovanillic +homovanillin +homoveratric +homozygosis +homozygosity +homozygote +homozygotes +homrai +homs +homuncle +homuncular +homunculi +homunculus +homy +hona +honaker +honaloochie +honan +honaunau +honbarrier +honcho +honchos +honda +hondas +hondells +hondiapa +honduran +honduranean +honduranian +hondurans +honduras +hondurean +hondurian +hondyapa +honeapath +honed +honegger +honeoye +honeoyefalls +honer +honers +hones +honesdale +honest +honester +honestest +honesties +honestly +honestness +honestone +honesty +honewort +honeworts +honey +honeybees +honeyberry +honeybind +honeyblob +honeybloom +honeybrook +honeybun +honeybuns +honeychurch +honeycom +honeycomb +honeycombed +honeycombs +honeycreek +honeycutt +honeydew +honeydewed +honeydews +honeydrop +honeyed +honeyedly +honeyedness +honeyfall +honeyflower +honeyfogle +honeyful +honeygrove +honeyhearted +honeying +honeyless +honeylike +honeylipped +honeyman +honeymoon +honeymooned +honeymooner +honeymooners +honeymooning +honeymoons +honeymoony +honeymouthed +honeypod +honeypot +honeyq +honeys +honeystone +honeysuck +honeysucker +honeysuckled +honeysuckles +honeysweet +honeytongued +honeyville +honeyware +honeywell +honeywood +honeywort +hongalla +hongee +hongkong +hongsha +hongzhi +honi +honiara +honibo +honied +honig +honily +honing +honitetu +honk +honkakangas +honkasalo +honked +honker +honkers +honkey +honkeys +honkie +honkies +honking +honks +honky +honkytonk +honkytonks +honneger +honnete +honneurs +honneycutt +honning +hono +honobia +honokaa +honolulu +honomu +honoo +honor +honora +honorability +honorable +honorables +honorably +honorance +honorands +honoraries +honorarily +honorariums +honorary +honoraville +honore +honored +honorees +honorer +honorers +honoress +honori +honoria +honorifics +honorine +honoring +honorio +honorious +honorless +honorous +honors +honorsman +honorworthy +honour +honourable +honoured +honourer +honourers +honourest +honoureth +honouring +honours +honpo +honshiang +honsinger +hontar +hontish +hontous +honus +honya +hooches +hoochie +hoochinoo +hood +hoodcap +hooded +hoodedness +hoodful +hoodie +hooding +hoodless +hoodlike +hoodlumish +hoodlumism +hoodlumize +hoodlums +hoodman +hoodmold +hoodoo +hoodooed +hoodooing +hoodoos +hoodriver +hoods +hoodsheaf +hoodshy +hoodshyness +hoodsport +hoodwink +hoodwinkable +hoodwinked +hoodwinker +hoodwinking +hoodwinks +hoodwise +hoodwort +hooey +hooeys +hoof +hoofbeat +hoofbeats +hoofbound +hoofed +hoofer +hoofers +hoofiness +hoofing +hoofish +hoofless +hooflet +hooflike +hoofmarks +hoofprint +hoofrot +hoofs +hoofworm +hoofy +hoog +hooge +hooh +hook +hooka +hookah +hookahs +hookaroon +hookas +hooke +hooked +hookedness +hookedwise +hooker +hookera +hookerman +hookers +hookerton +hookey +hookeys +hookheal +hookier +hookies +hooking +hookish +hookless +hooklet +hooklets +hooklike +hookmaker +hookmaking +hookman +hooknose +hooknoses +hooks +hooksmith +hookstown +hooktip +hookum +hookup +hookups +hookweed +hookwise +hookwormer +hookworms +hookwormy +hooky +hool +hooland +hoolehua +hooley +hooligan +hooliganism +hooliganize +hooligans +hoolihan +hoolock +hooly +hoon +hoonoomaun +hoonuh +hoop +hoopa +hooped +hooper +hooperbay +hoopers +hoopeston +hooping +hooplas +hoople +hoopless +hooplike +hoopmaker +hoopman +hoopoe +hooppole +hoops +hoopstar +hoopster +hoopsters +hoopstick +hoopwood +hoor +hoorah +hoorahed +hoorahing +hoorahs +hooray +hoorayed +hooraying +hoorays +hoore +hoorman +hoorn +hoorwoun +hoose +hoosegows +hoosgow +hoosgows +hoosh +hoosick +hoosickfalls +hoosierdom +hoosierese +hoosierize +hoosiers +hoot +hootay +hootch +hootches +hooted +hootenannies +hootenanny +hooter +hooters +hooting +hootingly +hootkins +hooton +hoots +hoove +hooven +hoover +hooveria +hooverism +hooverize +hooverphonic +hooversville +hooves +hoovey +hopa +hopalong +hopao +hopatcong +hopbine +hopbottom +hopbush +hopcalite +hopcrease +hopcroft +hope +hoped +hopedale +hopeful +hopefully +hopefulness +hopefuls +hopehull +hopeite +hopeland +hopeless +hopelessly +hopelessness +hopemills +hoper +hopers +hopes +hopeth +hopeton +hopevale +hopevalley +hopewell +hopf +hopgood +hophead +hopheads +hophni +hopi +hoping +hopingly +hopis +hopkins +hopkinson +hopkinsonian +hopkinspark +hopkinsville +hopkinton +hopland +hopless +hopley +hoplite +hoplitic +hoplology +hoplomachic +hoplomachist +hoplomachos +hoplomachy +hopmann +hopmans +hopoff +hopomythumb +hoppe +hopped +hoppenworth +hopper +hopperburn +hopperdozer +hopperette +hoppergrass +hopperings +hopperman +hoppers +hoppestere +hoppet +hopping +hoppingly +hoppings +hoppity +hopples +hopps +hoppy +hops +hopsack +hopsacking +hopsacks +hopscotch +hopscotcher +hopson +hoptoad +hoptoads +hopton +hopvine +hopwood +hopyard +hoque +hoquiam +hora +horacio +horade +horah +horak +horal +horale +horalek +horam +horara +horary +horas +horatia +horatian +horatio +horatius +horbachite +horban +horbiger +hord +hordaland +hordarian +hordary +hordeaceous +horded +hordeiform +hordein +hordenine +hordern +hordes +hordeum +hording +hordubal +hordville +hore +horeb +horehounds +horem +horemans +horemheb +horeth +horgan +horhagidgad +hori +horicon +horim +horims +horino +horismology +horite +horites +horiuchi +horiz +horizometer +horizon +horizonal +horizonless +horizons +horizontal +horizontally +horizontals +horizonte +horizontic +horizontical +horizonward +horke +horkoff +hormah +horman +hormann +horme +hormic +hormigo +hormigueros +hormion +hormist +hormoaning +hormogon +hormogonales +hormogoneae +hormogonium +hormogonous +hormolka +hormonal +hormonally +hormone +hormones +hormonic +hormonize +hormonogenic +hormonology +hormos +hormozgan +hormuthia +hormuz +horn +horna +hornacek +hornbeak +hornbeck +hornbeek +hornbill +hornbills +hornblendic +hornblendite +hornblower +hornbook +hornbooks +hornbostel +hornbrook +hornburg +hornby +horne +horned +hornedness +hornell +horner +hornerah +hornersville +hornet +hornets +hornety +horney +hornfair +hornfels +hornfish +hornful +horngeld +horngshing +hornick +hornie +hornier +horniest +hornify +hornily +horniness +horning +hornish +hornist +hornito +hornitos +hornlake +hornless +hornlessness +hornlet +hornlike +hornmad +hornos +hornotine +hornpipe +hornpipes +hornplant +horns +hornsby +hornsdale +hornsman +hornstay +hornstone +hornswoggle +hornswoggled +hornthumb +horntip +horntown +hornung +hornwood +hornwork +hornworm +horny +hornyhanded +hornyhead +horo +horograph +horographer +horography +horohoro +horokaka +horologe +horologer +horologes +horologic +horological +horologies +horologist +horologists +horologium +horologue +horom +horometrical +horometry +horon +horonaim +horonite +horopito +horopter +horopteric +horoptery +hororo +horoscopal +horoscoper +horoscopes +horoscopic +horoscopical +horoscopist +horoscopy +horoshavin +horosho +horouta +horowhenua +horowitz +horpa +horr +horra +horray +horrendous +horrendously +horrent +horrescent +horreum +horribility +horrible +horribleness +horribles +horribly +horrid +horridge +horridity +horridly +horridness +horrific +horrifically +horrified +horrifies +horrify +horrifying +horrigan +horripilant +horripilate +horrisonant +horrisonous +horrlick +horrocks +horror +horrorful +horrorish +horrorist +horrorize +horrormonger +horrorous +horrors +horrorsome +hors +horse +horseback +horsebacker +horseboy +horsebranch +horsebreaker +horsecar +horsecave +horsecloth +horsecraft +horsecreek +horsed +horseface +horsefair +horsefettler +horsefight +horsefish +horseflies +horsefoot +horsegate +horsehaired +horsehead +horseheads +horseherd +horsehide +horsehides +horsehood +horsehoof +horsehoofs +horsejockey +horsekeeper +horselaugh +horselaugher +horselaughs +horseleach +horseleech +horseless +horselet +horselets +horseley +horselike +horseload +horselords +horseman +horsemanship +horsemen +horsemint +horsemonger +horsepen +horseplay +horseplayer +horseplayers +horseplayful +horsepond +horsepowers +horsepox +horser +horseradish +horses +horseshit +horseshoer +horseshoers +horseshoes +horsetail +horsetails +horsetongue +horsetown +horsetree +horseway +horseweed +horsewhip +horsewhipped +horsewhipper +horsewhips +horsewood +horsey +horsfall +horsfield +horsford +horsfordite +horsham +horsie +horsier +horsiest +horsify +horsily +horsiness +horsing +horsley +horsrik +horst +horstman +horsy +horsyism +horta +hortation +hortative +hortatively +hortator +hortatorily +hortatory +hortense +hortensia +hortensial +hortensian +horther +hortite +horton +hortono +hortonolite +hortonville +hortor +hortulan +horu +horudahua +horunahua +horuru +horus +horvat +horvath +horvatian +horvitz +horwitz +horwood +hory +hosackia +hosah +hosang +hosanna +hosannaed +hosannah +hosannas +hoscheid +hoschton +hose +hosea +hosed +hosein +hosel +hoseless +hoselike +hoseman +hosen +hoser +hosery +hoses +hosford +hosgood +hoshaiah +hoshama +hoshangabad +hoshaphat +hoshea +hoshelle +hoshi +hoshino +hoshizora +hosier +hosieries +hosiers +hosing +hosiomartyr +hoskin +hosking +hoskins +hoskinston +hoskison +hosmer +hosneld +hosni +hosokawa +hosomatsu +hosp +hospers +hosphor +hospice +hospices +hospitable +hospitably +hospitage +hospital +hospitalary +hospitaler +hospitalism +hospitality +hospitalize +hospitalized +hospitalizes +hospitals +hospitant +hospitate +hospitation +hospitator +hospitious +hospitium +hospitize +hospitols +hospodar +hospodariat +hospodariate +hoss +hossein +hosseini +hossere +hosston +host +hosta +hostage +hostager +hostages +hostageship +hoste +hosted +hostel +hosteled +hosteler +hostelers +hosteling +hostelries +hostelry +hostels +hostent +hoster +hostess +hostessed +hostesses +hostessing +hostetler +hostetter +hostid +hostie +hostile +hostilely +hostileness +hostiles +hostilities +hostility +hostilize +hosting +hostlers +hostlership +hostlerwife +hostless +hostly +hostname +hostnames +hostry +hosts +hostship +hotandsour +hotanyutian +hotaruko +hotbeds +hotblood +hotblooded +hotboxes +hotbrained +hotcake +hotcakes +hotch +hotchili +hotchilli +hotchkins +hotchkis +hotchkiss +hotchner +hotchpot +hotchpotch +hotchpotchly +hotcornerc +hotdog +hotdogged +hotdogging +hotdogs +hote +hotea +hoteang +hotec +hotei +hotel +hoteldom +hotelhood +hotelier +hoteliers +hotelization +hotelize +hotelkeeper +hotelless +hotellings +hotelmen +hotels +hotelward +hotevilla +hotfax +hotfix +hotfixes +hotfoot +hotfooted +hotfooting +hotfoots +hoth +hotham +hothan +hotheaded +hotheadedly +hotheads +hothearted +hotheartedly +hothir +hothouses +hoti +hotjava +hotkey +hotkeys +hotline +hotlist +hotly +hotmail +hotmetal +hotmouthed +hotness +hotnesses +hoton +hotrod +hotrodder +hotrods +hots +hotshot +hotshots +hotson +hotspot +hotspotdata +hotspots +hotsprings +hotspur +hotspurred +hotspurs +hotted +hottentot +hottentotese +hottentotic +hottentotish +hottentotism +hotter +hottery +hottest +hotting +hottish +hotton +hottonia +hottub +hotuud +hotya +hotyabi +hotyat +hotzen +hotzenplotz +hotzone +houailou +houaphan +houbara +houben +houck +houdan +houde +houdek +houdini +houe +houen +houet +hough +houghband +houghed +hougher +houghite +houghmagandy +houghton +houghtonlake +houk +houle +houli +houlihan +houlka +houlton +houma +hounce +hound +hounded +hounder +hounders +houndfish +hounding +houndish +houndlike +houndman +hounds +houndsbane +houndsberry +houndshark +houndy +houng +hounourable +hounsell +houppelande +hour +hourful +hourglass +hourglasses +houri +hourican +hourigan +houris +hourless +hourly +hours +housage +housal +housatonic +house +houseball +houseboating +houseboats +housebote +housebound +houseboy +houseboys +housebreaker +housebroke +housebug +housebuilder +housecarl +houseclean +housecleaned +housecleans +housecoat +housecoats +housecraft +housed +housedog +housedress +housefast +housefather +houseflies +housefly +houseful +housefuls +household +householder +householders +householding +householdry +households +househusband +housekeeper +housekeepers +housekeeping +housel +houseleek +houseless +houselet +houseley +houselights +houseline +houseling +housemaid +housemaiding +housemaids +housemaidy +houseman +housemann +housemartin +housemaster +housemate +housemating +housemen +houseminder +housemother +housemothers +houseowner +housepaint +houser +houseridden +houseroom +housers +houses +housesat +housesit +housesits +housesitting +housesmith +housesprings +housetop +housetops +houseward +housewarm +housewarmer +housewarming +housewear +housewifely +housewifery +housewifish +housewive +housewives +houseworker +houseworkers +housewright +housey +housing +housinge +housings +housley +housman +houssay +housseini +housten +houstin +houston +houstonia +houstoun +housty +housy +houten +houtou +houtzdale +houvari +houwara +houwelingen +houze +houzeau +hova +hovah +hovd +hovedance +hovel +hoveler +hovelling +hovels +hoven +hovenia +hover +hovercraft +hovercrafts +hovered +hoverer +hoverers +hovering +hoveringly +hoverlimo +hoverly +hoverman +hovers +hoverton +hovey +hovick +hovik +hovinga +hovland +hovongan +hovsgol +hovstad +hovukoilo +howadji +howait +howald +howard +howardcity +howardite +howardlake +howardstown +howarth +howat +howbeit +howbig +howcan +howd +howdah +howdahs +howden +howder +howdie +howdies +howe +howea +howel +howell +howells +howerd +howerton +howertons +howes +howescave +however +howff +howi +howie +howish +howitt +howitzer +howitzers +howk +howker +howkit +howl +howland +howled +howler +howlers +howlet +howlett +howley +howlin +howling +howlingly +howlings +howlite +howls +howman +howorth +hows +howsabout +howse +howso +howsoever +howson +howto +howtos +hoxeyville +hoxie +hoya +hoydenhood +hoydening +hoydenism +hoydens +hoyer +hoylake +hoyle +hoyles +hoyleton +hoyman +hoyo +hoyos +hoyt +hoyte +hoyten +hoytlakes +hoytville +hoyveld +hozeltine +hozhu +hozo +hozosezo +hpack +hpalone +hpar +hpcsos +hpcvaaz +hpcvbbs +hpfs +hpfstool +hpindlo +hplabs +hpon +hpone +hprevinst +hpserv +hpsux +hpungsi +hpux +hqaaa +hqafosp +hqafsc +hqda +hqdescom +hqhsd +hqmac +hqprod +hqtac +hraf +hrangkhol +hrdata +href +hren +hrenom +hrenovo +hrenyk +hrimfaxi +hrinfo +hring +hrlak +hrlbrtfd +hroi +hroy +hrozen +hrpp +hrubik +hrundi +hrushowy +hrusinsky +hruska +hrutki +hrvatin +hrvatska +hrway +hsai +hsaio +hsan +hscfvax +hsch +hscsyr +hsemtang +hsenhsum +hsergeaas +hses +hsfs +hshieh +hsia +hsiae +hsiang +hsianghsi +hsiangtan +hsiao +hsieh +hsien +hsienyu +hsifan +hsilin +hsin +hsinchu +hsing +hsingan +hsinghua +hsingning +hsiukulan +hsiung +hsombathelyi +hsphuc +hsrp +hstbme +hstop +hsts +hsuan +hsuch +hsueh +hsun +htawgaw +htest +htin +htiselwang +htmasc +html +htmled +htmlhelp +htmlimage +htmlnote +htmlpad +htmlpics +htmltool +htocrack +http +httpd +https +huac +huaca +huacapishtea +huacarpana +huachi +huachieh +huachipaeri +huachipaire +huachuca +huachucacity +huaco +huacrachuco +huadjai +huailas +huajillo +huajuapan +huajun +hualan +hualien +huallaga +huallanca +hualngo +hualong +hualoy +hualpai +huamali +huamalies +huambisa +huambiza +huambo +huamelula +huamuchil +huamue +huan +huana +huanacapo +huanca +huancavelica +huancaybamba +huancayo +huang +huangpu +huantajayite +huanuco +huaorani +huaowani +huapollo +huarache +huaraches +huarayo +huaraz +huari +huariaca +huariapano +huarizo +huasaga +huaspuc +huastec +huasteca +huastecan +huasteco +huaulu +huautla +huave +huavean +huayabamba +huayang +huaylas +huaylla +huayu +huayuan +huba +hubacher +hubal +hubard +hubb +hubba +hubbard +hubbardlake +hubbardston +hubbell +hubber +hubbert +hubbie +hubbies +hubbins +hubbite +hubble +hubbled +hubbly +hubbord +hubbub +hubbuboo +hubbubs +hubcap +hubcaps +hube +hubei +huber +huberizing +huberman +hubers +hubert +huberta +hubertus +huberty +hubicka +hubie +hubley +hubmaker +hubmaking +hubner +hubnerite +huboi +hubricht +hubris +hubrises +hubristic +hubroute +hubs +hubscher +hubschmidt +hubsei +hubshi +huccatoon +huchen +huchnom +hucho +huck +huckaback +huckabee +huckaby +huckie +huckle +huckleback +hucklebacked +hucklebone +huckmuck +hucko +hucks +hucksterage +huckstered +hucksterer +hucksteress +huckstering +hucksterize +hucksters +huckstery +hucsc +hudai +hudak +hudaydah +hudd +huddesen +huddle +huddled +huddledom +huddlement +huddler +huddlers +huddles +huddleston +huddling +huddlingly +huddock +huddroun +huddup +huddy +hude +hudec +hudecek +hudepohl +hudgins +hudibras +hudibrastic +hudig +hudkins +hudson +hudsonfalls +hudsonia +hudsonian +hudsonite +hudsonpath +hudsonville +hudspeth +hudspith +hudu +hudud +hudy +hudyma +hudziee +huebing +huebling +huebner +hueck +hueful +huegler +huehn +huehuetla +huehuetonoc +huei +hueless +huelessness +huelings +huelsman +huelva +huem +huenemann +huenna +huer +huerequeque +huerta +hues +huesler +huestis +hueston +huet +huether +huey +hueysville +hueyu +hufana +huff +huffaker +huffed +huffier +huffiest +huffily +huffiness +huffing +huffingly +huffish +huffishly +huffishness +huffle +huffler +huffman +huffs +huffy +huga +huge +hugeirat +hugel +hugelia +hugelist +hugelite +hugely +hugener +hugeness +hugeous +hugeously +hugeousness +huger +huges +hugest +huggable +hugged +hugger +huggermugger +huggers +huggies +huggin +hugging +huggingly +huggins +huggle +hugh +hughes +hugheston +hughesville +hughey +hughie +hughoc +hughs +hughson +hughsonville +hugin +hugneny +hugo +hugoesque +hugolino +hugon +hugoniot +hugoton +hugs +hugsome +huguenot +huguenotic +huguenotism +huguenots +hugueny +hugues +huguette +huguin +hugutte +huhelia +huhepl +huhn +huhngg +huia +huib +huichol +huida +huidobro +huihui +huijbregts +huila +huilliche +huiny +huipil +huiraatira +huis +huisache +huiscoyol +huishui +huissier +huista +huit +huitain +huitema +huitepec +huitiupan +huitoto +huitotoan +huitoyacu +huitt +huitze +huixta +huixtan +huixteco +huizapula +huizhou +huizu +huje +huji +huka +hukam +hukbalahap +huke +hukkok +hukm +hukok +huku +hukwe +hula +hulaliu +hulas +hulbert +hulce +hulda +huldah +huldee +hulen +hulett +hulette +hulewicz +hulgar +huli +hulie +huliganga +hulihulidana +hulin +hulk +hulka +hulkage +hulked +hulkier +hulking +hulks +hulky +hull +hullabaloo +hullam +hullana +hulled +huller +hullers +hulligan +hulling +hullinger +hullman +hullo +hulloaed +hulloaing +hullock +hulloed +hulloes +hulloing +hulloo +hullos +hulls +hullscove +hulme +hulo +hulon +hulontalo +hulot +hulotheism +hulse +hulsean +hulsite +hulssier +hulst +hulster +hultberg +hulu +huluf +hulunbuyr +hulung +hulver +hulverhead +hulverheaded +hulvershorn +hulya +hulzen +huma +humacao +humai +human +humane +humanely +humaneness +humaner +humanest +humanfactors +humanhood +humanics +humanid +humaniform +humanify +humanish +humanism +humanisms +humanist +humanistic +humanistical +humanists +humanitarian +humanitary +humanitian +humanities +humanity +humanization +humanize +humanized +humanizer +humanizers +humanizes +humanizing +humankind +humanlevel +humanlike +humanly +humann +humanness +humanoids +humans +humanscale +humansville +humara +humarock +humason +humate +humba +humbe +humberpc +humberside +humbert +humberto +humbird +humble +humblebee +humbled +humbledst +humbleness +humbler +humblers +humbles +humblest +humbleth +humblie +humbling +humblingly +humbly +humbo +humboldt +humboldtine +humboldtite +humbolt +humbu +humbug +humbugable +humbugged +humbugger +humbuggers +humbuggery +humbugging +humbuggism +humbugs +humbuzz +humdinger +humdingers +humdrum +humdrummish +humdrums +humdudgeon +hume +humean +humect +humectant +humectate +humectation +humective +humeme +humene +humenik +humenuk +humeral +humeri +humermeri +humerodorsal +humeroradial +humeroulnar +humes +humeston +humet +humetty +humfey +humffray +humhum +humic +humicubation +humid +humidate +humidfied +humidfies +humidified +humidifier +humidifiers +humidifies +humidifying +humidities +humidity +humidly +humidness +humidor +humidors +humific +humification +humifuse +humify +humiliant +humiliate +humiliated +humiliates +humiliating +humiliation +humiliations +humiliative +humiliator +humiliatory +humilific +humilities +humilitude +humility +humin +humiria +humiriaceae +humiriaceous +humism +humist +humiston +humistratous +humite +humjibere +humla +humlie +humma +hummable +hummed +hummel +hummeler +hummelstown +hummelswharf +hummer +hummers +hummerston +hummie +humming +hummingbird +hummingbirds +hummocks +hummocky +humnoke +humogu +humongous +humono +humor +humoral +humoralism +humoralist +humoralistic +humored +humorer +humorers +humoresque +humoresquely +humorful +humorific +humoring +humorism +humorist +humoristic +humoristical +humorists +humorize +humorless +humorlessly +humorology +humorous +humorously +humorousness +humorproof +humors +humorsome +humorsomely +humour +humoured +humourful +humouring +humours +humous +hump +humpbacked +humpbacks +humped +humpert +humph +humphed +humphery +humphing +humphrey +humphreys +humphries +humphs +humpier +humpiness +humping +humpless +humps +humptulips +humpty +humpy +hums +humstrum +humtah +humu +humulene +humulone +humulus +humungous +humungus +humurana +humuses +humuslike +huna +hunac +hunain +hunan +hunanese +hunchakist +hunchback +hunchbacked +hunchbacks +hunched +hunchedover +hunches +hunchet +hunching +hunchy +huncke +hund +hundar +hunde +hundi +hundley +hundman +hundred +hundredal +hundredary +hundreder +hundredfold +hundredman +hundredpenny +hundreds +hundredth +hundredths +hundredwork +hundreth +hundrieser +hune +huneault +hunedoara +huner +hung +hungaan +hungana +hunganna +hungaria +hungarian +hungarians +hungarite +hungary +hungduan +hunger +hungerbitten +hungered +hungerer +hungerford +hungering +hungeringly +hungerless +hungerly +hungerproof +hungers +hungerweed +hungho +hungle +hungnam +hungnes +hungover +hungquoc +hungred +hungrier +hungriest +hungrify +hungrily +hungriness +hungry +hungu +hungus +hungwe +hungyip +hunh +hunike +huning +hunjara +hunk +hunker +hunkered +hunkering +hunkerism +hunkerous +hunkers +hunkies +hunkle +hunkpapa +hunks +hunky +hunlike +hunlockcreek +hunneker +hunnewell +hunnia +hunnian +hunnic +hunnican +hunnicutt +hunnish +hunnishness +hunniwell +hunold +huns +hunsa +hunsacker +hunsberger +hunsecker +hunstein +hunstsman +hunsucker +hunt +huntable +hunte +hunted +huntedly +hunter +hunterian +hunterlike +hunters +huntersville +huntertown +huntest +hunteth +huntilite +hunting +huntingburg +huntingdon +huntings +huntington +huntingtown +huntjara +huntland +huntley +huntly +huntress +huntresses +hunts +huntsberger +huntsburg +huntsman +huntsmanship +huntsmen +huntsville +huntswoman +huntz +huny +hunyadi +hunyak +hunza +hunzanagir +hunzib +hunziker +huon +huong +huor +huorns +huot +hupa +hupaithric +hupda +hupde +hupe +huper +hupham +huphamites +hupla +hupp +huppah +huppert +huppim +hups +hura +hurai +hurakawa +hural +huram +hurban +hurbert +hurcheon +hurd +hurdies +hurdis +hurdland +hurdled +hurdleman +hurdlemills +hurdler +hurdlers +hurdles +hurdlewise +hurdling +hurds +hurdsfield +hurdwell +hurdygurdy +hure +hureau +hureaulite +hureek +hurepelo +huret +hurgila +huri +hurin +hurk +hurkle +hurkos +hurl +hurlbarrow +hurlburt +hurlbut +hurled +hurler +hurlers +hurleth +hurley +hurleyhouse +hurleyville +hurlic +hurling +hurlings +hurlock +hurlothrumbo +hurls +hurly +hurlyburly +hurman +huro +hurok +huron +huronian +hurr +hurrahed +hurrahing +hurrahs +hurratio +hurrayed +hurraying +hurrays +hurri +hurrian +hurricane +hurricanes +hurricanize +hurricano +hurridly +hurried +hurriedly +hurriedness +hurrier +hurriers +hurries +hurrisome +hurrock +hurroo +hurroosh +hurry +hurrying +hurryingly +hurryproof +hurryskurry +hursinghar +hurst +hurstwood +hurt +hurtable +hurtado +hurteau +hurted +hurter +hurters +hurtful +hurtfully +hurtfulness +hurting +hurtingest +hurtleberry +hurtled +hurtles +hurtless +hurtlessly +hurtlessness +hurtling +hurtlingly +hurts +hurtsboro +hurtsome +hurtubise +hurunui +hurutshe +hurwitz +hurza +hurzo +husain +husak +husan +husarewych +husavik +husayn +husaynun +husband +husbandable +husbandage +husbanded +husbander +husbandfield +husbandhood +husbanding +husbandland +husbandless +husbandlike +husbandly +husbandman +husbandmen +husbandress +husbandry +husbands +husbandship +huschens +huse +husebo +huseby +huseni +huseyin +hushable +hushaby +hushah +hushai +husham +hushathite +hushcloth +hushed +hushedly +husheen +hushel +husher +hushes +hushful +hushfully +hushim +hushing +hushingly +hushion +husho +husk +huskanaw +husked +huskened +husker +huskers +huskier +huskies +huskiest +huskily +huskiness +husking +huskings +huskova +huskroot +husks +huskwort +husky +husmann +husnik +huso +huson +huspil +huss +hussain +hussainmiya +hussan +hussar +hussars +hussein +hussels +hussenot +husser +hussey +hussies +hussif +hussing +hussite +hussitism +hussy +hussydom +hussyness +hustat +huster +husting +hustings +hustisford +hustle +hustlecap +hustled +hustlement +hustler +hustlers +hustles +hustling +hustontown +hustonville +husum +huszar +huszarik +hutched +hutcher +hutcherson +hutches +hutcheson +hutchet +hutchie +hutching +hutchings +hutchins +hutchinson +hutchison +huterian +huthold +hutholder +hutia +hutkeeper +hutlet +hutment +hutments +hutoryansky +huts +hutson +hutsonville +hutsulian +hutt +huttar +hutte +hutted +hutten +hutter +hutterian +hutterians +hutterite +hutterites +huttig +hutting +hutto +hutton +huttonian +huttonianism +huttoning +huttonsville +huttonweed +hutu +hutukhtu +hutz +hutzpa +hutzpah +hutzpahs +hutzpas +huub +huuliem +huun +huva +huvelyk +huxford +huxholli +huxleian +huxley +huxtask +huya +huyen +huygenian +huyine +huynh +huyni +huyniu +huynu +huynya +huyton +huzhu +huzmann +huzoor +huzurbazar +huzvaresh +huzz +huzza +huzzab +huzzaed +huzzahed +huzzahing +huzzahs +huzzaing +huzzard +huzzas +hvatalo +hveen +hvezda +hvilya +hvnsdcf +hvordan +hvostov +hvscolor +hwana +hwane +hwang +hwanghaedo +hwaso +hwaye +hweda +hwei +hwela +hwesa +hwethom +hwindja +hwla +hwnd +hwona +hwong +hyabe +hyacinth +hyacintha +hyacinthe +hyacinthia +hyacinthian +hyacinthie +hyacinthine +hyacinths +hyacinthus +hyaena +hyaenanche +hyaenarctos +hyaenas +hyaenic +hyaenidae +hyaenodon +hyaenodont +hyah +hyakume +hyalescence +hyalescent +hyalinize +hyalinosis +hyalite +hyalitis +hyalobasalt +hyalodacite +hyalogen +hyalograph +hyalographer +hyalography +hyaloid +hyaloiditis +hyalolith +hyalomelan +hyalomucoid +hyalonema +hyalophagia +hyalophane +hyalophyre +hyalopilitic +hyaloplasm +hyaloplasma +hyaloplasmic +hyalopsite +hyalopterous +hyalospongia +hyalotekite +hyalotype +hyaluronic +hyam +hyampom +hyams +hyan +hyanbian +hyang +hyannisport +hyao +hyapatia +hyatad +hyatt +hyattsville +hyattville +hybanthus +hybla +hyblaea +hyblaean +hyblan +hybodont +hybodus +hybosis +hybrid +hybridal +hybridation +hybridism +hybridist +hybridity +hybridizable +hybridize +hybridized +hybridizer +hybridizers +hybridizes +hybridizing +hybridous +hybrids +hybris +hydantoate +hydantoic +hydantoin +hydarnes +hydathode +hydatid +hydatidiform +hydatidinous +hydatidocele +hydatiform +hydatigenous +hydatina +hydatogenic +hydatogenous +hydatoid +hydatoscopy +hyde +hyden +hydepark +hyder +hyderabad +hydes +hydesville +hydetown +hydeville +hydia +hydnaceae +hydnaceous +hydnocarpate +hydnocarpic +hydnocarpus +hydnoid +hydnora +hydnoraceae +hydnoraceous +hydnum +hydra +hydracetin +hydrachna +hydrachnid +hydrachnidae +hydracid +hydracoral +hydracrylate +hydracrylic +hydractinia +hydractinian +hydradephaga +hydrae +hydragogue +hydragogy +hydramine +hydramnion +hydramnios +hydrangeas +hydrant +hydranth +hydrants +hydrarch +hydrargyrate +hydrargyria +hydrargyric +hydrargyrism +hydrargyrum +hydrarthrus +hydras +hydrastine +hydrastis +hydrated +hydrates +hydrating +hydration +hydrations +hydrator +hydrators +hydratropic +hydraucone +hydraulic +hydraulician +hydraulicity +hydraulicked +hydraulicon +hydraulics +hydraulist +hydraulus +hydrazide +hydrazidine +hydrazine +hydrazino +hydrazo +hydrazoate +hydrazoic +hydrazone +hydrazyl +hydremia +hydremic +hydria +hydriatric +hydriatrist +hydriatry +hydric +hydrically +hydrid +hydrides +hydriform +hydrindene +hydriodate +hydriodic +hydriodide +hydriotaphia +hydriote +hydroa +hydroadipsia +hydroaeric +hydrobates +hydrobatidae +hydrobenzoin +hydrobiology +hydrobiosis +hydrobiplane +hydrobomb +hydrobromate +hydrobromic +hydrobromide +hydrocarbide +hydrocarbons +hydrocardia +hydrocauline +hydrocaulus +hydrocele +hydrocephali +hydrocephaly +hydroceramic +hydrocharis +hydrochoerus +hydrocladium +hydroclastic +hydrocleis +hydroclimate +hydrocoele +hydroconion +hydrocores +hydrocorisae +hydrocorisan +hydrocotyle +hydrocyanate +hydrocyanic +hydrocyanide +hydrocycle +hydrocyclic +hydrocyclist +hydrocyon +hydrocyst +hydrocystic +hydrodamalis +hydrodictyon +hydrodrome +hydrodromica +hydroextract +hydrofluate +hydrofluorid +hydrofoil +hydrofoils +hydroforming +hydrofuge +hydrogel +hydrogen +hydrogenase +hydrogenated +hydrogenates +hydrogenator +hydrogenic +hydrogenide +hydrogenium +hydrogenize +hydrogenous +hydrogens +hydrogeology +hydroglider +hydrognosy +hydrogode +hydrograph +hydrographer +hydrographic +hydrography +hydrohalide +hydroid +hydroida +hydroidea +hydroidean +hydroiodic +hydrokinetic +hydrol +hydrolase +hydrolatry +hydrolea +hydroleaceae +hydrolize +hydrologic +hydrological +hydrologist +hydrologists +hydrolyses +hydrolyst +hydrolyte +hydrolytic +hydrolyzable +hydrolyzate +hydrolyze +hydromancer +hydromancy +hydromania +hydromaniac +hydromantic +hydromassage +hydrome +hydromedusa +hydromedusae +hydromedusan +hydromel +hydrometeor +hydrometers +hydrometra +hydrometric +hydrometrid +hydrometry +hydromica +hydromorph +hydromorphic +hydromorphy +hydromotor +hydromyelia +hydromyoma +hydromys +hydrone +hydronitric +hydronitrous +hydropath +hydropathic +hydropathist +hydropathy +hydroperiod +hydrophane +hydrophanous +hydrophid +hydrophidae +hydrophil +hydrophile +hydrophilid +hydrophilism +hydrophilite +hydrophiloid +hydrophilous +hydrophily +hydrophinae +hydrophis +hydrophobe +hydrophobist +hydrophobous +hydrophoby +hydrophoid +hydrophone +hydrophones +hydrophora +hydrophoran +hydrophore +hydrophoria +hydrophorous +hydrophyll +hydrophyllum +hydrophyte +hydrophytic +hydrophytism +hydrophyton +hydrophytous +hydropic +hydropical +hydropically +hydroplane +hydroplanes +hydroplanula +hydropolyp +hydroponic +hydroponics +hydroponist +hydropot +hydropotes +hydropower +hydrops +hydropsy +hydroptic +hydropult +hydropultic +hydroquinine +hydroquinol +hydroquinone +hydrorachis +hydrorhiza +hydrorhizal +hydrorrhea +hydrorrhoea +hydrorubber +hydros +hydrosalpinx +hydrosalt +hydroscope +hydroscopic +hydroscopist +hydroselenic +hydrosilicon +hydrosol +hydrosomal +hydrosome +hydrosorbic +hydrospheres +hydrospire +hydrospiric +hydrostat +hydrostatic +hydrostatics +hydrostome +hydrotactic +hydrotalcite +hydrotaxis +hydrotechnic +hydrotechny +hydroterpene +hydrotheca +hydrothecal +hydrotherapy +hydrothorax +hydrotic +hydrotical +hydrotimeter +hydrotimetry +hydrotomy +hydrotropic +hydrotropism +hydroturbine +hydrotype +hydrovane +hydroxamic +hydroxamino +hydroxides +hydroximic +hydroxylic +hydroxylize +hydrozincite +hydrozoa +hydrozoal +hydrozoan +hydrozoic +hydrozoon +hydrula +hydruntine +hydrurus +hydrus +hydurilate +hydurilic +hyemal +hyena +hyenadog +hyenaman +hyenanchin +hyenas +hyenic +hyeniform +hyenine +hyenoid +hyepa +hyer +hyers +hyetal +hyetograph +hyetographic +hyetography +hyetological +hyetology +hyetometer +hygeia +hygeian +hygeiolatry +hygeist +hygeistic +hygeology +hygiantic +hygiantics +hygiastic +hygiastics +hygiea +hygieist +hygieists +hygienal +hygiene +hygienes +hygienic +hygienical +hygienically +hygienics +hygienist +hygienists +hygienize +hygiologist +hygiology +hygre +hygric +hygrine +hygrodeik +hygrograph +hygrology +hygroma +hygromatous +hygrometers +hygrometric +hygrometries +hygrometry +hygrophanous +hygrophilous +hygrophobia +hygrophyte +hygrophytic +hygroplasm +hygroplasma +hygroscope +hygroscopy +hygrostat +hygrostatics +hygrostomia +hygrothermal +hyil +hyilhawul +hyinu +hyinya +hyjek +hyke +hyla +hylactic +hylactism +hylan +hyland +hylands +hylarchic +hylarchical +hylarides +hylda +hyle +hyleg +hylegiacal +hylic +hylicism +hylicist +hylidae +hylids +hylism +hylist +hyllest +hyllus +hylobates +hylobatian +hylobatic +hylobatine +hylocereus +hylocichla +hylocomium +hylodes +hylogenesis +hylogeny +hyloid +hylology +hylomorphic +hylomorphism +hylomorphist +hylomorphous +hylomys +hylopathism +hylopathist +hylopathy +hylophagous +hylotheism +hylotheist +hylotheistic +hylotomous +hylozoic +hylozoism +hylozoist +hylozoistic +hylton +hyman +hymenaea +hymenaeus +hymenaic +hymenal +hymeneal +hymeneally +hymeneals +hymenean +hymenial +hymenic +hymenicolar +hymeniferous +hymeniophore +hymenium +hymenocallis +hymenochaete +hymenogaster +hymenogeny +hymenoid +hymenolepis +hymenomycete +hymenophore +hymenophorum +hymenopter +hymenoptera +hymenopteran +hymenopteron +hymenotomy +hymens +hymer +hymera +hymettian +hymettic +hymie +hymn +hymnals +hymnaries +hymnarium +hymnary +hymnbook +hymnbooks +hymned +hymner +hymnic +hymning +hymnist +hymnists +hymnless +hymnlike +hymnode +hymnodical +hymnodies +hymnodist +hymnody +hymnographer +hymnography +hymnologic +hymnological +hymnologist +hymnology +hymns +hymnwise +hynda +hynde +hyndman +hyne +hynek +hynes +hynkel +hyobranchial +hyocholalic +hyocholic +hyoglossal +hyoglossi +hyoglossus +hyogo +hyoid +hyoidal +hyoidan +hyoideal +hyoidean +hyoides +hyolithes +hyolithid +hyolithidae +hyolithoid +hyomandibula +hyomental +hyon +hyongmuk +hyoplastral +hyoplastron +hyoron +hyoscapular +hyoscine +hyoscyamine +hyoscyamus +hyosternal +hyosternum +hyostylic +hyostyly +hyothere +hyotherium +hyothyreoid +hyothyroid +hypabyssal +hypaethral +hypaethron +hypaethros +hypaethrum +hypalgesia +hypalgia +hypalgic +hypallactic +hypallage +hypanthial +hypanthium +hypantrum +hypapante +hypapophysis +hyparterial +hypaspist +hypate +hypatia +hypaton +hypaxial +hype +hyped +hypenantron +hyper +hyperabelian +hyperaccess +hyperacid +hyperacidity +hyperaction +hyperactive +hyperacuity +hyperacusia +hyperacusis +hyperacute +hyperaeolism +hyperalgebra +hyperalgesia +hyperalgesic +hyperalgesis +hyperalgetic +hyperanarchy +hyperaphia +hyperaphic +hyperbaric +hyperbatic +hyperbaton +hyperbolae +hyperbolaeon +hyperbolas +hyperbole +hyperboles +hyperbolic +hyperbolical +hyperbolicly +hyperbolism +hyperbolize +hyperborea +hyperboreal +hyperborean +hyperbrutal +hyperbulia +hypercam +hypercard +hypercarnal +hypercenosis +hyperchloric +hypercholia +hyperclimax +hypercomplex +hypercone +hypercorrect +hypercosmic +hypercritic +hypercube +hypercubic +hypercycle +hyperdactyl +hyperdactyly +hyperdeify +hyperdisk +hyperditone +hyperdrive +hyperdulia +hyperdulic +hyperdulical +hyperelegant +hyperemesis +hyperemetic +hyperemia +hyperemic +hyperessence +hyperethical +hyperextend +hyperfine +hyperflexion +hyperfocal +hypergamous +hypergamy +hypergenesis +hypergenetic +hypergeusia +hypergeustia +hypergoddess +hypergol +hypergolic +hypergon +hyperhedonia +hypericaceae +hypericales +hypericin +hypericism +hypericum +hyperimmune +hyperinosis +hyperinotic +hyperion +hyperite +hyperkinesia +hyperkinesis +hyperkinetic +hyperlinks +hyperlipemia +hyperlogical +hypermagical +hypermake +hypermarker +hypermeter +hypermetric +hypermetron +hypermetrope +hypermetropy +hypermnesia +hypermnesic +hypermnesis +hypermnestic +hypermodern +hypermodest +hypermoral +hypermorph +hypermotile +hypernatural +hyperneuria +hypernic +hypernomian +hypernomic +hypernormal +hypernote +hypernotion +hypernotions +hyperoartia +hyperoartian +hyperons +hyperoodon +hyperoon +hyperope +hyperopia +hyperopic +hyperorganic +hyperosmia +hyperosmic +hyperostosis +hyperostotic +hyperothodox +hyperotreta +hyperotretan +hyperotreti +hyperoxide +hyperpencil +hyperper +hyperphoria +hyperphoric +hyperphysics +hyperpiesia +hyperpiesis +hyperpietic +hyperpietist +hyperplane +hyperplanes +hyperplasia +hyperplasic +hyperplastic +hyperploid +hyperploidy +hyperpnea +hyperpnoea +hyperprism +hyperpure +hyperpurist +hyperpyramid +hyperpyretic +hyperpyrexia +hyperquadric +hyperram +hyperrealize +hypersaintly +hyperscreen +hypersensual +hypersexual +hypersnap +hypersolid +hypersomnia +hypersonic +hyperspace +hyperspatial +hypersphere +hypersplenia +hypersthene +hypersthenia +hypersthenic +hyperstoic +hypersuite +hypersurface +hypersystole +hypertelic +hypertely +hypertense +hypertensin +hypertension +hypertensive +hypertext +hyperthermal +hyperthermia +hyperthermic +hyperthermy +hyperthesis +hyperthetic +hyperthyroid +hypertonia +hypertonic +hypertonus +hypertorrid +hypertoxic +hypertrophic +hypertrophy +hypertropia +hypertype +hypertypic +hypertypical +hyperuresis +hypervolume +hyperware +hyperwin +hyperwire +hyperwrought +hypes +hypesthesia +hypesthesic +hypethral +hyph +hypha +hyphaene +hyphaeresis +hyphal +hyphantria +hyphedonia +hyphema +hyphenated +hyphenates +hyphenating +hyphenation +hyphenations +hyphened +hyphenic +hyphening +hyphenism +hyphenize +hyphenless +hyphens +hypho +hyphodrome +hyphomycete +hyphomycetes +hyphomycetic +hyphomycosis +hyping +hypinosis +hypinotic +hypnaceae +hypnaceous +hypnagogic +hypnesthesis +hypnesthetic +hypnic +hypnobate +hypnocyst +hypnody +hypnoetic +hypnogenesis +hypnogenetic +hypnogogic +hypnoice +hypnoid +hypnoidal +hypnoidize +hypnologic +hypnological +hypnologist +hypnology +hypnone +hypnophobia +hypnophobias +hypnophobic +hypnophoby +hypnopompic +hypnos +hypnoses +hypnosis +hypnosperm +hypnospore +hypnosporic +hypnotherapy +hypnotic +hypnotically +hypnotics +hypnotism +hypnotist +hypnotistic +hypnotists +hypnotizable +hypnotize +hypnotized +hypnotizer +hypnotizes +hypnotizing +hypnotoid +hypnotoxin +hypnum +hypo +hypoacid +hypoacidity +hypoactivity +hypoadenia +hypoadrenia +hypoaeolian +hypoalkaline +hypoazoturia +hypobasal +hypobenthos +hypoblast +hypoblastic +hypobole +hypobromite +hypobromous +hypobulia +hypobulic +hypocalcemia +hypocarp +hypocarpium +hypocathexis +hypocaust +hypocenter +hypocenters +hypocentrum +hypocephalus +hypochaeris +hypochil +hypochilium +hypochloric +hypochnaceae +hypochnose +hypochnus +hypochondria +hypochondry +hypochordal +hypochromia +hypochrosis +hypochylia +hypocist +hypocleidian +hypocleidium +hypocoelom +hypocondylar +hypocone +hypoconid +hypoconule +hypoconulid +hypocoracoid +hypocorism +hypocoristic +hypocotyl +hypocotyleal +hypocotylous +hypocrater +hypocreaceae +hypocreales +hypocrisies +hypocrisis +hypocrisy +hypocrital +hypocrite +hypocrites +hypocritical +hypocrize +hypocytosis +hypodactylum +hypoderm +hypoderma +hypodermal +hypodermatic +hypodermella +hypodermic +hypodermics +hypodermis +hypodermosis +hypodermous +hypodiapason +hypodiapente +hypodiastole +hypodicrotic +hypoditone +hypodorian +hypodynamia +hypodynamic +hypoed +hypoentropy +hypoergic +hypoeutectic +hypofunction +hypogastric +hypogastrium +hypogeal +hypogean +hypogee +hypogeic +hypogeiody +hypogene +hypogenesis +hypogenetic +hypogenic +hypogenous +hypogeous +hypogeum +hypogeusia +hypoglobulia +hypoglossal +hypoglossus +hypoglottis +hypoglycemia +hypoglycemic +hypognathism +hypognathous +hypogonation +hypogynic +hypogynium +hypogynous +hypogyny +hypohalous +hypohemia +hypohidrosis +hypohippus +hypohyal +hypohyaline +hypoid +hypoing +hypoiodite +hypoiodous +hypoionian +hypoischium +hypoisotonic +hypokinesia +hypokinesis +hypokinetic +hypolimnion +hypolite +hypolocrian +hypolydian +hypomania +hypomanic +hypomeral +hypomere +hypomeron +hypometropia +hypomnematic +hypomnesis +hypomochlion +hypomorph +hypomotility +hypomyotonia +hyponastic +hyponasty +hyponeuria +hyponitric +hyponitrite +hyponitrous +hyponoetic +hyponoia +hyponome +hyponomic +hyponychial +hyponychium +hyponym +hyponymic +hyponymous +hypoparia +hypopepsia +hypopepsinia +hypopepsy +hypopetalous +hypopetaly +hypophamin +hypophamine +hypophare +hypopharynx +hypophloeous +hypophonic +hypophonous +hypophora +hypophoria +hypophrenia +hypophrenic +hypophrygian +hypophyge +hypophyll +hypophyllium +hypophyllous +hypophyllum +hypophyse +hypophysial +hypophysical +hypophysics +hypophysis +hypopial +hypopitys +hypoplankton +hypoplasia +hypoplastic +hypoplastral +hypoplastron +hypoplasty +hypoplasy +hypoploid +hypoploidy +hypopodium +hypopraxia +hypoprosexia +hypopteral +hypopteron +hypoptilar +hypoptilum +hypoptosis +hypoptyalism +hypopus +hypopygial +hypopygidium +hypopygium +hypopyon +hyporadial +hyporadiolus +hyporadius +hyporchema +hyporcheme +hyporchesis +hyporhachis +hyporhined +hyporit +hypos +hyposcenium +hyposcleral +hyposcope +hyposkeletal +hyposmia +hypospadiac +hypospadias +hyposphene +hypospray +hypostase +hypostasis +hypostasize +hypostasy +hypostatic +hypostatical +hypostatize +hyposternal +hyposternum +hyposthenia +hyposthenic +hypostigma +hypostilbite +hypostoma +hypostomata +hypostomatic +hypostome +hypostomial +hypostomides +hypostomous +hypostrophe +hypostyle +hypostypsis +hypostyptic +hyposulphite +hyposynaphe +hyposynergia +hyposystole +hypotactic +hypotarsal +hypotarsus +hypotaxia +hypotaxic +hypotaxis +hypotension +hypotensive +hypotensor +hypotenusal +hypotenuses +hypothalamic +hypothalline +hypothallus +hypothec +hypotheca +hypothecal +hypothecary +hypothecate +hypothecated +hypothecates +hypothecator +hypothecial +hypothecium +hypothenal +hypothenar +hypothenuse +hypotheria +hypothermal +hypothermia +hypothermic +hypothermy +hypothese +hypotheses +hypothesi +hypothesis +hypothesist +hypothesists +hypothesize +hypothesized +hypothesizer +hypothesizes +hypothetical +hypothetics +hypothetist +hypothetize +hypothetizer +hypothyroids +hypotonia +hypotonic +hypotonicity +hypotonus +hypotony +hypotoxic +hypotoxicity +hypotremata +hypotrich +hypotricha +hypotrichida +hypotrichous +hypotrochoid +hypotrophic +hypotrophies +hypotrophy +hypotympanic +hypotypic +hypotypical +hypotyposis +hypovalve +hypovanadate +hypovanadic +hypovanadous +hypoxanthic +hypoxanthine +hypoxemia +hypoxemic +hypoxia +hypoxic +hypoxis +hypoxylon +hypozeugma +hypozeuxis +hypozoa +hypozoan +hypozoic +hypped +hyppish +hypsicephaly +hypsiliform +hypsiloid +hypsiprymnus +hypsipyle +hypsistarian +hypsochrome +hypsochromic +hypsochromy +hypsodont +hypsodontism +hypsodonty +hypsographic +hypsography +hypsometer +hypsometric +hypsometrist +hypsometry +hypsophobia +hypsophonous +hypsophyll +hypsophyllar +hypsophyllum +hypural +hyraces +hyraceum +hyrachyus +hyracid +hyracidae +hyraciform +hyracina +hyracodon +hyracodont +hyracodontid +hyracoid +hyracoidea +hyracoidean +hyracothere +hyrax +hyraxes +hyrcan +hyrcanian +hyrne +hyrum +hyser +hysham +hysique +hyskja +hysler +hyslop +hyson +hysons +hyssop +hyssope +hyssops +hyssopus +hystazarin +hysteralgia +hysteralgic +hysteresial +hysteretic +hysteria +hysteriac +hysteriales +hysterias +hysterical +hysterically +hystericky +hysterics +hystericus +hysteriform +hysterioid +hysterium +hysterocele +hysterodynia +hysterogen +hysterogenic +hysterogeny +hysteroid +hysterolith +hysterology +hysterolysis +hysteromania +hysterometer +hysterometry +hysteromyoma +hysteropathy +hysteropexia +hysteropexy +hysterophore +hysterophyta +hysterophyte +hysteroscope +hysterosis +hysterotome +hysterotomy +hystriciasis +hystricid +hystricidae +hystricinae +hystricine +hystricism +hystricismus +hystricoid +hystrix +hyte +hytten +hyun +hyung +hyunshik +hywel +iaai +iacchic +iacchos +iacchus +iachimo +iacoviello +iacovo +iadb +iaea +iaeger +iafai +iago +iaibu +iain +iaka +iakin +iakovlev +ialibu +ialomita +iamalele +iamara +iamatology +iamb +iambe +iambelegus +iambi +iambically +iambics +iambist +iambize +iambographer +iambs +iambus +iambuses +iamega +iamelele +iams +iamskoy +iamsun +ianace +ianculescu +iannotti +iannozzi +iantaffi +ianthe +ianthina +ianthine +ianthinite +ianto +ianu +ianus +iapama +iapetus +iapx +iapyges +iapygian +iapygii +iaquinto +iare +iarocci +iarwain +iasi +iastate +iate +iatmul +iatp +iatraliptic +iatraliptics +iatric +iatrical +iatrochemic +iatrochemist +iatrogenic +iatrological +iatrology +iatrophysics +iauanaua +iauarete +iauga +iauiaula +iazgulem +ibaa +ibach +ibad +ibadhi +ibadi +ibadite +ibadjo +ibadoy +ibaji +ibalao +ibali +ibaloi +ibaloikarao +ibaloy +ibami +iban +ibanag +ibanagic +ibanez +ibanga +ibani +ibanic +ibapah +ibara +ibaraki +ibaram +ibaramefifa +ibarra +ibarruri +ibataan +ibatan +ibaye +ibba +ibbetson +ibbie +ibby +ibcs +ibec +ibeeke +ibembe +ibenga +ibeno +iber +iberes +iberi +iberian +iberians +iberic +iberis +iberism +iberite +iberoromance +ibeto +ibexes +ibhar +ibhubhi +ibibio +ibibioefik +ibices +ibidem +ibididae +ibidinae +ibidine +ibidium +ibie +ibilao +ibill +ibillo +ibilo +ibino +ibis +ibisbill +ibises +ibito +ibleam +iblis +iblocal +ibmais +ibmbio +ibmdos +ibmish +ibmism +ibmness +ibmpc +ibms +ibmtab +ibmtech +ibneiah +ibni +ibnijah +ibntas +iboho +iboko +ibolium +ibom +ibos +ibota +ibotsa +ibra +ibragimow +ibrahim +ibrahima +ibrahims +ibrd +ibri +ibrima +ibrite +ibsen +ibsenian +ibsenic +ibsenish +ibsenism +ibsenite +ibserver +ibubi +ibukairu +ibuki +ibukota +ibukwo +ibumi +ibundo +ibuno +ibunu +iburg +ibut +ibuya +ibwisi +ibycter +ibycus +ibzan +icaangi +icaangui +icac +icache +icacinaceae +icacinaceous +icaco +icacorea +icaen +icaiche +icao +icard +icaria +icarian +icarianism +icaros +icarus +icase +icbm +iccc +iccd +icchak +icco +iccusion +icdc +icebag +iceball +iceberg +icebergs +iceblink +iceboat +iceboats +icebone +icebound +icebows +iceboxes +icebreaker +icebreakers +icec +icecap +icecaps +icechat +icecles +icecraft +icecream +icecube +iced +icedump +iceedit +icefall +icefalls +icefields +icefish +icefloe +icefree +icegen +icehouse +icehouses +icel +icelan +iceland +icelander +icelanders +icelandian +icelandic +iceleaf +iceless +icelidae +icelike +icelocked +icem +iceman +icemen +icen +iceni +icepack +icepail +icequake +icerigger +iceroot +icerya +ices +iceside +iceskate +iceskated +iceskating +iceve +icework +icey +icezmodem +icfdpc +icfg +icftu +ichabod +ichak +ichen +icheve +ichia +ichiban +ichibemba +ichibisa +ichifipa +ichikawa +ichilala +ichilamba +ichilambya +ichimambwe +ichimionji +ichinamwanga +iching +ichipimbwe +ichira +ichiro +ichirungu +ichirungwa +ichitaabwa +ichiwanda +ichizen +ichizo +ichloka +ichneumia +ichneumoned +ichneumones +ichneumonid +ichneumonoid +ichneumous +ichneutic +ichnite +ichnographic +ichnography +ichnolite +ichnolitic +ichnological +ichnology +ichnomancy +icho +ichoglan +ichor +ichorous +ichorrhea +ichorrhemia +ichors +ichthulin +ichthulinic +ichthus +ichthyal +ichthycolla +ichthyic +ichthyism +ichthyisms +ichthyismus +ichthyized +ichthyocol +ichthyocolla +ichthyodea +ichthyodian +ichthyodont +ichthyofauna +ichthyoform +ichthyoid +ichthyoidal +ichthyoidea +ichthyol +ichthyolatry +ichthyolite +ichthyolitic +ichthyologic +ichthyology +ichthyomancy +ichthyonomy +ichthyophagi +ichthyophagy +ichthyophile +ichthyopsid +ichthyopsida +ichthyornis +ichthyosaur +ichthyosis +ichthyosism +ichthyotic +ichthyotomi +ichthyotomy +ichthyotoxin +ichu +ichun +icial +icica +icicle +icicled +icicles +icier +iciest +icily +iciness +icinesses +icing +icings +icker +ickesburg +ickier +ickiest +ickiller +iclea +icmp +icnucevm +icnucevx +icon +iconbtn +iconcs +iconctls +icondrive +iconedit +iconex +iconforge +iconia +iconian +iconical +iconify +iconism +iconium +iconmagician +iconoclastic +iconoclasts +iconodule +iconodulic +iconodulist +iconoduly +iconograph +iconographer +iconographic +iconography +iconolater +iconolatrous +iconolatry +iconological +iconologist +iconology +iconomachal +iconomachist +iconomachy +iconomania +iconomatic +iconometer +iconometric +iconometry +iconophile +iconophilism +iconophilist +iconophily +iconoplast +iconoscope +iconostas +iconostasion +iconostasis +iconotype +icons +icontool +iconv +iconvert +icosandria +icosasemic +icosian +icosteid +icosteidae +icosteine +icosteus +icotype +icqfile +icqmania +icqpacket +icrc +icsa +icsg +icsh +icsic +icsl +icst +icteric +icterical +icteridae +icterine +icteritious +icterode +icterogenic +icterogenous +icteroid +icterus +ictic +ictinus +ictonyx +ictuate +ictus +ictuses +icuatai +icylyn +icymode +idaaca +idaan +idabel +idaca +idaean +idafan +idafips +idagrove +idah +idahan +idaho +idahoan +idahoans +idahocity +idahofalls +idahonews +idahosprings +idaic +idakamenai +idakho +idalah +idalia +idalian +idalina +idaline +idalou +idamay +idamfs +idan +idanf +idanha +idant +idapi +idapl +idas +idate +idaville +idaxo +idayan +idbash +idbsu +idcf +idcheck +iddat +iddesley +iddio +iddj +iddo +idea +idead +ideaed +ideaful +ideagenous +ideal +idealess +idealised +idealism +idealisms +idealist +idealistic +idealistical +idealists +idealities +ideality +idealization +idealize +idealized +idealizer +idealizes +idealizing +idealless +ideally +idealness +idealogies +idealogue +idealogy +ideals +idealy +ideamonger +idean +idear +ideas +ideated +ideates +ideation +ideational +ideationally +ideations +ideative +ideawake +idee +idefix +ideinfo +ideist +idele +idell +idelle +idelma +idelsonia +idem +idempotency +idenburg +idenfify +idenitifiers +ident +identic +identical +identicalism +identically +identifer +identifers +identifiable +identifiably +identified +identifier +identifiers +identifies +identifiying +identify +identifying +identiny +identism +identities +identity +idents +ideo +ideogenetic +ideogenical +ideogenous +ideogeny +ideoglyph +ideogram +ideogrammic +ideograms +ideograph +ideographic +ideographs +ideography +ideokinetic +ideolatry +ideologic +ideological +ideologies +ideologist +ideologize +ideologized +ideologizing +ideology +ideomotion +ideomotor +ideoogist +ideophone +ideophonous +ideoplastia +ideoplastic +ideoplastics +ideoplasty +ideopraxist +ider +ides +idesa +idette +idgah +idiasm +idic +idicate +idigoras +idiobiology +idioblast +idioblastic +idiocies +idiocrasis +idiocrasy +idiocratic +idiocratical +idiocy +idioelectric +idiofa +idiogastra +idiogenesis +idiogenetic +idiogenous +idioglossia +idioglottic +idiogram +idiograph +idiographic +idiolalia +idiolatry +idiolect +idiologism +idiolysin +idiom +idiomatical +idiomelon +idiometer +idiomography +idiomology +idiomorphic +idiomorphism +idiomorphous +idioms +idiomuscular +idiopathetic +idiopathic +idiopathical +idiopathy +idiophanism +idiophanous +idiophone +idiophonic +idioplasm +idioplasmic +idioreflex +idioretinal +idiosepiidae +idiosepion +idiosome +idiospasm +idiospastic +idiostatic +idiosyncracy +idiot +idiotcy +idiothermous +idiothermy +idiotical +idiotically +idioticon +idiotish +idiotism +idiotisms +idiotize +idiotropian +idiotry +idiots +idiotype +idiotypic +idiotypical +idism +idist +idistic +idite +iditol +idiv +idja +idjilla +idle +idled +idledale +idleful +idleheaded +idlehood +idleman +idlement +idleness +idler +idlers +idles +idleset +idleship +idlesse +idlesses +idlest +idlety +idlewild +idleyldpark +idlib +idling +idlish +idly +idne +idnoc +idoani +idocrase +idocy +idodrugs +idofa +idoism +idoist +idoistic +idol +idola +idolaster +idolater +idolaters +idolator +idolatress +idolatresses +idolatric +idolatries +idolatrize +idolatrizer +idolatrous +idolatrously +idolatry +idolify +idolise +idolised +idoliser +idolises +idolism +idolisms +idolist +idolistic +idolization +idolize +idolized +idolizer +idolizers +idolizes +idolizing +idolmaker +idoloclast +idoloclastic +idolodulia +idololatry +idolomancy +idolomania +idolothyte +idolothytic +idolous +idols +idolum +idoma +idomaetulo +idomeneus +idon +idoneal +idoneity +idoneous +idoneousness +idong +idongiro +idoree +idorgan +idosaccharic +idose +idotea +idoteidae +idothea +idotheidae +idotism +idrialin +idrialine +idrialite +idris +idrisid +idrisite +idryl +idstrom +iduberga +idumaea +idumaean +idumea +iduna +idus +idut +iduwini +idwal +idwig +idyl +idyle +idyler +idylism +idylist +idylists +idylize +idyllian +idyllical +idyllically +idyllicism +idyllist +idyllists +idylls +idyllwild +idyls +iear +ieee +ieeesyst +iehc +iejima +ieleen +ieletski +ieln +iems +iemsi +ienewe +ientile +ieremia +ierne +ierrs +iesd +iest +iestyn +ieteeess +ietf +iever +iezzi +ifact +ifad +ifaluk +ifan +ifcico +ifconfig +ifdef +iffier +iffiest +iffiness +iffy +ifigenia +ifigi +ifill +ifint +ifkovich +ifkovitch +ifmail +ifound +ifqman +ifrane +ifreal +ifree +ifreq +ifti +ifugao +ifunubwa +ifuumu +ifyou +igabo +igal +igala +igan +igana +igara +igaraparana +igarape +igarashi +igawa +igbarra +igbena +igbira +igbiri +igbirra +igbo +igboolaoke +igboolasale +igbuduya +igdaliah +igdyr +igeal +igedde +igede +igelstromite +igembe +iges +iget +igglesden +iggy +igikiga +igikuria +igisomar +iglarsh +igle +iglesias +iglessias +iglewicz +iglodi +igloos +iglu +iglulirmiut +igmirs +igmp +igna +ignac +ignace +ignaciano +ignacio +ignacy +ignatia +ignatian +ignatianist +ignatieff +ignatius +ignatoff +ignavia +ignazio +igneoaqueous +igneous +ignescent +ignet +ignez +ignico +ignicolist +igniferous +ignified +ignifies +igniform +ignifuge +ignify +ignifying +ignigenous +ignipotent +ignipuncture +ignis +ignitability +ignitable +ignite +ignited +igniter +igniters +ignites +ignitibility +ignitible +igniting +ignition +ignitions +ignitive +ignitor +ignitors +ignitron +ignivomous +ignobility +ignoble +ignobleness +ignoblesse +ignobly +ignominies +ignominious +ignominy +ignorable +ignoramuses +ignorance +ignorant +ignorantine +ignorantism +ignorantist +ignorantly +ignorantness +ignoration +ignore +ignored +ignorement +ignorer +ignorers +ignores +ignoring +ignote +igodor +igoji +igom +igor +igora +igorot +igpon +igra +igrali +igrayne +iguambo +iguana +iguanas +iguania +iguanian +iguanians +iguanid +iguanidae +iguaniform +iguanito +iguanodon +iguanodont +iguanodontia +iguanoid +iguassu +iguchi +igueben +igumale +igumbo +igus +iguta +iguvine +igwaale +igwe +igwormany +igwuruta +igzennaian +ihadja +ihakulur +ihara +iharev +ihave +iheya +ihima +ihini +ihlat +ihleite +ihlen +ihnat +ihnen +ihney +ihniy +ihobe +ihor +ihpfs +ihram +ihre +ihrer +ihsan +ihuruana +iiasa +iida +iiii +iiiii +iiiiii +iiiiiii +iiiiiiii +iimutsu +iisalmi +iiwi +ijal +ijamsville +ijaw +ijca +ijeabarim +ijebu +ijen +ijesha +ijff +ijigbam +ijiri +ijka +ijma +ijmuiden +ijodefaka +ijoh +ijok +ijolite +ijon +ijore +ijumu +ijussite +ijuw +ikaheimo +ikaiku +ikalahan +ikale +ikalebwe +ikali +ikan +ikang +ikaranele +ikaranoke +ikari +ikaros +ikarus +ikat +ikaw +ikebana +ikebanas +ikebe +ikeda +ikega +ikegami +ikela +ikeleve +ikema +iker +ikeram +ikeramoke +ikeranile +ikesfork +ikeuchi +ikey +ikeyness +ikho +ikhtimbaev +ikhwan +ikibiri +ikibungu +ikifuliro +ikiha +ikikuria +ikiliwindi +ikinata +ikingonde +ikingurimi +ikinilamba +ikiniramba +ikinyakyusa +ikinyarwanda +ikinyikyusa +ikiribati +ikiruguru +ikisenyi +ikito +ikizanaki +ikizu +ikke +ikkesh +ikky +ikobi +ikobimena +ikokolemu +ikol +ikolu +ikom +ikoma +ikon +ikona +ikonnikov +ikons +ikor +ikot +ikota +ikoti +ikotin +ikpan +ikpesa +ikpeshe +ikpeshi +ikponu +ikposo +ikra +ikram +ikrani +ikugoraankwa +ikulu +ikumama +ikun +ikundun +ikuru +ikuta +ikwere +ikweri +ikwerre +ikwerri +ikwhan +ikwo +ikyoo +ikzizee +ilaali +ilab +ilababor +ilaga +ilah +ilahita +ilai +ilaje +ilakia +ilam +ilamba +ilammu +ilan +ilana +ilanon +ilanum +ilanun +ilao +ilario +ilarion +ilcamus +ilcho +ilcn +ilda +ildefonso +ilderim +ildiko +ildith +ilea +ileac +ileal +ileana +ileane +ilebo +iledefrance +ileectomy +ileega +ileged +ileitis +ileme +ilene +ilentungen +ileo +ileocaecal +ileocaecum +ileocolic +ileocolitis +ileocolotomy +ileon +ileostomy +ileotomy +iles +ilesha +ilesite +ileus +ilex +ilfak +ilfed +ilfpetrov +ilfracombe +ilha +ilham +ilhas +ilheus +ilia +iliacus +iliadic +iliadist +iliadize +iliads +iliahi +ilial +iliamna +ilian +ilianen +iliara +iliau +iliaura +ilic +ilicaceae +ilicaceous +ilichevsk +ilicic +ilicin +ilie +iliescu +iliev +iliff +iligan +ilija +ilijev +iliku +ilima +ilimpeya +ilindenov +iline +iling +ilinsky +iliocaudal +iliocaudalis +iliocostal +iliocostalis +iliodorsal +iliofemoral +ilioinguinal +ilioischiac +iliolumbar +ilion +iliopelvic +ilioperoneal +iliopsoas +iliopsoatic +iliopubic +iliosacral +iliosciatic +ilioscrotal +iliospinal +iliotibial +ilir +ilise +ilissus +ilit +ilium +iliwaki +iliya +iliyin +ilka +ilkane +ilkka +ilks +illa +illaborate +illadvised +illaenus +illana +illano +illanoan +illanon +illanoon +illanos +illanun +illapsable +illapse +illapsive +illaqueate +illaqueation +illassorted +illation +illative +illatively +illaudable +illaudably +illaudation +illaudatory +illbehaved +illchester +illconducted +illcontrived +illdefined +illdevised +illdisposed +illeano +illebie +illecebrous +illeck +illegal +illegalities +illegality +illegalize +illegalized +illegalizing +illegally +illegalness +illegibility +illegibly +illeism +illeist +iller +illeret +illescas +illess +illest +illfare +illfated +illflavored +illguide +illiberal +illiberalism +illiberality +illiberalize +illiberally +illicit +illicitly +illicitness +illicium +illidge +illimagined +illimitably +illimitate +illimitation +illimited +illimitedly +illing +illingworth +illinition +illinium +illinoian +illinois +illinoisan +illinoiscity +illinoisian +illion +illiopolis +illipe +illipene +illiquation +illiquid +illiquidity +illiquidly +illish +illision +illit +illiteracies +illiteral +illiterate +illiterately +illiterates +illiterature +illium +illizi +illja +illjudged +illjudging +illmarked +illnatured +illness +illnessdeath +illnesses +illo +illocal +illocality +illocally +illogical +illogicality +illogically +illogician +illogicity +illogics +illomened +illoricata +illoricate +illoricated +illoyal +illoyalty +illqualified +ills +illsorted +illspent +illstarred +illtempered +illth +illtimed +illtreat +illtreatment +illubabor +illucidate +illucidation +illucidative +illude +illudedly +illuder +illumed +illumer +illumes +illuminable +illuminance +illuminant +illuminate +illuminated +illuminates +illuminati +illuminating +illumination +illuminatism +illuminatist +illuminative +illuminato +illuminator +illuminators +illuminatory +illuminatus +illumined +illuminee +illuminer +illumines +illuming +illumining +illuminism +illuminist +illuministic +illuminize +illuminous +illupi +illure +illurement +illus +illuse +illused +illusible +illusion +illusionable +illusional +illusioned +illusionism +illusionist +illusionists +illusions +illusively +illusiveness +illusor +illusorily +illusoriness +illusory +illustrable +illustrate +illustrated +illustrates +illustrating +illustration +illustrative +illustrator +illustrators +illustratory +illustre +illustricity +illutate +illutation +illuvial +illuviate +illuviation +illwill +illy +illyria +illyrian +illyric +illyricum +ilmari +ilmatar +ilmberger +ilmenite +ilmenitite +ilmenorutile +ilni +ilocano +ilocos +iloilo +ilois +ilokano +iloko +iloloubek +ilom +ilomwe +ilona +ilonggo +ilongot +ilonka +iloodokilani +ilorin +iloring +ilot +ilowski +ilpara +ilpirra +ilsa +ilse +ilsebill +ilsewa +ilsong +ilstu +ilton +ilubabor +ilud +ilugwa +ilumbu +ilushi +ilvaite +ilwaco +ilwana +ilya +ilyana +ilyas +ilyitch +ilysa +ilysanthes +ilyse +ilysia +ilysiidae +ilysioid +ilyssa +ilzsg +imaban +imabu +imada +imafin +image +imageable +imaged +imageeditor +imagefiles +imagefox +imagegallery +imageless +imagemaker +imagemap +imagemaps +imagen +imagenie +imager +imageready +imagerial +imagerially +imageries +imagery +images +imageview +imagewolf +imagex +imagin +imaginable +imaginably +imaginal +imaginant +imaginarily +imaginary +imagination +imaginations +imaginative +imaginator +imagine +imagined +imaginer +imaginers +imagines +imagineth +imaging +imagining +imaginings +imaginist +imaginous +imagism +imagisms +imagist +imagistic +imagists +imago +imagoes +imagry +imail +imakua +imam +imamah +imamate +imamates +imambarah +imami +imamic +imams +imamship +iman +imandi +imao +imap +imapd +imapvm +imarah +imarat +imaret +imari +imasi +imaspzap +imathia +imathstat +imatong +imatool +imatra +imaum +imaums +imaz +imbabura +imbalance +imbalances +imbalm +imbalmed +imbalmer +imbalmers +imbalming +imban +imbana +imband +imbannered +imbaoo +imbara +imbarge +imbark +imbarked +imbarn +imbased +imbastardize +imbat +imbauba +imbe +imbecilely +imbeciles +imbecilic +imbecilitate +imbecilities +imbecility +imbed +imbedded +imbedding +imbeds +imbellious +imbemba +imber +imbeu +imbibation +imbibe +imbibed +imbiber +imbibers +imbibes +imbibing +imbibition +imbibitional +imbibitions +imbibitory +imbinis +imbink +imbirussu +imbitter +imbitterment +imbler +imbo +imboden +imbody +imbolish +imbon +imbondo +imbongu +imbonity +imbordure +imborsation +imbosom +imbower +imbrangle +imbreathe +imbreu +imbreviate +imbrex +imbricate +imbricated +imbricately +imbrication +imbrications +imbricative +imbrie +imbrium +imbroglio +imbroglios +imbrued +imbruement +imbrues +imbruglia +imbruing +imbrute +imbrutement +imbued +imbuement +imbues +imbuing +imburse +imbursement +imel +imelda +imenno +imenti +imer +imeretian +imerina +imeritian +imershein +imerxev +imey +imeyne +imfsupported +imgb +imgc +imgd +imgoff +imgon +imhilde +imho +imhof +imhoff +imhotep +imidazole +imidazolyl +imide +imidic +imidogen +imidzh +imila +imilangu +imina +iminazole +imine +imino +iminohydrin +imitability +imitableness +imitancy +imitant +imitate +imitated +imitatee +imitates +imitating +imitation +imitational +imitationist +imitations +imitative +imitatively +imitator +imitators +imitatorship +imitatress +imitatrix +imiwsa +imjpcln +imkamp +imla +imlac +imladmorgul +imladris +imlah +imlay +imlaycity +imlaystown +imler +immace +immaculacy +immaculale +immaculance +immaculata +immaculate +immaculately +immalleable +immanacle +immanation +immane +immanely +immanence +immanency +immaneness +immanental +immanentism +immanentist +immanently +immanes +immanifest +immanity +immantle +immanuel +immarble +immarginate +immask +immatchable +immaterially +immaterials +immateriate +immature +immatured +immaturely +immatureness +immatures +immaturities +immaturity +immdeiate +immeability +immeasurably +immeasured +immechanical +immed +immediacies +immedial +immediate +immediately +immediatism +immediatist +immediatly +immedicable +immedicably +immelodious +immember +immemorable +immemorially +immense +immensely +immenseness +immenser +immensest +immensities +immensity +immensive +immensurable +immensurate +immer +immerd +immerge +immergence +immergent +immerit +immerited +immeritous +immersed +immersement +immerses +immersible +immersing +immersionism +immersionist +immersions +immersive +immesh +immeshing +immethodic +immethodical +immethodize +immetrical +immetrically +immew +immi +immidiatly +immies +immigrant +immigrants +immigrated +immigrates +immigrating +immigration +immigrations +immigrator +immigratory +imminence +imminency +imminently +imminentness +imming +immingle +imminution +immiscibly +immission +immit +immitigable +immitigably +immix +immixable +immixed +immixes +immixing +immixture +immler +immobilities +immobility +immobilize +immobilized +immobilizer +immobilizes +immobilizing +immoderacy +immoderate +immoderately +immoderation +immodestly +immodulated +immokalee +immolate +immolated +immolates +immolating +immolation +immolations +immolator +immoment +immomentous +immonastered +immoral +immoralism +immoralist +immoralities +immorality +immoralize +immorally +immorigerous +immortable +immortal +immortali +immortalism +immortalist +immortality +immortalize +immortalized +immortalizer +immortalizes +immortally +immortalness +immortals +immortalship +immortelle +immortified +immotile +immotility +immotioned +immotive +immound +immovability +immovably +immoveable +immpossible +immund +immundicity +immundity +immune +immunes +immunist +immunities +immunity +immunization +immunize +immunized +immunizes +immunizing +immunogen +immunogenic +immunologic +immunologies +immunologist +immunology +immunotoxin +immuration +immure +immured +immurement +immures +immuring +immusical +immusically +immutability +immutable +immutably +immutation +immute +immutilate +immutual +immy +imna +imnah +imnaha +imnsho +imoga +imogen +imogene +imojean +imokoude +imolinda +imona +imonda +imonium +imorga +impacability +impacable +impack +impackment +impact +impacted +impacter +impacters +impacting +impaction +impactionize +impactment +impactor +impactors +impacts +impactual +impages +impaint +impainted +impairable +impaired +impairer +impairers +impairing +impairment +impairments +impairs +impala +impalace +impalas +impalatable +impaled +impalement +impalements +impaler +impalers +impales +impaling +impall +impalm +impalpably +impalsy +impaludism +impanate +impanation +impanator +impane +impanel +impaneled +impaneling +impanelled +impanelling +impanelment +impanels +impapase +impapyrate +impar +imparadise +imparalleled +imparasitic +imparato +impardonable +impardonably +imparity +impark +imparkation +imparl +imparlance +imparsonee +impart +impartable +impartance +imparted +imparter +imparters +impartialism +impartialist +impartiality +impartially +impartible +impartibly +imparting +impartite +impartive +impartivity +impartment +imparts +impassable +impassably +impasses +impassible +impassiblity +impassibly +impassionate +impassioned +impassioning +impassive +impassively +impassivity +impastation +impaste +impasto +impasture +impaternate +impatible +impatience +impatiency +impatiens +impatient +impatiently +impatronize +impave +impavid +impavidity +impavidly +impawn +impayable +impcom +impeach +impeachable +impeached +impeacher +impeachers +impeaches +impeaching +impeachment +impeachments +impearl +impearled +impearling +impearls +impecable +impeccably +impeccance +impeccancy +impeccant +impectinate +impecuniary +impecunious +imped +impedances +impede +impeded +impeder +impeders +impedes +impedibility +impedible +impedient +impediment +impedimenta +impedimental +impediments +impeding +impedingly +impedite +impedition +impeditive +impedometer +impeevish +impel +impellent +impellers +impellor +impellors +impels +impen +impended +impendence +impendency +impendent +impending +impends +impenetrable +impenetrably +impenetrate +impenitence +impenitent +impenitently +impenitible +impennate +impennes +impent +imper +imperance +imperant +imperata +imperation +imperatival +imperative +imperatively +imperatives +imperator +imperatorial +imperatorian +imperatory +imperatrix +imperceived +imperception +imperceptive +impercipient +imperdible +imperence +imperent +imperfect +imperfected +imperfection +imperfective +imperfectly +imperfects +imperforable +imperforata +imperforate +imperforated +imperforates +imperia +imperial +imperialin +imperialine +imperialism +imperialist +imperialists +imperiality +imperialize +imperially +imperialness +imperials +imperialty +imperii +imperiled +imperiling +imperilled +imperilling +imperilment +imperilments +imperils +imperio +imperious +imperiously +imperish +imperishably +imperite +imperium +imperiums +imperius +imperm +impermanence +impermanency +impermanent +impermeably +impermeated +impermeator +impermutable +impersonable +impersonal +impersonally +impersonated +impersonates +impersonator +impersonify +impersonize +impert +impertinacy +impertinence +impertinency +impertinent +imperturbed +imperverse +imperviable +impervial +impervious +imperviously +impest +impestation +impester +impeticos +impetiginous +impetigo +impetigos +impetition +impetrate +impetration +impetrative +impetrator +impetratory +impetre +impetulant +impetulantly +impetuosity +impetuously +impetus +impetuses +impeyan +impfondo +imphee +impi +impichment +impicit +impicture +impierceable +impieties +impignorate +imping +impinged +impingement +impingements +impingence +impingent +impinger +impingers +impinges +impinging +impings +impinguate +impiously +impiousness +impires +impishly +impishness +impissation +impiteous +impitiably +implacable +implacably +implacement +implacental +implacentate +implant +implantation +implanted +implanter +implanting +implants +implastic +implasticity +implate +implausible +implausibly +impleach +implead +impleadable +impleader +impledge +implement +implemental +implemented +implementers +implementhe +implementing +implementor +implementors +implements +implete +impletion +impletive +implex +impliable +implial +implicants +implicated +implicately +implicates +implicating +implication +implications +implicative +implicatory +implicit +implicitly +implicitness +implied +impliedly +impliedness +implies +impling +implmented +imploded +implodent +implodes +imploding +implorable +imploration +implorations +implorator +imploratory +implored +implorer +implorers +implores +imploring +imploringly +implosions +implosive +implosively +implume +implumed +implunge +impluvium +imply +implying +impocket +impofo +impoison +impoisoner +impolicy +impolished +impolite +impolitely +impoliteness +impolitical +impoliticly +impollute +imponderably +imponderous +impone +imponent +impoor +impopular +impopularly +imporosity +imporous +import +importable +importably +importance +importancy +important +importantly +importations +imported +importer +importers +importing +importless +importment +importray +imports +importunacy +importunance +importunator +importuned +importunely +importuner +importunes +importuning +importunity +imposable +imposal +impose +imposed +imposement +imposer +imposers +imposes +imposible +imposing +imposingly +imposingness +impositional +impositions +impositive +impossible +impossibly +imposted +imposter +imposterous +imposters +imposthume +imposting +impostor +impostorism +impostors +impostorship +impostress +impostrix +impostrous +imposts +impostumate +impostume +impostures +imposturism +imposturous +imposure +impot +impotable +impotence +impotences +impotencies +impotency +impotent +impotently +impotentness +impotents +impoundable +impoundage +impounded +impounder +impounding +impoundment +impoundments +impounds +impoverish +impoverished +impoverisher +impoverishes +impowers +impractical +imprecant +imprecated +imprecates +imprecateur +imprecating +imprecation +imprecations +imprecator +imprecators +imprecatory +imprecisely +imprecisions +impredicable +impreg +impregn +impregnably +impregnant +impregnated +impregnates +impregnating +impregnation +impregnative +impregnator +impregnatory +imprejudice +impresa +impresarios +imprescience +imprese +impress +impressable +impressario +impressed +impressedly +impresser +impressers +impresses +impressibly +impressing +impression +impressional +impressionis +impressions +impressive +impressively +impressment +impressments +impressor +impressure +imprest +imprestable +imprests +imprevisible +imprevision +imprevisto +imprimaturs +imprime +imprimis +imprimitive +imprinetta +imprint +imprinted +imprinter +imprinters +imprinting +imprints +imprison +imprisonable +imprisoned +imprisoner +imprisoning +imprisonment +imprisons +improbable +improbably +improbate +improbation +improbative +improbatory +improbity +improcreant +improcurable +improducible +impromptu +impromptuary +impromptuist +improof +improper +improperly +improperness +impropriate +impropriator +improsperous +improvable +improvably +improve +improved +improvement +improvements +improver +improvers +improvership +improves +improvidence +improving +improvingly +improvisator +improvise +improvised +improvisedly +improviser +improvisers +improvises +improvising +improvision +improviso +improvisor +improvisors +improvment +improvments +imprudence +imprudency +imprudential +imprudently +imps +impship +impsys +impuberal +impuberate +impuberty +impubic +impudence +impudency +impudent +impudently +impudentness +impudicity +impugnable +impugnation +impugned +impugner +impugners +impugning +impugnment +impugns +impuissance +impuissant +impulse +impulsed +impulses +impulsing +impulsion +impulsions +impulsive +impulsively +impulsivity +impulsory +impunctate +impunctual +impunely +impunible +impunibly +impunities +impunity +impure +impurely +impureness +impurion +impuritan +impuritanism +impurities +impurity +imputability +imputable +imputably +imputation +imputations +imputative +imputatively +impute +imputed +imputedly +imputer +imputers +imputes +imputeth +imputing +imputrid +impy +imrah +imrahil +imran +imre +imrei +imrey +imri +imroin +imrryr +imsa +imsd +imshi +imsl +imsonic +imstmc +imtaz +imtiaz +imudji +imul +imurud +imurut +imya +imyene +inaba +inabaknon +inabeyance +inabilities +inability +inabordable +inabstinence +inabstinent +inacceptable +inaccessable +inaccessible +inaccessibly +inaccordance +inaccordancy +inaccordant +inaccuracies +inaccuracy +inaccurate +inaccurately +inacessible +inachid +inachidae +inachoid +inachus +inacio +inactinic +inactionist +inactions +inactivated +inactivates +inactivating +inactivation +inactive +inactively +inactiveness +inactivities +inactivity +inactuate +inactuation +inad +inadan +inadaptable +inadaptation +inadaptive +inaden +inadept +inadequacies +inadequate +inadequately +inadequation +inadequative +inadherent +inadhesion +inadhesive +inadjustable +inadmissable +inadmissibly +inadverdent +inadvertence +inadvertency +inadvertenly +inadvertent +inadvisably +inadvisedly +inaesthetic +inaffability +inaffable +inafosa +inag +inagaki +inaggressive +inagile +inagri +inagta +inagua +inai +inaidable +inaja +inaki +inakona +inalacrity +inalienable +inalienably +inalimental +inallu +inalterably +inam +inamari +inambari +inambu +inamissible +inamorata +inamoratas +inamorate +inamoration +inamorato +inamovable +inamullah +inamura +inamwanga +inanc +inanda +inane +inanely +inaner +inaners +inanes +inanga +inangahua +inangulate +inanimate +inanimated +inanimately +inanimation +inanities +inanition +inanity +inanlu +inantherate +inanwatan +inapari +inapathy +inapostate +inapparent +inappealable +inappellable +inappetence +inappetency +inappetent +inappetible +inapplicable +inapplicably +inapposite +inappositely +inaptly +inaptness +inaquen +inaqueous +inarable +inarch +inarculum +inarguable +inarguably +inari +inarm +inarticulacy +inarticulata +inartificial +inartistic +inartistical +inasian +inasmuch +inatio +inattackable +inattention +inaudibility +inaudible +inaudibly +inaugur +inaugurals +inaugurated +inaugurates +inaugurating +inauguration +inaugurative +inaugurator +inauguratory +inaugurer +inauini +inaurate +inauration +inauthentic +inavale +inaxon +inbaknon +inband +inbase +inbe +inbeaming +inbearing +inbeing +inbending +inbent +inbetween +inbirth +inbits +inbivariate +inblow +inblowing +inblown +inboards +inbond +inbound +inbounds +inbox +inbread +inbreak +inbreaker +inbreaking +inbreathe +inbreather +inbreathing +inbreeder +inbreeding +inbreeds +inbring +inbringer +inbuilt +inburning +inburnt +inburst +inby +inca +incage +incaged +incages +incahuasi +incaic +incalculably +incalescence +incalescency +incalescent +incaliculate +incalver +incalving +incameration +incan +incandent +incandesce +incandescent +incanous +incantation +incantations +incantator +incantatory +incanton +incanus +incapability +incapable +incapably +incapacious +incapacitant +incapacities +incapsulate +incaptivate +incarcerated +incarcerates +incarcerator +incardinate +incarial +incarmined +incarn +incarnadine +incarnadined +incarnadines +incarnant +incarnated +incarnates +incarnating +incarnation +incarnations +incarnative +incarvillea +incas +incase +incased +incasement +incases +incasing +incast +incatenate +incatenation +incautiously +incavate +incavated +incavation +incavern +incaviglia +incb +ince +incedingly +incelebrity +incendiaries +incendiarism +incendiarist +incendiary +incendivity +incensation +incense +incensed +incenseless +incensement +incenses +incensing +incension +incensory +incensurable +incensurably +incenter +incentive +incentively +incentives +incentor +incept +incepting +inceptions +inceptive +inceptively +inceptors +incepts +inceration +incertitude +incessable +incessably +incessancy +incessantly +incesticide +incests +incestuously +inch +inchazi +inchcliff +inche +inched +inchelium +inchers +inches +inching +inchiri +inchl +inchmeal +inchoacy +inchoant +inchoate +inchoately +inchoateness +inchoation +inchoative +inchon +inchpin +inchr +inchtb +inchworm +inchworms +incide +incidence +incidences +incident +incidentally +incidentals +incidentia +incidentless +incidently +incidents +incinerable +incinerated +incinerates +incinerating +incineration +incinerator +incinerators +incipience +incipiencies +incipiency +incipient +incipiently +incirlik +incisal +incised +incisely +incises +incisiform +incising +incision +incisions +incisive +incisively +incisiveness +incisor +incisorial +incisors +incisory +incisure +incitability +incitable +incitant +incitants +incitation +incitations +incite +incited +incitement +incitements +inciter +inciters +incites +inciting +incitingly +incitive +incitory +incitress +incius +incivic +incivil +incivilities +incivility +incivism +incl +inclan +inclasp +inclemencies +inclemency +inclemently +inclinable +inclination +inclinations +inclinator +inclinatory +incline +inclined +incliner +incliners +inclines +inclineth +inclining +inclinograph +inclinometer +inclip +inclose +inclosed +incloser +inclosers +incloses +inclosing +inclosings +inclosure +includ +includable +include +included +includedness +includer +includes +including +inclusa +incluse +inclusion +inclusionist +inclusions +inclusive +inclusively +inclusory +incoagulable +incoercible +incog +incogent +incogitable +incogitancy +incogitant +incogitantly +incogitative +incognita +incognitive +incognito +incognitos +incognizable +incognizance +incognizant +incognoscent +incoherence +incoherences +incoherency +incoherent +incoherently +incohering +incohesion +incohesive +incoincident +incolor +incombustion +income +incomeless +incomer +incomes +incoming +incomings +incomming +incommodate +incommode +incommoded +incommodes +incommoding +incommodious +incommodity +incommutably +incompact +incompactly +incomparably +incompatible +incompatibly +incompetence +incompetency +incompetent +incompetents +incomplete +incompleted +incompletely +incomplex +incompliance +incompliancy +incompliant +incomplicate +incomplying +incomposed +incomposedly +incomposite +incompressed +incomputably +inconcinnate +inconcinnity +inconcinnous +inconcludent +inconcluding +inconclusion +inconclusive +inconcoction +inconcrete +inconcurrent +inconcurring +incondite +inconducive +inconfirm +inconformity +inconfused +inconfusedly +inconfusion +inconfutable +inconfutably +incongenial +incongruence +incongruent +incongruity +incongruous +inconnected +inconnection +inconnu +inconnue +inconscience +inconscient +inconscious +inconsequent +inconsidered +inconsistent +inconsolably +inconsolate +inconsonance +inconsonant +inconstancy +inconstantly +inconsumable +inconsumably +inconsumed +incontext +incontiguous +incontinence +incontinency +incontinent +incontinuity +incontinuous +incontracted +incontrol +incontrolled +inconvenient +inconversant +inconvinced +incore +incoronate +incoronated +incoronation +incorporal +incorporate +incorporated +incorporates +incorporator +incorporeal +incorporeity +incorporeous +incorpse +incorrect +incorrection +incorrectly +incorrectspa +incorrigibly +incorrodable +incorrodible +incorrosive +incorrupt +incorrupted +incorruption +incorruptly +incourteous +incr +incram +incraser +incrash +incrassate +incrassated +incrassation +incrassative +increase +increased +increasedly +increaseful +increasement +increaser +increasers +increases +increasest +increaseth +increasing +increasingly +increate +increately +increative +incredible +incredibly +increditable +incredited +increep +incremate +incremation +increment +incremental +incremented +incrementer +incrementing +incremently +increments +incremet +increpate +increpation +increscence +increscent +increst +incretion +incretionary +incretory +incriminated +incriminates +incriminator +incross +incrossbred +incrossing +incrotchet +incruent +incruental +incruentous +incrust +incrustant +incrustata +incrustate +incrustation +incrustator +incrusted +incrusting +incrustive +incrustment +incrusts +incrystal +incsys +incubated +incubates +incubating +incubation +incubational +incubations +incubative +incubator +incubatorium +incubators +incubatory +incubous +incubus +incubuses +incudal +incudate +incudectomy +incudes +incuding +inculcated +inculcates +inculcating +inculcation +inculcative +inculcator +inculcatory +inculded +inculpably +inculpate +inculpated +inculpates +inculpating +inculpation +inculpative +inculpatory +incult +inculture +incumbant +incumbence +incumbencies +incumbency +incumbent +incumbentess +incumbently +incumbents +incumber +incumbered +incumbering +incumberment +incumbers +incumbrance +incumbrancer +incunable +incunabula +incunabular +incunabulist +incunabulum +incunabuulum +incuneation +incur +incurability +incurable +incurably +incuriosity +incurious +incuriously +incurrable +incurred +incurrence +incurrent +incurs +incurse +incursionist +incursions +incursive +incurvate +incurvation +incurvature +incurve +incurving +incurvity +incus +incuse +incut +incutting +incw +incze +indaaka +indaba +indaconitine +indagate +indagation +indagative +indagator +indagatory +indagen +indaginy +indahl +indalecio +indamine +indan +indane +indanthrene +indart +indazin +indazine +indazol +indazole +indbt +indcredulous +inde +indebt +indebted +indebtedness +indebtment +indecence +indecencies +indecency +indecent +indecenter +indecently +indecentness +indecidua +indeciduate +indeciduous +indecisively +indeclinable +indeclinably +indecorous +indecorously +indecorum +indeed +indeedy +indefaceable +indefeasible +indefeasibly +indefeatable +indefectible +indefectibly +indefective +indefensibly +indefensive +indeficiency +indeficient +indefinable +indefinably +indefinitely +indefinitive +indefinitude +indefinity +indefluent +indeformable +indegegn +indegegne +indehiscence +indehiscent +indelectable +indelegable +indeliberate +indelibility +indelibly +indelicacies +indelicacy +indelicately +indelicato +indelphi +indemnified +indemnifier +indemnifies +indemnifying +indemnitee +indemnities +indemnitor +indemoniate +indendente +indene +indenie +indent +indentation +indentations +indented +indentedly +indentee +indenter +indenters +indentifiers +indenting +indention +indentions +indentment +indentor +indentors +indents +indentured +indentures +indenturing +indentwise +independable +independant +independence +independency +independent +independents +independista +independmen +indeposable +indeprivable +indepth +inder +inderagiri +inderivative +inderjit +indescript +indesert +indesignate +indesinent +indesirable +indetectable +indetermined +indevoted +indevotion +indevotional +indevout +indevoutly +indevoutness +index +indexable +indexation +indexed +indexer +indexers +indexes +indexfor +indexical +indexically +indexing +indexless +indexterity +indi +india +indiadem +indiahoma +indiaman +indian +indiana +indianaite +indianajones +indianan +indianans +indianapolis +indianeer +indianesque +indianhead +indianhill +indianhills +indianhood +indianian +indianians +indianism +indianist +indianite +indianize +indianlake +indianmills +indianmound +indianola +indianriver +indians +indianto +indiantown +indiantrail +indianvalley +indic +indicable +indican +indicants +indicanuria +indicate +indicated +indicates +indicating +indication +indications +indicative +indicatively +indicatives +indicator +indicators +indicatory +indicatres +indicatrix +indices +indicia +indicial +indicible +indicium +indicolite +indictable +indictably +indicted +indictee +indictees +indicters +indicting +indiction +indictional +indictive +indictment +indictments +indictor +indictors +indicts +indien +indiens +indiferous +indifference +indifferency +indifferent +indigena +indigenal +indigenate +indigence +indigency +indigeneity +indigenes +indigenismo +indigenist +indigenista +indigenity +indigenous +indigenously +indigens +indigently +indigents +indigested +indigestible +indigestibly +indigestive +indigirka +indigitate +indigitation +indign +indignance +indignancy +indignantly +indignation +indignatory +indigneously +indignify +indignities +indignly +indigo +indigoberry +indigoes +indigofera +indigoferous +indigoid +indigos +indigotic +indigotin +indiguria +indiligence +indimensible +indimple +indinogosima +indinpls +indio +indira +indirect +indirected +indirecting +indirection +indirections +indirectly +indirectness +indirects +indirubin +indiscipline +indiscovered +indiscreetly +indiscrete +indiscretely +indisposed +indisputably +indissipable +indissolubly +indissolute +indistinct +indistinctly +indisturbed +indite +indited +inditement +inditer +inditers +indites +inditing +indiums +indivertible +indivertibly +individable +individua +individual +individually +individuals +individuated +individuates +individuator +individuity +individuum +indivinable +indivisible +indivisibly +indivision +indntwgp +indoaryan +indocibility +indocible +indocile +indocility +indoctrine +indoctrinize +indogaea +indogaean +indogen +indogenide +indoiranian +indol +indole +indolence +indolently +indoles +indoline +indologian +indologist +indologue +indology +indoloid +indolyl +indomitable +indomitably +indomut +indone +indonesia +indonesian +indonesians +indoor +indoors +indophenin +indophenol +indophile +indophilism +indophilist +indore +indorodoro +indorsation +indorsed +indorsee +indorsees +indorsement +indorser +indorses +indorsing +indorsor +indorsors +indos +indosilver +indow +indowed +indows +indoxyl +indoxylic +indpls +indra +indraft +indramayu +indraneel +indraught +indrawal +indrawing +indrawn +indri +indris +indrisano +indscal +indstate +indubious +indubiously +indubitably +induce +induced +inducedly +inducement +inducements +inducer +inducers +induces +induciae +inducing +inducive +inductances +inducted +inductees +inducteous +inductile +inductility +inducting +induction +inductional +inductions +inductive +inductively +inductivity +inductometer +inductophone +inductorium +inductors +inductory +inductoscope +inducts +indue +indued +induement +indues +induing +indulge +indulgeable +indulged +indulgement +indulgence +indulgenced +indulgences +indulgency +indulgential +indulgently +indulger +indulgers +indulges +indulging +indulgingly +induline +indulo +indult +indulto +indument +indumentum +induna +induplicate +indurable +indurate +indurated +indurates +indurating +induration +indurations +indurative +indurite +indus +indusa +indusial +indusiate +indusiated +indusiform +indusioid +indusium +industr +industria +industrial +industrially +industrials +industries +industrious +industry +industrys +induviae +induvial +induviate +indweller +indwelling +indwells +indwelt +indy +indyl +indylic +indyvax +inearth +inearthed +inebriacy +inebriant +inebriate +inebriated +inebriates +inebriating +inebriation +inebriative +inebriety +inebrious +ineconomic +ineconomy +inedibility +inedible +inedited +inedua +ineducabilia +ineducation +ineffability +ineffable +ineffably +ineffaceable +ineffaceably +ineffectible +ineffectibly +ineffective +ineffectual +inefficacity +inefficience +inefficiency +inefficient +ineffulgent +ineke +ineko +inelaborate +inelaborated +inelasticate +inelasticity +inelegance +inelegancy +inelegantly +ineligible +ineligibles +ineligibly +ineliminable +ineloquence +ineloquent +ineloquently +ineluctably +ineludible +ineludibly +inembryonate +ineme +inemendable +inemotivity +inemulous +inenarrable +inenergetic +inenubilable +inenucleable +ineptitude +ineptly +ineptness +inequable +inequal +inequalities +inequality +inequally +inequalness +inequation +inequiaxial +inequilobate +inequilobed +inequitably +inequities +inequivalve +ineradicably +inerasable +inerasably +inerasible +inerclude +ineri +inerm +inermes +inermi +inermia +inermous +inerrability +inerrable +inerrably +inerrancy +inerrant +inerrantly +inerratic +inerring +inerringly +inerroneous +inert +inertia +inertial +inertias +inertion +inertly +inertness +inerts +inerubescent +inerudite +ineruditely +inerudition +ines +inescapably +inescort +inescourt +inesculent +inescutcheon +inesita +inesite +inessa +inessential +inestimably +inestivation +inet +ineta +inetcrack +inetd +inethical +inetserver +inetsnoop +inetu +ineunt +ineuphonious +inevadible +inevadibly +inevaporable +inevasible +inevidence +inevident +inevitable +inevitably +inexacting +inexactitude +inexactly +inexactness +inexcellence +inexcitable +inexclusive +inexcusable +inexcusably +inexecutable +inexecution +inexertion +inexhausted +inexhaustive +inexigible +inexist +inexistence +inexistency +inexistent +inexorable +inexorably +inexpansible +inexpansive +inexpectancy +inexpectant +inexpected +inexpectedly +inexpedience +inexpediency +inexpensive +inexperience +inexpertly +inexpertness +inexpiably +inexpiate +inexplicably +inexplicitly +inexplorable +inexplosive +inexportable +inexposable +inexposure +inexpress +inexpressile +inexpression +inexpressive +inexpugnable +inexpugnably +inexpungible +inextant +inextended +inextensible +inextensile +inextension +inextensive +inextinct +inextirpable +inextricably +inez +inface +infall +infallible +infallibly +infalling +infame +infamies +infamiliar +infamize +infamonize +infamous +infamously +infamousness +infamy +infancies +infancy +infand +infandous +infang +infanglement +infangthief +infant +infanta +infantado +infante +infanthood +infanti +infanticde +infanticidal +infanticide +infanticides +infantile +infantilism +infantility +infantine +infantlike +infantries +infantry +infants +infanzia +infarctate +infarcted +infarction +infarctions +infarcts +infare +infatuated +infatuatedly +infatuates +infatuating +infatuation +infatuations +infatuator +infaust +infect +infectant +infected +infectedness +infecter +infecters +infectible +infecting +infection +infectionist +infections +infectious +infectiously +infective +infectivity +infector +infectors +infectress +infects +infectuous +infecund +infecundity +infeed +infeft +infeftment +infelicific +infelicities +infelonious +infelt +infeminine +infeoffed +infer +inferable +inferences +inferent +inferior +inferiorism +inferiority +inferiorize +inferiorly +inferiors +infern +infernal +infernalism +infernality +infernalize +infernally +infernalry +infernalship +infernos +inferomedian +inferred +inferrer +inferrers +inferrible +inferringly +infers +infertilely +infertility +infestant +infestation +infestations +infested +infester +infesters +infesting +infestive +infestivity +infestment +infests +infeudation +infibulate +infibulation +inficete +infidel +infidelic +infidelical +infidelism +infidelistic +infidelities +infidelity +infidelize +infidelly +infidels +infielder +infielders +infields +infieldsman +infierno +infighter +infighters +infile +infill +infilling +infilm +infilter +infiltrate +infiltrated +infiltrates +infiltrating +infiltration +infiltrative +infiltrator +infiltrators +infin +infinitant +infinitarily +infinitary +infinitate +infinitation +infinite +infinitely +infiniteness +infinites +infiniteth +infinities +infinitieth +infinitival +infinitively +infinitives +infinitize +infinituple +infinity +infirm +infirmable +infirmarer +infirmaress +infirmarian +infirmaries +infirmary +infirmate +infirmation +infirmative +infirmed +infirming +infirmities +infirmity +infirmly +infirmness +infirms +infissile +infit +infitter +infixed +infixes +infixion +inflame +inflamed +inflamedly +inflamedness +inflamer +inflamers +inflames +inflaming +inflamingly +inflammables +inflammably +inflammation +inflammative +inflatable +inflate +inflated +inflatedly +inflatedness +inflaters +inflates +inflatile +inflating +inflatingly +inflation +inflationism +inflationist +inflations +inflative +inflator +inflators +inflatus +inflected +inflecting +inflection +inflectional +inflections +inflective +inflector +inflects +inflex +inflexed +inflexibly +inflexion +inflexive +inflict +inflictable +inflicted +inflicting +infliction +inflictions +inflictive +inflictor +inflicts +inflight +inflood +inflorescent +inflowering +inflows +influence +influenced +influencer +influences +influencing +influencive +influential +influents +influenza +influenzal +influenzas +influenzic +influx +influxable +influxes +influxible +influxibly +influxion +influxionism +info +infoart +infobahn +infobooks +infobot +infocan +infocenter +infocom +infodisk +infogrames +infold +infolded +infolder +infolders +infolding +infoldment +infolds +infoliate +infolink +infomation +infoods +infopower +infopro +infopump +inform +informable +informal +informality +informalize +informally +informant +informants +informash +informat +informatics +informatik +information +informations +informative +informator +informatory +informed +informedly +informer +informers +informidable +informing +informingly +informity +informix +informs +infortiate +infortitude +infortunate +infortune +infos +infosafe +infoseek +infospy +infounzip +infowar +infoworld +infozip +infra +infrabasal +infrabestial +infrabuccal +infracanthal +infracaudal +infracentral +infraclusion +infracostal +infracted +infractible +infraction +infractions +infractor +infradentary +infragenual +infraglacial +infraglenoid +infraglottic +infragrant +infragular +infrahuman +infrahyoid +infralabial +infralinear +inframammary +inframedian +inframontane +inframundane +infranatural +infrangible +infrangibly +infranodal +infranuclear +infraocular +infraoral +infraorbital +infrapose +infraprotein +infrapubian +infraradular +infrared +infrareds +infrarenal +infrarenally +infrarimal +infrasonic +infraspinal +infraspinate +infraspinous +infrasternal +infrasutral +infraterrene +infratubal +infravaginal +infraventral +infree +infrequence +infrequency +infrequent +infrequently +infrigidate +infringed +infringement +infringer +infringers +infringes +infringible +infringing +infructuose +infructuous +infrugal +infrustrable +infrustrably +infty +infuha +infuhr +infula +infumate +infumated +infumation +infundibul +infundibula +infundibular +infundibulum +infuriated +infuriately +infuriates +infuriating +infuriation +infuscate +infuscation +infuse +infused +infusedly +infuser +infusers +infuses +infusibility +infusile +infusing +infusion +infusionism +infusionist +infusions +infusive +infusoria +infusorial +infusorian +infusoriform +infusorioid +infusorium +infusory +inga +ingaberg +ingaborg +ingaevones +ingaevonic +ingalik +ingalit +ingallantry +ingalls +ingals +ingannation +ingano +ingarico +ingariko +ingassana +ingate +ingathered +ingatherer +ingathering +ingathers +ingdal +inge +ingeberg +ingeborg +ingeldable +ingell +ingels +ingemann +ingemar +ingeminate +ingemination +ingenbleek +ingeneous +ingenerable +ingenerably +ingenerate +ingenerately +ingeneration +ingenerative +ingeniosity +ingenious +ingeniously +ingenit +ingenite +ingenu +ingenue +ingenues +ingenuity +ingenuously +inger +ingerman +ingerminate +ingersol +ingersoll +ingest +ingesta +ingestant +ingested +ingesting +ingestive +ingests +ingham +inghamite +inghilois +ingilo +ingiver +ingiving +ingle +ingledew +inglefield +inglenook +ingles +inglesakis +ingleside +inglewood +ingli +ingling +inglis +inglish +inglobate +inglobe +inglorion +inglorious +ingloriously +inglot +inglutition +ingluvial +ingluvies +ingluviitis +ingmar +ingnored +ingo +ingod +ingoing +ingolby +ingold +ingolstadt +ingomar +ingorgo +ingotman +ingots +ingraft +ingrafted +ingrafting +ingraham +ingrain +ingrained +ingrainedly +ingraining +ingrains +ingram +ingrandize +ingrassia +ingrateful +ingratefully +ingrately +ingrates +ingratiated +ingratiates +ingratiating +ingratiation +ingratiatory +ingratitude +ingravescent +ingravidate +ingre +ingred +ingredients +ingres +ingress +ingresses +ingression +ingressive +ingrey +ingrian +ingrid +ingross +ingroup +ingroups +ingrow +ingrowing +ingrownness +ingrowth +ingrowths +inguen +inguinal +inguinodynia +inguishable +inguklimiut +ingul +ingulf +ingulfing +ingulfment +ingulfs +ingulu +ingundi +ingundji +ingunna +ingura +ingurgitate +ingus +ingush +ingustible +ingvar +ingvarsson +ingvi +ingwe +ingwelde +ingwer +ingwo +inhabile +inhabit +inhabitable +inhabitance +inhabitancy +inhabitant +inhabitants +inhabitative +inhabited +inhabiter +inhabiters +inhabitest +inhabiteth +inhabiting +inhabitress +inhabits +inhalant +inhalants +inhalations +inhalator +inhalators +inhale +inhaled +inhalement +inhalent +inhaler +inhalers +inhales +inhaling +inhambane +inharmonic +inharmonical +inharmony +inhaul +inhauler +inhaulers +inhaust +inhaustion +inhearse +inheaven +inhered +inherence +inherency +inherent +inherently +inheres +inhering +inherit +inheritable +inheritably +inheritage +inheritance +inheritances +inherited +inheriteth +inheriting +inheritor +inheritors +inheritress +inheritrice +inheritrices +inheritrix +inherits +inhesion +inhesions +inhiate +inhibit +inhibitable +inhibited +inhibiter +inhibiting +inhibitions +inhibitive +inhibitors +inhibitory +inhibits +inhofe +inhospitably +inhouse +inhulsen +inhuman +inhumanely +inhumanism +inhumanities +inhumanity +inhumanize +inhumanly +inhumanness +inhumate +inhumation +inhume +inhumed +inhumer +inhumes +inhumorous +inhumorously +inia +iniai +inial +iniatives +inibackup +inibaloi +inicon +inidem +inidividual +inidoneity +inidoneous +iniedit +inifil +inifile +inigo +inilink +inimaginable +inimaint +inimicable +inimicality +inimically +inimicalness +inimitably +iniome +iniomi +iniomous +inion +iniquitable +iniquitably +iniquities +iniquitous +iniquitously +iniquity +inirida +inirritable +inirritant +inirritative +inis +inissuable +init +inital +initial +initialed +initialer +initialing +initialise +initialised +initialist +initialize +initialized +initializer +initializers +initializes +initializing +initialled +initialling +initially +initials +initiant +initiary +initiate +initiated +initiates +initiatine +initiating +initiation +initiations +initiative +initiatively +initiatives +initiator +initiatorily +initiators +initiatory +initiatress +initiatrix +initis +initive +initor +inittab +inity +iniutild +inixplicable +inja +injacksonian +injang +injebi +inject +injectable +injectant +injected +injecting +injection +injections +injective +injector +injectors +injects +injeel +injelly +injobo +injoke +injokes +injoy +injudicial +injudicially +injunction +injunctions +injunctive +injunctively +injurable +injure +injured +injuredly +injuredness +injurer +injurers +injures +injuries +injuring +injurious +injuriously +injury +injust +injustice +injustices +inkabelo +inkberry +inkblot +inkblots +inkbush +inked +inken +inker +inkeri +inkerman +inkers +inket +inkfish +inkholder +inkhorn +inkhornism +inkhornist +inkhornize +inkhornizer +inkhorns +inkier +inkiest +inkijinoff +inkilinoff +inkindle +inkiness +inking +inkings +inkish +inkishinov +inkle +inkles +inkless +inklike +inkling +inklings +inkmaker +inkmaking +inknot +inkom +inkombank +inkongo +inkoria +inkosi +inkpot +inkpots +inkra +inkroot +inks +inkshed +inkslinger +inkslinging +inkstain +inkstand +inkstandish +inkstands +inkster +inkstone +inkwe +inkweed +inkwell +inkwells +inkwood +inkwriter +inky +inlagation +inlaid +inlaik +inlake +inlander +inlanders +inlandish +inlands +inlaod +inlaut +inlaw +inlawry +inlayer +inlayers +inlaying +inlays +inle +inleague +inleak +inleakage +inlets +inletting +inlier +inliers +inline +inlining +inlook +inlooker +inly +inlying +inmage +inman +inmarsat +inmates +inmeas +inmeats +inmesh +inmeshing +inmet +inmixture +inmost +inna +innards +innascible +innate +innately +innateness +innatism +innative +innatural +innaturality +innaturally +innavigable +inned +innefficient +inneity +innemor +inneqor +inner +innerly +innermore +innermost +innermostly +innerness +innerrhoden +inners +innersole +innerspring +innervate +innervated +innervates +innervating +innervation +innervations +innerve +innerving +innes +inness +innest +innet +innholder +inning +innings +inninmorite +innins +innis +innisfail +inniss +innkeepers +innless +innocence +innocency +innocent +innocente +innocenter +innocently +innocentness +innocents +innocuity +innocuous +innocuously +innokenti +innokenty +innominable +innominables +innominata +innominate +innominatum +innovant +innovated +innovates +innovating +innovation +innovational +innovations +innovative +innovatively +innovator +innovators +innovatory +innoxious +innoxiously +inns +inntha +innuendo +innuendoes +innuendos +innuit +innumerable +innumerably +innumerous +innutrient +innutrition +innutritious +innutritive +innyard +inobedience +inobedient +inobediently +inoblast +inobnoxious +inobscurable +inobservable +inobservance +inobservancy +inobservant +inobtainable +inobtrusive +inobvious +inoc +inocarpus +inoccupation +inocencia +inocencio +inocente +inoceramus +inochondroma +inoculable +inoculant +inocular +inoculate +inoculated +inoculates +inoculating +inoculation +inoculations +inoculative +inoculator +inoculum +inoculums +inocystoma +inocyte +inode +inodes +inodorate +inodorous +inodorously +inoffending +inofficial +inofficially +inofficious +inogda +inogen +inogenesis +inogenic +inogenous +inoglia +inohymenitic +inoke +inokeyate +inola +inolith +inoma +inominous +inomyoma +inomyositis +inomyxoma +inone +inoneuroma +inongo +inono +inonu +inopercular +inoperculata +inoperculate +inopinable +inopinate +inopinately +inopine +inoppressive +inoppugnable +inopulent +inor +inorb +inorder +inorderly +inordinacy +inordinary +inordinate +inordinately +inorganical +inorganized +inoriginate +inornate +inosclerosis +inoscopy +inosculate +inosculation +inosic +inosin +inosinic +inosite +inositol +inositols +inostensible +inostensibly +inotropic +inoue +inouye +inower +inoxidable +inoxidizable +inoxidize +inparabola +inpardonable +inpatient +inpatients +inpayment +inpenetrable +inpensioner +inperfection +inpervious +inphase +inplace +inpolygon +inpolyhedron +inport +inposition +inposture +inpour +inpouring +inpours +inpush +input +inputfile +inputoutput +inputs +inputted +inquaintance +inquartation +inquests +inquestual +inquiet +inquietation +inquieting +inquietly +inquietness +inquietude +inquilinae +inquiline +inquilinism +inquilinity +inquilinous +inquinate +inquination +inquir +inquirable +inquirant +inquiration +inquire +inquired +inquirendo +inquirent +inquirer +inquirers +inquires +inquiries +inquiring +inquiringly +inquiry +inquisite +inquisition +inquisitions +inquisitive +inquisitor +inquisitors +inquisitory +inquisitress +inquisitrix +inradius +inreality +inria +inrig +inrigged +inrigger +inrighted +inring +inro +inroader +inroads +inroll +inrollment +inrooted +inrub +inrun +inrunning +inruption +inrush +inrushes +inrushing +insack +insagacity +insalivate +insalivating +insalivation +insalubrious +insalubrity +insalutary +insalvable +insana +insane +insanely +insaneness +insaner +insanest +insanify +insanitary +insanitation +insanities +insanity +insapiency +insapient +insatiable +insatiably +insatiate +insatiated +insatiately +insatiety +insaturable +inscenation +inscibile +inscience +inscient +inscoe +inscribable +inscribe +inscribed +inscriber +inscribers +inscribes +inscribing +inscript +inscriptible +inscription +inscriptions +inscriptive +inscriptured +inscroll +inscrolls +inscrutable +inscrutables +inscrutably +insculp +insculpture +insea +inseam +inseams +insecable +insecta +insectan +insectarium +insectary +insectean +insecteating +insected +insecticidal +insecticides +insectiform +insectifuge +insectile +insectine +insection +insectival +insectivora +insectivore +insectlike +insectmonger +insectologer +insectology +insectproof +insects +insecure +insecurely +insecureness +insecurities +insecurity +insee +inseer +inselberg +inseminated +inseminates +inseminating +insemination +inseminator +inseminators +insenescible +insensate +insensately +insense +insensible +insensibly +insensitive +insensuous +insentience +insentiency +insentient +inseparable +inseparably +inseparate +inseparately +insequent +insert +insertable +inserted +inserter +inserters +inserting +insertion +insertional +insertions +insertive +inserts +inservice +inservient +insessor +insessores +insessorial +inset +insets +insetter +insetters +insetting +inseverable +inseverably +inshave +insheathe +insheathed +insheathing +insheaths +inshell +inshining +inship +inshoe +inshoot +inshrined +inshrines +inshrining +inside +insider +insiders +insides +insidez +insidiosity +insidious +insidiously +insight +insights +insigna +insigne +insignia +insignias +insignisigne +insimplicity +insinai +insincerely +insincerity +insinglass +insinking +insinnia +insinuant +insinuated +insinuates +insinuating +insinuation +insinuations +insinuative +insinuator +insinuators +insinuatory +insinuendo +insipid +insipidity +insipidly +insipidness +insipience +insipient +insipiently +insist +insisted +insistence +insistency +insistent +insistently +insister +insisters +insisting +insistingly +insistive +insists +insite +insititious +insko +insmall +insnare +insnared +insnarement +insnarer +insnaring +insobriety +insociable +insociably +insocial +insocially +insofar +insolate +insolation +insole +insolence +insolency +insolent +insolently +insolentness +insolents +insoles +insolid +insolidity +insolubility +insolubly +insolvably +insolvence +insolvencies +insolvency +insomnia +insomniacs +insomnias +insomnious +insomnium +insomnolence +insomnolency +insomnolent +insomuch +insonorous +insooth +insorb +insorbent +insouciance +insouciantly +insoul +insp +inspan +inspeak +inspect +inspectable +inspected +inspecteur +inspecting +inspectingly +inspection +inspectional +inspections +inspective +inspector +inspectoral +inspectorate +inspectorial +inspectors +inspectress +inspectrix +inspects +inspektor +inspheration +insphere +insphering +inspirable +inspirant +inspiration +inspirations +inspirative +inspirator +inspiratory +inspiratrix +inspire +inspired +inspiredly +inspirer +inspirers +inspires +inspiring +inspiringly +inspirit +inspirited +inspiriter +inspiriting +inspiritment +inspirits +inspirometer +inspissant +inspissate +inspissation +inspissator +inspissosis +inspizient +inspoke +inspoken +inspreith +insqhi +insqti +insque +insructor +inst +instabase +instability +instacheck +instal +install +installable +installant +installation +installboot +installed +installer +installers +installing +installment +installments +installs +installsthe +instals +instance +instanced +instances +instancing +instancy +instanding +instant +instanter +instantial +instantiated +instantiates +instantly +instantness +instants +instar +instarred +instars +instate +instated +instatement +instates +instating +instaurate +instauration +instaurator +instead +instealing +insteam +insteep +instellation +insteps +insterburg +insterburgs +instigant +instigated +instigates +instigating +instigation +instigative +instigator +instigators +instigatrix +instil +instillator +instillatory +instilled +instiller +instillers +instilling +instillment +instills +instilment +instils +instinct +instinctive +instincts +instinctual +instipulate +institor +institorial +institorian +institory +institute +instituted +instituter +instituters +institutes +instituting +institution +institutions +institutive +instituto +institutor +institutors +institutress +institutrix +instonement +instr +instratified +instraw +instrbody +instrcts +instreaming +instrengthen +instressed +instrhead +instroke +instrokes +instrs +instrsubj +instrsum +instrtotal +instruct +instructed +instructedly +instructer +instructers +instructible +instructing +instruction +instructions +instructive +instructor +instructors +instructress +instructs +instrument +instrumental +instrumented +instruments +instuctor +instyler +insuavity +insubduable +insubjection +insubmission +insubmissive +insuccess +insuccessful +insucken +insuetude +insufferably +insufficient +insufflate +insufflation +insufflator +insula +insulance +insulant +insulants +insular +insularism +insularity +insularize +insularly +insulars +insulary +insulate +insulated +insulates +insulating +insulation +insulations +insulator +insulators +insulins +insulize +insulse +insulsity +insult +insultable +insultant +insultation +insulted +insulter +insulters +insulting +insultingly +insultproof +insults +insunk +insuperably +insupposable +insurability +insurable +insurance +insurant +insurants +insure +insured +insureds +insurer +insurers +insures +insurge +insurgence +insurgences +insurgencies +insurgency +insurgentism +insurgently +insurgents +insuring +insurrection +insurrectory +insusceptive +insuspense +insv +inswamp +inswarming +insweeping +inswell +inswept +inswing +inswinger +intabulate +intact +intactile +intactly +intactness +intagli +intagliated +intagliation +intaglio +intaglios +intagliotype +intake +intaken +intaker +intakes +intangible +intangibles +intangibly +intarissable +intarsia +intarsias +intarsiate +intarsist +intastable +intaxable +intech +inteference +integ +integer +integers +integr +integral +integrality +integralize +integrally +integrals +integrant +integraph +integrate +integrated +integrates +integrating +integration +integrations +integrative +integrator +integrierte +integrierter +integrious +integriously +integrities +integrity +integumental +integuments +inteind +intel +intellect +intellected +intellection +intellective +intellects +intellectual +intellested +intellicorp +intelligence +intelligency +intelligent +intelligibly +intelligize +intellihance +intellitech +intelsat +intemann +intemerate +intemerately +intemeration +intemperable +intemperably +intempestive +intemporal +intemporally +intenability +intenable +intenancy +intenational +intend +intendance +intendancies +intendancy +intendantism +intended +intendedly +intendedness +intendeds +intendence +intendencia +intendencias +intender +intenders +intendest +intendible +intending +intendingly +intendit +intendment +intends +intenerate +inteneration +intenible +intensate +intensation +intensative +intense +intensely +intenseness +intenser +intensest +intensified +intensifier +intensifiers +intensifies +intensify +intensifying +intension +intensional +intensities +intensitive +intensity +intensive +intensively +intensives +intent +intention +intentional +intentioned +intentions +intentive +intentively +intently +intentness +intents +intepreted +inter +interaccess +interaccuse +interacinar +interacinous +interact +interacted +interacting +interaction +interactions +interactive +interacts +interagency +interagent +interagree +interalar +interallied +interally +interamnia +interamnian +interandean +interandine +interangular +interanimate +interannular +interarch +interarmy +interarrival +interassure +interastral +interatomic +interatrial +interaulic +interaural +interaxal +interaxial +interaxis +interbalance +interbanded +interbank +interbanking +interbase +interbedded +interblend +interblock +interbody +interbonding +interborough +interbourse +interbrain +interbranch +interbreath +interbred +interbreed +interbreeds +interbrigade +interbring +interbrood +intercadence +intercadent +intercal +intercalare +intercalary +intercalated +intercalates +intercale +intercalm +intercanal +intercarotid +intercarpal +intercarrier +intercaste +intercede +interceded +interceder +intercedes +interceding +intercensal +intercentral +intercentrum +intercept +intercepted +intercepter +intercepting +interceptive +interceptor +interceptors +intercepts +intercession +intercessive +intercessor +intercessors +intercessory +interchaff +interchange +interchanged +interchanger +interchanges +interchannel +interchapter +intercharge +interchase +intercheck +interchoke +interchurch +intercidona +interciliary +intercilium +intercipient +intercircle +intercision +intercity +intercivic +interclash +interclasp +interclass +intercloud +interclub +interclusion +intercoastal +intercollege +intercolline +intercolumn +intercom +intercombat +intercombine +intercome +intercommon +intercommune +intercompany +intercompare +intercoms +interconal +interconnect +intercooler +intercooling +intercosmic +intercostal +intercotylar +intercounty +intercourse +intercoxal +intercranial +intercreate +intercrinal +intercrop +intercross +intercrural +intercrust +interculture +intercurl +intercurrent +intercut +intercuts +intercystic +interdash +interdata +interdebate +interdental +interdentil +interdepend +interdespise +interdevour +interdicted +interdicting +interdiction +interdictive +interdictor +interdictory +interdicts +interdictum +interdiffuse +interdigital +interdine +interdiscal +interdome +interdorsal +interdrink +intereat +interegional +interempire +interenjoy +interesa +interesno +interesov +interessee +interest +interested +interestedly +interester +interesting +interestless +interests +interesuet +interfac +interface +interfaced +interfacer +interfaces +interfacial +interfacing +interfaith +interfamily +interfault +interfector +interfemoral +interferant +interfere +interfered +interference +interferent +interferer +interferers +interferes +interfering +interferon +interferric +interfertile +interfibrous +interfilar +interfile +interfiled +interfiles +interfiling +interfinger +interfirm +interflange +interflow +interfluence +interfluent +interfluous +interfluve +interfluvial +interflux +interfold +interfoliar +interfoliate +interforce +interframe +interfret +interfretted +interfrontal +interfulgent +interfuse +interfused +interfusing +interfusion +intergate +intergential +intergesture +intergilt +interglacial +interglyph +intergossip +intergrade +intergraft +intergrapple +intergrave +intergroup +intergroupal +intergrow +intergrown +intergrowth +intergular +intergyral +interhemal +interhostile +interhuman +interhyal +interim +interimist +interimistic +interims +interinsert +interinsular +interinsurer +interinvolve +interionic +interior +interiority +interiorize +interiorized +interiorizes +interiorly +interiorness +interiors +interiour +interisland +interj +interjacence +interjacency +interjacent +interjangle +interjected +interjecting +interjection +interjector +interjectors +interjectory +interjects +interjoin +interjoist +interkinesis +interkinetic +interknit +interknot +interknow +interkosmos +interlace +interlaced +interlacedly +interlacery +interlaces +interlachen +interlacing +interlaid +interlake +interlaken +interlaminar +interland +interlap +interlapse +interlard +interlarded +interlarding +interlards +interlay +interlaying +interlays +interleaf +interleague +interleave +interleaved +interleaver +interleaves +interleaving +interlenghi +interlibel +interlibrary +interlie +interlight +interline +interlineal +interlinear +interlineary +interlineate +interlined +interliner +interlines +interlingua +interlingual +interlining +interlink +interlinked +interlinks +interlisp +interloan +interlobar +interlobate +interlobular +interlocal +interlocally +interlocate +interlochen +interlock +interlocked +interlocker +interlocking +interlocks +interlocular +interloculus +interlocus +interlocutor +interloop +interlope +interloped +interloper +interlopers +interlopes +interloping +interlot +interlucent +interluder +interludes +interludial +interlunar +interlying +intermachine +intermail +intermammary +intermarine +intermarried +intermarries +intermarry +intermason +intermastoid +intermat +intermatch +intermaxilla +intermaze +intermeal +intermeasure +intermeddle +intermeddler +intermediacy +intermediae +intermedial +intermediate +intermedium +intermedius +intermeet +intermelt +intermembral +interment +intermental +intermention +interments +intermesh +intermeshed +intermeshes +intermeshing +intermessage +intermew +intermewed +intermewer +intermezzi +intermezzo +intermezzos +interminable +interminably +interminant +interminate +intermine +intermingle +intermingled +intermingles +intermission +intermissive +intermitent +intermits +intermitted +intermittent +intermitter +intermitting +intermix +intermixed +intermixedly +intermixes +intermixing +intermixtly +intermixture +intermodal +intermodule +intermolar +intermontane +intermotion +intermundane +intermundial +intermundian +intermundium +intermural +intermute +intermutual +intermutule +internal +internality +internalize +internalized +internalizes +internally +internalness +internals +internarial +internasal +internation +interne +interneciary +internecinal +internecion +internecive +interned +internee +internees +interner +internes +internet +internetbar +internets +internetted +internetwork +interneural +internidal +interning +internist +internists +internment +internments +interno +internobasal +internodal +internode +internodes +internodial +internodian +internodium +internodular +interns +internship +internships +internuclear +internumeral +internuncial +internuncio +internuncios +internuncius +internuptial +interoceanic +interoceptor +interocular +interoffice +interolivary +interoperate +interopercle +interoptic +interorbital +interosseal +interosseous +interpage +interparty +interpause +interpave +interpeal +interpel +interpellant +interpellate +interpervade +interphase +interphone +interphones +interpiece +interplait +interplant +interplay +interplays +interplea +interplead +interpleader +interpledge +interpleural +interplical +interplicate +interplight +interpmode +interpoint +interpolable +interpolar +interpolary +interpolated +interpolater +interpolates +interpolator +interpole +interpolity +interpolymer +interpone +interportal +interposable +interposal +interpose +interposed +interposer +interposers +interposes +interposing +interposit +interposure +interpour +interprater +interpret +interpreted +interpreter +interpreters +interpreting +interpretive +interprets +interprocess +interproduce +interpubic +interpunct +interquarrel +interquarter +interrace +interracial +interradial +interradiate +interradium +interradius +interrailway +interramal +interreceive +interrecord +interred +interregal +interregna +interregnal +interregnums +interreign +interreklama +interrelate +interrelated +interrelates +interrenal +interrer +interrex +interrhyme +interright +interring +interriven +interroad +interrogable +interrogant +interrogate +interrogated +interrogatee +interrogates +interrogator +interrogee +interroom +interrpt +interrule +interrun +interrup +interrupt +interrupted +interrupter +interrupters +interrupting +interruption +interruptive +interruptor +interruptory +interrupts +inters +intersale +intersalute +interscene +interschool +interscience +interscope +interscribe +interseamed +intersectant +intersected +intersecting +intersection +intersector +intersects +interseminal +interseptal +intersertal +intersession +interset +intersex +intersexual +intershade +intershock +intershoot +intershop +intersign +intersituate +intersocial +intersociety +intersole +intersoluble +intersolv +intersomnial +intersonant +intersow +interspace +interspatial +interspeaker +interspecial +interspecies +interspersal +interspersed +intersperses +interspheral +intersphere +interspinal +interspinous +interspiral +intersporal +intersputnik +intersqueeze +interstadial +interstage +interstat +interstate +interstates +interstation +interstellar +intersterile +intersternal +interstice +intersticed +interstices +intersticial +intersting +interstreak +interstream +interstreet +interstrial +interstrive +intersystem +intertain +intertalk +intertangle +intertangled +intertangles +intertarsal +intertask +interteam +intertergal +intertexture +interthing +intertidal +intertie +interties +intertill +intertillage +intertinge +intertissued +intertoll +intertone +intertongue +intertonic +intertouch +intertown +intertrace +intertrade +intertrading +intertraffic +intertragian +intertree +intertribal +intertrigo +intertropic +intertropics +intertrude +intertuberal +intertubular +intertwin +intertwine +intertwined +intertwines +intertwining +intertwist +intertype +interungular +interunion +interurban +intervaginal +interval +intervale +intervalley +intervallic +intervallum +intervals +intervarsity +intervary +intervein +interveinal +intervenant +intervene +intervened +intervener +interveners +intervenes +intervenient +intervening +intervenium +intervention +interventive +interventor +interventral +intervenular +interverbal +interversion +intervert +interview +interviewed +interviewees +interviewer +interviewers +interviewing +interviews +intervillous +intervisible +intervisit +intervista +intervital +intervocal +intervocalic +intervolute +intervolve +interwar +interweave +interweaved +interweaver +interweaves +interweaving +interwed +interweld +interwhiff +interwhile +interwhistle +interwind +interwish +interword +interwork +interworking +interworks +interworld +interworry +interwound +interwove +interwoven +interwovenly +interwrap +interwreathe +interwrought +interxylary +interzonal +interzone +intestable +intestacy +intestation +intestinally +intestine +intestines +intesting +intext +intextine +intexture +intha +inthanon +inthe +inthral +inthrall +inthralled +inthralling +inthrallment +inthrong +inthronistic +inthronize +inthrow +inthrust +inti +intially +intibuca +intifadah +intihar +intil +intilligent +intima +intimacies +intimacy +intimate +intimated +intimately +intimateness +intimaters +intimates +intimating +intimation +intimations +intimidate +intimidated +intimidates +intimidating +intimidation +intimidator +intimidatory +intimidity +intimity +intinction +intine +intinerant +intis +intitle +intitled +intitling +intitule +intj +intl +intleadino +intlesat +intmediate +into +intoccabili +intoed +intolerable +intolerably +intolerance +intolerancy +intolerant +intolerantly +intolerated +intolerating +intoleration +intomb +intombing +intombs +intonable +intonating +intonation +intonations +intonator +intoned +intonement +intoner +intoners +intones +intoning +intoothed +intopic +intorsion +intort +intortillage +intosh +intothe +intown +intoxation +intoxicable +intoxicants +intoxicated +intoxicates +intoxicating +intoxication +intoxicative +intoxicator +intoyour +intp +intplan +intr +intra +intrabiontic +intrabred +intrabuccal +intracardiac +intracardial +intracarpal +intrachordal +intracistern +intracity +intraclass +intracloacal +intracoastal +intracolic +intracompany +intracosmic +intracostal +intracranial +intractable +intractably +intractile +intracystic +intrada +intradermal +intradermic +intradermo +intrados +intradural +intrafactory +intrafusal +intragastric +intragemmal +intraglacial +intragroup +intragroupal +intragyral +intrahepatic +intrahyoid +intraisland +intrait +intrajugular +intraline +intralingual +intralobar +intralobular +intralocular +intralogical +intralumbar +intramachine +intramammary +intramastoid +intramental +intramontane +intramundane +intramural +intramurally +intranarial +intranasal +intranatal +intraneous +intranet +intranets +intranetware +intranetwork +intraneural +intranidal +intranode +intranquil +intrans +intransient +intransigent +intrant +intranuclear +intraoctave +intraocular +intraoffice +intraoral +intraorbital +intraossal +intraosseous +intraosteal +intraovarian +intrap +intrapair +intraparty +intrapelvic +intrapial +intraplant +intrapleural +intrapolar +intrapolymer +intrapontine +intraprocess +intrapsychic +intrapyretic +intrarectal +intrarenal +intraretinal +intraschool +intrascrotal +intrasegment +intrasellar +intraseminal +intraseptal +intraserous +intrashop +intraspinal +intrastate +intrastromal +intratarsal +intrathecal +intrathyroid +intratomic +intratubal +intratubular +intratwin +intrauterine +intravaginal +intravenous +intraverbal +intravesical +intravital +intraxylary +intreat +intreated +intreaties +intreating +intreaty +intrench +intrenchant +intrenched +intrencher +intrenches +intrenchment +intrepid +intrepidity +intrepidly +intrepidness +intrerrupt +intricacies +intricacy +intricate +intricately +intrication +intrigant +intrigued +intriguer +intriguers +intriguery +intrigues +intriguess +intriguing +intriguingly +intriligator +intrine +intrinse +intrinsic +intrinsical +intro +introactive +introbox +introception +introceptive +introdden +introduce +introduced +introducee +introducer +introducers +introduces +introducible +introducing +introduction +introductive +introductor +introductory +introflex +introflexion +introits +introitus +introjection +introjective +intromission +intromissive +intromit +intromits +intromitted +intromittent +intromitter +intromitting +intropulsive +introrsal +introrse +introrsely +intros +introspector +introsuction +introsuscept +introvenient +introverse +introversion +introversive +introvert +introverted +introvertive +introverts +introvision +intrudance +intrude +intruded +intruder +intruders +intrudes +intruding +intrudingly +intrudress +intruse +intrusion +intrusional +intrusionism +intrusionist +intrusions +intrusive +intrusively +intrust +intrusted +intrusting +intrusts +ints +intubate +intubated +intubates +intubation +intubator +intube +intue +intuent +intuicity +intuit +intuited +intuiting +intuition +intuitional +intuitionism +intuitionist +intuitions +intuitive +intuitively +intuitivism +intuitivist +intuito +intuits +intumesce +intumescence +intumescent +intune +inturbidate +inturn +inturned +inturning +intussuscept +intwine +intwined +intwines +intwining +intwist +intwisted +intwists +inubu +inuendo +inuit +inuk +inuktitut +inula +inulaceous +inulase +inulin +inuloid +inumbrate +inumbration +inunct +inunction +inunctum +inunctuosity +inunctuous +inundable +inundant +inundated +inundates +inundating +inundation +inundations +inundator +inundatory +inupiaq +inupiat +inupik +inurbane +inurbanely +inurbaneness +inurbanity +inured +inuredness +inurement +inurements +inures +inuring +inurn +inurns +inuse +inusitate +inusitation +inustion +inutile +inutilely +inutility +inutilized +inutterable +inuvaken +inuya +invaccinate +invadable +invade +invaded +invader +invaders +invades +invading +invaginable +invaginate +invagination +invain +invalescence +invalid +invalidate +invalidated +invalidates +invalidating +invalidation +invalidator +invalidcy +invalided +invalidhood +invaliding +invalidish +invalidism +invalidities +invalidity +invalidly +invalidness +invalids +invalidship +invalorous +invaluable +invaluably +invalued +invar +invariably +invariance +invariancy +invariant +invariantive +invariantly +invariants +invaried +invasion +invasionist +invasions +invasiveness +invecked +invecom +invected +invection +invectively +invectives +invectivist +invector +inveighed +inveigher +inveighing +inveighs +inveigled +inveiglement +inveigler +inveiglers +inveigles +inveigling +inveil +invein +invendible +invenient +invent +inventable +inventary +invented +inventer +inventers +inventful +inventible +inventing +invention +inventional +inventions +inventively +inventor +inventorial +inventoried +inventories +inventors +inventory +inventorying +inventress +inventresses +invents +inventurous +invenzione +inveracious +inveracity +invercassley +inverclyde +inverity +inverminate +invernacular +invernada +invernesses +inversable +inversatile +inverse +inversed +inversedly +inversely +inverses +inversion +inversionist +inversions +inversive +invert +invertase +invertebracy +invertebral +invertebrata +inverted +invertedly +invertend +inverter +inverters +invertile +invertin +inverting +invertive +invertor +invertors +inverts +invest +investable +invested +investiages +investible +investigable +investigate +investigated +investigates +investigator +investing +investitive +investitor +investiture +investitures +investm +investment +investments +investor +investors +invests +inveteracy +inveterately +inviability +inviably +invictive +invidiously +invigilance +invigilancy +invigilation +invigilator +invigor +invigorant +invigorated +invigorates +invigorating +invigoration +invigorative +invigorator +invinate +invination +invincibly +inviolable +inviolably +inviolacy +inviolated +inviolately +invious +invirile +invirility +invirtuate +inviscate +inviscation +inviscid +inviscidity +invised +invisibile +invisibility +invisible +invisibly +invitable +invital +invitant +invitation +invitational +invitations +invitatory +invite +invited +invitees +invitement +inviter +inviters +invites +invitiate +inviting +invitingly +invitingness +invitress +invivid +invocable +invocant +invocated +invocates +invocating +invocation +invocational +invocations +invocative +invocator +invocatory +invoice +invoiced +invoices +invoicing +invoke +invoked +invoker +invokers +invokes +invoking +involatile +involatility +involucel +involucral +involucrate +involucre +involucred +involucres +involucrum +involuntary +involuted +involutedly +involutely +involutes +involuting +involutional +involutions +involve +involved +involvedly +involvedness +involvement +involvements +involvent +involver +involvers +involves +involving +invulnerable +invulnerably +invultuation +inwale +inwall +inwandering +inward +inwardly +inwardness +inwards +inwatch +inwater +inweave +inweaved +inweaves +inweaving +inwedged +inweed +inweek +inweight +inwick +inwind +inwinding +inwinds +inwit +inwith +inwood +inwork +inworn +inwound +inwoven +inwrap +inwrapment +inwrapped +inwrapping +inwreathe +inwrit +inwrought +inxokvari +inxs +inyangatom +inyima +inyimang +inyo +inyoite +inyoke +inyokern +inyven +ioan +ioana +ioani +ioannina +ioannis +ioannisiani +ioannou +iocca +iocntrl +iocs +ioctl +iodamoeba +iodation +iodhydrate +iodhydric +iodhydrin +iodic +iodides +iodiferous +iodin +iodinating +iodination +iodine +iodines +iodinium +iodinophil +iodinophilic +iodism +iodite +iodization +iodize +iodized +iodizer +iodizers +iodizes +iodizing +iodo +iodobehenate +iodobenzene +iodobromite +iodocasein +iodochloride +iodochromate +iodocresol +iododerma +iodoethane +iodoform +iodoforms +iodogallicin +iodohydrate +iodohydric +iodohydrin +iodol +iodomethane +iodometric +iodometrical +iodometry +iodonium +iodopsin +iodoso +iodospongin +iodotannic +iodotherapy +iodothyrin +iodous +iodoxy +iodyrite +iola +iolanda +iolande +iolanthe +iolite +iolo +ioma +iomega +iona +ione +ioni +ionia +ionian +ionicism +ionicity +ionicization +ionicize +ionics +ionidium +ionise +ionised +ionises +ionising +ionism +ionist +ionium +ioniums +ionizable +ionization +ionizations +ionize +ionized +ionizer +ionizers +ionizes +ionizing +ionogen +ionogenic +ionone +ionornis +ionospheres +ionov +ionoxalis +ions +ionvax +iooc +ioparameters +iordache +ioreth +iorgu +iorlas +iormina +iort +iortn +ioscan +iosga +iosifescu +ioskeha +iota +iotacism +iotacismus +iotacist +iotas +iotization +iotize +ioui +ioullemmeden +iowa +iowacity +iowafalls +iowan +iowans +iowapark +ioway +iowt +ioys +ipac +ipaddress +ipadmin +ipalapa +ipale +ipande +ipanga +ipava +ipconfig +ipconsole +ipcress +ipeca +ipecacs +ipecacuanha +ipecacuanhic +ipekatapuia +ipere +ipfw +iphdr +iphedeiah +iphigenia +iphigenie +iphighenia +iphimedia +iphis +ipid +ipidae +ipifantsev +ipiko +ipikoi +ipil +ipili +ipilipaiela +ipilipayala +ipitineri +ipixuna +ipkts +iplab +iplay +ipoh +ipomea +ipomoea +ipomoein +ippolito +ipsa +ipsc +ipseand +ipsedixitish +ipsedixitism +ipsedixitist +ipseity +ipsentry +ipsilanti +ipspeed +ipstein +ipswich +ipswitch +ipunu +ipuricoto +ipurina +ipxfer +iqlim +iquique +iquita +iquito +iquitos +iraan +irabu +irabujima +iracund +iracundity +iracundulous +irad +irade +irades +irahu +irahutu +iraj +irak +irakli +iraklion +iraku +iram +iramba +iran +iranche +irangi +irani +iranians +iranic +iraniraq +iranism +iranist +iranize +iranoff +iranon +irantxe +iranum +iranun +iranxe +iranzo +iraq +iraqi +iraqian +iraqis +iraqsaudi +iraqw +irarutu +iras +irasburg +irascent +irascibility +irascible +irascibly +irasema +irate +irately +irateness +irater +iratest +irava +irawan +iraya +irbid +irbil +irbore +ircam +ircbellcore +ircc +irccar +ircmarket +ircmer +ircmtl +ircstandards +irect +ired +iredell +ireful +irefully +irefulness +iregwe +irelan +ireland +irelander +irelandtolai +ireless +iren +irena +irenaea +irenarch +irene +irenic +irenical +irenically +irenicism +irenicist +irenicon +irenics +irenicum +ireport +ireqrobot +ires +iresim +iresine +iret +ireton +iretzky +irfan +irfanview +irgun +irgunist +irhobo +iria +irian +irianese +iriarte +iriartea +iriarteaceae +iribarren +irice +iricism +iricize +irick +irid +iridaceae +iridaceous +iridadenosis +iridal +iridalgia +iridate +iridauxesis +iridectome +iridectomies +iridectomize +iridectomy +iridemia +irideous +irideremia +irides +iridesce +iridescence +iridescences +iridescency +iridescent +iridescently +iridial +iridian +iridiate +iridic +iridical +iridin +iridine +iridiocyte +iridiophore +iridious +iridite +iridiums +iridization +iridize +iridocele +iridocyte +iridodesis +iridodonesis +iridokinesia +iridomalacia +iridomotor +iridomyrmex +iridoncus +iridophore +iridoplegia +iridoptosis +iridorhexis +iridos +iridosmine +iridosmium +iridotasis +iridotome +iridotomy +irie +iriemkena +iriga +irigwe +irijah +irina +irinac +iring +iringa +iriomote +iris +irisa +irisated +irisation +iriscope +irised +irises +irish +irishborn +irisher +irishi +irishian +irishism +irishize +irishly +irishman +irishness +irishry +irishwoman +irishwomen +irishy +irisi +irisin +irising +irislike +irisroot +irita +irith +iritic +iritis +irix +irizarry +irked +irking +irks +irksomely +irksomeness +irkutsk +irle +irma +irman +irmaos +irmela +irmgard +irmintraud +irmo +irna +irnahash +irodache +iroha +irok +iroko +iron +ironback +ironbar +ironbark +ironbelt +ironbound +ironbush +ironcity +ironclad +ironclads +irondale +irone +ironed +ironer +ironers +irones +ironfisted +ironflower +irongate +irongray +ironhanded +ironhandedly +ironhard +ironhead +ironheaded +ironhearted +ironia +ironic +ironical +ironically +ironicalness +ironice +ironies +ironing +ironings +ironish +ironism +ironist +ironists +ironize +ironless +ironlike +ironly +ironmaker +ironmaking +ironman +ironmaster +ironmonger +ironmongery +ironmountain +ironness +ironore +ironplated +ironridge +ironriver +irons +ironshod +ironshot +ironsided +ironsides +ironsmith +ironsmiths +ironstation +ironstones +ironton +ironware +ironwares +ironweed +ironwoods +ironwork +ironworked +ironworker +ironworkers +ironworking +ironworks +ironwort +iroquoian +iroquoians +irota +irpedina +irpeel +irpex +irradiance +irradiancy +irradiant +irradiated +irradiates +irradiating +irradiation +irradiations +irradiative +irradiator +irradicable +irradicate +irradicated +irrarefiable +irrationable +irrationably +irrational +irrationally +irrationals +irreal +irreality +irrealizable +irrebuttable +irreceptive +irreciprocal +irreclaimed +irreconcile +irrecordable +irrecusable +irrecusably +irredeemably +irredeemed +irredenta +irredential +irredentists +irreducibly +irreductible +irreduction +irreferable +irreflection +irreflective +irreflexive +irreformable +irrefragable +irrefragably +irrefusable +irrefutable +irrefutably +irregardless +irregeneracy +irregenerate +irregular +irregularism +irregularist +irregularity +irregularize +irregularly +irregulars +irregulate +irregulated +irregulation +irrelate +irrelated +irrelation +irrelative +irrelatively +irrelevance +irrelevances +irrelevant +irrelevantly +irrelievable +irreligion +irreligious +irreluctant +irremeable +irremeably +irremediably +irremissible +irremissibly +irremission +irremissive +irremovably +irrenderable +irrenewable +irrepair +irrepairable +irreparably +irrepassable +irrepealable +irrepealably +irrepentance +irrepentant +irreplacable +irreportable +irrepressive +irreprovable +irreprovably +irreptitious +irrepublican +irrer +irresilient +irresistance +irresistible +irresistibly +irresoluble +irresolutely +irresolved +irresolvedly +irresonance +irresonant +irrespectful +irrespective +irrespirable +irresponsive +irresultive +irretention +irretentive +irreticence +irreticent +irretractile +irrevealable +irrevealably +irreverence +irreverences +irreverend +irreverendly +irreverently +irreversibly +irrevertible +irreviewable +irrevisable +irrevocably +irrevoluble +irridescent +irrigable +irrigably +irrigant +irrigate +irrigated +irrigates +irrigating +irrigation +irrigational +irrigations +irrigative +irrigator +irrigatorial +irrigators +irrigatory +irrigon +irriguous +irrision +irrisor +irrisoridae +irrisory +irritability +irritable +irritably +irritament +irritancies +irritancy +irritants +irritated +irritatedly +irritates +irritating +irritatingly +irritation +irritations +irritative +irritator +irritatory +irritila +irritomotile +irrorate +irrotational +irruan +irrubrical +irrupt +irrupted +irruptible +irrupting +irruptions +irruptive +irruptively +irrupts +irshemesh +irskine +irtual +irtysh +iruan +irula +irular +irulian +iruliga +iruligar +irumu +irungi +irupidrageli +irutu +irvin +irvine +irving +irvingesque +irvingiana +irvingism +irvingite +irvington +irvona +irwin +irwinville +isaac +isaach +isaacs +isaak +isaalung +isaban +isabe +isabeau +isabel +isabela +isabelina +isabelita +isabell +isabella +isabelle +isabelline +isabells +isabi +isabnormal +isabus +isachanure +isaconitine +isacoustic +isadelphous +isadora +isafjordhur +isagoge +isagogic +isagogical +isagogically +isagogics +isagon +isahella +isaiah +isaian +isak +isaki +isakovic +isal +isala +isallobar +isallotherm +isalso +isam +isamal +isambeau +isamine +isams +isamu +isan +isana +isander +isandrous +isanemone +isanga +isangele +isangi +isangu +isanomal +isanomalous +isanthous +isanti +isanzu +isao +isapi +isapostolic +isar +isara +isarco +isaria +isarioid +isarog +isatai +isatate +isatic +isatide +isatin +isatinic +isatis +isatogen +isatogenic +isaurian +isavailable +isavel +isawa +isaware +isazoxy +isba +isberga +isbert +isbister +isbn +iscah +iscariot +iscariotic +iscariotical +iscariotism +ischemia +ischemic +ischen +ischenko +ischiac +ischiadic +ischiadicus +ischiagra +ischial +ischialgia +ischialgic +ischiatic +ischidrosis +ischioanal +ischiobulbar +ischiocaudal +ischiocele +ischiocerite +ischioiliac +ischiopodite +ischiopubic +ischiopubis +ischiorectal +ischiosacral +ischiotibial +ischium +ischocholia +ischuretic +ischuria +ischury +ischyodus +iscobaquebu +isconahua +iscopyright +iscose +iscove +isdmnl +isdn +isdres +iseabal +iseabella +isebanganen +isebe +isec +isedal +isegrim +isekiri +isela +iselemaotu +iselin +isen +isene +isenergic +isengard +isengarders +isengrim +isenmouthe +isenor +isensee +isenyi +isepiptesial +isepiptesis +isergina +iseri +iserine +iserite +isert +isethionate +isethionic +iseum +isfahani +isfan +isfor +isgrow +ishak +ishakw +isham +ishan +ishaq +ishare +isharon +ishay +ishbah +ishbak +ishbibenob +ishbosheth +ishbukun +ishe +ishee +ishekiri +isher +isherwood +ishi +ishia +ishiah +ishiama +ishibashi +ishibori +ishida +ishielu +ishigaki +ishiguro +ishihara +ishii +ishijah +ishikawa +ishim +ishimalilia +ishimoto +ishinyiha +ishira +ishisafwa +ishkashim +ishkashimi +ishkashmi +ishkoman +ishma +ishmael +ishmaelite +ishmaelites +ishmaelitic +ishmaelitish +ishmaelitism +ishmaiah +ishmail +ishmeelite +ishmeelites +ishmerai +ishod +ishpan +ishpeming +ishpi +ishpingo +ishshakku +ishtivi +ishtob +ishua +ishuah +ishuai +ishuatan +ishui +ishwar +isiac +isiacal +isibiri +isidae +isidiiferous +isidioid +isidiose +isidis +isidium +isidoid +isidor +isidora +isidore +isidorian +isidoric +isidoro +isidro +isiin +isildur +isilololo +isimbi +isin +isinai +isinay +isindazole +isindebele +isindex +isintended +isiokpo +isiolo +isip +isipiki +isira +isirania +isirawa +isiro +isis +isiswazi +isits +isixhosa +isize +isizulu +iskandar +iskandarani +iskandariyah +iskanja +isken +iskenderun +isko +iskra +iskre +iskut +isky +isla +islam +islami +islamic +islamism +islamist +islamistic +islamists +islamite +islamitic +islamitish +islamization +islamize +islamorada +island +islandcity +islanded +islander +islanders +islandfalls +islandgrove +islandhood +islandic +islanding +islandish +islandlake +islandless +islandlike +islandman +islandpark +islandpond +islandress +islandry +islands +islandssanta +islandswest +islandton +islandwide +islandy +islas +islay +isle +isleapyear +isled +islelamotte +isleless +isleofpalms +isleofwight +isles +islesboro +islesford +islesman +islet +isleta +isleted +isleton +islets +isleward +isley +isling +islip +islipterrace +islot +ismachiah +ismael +ismaelism +ismaelite +ismaelitic +ismaelitical +ismaelitish +ismaiah +ismail +ismaili +ismailia +ismailian +ismailite +ismailiyah +ismal +ismap +ismatic +ismatical +ismay +ismdom +ismene +ismenuact +ismost +isms +ismy +isnag +isnardia +isnay +isneg +isno +isnot +isnt +isoabnormal +isoallyl +isoamarine +isoamide +isoamyl +isoamylamine +isoamylene +isoamylethyl +isoamylidene +isoantibody +isoantigen +isoapiole +isoaurore +isobar +isobarbaloin +isobare +isobaric +isobarism +isobars +isobase +isobath +isobathic +isobe +isobel +isobilateral +isobilianic +isobj +isoborneol +isobornyl +isobront +isobronton +isobutane +isobutyl +isobutylene +isobutyrate +isobutyric +isobutyryl +isocamphor +isocamphoric +isocaproic +isocardia +isocardiidae +isocarpic +isocarpous +isocellular +isocenio +isocephalic +isocephalism +isocephalous +isocephaly +isocercal +isocercy +isochasm +isochasmic +isocheim +isocheimal +isocheimenal +isocheimic +isocheimonal +isochlor +isocholanic +isochor +isochoric +isochromatic +isochronally +isochrone +isochronic +isochronical +isochronism +isochronize +isochronon +isochroous +isocitric +isoclasite +isoclimatic +isoclinal +isoclines +isoclinic +isocodeine +isocola +isocolic +isocolon +isocoria +isocorydine +isocoumarin +isocracy +isocrat +isocratic +isocreosol +isocrotonic +isocrymal +isocryme +isocrymic +isocyanate +isocyanic +isocyanide +isocyanine +isocyano +isocyanogen +isocyanurate +isocyanuric +isocyclic +isocymene +isocytic +isodactylism +isodactylous +isodata +isodiabatic +isodialuric +isodiametric +isodiazo +isodiazotate +isodimorphic +isodomic +isodomous +isodomum +isodont +isodontous +isodrome +isodulcite +isodurene +isodynamia +isodynamic +isodynamical +isoelectric +isoelemicin +isoemodin +isoenergetic +isoerucic +isoetaceae +isoetales +isoetes +isoeugenol +isoflavone +isoflor +isoft +isogamete +isogametic +isogametism +isogamic +isogamous +isogamy +isogawa +isogen +isogenesis +isogenetic +isogenic +isogenotype +isogenotypic +isogenous +isogeny +isogeotherm +isogloss +isoglossal +isognathism +isognathous +isogon +isogonal +isogonality +isogonally +isogonic +isogoniostat +isogonism +isograft +isogram +isograph +isographic +isographical +isography +isogynous +isohaline +isohalsine +isohel +isoheptane +isohexyl +isohydric +isohyet +isohyetal +isoimmune +isoimmunity +isoimmunize +isoindazole +isoindigotin +isoindole +isoionone +isoka +isokeraunic +isoko +isokontae +isokontan +isokurtic +isola +isolability +isolable +isolapachol +isolatable +isolate +isolated +isolatedly +isolates +isolating +isolation +isolationism +isolationist +isolations +isolative +isolator +isolators +isolda +isole +isolecithal +isolect +isoleucine +isolevel +isolichenin +isolinolenic +isolla +isolog +isologous +isologs +isologue +isology +isoloma +isolysin +isolysis +isom +isomagnetic +isomaltose +isomastigate +isomelamine +isomenthone +isomera +isomere +isomeric +isomerical +isomerically +isomeride +isomerism +isomerize +isomerizing +isomerous +isomers +isomery +isometric +isometrical +isometrics +isometries +isometropia +isometry +isomorphism +isomorphisms +isomorphous +isomorphs +isomyaria +isomyarian +isoneph +isonephelic +isonergic +isongo +isonicotinic +isonitramine +isonitrile +isonitroso +isonomic +isonomous +isonomy +isonuclear +isonville +isonym +isonymic +isonymy +isooleic +isoosmosis +isopachous +isopag +isoparaffin +isopectic +isopenko +isopentane +isoperimeter +isoperimetry +isopetalous +isophanal +isophane +isophasal +isophene +isophoria +isophorone +isophthalic +isophthalyl +isophyllous +isophylly +isopicramic +isopiestic +isoplere +isopleura +isopleural +isopleuran +isopleurous +isopod +isopoda +isopodan +isopodiform +isopodous +isopogonous +isopolite +isopolitical +isopolity +isopoly +isoprene +isopropanol +isopropenyl +isopropyl +isopsephic +isopsephism +isoptera +isopterous +isoptic +isopulegone +isopurpurin +isopycnic +isopyre +isopyromucic +isopyrrole +isoquinine +isoquinoline +isora +isorcinol +isorhamnose +isorhodeose +isorithm +isorosindone +isorrhythmic +isorropic +isort +isosaccharic +isosaccharin +isoscele +isosceles +isoscope +isoseismal +isoseismic +isoseismical +isoseist +isoserine +isosmotic +isospondyli +isospore +isosporic +isosporous +isospory +isostasist +isostasy +isostatic +isostatical +isostemonous +isostemony +isostere +isosteric +isosterism +isosuccinic +isosulphide +isosultam +isotac +isoteles +isotely +isotheral +isothere +isothermally +isothermic +isothermical +isothermous +isotherms +isothiocyano +isothujone +isotimal +isotome +isotomous +isotonia +isotonic +isotonically +isotonicity +isotony +isotopes +isotopically +isotopism +isotopy +isotrehalose +isotria +isotron +isotrope +isotropism +isotropous +isotta +isotype +isotypic +isotypical +isovalerate +isovaleric +isovalerone +isovaline +isovanillic +isoview +isovoluminal +isoxanthine +isoxazine +isoxazole +isoxime +isoxylene +isoyohimbine +isozooid +ispa +ispaghul +ispah +ispahan +isparta +ispell +ispravi +ispravnik +isps +ispy +isql +israel +israeli +israelibuilt +israelis +israelism +israelite +israelites +israelitic +israelitish +israelitism +israelitize +issa +issaag +issac +issachar +issala +issam +issan +issana +issanguila +issaquah +issarangkui +issarangkul +issas +issedoi +issedones +issei +isseis +issel +isself +issenyi +issha +isshiah +issi +issia +issie +issilita +issite +issn +issuable +issuably +issuances +issue +issued +issuedsix +issueless +issuer +issuers +issues +issuing +issy +issykkul +istachatta +istc +istec +ister +isthe +istheir +isthmi +isthmia +isthmial +isthmian +isthmiate +isthmic +isthmoid +isthmus +isthmuses +istimewa +istinni +istiophorid +istiophorus +istiqlal +istiwai +istle +istoke +istoria +istoriya +istory +istria +istrian +istro +istvaeones +isuah +isuama +isubu +isui +isuipment +isukha +isumrud +isuret +isuretine +isuridae +isuroid +isurus +isuseful +isuwu +isuxa +isuzu +iswara +itabirite +itabuna +itac +itacism +itacist +itacistic +itacolumite +itaconate +itaconic +itaem +itah +itainen +itaipu +itajai +itaka +itakho +ital +itala +italbar +itali +italia +italian +italiana +italianate +italianately +italianation +italianesque +italianish +italianism +italianist +italianity +italianize +italianizer +italianly +italiano +italians +italic +italical +italically +italican +italicanist +italici +italicism +italicize +italicized +italicizes +italicizing +italics +italion +italiot +italiote +italite +italkian +italo +italomania +italon +italophile +italoromance +italowesten +italowestern +italy +italys +itamalate +itamalic +itamar +itami +itang +itanga +itangikom +itapi +itapua +itaquai +itas +itasca +itat +itata +itatartaric +itatartrate +itaves +itawes +itawis +itawit +itaya +itbahn +itbayat +itbayaten +itbeg +itch +itched +itchen +itches +itchier +itchiest +itchiness +itching +itchingly +itchings +itchless +itchproof +itchreed +itchweed +itchy +itcze +itea +iteaceae +iteam +iteeji +iteghe +iteke +itel +itelmen +itelmes +itelymem +item +itematpos +itemed +iteming +itemise +itemization +itemizations +itemize +itemized +itemizer +itemizers +itemizes +itemizing +itemnum +items +itemserv +itemtest +itemy +iten +itene +itenean +iteneo +itenez +iter +iterable +iterance +iterances +iterancy +iterant +iterated +iterates +iterating +iteration +iterations +iterative +iteratively +iterator +iterators +iteri +iteroparity +iteroparous +itesm +iteso +itesyo +itexjct +itha +ithaca +ithacan +ithacans +ithacensian +ithagine +ithaginis +ithai +ithaka +ithamar +ither +ithiel +ithil +ithilien +ithilstone +ithmah +ithnan +ithnasheri +ithomiid +ithomiidae +ithomiinae +ithra +ithran +ithream +ithrite +ithrites +ithyphallic +ithyphallus +ithyphyllous +itigidi +itik +itim +itineracy +itinerancy +itinerantly +itinerants +itinerarian +itineraries +itinerarium +itinerate +itineration +itis +itivax +itkan +itll +itmann +itmo +itneg +itogapu +itogapuc +itogapuk +itogon +itoh +itoism +itoist +itoland +itonama +itonaman +itonamas +itonga +itonia +itonidid +itonididae +itonisio +itoprocesses +itoto +itoubou +itrack +itrax +itry +itsaangi +itsangi +itsekiri +itself +itselfish +itsfilename +itsgw +itshould +itsong +itspersonal +itsrelated +itstime +itsuko +itsumi +ittabena +ittahkazin +ittai +ittik +ittiktor +ittimangnaq +ittner +ittu +itucali +itumba +itumkala +itundu +itundujia +ituner +itunyoso +ituraea +ituraean +iturbi +iturbide +ituri +iturite +itutang +itwill +itylus +ityoo +itys +itza +itzebu +itzen +itzhak +itzigsohn +iubio +iuclc +iucs +iuds +iuka +iuleha +iupui +iurie +iuruna +iusa +iused +iusz +iuvax +ivah +ivan +ivana +ivancevic +ivancic +ivanek +ivanga +ivanich +ivanitski +ivanoff +ivanov +ivanova +ivanovich +ivanovitch +ivanyi +ivar +ivasheva +ivatan +ivbie +ivbiosakon +ivel +iver +ivernel +ivers +iversen +ives +ivesdale +ivett +ivette +ivey +ivezic +ivhiadaobi +ivhimion +ivic +ivica +ivie +ivied +ivies +ivin +ivinhema +ivins +ivity +ivkovic +ivnet +ivoire +ivona +ivonne +ivonovitch +ivor +ivori +ivorian +ivoried +ivories +ivorine +ivoriness +ivorist +ivory +ivorycoast +ivorylike +ivoryton +ivorytype +ivorywood +ivrit +ivybells +ivyberry +ivydale +ivyflower +ivylike +ivyton +ivyweed +ivywood +ivywort +iwaak +iwai +iwaidja +iwaidjan +iwaidji +iwaidjic +iwaiwa +iwak +iwal +iwam +iwamnagalemb +iwan +iwanow +iwanowitsch +iwanowna +iwant +iwanyk +iwao +iwasaki +iwashita +iwate +iwatenu +iwau +iwbni +iwere +iwill +iwis +iwoer +iwona +iworro +iwuji +iwur +iwuumu +ixcateco +ixcatla +ixcatlan +ixchel +ixia +ixiaceae +ixiama +ixias +ixignor +ixil +ixilan +ixion +ixionian +ixnay +ixnaya +ixodes +ixodian +ixodic +ixodid +ixodidae +ixonia +ixora +ixrekomuxrek +ixtahuacan +ixtapa +ixtata +ixtatan +ixtayutla +ixtenco +ixtla +ixtlan +ixtles +ixzubin +iyaa +iyace +iyada +iyaka +iyala +iyani +iyans +iyanzi +iyekhee +iyengar +iyer +iyfeg +iyirikum +iyive +iyojwaja +iyon +iyongiyong +iyongut +iyowujwa +iyun +izabal +izabel +izak +izale +izan +izanene +izaneni +izar +izard +izare +izarek +izay +izbavitelj +izbinsky +izcateco +izcheznalite +izdubar +izehar +izeharites +izem +izena +izenman +izerbakov +izere +izha +izhak +izhar +izharites +izhitsa +izhor +izik +izique +izle +izmir +iznacen +iznassen +izocen +izocenio +izocenyo +izolatore +izon +izora +izote +izotov +izozo +izrahiah +izrahite +izri +izsak +iztle +izumi +izuru +izutsu +izzard +izzards +izzi +izzick +izzie +izzo +izzotti +izzudin +izzy +jaafar +jaak +jaakan +jaakko +jaakkola +jaako +jaakobah +jaala +jaalah +jaalam +jaali +jaalin +jaan +jaanai +jaap +jaareoregim +jaarsveldt +jaasau +jaasiel +jaawambe +jaazaniah +jaazer +jaaziah +jaaziel +jaba +jabaal +jabaana +jabal +jabam +jaban +jabana +jabara +jabarite +jabba +jabbar +jabbed +jabber +jabbered +jabberer +jabberers +jabbering +jabberingly +jabberment +jabbers +jabberwack +jabberwock +jabberwocky +jabbing +jabbingly +jabble +jabbok +jabe +jabelain +jabem +jabers +jabesh +jabeshgilead +jabez +jabi +jabia +jabienne +jabier +jabim +jabin +jabir +jabiru +jabituya +jablonski +jablunka +jabneel +jabneh +jabo +jaborandi +jaborine +jaborlang +jabot +jaboticaba +jabots +jabs +jabsch +jabuda +jabul +jabulani +jabung +jabuti +jacal +jacals +jacaltec +jacalteca +jacalteco +jacaltenango +jacalyn +jacamar +jacameropine +jacamerops +jacami +jacamin +jacana +jacanidae +jacaranda +jacarandas +jacarandi +jacare +jacareh +jacaria +jacas +jacate +jacchia +jacchus +jaccuzzi +jace +jacek +jacent +jacenta +jacha +jachan +jachin +jachinites +jachino +jachym +jaci +jacinda +jacint +jacinta +jacinth +jacintha +jacinthe +jacinths +jacinto +jack +jackal +jackals +jackanapeses +jackanapish +jackaroo +jackassery +jackasses +jackassism +jackassness +jackbird +jackboots +jackbox +jackboy +jackdaws +jacked +jackee +jackeen +jackelyn +jacker +jackeroo +jackeroos +jackers +jacket +jacketed +jacketing +jacketless +jackets +jacketwise +jackety +jackfish +jackfishes +jackfruit +jackhammer +jackhammers +jackhash +jackhorn +jacki +jackie +jackies +jackinabox +jacking +jackknifed +jackknifes +jackknifing +jackknives +jackleg +jacklegs +jackley +jacklin +jacklondon +jacklyn +jackman +jacknifed +jacknifing +jacknives +jacko +jackpot +jackpots +jackpudding +jackquelin +jackqueline +jackrabbit +jackrod +jackroll +jacks +jacksaw +jacksboro +jackscreek +jackscrew +jackscrews +jackshaft +jackshay +jacksnipe +jackson +jacksonboro +jacksonburg +jacksonia +jacksonite +jacksonport +jacksons +jacksonsgap +jacksontown +jacksonville +jackstay +jackstone +jackstones +jackstraw +jackstraws +jacksun +jacktan +jacktar +jackweed +jackwood +jacky +jaclin +jaclyn +jaclynne +jacob +jacobaea +jacobaean +jacobi +jacobic +jacobin +jacobinia +jacobinic +jacobinical +jacobinism +jacobinize +jacobins +jacobitely +jacobitiana +jacobitic +jacobitical +jacobitish +jacobitishly +jacobitism +jacobo +jacobowsky +jacobs +jacobsburg +jacobscreek +jacobsen +jacobsite +jacobson +jacobsson +jacobus +jacoby +jacod +jacomet +jaconet +jacono +jacopo +jacopus +jacquard +jacquards +jacque +jacquelin +jacqueline +jacquelyn +jacquelynn +jacqueminot +jacquemont +jacquenetta +jacquenette +jacquerie +jacques +jacquesville +jacquet +jacquetta +jacquette +jacqueville +jacqui +jacquie +jacquinot +jacquot +jacroux +jacs +jactance +jactancy +jactant +jactation +jactitate +jactitation +jacu +jacuaru +jaculate +jaculation +jaculative +jaculator +jaculatorial +jaculatory +jaculiferous +jacumba +jacunda +jacur +jacutinga +jacy +jacynth +jacynthe +jada +jadau +jadder +jaddua +jade +jaded +jadedly +jadedness +jadeite +jadeites +jadeji +jadery +jades +jadesheen +jadeship +jadestone +jadgali +jadid +jadida +jadin +jading +jadish +jadishly +jadishness +jado +jadobafi +jadon +jadot +jadu +jadwiga +jadwin +jady +jaech +jaeckel +jaegars +jaegersman +jaekel +jael +jaenaksorn +jaenen +jaenicke +jaeon +jaffar +jaffe +jaffer +jaffers +jaffna +jaffrey +jafga +jafi +jafkl +jafri +jaga +jagaeus +jagai +jagan +jaganathi +jagannath +jagannatha +jagannathi +jagat +jagatai +jagataic +jagatic +jagbir +jagdalpur +jagdev +jagdish +jageez +jager +jagermeister +jagernauth +jagged +jaggeder +jaggedest +jaggedly +jaggedness +jagger +jaggernath +jaggers +jaggery +jaggier +jaggies +jaggiest +jaggoi +jaggs +jaggy +jagir +jagirdar +jagjeet +jagjit +jagla +jagless +jaglom +jago +jagoda +jagodzinski +jagoi +jagong +jagpal +jagrata +jagriti +jags +jagt +jagua +jaguar +jaguarete +jaguars +jaguarundi +jaguin +jagur +jaguri +jahadian +jahai +jahalatan +jahalatane +jahanka +jahannan +jahanque +jahath +jahaz +jahaza +jahazah +jahaziah +jahaziel +jahdai +jahdiel +jahdo +jahili +jahleel +jahleelites +jahmai +jahnen +jahner +jahns +jahonque +jahore +jahr +jahrah +jahre +jahres +jahromi +jahui +jahve +jahvist +jahvistic +jahwe +jahzah +jahzeel +jahzeelites +jahzerah +jahziel +jaibert +jaibi +jaibo +jaidyte +jaika +jail +jailage +jailbait +jailbird +jailbirds +jailbreak +jailbreaker +jailbreaks +jaildom +jailed +jailer +jaileress +jailering +jailers +jailership +jailhouse +jailing +jailish +jailkeeper +jaillike +jailmate +jailolo +jailor +jailors +jails +jailward +jailyard +jaime +jaimez +jaimie +jain +jaina +jainchill +jaine +jainism +jainist +jains +jaintia +jaipur +jaipurhat +jaipuri +jaipuria +jair +jairite +jairus +jaiselmer +jaising +jaiswal +jait +jajao +jajdyat +jajman +jajuru +jaka +jakab +jakabffy +jakai +jakan +jakanci +jakati +jake +jakeh +jakes +jakie +jakim +jakin +jakiri +jaklin +jako +jakob +jakoba +jakobli +jakobsen +jakola +jakoon +jakov +jakphang +jakstys +jaku +jakub +jakubowski +jakud +jakudn +jakula +jakun +jakuszenkow +jalahatane +jalaie +jalalabad +jalalaean +jalali +jalalizadeh +jalalum +jalam +jalan +jalap +jalapa +jalapeno +jalapin +jalaun +jalbert +jalca +jalck +jale +jalengo +jalgaon +jalieza +jalil +jalilvand +jalingo +jalisco +jalkar +jalkie +jalkot +jallet +jallon +jalloped +jalmert +jalon +jalonke +jalopies +jaloppy +jalotesun +jalouse +jalousie +jalousied +jalousies +jalowyj +jalpa +jalpaiguri +jalpaite +jalr +jals +jaltepec +jalu +jalut +jama +jamaa +jamach +jamahariya +jamahiriya +jamaica +jamaican +jamaicans +jamais +jamal +jamalpur +jamaly +jamamadi +jaman +jamantini +jamas +jamatia +jamb +jamba +jambalaya +jambapuing +jambapuingo +jambe +jambeau +jambed +jambert +jambi +jambing +jambo +jambolan +jambon +jambone +jambool +jamborees +jambos +jambosa +jambres +jambrina +jambs +jambstone +jambu +jambuair +jamdani +jamden +jamdena +jamdera +jame +jamensky +jamery +james +jamesabad +jamesbradley +jamesburg +jamescity +jamescreek +jamesian +jamesina +jameson +jamesonite +jamesport +jamesson +jamesstein +jamesstore +jamestown +jamesville +jamet +jami +jamie +jamieson +jamil +jamiltepec +jamima +jamin +jaminawa +jaminites +jamiroquai +jamison +jamlech +jamlike +jamm +jammed +jammedness +jammer +jammers +jammie +jammin +jamming +jammu +jammy +jamnejad +jamner +jamnia +jampacked +jampalam +jampan +jampani +jampea +jamporn +jampur +jamrak +jamral +jamroon +jamrosade +jamroz +jams +jamsa +jamshedi +jamshid +jamshidi +jamsri +jamthi +jamtlands +jamu +jamuga +jamul +jamwood +jamzu +jana +janacek +janake +janakiraman +janakpur +janama +janapa +janapan +janaratne +janardhana +janata +janatha +janatsch +janaver +janaya +janaye +jancewicz +jancovic +janczar +janczyn +janda +jande +jandi +jandijinung +jandl +jandy +jane +janeaksorn +janean +janeb +janecka +janeczka +janeen +janegger +janeiro +janel +janela +janelew +janell +janella +janelle +janene +janenna +janequeo +janera +janeric +janes +janessa +janesville +janesy +janet +janeta +janete +janetta +janette +janeva +janeway +janey +janez +jang +jangad +jangada +jangan +janggali +janggu +janghard +janghey +jangkar +jangkundjara +jangled +jangler +janglers +jangles +jangli +jangling +jangly +jangshen +jangwulo +jani +jania +janice +janiceps +janicijevic +janick +janiculan +janiculum +janie +janifer +janiform +janiksen +janina +janine +janio +janis +janisary +janisch +janiszewski +janit +janith +janitor +janitors +janitorship +janitress +janitresses +janitrix +janizarian +janizary +janjan +janjerinya +janjero +janji +janjo +janjor +janjula +jank +janka +jankaen +janke +janker +janketic +jankowitz +jankowski +jankuhn +jankura +jann +janna +jannacci +janne +jannel +jannelle +jannery +jannes +janney +jannik +janning +jannings +jannis +jannock +jannot +janoah +janohah +janolaf +janolof +janos +janosik +janosz +janot +janoth +janou +janovich +janowitz +janowska +jans +jansci +janseen +jansen +jansenism +jansenistic +jansenize +jansky +janson +janssen +janssens +janthina +janthinidae +janti +jantu +janty +jantzen +jantzi +janua +januaries +januarius +january +janub +janubiyah +janum +janus +januslike +janusz +janvier +jany +janzen +janzur +jaob +jaon +jaona +jaoping +jaouen +japaconine +japaconitine +japal +japan +japandai +japanee +japanese +japanesefood +japanesque +japanesquely +japanesquery +japanesy +japanicize +japanism +japanization +japanize +japanized +japanizes +japanizing +japanned +japanner +japanners +japannery +japanning +japannish +japanolatry +japanologist +japanology +japanophile +japanophobe +japanophobia +japans +jape +japed +japer +japeries +japers +japery +japes +japetus +japheth +japhetic +japhetide +japhetite +japhia +japhlet +japhleti +japho +japhon +japhy +japing +japingly +japish +japishly +japishness +japonic +japonica +japonically +japonicas +japonicize +japonism +japonize +japonizer +japp +jappprob +japreri +japreria +japso +japuira +japura +japygidae +japygoid +japyx +jaqai +jaqaru +jaque +jaquelin +jaqueline +jaquelyn +jaquenetta +jaquenette +jaques +jaquesian +jaquet +jaqui +jaquima +jaquimine +jaquith +jara +jaracin +jaragua +jarah +jarai +jarales +jaramillo +jaranchi +jararaca +jararacussu +jaratsi +jarawa +jarawan +jarawanekoid +jarawaone +jarawara +jarawatwo +jarawdomo +jaray +jarbas +jarbidge +jarbird +jarble +jarboe +jarbot +jarchow +jardel +jardi +jardian +jardin +jardine +jardinet +jardiniere +jardinieres +jareb +jared +jarema +jaremir +jarenchi +jareng +jaresiah +jaress +jareth +jarett +jarfly +jarful +jarfuls +jarg +jargon +jargonal +jargoned +jargoneer +jargonelle +jargoner +jargonesque +jargonic +jargoning +jargonish +jargonist +jargonistic +jargonium +jargonize +jargonized +jargonizing +jargonjokes +jargonlike +jargons +jarha +jari +jarib +jaricuna +jarikov +jariyaporn +jarkman +jarl +jarlath +jarldom +jarless +jarlsburg +jarlship +jarlstedt +jarma +jarman +jarmila +jarmo +jarmoc +jarmon +jarmul +jarmuth +jarnak +jarnango +jarnefelt +jarnette +jarnias +jarnut +jaro +jaroah +jaroff +jarol +jaromil +jaromir +jaron +jaroo +jarool +jarosite +jaroslav +jaroslawa +jaroso +jaroszynski +jarpa +jarquin +jarra +jarrah +jarratt +jarre +jarreau +jarred +jarrel +jarrell +jarret +jarrett +jarring +jarringly +jarringness +jarrod +jarry +jars +jarsful +jaru +jaruara +jarum +jaruma +jaruna +jarunee +jaruwan +jaruzelski +jarvah +jarvais +jarvess +jarvey +jarvie +jarvik +jarvin +jarvis +jarvisburg +jarvix +jary +jarzemsky +jasbinder +jasbo +jasc +jasen +jasey +jaseyed +jashen +jasher +jashobeam +jashpur +jashub +jashubilehem +jashubites +jashvant +jasiel +jasiello +jasikan +jasing +jasione +jaska +jasmann +jasmin +jasmina +jasminaceae +jasmine +jasmined +jasmines +jasminewood +jasminum +jasmone +jasna +jasny +jasoa +jason +jasonville +jaspachate +jaspagate +jasper +jaspera +jasperated +jaspered +jasperize +jasperoid +jaspers +jaspery +jaspidean +jaspideous +jaspilite +jaspis +jaspoid +jasponyx +jaspopal +jaspreet +jasrotia +jass +jassid +jassidae +jasso +jassoid +jasti +jastinder +jastrow +jasuko +jasver +jaswal +jatamansi +jatapu +jatar +jateorhiza +jateorhizine +jatgali +jatha +jathniel +jati +jatinder +jatiya +jatiyo +jatki +jatni +jato +jatos +jatow +jatran +jatrikat +jatropha +jatrophic +jats +jatta +jattir +jatu +jatulian +jauaperi +jauarete +jauari +jaudie +jauja +jauk +jaulapiti +jaume +jaun +jauna +jaunavo +jaunce +jaunde +jaunder +jaundiced +jaundiceroot +jaundices +jaundicing +jaunjaun +jaunsar +jaunsari +jaunt +jaunted +jauntie +jauntier +jauntiest +jauntily +jauntiness +jaunting +jauntingly +jaunts +jaup +jaur +jauvin +java +javacenter +javad +javadoc +javae +javaftp +javahai +javahe +javali +javallas +javan +javanee +javanese +javaperk +javari +javas +javascript +javavillage +javed +javelin +javelina +javeline +javelined +javelineer +javelins +javer +javert +javier +javierano +javitero +javits +javor +javutich +jawa +jawab +jawad +jawaid +jawald +jawan +jawanaua +jawanda +jawanli +jawaperi +jawara +jawari +jawbation +jawbone +jawboned +jawbones +jawboning +jawbreaker +jawbreakers +jawbreaking +jawdokimov +jawe +jawed +jawf +jawfall +jawfallen +jawfish +jawfoot +jawfooted +jawi +jawing +jawless +jawline +jawlines +jawme +jawn +jawony +jawor +jaworski +jaworsky +jaws +jawsmith +jawwad +jawy +jaxom +jaya +jayalalitha +jayamanne +jayant +jayanti +jayapapua +jayapura +jayaram +jayasene +jayawijaya +jaybird +jaybirds +jayce +jaycee +jaycees +jaye +jayem +jayendra +jayesh +jayess +jaygee +jaygees +jayhawk +jayhawker +jayita +jayme +jaymee +jayne +jaynell +jaynes +jaynie +jaypie +jays +jayston +jayton +jayut +jayuya +jayvee +jayvees +jaywalk +jaywalked +jaywalker +jaywalkers +jaywalking +jaywalks +jazanoski +jazbo +jazer +jazerant +jazirehye +jaziz +jazmin +jazy +jazyges +jazyk +jazz +jazzed +jazzer +jazzers +jazzes +jazzier +jazziest +jazzily +jazziness +jazzing +jazzman +jazzmen +jazztid +jazztiz +jazzy +jazzz +jbalance +jbcc +jbcs +jbsc +jbss +jbxx +jcaster +jcbach +jcdbs +jcst +jcstate +jdan +jdar +jdavis +jdems +jderek +jdsp +jdsscc +jealous +jealousies +jealously +jealousness +jealousy +jeames +jean +jeana +jeananne +jeanbaptiste +jeanclaude +jeane +jeanelle +jeanerette +jeanes +jeanette +jeanice +jeanie +jeanine +jeanjacques +jeanluc +jeanmarc +jeanmarie +jeanmichel +jeanna +jeanne +jeannette +jeannie +jeannine +jeannot +jeanpaul +jeanpaulia +jeanpierre +jeans +jearim +jeaterai +jeaves +jeavons +jeayes +jeba +jebai +jebb +jebel +jebels +jeberechiah +jebero +jeberos +jebs +jebus +jebusi +jebusite +jebusites +jebusitic +jebusitical +jebusitish +jecamiah +jece +jecholiah +jechonias +jecoliah +jeconiah +jecoral +jecorin +jecorize +jectkoe +jedaiah +jedcock +jeddah +jedding +jeddo +jeddock +jede +jedediah +jedepo +jedermann +jedgar +jedgr +jedi +jediael +jedidah +jedidiah +jedr +jedrysiak +jedson +jedu +jeduthun +jedy +jeel +jeep +jeepers +jeeps +jeepy +jeer +jeere +jeered +jeerer +jeerers +jeeri +jeering +jeeringly +jeerproof +jeers +jeery +jeesee +jeeter +jeeveh +jeeves +jeez +jeezer +jeezerites +jefe +jefes +jeff +jeffbell +jefferey +jefferies +jefferisite +jeffers +jefferson +jeffersonia +jeffersonite +jeffersons +jeffersonton +jeffery +jeffifer +jefford +jeffords +jeffrey +jeffreycity +jeffreys +jeffries +jegan +jegasi +jeghowa +jegu +jehad +jehai +jehaleleel +jehalelel +jehan +jehanna +jehdeiah +jeher +jehezekel +jehhalang +jehiah +jehiel +jehieli +jehizkiah +jehoadah +jehoaddan +jehoahaz +jehoash +jehohanan +jehoiachin +jehoiada +jehoiakim +jehoiarib +jehonadab +jehonathan +jehoram +jehoshabeath +jehoshaphat +jehosheba +jehoshua +jehoshuah +jehovah +jehovahjireh +jehovahnissi +jehovic +jehovism +jehovist +jehovistic +jehozabad +jehozadak +jehu +jehubbah +jehucal +jehud +jehudi +jehudijah +jehup +jehus +jehush +jeidji +jeiel +jeimo +jejuna +jejunal +jejunator +jejunely +jejuneness +jejunitis +jejunity +jejunostomy +jejunotomy +jejunums +jekabzeel +jekaing +jekameam +jekamiah +jekel +jekes +jekhovsky +jekri +jekuthiel +jekyll +jelab +jelache +jelai +jelalong +jelania +jelene +jelenia +jeleniewski +jelerang +jelgooji +jelick +jelinek +jelisaueta +jelisic +jelkes +jell +jella +jelled +jellica +jellico +jellicott +jellied +jelliedness +jellies +jellified +jellifies +jellify +jellifying +jellily +jelliman +jelling +jellison +jello +jelloid +jells +jelly +jellyband +jellybean +jellybeans +jellybelly +jellydom +jellyfish +jellyfishes +jellying +jellyleaf +jellylike +jellyroll +jellystone +jelm +jelmek +jeltulak +jelum +jelutong +jema +jemaa +jemadar +jembayan +jemczyk +jeme +jemerov +jemez +jemezpueblo +jemezsprings +jemhwa +jemidar +jemie +jemima +jemimah +jemison +jemjem +jemmari +jemmie +jemmied +jemmies +jemmily +jemminess +jemmy +jemtland +jemuel +jena +jenda +jene +jenelle +jeneponto +jenette +jeng +jenge +jengjeng +jengre +jeni +jenica +jenice +jenicek +jenie +jeniece +jenifer +jeniffer +jenilee +jenimu +jenine +jenison +jeniune +jenji +jenjo +jenkenson +jenkin +jenkinjones +jenkins +jenkinsburg +jenkinson +jenkinsville +jenkintown +jenks +jenli +jenn +jenna +jenne +jennee +jenner +jennerize +jennerstown +jenness +jennet +jenneting +jennets +jennette +jenney +jenni +jennica +jennie +jennier +jennies +jennifer +jennilee +jennine +jenning +jennings +jennis +jennison +jennrich +jenns +jennu +jenny +jennyp +jeno +jenoff +jens +jensch +jensen +jensenbeach +jensens +jensenworth +jenson +jent +jentacular +jentilpe +jenures +jenuwa +jenyes +jeofail +jeoff +jeomans +jeonne +jeoparded +jeoparder +jeopardied +jeopardies +jeoparding +jeopardize +jeopardized +jeopardizes +jeopardizing +jeopardous +jeopardously +jeopardy +jepa +jepal +jepamatsi +jepel +jephthae +jephthah +jephunneh +jeppe +jepson +jeptha +jeql +jeqlu +jequirity +jera +jerah +jerahmeel +jerald +jeralee +jeram +jerard +jerba +jerboa +jerboas +jere +jered +jereed +jeremai +jeremejevite +jeremiad +jeremiade +jeremiads +jeremiah +jeremian +jeremianic +jeremias +jeremoth +jeremy +jereng +jererrod +jerez +jerge +jergens +jerger +jergesen +jeri +jeriah +jerib +jeribai +jericho +jerico +jerid +jeriel +jerijah +jerimoth +jerioth +jeriyawa +jerk +jerked +jerker +jerkers +jerkier +jerkies +jerkiest +jerkily +jerkin +jerkined +jerkiness +jerking +jerkingly +jerkings +jerkins +jerkish +jerks +jerksome +jerkwater +jerky +jerl +jerli +jerm +jermaine +jermonal +jermyh +jermyn +jernberg +jernigan +jernstedt +jero +jeroboam +jeroboams +jeroen +jeroham +jerold +jerome +jeromesville +jeromian +jeronimo +jeronymite +jeroski +jerque +jerquer +jerrett +jerri +jerriais +jerrie +jerries +jerrilee +jerrilyn +jerrine +jerrold +jerry +jerrycan +jerrycans +jerrycity +jerryism +jerrylee +jerschke +jersey +jerseyan +jerseycity +jerseyed +jerseyite +jerseyites +jerseyman +jerseymills +jerseys +jerseyshore +jerseyville +jerst +jert +jeru +jerubbaal +jerubbesheth +jeruel +jerusalem +jerusaleme +jerusha +jerushah +jerves +jervia +jervina +jervine +jervis +jerzy +jesaiah +jeshaiah +jeshanah +jesharelah +jeshebeab +jesher +jeshimon +jeshishai +jeshohaiah +jeshua +jeshuah +jeshurun +jesiah +jesiak +jesimiel +jeska +jesli +jesper +jess +jessa +jessakeed +jessalin +jessalyn +jessamine +jessamy +jessamyn +jessant +jesse +jessean +jessed +jessel +jesselyn +jessen +jessep +jesseramsing +jesses +jesshope +jessi +jessica +jessie +jessieville +jessika +jesslyn +jesson +jessonda +jessop +jessore +jessper +jessup +jessur +jessy +jessye +jest +jestbook +jested +jestee +jester +jesters +jestful +jesting +jestingly +jestings +jestingstock +jestmonger +jestproof +jests +jestwise +jestword +jesty +jesu +jesuate +jesudason +jesui +jesuino +jesuited +jesuites +jesuitess +jesuitic +jesuitical +jesuitically +jesuitish +jesuitism +jesuitist +jesuitize +jesuitocracy +jesuitries +jesuitry +jesuits +jesup +jesurun +jesus +jetaudio +jetbead +jetblack +jetcommander +jete +jeter +jetersville +jether +jetheth +jethlah +jethro +jethronian +jeti +jetliners +jetmore +jeto +jetport +jetports +jets +jetsam +jetsams +jetsom +jetsoms +jetson +jett +jetta +jettage +jetted +jetter +jettied +jetties +jettiness +jetting +jettingly +jettisoned +jettisoning +jettisons +jetton +jetty +jettyhead +jettying +jettywise +jetur +jetware +jetzt +jeude +jeuel +jeuland +jeunes +jeurgen +jeush +jeux +jeuz +jeverland +jewart +jewbird +jewbush +jewdom +jewed +jeweils +jewel +jeweled +jeweler +jewelers +jewelhouse +jeweling +jewell +jewelle +jewelled +jeweller +jewellers +jewellery +jewelless +jewellike +jewelling +jewellridge +jewelries +jewelry +jewels +jewelsmith +jewelweed +jewelweeds +jewely +jewess +jewett +jewettcity +jewfish +jewfishes +jewgenija +jewhood +jewing +jewish +jewishly +jewishness +jewism +jewith +jewless +jewlike +jewling +jewlinr +jewllinr +jewry +jews +jewship +jewstone +jewy +jeyaratnam +jeyaretnam +jezail +jezaniah +jezebel +jezebelian +jezebelish +jezebels +jezekite +jezer +jezerites +jezhu +jeziah +jeziel +jezioranski +jezira +jezire +jezliah +jezoar +jezrahiah +jezreel +jezreelite +jezreelitess +jezzard +jfax +jfcl +jfif +jfreq +jgeq +jgequ +jgoun +jgtr +jgtru +jhadpi +jhalakati +jhalawadi +jhaliya +jhangal +jhangar +jhanger +jhansi +jhapa +jharal +jharawan +jharia +jharwa +jheel +jhenaidah +jhereg +jhil +jhilmil +jhname +jhool +jhoria +jhow +jhuapl +jhue +jhunix +jhuria +jhuth +jian +jiang +jiangsu +jiangxi +jianli +jianning +jianyang +jiao +jiaozi +jiar +jiarong +jiayu +jiba +jibana +jibanchi +jibaro +jibawa +jibbah +jibbed +jibber +jibbers +jibbing +jibbings +jibby +jibe +jibed +jiber +jibers +jibes +jibhead +jibi +jibing +jibingly +jibito +jibla +jibman +jiboa +jibreel +jibs +jibsam +jibstay +jibu +jibyal +jicaltepec +jicama +jicaque +jicaquean +jicara +jicarilla +jicirsky +jicoras +jidd +jidda +jiddaabu +jiddah +jiddu +jide +jidlaph +jiejinkou +jiff +jiffi +jiffies +jiffle +jiffs +jifkl +jiga +jigaboo +jigaboos +jigalong +jigamaree +jigged +jigger +jiggered +jiggerer +jiggerman +jiggers +jigget +jiggety +jigginess +jiggish +jiggled +jiggles +jigglier +jiggliest +jiggling +jiggly +jiggs +jiggumbob +jiggy +jiglike +jigman +jigme +jigs +jigsaw +jigsawed +jigsawing +jigsawn +jigsaws +jiguel +jihad +jihads +jihlava +jihmi +jiho +jihyu +jijel +jiji +jikai +jikain +jikany +jiken +jikhalsi +jiku +jikungu +jilama +jilbu +jili +jilim +jilin +jill +jillali +jillana +jillane +jillayne +jilleen +jillene +jillet +jillette +jillflirt +jilli +jillian +jilliann +jillie +jillion +jillions +jills +jilly +jilted +jiltee +jilter +jilters +jilting +jiltish +jilts +jilu +jima +jimajima +jimarnold +jimbang +jimberjaw +jimberjawed +jimbin +jimbinawa +jimdavis +jimenez +jimfalls +jimi +jiminee +jiminez +jiminy +jimjam +jimjams +jimjimen +jimma +jimmie +jimmied +jimmies +jimminy +jimmison +jimmu +jimmy +jimmyboy +jimmying +jimna +jimnah +jimnites +jimo +jimoli +jimp +jimply +jimpness +jimpricute +jimpson +jims +jimsedge +jimson +jimsonweed +jimsun +jimthorpe +jimuni +jimyoung +jina +jinadasha +jinak +jinann +jinbo +jincamas +jincan +jinda +jindal +jindjibandi +jindra +jindwi +jine +jinette +jing +jinga +jingal +jingali +jingbang +jinghong +jinghpaw +jingjing +jingle +jingled +jinglejangle +jingler +jinglers +jingles +jinglet +jinglier +jingliest +jingling +jinglingly +jingly +jingo +jingodom +jingoes +jingoish +jingoism +jingoisms +jingoist +jingoistic +jingoists +jingpo +jingulu +jinhua +jinik +jinja +jinjili +jinjo +jink +jinker +jinket +jinkle +jinks +jinkum +jinleri +jinmini +jinn +jinnah +jinnee +jinnestan +jinni +jinniwink +jinniyeh +jinns +jinnung +jinny +jino +jinotega +jinpachi +jinping +jinricksha +jinriki +jinrikiman +jinrikisha +jinrikishas +jinriksha +jins +jinsha +jinshang +jinuo +jinx +jinxed +jinxes +jinxian +jinxing +jipal +jiparana +jiphtah +jiphthahel +jipijapa +jipper +jips +jiqui +jirai +jirasak +jirble +jireh +jirel +jirga +jirgah +jiri +jiriki +jirina +jiriyapan +jirkinet +jiro +jirru +jiru +jishishan +jism +jita +jiteley +jiti +jitiang +jitneur +jitneuse +jitney +jitneyman +jitneys +jitotol +jitr +jitro +jitsuko +jitter +jitterbugged +jitterbugs +jittered +jittering +jitters +jiujitsu +jiujitsus +jiujutsu +jiujutsus +jiva +jivaran +jivaro +jivaroan +jived +jives +jivia +jivin +jiving +jiwadja +jiwali +jixian +jixie +jiye +jiyun +jizah +jizan +jizni +jizz +jjjj +jjjjj +jjjjjj +jjjjjjj +jjjjjjjj +jjust +jkit +jlbc +jlbs +jlcd +jleq +jlequ +jlss +jlssu +jluko +jlussmeyer +jmping +jmpret +jnana +jnanas +jneq +jnequ +jnglab +joab +joac +joachim +joachimite +joachin +joad +joah +joahaz +joahn +joakim +joal +joan +joana +joane +joanie +joaniecaucas +joann +joanna +joannah +joanne +joannes +joannidis +joannie +joannis +joannite +joano +joao +joaquim +joaquin +joaquinite +joari +joash +joasia +joatham +jobab +jobade +jobarbe +jobation +jobbed +jobber +jobbernowl +jobbers +jobbery +jobbet +jobbing +jobbish +jobble +jobe +jobero +jobert +jobeth +jobey +jobholders +jobi +jobie +jobina +jobless +joblessness +joblots +jobman +jobmaster +jobmistress +jobmonger +jobo +joboka +jobs +jobsmith +jobson +jobst +jobstown +jobtraining +joby +jobye +jobyna +jocasta +jocelin +joceline +jocelyn +jocelyne +joceylne +joch +jochebed +jochem +jochen +jochi +jochim +jochmann +jochnowitz +jocie +jock +jockamo +jocke +jocker +jockeydom +jockeyed +jockeying +jockeyish +jockeyism +jockeylike +jockeys +jockeyship +jocko +jockos +jocks +jockstraps +jockteleg +jocoque +jocosely +jocoseness +jocoserious +jocosities +jocosity +jocote +jocotepec +jocu +jocularities +jocularity +jocularly +jocularness +joculator +jocum +jocuma +jocundities +jocundity +jocundly +jocundness +jodee +jodel +jodelr +jodels +jodhpur +jodhpurs +jodi +jodie +jodine +jodl +jodo +jodoin +jodrey +jody +joeann +joebush +joeckel +joed +joel +joela +joelah +joelie +joell +joella +joelle +joellen +joelly +joellyn +joelton +joely +joelynn +joensuu +joereskog +joerg +joergen +joergensen +joergl +joeri +joern +joes +joete +joethelion +joewood +joey +joeys +joezer +joffe +joffre +jofre +joga +jogbehah +jogesh +jogged +jogger +joggers +jogging +joggled +joggler +jogglers +joggles +jogglety +jogglework +joggling +joggly +jogi +jogiches +jogli +jogs +jogtrottism +jogvan +joha +johahi +johan +johana +johanamadeus +johanan +johann +johanna +johannah +johanne +johannean +johannes +johannessen +johannine +johannist +johannite +johannsen +johannson +johansen +johanson +johansson +johar +johari +john +johna +johnadams +johnadreams +johnath +johnathan +johnd +johnday +johnette +johnf +johnian +johnin +johnn +johnna +johnnie +johnnies +johnny +johnnycake +johnnydom +johnnys +johns +johnsburg +johnsen +johnsisland +johnsmas +johnson +johnsonburg +johnsoncity +johnsoncreek +johnsonese +johnsonian +johnsoniana +johnsonianly +johnsonism +johnsons +johnsonville +johnsrun +johnston +johnstoncity +johnstone +johnstown +johnstrupite +johnsville +johny +johode +johor +johs +johsio +joiada +joiakim +joiarib +joice +joie +join +joinable +joinant +joinder +joined +joiner +joineries +joiners +joinerville +joinery +joinin +joining +joiningly +joinings +joins +joint +jointage +jointed +jointedly +jointedness +jointer +jointers +jointing +jointist +jointless +jointly +jointress +joints +jointspace +jointure +jointureless +jointuress +jointuring +jointweed +jointworm +jointy +joist +joisted +joisting +joistless +joists +joji +jojo +jojoba +jojobas +jojot +jokaste +jokdeam +joke +joked +jokeless +jokelet +jokeproof +joker +jokers +jokes +jokeshop +jokesmith +jokesome +jokesomeness +jokester +jokesters +jokez +jokim +joking +jokingly +jokish +jokist +jokkmokk +jokmeam +jokneam +jokot +jokshan +joktan +joktheel +jokul +joky +jola +jolanda +jolanta +jole +jolee +joleen +jolene +joletta +jolfa +joli +jolicoeur +jolie +joliet +joliette +joliffe +jolin +joline +jolivet +joll +jolley +jolleyman +jollied +jollier +jollies +jolliest +jolliffe +jollified +jollifies +jollify +jollifying +jollily +jolliness +jollities +jollity +jollop +jolloped +jollying +jollyroger +jollys +jollyseber +jollytail +jolo +joloano +jolof +jolon +jolong +jolson +jolt +jolted +jolter +jolterhead +jolterheaded +jolters +jolthead +joltier +joltily +joltiness +jolting +joltingly +joltless +joltproof +jolts +jolty +joly +jolyn +jolynn +jolys +jompa +jompre +jona +jonadab +jonah +jonahesque +jonahism +jonahs +jonam +jonan +jonancy +jonas +jonash +jonasridge +jonassen +jonasson +jonathan +jonathon +jonato +jonaz +jonben +jonckheeres +joncourt +jonczak +jondatus +jone +jonell +jonelle +jones +jonesboro +jonesborough +jonesburg +joneses +jonesey +jonesian +jonesie +joneslee +jonesmills +jonesport +jonestown +jonesville +jonesy +jonfield +jong +jonga +jongg +jonggunu +jongkhar +jonglery +jongleur +jongleurs +jongman +jongo +jongor +joni +jonie +jonis +jonkha +jonkheer +jonkopings +jonl +jonn +jonnie +jonny +jono +jonque +jonquille +jonquils +jonsdottir +jonsey +jonson +jonsonian +jonsson +jonston +jonsy +jonthan +jontz +jonval +jonvalize +jookerie +jookie +joola +joom +joon +joop +jooran +joore +joos +jopadhola +jophiel +jopie +joplin +joppa +jopu +jora +jorah +jorai +joram +jordahl +jordain +jordal +jordan +jordana +jordanaires +jordanian +jordanians +jordanite +jordanmines +jordanna +jordano +jordans +jordanvalley +jordanville +jorden +jordi +jordon +joree +joreff +jorey +jorf +jorg +jorge +jorgensen +jorgos +jori +jorie +jorim +joris +jorist +jorkins +jorkoam +jorney +joron +jorrie +jorry +jorto +jorum +jory +josabad +josanne +josaphat +joscelin +joschka +jose +josedech +josee +josef +josefa +josefina +josefite +joseite +joseito +joselito +josem +josep +joseph +josepha +josephcity +josephina +josephine +josephinism +josephinite +josephism +josephite +josephs +josephson +josephstaal +joses +josett +josette +josey +josh +joshah +joshaphat +joshaviah +joshbekashah +joshed +joshephine +josher +joshers +joshes +joshi +joshing +joshua +joshuatree +josi +josiah +josiane +josias +josibiah +josie +josine +josip +josiphiah +joska +joskin +joslin +joslyn +joso +joson +josquin +jossakeed +josseline +josselyn +josser +josses +josseybass +jossiane +jossine +jost +jostein +jostled +jostlement +jostler +jostlers +jostles +jostling +josue +joswig +josy +josza +joszef +joszia +jota +jotafa +jotation +jotbah +jotbath +jotbathah +jotham +joti +jotisi +jotnian +joto +jotoni +jots +jotted +jotter +jotters +jotting +jottings +jotty +joubarb +joube +joubert +joudrey +jouer +jouett +jouez +joug +jough +joughin +joujon +jouk +joule +joulean +joulemeter +joules +jounced +jounces +jouncier +jounciest +jouncing +jouncy +jour +jourdain +jourdan +jourdanton +jourdonnais +jourfier +journal +journalish +journalism +journalist +journalistic +journalists +journalize +journalized +journalizer +journalizes +journalizing +journals +journalsans +journel +journet +journey +journeycake +journeyed +journeyer +journeyers +journeying +journeyings +journeyman +journeys +journeywoman +journeywork +journo +jours +jousset +jousted +jouster +jousters +jousting +jousts +jouve +jouvenel +jouvet +joux +jova +joval +jovanotti +jovanovic +jovavich +jove +jovenes +jovi +jovial +jovialist +jovialistic +joviality +jovialize +jovially +jovialness +jovialty +jovian +jovianly +jovic +jovicentric +jovilabe +jovine +joviniamish +jovinian +jovinianist +jovita +jovite +jovito +jovovich +jowaeger +jowar +jowari +jowel +jower +jowery +jowett +jowitt +jowled +jowler +jowlier +jowliest +jowlish +jowlop +jowls +jowpy +jowser +jowter +jowulu +jowzjan +joya +joyabaj +joyan +joyance +joyancy +joyann +joyant +joyboy +joyce +joycelin +joycelyn +joycie +joydeep +joye +joyed +joyeux +joyful +joyfuller +joyfullest +joyfully +joyfulness +joyhop +joying +joyleaf +joyless +joylessly +joylessness +joylet +joyner +joyous +joyously +joyousness +joyproof +joyridden +joyride +joyrider +joyriders +joyrides +joyriding +joyrode +joys +joysome +joystick +joysticks +joyweed +joyzelle +joza +jozabad +jozachar +jozadak +jozef +jozo +jozsef +jozsi +jozwiak +jozy +jpeg +jpegit +jpldevvax +jplng +jplopto +jpop +jpotter +jptui +jrem +jrichards +jrst +jsandye +jsaren +jsbach +jsecurecom +jshifter +jsmith +jsnach +jsoft +jsprowl +jsqr +jsums +jswitzer +jtmedium +juan +juana +juanadiaz +juanauo +juanda +juane +juanen +juang +juanga +juani +juanin +juanita +juanito +juanjo +juano +juans +juantez +juarez +juarzon +juba +jubainville +jubal +juban +jubate +jubayl +jubb +jubbada +jubbah +jubbe +jube +jubenville +juberous +jubilance +jubilancy +jubilantly +jubilarian +jubilated +jubilates +jubilating +jubilatio +jubilation +jubilations +jubilatory +jubilatrix +jubile +jubilean +jubilees +jubiles +jubilist +jubilization +jubilize +jubilus +jubinville +jubjub +juby +juca +jucal +juchen +juchita +jucien +juck +juckies +juco +jucul +jucuna +jucunda +jucundity +juda +judaea +judaeomancy +judaeophile +judaeophobe +judaeophobia +judah +judahite +judaic +judaica +judaical +judaically +judaism +judaist +judaistic +judaization +judaize +judaizer +judakov +judas +judases +judaslike +judby +judcock +judd +judder +jude +judea +judean +judels +judeo +judeoarabic +judeoaramaic +judeoberber +judeocrimean +judeofrench +judeogerman +judeogreek +judeoitalian +judeokurdish +judeopersian +judeoprovenc +judeospanish +judeotajik +judeotat +judeotatic +judet +judete +judex +judezmo +judge +judgeable +judged +judgelike +judgement +judgements +judger +judgers +judges +judgeship +judgeships +judgest +judgeth +judging +judgingly +judgmatic +judgmatical +judgment +judgmental +judgments +judi +judianne +judica +judical +judicate +judication +judicative +judicator +judicatorial +judicatories +judicatures +judice +judices +judiciable +judiciality +judicialize +judicialized +judicially +judicialness +judiciaries +judiciarily +judiciously +judie +judit +judith +juditha +judithgap +judkins +judoist +judoists +judophobism +judos +judsonia +judy +judye +judyresnick +judys +juel +juenger +juergen +juergens +juergensen +juers +juewa +jufrah +jufti +juga +jugal +jugale +jugandi +jugari +jugatae +jugated +jugation +juge +juger +jugerum +jugful +jugfuls +juggat +jugged +jugger +juggernath +juggernaut +juggernauts +juggins +juggle +juggled +jugglement +juggler +juggleries +jugglers +jugglery +juggles +juggling +jugglingly +jugglings +jughead +jugheads +juglandaceae +juglandales +juglandin +juglans +juglone +jugnauth +jugnot +jugo +jugs +jugsful +jugta +jugula +jugular +jugulares +jugulars +jugulary +jugulate +jugulated +jugulates +jugulum +jugum +jugurtha +jugurthine +juha +juhan +juhani +juhasz +juhnke +juhns +juice +juiced +juiceful +juiceless +juicer +juicers +juices +juicier +juiciest +juicily +juiciness +juicing +juicy +juieta +juile +juina +juiz +jujitsu +jujitsus +jujub +jujubes +jujuism +jujuist +jujus +jujutsu +jujutsus +jujuy +jukagir +jukebox +jukeboxes +juked +juki +juking +jukka +jukkasjarvi +juko +jukon +juku +jukum +jukun +jukunoid +jula +julann +julanne +jule +julee +juleps +jules +julesburg +juletta +julette +juley +juli +julia +juliaetta +julian +juliana +juliane +julianehaab +juliani +julianist +julianloewe +juliann +julianna +julianne +juliao +julid +julidae +julidan +julie +julieanne +julien +julienite +julienne +juliennes +julies +juliet +julieta +julietta +juliette +julika +julina +juline +julio +julissa +julita +julius +juliustown +jullien +jullnar +juloid +juloidea +juloidian +julole +julolidin +julolidine +julolin +juloline +julud +julus +july +julyan +julyflower +juma +jumada +jumam +juman +jumana +jumarie +jumart +jumayl +jumba +jumber +jumble +jumbled +jumblement +jumbler +jumblers +jumbles +jumbling +jumblingly +jumbly +jumbo +jumboesque +jumboism +jumbos +jumbuck +jumbucks +jumby +jumelle +jument +jumentous +jumfru +jumillite +jumjum +jumla +jumleli +jumma +jummai +jump +jumpa +jumpable +jumped +jumper +jumperism +jumpers +jumpier +jumpiest +jumpily +jumpiness +jumping +jumpingly +jumpness +jumpoff +jumpoffs +jumpreg +jumpriver +jumprock +jumps +jumpseed +jumpsome +jumpstart +jumpsuit +jumpto +jumptoregkey +jumu +juna +junaid +junas +junasz +junbi +juncaceae +juncaceous +juncagineous +juncal +junciform +juncite +junckermann +juncoes +juncoides +juncos +juncous +junction +junctional +junctioncity +junctions +junctive +juncture +junctures +juncus +jundubah +june +juneau +juneberry +junebud +junectomy +junedale +juneflower +junejo +junelake +junero +junette +juney +jung +jungchiang +junge +jungermannia +junghans +jungian +jungle +jungled +jungles +jungleside +junglewards +junglewood +jungli +junglier +jungliest +jungly +jungman +jungment +junguru +juni +junia +juniata +junichi +junie +junin +junina +junior +juniorate +juniority +juniors +juniorship +juniper +juniperaceae +junipers +juniperus +junius +juniyah +junjung +junk +junkboard +junkbuster +junked +junker +junkerish +junkerism +junkermann +junkers +junket +junketed +junketeers +junketer +junketers +junketing +junkets +junkfood +junkichi +junkie +junkier +junkies +junkiest +junkin +junking +junkins +junkman +junkmen +junko +junks +junkun +junkyard +junkyards +juno +junoesque +junoi +junonia +junonian +junoon +junot +junping +junquera +junt +juntas +junto +juntos +juntura +junuluska +junya +junzaburo +juoasi +juornneau +juosas +juozas +jupati +jupda +jupe +jupiter +jupitr +jupon +jupp +juquila +juquinha +jurado +juraj +jural +jurally +jurament +juramentado +juramental +juramentally +juramentum +jurane +jurant +jurara +jurasik +jurassic +jurat +juration +jurative +jurator +juratorial +juratory +jurda +jureckova +jurek +jurel +jurewicz +jurg +jurgen +jurgens +jurgurra +jurgutis +juridical +juridically +juries +juriles +jurinac +juring +jurisconsult +jurisdiction +jurisdictive +jurist +juristic +juristical +juristically +jurists +juriti +jurititapuia +jurman +juro +jurors +jurowski +jursiang +juru +jurua +juruapuru +juruapurus +juruena +juruna +jurupaite +jurupari +juruti +jury +juryless +juryman +jurymen +jurywoman +jurywomen +juscesak +jushabhesed +juskevicius +jusqu +jussac +jussel +jussi +jussiaea +jussiaean +jussieuan +jussion +jussive +jussory +just +justa +justan +justcascade +justed +justen +juster +justers +justest +justia +justica +justice +justiceburg +justicehood +justiceless +justicelike +justicer +justices +justiceship +justiceweed +justicia +justicial +justicialist +justiciar +justiciary +justicies +justifiable +justifiably +justificator +justified +justifier +justifiers +justifies +justifieth +justify +justifying +justifyingly +justin +justina +justine +justing +justinianian +justinianist +justinn +justino +justitia +justle +justled +justling +justly +justment +justness +justo +justs +justus +justyfy +justyn +justyna +jusus +jususheriff +jutai +jutaro +jutes +jutiapa +jutic +jutka +jutlander +jutlandish +jutra +juts +jutta +juttah +jutted +jutting +juttingly +juttner +jutty +juturna +juvavian +juvelier +juvenal +juvenalian +juvenate +juvenescence +juvenescent +juvenile +juvenilely +juvenileness +juveniles +juvenilify +juvenilism +juvenilities +juvenility +juvenilize +juvent +juventa +juventas +juventin +juventud +juventude +juverna +juvia +juvisia +juvite +juwoi +juxta +juxtamarine +juxtaposed +juxtaposes +juxtaposing +juxtaposit +juxtapyloric +juxtaspinal +juxtlahuaca +juyas +juza +juznu +juzur +jvax +jview +jvnc +jvnca +jvncb +jvncc +jvncf +jwira +jwirapepesa +jyapu +jyarung +jynginae +jyngine +jynson +jynx +jyoti +jyuzo +jyvaskyla +kaaawa +kaaba +kaachan +kaadkiine +kaafu +kaagan +kaai +kaakyi +kaalong +kaamba +kaana +kaang +kaanse +kaantyu +kaanu +kaapor +kaare +kaaren +kaarina +kaarlo +kaart +kaas +kaba +kababish +kabade +kabadi +kabaena +kabaila +kabaka +kabakada +kabala +kabalai +kabalan +kabalas +kabambare +kabana +kabanov +kabara +kabaragoya +kabaran +kabard +kabardian +kabardinian +kabare +kabari +kabasalan +kabaya +kabayan +kabba +kabbakwe +kabbala +kabbalah +kabbalahs +kabbalas +kabbeljaws +kabcam +kabe +kabeer +kabel +kabena +kabenau +kabende +kaberu +kabi +kabia +kabiano +kabibble +kabiet +kabila +kabilol +kabinda +kabinter +kabir +kabira +kabire +kabirpanthi +kabistan +kabixi +kabiye +kabja +kabjn +kablake +kabo +kabob +kabobs +kabok +kabol +kabola +kaboli +kabolizadeh +kabolo +kabong +kabonga +kaboom +kabore +kabori +kabos +kabotirai +kabou +kabras +kabre +kabu +kabua +kabui +kabukis +kabul +kabuli +kabulowan +kabuluwen +kabunga +kabungsuan +kabupaten +kabure +kaburuang +kabussyan +kabwa +kabwari +kabwir +kabwum +kabye +kabyle +kabylia +kabylie +kabzeel +kaca +kacang +kacchi +kacem +kacer +kacey +kacha +kachalky +kachama +kachari +kachariya +kachcha +kachchhi +kachchi +kache +kachel +kachi +kachia +kachichere +kachikwakwa +kachin +kachina +kachinas +kachiri +kachkanar +kachmere +kachru +kachuana +kachuevskaya +kacie +kacik +kacivelia +kackar +kacked +kackovic +kaclakin +kacmiri +kacor +kacoutchiet +kacsor +kacy +kaczmarek +kaczmarska +kaczor +kaczynski +kada +kadaga +kadagbe +kadagi +kadai +kadaian +kadaklan +kadam +kadamani +kadane +kadar +kadara +kadarite +kadaro +kadaru +kadas +kadasan +kadavu +kadaya +kadayan +kadazan +kaddishes +kadein +kaden +kadena +kader +kadero +kaderu +kadesh +kadeshbarnea +kadey +kadi +kadian +kadien +kadikane +kadimkaban +kadiogo +kadiolo +kadiro +kadis +kadischi +kadish +kadishim +kadison +kadiwe +kadiweu +kadiyala +kadjalla +kadjang +kadjidi +kadjimi +kadlecik +kadmi +kadmiel +kadmonites +kado +kadoc +kadoguchi +kadoka +kados +kadovar +kadri +kadric +kadryial +kadu +kadugli +kadukali +kadumodi +kadun +kaduna +kaduo +kadyan +kaede +kaefer +kaehler +kaela +kaele +kaelter +kaeme +kaempferol +kaen +kaengkeh +kaerleks +kaesabu +kaese +kaesongsi +kaethe +kaethi +kaeti +kaew +kafa +kafanchan +kaferita +kaffa +kaffer +kafficho +kaffir +kaffirs +kaffiyeh +kaffraria +kaffrarian +kafia +kafir +kafire +kafiri +kafirin +kafirs +kafiz +kafka +kafkaloff +kafoa +kafr +kafritz +kafta +kaftan +kaftans +kafu +kafue +kafugu +kafwe +kaga +kagaba +kagama +kagan +kagankan +kagari +kagarko +kagate +kagawa +kagayan +kagayanen +kagbo +kagbowale +kagen +kageyama +kaggaba +kaghan +kaghani +kagi +kagirinaku +kagiuong +kago +kagobai +kagoma +kagorko +kagoro +kagoshima +kagoue +kagu +kagua +kagulu +kaguru +kaguta +kagwahibm +kagwahiph +kagwahiv +kagwahiva +kaha +kahabu +kahaian +kahajan +kahan +kahanamoko +kahanamoku +kahar +kahasi +kahau +kahayan +kahe +kahemba +kahhale +kahhan +kahikatea +kahil +kahili +kahin +kahkonen +kahle +kahlenberge +kahler +kahless +kahlotus +kahluri +kahly +kahn +kahneman +kahner +kahnert +kahoka +kahraman +kahrstedt +kahtasian +kahu +kahua +kahugu +kahuku +kahului +kahumamahon +kahuna +kahunas +kaia +kaiak +kaiama +kaian +kaiapit +kaibab +kaibartha +kaibi +kaibobo +kaibu +kaibubu +kaibus +kaiching +kaid +kaida +kaidannek +kaidanovsky +kaidemui +kaidipan +kaidipang +kaiditj +kaiep +kaifeng +kaifu +kaigh +kaigler +kaiiri +kaik +kaikadi +kaikadia +kaikai +kaikara +kaikawaka +kaike +kaiko +kaikoura +kaikovu +kaiku +kail +kaila +kailali +kailath +kaile +kailey +kaili +kailipamona +kailolo +kailua +kailuakona +kailyard +kailyarder +kailyardism +kaima +kaimana +kaimanga +kaimanovic +kaimbe +kaimbulawa +kaimo +kaimura +kain +kaina +kainah +kainantu +kainga +kaingang +kainidji +kainite +kains +kainsi +kaintiba +kainyn +kainz +kaiova +kaiowas +kaipang +kaipi +kaipu +kaipuri +kairaba +kairak +kairanga +kairatu +kairawi +kairi +kairine +kairiru +kairoline +kaironk +kairui +kairuimidiki +kairukaura +kairuku +kairys +kais +kaisak +kaise +kaisem +kaiser +kaiserdom +kaiserism +kaiserling +kaisers +kaisership +kaiserslau +kaist +kaitak +kaitaka +kaitarolea +kaitero +kaitetu +kaithi +kaititj +kaitlin +kaitlyn +kaitlynn +kaivi +kaiwa +kaiwai +kaiwasiboma +kaiwhiria +kaiwi +kaixien +kaiy +kaiyaka +kaja +kajaani +kajabi +kajagar +kajaja +kajakaja +kajakja +kajakse +kajal +kajaman +kajan +kajang +kajanga +kajawah +kajdii +kajdiy +kajdogo +kajdom +kajdyu +kaje +kajeck +kajeejit +kajekadara +kajeli +kajeput +kajeputs +kaji +kajiado +kajinga +kajiya +kajjara +kajji +kajkavian +kajlichova +kajo +kajoa +kajsa +kajtak +kajugaru +kajumerah +kajupulau +kajura +kajuru +kaka +kakaa +kakaba +kakabai +kakachhuki +kakadu +kakakta +kakalina +kakamega +kakan +kakanda +kakapo +kakar +kakarali +kakari +kakariki +kakas +kakasa +kakat +kakatoe +kakatoidae +kakauhua +kakawahie +kakaya +kakayamba +kakayato +kakbi +kakdju +kakdjuan +kakela +kakeli +kakemono +kakemonos +kakeroma +kakhetian +kakhovka +kaki +kakia +kakidrosis +kakiduge +kakie +kakih +kakihum +kakim +kakiru +kakis +kakistocracy +kakje +kakkak +kakke +kakky +kako +kakoe +kakogenic +kakogo +kakoli +kakomu +kakortokite +kakou +kakoy +kakoyto +kaksingri +kaku +kakua +kakumasu +kakumega +kakumo +kakumoakoko +kakumoaworo +kakuna +kakus +kakuta +kakutanis +kakuy +kakuya +kakwa +kakwagom +kakwere +kala +kalaazar +kalab +kalabakan +kalabalge +kalabari +kalabat +kalabit +kalabra +kalabuan +kalabugao +kalachev +kaladana +kaladdarsch +kalagan +kalahandi +kalahari +kalaheo +kalai +kalaichelvan +kalair +kalakafra +kalako +kalakul +kalali +kalam +kalama +kalamalo +kalamansanai +kalamazoo +kalami +kalamian +kalamianon +kalamkobon +kalamo +kalamse +kalana +kalanchoe +kalandariyah +kalang +kalanga +kalangoya +kalanguyya +kalanke +kalao +kalapa +kalapalo +kalapooian +kalapuya +kalapuyan +kalar +kalarides +kalarko +kalash +kalasha +kalashaala +kalashamon +kalashnikov +kalasie +kalasin +kalasongoia +kalat +kalatdlit +kalatumba +kalauna +kalaupapa +kalavrouzos +kalaw +kalb +kalba +kalbaugh +kalbfleisch +kalbu +kaldani +kaldara +kaldarari +kalderari +kalderash +kaldosh +kaldoyo +kalebwe +kalechstein +kaledine +kaledupa +kaleena +kalehe +kaleid +kaleidophon +kaleidophone +kaleidoscope +kaleidoskop +kaleidscopic +kalekah +kalel +kalem +kalema +kalemie +kalen +kalendae +kalendar +kalende +kalends +kalenin +kalenjin +kaleri +kalerng +kales +kaleu +kaleung +kaleva +kalevala +kalewhan +kalewife +kaley +kaleyard +kaleyards +kalgo +kali +kaliai +kalian +kaliana +kalianda +kaliban +kalibanos +kaliborite +kalibugan +kalich +kalida +kalidium +kalidor +kalie +kalif +kalifate +kaliform +kalifs +kalige +kaligenous +kaligi +kalik +kalika +kalike +kaliki +kalikka +kaliko +kalila +kalimantan +kalimba +kalimbas +kalimpong +kalin +kalina +kalinan +kalinda +kalindi +kalinenko +kalinga +kalingaitneg +kalinge +kalinin +kaliningrad +kalinite +kalinowski +kalinya +kaliophilite +kalipaya +kaliph +kaliphi +kaliphs +kalis +kaliski +kalispel +kalispell +kalisusu +kalisz +kalitami +kalitka +kalitta +kalitzkus +kalium +kaliums +kaliz +kalkadoon +kalkali +kalkaringi +kalkaska +kalkatungic +kalkatungu +kalkot +kalkoti +kalkus +kalkutung +kalla +kallah +kallahan +kallai +kallana +kallappa +kallavesi +kalle +kallege +kallek +kallenbach +kallenberg +kalleward +kalli +kallianiotes +kallianpur +kalliauer +kallie +kallilite +kallima +kallio +kalliope +kallisto +kallitype +kallungo +kally +kalm +kalmack +kalman +kalmar +kalmarian +kalmik +kalmika +kalmuck +kalmus +kalmyk +kalmykia +kalmykoirat +kalmytskii +kalmytz +kalnitsky +kalo +kalogerakos +kalogeros +kaloguerou +kalok +kalokagathia +kalokalo +kalon +kalona +kalondama +kalong +kalongo +kalop +kaloper +kalorama +kalosi +kalou +kaloyanchev +kalp +kalpa +kalpas +kalpis +kalpit +kalra +kalro +kalsbeek +kalser +kalsey +kalshandi +kalskag +kalsomine +kalsominer +kalt +kaltayev +kalte +kaltenberg +kaltio +kaltnegger +kalto +kalton +kaltungo +kalu +kalua +kaluli +kalum +kalumbo +kalumburu +kalumpang +kalumpit +kaluna +kalunda +kalundra +kalutara +kaluwan +kaluzny +kalvadi +kalvesta +kalvin +kalwa +kalwani +kalwar +kalwarowskyj +kalyaman +kalyan +kalyani +kalymmaukion +kalymmocyte +kalyokengnyu +kalypso +kama +kamaaina +kamaainas +kamachile +kamacite +kamaes +kamahi +kamairo +kamaitachi +kamaiura +kamal +kamala +kamalan +kamale +kamaloka +kaman +kamana +kamanap +kamanawa +kamane +kamang +kamanga +kamanidi +kamannaua +kamano +kamanokafe +kamansi +kamant +kamantan +kamante +kamanton +kamao +kamaoni +kamar +kamara +kamaragakok +kamares +kamarezite +kamari +kamarian +kamariang +kamaroff +kamaru +kamarupa +kamarupic +kamas +kamasa +kamasau +kamasin +kamass +kamassi +kamassian +kamatari +kamate +kamath +kamathi +kamatipoort +kamau +kamay +kamayira +kamayo +kamayura +kamba +kambaira +kambal +kambaramba +kambari +kambariduka +kambariire +kambata +kambatta +kambe +kambeba +kambegl +kambekambero +kamber +kambera +kamberataro +kamberatoro +kamberau +kamberchi +kamberri +kambhampati +kambia +kambiwa +kambiz +kamboh +kamboiramboi +kambonsenga +kambot +kambove +kambowa +kambun +kamburwama +kamchadal +kamchatkan +kamdang +kamdes +kamdeshi +kamdhue +kame +kamea +kameeldoorn +kameelthorn +kameko +kamekona +kamel +kamelaukion +kamemtxa +kamen +kamenawari +kameng +kamengmi +kamenskij +kamenyar +kameoka +kamer +kamera +kamerad +kameraden +kameragul +kamere +kameri +kamerson +kames +kamesasa +kamesh +kamet +kametsu +kamhao +kamhau +kamhmu +kamhow +kami +kamia +kamiah +kamias +kamichi +kamigami +kamigin +kamik +kamikazes +kamikulaka +kamikuluka +kamil +kamila +kamilah +kamilaroi +kamilla +kamillah +kamina +kamindjo +kaminski +kaminsky +kamio +kamir +kamiri +kamisese +kamiya +kamiyama +kamka +kamkam +kamkumun +kamla +kamlesh +kamma +kammalan +kammao +kammerer +kammererite +kamminga +kammu +kammyang +kamnum +kamo +kamone +kamora +kamori +kamoro +kamorta +kamot +kamou +kamoun +kamowski +kamp +kampa +kampaengphet +kampala +kampana +kampar +kampat +kampen +kampeng +kamperite +kampers +kampf +kampff +kamphaeng +kampheng +kampi +kampmann +kampong +kampot +kampsville +kampti +kamptomorph +kampuchea +kampuchean +kampung +kamran +kamrar +kamrau +kamrup +kamsa +kamsar +kamse +kamseh +kamsiki +kamsili +kamsui +kamta +kamtai +kamthorn +kamtoz +kamtuk +kamu +kamuan +kamuela +kamuke +kamuku +kamula +kamur +kamura +kamuran +kamuru +kamuzu +kamviri +kamwah +kamwai +kamwe +kamyar +kamyszek +kana +kanab +kanabu +kanad +kanae +kanagawa +kanagendra +kanagi +kanah +kanaho +kanak +kanaka +kanakanabu +kanakhoe +kanakuru +kanal +kanala +kanalu +kanaly +kanam +kanamanti +kanamara +kanamare +kanamari +kanambu +kanana +kanandede +kanandjoho +kanap +kanapit +kanaq +kanara +kanaranzi +kanarese +kanari +kanarraville +kanas +kanashi +kanasi +kanat +kanata +kanatabatu +kanatang +kanauji +kanauri +kanavin +kanawa +kanawari +kanawha +kanawhafalls +kanawhahead +kanchana +kanchanaburi +kanchi +kanchil +kanchit +kanchow +kanda +kandace +kandahar +kandahari +kandak +kandal +kandall +kandar +kandas +kandawire +kandawo +kande +kandel +kandelia +kandelski +kandemir +kandep +kandepe +kandere +kanderma +kandesiahir +kandh +kandia +kandiali +kandice +kandinsky +kandiyohi +kandju +kandla +kandoashi +kandol +kandomin +kandor +kandoshi +kandra +kandrian +kandy +kandyu +kane +kaneh +kaneko +kanela +kanem +kanematsu +kanembou +kanembu +kanemoto +kaneohe +kanephore +kanephoros +kaner +kaneshite +kanesian +kaneville +kang +kanga +kangana +kangani +kangar +kangaroo +kangarooer +kangaroos +kangas +kangean +kangeju +kangelis +kanggewot +kangite +kangkung +kangli +kanglo +kango +kangou +kangra +kangri +kangu +kangwane +kangwondo +kangye +kanhobal +kanhuru +kania +kanichana +kanies +kaniet +kaniguram +kanigurami +kanikeh +kanikhoe +kanikkar +kanikkaran +kanikyli +kanin +kaningara +kaningdom +kaningi +kaningkon +kaningkwom +kaningra +kaninjal +kaninkon +kanioka +kaniran +kanite +kanjaga +kanjari +kanji +kanjiningi +kanjis +kanjiword +kanjobal +kanjobalan +kanjorski +kanjri +kanju +kanjuro +kankab +kankan +kankanaey +kankanai +kankanay +kankena +kankie +kankin +kankovsky +kanku +kann +kanna +kannada +kannan +kannapolis +kannappan +kanne +kanneh +kannel +kannemann +kanner +kannikan +kanno +kannume +kano +kanoe +kanokatsina +kanoma +kanona +kanoon +kanoonnikov +kanopolis +kanorado +kanosh +kanouri +kanoury +kanoute +kanowit +kanpetlet +kanpur +kanred +kans +kansa +kansan +kansans +kansas +kansascity +kansasville +kant +kantana +kantanawa +kantar +kantarawady +kante +kantele +kanteletar +kanten +kanter +kantewu +kantian +kantianism +kantians +kantikoy +kantilan +kantism +kantist +kantivo +kantiwa +kantner +kantohe +kantole +kanton +kantone +kantor +kantorek +kantorkova +kantorovich +kants +kantu +kantua +kantymansy +kanu +kanufi +kanum +kanungo +kanuri +kanwar +kanwe +kany +kanya +kanyak +kanyaw +kanyay +kanyok +kanyoka +kanyon +kanyop +kanyu +kanzaburo +kanze +kaoh +kaohsiung +kaoji +kaokeep +kaokoland +kaokonau +kaokoveld +kaolack +kaoliang +kaolinate +kaolinic +kaolinize +kaon +kaonda +kaonde +kaons +kaora +kaos +kaoud +kaoussou +kapa +kapaa +kapaau +kapadia +kapagalan +kapahiang +kapai +kapaina +kapakapa +kapal +kapampangan +kapanawa +kapangan +kapari +kaparoko +kapatchez +kapatos +kapatou +kapau +kapauku +kapaur +kapauri +kapeika +kapel +kapella +kapelos +kaper +kapet +kapiangan +kapianidze +kapil +kapili +kapimpina +kapin +kapinawa +kapisa +kapit +kapital +kapiton +kapitsa +kaplan +kaplanmeier +kaplanova +kaplowitz +kapniste +kapo +kapoks +kapon +kapona +kapone +kapontori +kapoor +kapore +kapori +kapos +kapotte +kapowsin +kapp +kappa +kappas +kappe +kappeler +kappland +kappy +kapralov +kapriman +kaprisky +kaps +kapsa +kapsch +kapsiki +kapten +kapteynia +kaptiau +kaptur +kapu +kapuas +kapucha +kapuchin +kapugu +kapul +kapur +kapuscinski +kapustina +kapustinskiy +kaput +kaputiei +kaputt +kapwi +kaqa +kara +karaali +karabagh +karabakh +karabatsos +karaboro +karacaylar +karachai +karachaitsy +karachalios +karachay +karachayla +karademir +karadjee +karadjeri +karaer +karaga +karagan +karagas +karagass +karagawan +karageorge +karaginskij +karagwe +karahawyana +karaiai +karaikarai +karaim +karaism +karaite +karaitism +karaja +karak +karaka +karakalpak +karakatchan +karakati +karakelong +karakh +karakirgiz +karaklobuk +karakovonve +karakul +karakuls +karakuyu +karalee +karallis +karalynn +karam +karama +karaman +karamanli +karamba +karambit +karami +karamiananen +karamoja +karamojo +karamojong +karamu +karamzin +karan +karandinos +karang +karanga +karangan +karangi +karankasso +karanovic +karao +karaoke +karapana +karapano +karapapak +karapapakh +karapiet +kararao +karas +karasburg +karasek +karashi +karaskova +karass +karasuma +karat +karata +karataew +karatai +karatas +karate +karates +karath +karatin +karats +karatzas +karau +karaw +karawa +karawanken +karawari +karawop +karax +karaxahar +karaya +karayan +karazm +karbala +karbersridge +karbi +karbo +karbyshev +karcev +karch +karchevski +kard +kardhitsa +kardomateas +kardos +kare +kareah +kareao +karee +kareen +kareeta +karekare +karel +karela +karelian +karelina +karels +karelsen +karely +karen +karena +karenbyu +kareneri +kareng +karenin +karenina +karenjo +karennyi +kareovan +kareowan +karesau +karesuando +kareti +karette +karewicz +karewo +karewski +karey +karezimulla +karfa +karfasia +karfrey +kargan +kargas +karge +kargen +karger +kargil +kargilpurik +karhadi +karharbari +karhay +karhuniemi +kari +karia +kariana +kariba +karibian +karibib +karic +karie +karifi +karih +karijona +karikitang +karil +karilynn +karim +karimata +karime +karimojong +karimui +karin +karina +karine +karingani +kariotta +karipu +karipuna +karira +kariri +karirixuco +karisa +karissa +karita +karite +karitia +karitiana +kariya +kariyu +karjala +karkaa +karkar +karkaryuri +karkawska +karkawu +karko +karkor +karkotsky +karkov +karl +karla +karlan +karlatos +karle +karlee +karleen +karlek +karlen +karlene +karlheinz +karli +karlie +karlin +karling +karlludwig +karlmarx +karlo +karloff +karlon +karlotta +karlotte +karlowa +karlsen +karlson +karlsruhe +karlsson +karlstad +karlstadt +karlton +karluk +karlweis +karlweiss +karly +karlyn +karma +karmali +karman +karmann +karmas +karmathian +karmen +karmenu +karmic +karmoja +karmouth +karn +karna +karnaby +karnack +karnaim +karnak +karnali +karnas +karnatak +karnataka +karnazes +karne +karnes +karnescity +karng +karnic +karniloff +karnilova +karno +karns +karnscity +karnstein +karnten +karnu +karo +karoche +karoff +karok +karoka +karol +karola +karolanos +karole +karolefski +karolek +karolien +karolin +karolina +karoline +karolinum +karolla +karoly +karolyn +karoma +karombe +karompa +karon +karondi +karonga +karongsi +karoo +karore +kaross +karossa +karou +karoudjian +karoui +karoumidze +karp +karparim +karpathy +karpel +karpelevich +karpenko +karpf +karpman +karpov +karpuzov +karr +karrah +karrajarra +karras +karrayiannis +karre +karree +karri +karrie +karron +karroo +karroum +karrusel +karry +kars +karsan +karsavina +karsha +karshi +karshuni +karsner +karson +karst +karstadt +karsten +karstenite +karstic +karsts +karsz +kart +kartah +kartal +kartalian +kartalion +kartan +kartashov +kartashova +kartasoff +kartel +karten +karter +kartha +karthalo +karthaus +karthli +karti +kartik +kartinkah +kartinki +kartlian +kartochki +kartolian +kartometer +kartos +kartozian +karts +karttunen +kartutjara +kartuzov +kartvel +kartvelia +kartvelian +karu +karua +karuama +karufa +karuk +karum +karun +karuna +karunanidhi +karunaratne +karupaka +karutana +karuzi +karva +karval +karvid +karwar +karwinskia +karwowski +kary +karyaster +karyenchyma +karyl +karylin +karyn +karyo +karyochrome +karyochylema +karyocyte +karyogamic +karyogamy +karyokinesis +karyokinetic +karyologic +karyological +karyology +karyolymph +karyolysidae +karyolysis +karyolysus +karyolytic +karyomere +karyomerite +karyomitoic +karyomitome +karyomiton +karyomitosis +karyomitotic +karyon +karyoplasm +karyoplasma +karyoplasmic +karyorrhexis +karyoschisis +karyosome +karyotin +karyotype +karzau +kasa +kasaa +kasabian +kasagi +kasai +kasan +kasanga +kasara +kasatsu +kasbah +kasbeer +kasbeke +kasbia +kasbow +kascamiol +kasche +kaschejeff +kaschemiri +kaschenko +kasdan +kasdorf +kase +kasebian +kasedon +kasei +kasel +kasele +kasem +kasena +kasene +kaseng +kasenga +kasere +kasey +kasha +kashan +kashani +kashas +kashaya +kashef +kasher +kashfi +kashga +kashgar +kashi +kashima +kashimbila +kashirina +kashishache +kashiwagi +kashkadarya +kashkai +kashkari +kashkarova +kashkin +kashmere +kashmir +kashmiri +kashmirian +kashmirs +kashoki +kashoubish +kashruth +kashtawari +kashtwari +kashube +kashubian +kashujana +kashul +kashuyana +kashyap +kashyapa +kasia +kasich +kasida +kasieh +kasifa +kasigau +kasigluk +kasiguranin +kasikumuk +kasilof +kasimbar +kasimir +kasimirsky +kasimovtatar +kasira +kasiui +kasiwa +kaska +kaskell +kasker +kasket +kaskett +kaskey +kaski +kaskiha +kasm +kasnar +kasnatan +kasolite +kason +kasonaweja +kasongo +kasongolunda +kasonke +kasota +kaspar +kasparian +kasper +kasperl +kaspersky +kasprzak +kasprzyk +kasra +kasrapai +kass +kassa +kassabah +kassak +kassam +kassandra +kassanga +kassbach +kasse +kassebaum +kassellis +kassem +kassena +kasseng +kasseri +kasseti +kassetu +kassey +kassi +kassia +kassie +kassim +kassis +kassissia +kassite +kassler +kasso +kasson +kassonke +kassoum +kassu +kast +kastalia +kastamonu +kastanitas +kastelberg +kasten +kastens +kastner +kaston +kastoria +kastura +kasturbai +kasu +kasua +kasubian +kasuko +kasumovich +kasungu +kasunko +kasupe +kasuwa +kasuweri +kasznar +kaszner +kata +kataang +katab +katabaga +katabanian +katabasis +katabatic +katabella +katabolic +katabolism +katabolite +katabolize +katabothron +katacrotic +katacrotism +kataev +katagenesis +katagenetic +katagum +katai +katakana +katakanas +katakari +katakinesis +katakinetic +katakiribori +katalase +katalin +katalysis +katalyst +katalytic +katalyze +katamorphism +katan +katancharoen +katang +katanga +kataoka +kataphoresis +kataphoretic +kataphoric +kataphrenia +kataplasia +kataplectic +kataplexy +katar +katara +katari +katarin +katarina +katarqalai +kataryna +katastate +katastatic +katat +katatonia +katatonic +katatsya +katatype +katauixi +katausan +kataviri +katawa +katawian +katawina +katawixi +katazi +katbol +katch +katcha +katchal +katchall +katcher +katchi +katchmar +katchung +katcina +katczinsky +kate +katee +kategaya +katege +kateghe +kateik +katemcy +katentaapuli +katerfelto +katerina +katerine +katerini +kateryn +katey +kath +katha +kathal +katharevousa +katharina +katharine +kathariya +katharometer +katharses +katharsis +kathartic +katharyn +kathe +katherin +katherina +katherine +katheryn +kathi +kathiawari +kathie +kathina +kathiyawadi +kathl +kathleen +kathlin +kathlyn +kathmandu +kathnelson +kathodi +kathodic +kathrerine +kathrin +kathrine +kathryn +kathryne +kathy +kathye +kati +katia +katiara +katiati +katib +katibian +katica +katie +katiekaboom +katiesoft +katigal +katik +katimetomka +katina +katine +katingan +katininanti +katinja +katinka +katio +katiola +katipo +katipunan +katipuneros +katir +katis +katisha +katiu +kativa +katiyai +katiyar +katja +katjiuongua +katka +katkari +katke +katla +katleen +katlin +katman +katmandu +katmon +katner +kato +katogle +katon +katonah +katong +katos +katosh +katov +katova +katrakis +katren +katri +katrin +katrina +katrinas +katrine +katrinka +kats +katsa +katsaros +katsina +katsiong +katsouras +katsu +katsukuni +katsulas +katsumi +katsumoto +katsuno +katsunori +katsup +katsura +katsurahama +katsuwonidae +katsuya +katsy +katt +katta +kattakkuzhy +kattalan +kattang +kattath +kattea +kattegat +katti +kattie +kattner +kattrin +kattskillbay +katu +katua +katuena +katugi +katuic +katuka +katuki +katukina +katukinan +katumene +katun +katurai +katuscha +katusha +katuthap +katvadi +katwena +katy +katya +katydid +katydids +katyusha +katz +katzelmacher +katzenelson +katzenjammer +katzie +katzner +katzoff +katzur +kauai +kaudel +kauescar +kaufer +kauffeldt +kauffman +kauffmann +kaufherr +kaufman +kaufmann +kaugat +kaugel +kauil +kaukau +kaukaue +kaukauna +kaukombaran +kauli +kaulong +kauma +kaumakani +kaumifi +kaunak +kaunakakai +kaunas +kaunda +kaunga +kaunitz +kaunpracha +kaupfer +kaupstadar +kaupstadur +kaur +kaura +kauravas +kaure +kaureh +kauri +kauru +kaus +kausar +kausche +kaushik +kautchy +kautsky +kauvia +kauwatakari +kauwerawec +kauwerawetj +kauwol +kauyari +kauyawa +kavah +kavahiva +kavaic +kavakure +kavala +kavalan +kavaljerer +kavanagh +kavanan +kavanaugh +kavango +kavangos +kavar +kavarauan +kavarsky +kavass +kave +kaverin +kaverznev +kavi +kavirondo +kavis +kavixi +kaviyoor +kavner +kavor +kavu +kavua +kavus +kavwol +kawa +kawacha +kawada +kawaguchi +kawahara +kawahib +kawahip +kawaib +kawaiisu +kawaka +kawakami +kawakarubi +kawaliap +kawalib +kawama +kawamura +kawang +kawanga +kawanuwan +kawar +kawara +kawarazaki +kawari +kawarma +kawasaki +kawashima +kawaskar +kawatani +kawathi +kawati +kawatsa +kawauchi +kawaw +kawayan +kawazu +kawchodinne +kawcity +kawe +kaweah +kawel +kawesqar +kawika +kawiku +kawillary +kawit +kawkawlin +kawki +kawol +kawonde +kawsadze +kawu +kaxarari +kaxariri +kaxetian +kaxib +kaxinaua +kaxinawa +kaxu +kaxuia +kaxuiana +kaxynawa +kaya +kayabi +kayagar +kayageum +kayah +kayak +kayaker +kayakers +kayaks +kayala +kayalioglu +kayam +kayama +kayaman +kayan +kayani +kayaniyut +kayankenyah +kayanza +kayapa +kayapo +kayapokradau +kayapwe +kayar +kayasth +kayastha +kayasthi +kayay +kaycee +kaye +kayeli +kayenta +kayes +kaygir +kayik +kayin +kayinbyu +kayla +kaylan +kayle +kaylee +kayles +kayley +kaylil +kaylor +kaylyn +kaymeer +kaynak +kayoa +kayobe +kayoed +kayoes +kayoing +kayoko +kayong +kayort +kayos +kayova +kaypour +kaypro +kayron +kays +kayser +kayseri +kaysone +kayssler +kaysville +kaytag +kaytak +kayu +kayuagung +kayubatu +kayumerah +kayung +kayupulau +kazaan +kazachkov +kazacos +kazagham +kazago +kazak +kazakh +kazakhi +kazakhstan +kazakhstania +kazakos +kazakov +kazamakis +kazan +kazanretto +kazantipe +kazar +kazatski +kazatsky +kazax +kazbegi +kazclock +kazdim +kazdin +kazem +kazeruni +kazhdiy +kazi +kazia +kaziaskier +kazihiro +kazik +kazim +kazimierski +kazimierz +kazimirrz +kazip +kazis +kazlik +kazman +kazmi +kazmier +kazmierczak +kazoos +kazuhiko +kazuhiro +kazuhito +kazuko +kazukuru +kazumasa +kazumba +kazumi +kazuo +kazurinsky +kazuyo +kazuyoshi +kazuyuki +kbalan +kbaud +kbdcontrol +kbdmap +kbits +kblimit +kbline +kbootmanager +kbox +kbps +kbrendan +kbytes +kclass +keaau +keach +keacorn +keai +keaka +kealakekua +kealey +kealia +keams +keamscanyon +kean +keana +keane +keang +keansburg +keanu +keapara +keaqa +keaqe +kearney +kearns +kearny +kearsage +kearsarge +kearsey +keasbey +keast +keat +keatchie +keates +keating +keaton +keatsian +keavy +keawe +keays +kebab +kebabian +kebabs +kebadi +kebai +kebar +kebawopasali +kebbawa +kebbi +kebbie +kebbuck +kebede +kebeirka +kebena +kebir +kebkebiya +keble +kebner +kebob +kebobs +kebu +kebumtamp +kebutu +keca +kecamatan +kechan +kecheibi +kechel +kechi +kechia +kechichian +kechler +kechman +kecho +kecil +keck +keckle +keckling +kecksy +kecky +kedah +kedahperak +kedamaian +kedang +kedangese +kedar +kedarite +kedayan +kedde +keddi +keddie +kede +kedem +kedemah +kedemoth +keder +kedes +kedesh +kedge +kedged +kedger +kedgeree +kedges +kedging +kedi +kedia +kedien +kedlock +kedner +kedor +kedougou +kedric +kedrova +kedushshah +kedyan +keebler +keech +keechie +keedysville +keeeng +keef +keefe +keefer +keefo +keefs +keegan +keegoharbor +keegstra +keehan +keehn +keek +keeker +keekonyokie +keel +keela +keelage +keelan +keelbill +keelblock +keelboat +keelboatman +keelboats +keele +keeled +keeler +keeley +keelfat +keelhale +keelhaul +keelhauled +keelhauls +keelia +keelie +keeline +keeling +keelivine +keelless +keelman +keelrake +keels +keely +keembo +keen +keena +keenan +keenay +keene +keened +keener +keeners +keenes +keenesburg +keenest +keenevalley +keeney +keeneyed +keenge +keening +keenly +keenmountain +keenness +keeno +keenok +keens +keensburg +keep +keepable +keepalive +keepalives +keepen +keeper +keeperess +keepering +keeperless +keepers +keepership +keepest +keepeth +keepin +keeping +keepings +keeps +keepsake +keepsakes +keepsaky +keepworthy +keer +keerkezi +keerogue +kees +keeseo +keeseville +keesler +keest +keester +keesters +keet +keetmanshoop +keeve +keever +keewatin +keews +keezletown +keezy +kefa +kefallinia +kefas +keffa +keffe +keffel +keffer +keffi +keffir +kefing +kefinya +kefir +kefiric +kefirs +keflavik +kefti +keftian +keftiu +kegalla +kegberike +kegengele +kegl +kegler +keglers +kegley +kegs +keha +kehane +kehaya +kehdeo +kehelala +kehelathah +kehena +kehi +kehia +kehillah +kehja +kehlao +kehler +kehleyr +kehloori +kehnet +kehobo +kehoe +kehoeite +kehr +kehshin +keia +keiagana +keid +keiding +keifer +keiga +keigana +keighley +keightley +keigler +keigo +keiichiro +keiji +keijiro +keiju +keiko +keikutou +keilah +keilhauite +keilholz +keilson +keilty +keim +kein +keine +keir +keirnan +keiron +keiser +keister +keisters +keisterville +keita +keitel +keith +keithsburg +keithville +keitloa +keiyamdena +keiyo +keizer +kejaka +kejaman +kejeng +kejiu +keka +kekaha +kekamba +kekar +kekaungdu +kekchi +kekem +kekhong +kekotene +kekoura +keku +kekule +kekuna +kela +kelaa +kelabit +kelai +kelaiah +kelana +kelang +kelangi +kelantan +kelao +kelawa +kelawit +kelayres +kelbe +kelbert +kelcey +kelch +kelchin +kelci +kelcie +kelcy +keld +keldron +keldysh +kele +keleb +kelebe +kelectome +keleh +kelek +kelemen +keleng +kelenga +keleo +kelep +kelety +keleyi +keleyqiq +kelford +kelhuri +keli +keliko +kelila +kelima +kelimuri +kelinga +kelingan +kelingi +kelinjau +kelinyau +kelita +keliz +kelk +kelkar +kelker +kell +kella +kelland +kellard +kellaway +kelle +kelleher +kellen +keller +kellerkinder +kellerman +kellermann +kellermeier +kellerton +kellett +kelley +kelli +kellia +kellie +kelliher +kellin +kellina +kellini +kellion +kellner +kello +kellog +kellogg +kells +kellsie +kellum +kellupweed +kelly +kellyann +kellybootle +kellycorners +kellye +kellylake +kellymdss +kellys +kellysville +kellyton +kellyville +kelman +kelo +keloid +keloidal +keloids +kelon +kelong +kelowna +kelp +kelped +kelper +kelpfish +kelpie +kelpies +kelping +kelps +kelpware +kelpwort +kelpy +kelsall +kelsay +kelsch +kelsey +kelseyville +kelsi +kelsie +kelso +kelsy +kelt +kelter +keltic +keltics +keltoi +kelton +keltouma +kelts +kelty +kelulau +kelvanev +kelvey +kelvin +kelvins +kelwin +kelwing +kelyphite +kelz +kemah +kemai +kemak +kemal +kemalism +kemalist +kemandoga +kemant +kemata +kemb +kembaloh +kembata +kembatinya +kembayan +kember +kemberano +kemble +kemblesville +kemel +kemelom +kemena +kemeny +kemer +kemerlee +kemerovo +kemezung +kemi +kemik +kemish +kemistry +kemkeng +kemme +kemmerer +kemmerick +kemmerling +kemmungam +kemp +kempchinsky +kempe +kemper +kemperyman +kempf +kempffer +kempite +kemple +kempner +kemppainen +kempski +kempson +kempster +kempt +kempthorne +kemptken +kempton +kempy +kemr +kemstach +kemtuik +kemtuk +kemu +kemuel +kenaf +kenai +kenan +kenansville +kenareh +kenaston +kenat +kenath +kenathi +kenati +kenaz +kenbridge +kench +kend +kenda +kendal +kendalia +kendall +kendallhunt +kendallpark +kendalls +kendallville +kendari +kendata +kendate +kendaya +kendayan +kende +kendell +kendem +kendeng +kenderesi +kenderong +kendi +kendir +kendleton +kendo +kendos +kendra +kendre +kendreck +kendrick +kenduskeag +kendyr +keneas +kenedi +kenedibi +kenedougou +kenedy +kenefic +kenelm +kenen +kenering +kenesaw +kenett +keney +kenezite +keng +kenga +kenge +kengtung +kenhorst +keni +kenichi +kenickie +kenieba +kenik +kenilorea +kenilworth +kenin +keningau +keninjal +kenipsim +kenite +kenites +keniti +kenitra +kenizzites +kenja +kenji +kenkel +kenku +kenlan +kenlore +kenly +kenmare +kenmark +kenmawr +kenmir +kenmore +kenna +kennaday +kennar +kennard +kenne +kenneally +kennebec +kennebecker +kennebunk +kennebunker +kenned +kennedale +kennedy +kennedya +kennedyville +kennel +kenneled +kenneling +kennelled +kennelling +kennelly +kennelman +kennels +kennely +kenner +kennerdell +kennesaw +kenneson +kenneth +kennett +kennettsq +kennewick +kenney +kennicott +kennie +kenning +kennings +kennington +kenningwort +kennis +kenno +kennon +kennustod +kenny +kennyon +keno +kenobi +kenogenesis +kenogenetic +kenogeny +kenol +kenos +kenosha +kenosis +kenosises +kenotic +kenoticism +kenoticist +kenotism +kenotist +kenotoxin +kenotron +kenova +kenozalake +kenrick +kenrussell +kens +kensal +kense +kenseikai +kensense +kensett +kenseu +kensieu +kensinger +kensington +kensit +kensitite +kensiu +kenspac +kenspeck +kenspeckle +kenswei +kensweinsei +kent +kenta +kentabogn +kentallenite +kentaq +kentaro +kentarus +kentcity +kentia +kenticism +kentin +kentish +kentishman +kentland +kentledge +kentrogon +kentrolite +kentse +kentshill +kentsstore +kentu +kentuck +kentuckian +kentuckians +kentung +kentwood +kenu +kenuz +kenuzi +kenvil +kenvir +kenward +kenwood +kenworthy +keny +kenya +kenyah +kenyan +kenyang +kenyans +kenyasudan +kenyi +kenyon +kenyte +kenzi +kenzie +kenzo +keogenesis +keogh +keokee +keokuk +keonjhar +keopara +keosauqua +keota +keough +keow +keown +keowre +kepe +kepekci +kepere +kephren +kepi +kepinska +kepis +kepler +keplerian +keppel +keppler +keprichal +kepros +kept +kepulauan +kera +kerabi +kerabit +keracele +kerala +keralite +keram +kerama +keramai +keramatoi +keramuak +keran +kerana +kerang +keranga +keraphyllous +kerasin +kerasine +kerat +keratalgia +keratectasia +keratectomy +keraterpeton +keratin +keratinize +keratinoid +keratinose +keratinous +keratins +keratitis +keratocele +keratoconus +keratode +keratodermia +keratogenic +keratogenous +keratoglobus +keratohyal +keratoid +keratoidea +keratoiritis +keratol +keratolysis +keratolytic +keratoma +keratomas +keratome +keratometer +keratometry +keratoncus +keratonosus +keratonyxis +keratophyre +keratoplasty +keratoscope +keratoscopy +keratose +keratoses +keratosis +keratotic +keratotome +keratotomies +keratotomy +keratto +keraulophon +keraulophone +keraunia +keraunion +keraunograph +keraunophone +keraunoscopy +kerawara +kerayan +kerb +kerbed +kerberos +kerbing +kerbs +kerbstone +kerby +kerbyknob +kerch +kerchief +kerchiefed +kerchiefs +kerchieves +kerchner +kerchoo +kerchug +kerchunk +kerckhover +kerczewski +kerd +kerdau +kere +kerebe +kerectomy +kerehouheng +kerei +kerek +kerekere +kerekes +kerekhwe +kerekou +kerel +kerema +keremi +keren +kerenhappuch +kerens +kerensky +kerepunu +keres +keresan +keresztes +kerewa +kerewagoari +kerewe +kerewo +kereyu +kerf +kerfed +kerfing +kerflap +kerflop +kerflummox +kerfoot +kerfs +kerguelen +kerhill +kerhonkson +keri +keriaka +keriakos +keriann +kerianne +keriau +kericho +kerifa +kerim +kerima +kerinchi +kerinci +kerini +kerintji +kerio +kerioth +keris +kerite +kerjean +kerkhoven +kerkira +kerkuk +kerl +kerlin +kerlovich +kerly +kermack +kermadec +kerman +kermani +kermanji +kermanshah +kermanshahan +kermanshahi +kermes +kermesic +kermesite +kermet +kermis +kermit +kern +kernahan +kernan +kerndon +kerned +kernel +kernelbased +kerneld +kerneled +kerneling +kernelled +kernelless +kernelling +kernelly +kernels +kerneltype +kerner +kernersville +kernetty +kerney +kernighan +kerning +kernish +kernite +kernke +kernodle +kernos +kerns +kernville +kerogen +keroi +kerorogea +keros +kerosene +kerosenes +kerosine +kerossian +kerouac +kerouane +kerplunk +kerr +kerrada +kerrang +kerre +kerrey +kerri +kerria +kerrick +kerridge +kerrie +kerrigan +kerrikerri +kerril +kerrill +kerrin +kerrite +kerrville +kerry +kersaint +kersantite +kerscher +kerschner +kersey +kerseymere +kershaw +kerslam +kerslosh +kersmash +kerst +kerstan +kersten +kerstin +kertai +kerugma +kerwham +kerwin +keryck +kerygmatic +kerykeion +kerylen +kerystic +kerystics +keryx +kesanoweja +kesar +kesawai +kesek +keseki +keselman +kesengele +keseris +keshena +keshtmand +keshur +keskisuomi +kesler +kesley +keslie +kesling +kesongola +kessel +kesselhut +kessia +kessiah +kessing +kessler +kesslerman +kessley +kestelman +kesten +kestenbaum +kestens +kester +kestin +kestner +kestrel +kestrels +kesu +keswick +keta +ketagalan +ketal +ketan +ketangalan +ketapang +ketatin +ketazine +ketch +ketcham +ketchcraft +ketches +ketcheson +ketchum +ketchups +kete +ketebo +keteghe +ketego +ketekrachi +ketembilla +keten +ketene +keteneneyu +ketengban +ketiar +ketiepo +ketimide +ketimine +ketin +ketipate +ketipic +ketkar +ketley +keto +ketogen +ketogenesis +ketogenic +ketoheptose +ketohexose +ketoketene +ketol +ketole +ketolysis +ketolytic +ketonemia +ketones +ketonic +ketonimid +ketonimide +ketonimin +ketonimine +ketonization +ketonize +ketonuria +ketose +ketoside +ketosteroid +ketosuccinic +ketoxime +ketsai +ketsler +kette +kettelhut +kettenring +ketterer +ketteridge +ketterling +ketti +kettie +ketting +kettle +kettlebrook +kettlecase +kettledrum +kettledrums +kettlefalls +kettleful +kettleisland +kettlemaker +kettlemaking +kettler +kettleriver +kettles +kettleson +kettlewell +ketto +ketty +ketu +ketuba +ketuen +ketungau +ketupa +keturah +ketway +ketweof +ketyl +ketz +keuka +keukapark +keung +keuning +keup +keuper +keurboom +keuro +keuru +kevalin +kevat +kevati +keve +kevel +kevelhead +kevels +keven +keveny +kevil +kevils +kevin +kevina +kevo +kevola +kevork +kevorkian +kevu +kevutzah +kevyn +kewa +kewadin +kewah +kewanee +kewani +kewanna +kewaskum +kewat +kewati +kewaunee +keweenawan +keweenawbay +keweenawite +kewi +kewie +kewieng +kewl +kewlzyzop +kewot +kewpie +kewpies +kextended +kexy +keyable +keyagana +keyagani +keyage +keyapaha +keyb +keybindings +keybmon +keyboard +keyboarded +keyboarding +keyboards +keyboid +keybr +keybxx +keycap +keycaps +keye +keyed +keyes +keyesport +keyex +keyfile +keyfitz +keygen +keygenerator +keygens +keyholes +keying +keykenerator +keylargo +keyless +keylet +keylock +keyloun +keymacro +keymaker +keymakers +keyman +keymar +keymas +keynes +keynesianism +keynote +keynoted +keynoter +keynoters +keynotes +keynoting +keypad +keypads +keyport +keypressed +keypunched +keypuncher +keypunchers +keypunches +keypunching +keys +keyseater +keyser +keyserlick +keyserv +keyset +keysets +keysmith +keyspace +keyster +keysters +keyston +keystone +keystoned +keystoner +keystones +keystroke +keystrokes +keystronic +keysville +keytesville +keytext +keytop +keyway +keyways +keywd +keywest +keyword +keywords +keywrd +kezami +kezarfalls +kezas +kezhama +kezia +keziz +kframes +kgaga +kgalagadi +kgatla +kgatleng +kgbvax +khabarovsk +khabarovskom +khadbai +khaddam +khaddar +khadem +khadi +khadia +khae +khaga +khagiarite +khagrachari +khahoon +khai +khaidak +khaiki +khair +khaira +khairia +khaja +khajahani +khajuna +khajur +khakanship +khakas +khakass +khakhas +khakhass +khaki +khakied +khakis +khako +khal +khalaf +khalaj +khalchiguor +khaldian +khaled +khalek +khalenge +khalf +khalid +khalif +khalifa +khalifat +khalifs +khalij +khalil +khalilzadeh +khaling +khaliqyar +khalkha +khalkhal +khalkhali +khalkidhiki +khalq +khalqi +khalsa +kham +khama +khambatta +khambu +khamdy +khamed +khamenboran +khamet +khami +khamir +khamit +khamka +khammagar +khammouan +khamnigan +khampti +khams +khamsin +khamsyal +khamta +khamtai +khamti +khamu +khamuk +khan +khana +khanabad +khanag +khanaqin +khanate +khanates +khanda +khandait +khandeshi +khandesi +khandi +khandish +khandud +khaner +khang +khangoi +khanh +khania +khanina +khanjar +khanjee +khankah +khanna +khanov +khans +khansamah +khansaman +khante +khanti +khantis +khanty +khanum +khanung +khanwar +khao +khaput +khar +kharadze +kharaj +kharaqan +kharar +kharberd +kharg +khari +kharia +khariathar +kharijite +kharish +khariton +khariya +kharmang +kharoali +kharoshthi +kharouba +kharroubah +kharsah +khartoum +khartoumer +khartum +kharua +kharvi +kharwa +kharwar +kharwari +kharyuz +khas +khasa +khasarli +khasavyurt +khashi +khasi +khasie +khasijaintia +khasiyas +khaskhong +khaskovo +khaskura +khasminskii +khasonke +khasparjiya +khass +khassee +khat +khatahi +khatak +khatang +khatia +khatib +khatin +khatki +khatod +khatola +khatri +khatria +khats +khatti +khattish +khaungtou +khava +khavari +khawar +khawk +khawr +khaya +khaymah +khayo +khazaddum +khazanie +khazar +khazarian +khedah +khediva +khedival +khedivate +khedive +khedives +khediviah +khedivial +khediviate +khedr +khek +khelma +khelobedu +khem +khemisset +khemsing +khemungan +khen +khenchela +khenifra +khenkha +khepesh +kheria +kherwari +kherwarian +khesin +khessa +khet +kheta +khetrani +khevzur +kheyrabad +kheysur +khezha +khezhama +khezri +khhaz +khiamngan +khider +khidmatgar +khieng +khienmungan +khieu +khigh +khila +khilat +khili +khimasia +khimi +khinalug +khinalugi +khintchines +khios +khir +khiri +khirka +khirwar +khirwara +khitan +khithaulhu +khitmutgar +khitomer +khitrov +khiva +khivan +khlat +khlor +khlysti +khmaladze +khmelev +khmm +khmu +khmuic +khmyeyov +khoa +khoany +khoc +khoda +khodosh +khoe +khoi +khoibu +khoirao +khoisalmst +khoisan +khoja +khojo +khoka +khokani +khoke +khola +khole +kholi +khomani +khomeyni +khon +khond +khondakar +khondi +khondo +khone +khongzai +khonoma +khor +khorami +khorasan +khorasani +khorassan +khorat +khorchin +khori +khorosh +khoroshyi +khorramshahr +khorsand +khorvash +khoshot +khosla +khosravi +khosraviani +khosro +khost +khot +khotan +khotana +khotang +khotankerya +khoton +khotta +khouderchah +khouderchan +khoudia +khouen +khoueng +khoums +khouri +khouribga +khoury +khouzam +khowar +khowari +khristmas +khroft +khroong +khua +khuai +khualshim +khubber +khubsugul +khuchia +khudd +khue +khuen +khuf +khufu +khugni +khula +khulna +khulunge +khum +khumbi +khumbu +khumi +khums +khun +khungari +khunggoi +khuni +khunlit +khunsari +khunzal +khunzaly +khupang +khurana +khurgi +khuri +khuriya +khursheed +khurshid +khushalabad +khuskhus +khussak +khusus +khutbah +khutswe +khutswi +khutu +khutuktu +khuzestan +khuzi +khuzistan +khvarshi +khvarshin +khvat +khvek +khvoy +khvoysalmst +khwai +khwarazmian +khwarezm +khwe +khween +khweymi +khyang +khyber +khyen +khyeng +khyn +khyo +kiack +kiah +kiahsville +kiakh +kiaki +kial +kialee +kiam +kiamba +kiambu +kiamerop +kiameshalake +kiamos +kian +kianfar +kiang +kiangan +kiangsu +kianse +kiaokio +kiaotung +kiari +kiaugh +kibaali +kibai +kibala +kibalan +kibali +kiballo +kibangobango +kibangou +kibangubangu +kibara +kibbaku +kibbe +kibbee +kibber +kibbes +kibbie +kibble +kibbled +kibbler +kibblerman +kibbles +kibbling +kibbo +kibbun +kibbutz +kibe +kibeembe +kibei +kibera +kiberi +kibet +kibi +kibila +kibin +kibira +kibiri +kibirowi +kibissi +kibitka +kibitzed +kibitzer +kibitzers +kibitzes +kibitzing +kiblah +kibler +kibner +kibo +kiboma +kibombo +kibondei +kibosh +kiboshed +kiboshes +kiboshing +kibosho +kibrick +kibritena +kibudu +kibum +kibungo +kibuye +kibuyu +kiby +kibya +kibyen +kibzaim +kichaga +kichai +kichard +kichepo +kichevo +kichi +kichibei +kichiemon +kicho +kick +kickable +kickapoo +kickbacks +kickball +kicked +kickee +kicker +kickers +kickier +kickiest +kicking +kickish +kickless +kickoffs +kickout +kicks +kickseys +kickshaw +kickshaws +kickstand +kickstands +kickup +kickups +kicky +kicwe +kidabida +kidah +kidai +kidapawan +kidd +kidded +kidder +kidders +kiddie +kiddier +kiddies +kidding +kiddingly +kiddish +kiddo +kiddoes +kiddos +kiddu +kiddush +kiddushin +kiddy +kideki +kidhaiso +kidhood +kidie +kidigo +kidja +kidjaloum +kidjia +kidlet +kidling +kidman +kidnap +kidnaped +kidnapee +kidnaper +kidnapers +kidnaping +kidnapped +kidnapper +kidnappers +kidnappings +kidnaps +kidneyroot +kidneys +kidneywort +kido +kidology +kidoondo +kidproof +kidron +kids +kidskin +kidskins +kidsman +kidurong +kidvid +kidzem +kidzom +kiebach +kiebel +kiecksee +kief +kiefekil +kiefer +kieffer +kiefo +kiefs +kiehm +kiekie +kiel +kielbasa +kielbasas +kielbasi +kielbasy +kielce +kiele +kielen +kieler +kieling +kielland +kielstra +kiely +kiem +kiemba +kiembara +kiembu +kien +kiendi +kienholz +kienle +kiennghiep +kienning +kiens +kientem +kienyang +kiepert +kier +kieran +kierlaw +kiernan +kieron +kiersten +kies +kieselguhr +kieserite +kieserman +kiess +kiesselguhr +kiesselgur +kiesserite +kiester +kiesters +kiestless +kiet +kieta +kieth +kieu +kiev +kieye +kifle +kifuliiru +kiga +kigali +kiger +kighaangala +kigiriama +kigoma +kigumu +kigweno +kigyos +kiha +kihai +kihajolni +kihangaza +kihavu +kihehe +kihei +kihema +kihemanord +kihemba +kihero +kiho +kiholo +kiholoholo +kiholu +kihunde +kihungana +kihyanzi +kiil +kijau +kijoba +kijun +kika +kikaamba +kikabidze +kikai +kikalanga +kikamba +kikami +kikapoo +kikapu +kikar +kikatsik +kikawaeo +kike +kikeenge +kikelia +kikes +kikete +kiki +kikima +kikimbu +kikinga +kikinonda +kikladhes +kiko +kikomo +kikongo +kikoongo +kikori +kiks +kiku +kikuchi +kikuel +kikuk +kikukua +kikume +kikumo +kikumon +kikumu +kikunyi +kikusu +kikuta +kikutu +kikuumu +kikuwa +kikuyukamba +kikwame +kikwami +kikwese +kikwit +kila +kiladja +kilah +kilakilana +kilampere +kilan +kilangi +kilarney +kilauea +kilba +kilbank +kilborne +kilbourne +kilbride +kilburn +kilby +kilcoin +kilcoyne +kilcullen +kilda +kildall +kildalls +kildanean +kildare +kildee +kilderhoff +kilderkin +kildin +kile +kileega +kilega +kileh +kilema +kilembe +kilendu +kilenge +kilengola +kilerg +kilet +kileta +kiley +kilgannon +kilgarrif +kilgas +kilgour +kilgu +kilhamite +kilhig +kili +kilia +kilian +kiliare +kilick +kilifi +kiligin +kilikien +kilim +kilimanjaro +kilinge +kilinochchi +kilivila +kiliwa +kiliwi +kilkenny +kilker +kilkerry +kilkis +kill +killa +killable +killadar +killam +killan +killarney +killas +killawog +killboy +killbride +killbuck +killcalf +killcmos +killcrece +killcrop +killcu +killdee +killdeers +killdees +killduff +kille +killed +killedst +killeekillee +killeen +killegrew +killen +killer +killers +killest +killeth +killian +killick +killifish +killikrates +killing +killingly +killingness +killings +killington +killinite +killiop +killit +killjob +killjoys +killmond +killmouse +killogie +killona +killorin +killroy +kills +killweed +killwort +killy +kilman +kilmank +kilmarnock +kilmartin +kilmer +kilmera +kilmeri +kilmichael +kilmonis +kilmov +kiln +kilned +kilner +kilneye +kilnhole +kilning +kilnman +kilnrib +kilns +kilo +kiloampere +kilobar +kilobaud +kilobit +kilobits +kiloblock +kilobyte +kilobytes +kilocalorie +kilocalories +kilocycle +kilocycles +kilodyne +kilogauss +kilogram +kilogramme +kilograms +kilohertz +kilojoule +kilokaka +kiloliter +kilolitre +kilolumen +kilombeno +kilometer +kilometers +kilometrage +kilometre +kilometres +kilometric +kilometrical +kiloparsec +kilopi +kilorad +kilorads +kilos +kilosh +kilostere +kilot +kiloton +kilotonn +kilotons +kilovar +kilovolt +kilovolts +kilowatt +kilowatthour +kilowatts +kiloword +kilp +kilpatrick +kilrain +kilroy +kilss +kilsyth +kilt +kilted +kilter +kilters +kiltie +kilties +kilting +kilts +kilty +kilua +kiluba +kilvitus +kilzer +kimaghama +kimakua +kimambwe +kimanda +kimanga +kimant +kimantinya +kimara +kimaragan +kimaragang +kimaragangan +kimashami +kimatengo +kimatumbi +kimawanda +kimawiha +kimball +kimballton +kimbamba +kimbang +kimbanga +kimbanguist +kimbarovsky +kimbe +kimbeere +kimbell +kimber +kimberlee +kimberley +kimberli +kimberlin +kimberlite +kimberly +kimberlyn +kimberton +kimbin +kimble +kimbo +kimbolton +kimbra +kimbrell +kimbrough +kimbu +kimbunda +kimbundu +kimbunu +kimbuun +kimchi +kime +kimeridgian +kimeru +kimes +kimi +kimigayo +kimihiko +kimiko +kimio +kimjal +kimler +kimm +kimma +kimmel +kimmell +kimmi +kimmie +kimmins +kimmswick +kimmy +kimnel +kimo +kimon +kimonoed +kimonos +kimoshi +kimoshita +kimoto +kimper +kimpton +kimura +kimursi +kimvita +kimwimbi +kimyal +kina +kinabalu +kinabatangan +kinaestheic +kinaesthesia +kinaesthesis +kinaesthetic +kinah +kinahan +kinakomba +kinal +kinalakna +kinalzik +kinameri +kinamigin +kinamon +kinamwanga +kinande +kinandi +kinanjui +kinaraya +kinarayan +kinards +kinase +kinast +kinbote +kincaid +kinch +kinchai +kincheloe +kinchelow +kinchin +kinchinmort +kincob +kind +kinda +kindabyi +kindaichi +kinde +kindel +kindem +kinder +kinderfeld +kindergarten +kinderhook +kinderma +kinderman +kindermann +kinderspiel +kindest +kindheart +kindhearted +kindheit +kindia +kindiga +kindinov +kindjin +kindle +kindled +kindler +kindlers +kindles +kindlesome +kindless +kindleth +kindlier +kindliest +kindlily +kindliness +kindling +kindlings +kindly +kindness +kindnesses +kindom +kindongo +kindred +kindredless +kindredly +kindredness +kindreds +kindredship +kinds +kindu +kine +kinema +kinemas +kinematical +kinematics +kinemometer +kinemon +kineo +kineplasty +kinepox +kines +kinesalgia +kinescope +kinescopes +kineses +kinesiatric +kinesiatrics +kinesics +kinesimeter +kinesiologic +kinesiology +kinesiometer +kinesis +kinesodic +kinesthesia +kinesthesias +kinesthetic +kinet +kinetic +kinetical +kinetically +kinetics +kinetins +kinetix +kinetochore +kinetogenic +kinetogram +kinetograph +kinetography +kinetomer +kinetomeric +kinetonema +kinetophone +kinetoplast +kinetoscope +kinetoscopic +kinfolk +kinfolks +king +kinga +kingaby +kingan +kingandi +kingaroy +kingbetu +kingbolt +kingcity +kingcob +kingcove +kingcraft +kingcup +kingdom +kingdomcity +kingdomed +kingdomful +kingdomless +kingdoms +kingdomship +kingdon +kinged +kingengereko +kingeti +kingferry +kingfield +kingfish +kingfisher +kingfishers +kingfishes +kinggeorge +kinghead +kinghill +kinghood +kinghoods +kinghorn +kinghunter +kinghwele +kingi +kingindo +kinging +kingisepp +kingiti +kingkel +kingless +kinglessness +kinglets +kinglier +kingliest +kinglihood +kinglike +kinglily +kingliness +kingling +kingly +kingmaker +kingmaking +kingman +kingmans +kingmont +kingoni +kingpiece +kingpin +kingpins +kingrey +kingrow +kings +kingsalmon +kingsbeach +kingsbridge +kingsbrook +kingsburg +kingsbury +kingsby +kingscreek +kingsdown +kingsep +kingsfield +kingsford +kingshill +kingship +kingships +kingshott +kingside +kingsland +kingsler +kingsley +kingsman +kingsmill +kingsmills +kingspark +kingsport +kingston +kingstown +kingstree +kingsun +kingsville +kingu +kingulu +kingwana +kingweed +kingwilliam +kingwood +kingzett +kinh +kinhin +kinhwa +kini +kiniage +kinian +kinihinao +kinikina +kinikinao +kinin +kiningo +kinipetu +kiniramba +kiniraya +kinjaki +kinjau +kinjin +kinkable +kinkaid +kinkaider +kinkajou +kinkajous +kinkcough +kinked +kinkhab +kinkhost +kinki +kinkier +kinkiest +kinkily +kinkiness +kinking +kinkle +kinkled +kinkly +kinks +kinksbush +kinkski +kinkwa +kinless +kinley +kinman +kinmundy +kinna +kinnaird +kinnan +kinnear +kinnel +kinnell +kinney +kinniburgh +kinnie +kinnikinnick +kinnoch +kinnock +kino +kinofluous +kinolam +kinology +kinome +kinoplasm +kinoplasmic +kinorhyncha +kinos +kinoshita +kinospore +kinosternon +kinotannic +kinross +kinrys +kins +kinsaku +kinsale +kinsella +kinsen +kinsey +kinsfolk +kinsfolks +kinshasa +kinship +kinships +kinskey +kinski +kinsky +kinsley +kinsman +kinsmanly +kinsmanship +kinsmen +kinsmith +kinsolving +kinspeople +kinstley +kinston +kinswoman +kinswomen +kinta +kintak +kintaq +kintar +kintner +kintom +kintyre +kinubi +kinugu +kinuka +kinuku +kinuyo +kinwat +kinya +kinyaanga +kinyabwisha +kinyamituku +kinyamulenge +kinyamwesi +kinyamwezi +kinyanga +kinyanjui +kinyarwanda +kinyasa +kinyaturu +kinyika +kinyindu +kinyon +kinz +kinzers +kioea +kioki +kioko +kiokoueesi +kiombi +kiomoni +kiong +kiorr +kiosk +kiosks +kiotome +kiowa +kiowan +kiowatowa +kioway +kipage +kipai +kipchak +kipe +kipea +kipende +kiper +kipere +kipfer +kipgen +kipili +kipling +kiplingese +kiplingism +kipnis +kipnuk +kipokomo +kipp +kippee +kippeen +kippen +kipper +kipperbang +kippered +kipperer +kippering +kippers +kippes +kippie +kippton +kippur +kippy +kips +kipsey +kipsigis +kipsiikis +kipsikis +kipskin +kipskins +kipton +kiput +kipya +kira +kirady +kiramang +kiran +kiranti +kirawa +kirbalar +kirbee +kirbie +kirbo +kirbuk +kirby +kirbyville +kirchberg +kirchlechner +kirchner +kirchoff +kirchstrasse +kirchy +kirdermann +kirdi +kirdimora +kire +kirega +kiregyera +kirek +kiremi +kireni +kirepuire +kirfi +kirfman +kirghiz +kirghizean +kirghizi +kirghizia +kirgiz +kirharaseth +kirhareseth +kirharesh +kirheres +kiri +kiria +kiriathaim +kiribati +kiribatian +kirienko +kirifawa +kirifi +kirigami +kirigamis +kirigin +kirihara +kirik +kirike +kirikiri +kirikjir +kirikkale +kiril +kirill +kirillitsa +kirillov +kirillova +kirim +kirimi +kirimon +kirin +kirioth +kirira +kiriri +kiririxoko +kiristav +kirisyuk +kirit +kiritimati +kiriwina +kiriyenteken +kirjath +kirjathaim +kirjatharba +kirjatharim +kirjathbaal +kirk +kirkby +kirkcaldy +kirke +kirkeby +kirkendall +kirker +kirkersville +kirkham +kirkify +kirking +kirkinhead +kirkland +kirklander +kirklareli +kirkley +kirklike +kirklin +kirkman +kirkmen +kirkpatrick +kirkpong +kirks +kirksey +kirksville +kirktown +kirkuk +kirkville +kirkward +kirkwood +kirky +kirkyard +kirland +kirley +kirlian +kirma +kirman +kirmani +kirmanji +kirmew +kirmicolek +kirn +kirned +kiro +kiroba +kirombo +kiron +kirouac +kirovabad +kirowa +kirr +kirrili +kirsch +kirsches +kirschwasser +kirsehir +kirshner +kirstein +kirsten +kirsteni +kirsti +kirstie +kirstin +kirsty +kirstyn +kirtikumar +kirtipur +kirtland +kirtle +kirtled +kirtles +kiruihi +kirundi +kirundo +kirunggela +kirve +kirver +kirvin +kirwa +kirwill +kirwin +kirwo +kisa +kisagala +kisagalla +kisagara +kisakata +kisama +kisamajeng +kisambaa +kisambaeri +kisan +kisanbhumij +kisanga +kisangani +kisankasa +kisanzi +kisar +kisarawe +kisawyer +kisawyerafb +kischen +kischi +kisekka +kiser +kisertet +kisettla +kish +kishaka +kishamba +kishambaa +kishambala +kishangangia +kishanganjia +kishen +kishi +kishida +kishinev +kishion +kishka +kishkas +kishke +kishkes +kishkilov +kisho +kishon +kishonti +kishor +kishore +kishorganj +kishtwari +kishy +kisi +kisiclus +kisie +kisii +kisikongo +kiskadee +kiskara +kiskatom +kislenko +kislev +kisling +kismet +kismetic +kismets +kiso +kison +kisonde +kisonge +kisongo +kisongye +kisonko +kisoonde +kisra +kiss +kissa +kissability +kissable +kissableness +kissably +kissage +kissama +kissar +kissed +kissee +kisseemills +kissel +kisser +kissers +kisses +kissi +kissiah +kissidougou +kissie +kissien +kissimmee +kissing +kissingly +kissling +kissproof +kisswise +kissy +kist +kistadinka +kistane +kistful +kistin +kistler +kistwali +kisuaheli +kisuahili +kisuku +kisukuma +kisumbwa +kisumu +kisutu +kisuundi +kiswa +kiswaheli +kiswahili +kita +kitab +kitabayashi +kitabis +kitachi +kitaen +kitaew +kitai +kitaita +kitala +kitalinga +kitalpha +kitamat +kitami +kitamura +kitan +kitanidis +kitaoji +kitar +kitava +kitaveta +kitazume +kitcarson +kitcat +kitchell +kitchen +kitchendom +kitchener +kitchenet +kitchenettes +kitchenful +kitchenless +kitchenmaid +kitchenman +kitchenry +kitchens +kitchenward +kitchenwards +kitchenware +kitchenwife +kitcheny +kitching +kitchwi +kite +kitecat +kited +kiteflier +kiteflying +kiteke +kitembo +kiter +kiters +kites +kith +kithara +kitharaka +kitharas +kithe +kithing +kithira +kithless +kithlish +kithnou +kithonirishe +kiths +kiti +kitiene +kitiini +kitimat +kitimi +kiting +kitingan +kitish +kitiya +kitja +kitjic +kitkahaxki +kitkehahki +kitling +kitlings +kitlope +kitn +kito +kitomer +kitonga +kitongwe +kitron +kits +kitsai +kitsch +kitsches +kitschy +kitsipki +kitson +kitswa +kitt +kitta +kittanning +kittatinny +kitted +kittel +kitten +kittendom +kittened +kittenhood +kittening +kittenishly +kittenless +kittens +kittenship +kitter +kittereen +kitteridge +kitterman +kittery +kitterypoint +kitthoge +kitti +kittie +kitties +kittim +kitting +kittinger +kittisvaara +kittitas +kittitian +kittiwake +kittlepins +kittler +kittles +kittlish +kittlitz +kittly +kittner +kittock +kittpeak +kittredge +kittrell +kittridge +kitts +kittshill +kittsian +kittsnevis +kittul +kitty +kittyhawk +kittykill +kittysol +kituba +kitubeta +kitui +kitunahan +kitwii +kitzel +kitzi +kitzmiller +kiulu +kiundu +kiunga +kiunguja +kiuri +kiurinsty +kiutze +kiutzu +kivas +kivel +kivell +kiver +kivi +kiviat +kividunda +kiviet +kivikivi +kivira +kivirn +kivrin +kivrins +kivungunya +kivwanji +kiwai +kiwaian +kiwako +kiwanian +kiwanis +kiwaraw +kiwarawa +kiwe +kiwi +kiwikiwi +kiwis +kiwitea +kiwollo +kiwonga +kiwunjo +kiya +kiyaka +kiyanzi +kiyas +kiyi +kiyoako +kiyogo +kiyohiko +kiyokawa +kiyombe +kiyomi +kiyomori +kiyoon +kiyoshi +kiyosi +kiyu +kizaramo +kizare +kizibakh +kiziere +kizigula +kizil +kizilbash +kizima +kizmenko +kizolo +kizzee +kizzie +kjaerleikens +kjaernes +kjakar +kjakela +kjax +kjeld +kjeldahl +kjeldahlize +kjell +kjellolof +kjelstrup +kjer +kjofol +kjosarsysla +kkkk +kkkkk +kkkkkk +kkkkkkk +kkkkkkkk +kknd +klaas +klaassen +klaatu +klabbarparn +klader +klae +klaeschen +klaff +klafter +klaftern +klag +klai +klaiman +klallam +klam +klamath +klamathfalls +klamathmodoc +klamathriver +klammer +klamner +klangklang +klanism +klans +klansman +klanswoman +klao +klaoh +klapper +klappholz +klar +klara +klare +klari +klarika +klarrisa +klarwein +klasa +klashinsky +klasik +klaskino +klasky +klass +klassen +klassenkeile +klassikov +klastorin +klatch +klatches +klatsch +klatsches +klatsop +klau +klauber +klaudinyi +klaudt +klaus +klausj +klausmeyer +klausner +klava +klavern +klavier +klavkalns +klaxons +klaxton +klayderman +klazien +klazina +kleb +klebanov +klebb +kleber +klebsch +klebsiella +klecka +kleczka +klee +kleeb +kleen +kleene +kleeneboc +kleenex +kleffe +kleig +kleijnen +kleiman +klein +kleinbach +kleinbaum +kleinberg +kleine +kleiner +kleinert +kleinface +kleinian +kleinmann +kleinrath +kleis +kleist +kleistian +kleivitz +klema +klement +klementor +klemm +klemme +klemola +klemper +klemperer +klendusic +klendusity +klendusive +klene +klens +klensin +kleopatra +klepht +klephtic +klephtism +klepo +klepper +kleppinger +kleptic +kleptistic +kleptoman +kleptomania +kleptomaniac +kleptomanist +kleptophobia +kler +klerk +klesem +klespitz +klet +kletchko +kletzingk +kleven +klevenow +klevmarken +kleweno +kleynenberg +kliai +klias +klichova +klicket +klickitat +klicks +klieg +kliener +kliki +klikitat +klim +klima +klimas +kliment +klimentov +klimko +klimon +klimova +klin +klinak +kline +kling +klinger +klingerstown +klingman +klingon +klingsor +klingsporn +klink +klinkhammer +klinte +klio +klip +klipbok +klipdachs +klipdas +klipfish +klipkaffer +klipkaffern +klippe +klippen +klipspringer +klister +kljatow +klobouki +klocek +klockmannite +klodin +klodt +kloepfer +kloesener +klom +klondike +klondiker +klone +klonecki +klong +kloof +klooj +kloon +klootchman +klop +klopotowski +klops +klor +klosh +klosovsky +kloss +klossner +klostermann +kloth +klothilde +klotho +klotilde +kloto +klotz +kloukle +klouto +klove +klowak +klpg +klsl +klub +klubam +klubbheads +klubbhopping +klubec +klubi +klubrider +kluch +kluck +kluckmeyer +kludge +kludged +kludges +kludging +klug +kluge +kluged +kluger +kluges +klugey +klugman +kluhb +kluhj +kluhstergee +kluis +klujch +kluke +klumpkea +klunk +klute +klutts +klutz +klutzes +klutzier +klutziest +klutzy +kluxer +klyachimol +klyagin +klyaro +klyb +klymene +klystrons +klytia +klytus +klyuhin +kmara +kmasoft +kmdeep +kmeans +kmem +kmenta +kmet +kmfdm +kmicic +kmit +kmmac +kmpec +knab +knabble +knackebrod +knacked +knacker +knackeries +knackers +knackery +knacking +knacks +knackwurst +knackwursts +knacky +knag +knagged +knaggs +knaggy +knaiz +knap +knapbottle +knape +knapp +knappan +knappcreek +knappe +knapped +knapper +knappers +knapping +knappish +knappishly +knappke +knaps +knapsacked +knapsacking +knapsacks +knapton +knapweed +knapweeds +knar +knark +knarred +knarry +knatz +knaup +knautia +knave +knaveries +knavery +knaves +knaveship +knavess +knavish +knavishly +knavishness +knawel +knay +knead +kneadability +kneadable +kneaded +kneader +kneaders +kneading +kneadingly +kneads +knebel +knebelite +knecht +knee +kneebone +kneebrush +kneecapping +kneecappings +kneecaps +kneed +kneedler +kneehole +kneeholes +kneeing +kneel +kneeland +kneeled +kneeler +kneelers +kneelet +kneeling +kneelingly +kneels +kneepad +kneepads +kneepan +kneepiece +knees +kneese +kneeshaw +kneestone +kneetrembler +knef +kneidinger +kneiffia +kneippism +kneisel +kneldinger +knell +knelled +knelling +knells +knelt +knepper +kneppers +knera +kness +knesset +knet +kneubel +kneuss +knew +knewest +knews +knez +kneza +knezevic +knezi +knezic +kngswf +kngtrf +kniaz +kniazi +kniceley +knicker +knickered +knickerless +knickers +knickknack +knickknacked +knickknacket +knickknacks +knickknacky +knickleby +knicknack +knickpoint +knieps +knierim +kniertje +knife +knifeboard +knifed +knifeful +knifeless +knifeman +knifeproof +knifer +kniferiver +knifers +knifes +knifesmith +knifeway +knifing +knifings +knifley +kniga +knight +knightage +knightdale +knighted +knighten +knighterrant +knightess +knighthead +knighthood +knighthoods +knightia +knighting +knightless +knightlihood +knightlike +knightliness +knightling +knightly +knightmare +knightmares +knighton +knights +knightsen +knightship +knightstown +knightsville +knightswort +knigki +knijke +knio +knipe +kniphofia +knipp +knippa +knippenberg +knish +knishes +knisteneaux +knit +knitback +knitch +knitl +knits +knitted +knittel +knitter +knitters +knitting +knittings +knittle +knitwear +knitwears +knitweed +knitwork +knitz +knived +knives +knivey +knob +knobbed +knobber +knobbier +knobbiest +knobbiness +knobble +knobbler +knobbly +knobby +knobel +knobeloch +knobkerrie +knoblick +knoblike +knobloch +knobnoster +knobs +knobstick +knobstone +knobular +knobweed +knobwood +knoch +knock +knockabout +knockdowns +knocked +knockemdown +knocker +knockers +knocketh +knockin +knocking +knockless +knocko +knockoff +knockoffs +knockouts +knockover +knocks +knockstone +knockup +knockwurst +knockwursts +knoke +knoll +knoller +knolls +knolly +knollys +knoow +knop +knopfia +knopfler +knopite +knopka +knopke +knopki +knopped +knopper +knoppy +knops +knopweed +knorhaan +knormal +knorp +knorr +knorria +knosp +knosped +knossian +knot +knotberry +knotcher +knotgrass +knothole +knotholes +knothorn +knotless +knotlike +knotroot +knots +knotted +knotter +knotters +knottier +knottiest +knottily +knottiness +knotting +knottings +knotts +knottsisland +knotweed +knotweeds +knotwork +knotwort +knouse +knout +knouted +knouting +knouts +know +knowability +knowable +knowableness +knowe +knowed +knower +knowers +knowest +knoweth +knowhows +knowing +knowinger +knowingest +knowingly +knowingness +knowings +knowland +knowlden +knowledgable +knowledge +knowledged +knowledges +knowledging +knowles +knowlesville +knowlingly +known +knowns +knowperts +knows +knox +knoxboro +knoxcity +knoxdale +knoxian +knoxville +knoxvillite +knub +knubbly +knubby +knublet +knuckle +knucklebone +knucklebones +knuckled +knucklehead +knuckleheads +knuckler +knucklers +knuckles +knucklier +knuckliest +knuckling +knuckly +knucks +knuclesome +knudsen +knueppel +knur +knurled +knurlier +knurliest +knurling +knurls +knurly +knut +knutell +knuth +knuths +knutty +knwn +knyaz +knyazi +knyht +knysna +koae +koala +koalas +koalaterm +koalgurdi +koali +koalib +koan +koans +koaratira +koasati +koassa +koay +koba +kobai +kobak +kobali +kobamar +koban +kobart +kobaru +kobayashi +kobe +kobellite +kobena +kobenhavn +kober +kobeski +kobeua +kobewa +kobi +kobiana +kobibenggoi +kobiela +kobierski +kobieta +kobilinsky +kobird +kobish +kobler +koblitz +kobo +kobochi +koboi +kobola +kobold +kobolda +kobolds +kobon +kobong +kobotachi +kobotshi +koboyashi +kobozhev +kobreek +kobresia +kobrin +kobritz +kobroor +kobu +kobuchizawa +kobuk +kobus +kobyliansky +kobzar +kocaeli +kocch +koce +koch +kochak +kochanski +kochboli +kochemasov +kochera +kocherlakota +kochetkov +kochi +kochia +kochimberi +kochinkam +kochis +kochliarion +kochmar +kochuvelan +kock +kockenlocker +koczian +koda +kodagu +kodak +kodaker +kodakist +kodakr +kodakry +kodama +kodashim +kode +kodell +kodhin +kodhinniai +kodi +kodie +kodirovka +kodiyettom +kodnar +kodoi +kodok +kodomo +kodoro +kodos +kodra +kodrao +kodro +kodsi +kodu +kodulu +kodurite +koea +koeberl +koeberlinia +koechlinite +koeck +koefoed +koehler +koeksotenok +koel +koelbl +koele +koeller +koellia +koellner +koelreuteria +koeltztown +koen +koeneke +koenenite +koenigin +koennen +koenoem +koens +koepke +koeppen +koerber +koerger +koeri +koerner +koeroessy +koeroezhazi +koertner +koesberg +koeze +kofa +kofan +kofane +kofe +kofei +koff +koffa +koffiepli +kofi +kofler +kofoed +koford +koft +koftgar +koftgari +koftochka +koftochku +kofyar +koga +kogan +kogash +kogbe +kogda +kogdaon +koghin +kogi +kogia +kogo +kogoro +koguman +kogure +koguru +kohalmi +kohama +kohan +kohat +kohath +kohathite +kohathites +kohayagawake +kohbol +kohd +kohelet +koheleth +kohemp +kohen +kohgiluyeh +kohima +kohinoor +kohistan +kohistani +kohkbotl +kohkiluyeh +kohl +kohlan +kohle +kohler +kohlhaas +kohli +kohlmann +kohlmar +kohlmer +kohlrabies +kohlreng +kohls +kohlund +kohm +kohms +kohn +kohnadeh +kohnen +kohner +kohnert +kohnhorst +koho +kohoe +kohoroxitari +kohout +kohoutek +kohsai +kohua +kohumono +kohut +kohwar +koiali +koianu +koiari +koiarian +koiaric +koibal +koichi +koijoe +koil +koila +koilon +koimesis +koine +koinon +koio +koipato +koirala +koireng +koirng +koiste +koisua +koita +koitabu +koitapu +koitar +koitor +koitur +koivisto +koiwai +koiwat +koiya +koizumi +kojali +kojang +kojevatov +koji +kojiki +kojima +kokadi +kokaiko +kokako +kokam +kokama +kokamilla +kokan +kokanee +kokanova +kokant +kokata +kokatha +kokchulutan +koke +kokerboom +koki +kokil +kokila +kokinji +kokintz +kokio +kokitta +kokkai +kokkat +kokkola +koklas +koklass +kokna +kokni +koko +kokoda +kokol +kokola +kokomo +kokon +kokona +kokonao +kokoon +kokoona +kokopo +kokora +kokori +kokoromiko +kokoroton +kokos +kokoska +kokosopoulos +kokota +kokou +kokowai +kokowari +kokoyalanji +kokra +kokraimoro +koks +koksaghyz +koksagyz +koku +kokuda +kokum +kokumin +kokumingun +kokwaiyakwa +kolaboli +kolach +kolai +kolaiah +kolaipalas +kolaka +kolam +kolamboli +kolami +kolaminaiki +kolamiparji +kolana +kolanawersin +kolango +kolappa +kolar +kolari +kolarian +kolarov +kolas +kolata +kolb +kolbaffo +kolbe +kolbila +kolbilari +kolbili +kolbilla +kolbjoern +kolchin +kolda +koldaji +koldehoff +koldrong +kole +kolea +koleen +kolege +kolegov +kolek +kolela +kolena +kolenda +kolenikov +kolenkhov +kolere +koleroga +kolesar +koleski +koleskidy +kolesnik +koleyni +kolga +kolhi +kolhoz +kolhreng +koli +kolian +kolibugan +koliku +kolina +koline +kolingba +kolinski +kolinskies +kolinsky +kolinsusu +kolis +kolk +kolka +kolkasrags +kolker +kolkhos +koll +kolla +kollaa +kollakowsky +kollast +kollaster +kolledzh +kollege +kollen +koller +kollergang +kollina +kollman +kollmar +kollmorgen +kollontai +kollos +kolman +kolmi +kolmika +kolmikov +kolmogorov +kolmogorovs +kolmokim +kolo +koloa +kolobion +kolobo +kolobuan +kolobus +kolod +kolodiejchuk +kolodziej +kolofata +koloff +koloko +kolokolnikov +kolokolo +kolokuma +kololo +kolom +kolombangara +kolonia +kolonje +kolonzo +koloo +kolopom +kolos +kolour +kolowicz +kolpakchi +kols +kolsi +kolski +kolskiy +kolstad +kolsun +kolta +koltai +kolter +kolton +koltsoff +koltsova +koltunna +koltunnor +koluama +kolube +kolukuma +kolumbiara +kolur +koluschan +kolush +kolvac +kolvi +kolvir +kolwezi +kolya +kolyada +kolyan +kolym +kolyma +kolymaomolon +koma +komachino +komack +komai +komaki +komakino +komako +komalu +koman +komapat +komarek +komarno +komarom +komaromi +komarov +komarovsky +komasma +komati +komatik +komatsu +komba +kombach +kombai +kombat +kombe +komberatoro +kombio +kombo +kombone +komboy +kombrom +kome +komedia +komeito +komenda +komerin +komering +komfana +komfort +komfortables +komi +komiccar +komikku +kominapla +kominimung +kominuter +komiperm +komipermyak +komipermyat +komisanga +komischer +komizyrian +komlama +komm +kommandline +kommandos +kommentare +kommerell +kommetje +kommissar +kommissarov +kommos +kommun +kommuner +komnenic +komo +komodo +komoe +komofio +komogu +komondor +komondors +komonggu +komono +komora +komoro +komoroff +komorowska +komorowski +komp +kompa +kompakte +kompana +kompane +kompara +kompas +kompatibel +kompatible +kompeni +kompert +kompilat +kompiuter +komplett +kompong +komppa +komputer +kompyootron +komso +komsomol +komsomolia +komtao +komtasse +komu +komudago +komundan +komung +komutu +komuz +kona +konabem +konabembe +konai +konak +konakov +konar +konarek +konariot +konarski +konawa +konawe +konce +koncert +konch +koncov +koncz +kond +konda +kondadora +kondagaon +kondair +kondakui +kondareddi +konde +kondin +kondirjan +kondja +kondjo +kondkor +kondo +kondoa +kondoma +kondongo +kondor +kondowa +kondoz +kondrashov +kondratiev +kondratyuk +kondre +kone +konea +konec +konechno +konecho +konejandi +koneraw +koneyandi +konfet +konforti +kong +konga +kongampani +kongan +kongar +kongara +kongasso +kongbaa +kongbo +kongcharoen +kongder +kongi +kongkaketr +kongo +kongoese +kongofioti +kongola +kongolameno +kongolese +kongolo +kongon +kongoni +kongowned +kongrong +kongsbergite +kongu +konheim +koni +konia +koniaga +koniagi +konig +koniga +konigskinder +konijn +konike +konim +konimeter +konin +koninck +koninckite +koning +konini +koninin +koninkrijk +konio +koniology +koniscope +konitz +koniukhova +konja +konjak +konjara +konjo +konkan +konkanasths +konkanese +konkani +konkolya +konkomba +konkoure +konmel +konni +konno +konnoh +kono +konobo +konomala +konomihu +konomis +konongo +kononov +konoplyanska +konosarola +konoshenkova +konovalov +konrad +konradi +konradin +konrads +kons +konsequenz +konshin +konsinya +konskey +konso +konsoid +konsol +konstam +konstance +konstant +konstantia +konstantin +konstanze +konta +kontagora +kontakion +kontarsky +kontchkova +kontiki +kontoi +kontou +kontu +kontum +konu +konua +konvalinkova +kony +konya +konyagi +konyak +konyanka +konyar +konyare +konz +konze +konzime +konzipierter +konzo +konzov +koocatho +koock +koodoos +koogurda +koohgoli +koohi +kooij +kook +kooka +kookaburra +kookeree +kookery +kooki +kookie +kookier +kookiest +kookiness +kookri +kooks +kooky +kool +koola +koolah +koolest +kooletah +kooliman +koolokamba +koolooly +koolstra +koolwine +koombar +koomkie +koon +koonce +koonche +kooncimo +koontz +koop +koops +koora +koordinaziya +koorete +koorg +koornhof +koos +koosa +koose +koosharem +kooshti +kooskia +koot +kootcha +kootenai +kootenay +kootz +kooy +koozhime +koozime +kopa +kopagmiut +kopal +kopala +kopalski +kopar +kopatski +kopavogur +kopcso +kope +kopeck +kopecks +kopecky +kopeczi +kopeeleft +kopei +kopeikin +kopek +kopeks +koper +kopestonsky +kopetski +kopeyki +kopf +kopff +kopfman +koph +kophs +kopi +kopiago +kopien +kopins +kopje +kopjes +kopke +kopliu +kopo +kopom +kopomonia +kopp +koppa +kopparbergs +koppe +koppel +koppen +kopperl +kopperston +koppies +koppite +kopple +koppler +koprino +koprulu +kops +kopsha +kopti +kopu +kopykat +kora +koradji +korafe +korafi +koraga +koragar +koragara +korah +korahite +korahites +korahitic +korait +korak +korakan +korakot +koraku +koral +korali +koralle +korambar +koran +korana +korangi +koranic +koranist +koranko +koranna +korano +koranti +korap +korape +korapun +koraput +koraqua +korara +korari +korat +korathites +korati +korava +korax +koray +korbaffo +korbe +korbel +korbongou +korbu +korbut +korca +korce +korchi +korchinsky +korczak +korda +kordar +kordestan +kordik +kordofan +kordofanian +kordula +kore +korea +korean +koreander +koreans +koreat +korec +koreci +koreekhoe +koreipa +koreish +koreishite +korekore +korella +koren +korene +koreneva +korennih +korero +koreshan +koreshanity +koressa +korest +koreuaju +korey +koreya +korf +korff +korg +korhites +korhogo +kori +koria +korido +korie +koriki +koriko +korim +korimako +korin +korindi +koring +korinthia +koriok +koripako +korispaso +korj +korkein +korkes +korki +korkie +korku +korky +korley +korman +korn +kornachuk +kornakova +kornbluth +kornbrot +kornephorus +korner +kornerupine +korney +kornfeldt +kornfilt +kornitzer +kornman +kornoel +kornpett +kornskeppa +kornskeppur +korntonde +korntonder +korntunna +korntunnur +koro +koroa +koroalau +koroba +korobkah +korobore +koroboro +koroca +koroche +koroda +korogho +korok +koroko +korokoro +korolafia +korolariang +korolev +koroleva +korolyov +korom +koroma +koromah +koromika +koromiko +koromira +koron +korona +koronadal +korongo +koronis +korop +koror +koros +korosameri +korostelev +korotkii +korova +korovin +korowai +korowkin +korpela +korrekter +korrel +korrie +korrigum +korrina +korripako +korris +korry +korsakoff +korsakov +korsakow +korsakowna +korsos +korsunia +kort +kortchi +kortekaas +korth +kortha +kortje +kortman +kortner +kortse +kortze +korubo +korumburra +koruna +korunas +koruniat +koruny +korupun +korvin +korvis +korwa +korwar +kory +koryak +korymboi +korymbos +korzec +korzeniowski +korzh +korzhiki +kosa +kosach +kosadle +kosaka +kosakowski +kosalan +kosali +kosanovic +kosap +kosare +kosarek +kosarski +kosasih +koschei +koschitzki +koschka +koscina +kosciusko +kosena +koseng +koser +kosev +kosh +koshan +koshered +koshering +koshers +koshetz +koshi +koshin +koshiro +koshkonong +koshti +kosi +kosian +kosie +kosimo +kosin +kosinets +kosinski +kosiorska +kosirava +kosirjewa +kositpaiboon +koska +koskenniemi +koski +koskie +koskin +koskinen +kosleck +koslik +koslo +kosloff +koslow +koslowsky +kosmac +kosmalska +kosmelj +kosmet +kosmic +kosmo +kosmokrator +kosmonova +kosmos +kosnaskie +koso +kosobud +kosong +kosorong +kosotoxin +kosova +kosove +kosovic +kosovo +kosowan +kosrae +kosraean +kosrean +koss +kossa +kossack +kossaean +kossatzki +kosse +kossean +kossee +kosseetshori +kosseoa +kossett +kossi +kossil +kosslyn +kosso +kossoff +kossonou +kossou +kossovars +kossovo +kossuth +kost +kosta +kostas +kosteletzkya +kosten +koster +kosterich +kosti +kostinsky +kostishack +kostja +kostka +kostmayer +kostos +kostov +kostowskyj +kostoyed +kostrichkin +kosturik +kosty +kostya +kostylew +kostyniuk +kosugi +kosuke +kosuva +koswite +kosyachini +kosykh +koszalin +kota +kotafoa +kotafon +kotafou +kotagiri +kotagu +kotai +kotajawa +kotal +kotali +kotamarti +kotang +kotapish +kotar +kote +koteas +kotelnikov +kotero +kotet +koti +kotia +kotiah +kotiria +kotivalo +kotiya +kotka +kotlarski +kotler +kotlik +koto +kotofo +kotogu +kotogut +kotoko +kotokokuseri +kotokoli +kotokologone +kotokori +koton +kotonkarif +kotopo +kotorie +kotorii +kotorim +kotoriy +kotorogo +kotorom +kotoroy +kotorrie +kotoruiu +kotos +kotoude +kotow +kotpojo +kotrohou +kotschubeite +kotsenyu +kotsev +kotsonaros +kott +kotta +kottas +kotterba +kotti +kottigite +kotto +kotua +kotuku +kotukutuku +kotule +kotval +kotvali +kotwal +kotwalee +kotyaxo +kotyk +kotyle +kotylos +kotynski +kotz +kotze +kotzebue +kouakou +kouame +kouang +kouaoua +kouassi +kouata +kouba +koubitzky +koubougou +koudougou +koue +kougnohou +kouhi +kouibli +kouibly +kouilou +kouji +kouka +koukouya +koul +koula +koulamoutou +koulan +koulango +koulik +koulikoro +koulinle +kouloudra +koumac +kounahiri +koundara +koung +koungmiut +kounnas +kountze +koupe +koupela +kouprine +koura +kouraviev +kouri +kourinin +kouritenga +kourma +kourou +kouroumba +kouroussa +kouseri +koussasse +kousseri +koussevitzky +koussountou +koutin +koutine +koutofn +koutrouvelis +kouts +koutsouveli +kouwenberg +kouwenhoven +kouya +kouyoria +kouza +kouzie +kouzma +kova +kovac +kovacane +kovacevic +kovach +kovacia +kovack +kovacs +kovacz +kovai +koval +kovalev +kovalevskaya +kovalevskiy +kovalyenko +kovarik +kovatch +kovats +kove +kovebariai +koven +kovertilka +koverzin +kovil +kovins +kovio +kovrin +kowa +kowaao +kowagmiut +kowaki +kowal +kowalczewski +kowalenko +kowaleski +kowalib +kowalkowski +kowallec +kowalska +kowalski +kowalsky +kowan +kowanko +kowet +kowhai +kowiai +kowitz +kowjeffa +kowlong +kowtow +kowtowed +kowtower +kowtowers +kowtowing +kowtows +kowya +koxima +koya +koyama +koyan +koyato +koyi +koyo +koyong +koyra +koysha +koyta +koyuki +koyukon +koyukuk +koza +kozad +kozah +kozai +kozak +kozaki +kozakov +kozani +kozarich +kozderonas +kozek +kozelj +kozien +koziol +kozlo +kozlov +kozlowski +kozmanova +kozo +kozsukan +kozuch +kozymodemyan +kozyra +kozyrev +kpaga +kpagouda +kpagua +kpakum +kpala +kpalagha +kpalime +kpan +kpango +kpanicen +kpankpam +kpanten +kpanzon +kpara +kparla +kpashan +kpata +kpati +kpeaply +kpele +kpelese +kpelesetina +kpelle +kpeme +kpere +kperese +kpese +kpesi +kpessi +kpilakpila +kplebo +kpnc +kpnlf +kpodzo +kporo +kposo +kpotopo +kproc +kprocs +kprp +kpuesi +kpwaala +kpwate +kpwessi +kraa +kraal +kraals +krabbe +krabi +krabicka +kracheh +krachi +kracht +krachunova +krack +kraehenbuehl +kraemer +krafft +krafts +kraftstein +kraftwerk +krag +kragerite +krageroite +krah +krahl +krahn +krahne +kraho +krai +kraik +kraiman +krait +kraits +krajacic +krajamsart +krajangsart +krajesky +krakatau +krakatoa +kraken +krakens +krakoff +krakota +krakowetz +krakowiak +krakowska +krakowski +krakye +kral +kralahome +kralendijk +kraler +krali +kralik +kralk +kraly +kram +krama +kramang +kramar +krambeck +kramer +krameria +krameriaceae +kran +kranenburg +krang +krangku +krankheit +kranmer +krantz +krantzite +kranyeu +kranz +kranzburg +kraol +krapina +krapp +krappoth +krapum +kras +krasavin +krasis +krasivaya +krasker +krasket +krasner +krasnikov +krasnitskii +krasnitsky +krasnoy +krasnoyarsk +krasny +krasojevic +krassina +krassner +krat +krater +krato +kratogen +kratogenic +kratz +kratzky +kratzmar +krau +krauel +kraunhia +kraurite +kraurosis +kraurotic +kraus +krausbar +krause +krausen +krausheimer +krausite +krausmeyer +krauss +krautle +krauts +kravet +kravich +kravitz +krawatten +krawchuk +krawec +krawford +kray +krdev +kreamer +krebs +kredit +kredj +kree +kreeger +kreenakarore +kreeping +kreese +kreet +kreetn +kregielski +krehl +krei +kreibrich +kreich +kreiger +kreiling +kreimer +kreindling +kreinin +kreis +kreish +kreissler +kreistag +kreistle +kreittonite +kreitzman +krejca +krelos +krem +kremer +kremersite +kremlin +kremlinc +kremlinology +kremlins +kremmling +krems +kremvaks +kremvax +kremye +kren +krenak +kreng +krenitskiy +krenke +krenn +krennerite +krenos +kreole +kreon +krepa +krepe +krepi +kreplach +kreplech +krerk +kres +kresak +kresel +kresgeville +kresh +kreshboro +kreshhofra +kreshndogo +kresl +kress +kressida +kressmannia +kret +kretanje +kretch +kretn +kreton +kretsch +kretschmar +kretschmer +kreuger +kreusa +kreutzer +kreuz +kreuzberg +kreuzer +kreuzers +kreviazuk +kreye +kriang +kribi +krick +kridlovku +krieg +kriegler +kriegspiel +kriegsspiel +krieker +kriemhild +kriemhilds +kriener +krienke +krier +kriesberg +kriese +krige +krigernes +krigia +kriging +krikati +krikorian +krill +krills +krim +krimer +krimmer +krims +krimt +krina +krinda +kringelein +kringle +krinkati +krinkle +krinov +krio +kriol +kriophoros +krios +kripalani +kripee +kripilani +kripodeamter +kris +krisa +krisana +krisbarons +krischan +krises +krishan +krishna +krishnaiah +krishnaism +krishnaist +krishnaite +krishnaitic +krishnamurti +krishnamurty +krishnan +krisis +krisling +krislov +krispies +kriss +krissie +krissy +krist +krista +kristal +kristan +kristang +kristatos +kristbjorg +kriste +kristel +kristen +kristensen +krister +kristi +kristian +kristiansand +kristiansen +kristie +kristien +kristiina +kristin +kristina +kristinaux +kristine +kristjanson +kristl +kristlein +kristof +kristoffer +kristofori +kristopher +kristy +kristyn +krisuvigite +kriszta +krit +kritarchy +krithia +kritos +kritrima +kritzer +kritzinger +kriuchkov +kriukov +krivokapic +krivossidis +kriz +krizic +krizis +krobo +krobou +krobu +krobyloi +krobylos +krocket +krodel +kroe +kroeber +kroeger +kroegh +kroening +krofta +krog +krogan +kroge +kroger +krogh +krogstad +krohn +krohnkite +krojack +krokong +krokowski +krol +krola +krolis +kroll +kroman +krome +kromer +kromeski +kromogram +kromoludiro +kromskop +kron +krona +kronans +kronas +krone +kronecker +kronen +kroner +kronert +krong +krongkan +krongo +kronion +kronk +kronkel +kronmal +kronobergs +kronor +kronos +kronstadt +kronur +kronverk +kroo +krook +kroon +kroonenberg +kropatcheck +kropf +kropotkin +kropp +kroppdakubu +krosa +krosno +krosnos +krot +krotish +krotki +krotzsprings +krouchka +kroumen +kroumov +kroushka +krouska +krovati +krovi +krowlek +kroz +krozser +krstic +krten +kruche +krue +krueger +krug +kruge +kruger +krugerism +krugerite +kruglov +krugman +kruhdweir +kruhft +kruhftee +kruhnch +kruhulik +krui +kruikshank +kruje +krul +krull +krum +kruman +krumen +krumhorn +krummer +krummhorn +krumpp +krumwiede +krung +krunoslav +krupa +kruper +krupka +krupke +krupnik +krupp +kruppel +krupps +krus +kruschen +kruse +krusemark +krush +krusher +krushinski +kruskal +kruskals +kruta +krutchkoff +krutie +krutitsa +krutosti +krutoy +krutyat +kruusement +kruziak +krvw +kryc +krylov +krylya +krym +krymov +kryokonite +kryolites +kryoliths +krypsis +kryptic +krypticism +kryptinite +krypto +kryptol +kryptomere +krypton +kryptonite +kryptons +kryscio +kryski +krysko +krysta +krystal +krystalle +krystle +krystn +krystyna +kryszak +kryszka +kryts +kryz +kryzanek +kryzy +krzanowski +krzemien +krzesinski +krzyski +krzysztof +krzyzak +krzyzewska +ksakautenh +ksample +ksekova +ksenia +kshatriya +kshirsagar +ksta +kstate +kstati +ksto +kstorn +ksubsets +ksuvm +ksuvxa +ktal +ktemoc +ktivi +ktpi +ktsecretary +ktulu +ktusn +kuakua +kual +kuala +kualakapuas +kualalampur +kualapuu +kuam +kuamba +kuamut +kuan +kuang +kuanga +kuangfu +kuangho +kuangoh +kuanua +kuanyama +kuap +kuar +kuarik +kuat +kuba +kubachi +kubachin +kubachintsy +kubai +kubala +kuban +kubang +kubanka +kubash +kubat +kubatkin +kubau +kubawa +kubba +kubbi +kube +kubeai +kubekrankenh +kubelik +kubenko +kubera +kuberskaya +kubi +kubiak +kubik +kubin +kubinyi +kubiri +kubitschek +kubler +kubo +kuboki +kubokota +kubonitu +kuboro +kubrick +kubu +kubuklion +kubuli +kubumesaai +kubung +kubwa +kuch +kucha +kuchbandhi +kuche +kuchean +kuchek +kuchen +kuchens +kuchi +kuchikoli +kuching +kuchiuk +kuchuk +kucio +kuckkucksei +kucong +kuczynski +kuda +kudaba +kudachamo +kudaj +kudaka +kudala +kudali +kudamata +kudarat +kudas +kudat +kudato +kudawa +kuderat +kudi +kudiya +kudize +kudos +kudr +kudrashovc +kudrewatych +kudriashov +kudrun +kudu +kudugli +kudus +kudzhma +kudzus +kuebler +kuechler +kuehl +kuehn +kuehne +kuehneola +kuei +kueipien +kuelbs +kuen +kuennek +kuenneke +kuerassier +kufalima +kufic +kufra +kufrah +kufuru +kugama +kugamma +kugbo +kuge +kugel +kugler +kugni +kugong +kugurda +kugwe +kuhah +kuhdr +kuheiji +kuhfus +kuhgiluyeh +kuhl +kuhlenbeck +kuhlkamp +kuhlman +kuhlmann +kuhlr +kuhmpielr +kuhn +kuhnau +kuhnecke +kuhnert +kuhnia +kuhns +kuhpang +kuhspee +kuhub +kuibli +kuichua +kuijau +kuiku +kuikuro +kuikuru +kuikuvi +kuile +kuinga +kuini +kuiper +kuipers +kuivinen +kuiwai +kuiyow +kujaa +kujamat +kujamatak +kujanpaa +kujau +kuje +kuji +kujinga +kuka +kukanar +kukarkin +kukata +kukatja +kukele +kukes +kuki +kukic +kukichin +kukinaga +kukipi +kukithado +kukkamaki +kuklux +kukna +kukoline +kukri +kukrit +kuksov +kuktayor +kuku +kukua +kukubera +kukudayore +kukui +kukuk +kukukuku +kukula +kukulcan +kukulewich +kukuli +kukulim +kukulumun +kukulung +kukumindjen +kukuo +kukupa +kukura +kukuruku +kukus +kukuya +kukuyalangi +kukuyalanji +kukuyimidir +kukwa +kukwaya +kukwe +kula +kulaal +kulachandran +kulack +kulah +kulaha +kulaite +kulakism +kulakow +kulaks +kulam +kulamanen +kulanapan +kulang +kulange +kulango +kulangoteen +kulawi +kulawiec +kulchewsky +kuldetes +kuldip +kule +kulele +kulen +kulentsov +kulere +kulesa +kulfa +kulge +kuli +kulibali +kulik +kulikov +kulikovskij +kulikowsky +kulimit +kulina +kulino +kulinski +kuliow +kulisusu +kulit +kuliviu +kulja +kulkarni +kulkukan +kulky +kullaite +kullani +kullback +kulle +kullers +kullman +kullo +kullu +kullui +kulm +kulme +kulmet +kuloff +kulp +kulpantja +kulpmont +kulpsville +kult +kultur +kulturkampf +kulturkreis +kulturs +kulu +kuluba +kulubi +kului +kulun +kulung +kuluno +kulur +kuluva +kulvi +kulwali +kulyna +kuma +kumagai +kumai +kumaihaui +kumaiya +kumaju +kumak +kumalo +kumalu +kumam +kumamoto +kuman +kumandaan +kumaon +kumaoni +kumar +kumarahu +kumarbhag +kumat +kumau +kumaun +kumauni +kumawani +kumayaay +kumayena +kumba +kumbaingeri +kumbainggar +kumbamamfe +kumbashi +kumbere +kumbhari +kumbi +kumbo +kumbokota +kumboro +kumbule +kumejima +kumer +kumertuo +kumfel +kumfutu +kumgoni +kumhali +kumhar +kumi +kumiko +kumilan +kumin +kumiss +kumiyana +kumkh +kumman +kummel +kummels +kummer +kummerbund +kummerow +kumni +kumokio +kumquats +kumrah +kumshaw +kumu +kumudini +kumuk +kumukio +kumuklar +kumul +kumum +kumus +kumushalieva +kumusi +kumux +kumvong +kumvongse +kumwenu +kumyk +kumyki +kumzai +kumzari +kuna +kunabe +kunabeeb +kunabi +kunadze +kunai +kunama +kunan +kunana +kunant +kunante +kunar +kunashir +kunashiri +kunayaoni +kunban +kunbau +kunbi +kunbille +kunchai +kunchur +kunda +kundel +kundi +kundiawa +kundri +kundry +kundu +kundungay +kundur +kunduz +kunecke +kunert +kuneste +kunev +kuneva +kuney +kunfal +kunfel +kung +kungara +kungarov +kungekoka +kunggara +kunggari +kunggera +kunggobabis +kunglang +kungliao +kungsleden +kungtsumkwe +kungu +kunhar +kuni +kunia +kunian +kunibum +kunie +kunigami +kunigunde +kunihiko +kunikov +kunimaipa +kuning +kunini +kunio +kunitaka +kunitomo +kunivas +kuniyan +kuniyasu +kunjen +kunjip +kunjut +kunjuti +kunk +kunkel +kunkle +kunkletown +kunkur +kunlang +kunming +kunmiut +kunneke +kuno +kunrukh +kunsan +kunst +kunstmann +kunte +kuntova +kunu +kunua +kununurra +kunuzi +kunwinjku +kunyi +kunz +kunza +kunzakh +kunze +kunzer +kunzite +kunzli +kuok +kuomintang +kuopio +kuot +kuoy +kuoyu +kupa +kupang +kupchenko +kupchino +kupe +kupecek +kupel +kupelwieser +kupere +kuperi +kupfer +kupferberg +kupferman +kupfernickel +kupfferite +kuphar +kupi +kupia +kupidy +kupil +kupitz +kupminj +kupome +kupper +kupperman +kupsabiny +kupsch +kupto +kupuca +kuqa +kura +kuracina +kurada +kuragin +kurahara +kurajong +kurama +kuramwari +kurangal +kuranko +kurasawa +kurash +kurata +kurateg +kurauchi +kuravlev +kurbash +kurbat +kurbati +kurchatov +kurchenko +kurchicine +kurchine +kurczak +kurdar +kurdas +kurdi +kurdim +kurdish +kurdistan +kurdit +kurds +kurdshuli +kurdufan +kurdy +kurdymova +kurdzhali +kurdziel +kure +kurebeach +kureshy +kurgan +kurgic +kurgul +kuri +kuria +kurian +kurichiya +kurigram +kuriki +kuril +kurilian +kurima +kurin +kurina +kuring +kurinny +kurio +kuripaco +kuripako +kurita +kuritz +kuriu +kuriyo +kurja +kurka +kurku +kurkuro +kurland +kurlyad +kurmanji +kurmanjiki +kurmash +kurmburra +kurmi +kurmin +kurn +kurniawan +kuroda +kurogane +kurolapnik +kurondi +kurosawa +kuroshima +kuroshio +kurotori +kurourmi +kurowski +kurrajong +kurripaco +kurripako +kurs +kursawe +kurse +kursell +kursk +kurt +kurtat +kurten +kurth +kurtha +kurthwood +kurti +kurtis +kurtistown +kurtiz +kurtjjar +kurto +kurtopakha +kurtosis +kurts +kurtsev +kurtz +kurtzmann +kurtzs +kuru +kurua +kuruaya +kuruba +kurucz +kurudu +kurug +kuruier +kurukh +kuruko +kurukuru +kurulu +kuruma +kurumar +kurumaya +kurumba +kurumban +kurumbar +kurumfe +kurumi +kurumvari +kurunegala +kurung +kurunga +kurungtufu +kurungu +kurupi +kuruppillai +kuruppu +kurur +kururmi +kurus +kuruti +kurutipare +kuruwer +kuruwor +kurux +kurvey +kurveyor +kurya +kurye +kuryliak +kurylyk +kurz +kurzeme +kurzfassung +kusa +kusaal +kusaasi +kusabue +kusage +kusaghe +kusaie +kusaiean +kusal +kusale +kusam +kusamanlea +kusan +kusanda +kusasi +kusatsu +kuschel +kuschka +kuse +kuseki +kuseri +kush +kusha +kushaiah +kushan +kushani +kushar +kushe +kushell +kushi +kushka +kushner +kushnir +kushniruk +kushshu +kushta +kushtia +kushtoz +kushwaha +kusi +kusibi +kusimansel +kuskite +kuskokwim +kuskos +kuskus +kuskwogmiut +kusmider +kuss +kussauer +kusserow +kussin +kussmaul +kusso +kustaanheimo +kustenau +kustera +kusti +kustra +kusu +kusulwa +kusum +kusumakar +kusunda +kusunoki +kusuri +kusuwa +kuswara +kusyk +kuta +kutac +kutacane +kutahya +kutai +kutaissi +kutang +kutari +kutch +kutcha +kutcherry +kutchin +kuteb +kutele +kutenai +kutep +kuter +kutev +kuthari +kutiadyapa +kutijaro +kutin +kutine +kutinn +kutiyali +kutkasen +kutley +kutmanaliev +kutner +kutou +kutowski +kutsch +kutscher +kutschke +kutsu +kutsung +kutswe +kutta +kuttab +kuttar +kuttaur +kuttawa +kutten +kuttner +kutu +kutubu +kutubuan +kuturmi +kutuzov +kutvolgyi +kutzmeier +kutztown +kuuk +kuulei +kuvakan +kuvalan +kuvanmas +kuvarawan +kuvasz +kuveill +kuvendi +kuvenmas +kuvera +kuvi +kuvinga +kuvira +kuvoko +kuvuri +kuvyo +kuwaa +kuwada +kuwai +kuwait +kuwaiti +kuwaitis +kuwana +kuwani +kuwarawan +kuwataay +kuwayt +kuwi +kuya +kuyan +kuybyshev +kuyck +kuykendall +kuykicheva +kuylen +kuyobe +kuyonon +kuysuei +kuyubi +kuyumbana +kuyunon +kuzamani +kuzas +kuzbary +kuzbass +kuzemka +kuzirian +kuzka +kuzma +kuzmenko +kuzmina +kuzminsky +kuznecov +kuznets +kuznetsov +kuznetsova +kuznetzoff +kuznetzov +kuznezov +kuznietsky +kuzum +kuzunoha +kuzuoglu +kuzyk +kuzz +kvada +kvalan +kvalseth +kvamme +kvanada +kvanadin +kvanxidatl +kvar +kvas +kvass +kvec +kveta +kvetch +kvetched +kvetches +kvetching +kvindesind +kvinna +kvint +kvinter +kvistaberg +kvitek +kvitnitskiy +kwaa +kwaalang +kwabe +kwabzak +kwac +kwacha +kwachas +kwadi +kwadia +kwadya +kwadza +kwagallak +kwagila +kwagiutl +kwah +kwai +kwaibida +kwaibo +kwaiker +kwaio +kwaitha +kwaja +kwajalein +kwaji +kwajji +kwak +kwakiutl +kwakum +kwakwa +kwakwagom +kwakwak +kwakwi +kwal +kwala +kwale +kwalean +kwali +kwalla +kwam +kwama +kwamanchi +kwamba +kwambi +kwame +kwamera +kwami +kwamme +kwamouth +kwamu +kwan +kwancama +kwanchit +kwandang +kwandara +kwandebele +kwandi +kwando +kwandu +kwang +kwanga +kwangali +kwangare +kwangari +kwange +kwangfu +kwango +kwangoma +kwangshun +kwangtung +kwangwa +kwanh +kwania +kwanim +kwanja +kwanjama +kwanka +kwannon +kwansu +kwant +kwantan +kwantemai +kwantlen +kwanyama +kwanza +kwapa +kwapm +kwara +kwaraae +kwarafe +kwarasa +kware +kwarekwareo +kwarra +kwarsengen +kwarta +kwarterka +kwasang +kwasengen +kwasio +kwasniewska +kwasnuewski +kwassio +kwast +kwatay +kwatiri +kwato +kwavi +kwawu +kwaya +kwayam +kwayana +kwazaan +kwazoku +kwazulu +kwazwimba +kwedam +kwedi +kwee +kween +kweetshori +kwegu +kwei +kweichu +kweisi +kweiyang +kwele +kweli +kwelshin +kwem +kwena +kweneng +kwengo +kweni +kwenitura +kweny +kwenyii +kwerba +kwere +kwerisa +kwertee +kwese +kwess +kwesten +kweteon +kwethluk +kwetshori +kwhr +kwiatkowska +kwiecien +kwigillingok +kwijau +kwijur +kwik +kwikapa +kwikila +kwili +kwilu +kwina +kwing +kwingsang +kwinpang +kwinti +kwiri +kwisatz +kwise +kwissa +kwisso +kwoht +kwoi +kwoireng +kwojeffa +kwok +kwoli +kwoll +kwom +kwoma +kwomtari +kwon +kwong +kwongoma +kwono +kwontm +kwotto +kwottu +kwouk +kwudi +kwuhks +kwundi +kwusaun +kxau +kxaxa +kxhalaxadi +kxigwi +kxoe +kyabrat +kyack +kyah +kyaka +kyalo +kyam +kyama +kyan +kyang +kyango +kyanising +kyanite +kyanize +kyanizing +kyanzi +kyar +kyat +kyato +kyats +kyaung +kybele +kyburz +kydd +kydel +kyec +kyedye +kyenele +kyenga +kyentu +kyerung +kyiatkowski +kyibaku +kyklopes +kyklops +kyla +kylcsar +kyle +kylen +kylertown +kyles +kylie +kylila +kylite +kylix +kylynn +kymation +kymatology +kymbalon +kymi +kymogram +kymograms +kymograph +kymographic +kynarski +kynaston +kynthia +kynurenic +kynurine +kyoami +kyocera +kyodai +kyoga +kyoko +kyokosi +kyol +kyombaron +kyon +kyong +kyonggido +kyongsangdo +kyoo +kyopi +kyosti +kyou +kyoung +kypchak +kyper +kyphosidae +kyphosis +kyphotic +kypria +kyprianou +kyra +kyrana +kyrandia +kyrenia +kyrgyz +kyriakou +kyrie +kyries +kyrilla +kyrilova +kyrine +kyrkos +kyrle +kyrstin +kyschtymite +kyser +kyte +kythera +kyuemon +kyun +kyung +kyurin +kyurinish +kyushu +kyuzo +kyzer +kyzlink +kyzyl +kyzylbash +kzbgzwbk +kzin +kzoo +kzor +laabum +laadah +laadan +laadi +laage +laager +laak +laale +laali +laalua +laamang +laame +laamoot +laamu +laan +laang +laani +laanit +laany +laaris +laayoune +laba +lababidi +labadie +labadieville +laban +labara +labardi +labare +labarge +labarr +labarre +labarum +labasa +labauve +labba +labber +labdacism +labdacismus +labdanum +labe +labeau +labefact +labefaction +labefy +label +labeled +labeler +labelers +labeling +labell +labella +labellate +labelle +labelled +labeller +labellers +labelling +labelloid +labellum +labels +labelz +labenek +labent +laberge +labetoulle +labexpert +labfive +labhani +labi +labial +labialism +labialismus +labiality +labialize +labialized +labially +labials +labiatae +labiate +labiated +labibia +labiche +labid +labidura +labiduridae +labiella +labile +labiles +lability +labilization +labilize +labiodendal +labiodental +labioglossal +labiograph +labiolingual +labiomancy +labiomental +labionasal +labiopalatal +labioplasty +labiose +labiovelar +labioversion +labirinto +labis +labisse +labissiere +labium +lablab +lablanca +labled +labmed +labnay +labo +labobo +labogai +labolt +labonarska +labonte +labor +laborability +laborable +laborage +laborant +laboratorial +laboratorian +laboratories +laboratory +laborday +labordom +labored +laboredly +laboredness +laborer +laborers +laboress +laborhood +labori +laborie +laborin +laboring +laboringly +laborings +laboriously +laborism +laborist +laborite +laborites +laborius +laborless +laborous +laborously +laborousness +labors +laborsaving +laborsome +laborsomely +laborteaux +labossiere +labouchere +laboulbenia +labour +labourd +labourdette +labourdin +laboured +labourer +labourers +laboureth +labourier +labouring +labours +labouvie +labra +labrador +labradorean +labradoritic +labral +labranche +labrea +labreche +labredt +labret +labretifery +labridae +labrie +labrino +labrinos +labroid +labroidea +labrosaurid +labrosauroid +labrosaurus +labrose +labrum +labrus +labrusca +labruzzo +labry +labrys +labs +labtsa +labtsb +labu +labuan +labuandiri +labuha +labuhan +labuhn +labuk +labuksugut +laburnum +laburnums +labwor +labyrinth +labyrinthal +labyrinthian +labyrinthic +labyrinthici +labyrinthine +labyrinths +labyrinthula +labyrinthus +lacade +lacadiera +lacalle +lacamp +lacando +lacandon +lacarne +lacasse +lacassine +lacayo +lacca +laccadive +laccaic +laccainic +laccase +laccd +laccol +laccolith +laccolithic +laccoliths +laccolitic +lace +lacebark +laced +lacee +laceflower +laceier +laceleaf +laceless +lacelike +lacelle +lacemaker +lacemaking +laceman +lacenter +lacepiece +lacepod +lacer +lacerability +lacerable +lacerant +lacerated +lacerately +lacerates +lacerating +laceration +lacerations +lacerative +lacers +lacertae +lacertian +lacertid +lacertidae +lacertiform +lacertilia +lacertilian +lacertiloid +lacertine +lacertoid +lacertose +lacery +laces +lacet +lacetilian +lacewings +lacewoman +lacewood +lacework +laceworker +laceworks +lacey +laceybark +laceyspring +laceysspring +laceyville +lach +lachaille +lachambre +lachance +lachatao +lache +lachen +lachenalia +lachenbruch +lachenite +lachens +laches +lachesis +lachi +lachie +lachiguiri +lachikwaw +lachillo +lachine +lachiroag +lachiruaj +lachish +lachixila +lachlan +lachman +lachmon +lachna +lachnanthes +lachner +lachnosterna +lachow +lachowski +lachryma +lachrymae +lachrymal +lachrymally +lachrymals +lachrymary +lachrymation +lachrymator +lachrymatory +lachrymiform +lachrymist +lachrymosal +lachrymose +lachrymosely +lachrymosity +lachrymous +lachsa +lachu +lacie +lacier +laciest +laciform +lacily +lacinaria +laciness +lacing +lacings +lacinia +laciniate +laciniated +laciniation +laciniform +laciniola +laciniolate +laciniose +lacinula +lacinulate +lacinulose +lacis +lack +lackadaisy +lackaday +lackawaxen +lackaye +lackbrain +lackbrained +lacked +lackenbauer +lacker +lackers +lackery +lackest +lacketh +lackeydom +lackeyed +lackeying +lackeyism +lackeys +lackeyship +lackie +lacking +lackland +lackluster +lacklustre +lacklustrous +lackritz +lacks +lacksense +lackteen +lackwit +lackwittedly +laclede +laclubar +lacmoid +lacmus +lacolith +lacomb +lacombe +lacon +lacona +laconde +laconia +laconian +laconica +laconically +laconicism +laconicum +laconism +laconize +laconizer +laconner +lacoochee +lacosse +lacoste +lacota +lacour +lacours +lacquered +lacquerer +lacquerers +lacquering +lacquerist +lacquers +lacrescent +lacrimal +lacrimation +lacrimator +lacrimatory +lacrimosa +lacrimoza +lacrobat +lacroix +lacroixite +lacross +lacrosser +lacrosses +lacroute +lacrym +lacs +lactagogue +lactalbumin +lactam +lactamide +lactan +lactant +lactarene +lactarious +lactarium +lactarius +lactary +lactase +lactated +lactates +lactating +lactation +lactational +lactations +lacteal +lacteally +lactean +lactenin +lacteous +lactesce +lactescence +lactescency +lactescent +lactic +lacticinia +lactid +lactide +lactiferous +lactific +lactifical +lactiflorous +lactifluous +lactiform +lactifuge +lactify +lactigenic +lactigenous +lactigerous +lactim +lactimide +lactinate +lactivorous +lacto +lactobacilli +lactocele +lactochrome +lactocitrate +lactoflavin +lactogenic +lactoid +lactol +lactometer +lactone +lactonic +lactonize +lactoproteid +lactoprotein +lactoscope +lactoses +lactoside +lactosuria +lactotoxin +lactuca +lactucarium +lactucerin +lactucin +lactucol +lactucon +lactyl +lacuna +lacunal +lacunar +lacunaria +lacunary +lacunas +lacune +lacunose +lacunosity +lacunule +lacunulose +lacuscular +lacustral +lacustrian +lacwork +lacy +lacygne +lada +ladak +ladakh +ladakhi +ladakin +ladan +ladang +ladanigerous +ladanum +ladanums +ladanyi +ladaphi +ladas +ladd +ladda +ladde +ladder +laddered +laddering +ladderlike +ladders +ladderway +ladderwise +laddery +laddess +laddie +laddies +laddikie +laddish +laddock +laddonia +lade +laded +ladedamu +ladefoged +ladeira +ladell +lademan +laden +ladened +ladens +lader +laders +lades +ladet +ladeth +ladhakhi +ladhiqiyah +ladholme +ladhood +ladi +ladies +ladiesburg +ladify +ladik +ladil +ladimer +ladin +lading +ladings +ladino +ladislas +ladislaus +ladislav +ladislaw +ladkin +ladle +ladled +ladleful +ladlefuls +ladler +ladlers +ladles +ladlewood +ladling +ladmiral +ladner +ladno +ladoga +ladon +ladonia +ladonna +ladonne +ladora +ladouceur +ladowski +ladozhskoy +ladren +ladridge +ladroes +ladron +ladrone +ladronism +ladronize +ladrons +lads +ladson +laduke +ladva +ladwags +lady +ladybird +ladybirds +ladybug +ladybugs +ladyclock +ladydom +ladyfinger +ladyfingers +ladyfish +ladyfly +ladyfy +ladygin +ladyhawke +ladyhood +ladyish +ladyism +ladykillers +ladykin +ladykind +ladylake +ladyless +ladylikely +ladylikeness +ladyling +ladylove +ladyloves +ladyly +ladymargaret +ladymead +ladymon +ladynina +ladyship +ladyships +ladysmith +ladytide +laeko +laekolibuat +laekolimbuat +lael +laelia +laemodipod +laemodipoda +laemodipodan +laenger +laengere +laennec +laeotropic +laeotropism +laer +laertes +laes +laestrygones +laet +laeti +laetic +laetificant +laetitia +laetrile +laevigrada +laevoduction +laevogyrate +laevogyre +laevogyrous +laevolactic +laevoversion +laevsky +laewamba +laewomba +lafalce +lafana +lafarge +lafargeville +lafargue +lafata +lafaurie +lafay +lafayette +lafe +laferia +laferriere +lafever +laffan +lafferty +laffin +laffont +laffoon +laffran +lafi +lafia +lafiagi +lafit +lafite +lafitte +laflamme +lafleur +lafofa +lafollette +lafont +lafontaine +laforet +laforge +lafovet +lafox +laframboise +lafrance +lafuret +laga +lagace +lagaffe +lagaip +lagakos +lagan +lagana +laganyan +lagarcon +lagarde +lagarto +lagau +lagaw +lagawe +lagba +lagduf +lage +lagen +lagena +lagenaria +lagend +lageniform +lager +lagere +lagerfelt +lagerkvist +lagers +lagerspetze +lagerya +lagetta +lagetto +laggar +laggard +laggardism +laggardly +laggardness +laggards +laggars +lagged +laggen +lagger +laggers +laggin +lagging +laggings +laghans +laghi +laghman +laghmani +laghouat +laghu +lagis +laglast +lagna +lagnappe +lagniappe +lagniappes +lago +lagolikuria +lagomarsino +lagomorph +lagomorpha +lagomorphic +lagomorphous +lagomrph +lagomyidae +lagona +lagonite +lagoon +lagoonal +lagoons +lagoonside +lagopode +lagopodous +lagopous +lagopus +lagorbats +lagorchestes +lagorio +lagos +lagostoma +lagostomus +lagothrix +lagourin +lagowa +lagrande +lagrandeur +lagrange +lagrangea +lagreca +lagrene +lagro +lagrotta +lagrula +lags +lagthing +lagting +lagu +lagubi +lagume +laguna +lagunabeach +lagunahills +lagunan +lagunas +laguncularia +lagune +lagunero +lagunitas +lagurus +lagwan +lagwane +lagwort +laha +lahab +lahabra +lahad +lahaie +lahaina +lahairoi +lahanan +lahanda +laharpe +lahaska +lahauli +lahaye +lahbib +lahdenmaki +lahey +lahiff +lahij +lahiri +lahk +lahlum +lahmam +lahmansville +lahmi +lahnda +lahndi +lahoma +lahonda +lahontan +lahood +lahou +lahouli +lahr +lahta +lahteenmaa +lahti +lahu +lahul +lahuli +lahuna +laia +laiagam +laibach +laibon +laibowitz +laic +laical +laicality +laically +laich +laichau +laiching +laichzeit +laicism +laicisms +laicity +laicization +laicize +laicized +laicizer +laicizes +laicizing +laicong +laid +laidbak +laidlaw +laidlow +laidst +laie +laierdila +laigh +laika +laikipia +laikom +laila +lailaw +lain +laina +laine +lainesse +lainey +laing +laings +laingsburg +lainie +laino +laiose +laippala +lair +lairage +laird +lairdess +lairdhill +lairdie +lairdly +lairdocracy +lairds +lairdship +lairdsville +laire +laired +lairing +lairless +lairman +lairs +lairson +lairstone +lairy +lais +laish +laiso +lait +laitance +laities +laitinen +laitokitok +laiwomba +laiwonu +laiwui +laiyolo +laizao +laizo +laizy +laja +lajamanu +lajara +lajas +lajenge +lajiness +lajolla +lajolo +lajos +lajose +lajoya +lajunta +lajzerowicz +laka +lakaalong +lakahia +lakalai +lakalei +lakamadi +lakan +lakarpite +lakatoi +lakdargwa +lake +lakealfred +lakeandes +lakeann +lakeariel +lakearthur +lakeba +lakebay +lakebenton +lakebluff +lakebronson +lakebutler +lakecharles +lakecicott +lakecity +lakeclear +lakecomo +lakecreek +lakecrystal +laked +lakedallas +lakedelton +lakeelmo +lakeelsinore +lakefield +lakeforest +lakefork +lakefront +lakegeneva +lakegeorge +lakegrove +lakehamilton +lakeharbor +lakeharmony +lakehead +lakehelen +lakehiawatha +lakehill +lakehth +lakehubert +lakehughes +lakeisabella +lakeitasca +lakejackson +lakekatrine +lakeland +lakelander +lakeleelanau +lakeless +lakelet +lakelike +lakelillian +lakelinden +lakella +lakelure +lakeluzerne +lakelynn +lakemanship +lakemary +lakemills +lakemilton +lakemonroe +lakemont +lakemore +lakenheath +lakenorden +lakeodessa +lakeorion +lakeoswego +lakeozark +lakepark +lakeplacid +lakepleasant +lakeport +lakeports +lakepreston +laker +lakers +lakes +lakeshore +lakesides +lakespring +lakestevens +laket +laketomahawk +laketon +laketown +laketoxaway +lakeview +lakevilla +lakevillage +lakeville +lakewaccamaw +lakewales +lakeward +lakeweed +lakewilson +lakewinola +lakewood +lakeworth +lakezurich +lakh +lakhal +lakhani +lakher +lakhian +lakhimpur +laki +lakia +lakie +lakier +lakiest +lakimpur +lakin +laking +lakings +lakington +lakins +lakish +lakishness +lakism +lakist +lakitukura +lakiung +lakja +lakka +lakkia +lakkja +laklo +lako +lakohna +lakon +lakona +lakonia +lakor +lakota +lakovic +lakshadweep +lakshmi +laksmipur +lakso +laku +lakudo +lakum +lakume +lakundu +laky +lala +lalaberry +lalabisa +lalage +lalaki +lalana +lalande +lalang +lalani +lalara +lalaura +lalawa +lale +laleia +lali +lalia +laliberte +lalin +lalit +lalita +lalitha +lalka +lall +lalla +lallan +lalland +lallans +lallation +lalle +lallegro +lalling +lallukka +lallus +lally +lallygag +lallygagged +lallygagging +lallygags +lalmonirhat +lalo +lalok +laloma +lalonde +laloneurosis +lalopathy +lalophobia +laloplegia +lalor +lalouel +lalr +lalsky +lalu +lalung +laluz +lama +lamacraft +lamadalena +lamadera +lamag +lamah +lamaholot +lamai +lamaic +lamail +lamaisen +lamaism +lamaist +lamaistic +lamaite +lamakara +lamaken +lamakenjes +lamala +lamalama +lamalamic +lamalanga +lamam +lamane +lamang +lamani +lamanism +lamanite +lamano +lamanski +lamantin +lamany +lamar +lamarache +lamarche +lamarckia +lamarckian +lamarckism +lamargue +lamarkins +lamarkism +lamarque +lamarr +lamarre +lamartine +lamas +lamasary +lamaseries +lamasery +lamastery +lamatek +lamb +lamba +lambadi +lambahi +lambale +lambara +lambarene +lambart +lambasa +lambast +lambaste +lambasted +lambastes +lambasting +lambasts +lambau +lambayeque +lambda +lambdacism +lambdas +lambdin +lambdiod +lambdoid +lambdoidal +lambeau +lambed +lambencies +lambency +lambent +lambently +lamber +lambers +lambert +lamberta +lambertin +lambertlake +lamberto +lamberton +lambertville +lambeth +lambev +lambhood +lambi +lambia +lambie +lambies +lambiness +lambing +lambish +lambkill +lambkin +lambkins +lamble +lamblia +lambliasis +lamblike +lambling +lambly +lambo +lambon +lambong +lamborn +lambos +lamboya +lamboys +lambrecht +lambregts +lambregtse +lambrequin +lambric +lambrinos +lambrook +lambropoulou +lambros +lambs +lambsburg +lambsdorff +lambsdown +lambskin +lambskins +lambsuccory +lambu +lambumbu +lambunao +lambusie +lambwa +lamby +lambya +lame +lamebrain +lamebrains +lamech +lamed +lamedeer +lamedh +lamedhs +lamedica +lamedlamella +lamedon +lameds +lameduck +lameia +lamel +lamella +lamellae +lamellaria +lamellarly +lamellary +lamellas +lamellate +lamellated +lamellately +lamellation +lamellicorn +lamelliform +lamelloid +lamellose +lamellosity +lamellule +lamely +lameness +lament +lamentable +lamentably +lamentation +lamentations +lamentatory +lamented +lamentedly +lamenter +lamenters +lamentful +lamenting +lamentingly +lamentive +lamentory +laments +lamenu +lamer +lamerman +lamero +lamerok +lamerot +lamers +lamertviri +lamerz +lames +lamesa +lamest +lamester +lamestery +lamet +lameter +lametin +lametkhamet +lametta +lamey +lamgang +lami +lamia +lamiaceae +lamiaceous +lamias +lamiger +lamiid +lamiidae +lamiides +lamiinae +lamin +lamina +laminability +laminable +laminae +laminal +laminaria +laminariales +laminarian +laminarin +laminarioid +laminarite +laminary +laminas +laminate +laminated +laminates +laminating +lamination +laminator +laminboard +lamine +laminectomy +laming +laminiferous +laminiform +laminitis +laminose +laminous +laminusa +lamirada +lamirande +lamish +lamison +lamista +lamisto +lamitan +lamiter +lamium +lamiyawan +lamja +lamjung +lamkang +lamm +lamma +lammas +lammastide +lammed +lammer +lammergeier +lammergeyer +lammermoor +lamming +lammock +lammont +lammoreaux +lammy +lamna +lamnectomy +lamnid +lamnidae +lamnoid +lamnso +lamnsok +lamogai +lamoille +lamola +lamond +lamonde +lamonea +lamoni +lamont +lamontagne +lamonte +lamore +lamorisse +lamothe +lamotrek +lamotta +lamotte +lamouche +lamount +lamour +lamoure +lamoureoux +lamoureux +lamp +lampad +lampadary +lampadedromy +lampadephore +lampadite +lampaio +lampang +lampas +lampasas +lampatia +lampe +lamped +lamper +lampern +lampers +lampert +lamperti +lampese +lampeter +lampetia +lampf +lampflower +lampfly +lampful +lamphier +lamphole +lamphun +lampin +lamping +lampion +lampist +lampistry +lampkin +lampland +lamplao +lampless +lamplet +lamplight +lamplighted +lamplighter +lamplit +lamplugh +lampmaker +lampmaking +lampman +lampochky +lampone +lampong +lampoo +lampooned +lampooner +lampooners +lampoonery +lampooning +lampoonist +lampoonists +lampoons +lamppost +lampposts +lampreave +lamprecht +lampreys +lampridae +lamprophony +lamprophyre +lamprophyric +lamprotype +lamps +lampsilis +lampsilus +lampson +lampstand +lampton +lampung +lampungic +lampur +lampwick +lampwrights +lampyrid +lampyridae +lampyrine +lampyris +lams +lamsihoan +lamso +lamson +lamssa +lamti +lamu +lamud +lamulamu +lamulamul +lamumba +lamunkhin +lamura +lamus +lamusong +lamut +lamuti +lamy +lamziekte +lana +lanae +lanagan +lanai +lanaicity +lanais +lanameter +lanan +lanao +lanaong +lanapsua +lanark +lanarkia +lanarkite +lanas +lanatai +lanate +lanated +lanava +lanaz +lancang +lancaster +lancasterian +lancastrian +lance +lancecreek +lanced +lancegay +lancelet +lancelets +lancelike +lancelot +lancely +lanceman +lanceolar +lanceolate +lanceolated +lanceolately +lanceolation +lancepesade +lancepod +lanceproof +lancer +lancers +lances +lanceshaped +lancet +lanceted +lanceteer +lancets +lancewood +lancha +lanchak +lanchbury +lanchester +lancie +lanciers +lanciferous +lanciform +lancinate +lancination +lancing +lanckere +lancret +lanctot +land +landa +landahl +landais +landak +landamman +landar +landau +landauer +landaulet +landaulette +landaus +landaveri +landawe +landay +landbach +landblink +landbook +landdrost +lande +landed +landells +landen +landenberg +landenna +lander +landerman +landers +landesignyes +landesite +landesman +landess +landfall +landfalls +landfast +landfield +landfilled +landfills +landflood +landform +landforms +landgafol +landgard +landgraf +landgravate +landgrave +landgravess +landgraviate +landgravine +landgre +landgrebe +landham +landholder +landholders +landholding +landi +landicho +landier +landikma +landimere +landin +landing +landings +landingville +landis +landisburg +landisville +landladies +landlady +landladydom +landladyhood +landladyish +landladyship +landler +landless +landlessness +landlike +landline +landlock +landlocked +landlook +landlooker +landloper +landlord +landlordism +landlordly +landlordry +landlords +landlordship +landlouper +landlouping +landlubber +landlubberly +landlubbers +landlubbing +landman +landmark +landmarker +landmarks +landmass +landmasses +landmil +landmonger +lando +landocracies +landocracy +landocrat +landogo +landois +landolakes +landolphia +landolt +landoma +landon +landone +landor +landoukro +landoulsi +landouman +landowners +landowning +landplane +landraker +landre +landreaux +landreeve +landreth +landrew +landriault +landright +landroval +landru +landrum +landry +lands +landsale +landsat +landsay +landsberg +landsberger +landscape +landscaped +landscaper +landscapers +landscapes +landscaping +landscapist +landschoff +landser +landshard +landship +landsick +landside +landsides +landskip +landskips +landslid +landslide +landslides +landslip +landslips +landsmaal +landsmal +landsman +landsmen +landspout +landspringy +landsret +landsstyre +landsstyri +landsting +landstorm +landsturm +landtag +landu +landuma +landuman +landville +landvogt +landwaiter +landward +landwards +landwash +landways +landwehr +landwhin +landwire +landwrack +landy +lane +laneart +laneburg +lanecity +lanei +lanel +lanen +lanengram +lanera +lanes +lanesboro +lanesville +lanete +lanett +lanette +laneuville +laneview +laneville +laneway +lanexa +laney +lanfax +lanford +lanfranchi +lang +langa +langage +langaha +langalanga +langam +langan +langanbou +langanu +langarai +langas +langat +langauer +langauge +langauges +langba +langbanite +langbase +langbashe +langbasi +langbeinite +langberg +langbwasse +langca +langdon +lange +langelier +langella +langeloth +langen +langenberg +langer +langerhan +langerhanke +langett +langevin +langford +langgus +langhian +langhoff +langhorne +langi +langilan +langilang +langimar +langite +langiung +langko +langlais +langland +langlauf +langlaufer +langle +langlet +langley +langlois +langmann +langmiler +langner +lango +langoan +langobard +langobardic +langois +langoon +langooty +langor +langot +langouste +langrage +langridge +langrong +langsam +langsat +langsdale +langsdorffia +langsettle +langshan +langshin +langspiel +langstaff +langston +langstrump +langsville +langsyne +langsynes +langta +langtang +langton +langtry +language +languaged +languageless +languageplay +languages +languda +langue +langued +languedoc +languedocian +languedocien +langues +languescent +languet +languette +languid +languidi +languidly +languidness +languish +languished +languisher +languishers +languishes +languisheth +languishing +languishment +langulo +languor +languorous +languorously +languors +langur +langus +langvick +langwa +langwasi +langwiter +langworthy +langya +lanh +lani +laniard +laniariform +laniary +laniate +lanie +laniel +lanier +laniere +laniferous +lanific +laniflorous +laniform +lanigan +lanigerous +laniidae +laniiform +laniinae +lanioid +lanista +lanita +lanital +lanius +lanjung +lanka +lankan +lankatere +lankaviri +lanker +lankest +lanket +lankford +lankier +lankiest +lankily +lankin +lankiness +lankish +lankly +lankness +lankpese +lankpeshi +lanky +lanl +lanman +lanmanager +lann +lanna +lannan +lannelongue +lanner +lanneret +lannes +lanni +lanning +lanno +lannom +lannon +lannoo +lanny +lano +lanoe +lanoh +lanohsemnam +lanokaharbor +lanolin +lanoline +lanolines +lanolins +lanoon +lanos +lanose +lanosity +lanoszka +lanoue +lanouette +lanoux +lanoy +lanoza +lanphier +lanquid +lans +lansana +lansang +lansat +lansbury +lansdale +lansdowne +lanse +lanseh +lanserver +lansford +lansfordite +lansing +lanskell +lansknecht +lansky +lanson +lansquenet +lansu +lansupport +lant +lantaca +lantana +lantanai +lantanas +lantaro +lantastic +lante +lanteau +lanteigne +lanten +lanter +lanterloo +lantern +lanterne +lanternist +lanternjawed +lanternleaf +lanternman +lanterns +lanthana +lanthanite +lanthanotus +lanthier +lanthopine +lanthorn +lanthorns +lantien +lantin +lantoi +lantos +lantrace +lantry +lantstic +lantto +lantum +lantz +lanuages +lanuginose +lanuginous +lanugo +lanum +lanun +lanunix +lanuvian +lanvin +lanwan +lanx +lanxt +lany +lanyan +lanyard +lanyards +lanyev +lanyi +lanying +lanyon +lanyu +lanz +lanza +lanzdorf +lanzi +lanzia +lanzkron +lanzog +laoag +laocoon +laodamia +laodica +laodicea +laodicean +laodiceanism +laodiceans +laois +laompo +laon +laona +laong +laoor +laopa +laopang +laophutai +laos +laosian +laosthailand +laothai +laotian +laotians +laotto +lapacho +lapachol +lapactic +lapageria +lapagui +lapaguia +lapalama +lapara +laparectomy +laparocele +laparomyitis +laparoscope +laparoscopy +laparostict +laparosticti +laparotome +laparotomies +laparotomist +laparotomize +laparotomy +lapaz +lapb +lapboard +lapboards +lapchak +lapche +lapcock +lapd +lapdog +lapdogs +lapeer +lapeirousia +lapel +lapeler +lapels +lapeyre +lapford +lapful +lapfuls +laphitz +lapicide +lapicki +lapidarian +lapidaries +lapidarist +lapidate +lapidated +lapidates +lapidating +lapidation +lapidator +lapideon +lapideous +lapidescence +lapidescent +lapidicolous +lapidific +lapidify +lapidist +lapidists +lapidity +lapido +lapidose +lapidoth +lapidus +lapierre +lapilliform +lapillo +lapillus +lapin +lapine +lapinized +lapis +lapises +lapith +lapithae +lapithaean +lapkin +lapko +laplace +laplaces +lapland +laplander +laplanders +laplandian +laplandic +laplandish +laplante +laplat +laplata +laplink +laplume +lapoint +lapointe +lapomme +lapon +laporte +laportea +laportecity +lapostolle +lapotaire +lapovsky +lapp +lappa +lappaceous +lappage +lappajarvi +lappan +lappe +lapped +lappeenranta +lapper +lappering +lappers +lappeted +lappeth +lappets +lappi +lappic +lapping +lappish +lapponese +lapponian +lapps +lappula +laprade +laprairie +lapre +laprise +laprobe +lapryor +laps +lapsability +lapsable +lapsana +lapsation +lapschig +lapse +lapsed +lapser +lapsers +lapses +lapsi +lapsing +lapsingly +lapster +lapstone +lapstrake +lapstreak +lapstreaked +lapstreaker +lapsus +lapt +laptev +laptop +laptops +lapuente +lapulapu +lapush +laputa +laputan +laputically +lapuyan +lapuyen +lapwai +lapwing +lapwings +lapwork +laqua +laquear +laquearian +laqueus +laquey +laquinta +lara +larabee +larabie +larae +laragia +laragiya +laragiyan +laraia +laraine +laraki +larakia +larakiya +laralia +laramanik +laramide +laramie +laran +laranchi +larange +larantuka +laraos +laras +larat +laratfordata +laravat +larawa +larbi +larboard +larboards +larbolins +larbowlines +larc +larcenable +larcener +larceners +larcenic +larcenies +larcenish +larcenist +larcenists +larcenous +larcenously +larch +larche +larchen +larches +larchmont +larchwood +larcker +larco +lardacein +lardaceous +larded +larder +larderellite +larderer +larderful +larderlike +larders +lardier +lardiest +lardiform +lardil +lardill +lardin +larding +lardite +lardner +lardon +lards +lardworm +lardy +lare +lareabell +laredo +larentiidae +larestani +laretei +larevat +larewall +larey +larg +larga +largando +largay +large +largebrained +largedata +largefield +largeformat +largehanded +largehearted +largeload +largely +largemouthed +largen +largeness +larger +larges +largesample +largescale +largesite +largess +largesses +largest +larghetto +largifical +largiloquent +largish +largition +largitional +largo +largos +larguex +larguey +lari +laria +lariana +lariang +lariated +lariating +lariats +laribee +larick +larid +laridae +laridine +larifla +larigo +larigot +lariid +lariidae +larike +larim +larimer +lariminit +larimore +larin +larina +larinae +larine +larink +lario +larisa +larissa +larithmics +lariviere +larix +larixin +lark +larked +larker +larkers +larkier +larkin +larkiness +larking +larkingly +larkins +larkish +larkishness +larklike +larkling +larks +larksome +larkspurs +larky +larkye +larmes +larmier +larmon +larmour +larmoyant +larn +larnaca +larnaudian +larnax +larne +larned +larner +larng +larnie +larnstein +larntz +laro +larocco +laroche +larock +larocque +laroid +laroque +larosa +larose +larque +larquey +larrabee +larrainzar +larranaga +larrell +larreta +larribeau +larrieau +larrien +larrigan +larrikin +larrikiness +larrikinism +larriman +larrimore +larring +larroguette +larroquette +larrue +larrup +larruped +larruper +larrupers +larruping +larrups +larry +larryniven +lars +larsen +larsenbay +larsenite +larserik +larslan +larson +larsson +larstadt +larstone +larteh +larto +laru +larue +laruffa +larulopa +larum +larums +larunda +larus +larussa +larussell +larvacea +larvalia +larvarium +larvas +larvate +larve +larvell +larvicidal +larvicide +larvicolous +larviform +larvigerous +larvikite +larviparous +larviposit +larvivorous +larvule +larwill +larwin +lary +laryngal +laryngalgia +laryngeally +laryngean +laryngeating +laryngectomy +laryngic +laryngismal +laryngismus +laryngitic +laryngitis +laryngocele +laryngograph +laryngology +laryngometry +laryngopathy +laryngophony +laryngorrhea +laryngoscope +laryngoscopy +laryngospasm +laryngostomy +laryngotome +laryngotomy +larynxes +larysa +laryssa +lasa +lasagna +lasagnas +lasagne +lasagnes +lasal +lasalimu +lasalle +lasanimas +lasara +lasarwort +lascarica +lascars +lascassas +lascerate +lasch +laschuk +lasciviency +lasciviously +lascruces +lasdun +lasea +lased +lasenby +laser +laserblast +laserdisk +laserdisks +lasered +laserjet +laserpitium +laserre +lasers +lasersoft +laserwort +laserwriter +lases +lasfar +lash +lasha +lashansky +lashara +lasharon +lashed +lasher +lashers +lashes +lashi +lashimaru +lashing +lashingly +lashings +lashio +lashless +lashlite +lashly +lashmeet +lashmit +lashof +lashonda +lashx +lasi +lasianthous +lasilla +lasing +lasiocampa +lasiocampid +lasiocarpous +lasithi +lasius +lask +laska +laskaris +lasker +lasket +laskin +laskoviy +laskowska +laskowske +lasky +laslett +laslo +laslow +lasmarias +lasolo +laspeyres +laspeyresia +laspiedras +laspring +lasque +lass +lassa +lassander +lassard +lasse +lassell +lassen +lasser +lasses +lasset +lassi +lassick +lassie +lassiehood +lassieish +lassies +lassig +lassiter +lassitude +lassitudes +lasslorn +lassock +lassoed +lassoer +lassoers +lassoes +lassoing +lasson +lassonde +lassoo +lassos +lassparri +lasswitz +last +lasta +lastablas +lastage +lastango +lastcallers +lastdrive +lasted +laster +lasters +lastest +lasting +lastingly +lastingness +lastings +lastjob +lastline +lastlog +lastly +lastname +lastness +lastourville +lastre +lastread +lastricati +lastrup +lasts +lastspring +lasttango +lasttimedone +lasty +lasusua +lasvegas +laswell +laswer +lasxlo +lasy +laszio +laszlo +lata +latagnun +latah +latakia +latan +latani +latania +latar +latashia +latax +latbury +latch +latched +latchee +latcher +latches +latchet +latchets +latchford +latching +latchkey +latchkeys +latchless +latchman +latchstring +latchstrings +latdalam +late +latebra +latebricole +latech +latecomer +latecomers +latecoming +lated +lateef +lateen +lateener +lateens +latell +latella +latello +lately +laten +latence +latencies +latency +latened +lateness +latenight +latening +latens +latentize +latently +latentness +latents +latep +later +laterad +lateral +lateraled +lateralis +lateralities +laterality +lateralize +laterally +laterals +laterifloral +laterigradae +laterigrade +laterinerved +lateritic +lateritious +laterization +laterocaudal +laterodorsal +lateronuchal +laters +latescence +latescent +latesome +latessa +latest +latests +lateward +latewhile +latex +latexes +latexo +latexosis +latgalian +latgalians +lathal +latham +lathangue +lathar +lathed +lathee +latheman +lathen +lather +latherable +lathered +lathereeve +latherer +latherers +latherin +lathering +latheron +lathers +latherwort +lathery +lathes +lathesman +lathhouse +lathi +lathier +lathing +lathings +lathouris +lathouvis +lathraea +lathrop +laths +lathspell +lathwork +lathworks +lathy +lathyric +lathyrism +lathyrus +lati +latia +latian +latibulize +latices +laticiferous +laticlave +laticostate +latidentate +latif +latifolia +latifoliate +latifolous +latifundian +latifundium +latigo +latikelao +latimer +latimeria +latimore +latin +latinbased +latiner +latinesque +latinian +latinic +latiniform +latinism +latinist +latinistic +latinistical +latinitaster +latinity +latinization +latinize +latinized +latinizer +latinizes +latinizing +latinless +latino +latinos +latins +latinus +lation +latipennate +latiplantar +latirostral +latirostres +latirostrous +latirus +latisept +latiseptal +latiseptate +latish +latisha +latissimi +latissimus +latisternal +latitancy +latitant +latitat +latitation +latite +latitude +latitudes +latitudinous +latka +latoche +latod +latoma +latomy +laton +latona +latonian +latonya +latooka +latore +latorre +lators +latour +latrant +latration +latreille +latrena +latreutic +latria +latrididae +latrina +latrine +latrines +latris +latro +latrobe +latrobite +latrocinium +latrociny +latrodectus +latron +latrun +latt +latta +lattan +lattanzi +latte +latten +lattener +latter +latterday +latterkin +latterly +lattermath +lattermost +latterness +lattice +latticed +lattices +latticewise +latticework +latticing +latticinio +lattimer +lattimore +lattuka +latty +latu +latud +latuka +latulippe +latunde +latuvi +latvia +latvian +latvians +latzko +laua +lauan +laubanite +laube +lauber +lauca +lauch +laucher +lauching +laud +laudability +laudable +laudableness +laudably +laudanidine +laudanin +laudanine +laudanosine +laudanums +laudation +laudative +laudator +laudatorily +laudators +laude +lauded +laudenbach +lauder +lauderdale +lauders +laudes +laudian +laudianism +laudie +lauding +laudism +laudist +laudje +lauds +laue +lauer +lauermann +laufasvegur +laufer +laugh +laughable +laughably +laughed +laughee +laugher +laughers +laugheth +laughful +laughing +laughingly +laughings +laughlin +laughlintown +laughridge +laughs +laughsome +laught +laughter +laughterful +laughterless +laughters +laughton +laughworthy +laughy +laugier +lauia +lauisaranga +lauje +lauk +laukanu +laulabu +laulau +lauli +laumbe +laumonite +laumontite +laun +launa +launce +launcelot +launceston +launch +launchboard +launched +launcher +launchers +launches +launchful +launching +launchings +launchout +launchpad +launchways +laund +launder +launderable +laundered +launderer +launderers +launderette +laundering +launderings +launders +laundress +laundresses +laundrette +laundries +laundromat +laundromats +laundry +laundrymaid +laundryman +laundrymen +laundryowner +laundrywoman +laundrywomen +launer +laungaw +laungwaw +launter +laupahoehoe +lauper +laur +laura +lauraceae +lauraceous +lauraine +laural +lauraldehyde +lauralee +laurance +lauras +laurate +laurdalite +laure +laureated +laureates +laureateship +laureating +laureation +laureau +lauree +laureen +laurel +laureldale +laureled +laurelfork +laurelhill +laureling +laurella +laurelle +laurelled +laurellike +laurelling +laurels +laurelship +laurelton +laurelville +laurelwood +lauren +laurena +laurence +laurencia +laurencic +laurene +laurens +laurenson +laurent +laurenti +laurentia +laurentide +laurenzi +laureole +lauretta +laurette +laurey +lauri +lauria +laurianne +lauriault +lauric +laurice +laurich +laurie +laurier +laurin +laurinburg +laurincikas +laurinda +laurinoxylon +laurionite +lauriston +laurita +laurite +lauritz +lauritzen +laurna +lauro +laurocerasus +laurone +laurowan +laursen +lauruhn +laurus +laurustine +laurustinus +laurvikite +laury +lauryl +lauryn +lausanna +lausbubenges +lause +lausitz +lauson +laustiola +laut +lautarite +lautaro +lautem +lauten +lautenaus +lautenberg +lauter +lauterbach +lauterback +lautitious +lautoka +lautrec +lautruc +lautund +lauty +lauu +lauwela +laux +lauzan +lauze +lauzon +lava +lavable +lavaboes +lavaca +lavacre +lavage +lavages +lavagetto +lavaka +laval +lavalava +lavalavas +lavalette +lavalier +lavaliere +lavalieres +lavaliers +lavalike +lavall +lavalle +lavallee +lavalleja +lavallette +lavalley +lavan +lavana +lavanant +lavandula +lavanga +lavangai +lavani +lavanont +lavant +lavara +lavardin +lavarenne +lavaret +lavarnway +lavarre +lavas +lavat +lavatbura +lavatera +lavatic +lavation +lavational +lavations +lavatorial +lavatories +lavatory +lavatry +lave +lavecchia +laved +laveen +laveer +laveh +lavehr +lavella +lavelle +lavelli +lavement +laven +lavena +lavenberg +lavendar +lavender +lavendered +lavenders +lavenham +lavenite +lavenstein +laver +laverania +lavergne +laverkin +laverna +laverne +lavernia +laverock +lavers +laverty +laverwort +lavery +laves +laveta +lavi +lavialite +laviam +lavic +lavictoire +lavigne +lavilla +laville +lavin +lavina +lavinder +laving +lavinia +lavinie +laviolette +lavish +lavished +lavisher +lavishers +lavishes +lavishest +lavishing +lavishingly +lavishly +lavishment +lavishness +lavison +lavity +laviyani +lavkam +lavoie +lavolia +lavolta +lavon +lavond +lavonda +lavongai +lavonia +lavonne +lavorata +lavoro +lavrentiy +lavrentyev +lavric +lavrov +lavrovite +lavu +lavua +lavukaleve +lavut +lawa +lawai +lawal +lawan +lawangan +laward +lawas +lawbaugh +lawbook +lawbreakers +lawcourt +lawcraft +lawd +lawdayke +lawdy +lawed +laweenjru +lawele +lawen +lawer +lawerence +lawford +lawful +lawfully +lawfulness +lawgiver +lawgivers +lawing +lawings +lawish +lawk +lawlants +lawleah +lawler +lawless +lawlessly +lawlessness +lawley +lawlik +lawlike +lawlis +lawlor +lawmaker +lawmakers +lawmaking +lawmonger +lawn +lawndale +lawned +lawner +lawng +lawnlet +lawnlike +lawnmover +lawnmower +lawns +lawnside +lawnurd +lawny +lawo +lawoi +lawproof +lawra +lawrance +lawrence +lawrenceburg +lawrencite +lawri +lawrie +lawrightman +laws +lawson +lawsoneve +lawsonia +lawsonite +lawsonville +lawsuiting +lawsuits +lawta +lawtell +lawter +lawtey +lawther +lawton +lawtons +lawyer +lawyeress +lawyeresses +lawyering +lawyerism +lawyerlike +lawyerling +lawyerly +lawyers +lawyership +lawyersville +lawyery +lawzy +laxart +laxate +laxation +laxatively +laxativeness +laxatives +laxer +laxest +laxiflorous +laxifoliate +laxifolious +laxism +laxist +laxities +laxity +laxly +laxness +laxnesses +laxter +laya +layabout +layabouts +layana +layananda +layapo +layaway +layaways +layback +layboy +laycock +layden +laydo +laye +layed +layedst +layer +layerage +layered +layereds +layering +layerings +layers +layery +layest +layetana +layeth +layettes +layia +laying +layiping +layla +layland +laymanship +layne +layney +layng +layoffs +layolo +layout +layouts +layover +layovers +lays +layship +laystall +laystow +layton +laytonville +layu +laywoman +laywomen +layz +lazar +lazare +lazarenko +lazaret +lazarette +lazaretto +lazarettos +lazarev +lazarhouse +lazarillo +lazarist +lazarl +lazarlike +lazarly +lazaro +lazarole +lazaros +lazarou +lazarowich +lazars +lazarus +lazbuddie +lazear +lazebnik +lazed +lazemi +lazenby +lazer +lazeras +lazes +laziale +lazied +lazier +lazies +laziest +lazily +laziness +lazing +lazio +lazlo +lazlow +lazule +lazuli +lazuline +lazulis +lazulite +lazulitic +lazur +lazure +lazurite +lazy +lazybird +lazyboots +lazyhood +lazying +lazyish +lazylegs +lazyship +lazzara +lazzarelli +lazzarini +lazzaro +lazzarone +lazzaroni +lazzini +lbad +lbergfel +lbinit +lbnsy +lbound +lbplay +lcase +lcau +lchaim +lclark +lcms +lcome +lcomm +lconvert +lcss +lcsymbol +lcta +ldamtsai +ldclose +ldes +ldgo +ldinfo +ldisp +ldname +ldominiq +ldopen +ldpctx +ldplaban +leach +leached +leacher +leachers +leaches +leachier +leachiest +leaching +leachman +leachville +leachy +lead +leadable +leadableness +leadage +leaday +leadback +leadbitter +leaded +leaden +leadenly +leadenness +leadenpated +leader +leaderess +leaderette +leaderless +leaders +leadership +leaderships +leadest +leadeth +leadhill +leadhillite +leadier +leadin +leadiness +leading +leadingedge +leadingly +leadings +leadless +leadman +leadoff +leadoffs +leadore +leadout +leadproof +leads +leadstone +leadville +leadway +leadwood +leadwork +leadworks +leadwort +leady +leaf +leafage +leafboy +leafcup +leafdom +leafed +leafen +leafer +leafery +leafgirl +leafhopper +leafhoppers +leafier +leafiest +leafiness +leafing +leafit +leafless +leaflessness +leafleteer +leaflets +leaflike +leaflock +leafloor +leafriver +leafs +leafstalk +leafstalks +leafwood +leafwork +leafworm +leafworms +league +leaguecity +leagued +leaguelong +leaguer +leaguered +leaguering +leaguers +leagues +leaguing +leah +leahy +leak +leakage +leakages +leakance +leake +leaked +leaker +leakers +leakesville +leakey +leakier +leakiest +leakily +leakiness +leaking +leakless +leakproof +leaks +leal +lealand +lealao +leally +lealness +lealty +leam +leamas +leamer +leamington +leamire +lean +leander +leandra +leandro +leaned +leaner +leanest +leaneth +leanfleshed +leang +leangba +leaning +leanings +leanish +leanly +leann +leanna +leanne +leanness +leanor +leanora +leanow +leans +leant +leanto +leao +leap +leapable +leaped +leaper +leapers +leapfrog +leapfrogged +leapfrogger +leapfrogging +leapfrogs +leapftp +leapheart +leaping +leapingly +leaps +leapt +lear +learchus +learn +learnable +learned +learnedly +learnedness +learner +learners +learnership +learning +learnings +learns +learnt +learoyd +learsiegler +learson +leary +leas +leasable +leasburg +leaseback +leased +leaseholder +leaseholders +leaseholding +leaseholds +leaseless +leasemonger +leaser +leasers +leases +leash +leashed +leashes +leashing +leashless +leasing +leasings +leasisfull +leasow +least +leasts +leastsquares +leastways +leastwise +leat +leath +leatham +leather +leatherbark +leatherboard +leatherbush +leathercoat +leathercraft +leathered +leatherer +leatherette +leatherface +leatherfish +leatherhead +leatherine +leatheriness +leathering +leatherize +leatherleaf +leatherlike +leathermaker +leathern +leathernecks +leatheroid +leatherroot +leathers +leatherside +leatherware +leatherwing +leatherwood +leathery +leathwake +leatman +leaton +leatrice +leaud +leav +leava +leave +leaved +leaveless +leavell +leavelooker +leaven +leavened +leaveneth +leavening +leavenish +leavenless +leavenous +leavens +leavenwort +leavenworth +leaver +leavers +leaverwood +leaves +leaveth +leavier +leaving +leavings +leavitt +leavittsburg +leavy +leawill +lebam +lebamba +leban +lebana +lebanah +lebanese +lebang +lebanon +lebaoth +lebar +lebaron +lebars +lebart +lebay +lebbaeus +lebbek +lebbie +lebe +lebeau +lebeaux +lebec +lebedeff +lebedev +lebedoff +lebej +lebel +lebell +lebelle +leben +lebeng +lebensborn +lebesgue +lebir +lebistes +leblanc +leblano +lebling +leblon +leblond +lebo +lebofsky +lebon +lebonah +lebong +leboni +leboro +lebou +lebow +lebowa +leboyan +lebrac +lebrancho +lebrand +lebreton +lebrock +lebu +leburn +lecah +lecama +lecandro +lecaniid +lecaniinae +lecanine +lecanium +lecanomancer +lecanomancy +lecanomantic +lecanora +lecanoraceae +lecanorine +lecanoroid +lecanoscopic +lecanoscopy +lecante +lecanto +lecenter +lech +lechat +lechayim +lechea +lechenaultia +lechered +lecheries +lechering +lecherous +lecherously +lechers +leches +lechi +lechkhum +lechner +lechriodont +lechriodonta +lechuguilla +lechwe +lecidea +lecideaceae +lecideaceous +lecideiform +lecideine +lecidioid +lecien +lecierc +lecithal +lecithality +lecithin +lecithinase +lecithins +lecithoblast +leck +lecker +leckie +leckkill +leckrone +leclair +leclaire +leclerc +leco +lecoco +lecoeur +lecoma +lecompte +lecompton +lecon +lecontite +lecotropal +lecours +lecourtois +lecouteur +lect +lectern +lecterns +lection +lections +lector +lectorate +lectorial +lectors +lectorship +lectotype +lectress +lectrice +lectroids +lectual +lecture +lectured +lecturee +lectureproof +lecturer +lecturers +lectures +lectureship +lectureships +lecturess +lecturette +lecturing +lecyth +lecythid +lecythis +lecythoid +lecythus +leda +ledamun +ledbetter +leddest +leddy +lede +ledebour +ledebur +leden +ledenburg +leder +lederach +lederberg +lederer +lederhosen +lederite +lederle +lederman +ledet +ledeyard +ledford +ledgard +ledge +ledged +ledgeless +ledger +ledgerdom +ledgers +ledges +ledgewood +ledgier +ledging +ledgment +ledgy +lediakh +ledidae +lediglich +ledinek +ledinh +ledit +ledo +ledol +ledolter +ledou +ledoux +ledrappier +leds +ledu +leduc +ledum +ledvina +ledwell +ledwich +ledwina +ledyard +leealowa +leeangle +leeann +leeanne +leeanuwa +leearrawa +leeboard +leeboards +leecenter +leech +leechburg +leechcraft +leecheater +leeched +leecher +leechery +leeches +leeching +leechkin +leechlike +leechwort +leecia +leecity +leeco +leed +leeden +leedey +leedspoint +leef +leefang +leeftail +leega +leegant +leejay +leek +leekish +leeko +leeks +leeky +leela +leelah +leelalwarra +leeland +leelawarra +leelu +leem +leemont +leen +leena +leendert +leenher +leenhouts +leep +leeper +leepit +leere +leered +leerier +leeriest +leerily +leeriness +leering +leeringly +leerish +leerness +leeroway +leers +leersia +lees +leesa +leesburg +leescreek +leese +leeson +leesport +leessummit +leesville +leet +leeta +leetah +leetman +leeton +leetonia +leetsdale +leeuw +leeuwen +leevee +leevining +leewan +leewardly +leewardmost +leewardness +leewards +leeway +leeways +leewill +leewood +leeyan +lefa +lefana +lefaur +lefebre +lefebure +lefebvre +lefevbre +lefevre +leff +leffer +lefferts +leffington +leffingwell +leffler +lefini +lefkovitch +lefkowitz +lefler +leflore +lefor +lefors +lefort +lefric +left +leftalt +leftarrow +leftbank +leftbrain +leftcensored +leftcontrol +lefter +lefteris +leftest +leftfield +lefthand +lefthanded +lefties +leftish +leftism +leftisms +leftist +leftists +leftit +leftleaning +leftmargin +leftments +leftmeta +leftness +leftover +leftovers +leftright +lefts +leftwardly +leftwards +leftwich +leftwing +lega +legacies +legacy +legadero +legakalanga +legal +legalese +legaleses +legalism +legalisms +legalist +legalistic +legalists +legalities +legality +legalization +legalize +legalized +legalizes +legalizing +legally +legalness +legals +legantine +legarans +legarde +legare +legaspi +legatary +legated +legatees +legates +legateship +legateships +legatine +legation +legationary +legations +legative +legator +legatorial +legators +legatos +legault +legay +legba +legbo +legche +lege +legend +legenda +legendarian +legendarily +legendary +legendic +legendist +legendless +legendrian +legendry +legends +legeny +legenyem +leger +legerdemain +legerete +legeri +legerity +legers +leges +legg +leggatt +legge +legged +legger +leggett +leggier +leggiest +legginess +legginged +leggings +leggins +leghorn +leghorns +legia +legibilities +legibility +legibleness +legibly +legific +legion +legionaries +legionary +legioned +legioner +legionnaire +legionnaires +legionry +legions +legislated +legislates +legislatif +legislating +legislation +legislativ +legislativa +legislative +legislator +legislators +legislatress +legislatrix +legislature +legislatures +legist +legists +legit +legitim +legitimacies +legitimacy +legitimate +legitimated +legitimately +legitimating +legitimation +legitimatist +legitimatize +legitime +legitimism +legitimist +legitimistic +legitimity +legitimize +legitimized +legitimizer +legitimizes +legitimizing +legitimus +legits +leglaire +leglen +legler +legless +leglessness +leglet +leglike +legman +legmen +legnica +legnin +lego +legoa +legoff +legolas +legon +legpiece +legpull +legpuller +legpulling +legra +legrand +legree +legrewale +legris +legroom +legrooms +legrope +legros +legrove +legrow +legs +legt +legtimitate +legua +leguan +leguatia +leguen +leguleian +leguleious +legumelin +legumen +legumes +legumin +leguminiform +leguminosae +leguminose +legumins +legwork +legworks +lehabim +lehali +lehalurup +lehar +lehayim +lehei +lehey +lehi +lehigh +lehighacres +lehighton +lehighvalley +lehladakhi +lehmacher +lehman +lehmann +lehmer +lehn +lehne +lehner +lehnert +lehotay +lehr +lehrbachite +lehrbaum +lehrer +lehrman +lehrt +lehrund +lehtinen +lehtovaara +lehu +lehua +lehzen +leia +leib +leiba +leibel +leibelt +leiber +leibich +leibman +leibnitzian +leibniz +leibovitz +leibowitz +leicester +leichner +leicht +leick +leid +leidenfrost +leider +leiding +leif +leige +leigh +leigha +leighann +leightoc +leighton +leightsinn +leik +leiker +leil +leila +leilah +leilani +leileiafa +leima +leimtype +lein +leina +leinen +leiner +leino +leinsdorf +leinster +leiocome +leiodermia +leiomyoma +leiophyllous +leiophyllum +leiothrix +leiotrichan +leiotriches +leiotrichi +leiotrichine +leiotrichous +leiotrichy +leiotropic +leipnitz +leipoa +leipon +leipsic +leipzig +leiria +leiris +leis +leisa +leisenring +leiser +leisha +leishmania +leisinger +leisten +leister +leisterer +leistico +leistiko +leisu +leisurable +leisurably +leisure +leisured +leisureful +leisureiy +leisureless +leisurely +leisureness +leisures +leisuretime +leita +leitch +leitchfield +leite +leiter +leitersford +leith +leitjen +leitla +leitmotifs +leitner +leitneria +leitneriales +leitre +leitrick +leitrim +leitzkdwna +leivasy +leivers +leivian +leiwe +leixoes +leiz +lejaune +lejava +lejeune +lejon +lejune +lejunior +lekach +lekain +lekana +lekane +lekaningi +leke +leketi +lekha +lekhanya +leki +lekie +leko +lekon +lekongo +lekoumou +leks +leksr +lektor +leku +lekunze +lekwhan +lela +lelah +lelain +lelak +leland +lelau +lele +lelemi +lelenuk +lelepa +lelese +lelet +leleu +lelia +lelialake +lelie +lelio +lelise +leloir +lelutafunsak +lelyushkin +lemadi +lemaire +lemaitre +lemakot +leman +lemanak +lemande +lemanea +lemaneaceae +lemani +lemans +lemanska +lemar +lemars +lemassena +lemasters +lemat +lematang +lemay +lemayne +lemba +lembaamba +lembach +lembak +lembas +lembeck +lembena +lembo +lembue +lembur +lemchek +lemek +lemekue +lemel +lemena +lemeshow +lemet +lemhi +lemieux +lemin +leming +lemio +lemitar +lemiting +lemke +lemkov +lemkow +lemky +lemley +lemmas +lemmata +lemme +lemmer +lemmertz +lemmings +lemmitis +lemmoblastic +lemmocyte +lemmon +lemmonier +lemmus +lemmy +lemna +lemnaceae +lemnaceous +lemnad +lemnian +lemniscate +lemniscatic +lemniscus +lemnitz +lemo +lemography +lemoi +lemoine +lemolang +lemology +lemon +lemonade +lemonades +lemoncolored +lemoncove +lemond +lemongrove +lemonias +lemoniidae +lemoniinae +lemonish +lemonlike +lemonopoulos +lemons +lemonsprings +lemont +lemontier +lemonweed +lemonwood +lemony +lemonyellow +lemoore +lemoro +lemosi +lemovices +lemoyen +lemoyne +lemp +lempa +lempelziv +lempintol +lempira +lempiras +lempo +lempriere +lempster +lemrow +lemuel +lemuels +lemur +lemures +lemuria +lemurian +lemurid +lemuridae +lemuriform +lemurinae +lemurine +lemuroid +lemuroidea +lemuroids +lemurs +lemusa +lemusmus +lemyo +lemyre +lena +lenad +lenaea +lenaean +lenaeum +lenaeus +lenakel +lenapah +lenape +lenard +lenardo +lenat +lenathen +lenauer +lenay +lenca +lencan +lencarter +lench +lend +lendable +lendahl +lended +lendee +lender +lenders +lendeth +lendgren +lending +lendon +lends +lendu +lendumu +lendusud +lene +lenee +lenehan +lenel +lenesch +lenette +leney +leng +lengby +lenge +lengel +lengerich +lengi +lengilu +lengkayap +lengo +lengola +lengora +length +lengthbias +lengthen +lengthened +lengthener +lengtheners +lengthening +lengthens +lengther +lengthful +lengthier +lengthiest +lengthily +lengthiness +lengthly +lengths +lengthsman +lengthsome +lengthways +lengthwise +lengthy +lengua +lenguaje +lengue +lengwe +lenham +lenhard +lenhardt +lenhart +leni +lenience +leniencies +leniency +leniently +lenify +lenihan +lenin +leningitij +leningrad +leninists +leninite +lenior +lenir +lenis +lenita +lenitic +lenities +lenitive +lenitively +lenitiveness +lenitude +lenity +lenje +lenjetonga +lenka +lenkaitahe +lenkau +lenkmann +lenkoran +lenkowsky +lenna +lennart +lenni +lennie +lennier +lennig +lennilenape +lennilite +lennington +lennoaceae +lennoaceous +lennon +lennow +lennox +lenny +leno +lenoir +lenoircity +lenoire +lenora +lenorah +lenore +lenox +lenoxdale +lenoxville +lens +lense +lensed +lenses +lensing +lensky +lensless +lenslike +lensman +lenstra +lent +lentando +lente +lententide +lentex +lenth +lenthened +lenthways +lentic +lenticel +lenticellate +lenticle +lenticonus +lenticula +lenticular +lenticulare +lenticularis +lenticularly +lenticulate +lenticulated +lenticule +lentier +lentiform +lentigerous +lentiginous +lentigo +lentil +lentiles +lentilla +lentils +lentin +lentisc +lentiscine +lentisco +lentiscus +lentisk +lentitude +lentner +lento +lentoid +lentor +lentos +lentous +lentucky +lentulus +lentz +lenuzza +lenvoi +lenvoy +leny +lenya +lenyima +lenz +lenzburg +lenzi +lenzites +leoard +leocadia +leodora +leof +leoh +leoine +leola +leoline +leoma +leominster +leon +leona +leonais +leonanie +leonard +leonarde +leonardesque +leonardo +leonardtown +leonardville +leonas +leonato +leoncavallo +leonce +leoncio +leoncito +leondegrance +leondopolous +leone +leonean +leoneans +leonel +leonelle +leonelli +leonenko +leones +leonese +leong +leonhard +leonhardite +leonhardt +leoni +leonid +leonida +leonidas +leonide +leonidi +leonie +leonine +leoninely +leonines +leonis +leonisis +leonist +leonite +leonjunction +leonkarnes +leonnoys +leonold +leonor +leonora +leonore +leonotis +leonov +leonowens +leontes +leonteus +leontiasis +leontieff +leontina +leontine +leontocebus +leontodon +leontopodium +leontovich +leontyne +leonurus +leonville +leopard +leoparde +leopardess +leopardine +leopardite +leopards +leopardwood +leoplod +leopolda +leopoldina +leopoldine +leopoldinia +leopoldite +leopoldo +leopoldville +leopolis +leora +leos +leosoft +leosun +leota +leotard +leotards +leotaru +leoti +leoutsarakos +leow +lepa +lepadidae +lepadoid +lepage +lepanto +lepargylic +lepargyraea +lepas +lepcha +lepcynski +lepe +leper +leperdom +lepered +lepers +lepescu +lepetic +lepetomane +lepic +lepidene +lepidine +lepidium +lepidoid +lepidoidei +lepidomelane +lepidophyte +lepidophytic +lepidopter +lepidoptera +lepidopteral +lepidopteran +lepidopterid +lepidopteron +lepidosauria +lepidosiren +lepidosis +lepidosperma +lepidosphes +lepidostei +lepidosteoid +lepidosteus +lepidote +lepidotes +lepidotic +lepidotus +lepidurus +lepidus +lepilemur +lepine +lepiota +lepisma +lepismatidae +lepismidae +lepismoid +lepisosteus +lepitois +lepki +lepkowski +leplat +leple +lepo +lepocyte +lepoha +lepomis +lepore +leporello +leporid +leporidae +leporide +leporiform +leporine +leporis +lepospondyli +leposternon +lepothrix +leppard +leppert +lepping +lepra +lepralia +lepralian +leprechaun +leprechauns +lepric +leprince +leproid +leprologic +leprologist +leprology +leproma +lepromatous +leprosaria +leprosarium +leprosariums +leprose +leprosery +leprosied +leprosies +leprosis +leprosity +leprosy +leprous +leprously +leprousness +lepschy +lepta +leptamnium +leptandra +leptandrin +leptid +leptidae +leptiform +leptilon +leptinolite +leptinotarsa +leptirov +leptite +leptocardia +leptocardian +leptocardii +leptocentric +leptocephali +leptocephaly +leptocercal +leptochroa +leptochrous +leptoclase +leptodactyl +leptodermous +leptodora +leptodoridae +leptogenesis +leptokurtic +leptolepidae +leptolepis +leptolinae +leptomatic +leptome +leptomedusae +leptomedusan +leptomeninx +leptometer +leptomonad +leptomonas +lepton +leptonema +leptonic +leptons +leptopellic +leptophis +leptoprosope +leptoprosopy +leptoptilus +leptorchis +leptorrhin +leptorrhine +leptosome +leptosperm +leptospermum +leptospira +leptostraca +leptostracan +leptosyne +leptotene +leptothrix +leptotrichia +leptus +leptynite +lepu +lepus +leqemtgimbi +leqi +lequire +lera +leray +leraysville +lerc +lerch +lerche +lerdo +lerdorff +lere +lereh +lerehenau +lerel +leribe +lerik +lerkyamdi +lerman +lermontov +lern +lerna +lernaea +lernaeacea +lernaean +lernaeidae +lernaeiform +lernaeoid +lernaeoides +lerner +lero +leron +lerona +lerose +lerot +leroux +leroy +leroyer +lerp +lerps +lerret +lert +lerumeur +lerwa +lesa +lesaffre +lesage +lesaint +lesath +lesbia +lesbian +lesbianism +lesbians +lesbitt +lesbos +lesce +lesche +leschin +lescot +lescoulie +lescovar +lese +lesen +lesgate +lesgh +lesh +lesha +leshem +leshia +leshinsky +leshka +leshner +leshowitz +leshuoopa +lesia +lesie +lesighu +lesing +lesingatui +lesinski +lesional +lesions +lesire +lesiy +lesk +leska +leskea +leskeaceae +leskeaceous +leskin +leskova +lesleh +lesley +lesleya +lesli +leslie +lesliegrad +leslip +lesly +lesma +lesmerises +lesnaik +lesniak +lesnie +lesourd +lesparra +lespedeza +lesperance +lesquerella +less +lessard +lesse +lessees +lesseeship +lessen +lessened +lessener +lessening +lessens +lesser +lessey +lessig +lessin +lessing +lessive +lessler +lessn +lessness +lesson +lessoned +lessoning +lessons +lessors +lessthan +lest +leste +lester +lesterville +lestina +lestiwarite +lestobiosis +lestobiotic +lestodon +lestosaurus +lestrad +lestrade +lestrange +lestrigon +lestrigonian +lestringuez +lesueur +lesuo +lesvos +lesway +lesya +lesz +leszek +leszno +leta +letaba +letac +letaci +letart +letarte +letch +letcher +letches +letchworth +letchy +letdown +letdowns +lete +letek +letemboi +letendre +letero +leth +letha +lethal +lethalities +lethality +lethalize +lethally +lethals +lethargical +lethargies +lethargize +lethargus +lethbridge +lethean +lethebinh +lethes +lethia +lethiferous +lethocerus +lethologica +leti +leticia +letimoa +letisha +letitia +letizia +letmein +letnikov +leto +letoff +letohatchee +letom +letona +letondal +letourneau +letra +letri +lets +letsi +letsie +letsome +letsyour +lett +letta +lettable +letted +letten +lettenmaier +letter +letterature +letterbased +letterbomb +lettered +letterer +letterers +letteret +letterforms +lettergap +lettergram +letterheads +letterin +lettering +letterings +letterkenn +letterleaf +letterless +letteroffate +letterpairs +letterpress +letters +letterspace +letterweight +letterwood +lettest +letteth +letti +lettic +lettice +lettie +lettier +lettieri +letting +lettinger +lettish +lettres +lettrin +lettrs +letts +lettsomite +lettsworth +lettuces +letty +letuhama +letulle +letup +letups +letushim +letwin +letwurung +letz +letzburgisch +letze +letzte +letzten +letzter +leuangiua +leucadendron +leucadian +leucaemia +leucaemic +leucaena +leucaethiop +leucaniline +leucanthous +leucaugite +leucaurin +leucemia +leucemic +leucetta +leuch +leuchaemia +leuchemia +leuchtag +leucichthys +leucifer +leuciferidae +leucippus +leucism +leucite +leucitic +leucitis +leucitite +leucitoid +leuckartia +leuco +leucobasalt +leucoblast +leucoblastic +leucobryum +leucocarpous +leucocholic +leucocholy +leucochroic +leucocidic +leucocidin +leucocism +leucocrate +leucocratic +leucocrinum +leucocyan +leucocytal +leucocyte +leucocytic +leucocytoid +leucocytosis +leucocytotic +leucoderma +leucodermic +leucogenic +leucoid +leucoindigo +leucojaceae +leucojum +leucolytic +leucoma +leucomaine +leucomatous +leucomelanic +leucon +leuconostoc +leucopenia +leucopenic +leucophane +leucophanite +leucophore +leucophyre +leucoplakia +leucoplakial +leucoplast +leucoplastid +leucopoiesis +leucopoietic +leucopus +leucopyrite +leucorrhea +leucorrheal +leucoryx +leucosis +leucosolenia +leucosphere +leucospheric +leucostasis +leucosticte +leucosyenite +leucotactic +leucothea +leucothoe +leucotic +leucotome +leucotomy +leucotoxic +leucous +leucoxene +leucyl +leud +leueen +leuenberger +leuitenant +leuk +leukaemia +leukaemic +leukemias +leukemic +leukemics +leukemoid +leukocidic +leukocidin +leukocyte +leukocytes +leukoma +leukosis +leukothea +leukotic +leuma +leummim +leun +leung +leupena +leupp +leurini +leuschneria +leustig +leutenant +leuty +leuwerik +leva +levac +leval +levan +levana +levance +levans +levant +levantamento +levanter +levantine +levants +levar +levary +levasseur +levasy +levator +levators +leveau +levedahl +leveed +leveeing +levees +levei +leveille +leveitulu +level +leveled +leveler +levelers +levelheaded +leveling +levelish +levelism +levelland +levelled +leveller +levellers +levellest +levelling +levells +levelly +levelman +levelness +levelock +levels +levene +levenstein +levent +leventhal +levenwrt +leveque +lever +leverage +leveraged +leverages +leveraging +levere +levered +leverer +leveret +leverets +leverett +levering +leverington +leverman +leverrier +levers +leversee +levert +leverwood +levesque +levey +levi +leviable +leviathan +leviathans +levie +levied +levier +leviers +levies +levigable +levigate +levigation +levigator +levin +levine +levining +levins +levinsohn +levinson +levinstone +levir +levirate +leviratical +leviration +levis +levisky +levison +levisticum +levitan +levitant +levitated +levitates +levitating +levitation +levitational +levitations +levitative +levitator +levite +levites +levitical +leviticalism +leviticality +levitically +leviticism +leviticus +levities +levitin +levitism +levitsky +levittown +levity +levka +levkas +levo +levoduction +levogyrate +levogyre +levogyrous +levolactic +levolimonene +levon +levond +levorotation +levorotatory +levotartaric +levoversion +levrington +levshin +levtolstoj +levu +levuka +levulic +levulin +levulinic +levuloses +levulosuria +levy +levying +levyist +levynite +levys +lewa +lewadadewara +lewandowski +lewanna +lewars +lewbeach +lewd +lewder +lewdest +lewdly +lewdness +lewek +lewellen +lewellyn +lewes +lewgoy +lewgrad +lewi +lewie +lewin +lewing +lewinski +lewinsky +lewis +lewisbeck +lewisberry +lewisburg +lewiscenter +lewises +lewisetta +lewisia +lewisian +lewisite +lewisohn +lewisport +lewisrun +lewiss +lewisson +lewiston +lewistown +lewisville +lewo +lewolaga +lewotobi +lewt +lewth +lewton +lewwis +lewyckyj +lexa +lexand +lexby +lexchxum +lexell +lexeme +lexemes +lexer +lexers +lexi +lexia +lexic +lexical +lexicalic +lexicality +lexically +lexicologic +lexicologist +lexicology +lexicon +lexiconist +lexiconize +lexicons +lexie +lexification +lexigraphic +lexigraphy +lexine +lexington +lexiphage +lexiphanic +lexis +lexocography +lextest +lexton +lexy +leya +leybourne +leyden +leydig +leyenda +leyigha +leyla +leyland +leymourre +leyom +leyor +leys +leysen +leysieffer +leysing +leystrasse +leyte +leyton +leyva +leza +lezak +lezghi +lezghian +lezgi +lezgian +lezgin +lezhe +lezlee +lezlie +lfes +lfields +lfnbk +lftarm +lfunctions +lgalige +lgona +lgwrus +lhaite +lharc +lhasa +lhengye +lhep +lhermitte +lherzite +lherzolite +lhice +lhoba +lhoka +lhoke +lhoket +lhomi +lhopa +lhoskad +lhota +lhuntshi +lhunze +liabilities +liability +liable +liableness +liabuku +liacopoulos +liae +liah +liaise +liaised +liaises +liaising +liaison +liaisons +liam +liambata +lian +liana +lianas +liancourt +liane +lianes +liang +liangmai +liangmei +liangshan +lianna +lianne +liao +liaodong +liaoning +liapis +liar +liara +liard +liaro +liars +lias +liason +liassic +liat +liator +liatpar +liatris +liau +liaw +liba +libaali +libadist +libadmin +libaek +libamba +libament +libandla +libaniferous +libant +libanza +libate +libationary +libationer +libations +libatory +libbed +libber +libbers +libbet +libbey +libbi +libbie +libbing +libbo +libbra +libbung +libby +libc +libel +libelant +libelants +libeled +libelee +libelees +libeler +libelers +libeling +libelist +libelists +libellant +libellary +libellate +libelled +libellee +libellees +libeller +libellers +libelling +libellous +libellously +libellula +libellulid +libellulidae +libelluloid +libelously +libels +libenge +liber +libera +liberal +liberalia +liberalism +liberalist +liberalistic +liberalities +liberality +liberalize +liberalized +liberalizer +liberalizes +liberalizing +liberally +liberalness +liberals +liberary +liberated +liberates +liberating +liberation +liberations +liberative +liberator +liberators +liberatory +liberatress +liberatrix +libere +liberia +liberian +liberians +liberius +liberomotor +libers +libertad +libertador +libertarian +libertarians +libertas +liberte +liberticidal +liberticide +liberties +libertinage +libertines +libertini +libertinish +libertinism +liberty +libertyhill +libertylake +libertyless +libertymills +libertytown +libertyville +libes +libethenite +libf +libget +libi +libian +libidibi +libidinal +libidinally +libidinized +libidinizing +libidinosity +libidinously +libidos +libie +libindja +libinit +libinja +libinza +libisegahun +libitina +libitum +libken +libm +libnah +libni +libnites +libo +liboa +libobi +libocedrus +libolo +libon +libor +liborio +liborius +libov +libp +libpath +libr +libra +libral +librarian +librarianess +librarians +libraries +librarious +librarius +library +libraryfile +libraryless +librarys +libras +librated +librates +librating +libration +libratory +librazhd +libre +libretti +librettists +librettos +libreville +librid +libriform +libris +librium +libroplast +libs +libserver +libsys +libu +libua +libuse +libussa +libwali +libya +libyan +libyans +libytheidae +libytheinae +lica +licandro +licania +licao +licareol +licata +licca +lice +licela +licence +licenced +licencees +licencers +licences +licencing +license +licensed +licensees +licenseless +licenser +licensers +licenses +licensing +licensors +licensure +licentiate +licentiates +licentiation +licentiously +licentitate +licerio +lich +licha +licham +lichanos +lichee +lichees +lichen +lichenaceous +lichened +lichenes +licheniasis +lichenic +licheniform +lichenin +lichening +lichenins +lichenism +lichenist +lichenize +lichenlike +lichenoid +lichenologic +lichenology +lichenopora +lichenose +lichenous +lichens +licheny +lichfield +lichi +lichis +lichnophora +lichstein +licht +lichtensauer +lichtenstein +lichting +licia +licinian +licinius +licit +licitation +licitly +licitness +lick +lickcreek +licked +licker +lickerish +lickerishly +lickers +licketh +lickety +licking +lickings +lickingville +lickpenny +licks +lickspit +lickspittle +licne +licorice +licorices +licorn +licorne +lictor +lictoria +lictorian +lictors +licuala +licuan +lida +lidar +lidded +liddell +lidder +lidderdale +lidding +liddle +liddy +lide +lidfeldt +lidflower +lidgate +lidgerwood +lidia +lidiac +lidicker +lidio +lidless +lido +lidos +lids +lidster +lidstone +lidth +lidu +liduine +liduma +lidya +lieb +liebe +lieben +liebenerite +liebenthal +lieber +lieberman +lieberson +liebigite +liebkind +liebknecht +liebman +liebrecht +liebskird +liebster +liebstes +liebten +lieck +lied +lieder +liedertafel +liedtke +lief +liefer +liefest +lieffen +liefly +liege +liegedom +liegeful +liegefully +liegeless +liegely +liegeman +liegemen +lieger +lieges +liem +lien +lienable +lienal +lienculus +lienee +lienemann +lienert +lienfuhuang +lienhard +lienholder +lienic +lienitis +lienocele +lienogastric +lienomalacia +lienor +lienorenal +lienotoxin +liens +lientenant +lienteria +lienteric +lienteries +lientery +liepa +liepaja +liepins +lieproof +lieprooflier +lier +lierck +lierde +lierne +lierre +liers +lies +liesa +liesbeth +lieschen +liese +liesel +lieselotte +liesemer +liesenberg +liesh +lieske +liesl +liesowski +liespfund +liest +liester +lietard +lietenant +lieth +lieue +lieure +lieut +lieutenancy +lieutenant +lieutenantry +lieutenants +lieux +liev +lieve +lieven +lievrite +liew +liewehr +lifan +life +lifeboatman +lifeboats +lifebuoy +lifeday +lifedrop +lifeforce +lifeforms +lifeful +lifefully +lifefulness +lifegerm +lifegiving +lifeguards +lifehold +lifeholder +lifelength +lifeless +lifelessly +lifelessness +lifelet +lifelikeness +lifeline +lifelines +lifelong +lifeprodigy +lifer +liferent +liferenter +liferentrix +liferoot +lifers +lifes +lifesaver +lifesavers +lifesaving +lifesigns +lifeskills +lifesome +lifesomely +lifesomeness +lifespan +lifespans +lifespring +lifestyles +lifetable +lifetest +lifetesting +lifetime +lifetimes +lifeward +lifeway +lifeweary +lifework +lifeworks +lifey +lifoma +lifou +lifsci +lifshey +lifshits +lifsic +lift +liftable +lifted +lifter +lifterov +lifters +liftest +lifteth +lifting +liftless +liftman +liftmen +liftoff +liftoffs +lifts +lifu +lifunga +ligable +ligabue +ligamental +ligamentary +ligamentous +ligaments +ligamentum +ligarius +ligas +ligase +ligate +ligated +ligates +ligating +ligation +ligations +ligator +ligatured +ligatures +ligaturing +ligbeln +ligbi +ligbinumu +lige +ligeance +ligenza +liger +ligero +ligeti +ligger +liggi +light +lightable +lightb +lightbar +lightbars +lightboat +lightbody +lightbrained +lightbringer +lightcap +lightchat +lightcolored +lighted +lighten +lightened +lightener +lighteners +lighteneth +lightening +lightens +lighter +lighterage +lightered +lighterful +lightering +lighterman +lighters +lightest +lighteth +lightfaced +lightfield +lightfoot +lightfooted +lightful +lightfulness +lighthall +lighthead +lightheaded +lighthiser +lighthouse +lighthouses +lighting +lightings +lightish +lightkeeper +lightlegged +lightless +lightly +lightman +lightmans +lightmanship +lightminded +lightmouthed +lightner +lightness +lightnin +lightning +lightnings +lightoller +lightowler +lightpost +lightroom +lights +lightscot +lightship +lightships +lightsman +lightsome +lightsomely +lightspeed +lightstone +lightstreet +lighttight +lightwards +lightwave +lightweights +lightwood +lightwort +lightyears +ligia +ligible +lign +lignaloes +lignatile +ligne +ligneous +ligner +ligneres +lignescent +lignicole +lignicoline +lignicolous +ligniferous +lignified +lignifies +ligniform +lignify +lignifying +lignin +lignins +ligniperdous +lignites +lignitic +lignitize +lignivorous +lignoceric +lignograph +lignography +lignone +lignose +lignosity +lignous +lignums +ligon +ligonier +ligri +ligroine +ligula +ligular +ligularia +ligulate +ligulated +ligule +liguliflorae +liguliform +ligulin +liguloid +liguori +liguorian +ligure +liguri +liguria +ligurian +ligurite +ligurition +ligurs +ligusticum +ligustrin +ligustrum +ligwi +ligyda +ligydidae +lihen +lihir +lihou +lihsaw +lihue +lihyanite +liii +liin +liisa +lija +lije +lijem +lijiang +lika +likability +likable +likableness +likagraha +likam +likanantai +likango +likanu +likarili +likasi +likata +likaw +like +likeable +liked +likelier +likeliest +likelihead +likelihood +likelihoods +likeliness +likelo +likely +likeminded +liken +likened +likeness +likenesses +likening +likens +liker +likers +likert +likes +likesof +likesome +likest +likesutsia +liketh +likeways +likewise +likhachev +likhi +likho +liki +likiin +likila +likin +liking +likings +likit +liknon +liko +likoka +likol +likolo +likoonli +likouala +likourgiotis +likpakpaln +likpe +likphai +likse +likuba +likud +likum +likwala +likwit +lila +lilac +lilaceous +lilacin +lilacky +lilacs +lilacthroat +lilactide +lilaea +lilaeopsis +lilah +lilangeni +lilaqua +lilas +lilau +lilawa +lilbourn +lilburn +lile +lileko +lilesville +lilette +lili +lilia +liliaceae +liliaceous +liliales +liliali +lilian +liliana +liliane +lilias +lilica +lilied +lilien +lilies +liliform +liliiflorae +lilikala +liliko +lilima +lilin +lilio +liliputian +lilisha +lilith +lilium +lilja +lill +lilla +lille +lilleniit +liller +lilley +lilli +lillian +lilliana +lilliane +lillianite +lillians +lilliboi +lillibullero +lillie +lillien +lillina +lillingstone +lillington +lilliput +lilliputia +lilliputians +lilliputs +lillis +lillith +lilliwaup +lilllie +lillo +lillolman +lillooet +lilly +lillywhite +lilo +lilofee +lilongwe +lilov +lilse +lilted +lilting +liltingly +liltingness +lilts +lily +lilya +lilyan +lilybell +lilydale +lilyfy +lilyhanded +lilyhearted +lilylike +lilylivered +lilypad +lilywhite +lilywood +lilywort +lima +limacea +limacel +limaceous +limacidae +limaciform +limacina +limacine +limacinid +limacinidae +limacoid +limacon +limacons +limagen +limaille +liman +limane +limani +limarahing +limas +limassol +limation +limature +limavady +limaville +limawood +limax +limb +limba +limbal +limbamba +limbang +limbat +limbate +limbation +limbe +limbeck +limbed +limbede +limber +limbered +limberer +limberest +limberg +limberham +limbering +limberly +limberness +limbers +limbic +limbie +limbier +limbiferous +limbing +limbless +limbmeal +limbo +limbom +limbong +limbos +limboto +limbous +limbs +limbu +limbudza +limbum +limbur +limburg +limburger +limburgia +limburgisch +limburgite +limbus +limby +lime +limeade +limeades +limean +limeberry +limebush +limed +limehouse +limeina +limekiln +limekilns +limeless +limelighter +limelights +limelike +limeman +limen +limens +limeport +limequat +limer +limera +limerick +limericks +limeridge +limes +limesprings +limestone +limestones +limetta +limettin +limewash +limewater +limewort +limey +limeys +limi +limicolae +limicoline +limicolous +limidae +limier +limiest +liminal +liminary +liminess +liming +limington +limit +limitability +limitable +limitably +limital +limitarian +limitary +limitation +limitations +limitative +limitatively +limited +limitedly +limitedness +limiteds +limiter +limiters +limites +limiteth +limiting +limitive +limitless +limitlessly +limitrophe +limits +limitted +limivorous +limlight +limma +limmed +limmer +limmiter +limmock +limmu +limn +limnanth +limnanthemum +limnanthes +limned +limner +limners +limnery +limnetic +limnetis +limniad +limnimeter +limnimetric +limning +limnite +limnobiology +limnobios +limnobium +limnocnida +limnograph +limnologic +limnological +limnologist +limnology +limnometer +limnophile +limnophilid +limnophilous +limnorchis +limnoria +limnoriidae +limnorioid +limns +limo +limodorum +limoid +limon +limonene +limoniad +limonin +limonite +limonitic +limonium +limonkpel +limonov +limor +limorro +limos +limosa +limose +limosella +limosi +limosliwan +limous +limousin +limousine +limousines +limp +limped +limper +limpers +limpesa +limpest +limpets +limphault +limpidity +limpidly +limpidness +limpily +limpin +limpiness +limping +limpingly +limpingness +limpish +limply +limpness +limpoko +limpopo +limps +limpsy +limpwort +limpy +limsy +limu +limulid +limulidae +limuloid +limuloidea +limulus +limurite +limy +lina +linable +linac +linaceae +linaceous +linacre +linacs +linafiel +linaga +linage +linages +linahan +linaker +linaloa +linalol +linalool +linamarin +linanthus +linapacan +linarcos +linares +linaria +linarite +linaugh +linawqauqaul +linback +linberg +linc +linch +linchbolt +linchet +linchiang +linchpin +linchpinned +linchpins +lincloth +lincoln +lincolnacres +lincolncity +lincolndale +lincolnian +lincolniana +lincolnlike +lincolnpark +lincolnshire +lincolnton +lincolnville +lincovsky +lincoya +lincroft +lincture +linctus +lind +linda +lindackerite +lindale +lindamood +lindane +lindanes +lindasay +lindasusan +lindau +lindberg +lindbergh +lindberglevy +lindbladia +lindblom +linde +lindekens +lindell +lindelof +lindeman +lindemannia +lindemulder +lindenhurst +lindens +lindenthal +lindenwood +lindequast +linder +lindera +linderholm +lindfors +lindgren +lindholm +lindi +lindie +lindies +lindir +lindiri +lindja +lindler +lindley +lindleyan +lindner +lindo +lindoite +lindon +lindow +lindowski +lindquist +lindqvist +lindrith +lindroth +lindrou +lindsay +lindsborg +lindsey +lindseyville +lindside +lindstedt +lindstrom +lindsy +lindt +lindu +linduan +lindvall +lindy +line +linea +lineable +lineage +lineaged +lineages +lineality +lineally +lineament +lineamental +lineaments +lineameter +linear +linearities +linearity +linearizable +linearize +linearized +linearizes +linearizing +linearly +linearmodel +lineate +lineated +lineation +lineatum +lineature +lineback +linebackers +linebarger +linebreaker +linecut +lined +linefeed +linefeeds +linefork +linegar +lineham +lineiform +lineitem +linek +linelength +lineless +linelet +linell +linemen +linemode +linen +linene +linenette +linenize +linenizer +linenman +linens +linenumber +linenumbers +lineny +lineo +lineoflo +lineograph +lineolate +lineolated +lineplot +liner +linerange +linero +liners +lines +linesegment +linesman +linesmen +linesville +linet +linetest +lineth +lineto +linetran +linetransect +linette +linetype +lineups +lineville +linewalker +linewidth +linework +linewrap +liney +linfield +ling +linga +lingada +lingafelter +lingala +lingam +lingams +lingan +lingao +lingappaiah +lingarak +lingard +lingas +lingayat +lingbe +lingbee +lingberry +lingbinsi +lingbird +lingchun +linge +lingel +lingen +lingenberry +lingered +lingerer +lingerers +lingereth +lingeries +lingering +lingeringly +lingers +linggang +linggau +lingi +lingier +lingig +lingkabau +lingle +lingleville +lingoes +lingombe +lingonberry +lingonda +lingotes +lingoum +lingras +lingren +lings +lingstrom +lingsy +lingtow +lingtowman +lingua +linguacious +linguadental +linguaeform +linguagem +linguale +linguality +lingualize +lingually +linguals +linguanasal +linguata +linguatula +linguatulida +linguatulina +linguatuline +linguatuloid +lingue +linguet +linguidental +linguiform +linguine +linguines +linguini +linguinis +linguister +linguistic +linguistical +linguistics +linguistique +linguistry +linguists +lingula +lingulate +lingulated +lingulella +lingulid +lingulidae +linguliform +linguloid +linguodental +linguodistal +lingwort +lingy +lingyan +lingyun +lingzhi +linh +linha +linhares +linhay +linhnie +lini +linia +linie +linier +linieres +liniest +linihan +liniman +liniments +linin +lininess +lining +lininger +linings +linitis +liniya +linja +linje +linjombo +link +linkabau +linkable +linkage +linkages +linkbot +linkboy +linkd +linkdead +linke +linked +linkedit +linkedited +linkediting +linkeditor +linkeditted +linkeditting +linkedlist +linkedness +linkee +linker +linkers +linkexchange +linkey +linkhorn +linkig +linking +linkletter +linkman +linkmen +linkname +linkpage +linkpc +links +linksaver +linksmith +linkup +linkups +linkwood +linkwork +linky +linley +linlon +linn +linnaea +linnaean +linnaeanism +linnaeite +linncreek +linne +linnea +linnean +linnebank +linnekar +linnell +linnet +linnets +linneus +linngithig +linngithigh +linngrove +linnie +lino +linolate +linoleic +linolein +linolenate +linolenic +linolenin +linoleums +linolic +linolin +linometer +linon +linopc +linopteris +linos +linosun +linotyper +linotypes +linotypist +linous +linow +linoxin +linoxyn +linpack +linpak +linpin +lins +linsang +linseeds +linsey +linseys +linsky +linsniff +linsniffer +linstock +lint +lintang +linte +lintel +linteled +linteling +lintels +linten +linter +lintern +linters +lintie +lintier +lintiest +linting +lintless +linton +lintonite +lints +lintseed +lintwhite +linty +linum +linus +linux +linuxexpo +linuxware +linuxwarez +linville +linwood +linxia +linxiang +linxu +linxx +liny +linyali +linyangale +linyeli +linyphia +linyphiidae +linz +linzeli +linzia +linzie +linzy +lioba +liodermia +liohe +liomyoma +lion +lionakis +lioncel +lionel +lionesque +lioness +lionesses +lionet +lionetti +liong +liongo +lionheart +lionhearted +lionhood +lionise +lionism +lionizable +lionization +lionize +lionized +lionizer +lionizers +lionizes +lionizing +lionlike +lionly +lionman +lionproof +lions +lionship +liony +liotard +liothrix +liotrichi +liotrichidae +liotrichine +lioudmila +liouesso +lipa +lipacidemia +lipaciduria +lipan +lipanja +lipari +liparian +liparid +liparidae +liparididae +liparis +liparite +liparocele +liparoid +liparous +liparus +lipase +lipe +lipectomies +lipectomy +lipemia +lipenja +lipetsk +lipeurus +lipgart +lipide +lipids +lipin +liping +lipinski +lipinsky +lipis +lipit +lipkawa +lipless +liplet +liplike +lipman +lipo +lipoblast +lipoblastoma +lipobranchia +lipocaic +lipocardiac +lipocele +lipoceratous +lipocere +lipochrome +lipoclasis +lipoclastic +lipocyte +lipoferous +lipofibroma +lipogenesis +lipogenetic +lipogenic +lipogenous +lipogram +lipography +lipohemia +lipoid +lipoidal +lipoidemia +lipoidic +lipolyses +lipolysis +lipolytic +lipoma +lipomata +lipomatosis +lipomatous +lipomorph +lipomyoma +lipomyxoma +lipopexia +lipophagic +lipophore +lipopod +lipopoda +lipoprotein +liposarcoma +liposis +liposoluble +liposome +lipostomy +lipothymial +lipothymic +lipothymy +lipoto +lipotrophic +lipotrophy +lipotropic +lipotropy +lipotype +lipotyphla +lipovaccine +lipovcek +lipow +lipowska +lipoxenous +lipoxeny +lipp +lippa +lippe +lipped +lippen +lippens +lipper +lipperings +lippers +lippert +lipperta +lippet +lippi +lippia +lippier +lippiest +lippiness +lipping +lippitude +lippitudo +lippman +lippy +lipreading +liprounding +lips +lipsanotheca +lipschutz +lipscomb +lipski +lipson +lipstick +lipsticks +lipta +liptaako +lipton +liptser +lipuria +lipwork +lipyagin +lipzig +liquable +liquamen +liquate +liquation +liquefacient +liquefactive +liquefiable +liquefied +liquefier +liquefiers +liquefies +liquefying +liquesce +liquescence +liquescency +liquescent +liqueur +liqueurs +liquid +liquidable +liquidambar +liquidamber +liquidated +liquidates +liquidating +liquidation +liquidations +liquidator +liquidators +liquidfx +liquidities +liquidity +liquidize +liquidized +liquidizer +liquidizes +liquidizing +liquidless +liquidly +liquidness +liquidogenic +liquids +liquidy +liquified +liquifier +liquifiers +liquifies +liquiform +liquify +liquifying +liquisa +liquor +liquored +liquorer +liquorice +liquoring +liquorish +liquorishly +liquorist +liquorless +liquors +lira +lirang +liras +lirate +liration +lire +lirella +lirellate +lirelliform +lirelline +lirellous +liri +liriodendron +liriope +liripipe +liroconite +lirong +lisa +lisabata +lisabeth +lisak +lisala +lisalotte +lisas +lisaw +lisbeth +lisboa +lisbon +lisboncenter +lisbonfalls +lisburn +lisch +lischynsky +lisco +liscomb +lise +lisee +liseiotte +lisek +lisela +liselotte +lisen +lisenchuk +lisente +lisere +lisetta +lisette +lish +lisha +lishana +lishanit +lishaw +lishbi +lishe +lishu +lishui +lisi +lisinha +lisk +liskoff +lisl +lisles +lisman +lismore +liso +lisolette +lisom +lisombo +lisongo +lisp +lisped +lisper +lispers +lisping +lispingly +lispm +lisps +lispund +lispy +lisrel +liss +lissa +lissam +lissamphibia +lissemskaia +lisser +lissi +lissie +lissipu +lissom +lissome +lissomely +lissomeness +lissomly +lissomness +lissotrichan +lissotriches +lissotrichy +lissu +lissy +list +listable +listbody +listbot +listbox +listboxes +listed +listedness +listel +listen +listened +listener +listeners +listening +listeningon +listenings +listens +lister +listera +listeria +listerian +listerine +listerism +listerize +listers +listeth +listhead +listie +listing +listings +listints +listless +listlessly +listlessness +liston +listred +lists +listserv +listtv +listview +listwork +lisu +lisuarte +lisum +liswood +liszt +lita +litaneutical +litani +litanies +litany +litanywise +litaro +litas +litation +litauer +litch +litchfield +litchi +litchis +litchterman +litchville +lite +liteanu +litel +litembo +liter +literacies +literacy +literaily +literal +literalism +literalist +literalistic +literality +literalize +literalizer +literally +literalness +literals +literar +literarian +literariness +literary +literaryism +literate +literately +literates +literati +literatim +literation +literatist +literato +literator +literatur +literature +literatures +literatus +literball +literberry +literi +literose +literosity +liters +lites +litest +litestep +lith +lithagogue +lithangiuria +lithanthrax +litharge +lithectasy +lithectomy +lithely +lithemia +lithemic +litheness +lither +litherland +lithesome +lithest +lithgow +lithi +lithia +lithias +lithiasis +lithiastic +lithiate +lithic +lithifaction +lithify +lithiro +lithite +lithium +lithiums +lithlad +litho +lithobiid +lithobiidae +lithobioid +lithobius +lithocarpus +lithocenosis +lithochromy +lithoclase +lithoclast +lithoclastic +lithoclasty +lithoculture +lithocyst +lithodes +lithodesma +lithodid +lithodidae +lithodomous +lithodomus +lithofractor +lithogenesis +lithogenetic +lithogenous +lithogeny +lithoglyph +lithoglypher +lithoglyphic +lithoglyptic +lithographed +lithographer +lithographic +lithographs +lithogravure +lithoid +lithoidal +lithoidite +litholabe +litholapaxy +litholatrous +litholatry +lithologic +lithological +lithologist +litholysis +litholyte +litholytic +lithomancy +lithomarge +lithometer +lithonephria +lithonia +lithopedion +lithopedium +lithophagous +lithophane +lithophanic +lithophany +lithophilous +lithophone +lithophyl +lithophysa +lithophysal +lithophyte +lithophytic +lithophytous +lithopolis +lithopone +lithoprint +lithos +lithoscope +lithosian +lithosiid +lithosiidae +lithosiinae +lithosis +lithosol +lithosperm +lithospermon +lithospermum +lithosphere +lithostatic +lithotint +lithotome +lithotomic +lithotomical +lithotomist +lithotomize +lithotomous +lithotomy +lithotony +lithotresis +lithotripsy +lithotriptor +lithotrite +lithotritic +lithotritist +lithotrity +lithotype +lithotypic +lithotypy +lithous +lithoxyl +lithsman +lithuanian +lithuanians +lithuanic +lithuresis +lithuria +lithy +litigable +litigants +litigated +litigates +litigating +litigation +litigations +litigator +litigators +litigatory +litigiosity +litigiously +litime +litiopa +litiscontest +lititz +litja +litka +litke +litle +litmaath +litmuses +lito +litopterna +litoral +litorina +litorinidae +litorinoid +litoro +litotes +litra +litre +litreball +litres +lits +litsa +litsea +litster +litt +littau +littcarr +littell +litten +litter +litterateur +litterateurs +litterbugs +littered +litterer +litterers +littering +littermate +littermates +litters +littery +little +littlebirch +littlecedar +littlechute +littlecreek +littleeagle +littleelm +littleendian +littlefalls +littleferry +littlefield +littlefork +littlehouse +littlejohn +littlelake +littleleaf +littleman +littlenecks +littleness +littleo +littleport +littler +littleriver +littlerock +littles +littleshop +littlesilver +littlesioux +littlest +littlestown +littlevalley +littlewale +littlewolf +littlewood +littleyork +littling +littlish +littlmore +littlrck +littman +littorals +littorella +littress +lituiform +lituite +lituites +lituitidae +lituola +lituoline +lituoloid +liturate +liturgical +liturgically +liturgician +liturgics +liturgies +liturgiology +liturgism +liturgist +liturgistic +liturgists +liturgize +litus +lituus +litva +litvak +litvinemko +litvinoff +lityerses +litz +litzenberger +litzlitz +liubit +liubom +liubov +liudi +liudmila +liuka +liukiu +liunet +liutwa +liva +livability +livable +livableness +livably +livadia +livanov +livara +livas +live +liveability +liveable +livebirths +liveborn +lived +livedo +liveimage +livein +livek +livelier +liveliest +livelihood +livelihoods +livelily +liveliness +livelock +livelong +lively +livenbaum +livened +livener +liveners +liveness +livening +livens +liveoak +liver +liverance +liverberry +livercolored +livered +liverhearted +liveried +liveries +liveright +liverish +liverishness +liverleaf +liverless +liverman +livermore +liverpool +livers +liversidge +liverworts +liverwurst +liverwursts +livery +liverydom +liveryless +liveryman +liverymen +lives +livesey +livest +liveth +livetrap +livetraps +liveupdate +livevideo +liveware +livezey +livia +livian +lividities +lividity +lividly +lividness +livier +liviers +livikou +livin +living +livingless +livingly +livingness +livings +livingston +livingstone +livingtson +livinston +livio +livish +livistona +liviu +livlihood +livng +livoni +livonia +livonian +livor +livorno +livrano +livres +livret +livshits +livuan +livunganen +livvie +livvikovian +livvy +livvyy +livy +liwan +liwanag +liwuli +lixie +lixive +lixivial +lixiviate +lixiviation +lixiviator +lixivious +lixivium +liyang +liyuwa +liza +lizabeth +lizak +lizalde +lizard +lizarda +lizardo +lizards +lizardtail +lizarralde +lizbeth +lize +lizella +lizemores +lizer +lizette +lizspc +lizst +lizton +lizz +lizzi +lizzie +lizzy +ljetzen +ljiljana +ljilyana +ljuba +ljubav +ljubavni +ljubica +ljubicich +ljubisa +ljubisu +ljubo +ljubov +ljund +ljung +ljupka +ljustina +llabre +llagua +llaguno +llama +llamado +llamas +llamelli +llami +llamson +llandeilo +llandovery +llano +llanos +llapgoch +llaruro +llautu +llcl +llclcom +llcs +lled +lleo +lleu +llew +llewellyn +llewelyn +llicked +llim +llimbumi +llinas +llll +lllll +llllll +lllllll +llllllll +llnl +lloa +llogole +lloreda +llosa +lloyd +lloyod +llpe +llsm +lltk +lludd +llugule +lluis +llumc +llwa +llyn +lmam +lmbench +lmhost +lmhosts +lmng +lmpvax +lmtop +lnag +lnames +lngngam +lnrdwd +lnup +lnur +loach +loachapoka +loaches +load +loadable +loadage +loadall +loadaverage +loadbuild +loadbuilder +loadcursor +loaddskf +loaded +loaden +loader +loaders +loadeth +loadinfo +loading +loadings +loadless +loadlin +loadman +loadpenny +loadreport +loads +loadsome +loadspecs +loadstar +loadstone +loadstones +loadsum +loady +loaf +loafed +loafer +loaferdom +loaferish +loafers +loafing +loafingly +loaflet +loafs +loaghtan +loamed +loami +loamier +loamiest +loamily +loaminess +loaming +loamless +loammi +loams +loan +loanable +loanatit +loanda +loande +loaned +loaner +loaners +loang +loange +loanin +loaning +loanings +loanmonger +loans +loanshark +loansharking +loanword +loanwords +loasa +loasaceae +loasaceous +loathe +loathed +loather +loathers +loathes +loatheth +loathful +loathfully +loathfulness +loathing +loathingly +loathings +loathliness +loathly +loathness +loathsome +loathsomely +loatuko +loave +loaves +loay +loba +lobachevskij +lobaha +lobal +lobala +lobale +lobamba +lobang +lobaria +lobasso +lobaste +lobata +lobatae +lobatchevsky +lobate +lobated +lobately +lobation +lobaugh +lobaye +lobbed +lobber +lobbers +lobbest +lobbied +lobbies +lobbing +lobbish +lobby +lobbyer +lobbyers +lobbying +lobbyism +lobbyisms +lobbyist +lobbyists +lobbyman +lobcock +lobeco +lobectomy +lobed +lobedu +lobefin +lobefoot +lobefooted +lobegue +lobeless +lobelet +lobelia +lobeliaceae +lobeliaceous +lobelias +lobelin +lobeline +lobellated +lobello +lobelville +lobengula +lober +lobes +lobfig +lobi +lobianco +lobiform +lobigerous +lobin +lobing +lobiped +lobiri +lobiridyan +lobisomem +lobito +loblollies +lobo +lobobangi +loboda +lobola +lobong +lobopodium +lobos +lobosa +lobose +lobot +lobotomies +lobotomize +lobotomized +lobotomizing +lobr +lobs +lobscourse +lobscouser +lobster +lobstering +lobsterish +lobsterlike +lobsterproof +lobsters +lobtail +lobu +lobue +lobularia +lobularly +lobulate +lobulated +lobulation +lobules +lobulette +lobulose +lobulous +lobworm +loca +locable +local +localarea +locale +localedef +locales +localgroup +localgrowth +localhost +localising +localism +localisms +localist +localistic +localists +localite +localites +localities +locality +localizable +localization +localize +localized +localizer +localizes +localizing +locally +localness +locals +locanda +locandiera +locarnist +locarnite +locarnize +locarno +locas +locase +locate +located +locatell +locater +locaters +locates +locating +location +locational +locationals +locations +locative +locatives +locator +locators +locc +loccmds +locellate +locellus +locgsen +loch +lochage +lochan +locher +lochetic +lochgelly +lochia +lochial +lochiocolpos +lochiocyte +lochiometra +lochiopyra +lochiorrhea +lochlin +lochloosa +lochmere +lochner +lochopyra +lochow +lochs +lochus +lochy +lociation +locicero +lock +lockable +lockage +lockages +lockard +lockart +lockatong +lockberg +lockbourne +lockbox +lockboxes +lockbridge +lockdown +locke +locked +lockeford +lockemills +locken +locker +lockerman +lockers +lockert +lockesburg +locket +lockets +lockett +lockful +lockhar +lockhart +lockhaven +lockheed +lockhole +lockholes +lockholm +lockianism +lockin +locking +lockings +lockjaw +lockjaws +lockland +locklear +lockless +locklet +lockmaker +lockmaking +lockman +lockmaster +lockney +locknuts +lockout +lockouts +lockpick +lockpin +lockport +lockram +lockridge +locks +locksley +locksman +locksmithery +locksmithing +locksmiths +lockspit +locksteps +locktable +lockup +lockups +lockweir +lockwood +lockwork +locky +locn +loco +lococo +locoed +locoes +locofoco +locofocoism +locohills +locoing +locoism +locoisms +locola +locomobile +locomobility +locomoted +locomotes +locomotility +locomoting +locomotively +locomotives +locomotivity +locomutation +locos +locoweeds +locque +locrak +locrian +locrine +loculament +locular +loculate +loculated +loculation +locule +loculicidal +loculose +loculus +locum +locus +locust +locusta +locustal +locustberry +locustdale +locustelle +locustfork +locustgap +locustgrove +locusthill +locustid +locustidae +locusting +locustlike +locusts +locustvalley +locustville +locutions +locutorship +locutory +loda +lodac +lodang +loddi +loddigesia +lode +lodebar +lodemanage +loden +loder +lodes +lodeserto +lodesman +lodestar +lodestars +lodestuff +lodge +lodgeable +lodged +lodgeful +lodgegrass +lodgeman +lodgement +lodgements +lodger +lodgerdom +lodgers +lodges +lodgest +lodgeth +lodging +lodginghouse +lodgings +lodgment +lodgments +lodha +lodhanti +lodhi +lodi +lodicule +lodicules +lodja +lodoi +lodoicea +lodolo +lodoss +lodovico +lodowic +lodsd +lodur +lodwick +lodz +loebell +loeck +loeffler +loefgren +loegria +loei +loeil +loella +loembis +loerik +loering +loerke +loes +loeschen +loesje +loessal +loesses +loessial +loessic +loessland +loessoid +loet +loew +loewe +loewen +loewenadler +loewinger +loey +lofa +loffa +loffin +lofgren +lofs +lofstelle +loft +loftcrack +lofted +lofter +lofters +lofthouse +loftier +loftiest +loftily +loftin +loftiness +lofting +loftis +loftless +loftman +lofts +loftsgaarden +loftsman +loftus +lofty +loftyminded +lofuchai +logair +logan +logananga +loganberries +loganberry +logandale +logania +loganiaceae +loganiaceous +loganin +logans +logansport +loganton +loganville +logaoedic +logar +logarajah +logarithmal +logarithms +logba +logbo +logbook +logbooks +logcock +logdis +loge +logea +logeion +loger +loges +logeum +logfile +logfiles +logg +loggan +loggat +logged +loggedin +logger +loggerheaded +loggerheads +loggers +loggia +loggias +loggie +loggier +loggin +logging +loggings +loggins +loggish +loggy +loghead +logheaded +loghoma +loghon +loghost +loghry +loght +logi +logia +logic +logical +logicaland +logicalist +logicality +logicalize +logically +logicalness +logicalor +logicals +logicaster +logication +logicians +logicism +logicist +logicity +logicize +logicized +logicizes +logicizing +logiclab +logicless +logicon +logics +logie +logier +logiest +logik +logily +logimouse +login +logina +logindlg +loginess +loging +logins +loginserver +logion +logique +logir +logiri +logistical +logistically +logistician +logisticians +logistics +logit +logitech +logits +logium +logjams +loglet +loglike +loglinear +loglogistic +logmaker +logman +lognormal +logntp +logo +logobia +logocracy +logodaedaly +logoes +logoff +logogogue +logogram +logograph +logographer +logographic +logography +logogriph +logogriphic +logoi +logoized +logoke +logolatry +logolikuria +logology +logomach +logomacher +logomachic +logomachical +logomachist +logomachize +logomachy +logomancy +logomania +logomaniac +logometer +logometric +logometrical +logon +logone +logonebirni +logonian +logons +logooli +logopedia +logopedics +logorban +logoro +logorrhea +logos +logothete +logoti +logotok +logotype +logotypes +logotypies +logotypy +logout +logpack +logrank +logres +logria +logris +logroll +logrolled +logroller +logrolling +logrolls +logs +logseries +logstat +logtick +logtime +logting +logu +logudorese +logue +logueche +logway +logways +logwise +logwood +logwoods +logwork +logy +lohan +lohana +lohar +lohara +lohari +lohbya +lohe +lohei +loheirn +lohi +lohia +lohiki +lohinsky +lohja +lohkmap +lohman +lohmann +lohn +lohner +lohniskv +lohnisky +lohoar +lohoch +lohom +lohorong +lohpitta +lohr +lohrmann +lohrville +lohtoga +loiano +loike +loikera +loilem +loimic +loimography +loimology +loinang +loincloths +loindang +loined +loingiri +loins +loir +loire +loirya +lois +loise +loiseau +loisel +loiseleur +loiseleuria +loiselle +loisellin +loisu +loitai +loitered +loiterer +loiterers +loitering +loiteringly +loiters +loiza +loja +lojas +lojenga +lojewski +lojgren +lojik +lojze +loka +lokai +lokalo +lokalyen +lokanan +lokao +lokaose +lokapala +lokathan +lokay +loke +loked +lokele +lokenda +lokep +loker +loket +lokey +lokhay +loki +lokiec +lokin +lokindra +lokkeberg +lokman +loko +lokoiya +lokoja +lokoli +lokon +lokono +lokop +lokoro +lokoya +lokpa +loktev +lokukoli +lokuru +lokutsu +lokutu +lola +lolak +lolaki +lolang +lolatavola +lolayan +lole +loleh +lolei +loleko +lolen +loleta +lolgorien +loli +loliginidae +loligo +lolita +lolium +lollar +lollard +lollardian +lollardism +lollardist +lollardize +lollardlike +lollardry +lollardy +lolled +loller +lollers +lolley +lollie +lollies +lolling +lollingite +lollingly +lollipop +lollipops +lollis +lollius +lollivar +lollo +lollobrigida +lollop +lolloped +lolloping +lollops +lollopy +lolls +lolly +lollygag +lollygagged +lollygagging +lollygags +lollypop +lollypops +lolo +lolobata +lolobi +lolobiakpafu +loloda +lolodorf +lolokara +lolokaro +lolola +lololo +lolopani +lolopho +lolopwepwe +lolsiwoi +loltong +lolue +loma +lomabaale +lomaiviti +lomakka +lomalinda +lomamar +lomami +loman +lomanim +lomapo +lomas +lomasse +lomastome +lomatine +lomatinous +lomatium +lomavren +lomax +lombaha +lombarda +lombardeer +lombardero +lombardesque +lombardi +lombardia +lombardian +lombardic +lombardo +lombardy +lombe +lombi +lomblen +lombo +lombok +lombole +lombooki +lomboy +lombrink +lombrosian +lombu +lome +lomela +lomenie +loment +lomentaceous +lomentaria +lomentum +lomer +lometa +lometimeti +lomi +lomia +lomie +lomira +lomita +lomitawa +lomlom +lommel +lommen +lommock +lomnicki +lomongo +lomonosov +lomonosowa +lomonsov +lomotil +lomotua +lomotwa +lompoc +lomsden +lomue +lomuriki +lomwe +lomya +lomza +lona +lonaconing +loncar +loncav +lonchocarpus +lonchong +loncong +londai +londe +londebay +londet +londhe +londinensian +londinium +londo +london +londona +londonderry +londoner +londoners +londonese +londonesque +londong +londonian +londonish +londonism +londonize +londonmills +londony +londres +londru +lone +lonedell +lonee +lonegrove +lonejack +lonelier +loneliest +lonelihood +lonelily +loneliness +lonely +loneness +loneoak +lonepine +loner +lonergan +lonerock +loners +lonesome +lonesomely +lonesomeness +lonesomes +lonestar +lonetree +lonette +lonewolf +lonex +loney +long +longa +longago +longan +longana +longandu +longanimity +longanimous +longarim +longaville +longbarn +longbarrow +longbeach +longbeak +longbeard +longberang +longbia +longbo +longboat +longboatkey +longboats +longborough +longbottom +longbow +longbows +longbranch +longchamps +longching +longchuan +longcloth +longcreek +longdale +longden +longdist +longdistance +longdon +longdrawnout +longe +longear +longed +longeddy +longedst +longeinga +longelonge +longer +longergan +longers +longes +longest +longet +longeth +longeval +longevities +longevity +longevous +longface +longfaced +longfellow +longfelt +longfield +longfin +longford +longform +longful +longgar +longgone +longgreen +longgrove +longgu +longhair +longhaired +longhairs +longhead +longheaded +longheadedly +longhenry +longhetti +longhi +longholes +longhorns +longhurst +longicaudal +longicaudate +longicone +longicorn +longicornia +longilateral +longilingual +longimanous +longimetric +longimetry +longing +longingly +longingness +longings +longini +longinian +longinquity +longint +longinus +longio +longipennate +longipennine +longirostral +longis +longisection +longisland +longitude +longitudes +longjaw +longjmp +longjohns +longkemuat +longkey +longkhai +longla +longlaai +longlake +longlane +longleaf +longlegs +longley +longline +longlines +longlinks +longlived +longly +longmeadow +longmein +longmemory +longmi +longmont +longmouthed +longname +longness +longo +longobard +longobardi +longobardian +longobardic +longoro +longperiod +longphi +longpine +longpoint +longpond +longport +longprairie +longpre +longren +longrene +longri +longrun +longs +longshanks +longship +longships +longshore +longshoreman +longshoremen +longshot +longsome +longsomely +longsomeness +longspun +longspur +longstocking +longstreet +longswords +longtail +longtemps +longterm +longtime +longtin +longto +longton +longtree +longuda +longues +longueur +longueval +longueville +longulite +longvalley +longview +longville +longwa +longway +longways +longwinded +longwinged +longwise +longwood +longwool +longword +longwork +longwort +longworth +longyearbyen +loni +lonicera +lonigan +lonio +lonised +loniu +lonk +lonkundo +lonkundu +lonliness +lonmu +lonna +lonnberg +lonnegan +lonneke +lonnergan +lonni +lonnie +lonnman +lonnrot +lonny +lono +lonoke +lonquhard +lons +lonsdale +lontar +lontara +lontes +lontjong +lonto +lontomba +lontor +lonwolwol +lonza +lonzo +looby +loocnon +lood +loof +loofa +loofah +loofahs +loofas +loofie +loofness +loofs +loogootee +looie +look +lookahead +lookaside +lookatthat +lookeba +looked +looker +lookeron +lookers +lookest +looketh +lookforin +lookin +looking +lookingglass +lookitthat +looknon +lookout +lookouts +looks +lookum +lookup +lookups +loom +loombo +loomed +loomer +loomery +looming +loomio +loompa +looms +loon +loona +loonery +looney +looneyville +loong +loonier +loonies +looniest +looniness +loonlake +loons +loony +looods +loop +loopback +loope +looped +looper +loopers +loopful +loophole +loopholed +loopholes +loopholing +loopier +looping +loopist +looplet +looplike +loops +loopy +loopz +loos +loose +loosecreek +loosed +looseliver +loosely +loosemouthed +loosen +loosened +loosener +looseners +looseness +loosening +loosens +looser +looses +looseshooz +loosest +looseth +loosey +loosing +loosish +looso +lootable +looted +looten +looter +looters +loothesom +lootie +lootiewallah +looting +loots +lootsman +looyen +loozeshooz +loozr +lopa +lopanto +lopar +loparino +lopatin +lopawa +lopburi +lope +loped +lopeno +loper +loperena +lopers +lopert +lopes +lopevi +lopez +lopezia +lophiid +lophiidae +lophine +lophiodon +lophiodont +lophiola +lophiomyidae +lophiomyinae +lophiomys +lophobranch +lophocercal +lophocome +lophocomi +lophodermium +lophodont +lophomi +lophophora +lophophoral +lophophore +lophophorine +lophophorus +lophopoda +lophornis +lophortyx +lophosteon +lophotriaene +lophotrichic +lopht +lophtcrack +lophura +lopi +lopiano +loping +lopinski +lopit +lopnor +lopnur +lopol +lopolith +loponen +lopotaire +lopp +loppard +lopped +lopper +loppers +loppet +loppier +lopping +loppy +lops +lopsidedly +lopsidedness +lopstick +loptimality +loquaciously +loquats +loquence +loquent +loquently +loquercio +lora +lorabada +lorado +lorain +loraina +loraine +loral +loralee +loralie +loralyn +loran +lorance +lorandite +lorane +lorang +loranger +lorans +loranskite +loranthaceae +loranthus +loranza +lorarius +lorate +lorbach +lorber +lorca +lorcan +lorch +lorcha +lorcia +lorcs +lord +lordbyte +lorded +lordel +lorden +lording +lordings +lordkin +lordless +lordlet +lordlier +lordliest +lordlike +lordlily +lordliness +lordling +lordlings +lordly +lordofevil +lordolatry +lordotic +lords +lordsburg +lordship +lordships +lordwood +lordy +lore +loreal +loreauville +lorecity +lored +loredana +loredano +loree +loreen +lorek +lorel +lorelei +loreless +loreley +lorelie +lorelle +loren +lorena +lorenc +lorene +lorenson +lorente +lorentowicz +lorentz +lorenz +lorenza +lorenzan +lorenzen +lorenzenite +lorenzina +lorenzo +lorenzon +lores +lorestan +loret +loreta +loretano +loreto +loretta +lorettalorna +lorette +lorettine +loretto +lorettoite +lorez +lorfano +lorgnette +lorgnettes +lorhon +lorhopeni +lori +loria +lorianna +lorianne +loric +lorica +loricarian +loricariidae +loricarioid +loricata +loricate +loricati +lorication +loricoid +lorida +loridans +loridja +lorie +lorien +lories +lorikeet +lorilee +lorilet +lorilyn +lorimer +lorimor +lorin +lorina +lorincz +lorinda +lorine +loring +lorint +loriot +loris +lorises +lorita +lorius +lorletha +lorma +lorman +lormer +lormery +lormor +lormoy +lorn +lorna +lorne +lornness +loro +lorome +loron +lorraine +lorrainer +lorrainese +lorrayne +lorre +lorrel +lorri +lorrie +lorries +lorriker +lorrin +lorring +lorrison +lorry +lors +lortie +lorton +loru +loruhamah +lorum +lorung +lorwama +lory +loryn +lorys +losa +losableness +losada +losaka +losalamitos +losalamos +losaltos +losana +losangeles +losangls +losantville +losbanos +losby +losch +lose +losebanos +losee +losel +loselism +losenger +losengo +loser +loserhood +losers +loses +loseth +losfeld +losfresnos +losgatos +losh +losi +losiara +losier +losindios +losing +losingly +losings +losj +loski +loskutov +loslunas +losmolinos +loso +losojos +losolivos +loss +lossage +lossages +lossary +lossenite +losses +lossfunction +lossier +lossiest +lossless +losso +lossproof +lost +lostant +lostcity +lostcreek +losthills +lostine +lostling +lostnation +lostness +lostriver +lostsprings +losu +losuia +lota +lotan +lotase +lote +lotebush +lotfi +loth +lotha +lothair +lothar +lotharingian +lothario +lotharios +lothe +lothed +lotheth +lothian +lothing +lotho +lothor +lothsome +loti +lotic +lotiform +lotilla +lotions +lotis +lotkuh +lotment +lotochinski +lotophagi +lotophagous +lotor +lotora +lotos +lotov +lotrite +lots +lotsa +lotsupiri +lott +lotta +lotte +lotted +lotter +lotteries +lottery +lotti +lottie +lotting +lotto +lottos +lottsburg +lotty +lotud +lotuho +lotuka +lotuko +lotuni +lotus +lotuses +lotusin +lotuslike +lotuxo +lotz +lotze +louang +louann +louba +loubet +loubomo +loucel +louch +louchettes +loucheux +loud +louden +loudened +loudening +loudens +louder +loudering +loudest +loudiadis +loudish +loudlier +loudliest +loudly +loudmouth +loudmouthed +loudmouths +loudness +loudon +loudonville +loudspeaker +loudspeakers +loudwater +louella +louellas +louellen +louer +louey +louga +lougaw +lough +lougheen +loughery +loughlin +loughman +loughran +loughrin +louie +louies +louin +louis +louisa +louisburg +louise +louisette +louisiade +louisiana +louisianan +louisianans +louisianian +louisianians +louisine +louison +louisseize +louisville +louiswu +louix +louk +louka +loukachka +loukanov +loukianov +loukotka +loukoum +louladakis +loulan +loulou +loulouni +loulous +loulu +loumell +loun +lounck +lounder +lounderer +lounds +lounge +lounged +lounger +loungers +lounges +lounging +loungingly +loungy +louome +loup +loupcity +loupe +louped +loupes +loupgarou +loupgerou +louping +loups +louque +lour +lourdes +lourdy +loureiro +lourenc +lourens +louret +lourie +lours +loury +louseberry +louseck +loused +louses +lousier +lousiest +lousily +lousiness +lousing +louster +lousy +lout +louta +louted +louter +louth +louther +louting +loutish +loutishly +loutishness +loutitia +louto +louton +loutrophoros +louts +louty +louvain +louvale +louvar +louvered +louvering +louvers +louverwork +louviere +louviers +louvois +louvres +louw +loux +louyi +lova +lovability +lovable +lovableness +lovably +lovaea +lovage +lovages +lovaia +lovale +lovana +lovari +lovas +lovat +lovatt +love +loveable +loveably +lovebirds +lovebug +lovech +lovecrafts +loved +loveday +lovedos +lovedst +lovedu +loveflower +lovefool +loveful +lovegrove +lovejoy +lovekin +loveknot +lovelace +lovelady +loveland +lovelass +loveless +lovelessly +lovelessness +lovelier +lovelies +loveliest +lovelihead +lovelily +loveliness +loveling +lovell +lovelle +lovelock +lovelorn +lovelornness +lovely +lovemaiden +lovemaking +loveman +lovemate +lovemonger +loven +lovene +loveproof +lover +lovera +loverdom +lovered +loverhood +lovering +loverless +loverliness +loverly +loverman +lovers +lovership +loverwise +loves +lovesay +lovesick +lovesickness +lovesome +lovesomely +lovesomeness +lovest +loveth +lovething +lovett +lovettsville +loveville +lovevines +lovevly +loveworth +loveworthy +lovey +lovie +loviisa +lovili +lovilia +lovin +lovina +loving +lovingly +lovingness +lovingston +lovington +lovitt +lovitz +lovo +lovoni +lovsky +lowa +lowake +lowan +lowbandwidth +lowbell +lowber +lowborn +lowboys +lowbred +lowbrow +lowbrows +lowcapacity +lowcentral +lowcost +lowdah +lowden +lowdensity +lowder +lowdose +lowdown +lowdowns +lowe +lowed +loweite +lowell +lowellville +lowenadler +lowend +lowenstein +lowenthal +lower +lowerable +lowerbrule +lowercase +lowercased +lowered +lowerer +lowering +loweringly +loweringness +lowerkalskag +lowerlake +lowermost +lowers +lowersalem +lowery +lowes +lowest +lowesville +loweth +lowey +lowfat +lowgap +lowgar +lowgrowing +lowgrowth +lowie +lowietje +lowigite +lowing +lowings +lowintensity +lowio +lowish +lowishly +lowishness +lowitsch +lowitz +lowland +lowlander +lowlands +lowler +lowlevel +lowlier +lowliest +lowlife +lowlifes +lowlihood +lowlily +lowliness +lowly +lowlying +lowman +lowmansville +lowmen +lowminded +lowmoor +lowmost +lown +lowndes +lowndesboro +lowndesville +lownds +lownes +lowness +lownesses +lownlab +lownly +lownoizeuue +lowoi +lowpoint +lowpowered +lowprice +lowquality +lowrent +lowres +lowrie +lowrising +lowry +lowrycity +lows +lowsignal +lowth +lowther +lowthoughted +lowtoned +lowu +lowudo +lowville +lowwood +lowy +lowzier +loxahatchee +loxes +loxfield +loxia +loxic +loxicha +loxiinae +loxing +loxley +loxoclase +loxocosm +loxodograph +loxodon +loxodont +loxodonta +loxodontous +loxodrome +loxodromic +loxodromical +loxodromics +loxodromism +loxolophodon +loxomma +loxosoma +loxosomidae +loxotic +loxotomy +loxsmith +loxston +loxton +loyal +loyaler +loyalest +loyalhanna +loyalism +loyalisms +loyalist +loyalists +loyality +loyalize +loyall +loyally +loyalness +loyalties +loyalton +loyat +loyaute +loyd +loyer +loynes +loyno +loyola +loyolism +loyolite +loysburg +loyse +loyst +loysville +loyu +loza +lozach +lozada +lozano +lozenged +lozenger +lozenges +lozengeways +lozengewise +lozengy +lozi +lozier +loziluyana +lozinski +lozoua +lozyvin +lparam +lparen +lphi +lpiccoli +lpmud +lpmuds +lprm +lprp +lptx +lrcflx +lrcrich +lrcrtp +lrecl +lrwxrwxrwx +lrzmuenchen +lsap +lsbfirst +lseek +lshift +lsingland +lsiunix +lska +lsof +lssa +lssp +lsumvs +ltab +ltisun +ltmcgregoh +ltpsun +ltte +luaan +luac +luaic +lualaba +lualdi +luan +luana +luanda +luane +luang +luangiua +luanguia +luangwa +luann +luano +luapula +luar +luau +luaus +luba +lubahemba +lubaisu +lubakasai +lubakatanga +lubale +lubalin +lubalulua +lubang +lubarsky +lubasanga +lubashaba +lubasongi +lubatiempo +lubbard +lubbe +lubbeck +lubber +lubbercock +lubberland +lubberlike +lubberliness +lubberly +lubbers +lubbock +lube +lubec +lubeck +lubedu +lubelle +luberadzki +lubero +lubert +lubes +lubey +lubienska +lubila +lubilo +lubim +lubims +lubin +lubinsky +lubitsch +lubitz +lubitza +lublin +lublon +lublu +lubnan +lubochku +lubolo +lubombo +lubomir +lubomyr +lubor +lubos +lubosperek +lubost +lubovnick +lubow +lubra +lubric +lubricants +lubricated +lubricates +lubricating +lubrication +lubrications +lubricative +lubricator +lubricators +lubricatory +lubricitate +lubricities +lubricous +lubrifaction +lubrify +lubritorian +lubritorium +lubu +lubuagan +lubudi +lubue +lubuklinggau +lubukusu +lubumbashi +lubutu +lubwi +lubwisi +lubwissi +luca +lucacelli +lucachevski +lucama +lucan +lucania +lucanid +lucanidae +lucanus +lucarelli +lucarne +lucarno +lucas +lucasarts +lucasville +lucatero +lucayan +lucazi +lucban +lucca +lucchese +lucchessi +luce +luceat +lucedale +lucena +lucence +lucencies +lucency +lucent +lucente +lucentio +lucently +lucera +luceres +lucern +lucerna +lucernal +lucernaria +lucernarian +lucernemines +lucero +luces +lucet +lucette +lucey +lucha +luchaire +luchazi +luche +luchessi +luchetti +luchini +luchino +luchko +lucho +luchse +luchshe +luchu +luchuan +luchy +luci +lucia +luciana +luciani +lucianne +luciano +lucianus +lucible +lucic +lucid +lucida +lucidities +lucidity +lucidly +lucidness +lucidor +lucie +lucien +luciene +lucienne +lucier +lucifee +lucifer +luciferase +luciferian +luciferidae +luciferin +luciferoid +luciferous +luciferously +lucifers +lucific +lucifier +luciform +lucifugal +lucifugous +lucigen +lucila +lucile +lucilia +lucilius +lucilla +lucille +lucimeter +lucina +lucinacea +lucinda +lucine +lucinidae +lucinoid +lucio +lucita +lucite +lucius +lucivee +luck +lucke +lucked +lucken +luckett +luckey +luckful +luckham +luckie +luckier +luckies +luckiest +luckily +luckinbill +luckiness +lucking +luckless +lucklessly +lucklessness +luckman +luckmans +lucknow +lucks +lucky +luco +lucrana +lucration +lucratively +lucre +lucrece +lucren +lucres +lucretia +lucretian +lucretiu +lucrezia +lucriferous +lucrific +lucrify +lucrine +luctation +luctiferous +lucubrate +lucubrated +lucubrates +lucubrating +lucubration +lucubrations +lucubrator +lucubratory +lucule +luculent +luculently +lucullan +lucullite +lucuma +lucumia +lucumo +lucumony +lucy +lucyna +luda +ludama +ludchen +ludd +ludden +luddism +luddite +luddites +ludditism +lude +ludefisk +ludei +ludeking +ludell +luden +luderitz +luders +ludgate +ludgathian +ludgatian +ludger +ludi +ludian +ludibrious +ludibry +ludic +ludicrosity +ludicrously +ludicrus +ludie +ludification +ludim +ludington +ludiope +ludlam +ludlamite +ludlovian +ludlowfalls +ludmila +ludmilia +ludmilla +ludo +ludolph +ludolphian +ludovic +ludovica +ludovico +ludovika +ludowici +ludstrum +ludumor +ludviksen +ludwell +ludwick +ludwig +ludwigite +ludwik +ludwing +ludwiz +ludzie +luebbering +lueders +luedtke +luegner +luella +luelle +luembe +luena +luenk +lueoend +lues +luetchford +luetic +luetically +luetke +luetkepohl +luettchau +luez +lufanti +lufberry +lufbery +luff +luffa +luffed +luffing +luffler +luffs +lufkin +luft +lufta +luftes +lufu +luga +lugaad +lugabook +lugabookad +lugaextra +lugagon +luganda +lugannani +lugano +luganville +lugar +lugashadow +lugat +lugba +lugbara +lugduna +lugdush +lugerman +luges +luget +lugg +luggage +luggageless +luggages +luggar +lugged +lugger +luggers +luggie +luggies +lugging +luggnagg +luggoy +luggy +lughtborrow +lughva +luginbuhl +lugisu +lugitama +luglio +lugmark +lugnas +lugo +lugoff +lugooli +lugosi +lugovo +lugs +lugsail +lugsdin +lugsome +lugu +lugubriosity +lugubrious +lugubriously +luguer +luguet +lugulu +luguru +lugwe +lugwere +lugwig +lugworm +luhan +luhanga +luhcs +luhinga +luhishi +luhith +luhtu +luhu +luhuppa +luhushi +luhuva +luhya +luian +luibuse +luiggi +luigi +luigina +luigino +luimbi +luin +luis +luisa +luise +luisella +luisen +luiseno +luish +luisi +luisina +luism +luite +luiten +luitpoid +luiz +luiza +luize +lujack +lujan +lujanka +lujash +lujaurite +lujazi +lujza +luka +lukaa +lukacs +lukamiute +lukanga +lukanov +lukas +lukaschewski +lukasova +lukassen +lukaszewski +lukather +lukavsky +luke +lukeafb +lukeisel +lukely +luken +lukeness +lukenie +lukenyi +lukep +luker +lukers +lukete +lukeville +lukewarm +lukewarmish +lukewarmly +lukewarmness +lukewarmth +lukey +lukha +lukhai +lukic +lukie +lukman +lukolwe +lukoskova +lukoye +lukretia +lukshi +lukshis +lukushi +lula +lulab +lule +luleke +lulekoqet +lulerkort +lulevilela +luli +lulik +luling +lulipopo +lulita +lull +lullabied +lullabies +lullaby +lullabying +lulled +luller +lulli +lullian +lulliloo +lulling +lullingly +lulliquist +lulls +lulluby +lulu +lulua +luluba +lulubelle +lulumo +lulus +luluyia +luma +lumachel +lumadale +luman +lumasaba +lumasoal +lumbaginous +lumbago +lumbagos +lumbang +lumbars +lumbayao +lumbee +lumber +lumberbridge +lumbercity +lumberdar +lumberdom +lumbered +lumberer +lumberers +lumbering +lumberingly +lumberjack +lumberjacks +lumberjk +lumberless +lumberly +lumberport +lumbers +lumbersome +lumberton +lumberyard +lumberyards +lumbi +lumbini +lumbis +lumbly +lumbocostal +lumbodorsal +lumbodynia +lumbosacral +lumbrical +lumbricalis +lumbricidae +lumbriciform +lumbricine +lumbricoid +lumbricosis +lumbricus +lumbrous +lumbu +lumbuh +lumbwa +lumelskii +lumen +lumens +lumet +lumi +lumiere +lumina +luminaire +luminal +luminant +luminaries +luminarious +luminarism +luminarist +luminate +lumination +luminative +luminator +luminau +lumine +luminesce +luminesced +luminescence +luminescent +luminesces +luminescing +luminiferous +luminificent +luminism +luminist +luminists +luminologist +luminometer +luminosities +luminous +luminously +luminousness +lumley +lumme +lummi +lummiisland +lummis +lummoxes +lummy +lump +lumped +lumpen +lumpens +lumper +lumpers +lumpet +lumpfish +lumpier +lumpiest +lumpily +lumpiness +lumping +lumpingly +lumpisb +lumpishly +lumpishness +lumpkin +lumpkins +lumpman +lumps +lumpsucker +lumpy +lumsden +lumum +lumun +luna +lunabar +lunacharsky +lunacies +lunae +lunambulism +lunan +lunapier +lunar +lunard +lunare +lunaria +lunarian +lunarians +lunarist +lunarium +lunars +lunas +lunated +lunatellus +lunately +lunatic +lunatically +lunatick +lunatics +lunation +lunations +lunatize +lunatum +lunbawang +lunceford +lunch +lunchbox +lunchboxes +lunchbreak +lunched +luncheon +luncheoner +luncheonette +luncheonless +luncheons +luncher +lunchers +lunches +lunching +lunchrooms +lund +lunda +lundahl +lundakamboro +lundale +lundaya +lundayeh +lunde +lundeen +lundell +lundequist +lundgren +lundhild +lundia +lundie +lundigan +lundin +lundinarium +lundmark +lundmarka +lundress +lundt +lundu +lundubalong +lundur +lundwe +lundy +lundyfoot +lune +lunel +lunenburg +lunes +lunet +lunets +lunette +lunettes +lung +lunga +lungan +lungarno +lungchang +lungchow +lunged +lungee +lungeous +lunger +lungers +lunges +lungfish +lungfishes +lungflower +lungful +lungga +lunghetti +lunghi +lunghini +lungi +lungie +lunging +lungis +lungless +lungli +lungmi +lungmotor +lungnan +lungri +lungs +lungsick +lungu +lungulu +lungworm +lungwort +lungy +lunicurrent +lunier +lunies +luniest +lunified +luniform +lunigiano +luning +lunion +lunisolar +lunistice +lunistitial +lunitidal +lunix +lunk +lunka +lunker +lunkers +lunkhead +lunkheads +lunks +lunn +lunoid +lunt +lunton +luntu +luntumba +lunube +lunula +lunular +lunularia +lunulate +lunulated +lunule +lunulet +lunulite +lunulites +luny +lunyaneka +lunyole +lunyore +lunze +luoba +luoma +luong +luoravetlany +lupa +lupaca +lupanar +lupanarian +lupanc +lupanine +lupar +lupat +lupatin +lupavinova +lupe +lupeol +lupeose +lupercal +lupercalia +lupercalian +luperci +lupersio +lupescova +lupetidine +lupher +lupi +lupicide +lupid +lupien +lupiform +lupin +lupinaster +lupines +luping +lupinin +lupinine +lupino +lupinosis +lupinous +lupins +lupinsky +lupinus +lupis +lupishko +lupita +lupo +lupoid +lupone +lupous +luppa +luppe +luppi +lupton +luptoncity +lupu +lupulic +lupulin +lupuline +lupulinic +lupulinous +lupulinum +lupulus +lupus +lupuses +luqman +luquillo +luquinha +luquire +lura +luragoli +lural +luraleen +luratech +lurawave +luray +lurched +lurcher +lurchers +lurches +lurching +lurchingly +lurchline +lurcio +lurdan +lurdanism +lure +lured +lureful +lurement +lurene +lurer +lurers +lures +luresome +lurette +lurg +lurgan +lurgee +lurgworm +luri +luria +lurid +luridity +luridly +luridness +lurie +lurier +luring +luringly +lurk +lurked +lurker +lurkers +lurking +lurkingly +lurkingness +lurks +lurky +lurleen +lurlene +lurline +luro +lurrier +lurry +lursa +luru +lurutytapuya +lusa +lusaamia +lusago +lusai +lusaka +lusambo +lusamia +lusatian +lusby +luschgy +luscia +luscinda +luscinia +lusciously +lusciousness +luscombe +lusengo +luser +lusern +lusers +lushai +lushan +lushangi +lushburg +lushed +lushei +lusher +lushes +lushest +lushi +lushing +lushisa +lushly +lushness +lushnje +lushootseed +lushy +lusiad +lusian +lusiardo +lusiki +lusing +lusinga +lusitania +lusitanian +lusk +luske +lusky +luso +lusoga +lusong +lusonge +lusory +lussier +lust +lustbader +lusted +luster +lustered +lusterer +lustering +lusterless +lusters +lusterware +lusteth +lustfully +lustfulness +lustier +lustiest +lustig +lustihead +lustihood +lustily +lustiness +lusting +lustless +lustquencher +lustra +lustral +lustrant +lustrate +lustration +lustrative +lustratory +lustre +lustred +lustreless +lustres +lustrical +lustrify +lustrine +lustring +lustrous +lustrously +lustrousness +lustrum +lusts +lusty +lusu +luszczek +luta +lutaceous +lutaipracha +lutangan +lutango +lutanists +lutany +lutao +lutaos +lutation +lutayaos +lutayo +lutcher +luteal +lutecia +lutecium +luted +lutein +luteinize +lutek +lutelet +lutemaker +lutemaking +lutembi +lutenist +lutenists +luteo +luteofulvous +luteofuscous +luteolin +luteolous +luteoma +luteous +luter +lutes +lutescent +lutestring +lutesville +lutetia +lutetian +luteum +luteway +lutfisk +luth +lutha +luther +luthera +lutheran +lutheranic +lutheranism +lutheranize +lutheranizer +lutherans +lutherism +lutherist +luthern +luthero +luthersburg +luthersville +luthien +luthier +luthor +lutianid +lutianidae +lutianoid +lutianus +lutidine +lutidinic +luting +lutings +lutist +lutists +lutiz +lutjanidae +lutjanus +luton +lutose +lutra +lutraria +lutreola +lutricia +lutrin +lutrinae +lutrine +lutro +luts +lutsen +lutshase +lutshaya +lutter +luttrell +lutts +lutu +lutulence +lutulent +lutz +lutze +lutzu +luuk +luuki +luun +luunda +luva +luvale +luvaridae +luverne +luvian +luvish +luvs +luvuma +luvure +luvvers +luwa +luwangan +luwelala +luwemba +luwian +luwo +luwu +luwuk +luwunda +luxage +luxate +luxation +luxations +luxembourg +luxembourger +luxemburg +luxemburger +luxemburgian +luxes +luxf +luxford +luxi +luxor +luxora +luxulianite +luxuriance +luxuriancy +luxuriant +luxuriantly +luxuriated +luxuriates +luxuriating +luxuriation +luxuries +luxurious +luxuriously +luxurist +luxury +luxus +luya +luyana +luyang +luyi +luyia +luyten +luzarraga +luzern +luzerne +luzh +luzhina +luzi +luzica +luzine +luznetsov +luznice +luzula +lvalue +lvalues +lvax +lview +lvov +lvova +lvovskii +lwall +lwalu +lwaxana +lwei +lwena +lwimbe +lwimbi +lwin +lwindja +lwisukha +lwoian +lwowa +lxlite +lxloukxle +lyaasa +lyall +lyalya +lyam +lyang +lyangmay +lyard +lyars +lyas +lyase +lyasene +lyashenko +lyburn +lycaena +lycaenid +lycaenidae +lycanthrope +lycanthropia +lycanthropic +lycanthropy +lycaonia +lyceal +lycee +lycees +lyceum +lyceums +lychak +lychee +lychees +lychgate +lychnic +lychnis +lychnomancy +lychnoscope +lychnoscopic +lychshe +lycia +lycian +lycid +lycidae +lycium +lycksele +lycodes +lycodidae +lycodoid +lycoming +lycopene +lycoperdales +lycoperdoid +lycoperdon +lycopersicon +lycopin +lycopod +lycopode +lycopodiales +lycopsida +lycopsis +lycopus +lycorine +lycosa +lycosid +lycosidae +lyctid +lyctidae +lyctus +lycus +lyda +lydda +lyddite +lydecker +lyden +lydia +lydian +lydians +lydiard +lydie +lydig +lydina +lydite +lydon +lyedecker +lyel +lyele +lyencephala +lyengmai +lyenlyem +lyente +lyerly +lyery +lyes +lyewater +lyford +lygaeid +lygaeidae +lygeum +lygia +lygodium +lygosoma +lying +lyingly +lyings +lyka +lykens +lyking +lykkehus +lyla +lyle +lyles +lyliston +lyman +lymangood +lymantria +lymantriid +lymantriidae +lyme +lymecenter +lymnaea +lymnaean +lymnaeid +lymnaeidae +lymph +lymphad +lymphadenia +lymphadenoid +lymphadenoma +lymphaemia +lymphagogue +lymphangial +lymphangioma +lymphangitic +lymphangitis +lymphatic +lymphatical +lymphation +lymphatism +lymphatitis +lymphectasia +lymphedema +lymphemia +lymphoblast +lymphocele +lymphocyst +lymphocytes +lymphocytic +lymphocytoma +lymphodermia +lymphoduct +lymphogenic +lymphogenous +lymphoid +lymphology +lymphomas +lymphomatous +lymphomyxoma +lymphopathy +lymphopenia +lymphopenial +lymphorrhage +lymphorrhea +lymphostasis +lymphotaxis +lymphotome +lymphotomy +lymphotoxin +lymphotrophy +lymphous +lymphs +lymphuria +lymphy +lynbrook +lync +lyncean +lynceus +lynch +lynchable +lynchburg +lynched +lyncher +lynchers +lynches +lynching +lynchings +lynchstation +lyncid +lyncine +lynco +lyncort +lynd +lynda +lynde +lyndeborough +lyndel +lyndell +lynden +lyndhurst +lyndia +lyndon +lyndoncenter +lyndonville +lyndora +lyndsay +lyndsey +lyndsie +lyndy +lyne +lynea +lynelle +lynett +lynette +lyney +lyngbyaceae +lyngbyeae +lyngngam +lynham +lynka +lynley +lynn +lynna +lynncenter +lynndyl +lynne +lynnea +lynnell +lynnelle +lynnet +lynnett +lynnette +lynnfield +lynngrove +lynnhaven +lynnton +lynnville +lynnwood +lynnworth +lynq +lynsey +lynton +lynwood +lynx +lynxes +lynxeyed +lyomeri +lyomerous +lyon +lyonese +lyonetia +lyonetiid +lyonetiidae +lyonga +lyonmountain +lyonnais +lyonnaise +lyonnesse +lyons +lyonsfalls +lyonstation +lyophile +lyophilize +lyophobe +lyopoma +lyopomata +lyopomatous +lyosha +lyot +lyotrope +lypemania +lyperosia +lypothymia +lyra +lyrae +lyraid +lyrate +lyrated +lyrately +lyraway +lyre +lyrebird +lyrebirds +lyreflower +lyreman +lyres +lyretail +lyric +lyrical +lyrically +lyricalness +lyrichord +lyricisms +lyricist +lyricists +lyricize +lyricized +lyricizes +lyricizing +lyrics +lyrid +lyriform +lyrism +lyrisms +lyrist +lyrists +lyron +lyrurus +lysak +lysander +lysanias +lysate +lysator +lyse +lysed +lysenkoism +lyses +lysiane +lysias +lysidine +lysigenic +lysigenous +lysigenously +lysiloma +lysimachia +lysimachus +lysimeter +lysin +lysing +lysinger +lysins +lysis +lysistrata +lysite +lysogen +lysogenesis +lysogenetic +lysogenic +lysov +lysozyme +lyssa +lyssarides +lyssic +lyssophobia +lystad +lystiuk +lyston +lystra +lystuik +lysy +lyta +lytell +lyterian +lyth +lythraceae +lythraceous +lythrum +lytic +lytle +lytlecreek +lytta +lytten +lyttle +lytton +lytz +lyuben +lyubimovna +lyubomir +lyubor +lyubov +lyuda +lyudi +lyudikovian +lyudmila +lyudmilla +lyutyi +lyvicou +lyxose +lyyli +lzexe +maaban +maacah +maachah +maachathi +maachathite +maachathites +maadai +maaddress +maadi +maadiah +maagi +maaging +maahs +maai +maaike +maala +maam +maambi +maamot +maamselle +maan +maane +maanjan +maanyak +maanyan +maaouiya +maar +maarahvas +maarath +maarmorilik +maaro +maarten +maartje +maas +maasa +maasai +maasailotuko +maaseiah +maashi +maasiai +maasina +maasoumi +maassen +maat +maath +maathi +maati +maaz +maazel +maaziah +maba +mabaa +mabaale +mabaan +mababe +mabak +mabaka +mabalacat +mabale +maban +mabang +mabangi +mabank +mabap +mabas +mabase +mabbett +mabe +mabea +mabel +mabella +mabelle +mabellona +mabelvale +maben +mabendi +mabeni +mabes +mabi +mabie +mabiha +mabila +mabinay +mabinogion +mabisanga +mabiti +mable +mableton +mablung +mabo +maboard +mabobarkul +maboeuf +maboko +mabolo +mabratti +mabri +mabry +mabscott +mabson +mabton +mabu +mabuan +mabuchi +mabue +mabuiag +mabuiagic +mabuso +mabye +maca +macaa +macaasim +macaboy +macabre +macabresque +macaca +macaco +macacus +macadam +macadamia +macadamite +macadamize +macadamized +macadamizer +macadamizes +macadamizing +macadams +macafee +macaffee +macaglia +macagua +macaguaje +macaguan +macaguane +macague +macai +macakova +macalik +macalister +macalpine +macalstr +macamba +macan +macana +macandrew +macandrews +macanese +macanipa +macantire +macao +macapa +macaques +macaranga +macarani +macarena +macareus +macarios +macarism +macarize +macaroni +macaronic +macaronical +macaronicism +macaronics +macaronies +macaronis +macaronism +macaroon +macaroons +macarthur +macartney +macary +macassai +macassarese +macatawa +macau +macaulay +macauley +macaw +macaws +macb +macbeth +macbride +macburie +macc +maccabaeus +maccabean +maccabee +maccabees +maccaboy +maccallum +maccarthy +maccha +maccheroni +macchesney +macchia +macchiavelli +macchio +macchip +macchiusi +macci +maccione +maccleary +macclenny +macclesfield +maccluer +macco +maccoboy +maccodrum +maccoll +macconaill +maccone +maccormac +maccormack +maccormick +maccrae +maccraw +maccready +maccs +macd +macdade +macdermaid +macdermot +macdermott +macdill +macdink +macdinking +macdoel +macdona +macdonald +macdonalds +macdonell +macdougal +macdougall +macdowall +macdowell +macduff +macduffe +macduffy +mace +macebearer +macec +maced +macedo +macedoine +macedon +macedonia +macedonian +macedonians +macedonic +macee +macef +macefield +maceg +macehead +macei +macej +macek +macel +macelwee +macem +maceman +macen +macenta +maceo +macep +maceq +macer +macerate +macerated +macerater +maceraters +macerates +macerating +maceration +macerator +macerators +macers +maces +macet +maceu +macev +macew +macewen +macex +macey +macf +macfadden +macfadyen +macfarlan +macfarland +macfarlane +macflecknoe +macg +macganter +macgi +macgibbon +macgill +macgillivray +macginnes +macginnis +macgj +macgk +macgl +macglennon +macgm +macgn +macgnome +macgo +macgowan +macgowran +macgp +macgq +macgr +macgrath +macgraw +macgreevy +macgregor +macgregors +macgrudder +macgruder +macgs +macgt +macgu +macguire +macgv +macgw +macgx +macgy +macgz +mach +macha +machado +machairodont +machairodus +machakos +machame +machan +machar +machardie +macharia +machata +machattie +machb +machbanai +machbenah +machc +machd +machdep +mache +macheath +machen +machet +machete +macheteros +machetes +machf +machg +machi +machias +machiasport +machiavel +machiavelian +machiavelism +machiavelli +machiavellic +machicolate +machicolated +machicoulis +machicui +machiguenga +machika +machiko +machila +machilidae +machilis +machin +machina +machinable +machinal +machinate +machinated +machinations +machinator +machine +machineable +machined +machineful +machineless +machinely +machineman +machinename +machiner +machinere +machineries +machinery +machines +machinga +machinify +machining +machinism +machinist +machinists +machinize +machinized +machinizing +machinoclast +machinule +machipongo +machir +machirites +machismos +machiyo +machnadebai +macho +machoflops +machogee +machogo +machohflops +machongrr +machopolyp +machos +machota +machoto +machpelah +machree +machrees +machs +macht +machtley +machunga +machungo +machvano +machwaya +maci +macias +maciej +maciejewski +maciejowski +maciel +macies +macigno +macilence +macilency +macilent +macin +macina +macine +macing +macinnes +macinnis +macintosh +macintoshes +macintoy +macintrash +macintyre +macip +maciq +macir +macis +macisaac +macisco +macisin +maciste +macit +maciu +maciuchova +maciunas +maciv +maciver +maciw +macix +maciy +maciz +macj +mack +macka +mackaill +mackall +mackay +mackaye +mackel +mackellar +macken +mackenboy +mackenna +mackenzie +mackerel +mackereler +mackereling +mackerels +mackernan +mackeson +mackey +mackeyville +mackham +mackie +mackin +mackinawcity +mackinaws +mackinlay +mackinnon +mackins +mackintosh +mackintoshes +mackle +macklem +mackleworth +mackley +macklike +macklin +macklis +macko +mackrell +mackridge +mackrimmond +macks +macksburg +mackscreek +macksinn +macksville +mackville +mackw +mackx +macky +mackz +mackzum +macl +maclachlan +maclachlen +maclachman +maclaine +maclaire +macland +maclane +maclare +maclaren +maclaurin +macle +maclean +macleary +macleaya +macled +macleish +maclellan +maclennan +macleod +maclib +maclisp +maclura +maclurea +maclurin +maclyn +macm +macmahon +macmaker +macmartin +macmasters +macmeekin +macmichael +macmill +macmillan +macmillanite +macmillian +macmonachie +macmorris +macmullin +macmurray +macn +macnab +macnabb +macnally +macnamara +macnaughton +macnee +macneil +macneill +macnelly +macnet +macnicol +macnicoll +maco +macollum +macomb +macomber +macomw +macon +maconde +maconite +macoosh +macopen +macoris +macory +macos +macp +macpgp +macphail +macpherson +macpost +macq +macquari +macquarie +macquarrie +macque +macqueen +macquistan +macr +macradenous +macrae +macrames +macrander +macrandrous +macrauchene +macrauchenia +macready +macreedy +macro +macroanalyst +macrobian +macrobiosis +macrobiote +macrobiotic +macrobiotics +macrobiotus +macroblast +macrobrachia +macrocarib +macrocarpous +macrocentrus +macrocephaly +macrochaeta +macrocheilia +macrochelys +macrochira +macrochiran +macrochires +macrochiria +macrocladous +macroclimate +macrococcus +macrocolous +macrocoly +macrocornea +macrocosm +macrocosmic +macrocosmos +macrocosms +macrocyst +macrocystis +macrocyte +macrocytic +macrocytosis +macrodactyl +macrodactyly +macrodomatic +macrodome +macrodont +macrodontia +macrodontism +macroelement +macroergate +macrofarad +macrogamete +macrogamy +macrogastria +macroge +macroglossia +macrognathic +macrograph +macrographic +macrography +macroje +macrolib +macrology +macromagic +macromania +macromastia +macromazia +macromedia +macromelia +macromeral +macromere +macromeric +macromerite +macromeritic +macrometer +macromethod +macromyelon +macron +macrons +macronuclear +macronucleus +macroon +macrophagus +macrophoma +macrophysics +macropia +macroplasia +macroplastia +macropleural +macropodia +macropodidae +macropodinae +macropodine +macropodous +macroprism +macropro +macroproblem +macropsia +macropteran +macropterous +macropus +macropygia +macropyramid +macrorhinia +macrorhinus +macrorie +macros +macroscelia +macroscian +macroseism +macroseismic +macroseptum +macroses +macrosmatic +macrosomatia +macrosomia +macrospore +macrosporic +macrosporium +macrostachya +macrostomia +macrostylous +macrotape +macrotapes +macrothere +macrotherium +macrotherm +macrotia +macrotin +macrotolagus +macrotome +macrotone +macrotous +macrourid +macrouridae +macrourus +macrow +macroworld +macroy +macrozamia +macrura +macrural +macruran +macruroid +macrurous +macs +macsupport +macsween +macsyma +mact +mactation +mactavish +mactcp +mactra +mactridae +mactroid +macu +macua +macuata +macuca +macuch +macula +maculai +macular +maculas +maculate +maculated +maculates +maculating +maculation +maculations +macule +maculicole +maculicolous +maculiferous +maculose +macuna +macungie +macuni +macurap +macurapi +macusa +macusari +macushi +macushikapon +macusi +macuspana +macussi +macuta +macv +macw +macwhite +macx +macy +macz +maczynski +mada +madagali +madagan +madagascan +madagascar +madagass +madai +madak +madaklasht +madaklashti +madaleine +madalena +madalene +madalone +madalyn +madames +madams +madan +madang +madani +madanin +madansky +madapollam +madar +madaras +madariaga +madaripur +madarosis +madarotic +madawaska +madbrain +madbrained +madcap +madcaply +madcaps +madchen +madda +maddala +maddalena +madded +maddened +maddening +maddeningly +maddens +madder +madderish +maddern +madders +madderwort +maddest +maddi +maddie +maddigan +madding +maddingly +maddish +maddix +maddle +maddock +maddocks +maddog +maddrbody +maddrhead +maddrmain +maddrsubj +maddrsum +maddy +made +madeanvin +madecase +madefaction +madefy +madegassy +madegugusu +madeiran +madeiras +madel +madelaine +madeleine +madelena +madelene +madelia +madelin +madelina +madeline +madella +madelle +madelon +madelyn +mademoiselle +maden +madenassa +madenasse +mader +madera +madero +maderos +madescent +madest +madga +madge +madgett +madhatter +madhaus +madhavan +madhesi +madhivi +madhouses +madhra +madhuca +madhur +madhura +madhusudan +madhva +madhya +madi +madia +madian +madid +madidans +madidwana +madie +madiga +madigan +madiha +madiin +madija +madik +madill +madin +madinah +madinat +madine +madingo +madingou +madinka +madinnisane +madison +madisonburg +madisonlake +madisonmills +madisonville +madisterium +maditi +madiya +madja +madjid +madjingay +madjingaye +madl +madlen +madlena +madlin +madling +madly +madlyn +madman +madmannah +madmax +madmed +madmen +madmenah +madnep +madness +madnesses +mado +madoc +madole +madolyn +madon +madonna +madonnahood +madonnaish +madonnalike +madonnas +madonnna +madoqua +madotheca +madou +madrague +madras +madrasah +madrases +madrasi +madrassi +madre +madrecita +madreline +madreperl +madrepora +madreporacea +madreporaria +madrepore +madreporian +madreporic +madreporite +madreporitic +madres +madrid +madrier +madrigal +madrigaler +madrigaletto +madrigalian +madrigalist +madrigals +madrigo +madrilene +madrilenian +madriver +madriz +madron +madrona +madrone +madrones +mads +madsen +madship +madu +maducal +madukayang +madungore +madur +madura +madurese +maduri +maduric +maduro +madutara +maduwonga +madv +madvig +madwand +madweed +madwoman +madwomen +madwort +mady +madyan +madyo +maeandra +maeandrina +maeandrine +maeandrinoid +maeandroid +maecenas +maecenasship +maechtlinger +maeda +maedae +maedchen +maedi +maegan +maegbote +maeglin +maehara +maehongson +maejima +maekhong +maelcum +maelstrom +maelstroms +maemacterion +maemi +maemorae +maenad +maenades +maenadic +maenadism +maenads +maenaite +maenalus +maenge +maenidae +maennling +maenpaa +maeonian +maeonides +maerose +maesai +maeshiro +maesot +maestoso +maestosos +maestri +maestro +maestros +maeusel +maeva +maevo +maevsky +maewo +maeya +maeystown +mafa +mafea +mafenter +mafeteng +maffei +maffel +maffia +maffias +maffick +mafficker +maffioli +maffle +mafflin +mafia +mafias +mafic +mafilau +mafindo +mafiosi +mafioso +mafoo +mafoor +mafoorsch +mafraq +mafu +mafufu +mafune +mafura +maga +magabara +magadalene +magadali +magadhan +magadhi +magadige +magadis +magadize +magahat +magahi +magaji +magalensia +magali +magalia +magallanes +magalona +magalore +magalova +magaly +magam +magambilis +magana +maganchi +magang +magani +magar +magari +magarill +magarkura +magars +magas +magaya +magazinable +magazinage +magazine +magazinelet +magaziner +magazines +magazinette +magazinish +magazinism +magazinist +magaziny +magba +magbee +magbiambo +magbish +magd +magda +magdaia +magdala +magdalen +magdalena +magdalene +magdalenes +magdalenian +magdalens +magdeburg +magdelana +magdelena +magdelene +magdelieine +magdi +magdiel +magdumate +magdy +mage +maged +magee +magelink +magelis +magellan +magellanian +magellanic +magellass +magen +magenbruch +magens +magentas +mager +mages +maggart +magged +maggee +maggi +maggie +maggievalley +maggio +maggione +maggiore +maggle +maggot +maggotbox +maggotiness +maggotpie +maggots +maggott +maggoty +maggs +maggy +magh +maghar +magharibi +maghaya +magherafelt +maghi +maghori +maghreb +maghrebi +maghrib +maghribi +maghsoodloo +magi +magian +magianism +magians +magic +magical +magicalize +magically +magicbar +magicdom +magician +magicians +magicianship +magicked +magicking +magicks +magics +magid +magidson +magik +magilavy +magindanao +magindanaon +magindanaw +magindi +maginley +maginot +magion +magique +magiric +magirics +magirist +magiristic +magirologist +magirology +magirona +magism +magister +magisterium +magisters +magistery +magistracies +magistracy +magistral +magistrality +magistrally +magistrand +magistrant +magistrate +magistrates +magistratic +magistrative +magistrature +magistrelli +maglemose +maglemosean +maglemosian +maglena +maglev +magliari +maglione +magloire +magma +magmar +magmas +magmatic +magnan +magnani +magnascope +magnascopic +magnates +magnateship +magne +magnelectric +magneoptic +magnes +magnesial +magnesian +magnesias +magnesic +magnesium +magness +magnet +magneta +magnetic +magnetical +magnetically +magneticdisk +magnetician +magnetics +magnetify +magnetimeter +magnetism +magnetisms +magnetist +magnetitic +magnetizable +magnetize +magnetized +magnetizer +magnetizers +magnetizes +magnetizing +magneto +magnetobell +magnetod +magnetogram +magnetograph +magnetoid +magnetometer +magnetometry +magnetomotor +magneton +magnetons +magnetooptic +magnetophone +magnetos +magnetoscope +magnets +magni +magnicaudate +magnier +magnifiable +magnific +magnifical +magnifically +magnificat +magnifice +magnificence +magnificent +magnifico +magnificoes +magnified +magnifier +magnifiers +magnifies +magnifique +magnify +magnifying +magniloquent +magniloquy +magnin +magnipotence +magnipotent +magnisia +magnisonant +magnitka +magnitude +magnitudes +magno +magnoferrite +magnolia +magnoliaceae +magnolias +magnon +magnons +magnozzi +magnum +magnums +magnus +magnuson +magnussen +magnusson +magnya +magobineng +magocsi +magodhi +magodi +magodro +magoeba +magog +magon +magong +magongo +magori +magot +magoumaz +magoun +magoya +magpiash +magpie +magpied +magpieish +magpies +magrath +magrathea +magre +magreb +magri +magrill +magrini +magritte +mags +magsman +magtape +magu +magua +maguari +maguelon +maguemi +maguey +magueys +maguindanao +maguindanaon +maguire +magur +magura +magurie +magus +maguzawa +magwaram +magwe +magwitch +magwood +magyar +magyaran +magyarism +magyarize +magyarok +magyars +maha +mahabad +mahaffee +mahaffey +mahaga +mahagi +mahajana +mahajanga +mahakali +mahakam +mahal +mahala +mahalah +mahalaleel +mahalanobis +mahalath +mahaleb +mahali +mahalia +mahall +mahalla +mahallati +mahama +mahamad +mahamat +mahamida +mahan +mahana +mahanaim +mahanakhon +mahandan +mahanehdan +mahanoycity +mahanoyplane +mahant +mahanta +mahar +maharadaha +maharai +maharaja +maharajah +maharajahs +maharajas +maharajrana +maharaly +maharam +maharana +maharanee +maharanees +maharanga +maharani +maharanis +maharao +maharashtra +maharashtri +maharastra +maharathi +maharawal +maharawat +mahari +maharis +maharishi +maharishis +mahas +mahasi +mahaska +mahass +mahath +mahathir +mahatma +mahatmaism +mahatmas +mahattata +mahavite +mahayanism +mahayanistic +mahazioth +mahbeer +mahboob +mahdi +mahdian +mahdiship +mahdism +mahdist +mahdiyah +mahduedurage +mahe +mahei +mahendra +maher +mahesh +maheu +maheux +mahi +mahican +mahieuy +mahiger +mahigi +mahili +mahin +mahinaku +mahjaris +mahjong +mahjongg +mahjonggs +mahjongs +mahkamah +mahl +mahlah +mahle +mahlee +mahler +mahli +mahlig +mahlites +mahlon +mahlowe +mahlstick +mahmal +mahmood +mahmoud +mahmud +mahmudi +mahmut +mahn +mahnjed +mahnke +mahnomen +maho +mahoe +mahoganies +mahoganize +mahogany +mahoitre +mahol +maholi +maholtine +mahomet +mahometry +mahon +mahone +mahonen +mahoney +mahongwe +mahonia +mahonias +mahopac +mahopacfalls +mahorais +mahoran +mahori +mahorian +mahorib +mahotari +mahotin +mahottari +mahound +mahout +mahouts +mahr +mahra +mahrah +mahran +mahri +mahsa +mahseer +mahshad +mahsud +mahsudi +mahto +mahtowa +mahu +mahua +mahuang +mahuayana +mahum +mahwa +mahwah +mahwit +mahzor +maia +maiabare +maiacca +maiak +maiana +maiani +maianthemum +maibaum +maibi +maible +maibrat +maibrunn +maichmoudova +maici +maid +maida +maidan +maidel +maiden +maidenhairs +maidenhead +maidenheads +maidenhood +maidenish +maidenism +maidenlike +maidenliness +maidenly +maidenrock +maidens +maidenship +maidenweed +maidhood +maidhoods +maidie +maidish +maidism +maidisn +maidkin +maidlab +maidlike +maidling +maidment +maids +maidservant +maidservants +maidsir +maidsville +maidu +maiduguri +maidxpm +maidy +maiefic +maien +maier +maieutic +maieutical +maieutics +maiga +maighdiln +maigo +maigorzata +maigre +maigret +maiha +maiheari +maihiri +maii +maiid +maiidae +maijala +maika +maikawa +maikel +maiko +maikor +mail +mailability +mailable +mailadmin +mailalert +mailang +mailbag +mailbags +mailbomber +mailbox +mailboxes +mailcatcher +mailclad +maile +mailed +mailedit +mailer +mailern +mailers +mailes +mailformat +mailgate +mailguard +mailgw +mailhost +mailie +mailing +mailinglist +mailings +mailjail +maillard +maillechort +mailler +mailless +mailleux +mailloop +maillot +maillots +mailly +mailman +mailout +mailplane +mailq +mailreader +mailrelay +mailrobot +mailroom +mailrus +mails +mailstate +mailsystem +mailtool +mailu +mailuan +mailwas +mailwoman +mailwomen +maima +maimai +maimaka +maimana +maimed +maimedly +maimedness +maimer +maimers +maiming +maimiti +maimon +maimonidean +maimonist +maims +main +maina +mainactor +mainakizhi +mainan +mainardi +mainboard +mainboards +maindombe +maindonald +maine +maineffect +maines +mainesburg +maineville +mainferre +mainform +mainframe +mainframes +maingtha +mainlander +mainlanders +mainlands +mainlined +mainliner +mainliners +mainlines +mainling +mainlining +mainly +mainmast +mainmasts +mainmenu +mainmortable +mainoke +mainoo +mainour +mainpast +mainpernable +mainpernor +mainpin +mainport +mainpost +mainprise +mainpuri +mains +mainsail +mainsails +mainsheet +mainspring +mainsprings +mainstay +mainstays +mainstream +mainstreams +mainstreeter +maint +maintain +maintainable +maintainance +maintained +maintainer +maintainers +maintainest +maintaining +maintainment +maintainor +maintains +maintance +maintenance +maintenances +maintenon +maintien +maintop +maintopman +maintopmast +maintops +maintopsail +mainville +mainwaring +maio +maiodom +maioid +maioidea +maioidean +maioli +maiongkong +maiongong +maiopitian +maioyesan +maipua +maipuran +maipure +mair +maira +mairasi +mairatour +maire +mairead +mairesse +mairiri +mais +maisan +maisawiet +maisch +maisefa +maisey +maish +maisie +maisin +maison +maisonette +maisonettes +maisonneuve +maisons +maisry +maist +maitara +maitaria +maite +maithili +maitilde +maitili +maitland +maitlandite +maitli +maitlin +maitres +maitreya +maitsi +maiurno +maius +maivara +maiwa +maiya +maiyach +maiyah +maiyon +maiz +maize +maizebird +maizenic +maizer +maizes +maizie +maiziere +maja +majagga +majagua +majak +majang +majanjiro +majapay +majchrzak +majd +majda +maje +majeed +majek +majel +majelis +majene +majera +majercik +majere +majerhofer +majernik +majesta +majestic +majestical +majestically +majesticness +majesties +majestious +majesty +majestyship +majewski +majhi +majhikorwa +majhkhanda +majhkumaiya +majhvar +majhwar +maji +majias +majica +majid +majik +majinda +majingai +majinngay +majinya +majlis +majluta +majmudar +majo +majogo +majolica +majolist +majoon +major +majora +majoram +majorate +majoration +majorca +majorcan +majordome +majordomo +majored +majorem +majorette +majorettes +majorheading +majorie +majorin +majoring +majorism +majorist +majoristic +majorities +majority +majorization +majorize +majorizing +majormud +majorov +majorpart +majors +majorship +majorskan +majsa +majuba +majubim +majugu +majumdar +majurec +majuro +majuruna +majury +majuscular +majuscule +majuscules +majuu +maka +makaa +makaanjem +makabana +makabayan +makable +makabuky +makada +makadam +makah +makaha +makaheeliga +makakat +makakau +makale +makam +makamba +makanas +makanda +makangara +makanjem +makapa +makara +makaraka +makarenko +makari +makariki +makarim +makarom +makarov +makarova +makarub +makarup +makary +makasai +makasar +makassa +makassai +makassar +makassarese +makatao +makatea +makatian +makattao +makawao +makaweli +makaz +makbon +makdink +make +makeable +makebate +makebelieve +makebox +makecakeins +makecopy +makedoc +makedom +makedonija +makee +makefast +makefile +makefiles +makeham +makeke +makel +makelai +makem +makenene +makengo +makeni +makenzie +makeobj +makepeace +makepntlist +maker +makere +makeready +makeress +makers +makership +makes +makesh +makeshift +makeshifts +makeshifty +makest +maket +maketh +maketov +maketurn +makeups +makeweight +makework +makeyev +makgoba +makhaon +makharadze +makheloth +makhmud +makhram +makhuana +makhuva +makhuwa +makhzan +maki +makialiga +makian +makiang +makiara +makie +makiko +makimono +makin +makinen +making +makinga +makings +makino +makins +makinson +makintoy +makintrash +makio +makira +makiritare +makkah +makkedah +makkede +makki +maklad +maklaj +maklaumkarta +maklere +makleu +maklew +makluk +mako +makoa +makoane +makodo +makogai +makohoniuk +makoid +makoki +makolkol +makoma +makon +makonda +makonde +makong +makoroko +makoti +makoto +makoua +makover +makowski +makrana +makrani +makridakis +makroh +makrohtayp +makrol +makroskelic +makruklaplei +maksakova +maksim +maksimov +maksimovic +maksoud +maksuta +maksutov +maktesh +maktum +maku +makua +makuch +makudukudu +makuguariba +makuk +makuleke +makumira +makuna +makunado +makura +makurapi +makurdi +makushi +makuta +makutu +makuwana +makuxi +makwa +makwanpur +makware +makwena +makwetu +makya +mala +malaanonang +malabar +malabarese +malabathrum +malabo +malabu +malacanthid +malacanthine +malacanthus +malacca +malaccan +malaccident +malaceae +malaceous +malachi +malachia +malachias +malachini +malachios +malachite +malacia +malaclemys +malacobdella +malacoderm +malacoid +malacolite +malacologist +malacology +malacon +malacopod +malacopoda +malacopodous +malacosoma +malacostraca +malactic +malaczech +maladapted +maladcity +maladdress +maladie +maladies +maladive +maladjusted +maladjustive +maladroitly +maladventure +malady +malaga +malagheti +malagigi +malagma +malaguena +malahack +malaher +malahide +malai +malaises +malaita +malaitan +malaitasan +malaka +malakai +malakal +malakanagiri +malakand +malaker +malakhel +malakin +malakka +malakmalak +malakoff +malakote +malakova +malakula +malala +malalamai +malalignment +malalulu +malam +malamawi +malamba +malambo +malami +malamuni +malamute +malamutes +malan +malana +malandered +malanders +malandrinoa +malandrous +malang +malanga +malangas +malango +malanie +malanje +malankuravan +malanos +malanowicz +malapaho +malapandaram +malaparte +malapert +malapertly +malapertness +malapi +malapipi +malapropian +malapropish +malapropism +malapropisms +malapropoism +malapropos +malaprops +malapterurus +malar +malarek +malaren +malaria +malarian +malariaproof +malarias +malarin +malarioid +malariology +malarious +malarkey +malarkeys +malarkuti +malarky +malaroma +malaryan +malas +malasanga +malasapsap +malate +malatesta +malathion +malati +malatia +malattress +malatya +malaueg +malautra +malavaqua +malave +malavedan +malavetan +malavi +malavia +malavoy +malaweg +malawi +malawian +malawians +malawibeira +malawinacala +malax +malaxable +malaxage +malaxate +malaxation +malaxator +malaxerman +malaxis +malaya +malayadiars +malayalam +malayalani +malayali +malayalim +malayan +malayans +malayarabic +malayic +malayicdayak +malayize +malaykerinci +malaynon +malayo +malayoid +malays +malaysia +malaysian +malaysians +malayu +malba +malbabirifor +malbe +malbecq +malbehavior +malben +malbete +malbeth +malbot +malbott +malbrouck +malcham +malchiah +malchiel +malchielites +malchijah +malchin +malchiram +malchishua +malchite +malchus +malco +malcolm +malcom +malcomb +malcon +malconceived +malcontented +malcontently +malcontents +malcreated +malda +maldanado +maldavaca +malden +maldenbridge +malderone +maldesigned +maldeveloped +maldigestion +maldini +maldirection +maldives +maldivian +maldonado +maldonite +maldonne +malduck +male +malean +malease +maleate +maleb +malebolge +malebolgian +malebolgic +malec +malecite +malecot +maledicent +maledicted +malediction +maledictions +maledictive +maledictory +maledicts +maledon +maleducation +malee +malefaction +malefactions +malefactor +malefactors +malefactory +malefactress +malefemale +malefic +malefical +malefically +maleficence +maleficent +maleficently +malefices +maleficial +maleficiate +maleficio +malei +maleic +maleinoid +malek +maleka +maleku +malekula +malele +maleleel +malella +malemutes +malena +malencon +malende +malene +maleness +malengine +maleni +malenkom +malenok +malenutwe +maleo +maler +malerar +maleruption +males +malesherbia +maleski +malet +malethia +maleu +maleuda +maleukilenge +maleva +malevich +malevolence +malevolency +malevolently +malewde +malexecution +maley +malfa +malfaxal +malfeasance +malfeasantly +malfeasants +malfed +malfit +malformation +malformity +malfortune +malfunction +malfunctions +malgache +malgbe +malgo +malgorzata +malgosia +malgrace +malgudi +malguzar +malguzari +malgwa +malgwe +malhatee +malhesti +malheur +malhi +malhonest +malhotra +malhouse +malhygiene +mali +malia +malian +maliaros +malibu +malic +malice +maliceful +maliceproof +malices +malicho +malicious +maliciously +malick +malicorium +malicz +maliepaard +malietoa +maliferous +maliform +maligan +maligano +maligatan +malignance +malignancies +malignancy +malignant +malignantly +malignation +maligned +maligner +maligners +malignify +maligning +malignities +malignity +malignly +malignment +maligns +maligo +malihini +malik +malika +malikadna +malikala +malikana +malikh +maliki +malikite +maliko +malikyan +malila +malili +malilia +malima +malimba +malimpung +malimut +malin +malina +malinaltepec +malinau +malinda +malinde +maline +malines +malinfluence +malinga +malinger +malingered +malingerer +malingerers +malingering +malingers +malingery +malinka +malinke +malinois +malinouskaia +malinowskite +malinta +malintent +malinvaud +malipiere +malis +malisa +maliseet +malisic +maliski +malism +malison +malissa +malissia +malist +malistic +malita +maliyad +malizia +maljamar +malka +malkani +malkhmu +malki +malkia +malkiewicz +malkin +malkinson +malkite +malko +malkovich +mall +malla +malladrite +mallalieu +mallam +mallango +mallangong +mallard +mallardite +mallards +mallare +malle +malleability +malleableize +malleablize +malleably +malleal +mallealle +mallear +malleate +malleation +mallebre +malled +mallee +mallei +malleifera +malleiferous +malleiform +mallein +malleinize +mallela +mallemuck +mallenberg +malleolable +malleolar +malleolus +maller +mallery +malleson +mallets +mallett +malleus +malley +mallie +mallik +malling +mallinson +mallis +mallison +mallissa +malliwi +mallo +malloam +malloc +mallon +mallophaga +mallophagan +mallophagous +mallorca +mallorie +mallorquin +mallory +malloseismic +mallot +mallothi +mallott +mallotus +mallows +mallowwort +malloy +mallozzi +malls +malluch +mallum +mallus +mally +malm +malmaison +malmal +malmariv +malmesbury +malmignatte +malmo +malmohus +malmquista +malmqvist +malmsey +malmsjoe +malmsteen +malmsten +malmstone +malmstrom +malmy +malngin +malnourished +malnutrite +malo +maloccluded +malodor +malodorant +malodorous +malodorously +malodors +maloh +malojilla +malol +malolo +malom +malon +malonate +malone +maloneton +maloney +malonic +malonyl +malonylurea +malope +maloperation +malopolska +malorganized +malorie +malory +maloso +malot +maloti +malott +malotte +malou +malouah +maloy +malpa +malpaharia +malpais +malpas +malpelo +malpighia +malpighian +malplaced +malpoise +malposition +malpractice +malpracticed +malpraxis +malpropriety +malreasoning +malrotation +malshapen +malstrm +malta +maltabend +maltable +maltahohe +maltam +maltase +maltby +malted +malteds +malter +maltese +maltha +malthe +malthouse +malthus +malthusian +malthusiast +malti +maltier +maltiness +malting +maltman +malto +maltobiose +maltodextrin +maltolte +maltravers +maltreated +maltreating +maltreatment +maltreator +maltreats +malts +maltster +maltu +malturned +maltworm +malty +maltz +malu +malua +malual +maluala +maluba +maludzinski +malugen +maluku +malula +malunda +malunion +malurinae +malurine +malurus +malus +maluso +maluu +malva +malvaceae +malvaceous +malvales +malvani +malvasia +malvasian +malvastrum +malvern +malverne +malversation +malverse +malvert +malvi +malvin +malvina +malvinas +malvoisie +malvolia +malvolio +malvolition +malwa +malwada +malwal +malwi +maly +malynda +malynowsky +malyon +malyshev +malyszka +malzacher +malzahn +malzovia +mama +mamaa +mamadou +mamainde +mamak +mamakos +mamala +mamaloni +mamama +maman +mamanguape +mamanwa +mamaq +mamara +mamaregho +mamaroneck +mamas +mamasa +mamasani +mamashey +mamata +mamba +mambae +mambai +mambar +mambas +mambasa +mambay +mambaya +mambazo +mambe +mamberamo +mambere +mambetto +mambi +mambila +mambilavute +mambilla +mambisa +mambo +mamboed +mamboes +mamboing +mamboru +mambos +mambukush +mambump +mambwe +mambwelungu +mamdayawan +mame +mamean +mamedja +mameh +mameliere +mamelon +mamelonation +mameluco +mameluke +mamelukes +mamenyan +mamercus +mamers +mamertine +mameyes +mameys +mamfe +mamgbay +mamgbei +mami +mamiani +mamidza +mamie +mamies +mamila +mamilius +mamisa +mamke +mamlatdar +mammae +mammalgia +mammalia +mammalians +mammality +mammalogical +mammalogist +mammalogists +mammalogy +mammals +mammary +mammas +mammate +mammea +mammectomy +mammee +mammer +mammet +mammey +mammeys +mammie +mammies +mammifera +mammiferous +mammiform +mammiliform +mammilla +mammillar +mammillaria +mammillary +mammillate +mammillated +mammillation +mammilliform +mammilloid +mammitis +mammock +mammogen +mammogenic +mammogram +mammographic +mammography +mammon +mammondom +mammoniacal +mammonian +mammonish +mammonism +mammonist +mammonistic +mammonite +mammonitish +mammonize +mammonolatry +mammons +mammonteus +mammoth +mammothcave +mammothlakes +mammothrept +mammoths +mammotomy +mammula +mammular +mammut +mammutidae +mammy +mamnaa +mamo +mamochka +mamoedjoe +mamoedjoesch +mamore +mamori +mamoria +mamoru +mamou +mamoulides +mampa +mampoko +mamprule +mampruli +mamprusi +mampukush +mampwa +mamre +mamu +mamudju +mamuga +mamuju +mamukos +mamunia +mamusi +mamvu +mamvuefe +mamy +manabeshima +manabi +manabozho +manacing +manacle +manacled +manacles +manacling +manacus +manaen +manag +managalasi +managari +manage +manageable +manageably +managed +managee +manageless +management +managemental +managements +manager +managerdom +manageress +managerial +managerially +managers +managership +managery +manages +managing +managobla +managua +managuan +managulasi +manahan +manahath +manahawkin +manahethites +manahiki +manaia +manairisu +manaism +manajo +manaka +manakin +manakinsabot +manal +manala +manalese +manam +manamah +manambu +manami +manan +manana +mananahua +mananas +manandafy +manandhar +manang +mananga +manangba +manangeer +manangi +manape +manapiare +manard +manart +manas +manasquan +manassa +manassas +manasseh +manasses +manassites +manat +manatees +manati +manatidae +manatine +manatoid +manatus +manatutu +manau +manaus +manavel +manavelins +manaviche +manawa +manawan +manawatu +manawi +manaxo +manay +manaze +manazo +manbae +manbai +manbei +manbhum +manbird +manbot +manbu +manby +mancagne +mancang +mancanha +manceau +mancel +mancelona +mancera +manch +mancha +manchaca +manchad +manchati +manchaug +manche +manchego +manchester +manchestrian +manchet +manchets +manchia +manchien +manchineel +manchinere +manchineri +manchini +manchmal +manchu +manchukuo +manchuria +manchurian +manchurians +manchus +mancinelli +mancini +mancinism +mancipable +mancipant +mancipate +mancipation +mancipative +mancipatory +mancipee +mancipium +manciple +mancipleship +mancipular +mancono +mancos +mancova +mancunia +mancunian +mancus +mancusco +mancuso +mand +manda +mandaba +mandaean +mandaeism +mandage +mandahuaca +mandaic +mandailing +mandaite +mandak +mandakui +mandal +mandala +mandalas +mandalay +mandali +mandalic +mandament +mandamuses +mandan +mandana +mandankwe +mandant +mandapengo +mandar +mandara +mandarah +mandaree +mandari +mandarin +mandarinate +mandarindom +mandariness +mandarinic +mandarinism +mandarinize +mandarins +mandarinship +mandatary +mandate +mandated +mandatee +mandates +mandating +mandation +mandative +mandator +mandatorily +mandators +mandatory +mandatum +mandauaca +mandaue +mandawa +mandawaka +mandaya +mandayan +mande +mandeali +mandeb +mandekan +mandel +mandelate +mandelaut +mandelbrodt +mandelbrot +mandelic +mandell +mandels +mandem +mander +mandera +manderley +manders +manderson +mandeville +mandharsche +mandi +mandible +mandibles +mandibula +mandibular +mandibulary +mandibulata +mandibulate +mandibulated +mandie +mandil +mandilion +manding +mandinga +mandingan +mandingi +mandingo +mandingue +mandinka +mandinque +mandiri +mandiyali +mandja +mandjalpingu +mandjaque +mandjia +mandju +mandl +mandla +mandlaha +mando +mandobbo +mandobo +mandok +mandola +mandolin +mandoline +mandolinist +mandolinists +mandolins +mandolute +mandom +mandop +mandora +mandore +mandra +mandragora +mandrakes +mandrakis +mandre +mandrels +mandriarch +mandrica +mandril +mandrill +mandrills +mandrin +mandroid +mandruka +mandrusov +mandua +manduca +manducable +manducate +manducation +manducatory +manduka +manduke +mandusir +mandy +mandyak +mandyas +mane +maneaba +maneao +maneater +maneco +maned +manefield +manege +maneger +manegir +maneh +manehas +manehave +manei +manek +maneless +manelli +manelo +manem +manene +manengouba +manenguba +manent +manenti +maneorendah +maner +manera +manerial +manero +manes +manesgazda +manesheet +maness +manessy +manet +manette +manetti +manettia +maneuver +maneuverable +maneuvered +maneuverer +maneuvering +maneuverings +maneuvers +maneuvrable +maneva +manewry +maney +manez +manfacturers +manfield +manfred +manfreda +manfredi +manfridi +manfried +manful +manfully +manfulness +mang +manga +mangabeira +mangabey +mangager +mangagn +mangaia +mangal +mangala +mangalaa +mangalavid +mangali +mangalia +mangalili +mangalore +mangan +manganate +manganblende +manganeisen +manganese +manganesian +manganetic +manganic +manganite +manganitu +manganium +manganize +manganja +manganji +manganosite +manganous +mangap +mangar +mangaragan +mangarai +mangarayi +mangareva +mangarevan +mangari +mangarla +mangas +mangasara +mangati +mangaya +mangayat +mangbai +mangband +mangbattu +mangbei +mangbele +mangbettu +mangbetu +mangbutu +mangbutuefe +mangdi +mangdikha +mangean +mangeao +manged +mangee +mangei +mangelas +mangelin +mangels +manger +mangerite +mangerr +mangerrian +mangers +manges +mangesh +mangey +mangga +manggang +manggar +manggarai +manggo +mangguar +mangham +mangi +mangiante +mangiare +mangier +mangiest +mangifera +mangily +mangin +manginess +mangini +mangione +mangisa +mangkaak +mangkahak +mangkak +mangkalua +mangkatip +mangkawagu +mangkettan +mangki +mangkir +mangkok +mangkong +mangkoong +mangkunge +mangkutana +mangle +mangled +mangleman +mangler +manglers +mangles +mangling +manglingly +mango +mangochi +mangoes +mangohick +mangold +mangole +mangoli +mangona +mangonel +mangonism +mangonize +mangonui +mangos +mangosteen +mangrass +mangrate +mangrove +mangroves +mangseng +mangsing +mangtangai +manguagan +mangue +manguin +mangul +mangum +mangwato +mangy +mangyan +manh +manhandle +manhandled +manhandles +manhandling +manhasset +manhattan +manhattanite +manhattanize +manhattans +manhatten +manhead +manheim +manhole +manholes +manhoods +manhours +manhunt +manhunter +manhunts +mani +mania +maniable +maniac +maniacal +maniacally +maniacs +manianga +manias +maniba +manic +manica +manicaland +manically +manicaria +manicate +manichaean +manichaeism +manichaeist +manichee +manicheism +manichord +manickam +manicke +manicole +manics +maniculatus +manicure +manicured +manicures +manicuring +manicurist +manicurists +manid +manidae +manide +manidipa +manie +maniema +manienie +manier +maniere +manieri +manif +manifest +manifestable +manifestant +manifested +manifester +manifesting +manifestive +manifestly +manifestness +manifesto +manifestoed +manifestoes +manifestos +manifests +manifold +manifolded +manifolder +manifolding +manifoldly +manifoldness +manifolds +manifoldwise +maniform +manify +manihot +maniiling +manijeh +manik +manikganj +manikinism +manikins +manikion +manila +manilas +maniling +manilla +manillas +manille +manimo +manimozhi +manina +maningrida +maninka +manioc +maniocas +maniocs +manion +maniototo +manipa +manipiari +maniple +maniples +manipula +manipular +manipulate +manipulated +manipulates +manipulating +manipulation +manipulative +manipulator +manipulators +manipulatory +manipur +manipuri +maniqui +manis +manisa +manish +manism +manist +manistee +manistic +manistique +manitene +manitenere +maniteneri +manitius +manito +manitoban +manitou +manitoubeach +manitoulin +manitous +manitowoc +manitrunk +manitsaua +manitsawa +manitswa +manitu +maniu +manius +maniva +manja +manjaca +manjack +manjaco +manjacu +manjak +manjaku +manjakupapel +manjar +manjhi +manjhia +manjiak +manjikasa +manjinder +manjit +manjuke +manjula +manjuy +mank +mankagne +mankaliya +mankanha +mankanya +mankato +manke +mankeeper +manketa +mankiewica +mankim +mankin +mankind +mankjal +manko +mankon +mankono +mankoong +mankowski +mankoya +manlea +manleder +manleigh +manless +manlessly +manlessness +manlet +manley +manlier +manliest +manlihood +manlike +manlikely +manlikeness +manlily +manliness +manling +manlius +manly +manmade +manmit +manmohan +manmonth +manmy +mann +manna +mannadi +mannadora +mannan +mannar +mannas +mannboro +manne +manned +mannequins +manner +mannerable +mannered +mannerhood +mannering +mannerisms +mannerist +manneristic +mannerize +mannerless +mannerliness +mannerly +manners +mannersley +mannersome +manness +mannford +manngrubbs +mannhardt +mannheim +mannheimar +manni +mannide +mannie +manniferous +mannify +mannikin +mannikinism +mannikins +mannin +manning +mannington +mannino +mannion +mannish +mannishly +mannishness +mannite +mannitic +mannitol +mannitose +mannix +mannkopf +manno +mannoers +mannoheptite +mannoheptose +mannonic +mannors +mannosan +mannose +mannschoice +mannsharbor +mannsville +mannucci +mannwhitney +manny +mannyod +mano +manoa +manoah +manobo +manoc +manocova +manoel +manoeuver +manoeuvered +manoeuvering +manoeuvre +manoeuvred +manoeuvreing +manoff +manofwar +manograph +manohar +manoita +manoj +manojit +manojlovic +manokin +manokotak +manokwari +manolakakis +manolakas +manolios +manolito +manolo +manombai +manomet +manometers +manometric +manometrical +manometries +manometry +manomin +manomotor +manon +manone +manop +manor +manorhouse +manorial +manorialism +manorialize +manors +manorship +manorville +manos +manoscope +manostat +manostatic +manou +manouch +manouche +manoukian +manov +manova +manowar +manowee +manowui +manpack +manpelle +manpoer +manpowers +manpreet +manque +manquin +manred +manrent +manresa +manrin +manroot +manrope +mans +mansaka +mansakan +mansard +mansarded +mansards +mansart +mansbridge +manscape +mansel +mansell +manservant +manservants +manses +mansfield +manship +mansi +mansibaber +mansim +mansinyo +mansion +mansional +mansionary +mansioned +mansioneer +mansionry +mansions +mansiy +mansjoerg +manslaughter +manslayer +manslayers +manslaying +manso +mansoanca +mansoanka +manson +mansonry +mansoor +mansour +mansoura +mansourati +mansouri +manstavicius +manstealer +manstealing +manston +manstopper +manstopping +mansuete +mansuetely +mansuetude +mansukha +mansum +mansur +mansura +mansurah +mansurov +mansursia +manszky +mant +manta +mantachie +mantador +mantal +mantan +mantana +mantangai +mantararen +mantas +manteau +manteaux +manteca +mantee +mantegna +manteke +mantelet +mantelets +manteline +mantell +mantelletta +mantellone +mantelpiece +mantelpieces +mantels +mantelshelf +manteltree +mantembu +manteno +manteo +manter +mantes +mantevil +manti +mantic +manticism +manticore +mantid +mantidae +mantids +mantilla +mantillas +mantinean +mantion +mantises +mantisia +mantispa +mantispid +mantispidae +mantissas +mantistic +mantizula +mantjiltjara +mantle +mantled +mantlepieces +mantles +mantleshelf +mantlet +mantling +mantlings +manto +mantodea +mantoid +mantoidea +mantologist +mantology +mantoloking +manton +mantorville +mantovano +mantra +mantraps +mantras +mantua +mantuamaker +mantuamaking +mantuan +mantuas +mantus +manty +mantz +mantzu +manu +manua +manual +manualii +manualism +manualist +manualiter +manually +manuals +manualsend +manuane +manuao +manubara +manubaran +manubrial +manubriated +manubrium +manubriums +manucaption +manucaptor +manucapture +manuche +manucode +manucodia +manucodiata +manuduce +manuduction +manuductor +manuductory +manuel +manuela +manuelito +manuelo +manuever +manueverable +manuevered +manuevers +manufactory +manufactural +manufacture +manufactured +manufacturer +manufactures +manugoro +manuilova +manuk +manuka +manukai +manukolu +manul +manum +manuma +manumanaw +manumanu +manumea +manumisable +manumissions +manumissive +manumits +manumitter +manumitting +manumotive +manupari +manuquiari +manurable +manurage +manurance +manure +manured +manureless +manurer +manures +manurial +manurially +manuring +manus +manusa +manuscriptal +manuscripts +manusela +manusina +manusquire +manuszak +manutagi +manuwe +manvantara +manvel +manvella +manver +manverse +manward +manwards +manwaring +manway +manwe +manweed +manwise +manx +manxman +manxome +manxwoman +many +manya +manyak +manyang +manyarring +manyberry +manycolored +manyeli +manyema +manyeman +manyemen +manyenye +manyfold +manyhued +manyi +manyika +manyness +manyone +manyplies +manyroot +manysided +manyu +manyukai +manyuke +manyway +manyways +manywhere +manywise +manz +manza +manzana +manzaneque +manzanero +manzangbaka +manzanilla +manzanillo +manzanola +manzarek +manzas +manzeri +manzetti +manzil +manzini +manzoni +maoch +maoism +maoist +maoists +maoli +maomao +maon +maona +maonan +maonites +maontoc +maopa +maopityan +maoridom +maorigin +maoriland +maorilander +maoris +maou +maoulida +mapach +mapache +mapaki +mapam +mapamoiwa +mapan +mapari +maparipan +mapath +mapau +mapaville +mapayo +mapclus +mapcom +mape +mapedit +mapen +mapena +mapes +mapheleba +maphrian +mapi +mapia +mapidian +mapike +mapile +mapilli +mapinduzi +mapiyakegata +mapland +maplay +maple +maplebush +maplecity +maplecrest +maplefalls +maplehill +maplelake +maplemount +maplepark +mapleplain +maplerapids +maples +mapleshade +maplesprings +maplesville +mapleton +maplevalley +mapleview +mapleville +maplewood +mapmaker +mapmakers +mapmaster +mapml +mapo +mapodi +mapor +maporese +maporoan +mapos +mapoye +mapoyo +mapp +mappable +mappapana +mapped +mapper +mappers +mappila +mappin +mapping +mappings +mappist +mapple +mappsville +mappy +maprik +maprocesses +maps +mapu +mapuche +mapuda +mapudungu +mapudungun +mapuera +mapun +mapute +maputo +maputongo +mapuwera +mapuya +mapwise +maquahuitl +maquette +maquettes +maqui +maquiri +maquiritai +maquiritare +maquiritari +maquis +maquoketa +maquon +maquoua +mara +maraba +marabel +marabotin +marabou +maraboue +marabous +marabout +marabouts +marabuto +maraca +maracaibo +maracaja +maracan +maracas +maracasero +marachek +marachi +marachuffsky +marachuk +maracle +maracock +maradi +maradia +maradim +marae +maragang +maragato +maragaus +maragoli +maragon +maragooli +maragoudakis +maragua +maragus +marah +marais +marajona +marajuana +marak +marakapas +marakei +marakwet +maral +maralah +maralango +maraliinan +maralinan +maram +marama +maramarandji +maramba +maramec +maramo +marampa +maramuni +maramures +maran +marana +maranao +maranatha +maranaw +maranda +marang +marangai +marangis +marango +marangoni +marangosoff +marangu +maranha +maranham +maranhao +marani +marania +maranne +marano +maranon +maranse +maranta +marantaceae +marantaceous +marantale +marantic +marantutul +maranunggu +maranz +maranzana +maraqo +marara +mararena +mararet +marari +mararie +mararino +mararit +maras +marasca +maraschino +maraschinos +marasco +marascuilo +marashi +marasi +marasliyan +marasmic +marasmius +marasmoid +marasmous +marasmus +marasri +marat +maratha +marathi +marathon +marathoner +marathonian +marathons +maratism +maratist +marato +marattia +marattiaceae +marattiales +marau +marauded +marauder +marauders +marauding +marauds +marauia +maravall +marave +maravedi +maravi +maravilha +marawaka +marawar +marawi +maraworno +marazzi +marba +marbach +marbachia +marbaise +marbaix +marbe +marbelize +marberg +marble +marblecity +marbled +marblefalls +marblehead +marbleheader +marblehill +marbleize +marbleized +marbleizer +marbleizes +marbleizing +marblelike +marblemount +marbleness +marbler +marblerock +marblers +marbles +marblewood +marblier +marbliest +marbling +marblings +marblish +marbly +marbrinus +marburg +marbury +marc +marcal +marcan +marcantant +marcanti +marcantonio +marcas +marcasite +marcasitic +marcasitical +marcasson +marcaton +marce +marceau +marcel +marcela +marcelaine +marcelia +marceline +marcelino +marcelissen +marcell +marcella +marcelle +marcelled +marceller +marcellian +marcellin +marcellina +marcelline +marcellino +marcello +marcellus +marcelo +marcels +marcescence +marcescent +marcey +marcgravia +march +marchais +marchal +marchand +marchandeau +marchant +marchantia +marchard +marchat +marchaud +marchbanks +marche +marcheck +marched +marchedst +marchelle +marcher +marcheron +marchers +marches +marchesa +marchese +marchesi +marchesini +marchetti +marchetto +marchi +marchie +marchigiano +marching +marchio +marchioness +marchite +marchland +marchman +marchment +marchmont +marchoiness +marchon +marchpane +marchuk +marci +marcia +marcial +marciano +marcic +marcid +marcie +marcile +marcilio +marcille +marcin +marciniuk +marcio +marcionism +marcionist +marcionite +marcionitic +marcionitish +marcionitism +marcite +marclay +marco +marcobrunner +marcola +marcollum +marcom +marcomanni +marconi +marconia +marconigram +marconigraph +marcor +marcos +marcosian +marcote +marcottage +marcotte +marcoux +marcovic +marcovicci +marcovitch +marcoz +marcs +marculius +marcum +marcus +marcushook +marcusshepp +marcy +marczewski +marda +mardan +marden +mardi +mardia +mardias +mardil +mardin +mardirosian +marduk +mardy +mare +mareah +mareau +mareblob +marec +mareca +marecek +marechal +marehalan +marehan +marei +mareisland +marek +marekanite +marella +marelli +marematlou +maremgi +maremma +maremmatic +maremmese +maren +marena +mareng +marengere +marenggar +marengge +marenghi +marengo +marenisco +marennin +mareno +marentes +mareotic +mareotid +mares +marescent +maresciallo +mareshah +maresi +maresjew +maressa +maret +maretskaya +marette +maretti +maretyabin +maretzi +mareuil +mareva +marewumiri +marfa +marfeau +marfield +marfik +marfire +marfrance +marg +marga +margalit +margalo +margarate +margarelon +margaret +margareta +margarete +margaretha +margarethe +margaretta +margarette +margaric +margarida +margariet +margarifiter +margarin +margarins +margarita +margarite +margaritifer +margarito +margarodes +margarodid +margarodinae +margarodite +margaropus +margatecity +margaux +margay +margays +marge +margeaux +margeison +margeline +margent +margented +margents +margerison +margery +marges +marget +margetson +margette +marghanna +margharita +margherita +marghetis +marghi +margi +margia +margibi +margic +margie +margin +marginality +marginalize +marginalized +marginally +marginals +marginate +marginated +margination +margined +marginella +marginheight +marginiform +margining +margins +marginwidth +margit +margittai +margo +margoli +margolin +margolis +margoni +margorie +margos +margosa +margosatubig +margoschaula +margot +margotta +margraaf +margravate +margrave +margravely +margraves +margravial +margraviate +margravine +margret +margrethe +margriet +margrit +margu +marguand +marguard +margue +marguelez +marguerita +marguerite +marguerites +marguisa +margulies +margy +marhala +marhay +marheshvan +marheti +marhold +mari +maria +mariachi +mariachis +mariae +mariaelena +mariage +mariah +mariahhill +mariaka +marialite +mariam +mariamman +mariamne +marian +mariana +marianas +mariang +mariangela +mariani +marianic +marianin +mariann +marianna +marianne +mariano +marianolatry +mariastein +marib +mariba +maribel +maribelle +maribeth +maribu +maric +maricao +marice +marich +mariclare +maricle +maricolous +maricopa +maricruz +marid +maride +maridel +maridhiel +maridi +marido +maridos +marie +marieann +marieau +mariejeanne +marieka +marieke +mariel +mariele +mariella +marielle +mariellen +marienberg +mariene +mariental +marienthal +marienville +mariesara +mariet +marietta +mariette +marietto +marievsky +marigang +marigenous +marigl +marignan +marignano +marigny +marigold +marigolds +marigram +marigraph +marigraphic +marihatag +marihills +marihuana +marihugh +marija +marijke +marijo +marika +marikina +mariko +marilee +marilena +marilia +marilin +marilina +marilla +marille +marillin +marilo +marilou +marilu +marily +marilyn +marilynn +marilynne +marimbas +marimon +marimonda +marin +marina +marinaded +marinadelrey +marinades +marinading +marinahua +marinangeli +marinara +marinaras +marinaro +marinas +marinated +marinates +marinating +marinawa +marind +marinda +marinduque +marine +marineau +marinecity +marinello +mariner +marineris +marinero +mariners +marines +marinesco +marinesko +marinette +marinetti +maring +maringa +maringe +maringhe +maringouin +marinheiro +marinho +marini +marinism +marinist +marinna +marino +marinoff +marinol +marinorama +marinos +marins +marinus +mario +mariola +mariolater +mariolatrous +mariolatry +mariolina +mariology +marion +marioncenter +marionettes +marionville +mariott +mariotti +marip +maripe +mariposa +mariposan +mariposas +mariposite +mariquilla +mariri +maris +marisa +marisat +marisca +mariscal +marise +marish +marishes +marishness +mariska +marisol +marissa +marisse +marist +maristella +marit +marita +maritage +marital +maritality +maritally +maritan +marithiel +marithiyel +mariticidal +mariticide +maritiime +maritima +maritimes +maritinani +maritones +maritorious +maritsa +maritsaua +maritz +maritza +mariu +mariuccia +marium +mariupolite +marius +marivate +mariveles +mariwoods +mariya +mariza +marizolina +marj +marja +marjaleena +marjan +marje +marjet +marji +marjie +marjo +marjoke +marjolein +marjoram +marjorams +marjorie +marjory +marjy +mark +marka +markab +markable +markanka +markart +markazi +markcenter +markdown +markdowns +marke +markeb +marked +markedly +markedness +markedtree +markel +markell +marken +marker +markers +markes +markesan +markest +market +marketa +marketable +marketably +marketdriven +marketed +marketeers +marketer +marketers +marketh +marketing +marketings +marketlinked +marketman +marketovert +marketplace +marketplaces +marketroid +markets +marketstead +markey +markfieldite +markham +markhor +marki +markiewicz +markin +marking +markings +markis +markka +markkaa +markland +markle +markleeville +markless +markleton +markleville +markleysburg +markman +markmeyer +markmoot +marko +markoff +markosov +markov +markovchain +markovian +markovic +markovich +markovics +markovitch +markovs +markovsky +markowitz +markowski +markowsky +markrt +marks +marksdove +markshome +markshot +marksmanly +marksmanship +markssun +marksville +markswoman +markswomen +marktwain +markup +markups +markus +markusouszky +markville +markway +markweed +markworthy +marky +markzware +marl +marla +marlaceous +marlaine +marland +marlane +marlanne +marlaud +marlberry +marlboro +marle +marleah +marleau +marled +marlee +marleen +marlemma +marlen +marlena +marlene +marlenee +marler +marles +marlette +marley +marli +marlie +marlier +marlies +marlin +marline +marlinespike +marling +marlins +marlinton +marlite +marlitic +marllike +marlo +marlock +marloes +marlon +marlos +marlott +marlovian +marlow +marlowes +marlowesque +marlowish +marlowism +marlpit +marlton +marlu +marly +marlyn +marlyne +marm +marma +marmaduke +marmalade +marmaladed +marmalades +marmalady +marmalard +marmar +marmara +marmaregho +marmarize +marmarosis +marmarth +marmatite +marmee +marmelo +marmelos +marmen +marmennill +marmer +marmillon +marmion +marmit +marmite +marmites +marmolite +marmont +marmora +marmoraceous +marmorate +marmorated +marmoration +marmoreal +marmoreally +marmorean +marmoric +marmosa +marmose +marmoset +marmosets +marmota +marmots +marmount +marmulla +marmuric +marmuru +marna +marne +marner +marneris +marney +marngu +marni +marnia +marnie +marnlyn +marno +maro +maroa +marobia +maroc +marocain +marocasero +marojama +marok +marolla +maron +maronene +maroney +maroni +maronian +maronie +maronist +maronite +marook +maroon +marooned +marooner +marooning +maroons +maroqo +maroquin +maros +marospangkep +maross +maroth +marotte +maroua +marouchos +marouini +maroun +marous +marova +marovo +marowijne +marpaharia +marpessa +marple +marples +marplot +marplotry +marpole +marqab +marquand +marquardt +marquardts +marquart +marquee +marquees +marques +marquesa +marquesan +marquesas +marquesic +marquesses +marquet +marquetry +marquez +marquie +marquina +marquis +marquisal +marquisate +marquisdom +marquise +marquises +marquisette +marquisettes +marquisina +marquisotte +marquisship +marquita +marquito +marr +marra +marrakech +marrangu +marranism +marranize +marrano +marraru +marras +marrec +marred +marree +marrella +marren +marrer +marrero +marrers +marrett +marriable +marriagable +marriage +marriages +marrian +married +marrieds +marrier +marriers +marries +marriet +marrieth +marrilee +marriner +marring +marrio +marriot +marriott +marris +marrison +marrissa +marron +marrone +marrons +marrot +marrow +marrowbones +marrowed +marrowfat +marrowing +marrowish +marrowless +marrowlike +marrows +marrowsky +marrowskyer +marrowy +marrs +marrubium +marrucinian +marry +marryat +marryer +marryin +marrying +marrymuffe +marryot +marrys +mars +marsa +marsabit +marsac +marsaglia +marsala +marsalis +marsaxlokk +marsaya +marscha +marschall +marschewaki +marschner +marsden +marsdenia +marsdon +marse +marseillaise +marseille +marsela +marselasouth +marsena +marses +marsfirst +marsh +marsha +marshak +marshal +marshalate +marshalcies +marshalcy +marshaled +marshaler +marshaless +marshaling +marshall +marshallberg +marshalled +marshallese +marshalling +marshalls +marshallsoft +marshalltown +marshalman +marshalment +marshals +marshalsea +marshalship +marshalt +marsham +marshaus +marshberry +marshbuck +marshe +marshes +marshfield +marshfire +marshflower +marshier +marshiest +marshill +marshiness +marshite +marshlander +marshlands +marshlike +marshlocks +marshmallows +marshman +marshs +marshville +marshwort +marshy +marsi +marsian +marsie +marsiella +marsilea +marsileaceae +marsilia +marsiliaceae +marsing +marsjars +marsland +marson +marsoon +marsorange +marspiter +marssonia +marssonina +marsteller +marstini +marston +marsupia +marsupialia +marsupialian +marsupialize +marsupials +marsupian +marsupiata +marsupiate +marsupium +marswell +mart +marta +martaban +martagon +martan +martapura +martas +martchenko +marte +martebo +marted +martel +marteline +martell +martella +martellate +martellato +martelle +martelli +martello +martena +martens +martensdale +martensitic +martenson +martensson +martenstyn +martes +martewar +martext +martguerita +marth +martha +marthas +marthasville +marthaville +marthe +marthena +marthi +marthy +marti +martial +martialed +martialing +martialism +martialist +martialists +martiality +martialize +martialled +martialling +martially +martialness +martials +martian +martians +martica +martie +martigue +martijn +martikainen +martin +martina +martinaud +martincello +martincich +martindale +martindel +martine +martineau +martinelli +martinello +martines +martinet +martineta +martinetish +martinetism +martinets +martinetship +martinez +marting +martingales +martinho +martini +martinico +martiniquais +martinis +martinism +martinist +martinloef +martinmas +martino +martinoe +martinovic +martins +martinsan +martinsburg +martinscreek +martinsdale +martinsferry +martinsville +martinton +martinville +martir +martires +martita +martite +martius +martiw +martlet +martlets +martlew +martley +martling +martok +marton +martone +martos +martow +marts +marttinen +martu +marturano +martuzzi +martville +marty +martydom +martyn +martynas +martynia +martyniaceae +martyniouk +martynne +martynov +martyr +martyrdoms +martyred +martyress +martyries +martyring +martyrium +martyrize +martyrizer +martyrlike +martyrly +martyrolatry +martyrologic +martyrology +martyrs +martyrship +martyry +martz +maru +maruba +marubo +maruchi +maruci +marudi +marudu +maruel +maruf +maruhia +marui +maruja +marujita +maruli +marulja +marullus +marum +marunga +maruongmai +maruschka +marusha +marusia +maruska +maruszak +marut +maruwa +maruxina +maruyama +maruzzo +marv +marva +marvari +marvel +marveled +marveling +marvell +marvelle +marvelled +marvelling +marvellous +marvellously +marvelmans +marvelment +marvelous +marvelously +marvelry +marvels +marver +marvette +marvin +marvis +marwa +marwan +marwari +marwarithori +marwat +marworno +marx +marxian +marxianism +marxie +marxism +marxist +marxists +mary +marya +maryak +maryalice +maryam +maryann +maryanna +maryanne +marybelle +marybeth +marybud +maryd +marydel +marydell +marye +maryedith +maryellen +maryesther +marygold +maryjane +maryjo +maryk +marykay +maryknoll +maryl +maryland +marylander +marylanders +marylandian +marylandline +marylee +marylene +marylhurst +marylin +marylinda +marylou +marylynn +marylynne +marymass +maryneal +maryrose +marys +marysa +maryse +marysia +marysole +marysvale +marysville +maryu +maryul +maryus +maryville +maryvonne +marz +marzella +marzetta +marzi +marzio +marzipan +marzipans +marzullo +marzuq +masa +masaaba +masaaki +masaba +masabaluyia +masaca +masadam +masadiit +masafumi +masagal +masahide +masahiko +masahiro +masai +masak +masaka +masaki +masakin +masako +masakre +masaku +masala +masales +masalit +masallatah +masama +masamba +masami +masamichi +masan +masana +masango +masangu +masaniello +masanobu +masanori +masanze +masao +masapati +masarete +masaridid +masarididae +masaridinae +masaris +masaru +masarwa +masaryk +masashi +masasi +masato +masatoshi +masaum +masawa +masaweng +masaya +masayo +masayoshi +masayuke +masayuki +masazumi +masbah +masbate +masbaten +masbatenyo +mascagni +mascagnine +mascagnite +mascally +mascaras +mascarene +mascarino +mascaro +mascaron +mascha +maschera +maschick +maschine +mascia +masciarelli +mascled +mascleless +mascoi +mascoian +mascolo +mascon +mascone +mascons +mascot +mascotism +mascotry +mascots +mascotte +mascoutah +mascouten +mascoy +mascularity +masculate +masculation +masculine +masculinely +masculines +masculinism +masculinist +masculinity +masculinize +masculinized +masculist +masculy +masdeu +masdevallia +maseb +masefield +masegi +maseki +maselasouth +masemola +masemula +masen +masenrempulu +masep +masers +masfeima +masgif +mash +masha +mashadi +mashal +mashallah +mashariqa +mashasha +mashati +mashayekhi +mashburn +mashco +mashed +masheke +mashelton +masher +mashers +mashes +mashfork +mashhad +mashhour +mashi +mashie +mashies +mashile +mashine +mashing +mashita +mashkara +mashman +mashona +mashonaland +mashpee +mashru +mashuakwe +mashura +mashy +masi +masia +masiaroti +masiguare +masiin +masika +masiki +masikili +masimasi +masimo +masina +masingle +masini +masino +masire +masiri +masisi +masiwang +masja +masjid +masjids +mask +maskable +maskan +maskas +masked +maskegon +maskell +maskelyne +maskelynes +maskelynite +masker +maskers +maskery +maskette +maskflower +masking +maskings +maskins +masklike +maskmv +maskoi +maskoid +maskowitz +maskoy +masks +maslam +maslava +maslen +maslin +maslow +masm +masmaje +masms +maso +masochism +masochistic +masochists +masohi +masokha +mason +masoncity +masoned +masoner +masongo +masonic +masonichome +masonries +masons +masontown +masonville +masonwork +masood +masoodul +masooka +masoola +masora +masorah +masorete +masoreth +masoretic +masotti +maspiter +masqan +masquer +masquerade +masqueraded +masquerader +masqueraders +masquerades +masquerading +masquers +masques +masrekah +masrelliez +masrodawa +masronahua +masry +mass +massa +massaca +massachusett +massacre +massacred +massacrer +massacrers +massacres +massacring +massage +massaged +massager +massagers +massages +massageuse +massaging +massagist +massagists +massaguet +massah +massai +massaka +massakal +massalat +massalia +massalian +massalin +massalit +massana +massao +massapequa +massar +massara +massaranduba +massarene +massari +massaroturi +massart +massas +massasauga +massaud +massbus +masscity +masscomp +masscult +masse +massebah +massecuite +massed +massedly +massedness +massekhoth +massel +massen +massena +massenet +massengill +massep +masser +masses +masseter +masseteric +massett +masseurs +masseuse +masseuses +massevitch +massey +massicot +massicotte +massie +massier +massiesmill +massiest +massieu +massif +massifs +massilia +massilian +massillon +massily +massimi +massimo +massina +massine +massiness +massing +massinga +massingale +massinissa +massiter +massive +massively +massiveness +massivity +masskanne +massless +masslessness +masslike +massmonger +massociate +masson +massone +massoni +massonneau +massori +massotherapy +massoud +massoudian +massoula +massow +massoy +massstorage +massula +massumi +massy +mast +mastaba +mastadenitis +mastadenoma +mastage +mastalgia +mastanahua +mastapp +mastatrophia +mastatrophy +mastauxe +mastax +mastectomies +mastectomy +masted +mastellar +masten +mastenbrook +master +masterable +masterate +masterboy +mastercard +masterdom +mastered +masterer +masterful +masterfully +masterhood +masteries +mastering +masterings +masterkey +masterless +masterlike +masterlily +masterliness +masterling +masterly +masterman +masterminded +masterminds +masterous +masterpiece +masterpieces +masterplan +masterproof +masters +mastership +masterson +masterstroke +masterton +masterwork +masterworks +masterwort +mastery +mastful +masthead +mastheaded +mastheads +masthelcosis +masticable +masticate +masticated +masticates +masticating +mastication +mastications +masticator +masticatory +masticbeach +mastiche +masticic +mastics +masticura +masticurous +mastiff +mastiffs +mastigamoeba +mastigate +mastigium +mastigophora +mastigopod +mastigopoda +mastigote +mastigure +masting +mastitis +mastless +mastlike +mastman +mastodonic +mastodons +mastodont +mastodontic +mastodontine +mastodontoid +mastodynia +mastoid +mastoidal +mastoidale +mastoideal +mastoidean +mastoiditis +mastoidotomy +mastoids +mastological +mastologist +mastology +mastomenia +maston +mastoncus +mastopathy +mastopexy +mastoplastia +mastorrhagia +mastotomy +mastovoy +mastrantonio +mastripietri +mastrocinque +mastroianni +mastromattei +mastronardi +masts +mastung +masturbate +masturbated +masturbates +masturbating +masturbation +masturbator +masturbators +masturbatory +mastwood +masty +masu +masud +masulipatam +masur +masurich +masurium +masursky +masury +masvingo +maswanka +maswood +masyuarat +masyutin +mata +matabele +matabeleland +matacan +matache +matachena +matachin +matachina +mataco +matacomaca +matacuni +matadero +matadi +matador +matadors +mataeologue +mataeology +matagalpa +matagalpan +matagorda +matagory +matagouri +mataguayo +matahei +matahi +matai +mataitai +matajuelo +matakam +matal +matalaang +matalan +matalas +matale +matalkowska +matalon +mataloti +matamani +matamata +matambwe +matamoras +matamoro +matamoros +matan +matanai +matanaimaore +matangi +matangnga +matango +matania +matanza +matanzas +matapan +matapi +matapo +matar +matara +matarani +mataranka +matard +mataru +mataso +matata +matatall +matatarwa +matatko +matatla +matatlan +matatua +mataua +matautu +matawai +matawan +matawari +matax +matbat +matboard +matc +match +matchable +matchably +matchboard +matchbooks +matchbox +matchboxes +matchc +matchcloth +matchcoat +matched +matchedpair +matcher +matchers +matches +matchheads +matchi +matching +matchings +matchless +matchlessly +matchlock +matchlocks +matchmaker +matchmakers +matchmaking +matchmark +matchotic +matchsafe +matchstick +matchup +matchwood +matchy +mate +mated +mategriffon +matehood +matei +mateja +matel +matelda +mateless +matelessness +matelote +mately +matema +matembo +matengala +matengo +mateo +mateos +matepi +materia +material +materialism +materialist +materialists +materiality +materialize +materialized +materializee +materializer +materializes +materially +materialman +materialness +materials +materiate +materiation +materiels +materkowski +matern +materna +maternal +maternalism +maternality +maternalize +maternally +maternalness +maternities +maternity +maternology +maters +materyu +mates +mateship +mateusz +matewan +matey +mateys +matezite +matfelon +matgrass +math +mathai +mathaswintha +mathcad +mathcs +mathe +mathematica +mathematical +mathematican +mathematics +mathematize +mathemeg +matheny +mather +mathernet +mathers +matherville +mathes +mathesis +matheson +mathetic +mathew +mathews +mathewson +mathias +mathieson +mathieu +mathilda +mathilde +mathiowetz +mathira +mathis +mathiston +mathiue +mathmate +mathmatical +mathom +mathou +mathout +maths +mathsuna +mathsunb +mathsunc +mathsund +mathsune +mathsunf +mathur +mathura +mathurin +mathus +mathusala +mati +matia +matialoali +matias +matibag +matic +matico +matiesen +matieson +matignon +matigsalug +matilda +matildas +matilde +matildite +matin +matinees +mating +matings +matinicus +matino +matins +matipo +matipu +matipuhy +matisoff +matisse +matiste +mativo +matka +matlab +matlatzinca +matless +matli +matlin +matliwag +matlock +matlockite +matloff +matlow +matmaker +matmaking +matney +matngala +mato +matoaka +matoba +matoewari +matoh +mator +matov +matpar +matra +matral +matralia +matranee +matrass +matre +matred +matreed +matress +matri +matriarca +matriarchate +matriarchic +matriarchies +matriarchist +matriarchs +matriarchy +matriarhat +matric +matrical +matricaria +matrices +matricidal +matricide +matricides +matricula +matriculable +matriculant +matriculants +matricular +matriculated +matriculates +matriculator +matrigan +matriherital +matriline +matrilineage +matrilineal +matrilinear +matrilinies +matriliny +matrilocal +matrimonia +matrimoniale +matrimonious +matrine +matriotism +matris +matrix +matrixes +matrixing +matroclinic +matroclinous +matrocliny +matronage +matronal +matronalia +matronhood +matronism +matronize +matronlike +matronliness +matronly +matrons +matronship +matronymic +matrose +matross +matrox +matruh +matrundola +matryck +matryoshka +mats +matse +matses +matshikiza +matshita +matsi +matsiganga +matsigenka +matson +matsoukas +matsu +matsubara +matsuda +matsue +matsugu +matsui +matsukata +matsumo +matsumura +matsunaga +matsungan +matsura +matsuri +matsushita +matsuzaka +matsuzawa +matt +matta +mattai +mattamore +mattan +mattanah +mattaniah +mattapoisett +mattaponi +mattapony +mattaro +mattatha +mattathah +mattathias +mattawamkeag +mattawan +mattawana +mattboard +matteau +matted +mattedly +mattedness +mattels +mattenai +matteo +matter +mattera +matterania +matterate +matterative +mattered +matterful +mattering +matterless +matteroffact +matters +matterson +matterstock +mattery +mattes +matteson +matteucci +matteuccia +mattews +matthaean +matthan +matthat +matthau +matthes +matthew +matthews +matthia +matthias +matthieu +matthiola +matthison +matthysse +matti +mattia +mattiaca +mattick +matticks +mattie +mattieu +mattilda +matting +mattingly +mattings +mattins +mattio +mattioli +mattithiah +mattituck +mattiussi +mattiuz +mattland +mattock +mattocks +mattoid +mattoir +mattole +matton +mattoon +mattos +mattox +mattraw +mattress +mattresses +matts +mattson +mattulla +matty +matu +matuka +matukar +matumbi +matupi +matupit +maturable +maturated +maturates +maturating +maturation +maturational +maturations +maturative +mature +matured +maturely +maturement +matureness +maturer +matures +maturescence +maturescent +maturest +maturin +maturine +maturing +maturish +maturities +maturity +matuschek +matuschka +matusik +matusita +matusitas +matuszak +matuszewski +matutinal +matutinally +matutinary +matutine +matutinely +matve +matveev +matveeva +matvievsky +matwanly +matweed +maty +matyas +matz +matzahs +matzenauer +matzo +matzoh +matzohs +matzoon +matzor +matzos +matzoth +mauatua +mauban +maubara +maubrun +mauceri +mauch +maucherite +mauchi +mauck +mauckport +maud +maude +mauder +mauderli +maudet +maudie +maudits +maudle +maudling +maudlinism +maudlinize +maudlinly +maudlinwort +maudrie +maudsley +maue +mauer +mauersberger +maugansville +mauge +mauger +maugh +maugham +maughan +maugis +mauhur +maui +maujain +mauk +mauka +mauke +maukin +maul +maulawiyah +mauldin +maule +mauled +mauler +maulers +mauley +mauligan +mauling +mauls +maulstick +maumbi +maumee +maumet +maumetry +maumoon +maun +mauna +maunabo +maunaloa +maund +maunder +maundered +maunderer +maunderers +maundering +maunders +maundful +maundies +maundy +mauney +maung +maungatabu +maunge +maunhollp +maunie +mauno +maunu +maupassant +maupi +maupin +maur +maura +maurandia +maure +maureen +maureene +maurel +mauren +maurene +maurepas +maurer +maurertown +mauretanian +maurey +mauri +mauriat +maurice +mauricetown +mauriceville +mauricio +maurico +maurie +mauriello +maurier +maurijn +maurin +maurine +maurise +maurishka +maurisse +maurist +maurita +mauritania +mauritanian +mauritanians +mauritia +mauritian +maurits +mauritz +maurizia +maurizio +mauro +mauroy +maurrant +maurs +maurstad +maurus +maury +maurycity +mauser +mausolea +mausoleal +mausolean +mausoleums +mauston +mauswares +maut +mauther +mautner +maututu +mauvais +mauve +mauveine +mauves +mauvette +mauvin +mauvine +mauwake +maux +mavar +mavchi +mave +mavea +maveety +maven +mavens +maverick +mavericks +mavia +maviha +mavin +mavins +mavis +mavisdale +mavlyanov +mavortian +mavoumay +mavourneen +mavournin +mavra +mavrandoni +mavrodaphne +mavrodiev +mavrou +mavroules +mawachi +mawae +mawai +mawak +mawake +mawan +mawanda +mawani +mawas +mawasi +mawayana +mawbound +mawby +mawchi +mawe +mawes +mawesdai +mawesweres +mawia +mawissi +mawji +mawk +mawken +mawkishly +mawkishness +mawky +mawo +mawp +mawrang +maws +mawshang +mawst +mawteik +mawuchi +mawworm +maxakali +maxatawny +maxbase +maxbass +maxcredit +maxed +maxene +maxey +maxfactor +maxfield +maxford +maxi +maxicoats +maxie +maxigbe +maxilist +maxilla +maxillae +maxillar +maxillary +maxilliform +maxilliped +maxillojugal +maxim +maxima +maximal +maximalism +maximalist +maximally +maximals +maximate +maximation +maxime +maximed +maximiliana +maximiliano +maximillian +maximillion +maximin +maximins +maximist +maximistic +maximite +maximization +maximize +maximized +maximizer +maximizers +maximizes +maximizing +maximo +maximon +maximov +maximova +maxims +maximum +maximums +maximus +maximusa +maxin +maxine +maxint +maxirona +maxis +maxiumum +maxixe +maxl +maxmeadows +maxmillian +maxsa +maxse +maxseiner +maxsoft +maxsom +maxson +maxted +maxterm +maxton +maxtor +maxubi +maxudian +maxuruna +maxvalue +maxwell +maxwells +maxwellsmart +maxwelton +maxx +maxy +maya +mayabic +mayaca +mayacaceae +mayacaceous +mayaguana +mayaguchi +mayaguez +mayakofsky +mayakovsky +mayali +mayall +mayama +mayan +mayance +mayang +mayangkhang +mayans +mayaoyaw +mayapo +mayapples +mayaro +mayas +mayasandra +mayathan +mayatsanaga +mayayero +maybach +maybe +maybee +maybell +maybelle +maybelline +mayberry +maybeury +maybird +mayble +maybloom +maybrook +maybush +maybushes +maycel +maycock +mayda +mayday +maydays +maydelle +maydemot +mayden +maydew +maydig +maye +mayea +mayehoff +mayeka +mayella +mayen +mayenburg +mayer +mayerling +mayers +mayersville +mayes +mayest +mayesville +mayetta +mayeul +mayey +mayeye +mayfield +mayfish +mayflies +mayflowers +mayfly +mayforth +mayfowl +mayhap +mayhappen +mayhem +mayhemming +mayhems +mayhew +mayhill +mayhugh +mayikulan +maying +mayings +mayiruna +mayking +mayko +maykulan +maylene +mayler +maylia +maylie +maylike +mayll +maylon +maylor +maylynn +mayman +maymay +mayme +maymel +mayn +mayna +maynard +maynardville +mayne +maynes +maynie +maynihan +maynor +maynt +mayo +mayobanyo +mayock +mayodan +mayodanay +mayodarle +mayodeo +mayogo +mayogobangba +mayogodi +mayokebbi +mayokebi +mayoko +mayologist +mayolouti +mayomangafe +mayomargos +mayon +mayongong +mayooulo +mayooulti +mayopas +mayor +mayoralties +mayoralty +mayoraneo +mayoress +mayoresses +mayorey +mayorga +mayors +mayorship +mayorships +mayoruna +mayosava +mayotsanaga +mayotte +mayoux +mayoyao +mayoyesan +maypearl +maypole +maypoles +maypoling +maypop +maypops +mayport +mayr +mayrata +mayre +mayrhofer +mayrink +mayris +mayron +mays +maysan +maysel +maysfield +maysie +maysin +mayslanding +mayslick +maysville +mayt +maytals +mayten +maytenus +maythorn +maytide +maytime +maytown +mayu +mayubo +mayugo +mayumi +mayurachat +mayurbhanj +mayuree +mayuzuna +mayvasi +mayview +mayville +mayvin +mayvins +mayweed +mayweeds +maywings +maywood +maywort +mayworth +maza +mazagwa +mazagway +mazahua +mazai +mazalgia +mazaltepec +mazama +mazame +mazandaran +mazandarani +mazanderani +mazanji +mazankowski +mazapa +mazapilite +mazar +mazard +mazari +mazarick +mazarin +mazarine +mazaro +mazatec +mazatecan +mazateco +mazatla +mazatlan +mazdaism +mazdaist +mazdakean +mazdakite +mazdean +maze +mazed +mazedly +mazedness +mazeful +mazel +mazement +mazeppa +mazer +mazers +mazes +mazetto +mazey +mazgalov +mazgarwa +mazhabi +mazic +mazie +mazier +maziest +mazily +maziness +mazing +mazirv +mazmanian +maznoug +mazodynia +mazolysis +mazolytic +mazomanie +mazon +mazopathia +mazopathic +mazopexy +mazovia +mazovian +mazowiecki +mazuca +mazuma +mazumdar +mazur +mazurek +mazurian +mazurkas +mazurki +mazurowna +mazurski +mazursky +mazushiku +mazut +mazy +mazzanaga +mazzard +mazzarini +mazzaroth +mazzei +mazzetti +mazzini +mazzinian +mazzinianism +mazzinist +mazzioli +mazziotri +mazziotti +mazziotto +mazzola +mazzoli +mazzone +mazzotti +mbaama +mbaati +mbacca +mbada +mbadawa +mbaelelea +mbaenggu +mbagani +mbagu +mbahiakro +mbahouin +mbai +mbaikyor +mbaka +mbaki +mbala +mbalazi +mbale +mbali +mbaloh +mbalolo +mbam +mbama +mbamba +mbambatana +mbamnkam +mbamu +mbana +mbandaka +mbandieru +mbandja +mbandjok +mbandza +mbang +mbanga +mbangala +mbangwe +mbani +mbaniata +mbanja +mbanjo +mbanua +mbanza +mbara +mbaraglov +mbaram +mbareke +mbari +mbarike +mbarmi +mbasogo +mbat +mbati +mbato +mbau +mbaw +mbay +mbaya +mbaye +mbazia +mbcrr +mbeach +mbeci +mbedam +mbede +mbeere +mbegumba +mbei +mbelala +mbele +mbelime +mbem +mbembe +mbene +mbengwi +mbenkpe +mbere +mberem +mbesa +mbesembo +mbete +mbeya +mbhs +mbia +mbidabani +mbika +mbila +mbili +mbilua +mbimou +mbimu +mbinga +mbir +mbirao +mbire +mbisu +mbiyandogo +mbiyi +mbizenaku +mboa +mbochi +mbocobi +mbodomo +mbodou +mbofon +mbog +mbogedo +mbogedu +mbogo +mbogoe +mboi +mboire +mboka +mboko +mbokou +mboku +mbol +mbola +mbole +mbolo +mbololo +mboman +mbombo +mbomo +mbomotaba +mbomou +mbomu +mbone +mbong +mbonga +mbonge +mbonjaku +mbono +mboo +mbooso +mbopalo +mbori +mboro +mbororo +mboshe +mboshi +mbosi +mboteni +mbotu +mbotuwa +mbouda +mbougou +mboum +mboumi +mboumtiba +mbowe +mbowela +mbox +mboxo +mboyakum +mboyi +mbpm +mbps +mbreme +mbrerewi +mbrola +mbrou +mbru +mbua +mbuba +mbube +mbubem +mbudja +mbuela +mbughotu +mbugu +mbugwe +mbui +mbuiyi +mbuke +mbuko +mbuku +mbukuhu +mbukushi +mbukushu +mbula +mbulabwazza +mbuli +mbulo +mbulu +mbulugwe +mbulungish +mbum +mbuma +mbumi +mbummundang +mbunai +mbunda +mbundo +mbundu +mbunga +mbunix +mbunu +mburku +mburugam +mbusuku +mbutawa +mbute +mbutere +mbuti +mbutu +mbuun +mbuunda +mbwaanz +mbwaka +mbwase +mbwei +mbwela +mbwengi +mbwera +mbwewi +mbwisi +mbya +mbyam +mbyemo +mbyte +mbytes +mcad +mcadam +mcadams +mcadenville +mcadoo +mcadorey +mcafee +mcaffee +mcalbertson +mcalear +mcaleer +mcalester +mcalestr +mcalister +mcallen +mcalliney +mcallister +mcallum +mcalpin +mcanally +mcandrew +mcandrews +mcanicsbrg +mcanny +mcardle +mcarlson +mcarthur +mcaskey +mcateer +mcaulay +mcauliffe +mcavinney +mcavity +mcavoy +mcbain +mcban +mcbee +mcbeth +mcbr +mcbragel +mcbrayne +mcbride +mcbrides +mcbroom +mcbryan +mcbryde +mcbs +mcburney +mccabe +mccafferty +mccaffity +mccaffrey +mccaffria +mccaffrie +mccaig +mccain +mccalister +mccall +mccalla +mccallcreek +mccallen +mccallin +mccallion +mccallsburg +mccallum +mccalman +mccambridge +mccamey +mccamley +mccammon +mccampbell +mccandles +mccandless +mccandlish +mccanles +mccann +mccanna +mccardle +mccarg +mccargo +mccarley +mccarn +mccarr +mccarroll +mccarron +mccarthy +mccarthys +mccartin +mccartney +mccarty +mccaskill +mccaslin +mccaughan +mccaugherty +mccaughey +mccauley +mccaulley +mccausland +mccaw +mccay +mccaysville +mccc +mcchesney +mcchord +mcclain +mcclanahan +mcclanathan +mcclaren +mcclarren +mcclary +mcclave +mcclean +mccleary +mccleery +mcclellan +mcclelland +mcclelln +mcclendon +mcclennon +mcclintock +mcclish +mcclory +mccloskey +mcclosky +mccloud +mccloughan +mccluney +mcclung +mcclure +mcclurg +mccluskey +mcclusky +mcclymont +mccoffrey +mccoll +mccollam +mccollon +mccollough +mccollum +mccolman +mccomas +mccomb +mccomber +mccombs +mcconaghay +mccondy +mcconkey +mcconnahay +mcconnell +mcconnells +mcconney +mcconnichie +mcconnll +mccook +mccool +mccoombs +mccord +mccordsville +mccordy +mccorkell +mccorkindale +mccorkle +mccormack +mccormick +mccorquodale +mccorrey +mccorry +mccosh +mccowan +mccowen +mccown +mccoy +mccoys +mccracken +mccrae +mccrain +mccrane +mccraney +mccray +mccrea +mccready +mccreanor +mccreath +mccreery +mccreesh +mccrery +mccrimmon +mccrindle +mccrory +mccrosky +mccrum +mccuaig +mccue +mccullagh +mccullen +mcculloch +mccullogh +mccullough +mccullum +mccully +mccune +mccurdy +mccurry +mccurtain +mccusker +mccuskey +mccutcheon +mcdade +mcdaniel +mcdaniels +mcdarra +mcdavid +mcdavitt +mcdermitt +mcdermott +mcdevitt +mcdiarmid +mcdiarmids +mcdill +mcdn +mcdonagh +mcdonald +mcdonalda +mcdonall +mcdonnel +mcdonnell +mcdonough +mcdoom +mcdougal +mcdougald +mcdougall +mcdowall +mcdowd +mcdowell +mcduff +mcduffie +mcduffy +mcdunn +mcdunnough +mceachern +mcelderry +mceldruff +mcelduff +mcelhanon +mcelhattan +mcelhone +mcelligott +mcellistrem +mcelniney +mcelrath +mcelrea +mcelroy +mcenery +mcenroe +mcevoy +mcewan +mcewen +mcewensville +mcfadden +mcfaddin +mcfaden +mcfall +mcfarlan +mcfarland +mcfarlane +mcfee +mcfeely +mcferrin +mcfly +mcga +mcgairy +mcgalliard +mcgann +mcgargle +mcgarrity +mcgarry +mcgaughey +mcgavin +mcgavity +mcgaw +mcgeary +mcgee +mcgehee +mcgeown +mcgetchin +mcghee +mcgiff +mcgilchrist +mcgill +mcgillen +mcgillicuddy +mcgillis +mcgillvray +mcgilly +mcginley +mcginn +mcginty +mcgirk +mcgiveney +mcgiver +mcgivern +mcglade +mcgland +mcglaugin +mcglennan +mcglory +mcglyn +mcglynn +mcgoering +mcgonagle +mcgonigal +mcgonigle +mcgoogin +mcgoohan +mcgorman +mcgough +mcgovern +mcgowan +mcgowna +mcgowran +mcgrachan +mcgrady +mcgrail +mcgrann +mcgrath +mcgraw +mcgrawhill +mcgraws +mcgree +mcgreevey +mcgreevy +mcgregor +mcgrew +mcgrill +mcgroaty +mcgruder +mcguffey +mcguffy +mcguigan +mcguinn +mcguinnes +mcguinness +mcguire +mcgurk +mcgurn +mchabe +mchale +mchan +mcharg +mchattie +mchenry +mchinji +mchspc +mchugh +mciarty +mcilhenny +mcilroy +mcilvain +mcilwraith +mcindoefalls +mcinerney +mcinnerny +mcinnes +mcinnis +mcintee +mcinterny +mcintire +mcintomny +mcintosh +mcintyre +mcisaac +mciver +mcivers +mckane +mckann +mckaughan +mckay +mckeage +mckeague +mckean +mckearney +mckechnie +mckee +mckeechie +mckeegan +mckeehan +mckeen +mckeesport +mckeesrocks +mckeever +mckegg +mckeithan +mckellen +mckeltch +mckendrick +mckenna +mckenney +mckennon +mckenzie +mckeone +mckeown +mckern +mckerrow +mckettrick +mckewen +mckibben +mckibbin +mckibbon +mckie +mckillop +mckim +mckinlay +mckinley +mckinnell +mckinney +mckinnis +mckinnon +mckinsey +mckisco +mckittrick +mcklennar +mcknee +mcknight +mckown +mckuen +mckyle +mclachlan +mclagden +mclagen +mclaglen +mclaglin +mclaidlaw +mclain +mclane +mclaren +mclarty +mclauchlan +mclaue +mclaughlin +mclawhon +mclawhorn +mclean +mcleansboro +mcleansville +mcleish +mclellan +mcleme +mclemore +mclenaghan +mclendon +mclennan +mcleod +mclerie +mclernon +mcleudc +mcliam +mclk +mcloud +mcloughlin +mclouth +mclowery +mcluhan +mcluskie +mcmahan +mcmahon +mcmann +mcmannen +mcmanus +mcmartin +mcmaster +mcmasters +mcmath +mcmechen +mcmeegan +mcmenamin +mcmichael +mcmillan +mcmillen +mcmillian +mcmillin +mcmillion +mcmillon +mcminn +mcminnville +mcmonagle +mcmonigal +mcmullan +mcmullen +mcmullin +mcmurdo +mcmurphy +mcmurray +mcmxc +mcmyler +mcnab +mcnabb +mcnair +mcnairy +mcnally +mcnamara +mcnamee +mcnarmara +mcnary +mcnasty +mcnaught +mcnaughton +mcnaulty +mcnaurpton +mcnc +mcneal +mcnealy +mcnear +mcneary +mcnee +mcneel +mcneely +mcnees +mcneese +mcneil +mcneill +mcneilly +mcnelly +mcnemar +mcnerlan +mcnerney +mcnichol +mcnicol +mcnitt +mcnolty +mcnorton +mcnott +mcnown +mcnully +mcnulty +mcnutt +mcomb +mcoml +mcomw +mcon +mcpeek +mcpeters +mcphaden +mcphail +mcphearson +mcphee +mcpherson +mcphillip +mcquade +mcquady +mcquaid +mcquaig +mcquarg +mcquarrie +mcqueen +mcqueeney +mcquiggin +mcquown +mcrae +mcraney +mcrann +mcray +mcrcim +mcready +mcritchie +mcrl +mcrobbie +mcroberts +mcronald +mcruvie +mcryan +mcshan +mcshane +mcshann +mcsharry +mcsheffrey +mcsorley +mcstay +mcsteen +mcsun +mcswat +mcswatt +mcsween +mcsweeney +mctaggart +mctavish +mcteague +mctiernan +mcturck +mcturner +mcvay +mcveagh +mcveety +mcveigh +mcvey +mcveytown +mcvicar +mcvicker +mcvilches +mcville +mcvittie +mcwade +mcwalter +mcwalters +mcwaters +mcwherter +mcwhinney +mcwhinny +mcwhirrey +mcwhorter +mcwiley +mcwilliam +mcwilliams +mcwilton +mdaemon +mdependent +mdewakanton +mdiff +mdimensions +mdirimbuta +mdos +mdse +mdstruct +mdundulu +meable +meacham +meaching +meachum +meacock +mead +meade +meader +meador +meadow +meadowbluff +meadowbridge +meadowbrook +meadowbur +meadowcreek +meadowed +meadower +meadowgrove +meadowing +meadowink +meadowlands +meadowlark +meadowlarks +meadowless +meadows +meadowsofdan +meadowsweets +meadowvalley +meadowview +meadowvista +meadowwort +meadowy +meads +meadsman +meadville +meagan +meager +meagerly +meagerness +meaghan +meagher +meagre +meah +meak +meakambut +meakin +meal +mealable +mealberry +mealer +mealie +mealier +mealies +mealiest +mealily +mealin +mealiness +mealless +meally +mealman +mealmonger +mealmouth +mealmouthed +mealproof +meals +mealtime +mealtimes +mealworm +mealworms +mealybug +mealybugs +mealymouth +mealymouthed +mealywing +meam +mean +meanand +meanchey +meandered +meanderer +meanderers +meandering +meanderingly +meanders +meandrine +meandrite +meandrous +meandry +meaned +meaner +meaners +meanest +meaneth +meaney +meanie +meanies +meanin +meaning +meaningful +meaningfully +meaningless +meaningly +meaningness +meanings +meanish +meanly +meanness +means +meanspirited +meansville +meant +meantes +meantime +meantimes +meantone +meanvalue +meanvariance +meanwhile +meany +meara +mearah +mearas +mearim +mearratan +mears +meas +mease +measled +measledness +measles +measlesproof +measlier +measliest +measly +meason +measondue +measor +measurable +measurably +measurage +measuration +measure +measured +measuredly +measuredness +measureless +measurely +measurement +measurements +measurer +measurers +measures +measuring +measurment +meat +meatal +meatball +meatballs +meatbird +meatcutter +meated +meath +meathead +meatheads +meathook +meatier +meatiest +meatily +meatiness +meatless +meatloaf +meatman +meatometer +meatorrhaphy +meatoscope +meatoscopy +meatotome +meatotomy +meatpacking +meats +meatus +meatware +meatworks +meaun +meausre +meaux +meax +meban +mebane +mebiame +mebsuta +mebu +mebunnai +mecaenas +mecaptera +mecate +mecc +mecca +meccan +meccano +meccas +meccawee +mech +mecha +mechan +mechanal +mechanality +mechanalize +mechandise +mechanic +mechanical +mechanically +mechanician +mechanics +mechanicsbrg +mechanised +mechanism +mechanisms +mechanistic +mechanists +mechanize +mechanized +mechanizer +mechanizers +mechanizes +mechanizing +mechanolater +mechanology +meche +mechelle +mecher +mecherathite +mechi +mechir +mechlin +mechoacan +mechthild +mechti +meci +meck +mecke +meckel +meckelectomy +meckelian +mecker +mecklenburg +meckler +meckley +meckling +meclisi +mecodont +mecodonta +mecometer +mecometry +mecon +meconic +meconidium +meconin +meconioid +meconium +meconology +mecoptera +mecopteran +mecopteron +mecopterous +mecosta +mecteau +mectny +mecums +meda +medad +medal +medaled +medalet +medalist +medalists +medalize +medallary +medallic +medallically +medalling +medallionist +medallions +medallist +medals +medan +medanales +medang +medar +medard +medaryville +medas +medawa +medazzaland +medboe +medcraft +meddings +meddis +meddle +meddlecome +meddled +meddlement +meddler +meddlers +meddles +meddlesome +meddlesomely +meddleth +meddling +meddlingly +meddlings +meddybemps +mede +medea +medeba +medebur +medecin +medecis +medefesser +medegel +medeiros +medellin +medelu +medeola +meder +mederdra +medes +medevac +medevacs +medeval +medfield +medford +medgyesi +medi +media +mediablaze +mediacid +mediacy +mediad +mediaeval +mediaevalize +mediaevally +mediagx +mediak +medialab +medialize +medialkaline +medially +medials +median +mediancentre +medianic +medianimic +medianimity +medianism +medianity +medianline +medianly +medianoche +medians +mediant +mediapolis +medias +mediasauce +mediastinal +mediastine +mediastinum +mediastudio +mediated +mediately +mediateness +mediates +mediating +mediatingly +mediation +mediational +mediations +mediative +mediatize +mediator +mediatorial +mediators +mediatorship +mediatory +mediatress +mediatrice +mediatrix +mediban +medic +medicable +medicably +medicago +medicaid +medicaids +medical +medicallake +medically +medicals +medicament +medicamental +medicaments +medicant +medicare +medicares +medicaster +medicated +medicates +medicating +medication +medications +medicative +medicator +medicatory +medicean +medicinable +medicinal +medicinally +medicine +medicinebow +medicined +medicinelake +medicinelike +medicinepark +mediciner +medicines +medicining +medicis +medicks +medico +medicodental +medicolegal +medicomania +medicomoral +medicos +medics +medieaval +mediety +medieval +medievalism +medievalist +medievalists +medievalize +medievally +medievals +medifixed +mediglacial +medika +medimn +medimno +medimnos +medimnus +medina +medinah +medincom +medinilla +medino +medinsure +medio +mediocarpal +mediocre +mediocrist +mediocrities +mediocubital +mediodigital +mediodorsal +mediofrontal +mediolateral +medioni +mediopalatal +mediopassive +mediopontine +mediosilicic +mediotarsal +medioventral +medisance +medisect +medisection +medish +medism +meditant +meditate +meditated +meditates +meditating +meditatingly +meditatio +meditation +meditations +meditatist +meditative +meditatively +meditator +medithorax +meditrinalia +meditullium +medium +mediumism +mediumistic +mediumize +mediumlevel +mediums +mediumship +medius +medize +medizer +medje +medjidie +medland +medlars +medley +medleys +medlin +medlock +medlpa +mednet +mednick +mednov +medo +medoc +medog +medogo +medomak +medon +medonho +medora +medouze +medregal +medria +medrick +medricka +medrinaque +meds +medu +medulla +medullae +medullar +medullary +medullas +medullate +medullated +medullation +medullitis +medullose +medumba +medusa +medusaean +medusal +medusalike +medusan +medusas +meduseld +medusiferous +medusiform +medusoid +medusoids +medved +medvedev +medvedier +medway +medwin +medwir +medye +medzime +meeb +meeber +meebos +meece +meeces +meecham +meed +meeden +meedless +meeds +meeee +meegan +meegles +meegoh +meehan +meehl +meek +meeka +meekaeel +meeken +meeker +meekest +meekhearted +meekie +meekin +meekins +meekling +meekly +meekness +meekoceras +meeks +meem +meemaw +meemu +meen +meena +meenoh +meer +meered +meeregen +meerkat +meers +meerschaum +meerschaums +meersma +meersman +meerveld +meese +meessin +meesters +meet +meetable +meeteetse +meeten +meeter +meeterly +meeters +meetest +meeteth +meethelp +meethelper +meeting +meetinger +meetings +meetly +meetness +meets +meetting +meeus +meeusen +mefaris +mefele +meffe +mefford +mefoor +mefou +mega +megabar +megabaud +megabits +megabuck +megabucks +megabyte +megabytes +megacephalia +megacephalic +megacephaly +megacerine +megaceros +megacerotine +megachile +megachilid +megachilidae +megacolon +megacosm +megacoulomb +megacycle +megacycles +megadeath +megadeaths +megadeth +megadont +megadrili +megadynamics +megadyne +megadynes +megaera +megaerg +megafarad +megaflops +megafog +megagamete +megahertz +megaira +megajolt +megajoule +megaka +megaladapis +megalaema +megalaemidae +megalania +megaleme +megalensian +megalerg +megalesia +megalesian +megalesthete +megalichthys +megalith +megalithic +megaliths +megaloblast +megalocardia +megaloceros +megalocornea +megalocyte +megalodon +megalodont +megalodontia +megalograph +megalography +megalomania +megalomaniac +megalomelia +megalon +megalonyx +megalopa +megalopenis +megalophonic +megalopia +megalopic +megalopidae +megalopinae +megalopine +megalopolis +megalopore +megalops +megalopsia +megaloptera +megalopyge +megalornis +megalosaur +megalosaurus +megaloscope +megaloscopy +megalosphere +megaloureter +megaluridae +megam +megamedia +megamere +megameter +megamix +megampere +megan +meganeura +megank +megans +meganthropus +meganucleus +megaparsec +megapenny +megaphone +megaphones +megaphonic +megaphyllous +megaphyton +megapod +megapode +megapodidae +megapodiidae +megapodius +megaptera +megapterinae +megapterine +megarensian +megargel +megarhinus +megarhyssa +megarian +megarianism +megaric +megaron +megas +megasclere +megascleric +megasclerous +megasclerum +megascope +megascopic +megascopical +megaseism +megaseismic +megaseme +megasoma +megasporange +megaspore +megasporic +megathere +megatherian +megatherine +megatherioid +megatherium +megatherm +megathermic +megatheroid +megatic +megatons +megatron +megatype +megatypy +megavitamin +megavolts +megawatts +megaweber +megawords +megazooid +megazoospore +megen +megerg +megeri +megge +megger +meggi +meggie +meggiesoft +meggitt +meggy +meghalaya +meghan +meghani +meghann +meghwal +meghwar +megi +megiar +megiddo +megiddon +megili +megill +megillah +megillahs +megilp +megimba +meginniss +meglen +meglenitic +megleno +meglin +megmho +megna +megner +mego +megoh +megohmit +megohmmeter +megohms +megong +megotalc +megowan +megrel +megrez +megrim +megrimish +megrims +megs +megsuan +megumi +megyaw +megye +megyek +mehaffey +mehaignerie +mehalla +mehanoshin +mehara +mehari +meharist +mehata +mehboob +mehdi +mehedinti +mehek +mehelya +meher +meherpur +meherrin +mehetabeel +mehetabel +mehevi +mehida +mehina +mehinaco +mehinacu +mehinaku +mehir +mehitabel +mehl +mehlhorn +mehltretter +mehmandar +mehmet +mehmud +mehndi +meholathite +mehoopany +mehoz +mehozot +mehr +mehra +mehrdad +mehrere +mehri +mehrzad +mehta +mehtar +mehtarship +mehua +mehujael +mehuman +mehunim +mehunims +meia +meiabier +meibomia +meibomian +meic +meidinger +meidob +meier +meierheim +meifa +meiganga +meighan +meighen +meigs +meihsien +meijer +meijers +meikari +meikel +meikle +meiko +meile +meillet +meilleur +meillon +meillyn +mein +meine +meineke +meinhardt +meinhart +meinie +meinike +meininger +meinster +meio +meiobar +meionite +meiophylly +meioses +meiotaxy +meiotic +meir +meira +meirelles +meisel +meiser +meisler +meisner +meissa +meissen +meissner +meister +meith +meithe +meithei +meixien +meixner +meiyari +meizoseismal +meizoseismic +meja +mejach +mejah +mejarkon +mejdal +mejdu +meje +mejia +mejicano +mejor +mejorana +mejury +meka +mekae +mekaf +mekaike +mekambo +mekan +mekay +mekbuda +mekem +mekeo +mekeokovio +mekeon +mekey +mekeyer +mekhitarist +mekibo +mekin +mekinock +mekitelyu +mekka +mekmek +meknes +mekometer +mekonah +mekongga +mekongka +mekoryuk +mekrane +mekuk +mekwei +mekye +mekyibo +mela +melaconite +melada +meladiorite +melady +melagabbro +melagra +melagranite +melaju +melak +melaka +melalap +melaleuca +melalgia +melam +melamba +melamed +melamela +melamie +melamines +melampodium +melampsora +melampus +melampyritol +melampyrum +melana +melanagogal +melanagogue +melanau +melancholia +melancholiac +melancholic +melancholics +melancholies +melancholily +melancholish +melancholist +melancholize +melancholy +melanchthon +melancia +melancolie +melanconium +melandez +melanemia +melanemic +melanesian +melanesians +melange +melanger +melanges +melangeur +melania +melanian +melanic +melanie +melaniferous +melaniidae +melanilin +melaniline +melanins +melanippe +melanippus +melanism +melanisms +melanistic +melanists +melanite +melanites +melanitic +melanize +melanized +melanizes +melano +melanoblast +melanocerite +melanochroi +melanochroid +melanocomous +melanocrate +melanocratic +melanocyte +melanoderma +melanodermia +melanodermic +melanogaster +melanogen +melanoi +melanoid +melanoidin +melanoids +melanomas +melanomata +melanopathia +melanopathy +melanophore +melanoplakia +melanoplus +melanorrhea +melanorrhoea +melanoscope +melanose +melanosed +melanosis +melanosity +melanotekite +melanotic +melanous +melanson +melanterite +melantha +melanthaceae +melanthium +melanure +melanuresis +melanuria +melanuric +melany +melaphyre +melard +melaripi +melas +melasma +melasmic +melassigenic +melastoma +melastomad +melatiah +melato +melatonin +melatope +melawi +melaxuma +melay +melayu +melba +melbeck +melber +melbeta +melblanc +melbourne +melburnian +melcarth +melch +melchi +melchiah +melchior +melchir +melchisedec +melchishua +melchite +melchizedek +melchoir +melchora +melcombe +melcroft +melded +melder +melders +melding +meldometer +meldrim +meldrop +meldrum +melds +mele +melea +meleager +meleagridae +meleagrina +meleagrinae +meleagrine +meleagris +melebiose +melech +melee +melees +melefila +meleg +melek +melena +melendez +melendreras +melendy +melene +melenic +melentyeva +meles +melesa +meleski +meleskie +melessa +melete +meletian +meletios +melets +meletski +melezitase +melezitose +melfa +melfi +melfiabu +melford +melgar +melgares +melhem +meli +melia +meliaceae +meliaceous +meliadus +melian +melianthus +meliatin +melibean +melibiose +meliboea +melic +melica +melicent +melicera +meliceric +meliceris +melicerous +melicerta +melicertidae +melichrous +melicitose +melicocca +melicraton +melicu +melies +meligan +melik +melilite +melilitite +melilla +melilot +melilotus +melilup +melina +melinae +melinand +melinaud +melinda +melinde +meline +melinie +melinis +melinite +melio +meliola +meliora +meliorable +meliorant +meliorated +meliorater +meliorates +meliorating +melioration +meliorations +meliorative +meliorator +meliorism +meliorist +melioristic +meliority +meliphagan +meliphagidae +meliphagidan +meliphagous +meliphanite +melipona +meliponinae +meliponine +melisa +melisande +melisandra +melisenda +melisent +meliskova +melisma +melismatic +melismatics +melissa +melisse +melissyl +melissylic +melita +melitaea +melitemia +melithemia +melitis +meliton +melitose +melitriose +melitta +melittology +melituria +melituric +melk +melkhin +melki +melkie +melkild +melkite +melkoi +mell +mella +mellaginous +mellal +mellate +mellay +mellen +mellena +mellenbergh +mellenger +mellenville +melleous +meller +mellet +mellette +melli +mellicent +mellics +mellie +mellifera +melliferous +mellific +mellificate +mellifluence +mellifluent +mellifluous +mellila +mellimide +mellinger +mellisa +mellisent +mellish +mellisonant +mellisugent +mellit +mellitate +mellite +mellitic +mellitus +mellivora +mellivorinae +mellivorous +mello +mellon +melloney +mellonides +mellophone +mellor +mellors +mellott +mellow +mellowed +mellower +mellowest +mellowing +mellowly +mellowness +mellows +mellowy +mellsman +mellvig +mellwood +melly +melmele +melmerfelt +melmore +melnibone +melnick +melnikov +melnitz +melnyk +melo +melobong +melocactus +melocoton +melodee +melodeon +melodeons +melodi +melodia +melodial +melodially +melodic +melodica +melodically +melodicon +melodics +melodie +melodien +melodies +melodiograph +melodion +melodiously +melodism +melodist +melodists +melodize +melodized +melodizer +melodizes +melodizing +melodram +melodrama +melodramas +melodramatic +melodrame +melody +melodyless +meloe +melogram +melograph +melographic +meloid +meloidae +melokwo +meloling +melolo +melologue +melolontha +melolonthine +melomane +melomania +melomaniac +melomanic +meloncus +melonechinus +melongena +melongrower +melonie +melonist +melonite +melonites +melonlike +melonmonger +melonry +melons +melony +melophone +melophonic +melophonist +melopiano +meloplast +meloplastic +meloplasties +meloplasty +melopoeia +melopoeic +melora +melos +melosa +melospiza +melothria +melotragedy +melotragic +melotrope +melpa +melpar +melpomene +melpomeni +melqui +melrose +melrosepark +mels +melsetter +melsisi +melson +melstone +melt +meltability +meltable +meltage +meltages +meltdown +meltdowns +melted +meltedness +melteigite +melter +melters +melteth +melti +melting +meltingly +meltingness +melton +meltonian +meltons +melts +meltwater +meltzer +melucci +melungeon +meluory +meluri +melursus +melusina +melut +melva +melvany +melvern +melvilles +melvin +melvindale +melvyn +melynda +melzak +melzar +mema +memagun +memaloh +memba +membakut +member +membered +memberless +members +membership +memberships +membi +memboro +membracid +membracidae +membracine +membral +membrally +membrana +membranal +membranate +membrane +membraned +membraneless +membranelike +membranelle +membraneous +membranes +membraniform +membranin +membranipora +membranoid +membranology +membranosis +membranous +membranously +membranula +membranule +membretto +memcheck +memcpy +meme +memenov +memento +mementoes +mementos +memes +memetics +memetih +memfree +memi +meminna +memlik +memmingen +memmo +memmoli +memmory +memnet +memnon +memnonian +memnonium +memnos +memo +memogun +memoire +memoirism +memoirist +memoirs +memon +memonas +memopad +memorability +memorably +memoranda +memorandist +memorandize +memorandum +memorandums +memorative +memorex +memori +memoria +memorial +memorialist +memorialize +memorialized +memorializer +memorializes +memorially +memorials +memoriam +memorias +memoried +memories +memorious +memorist +memoriter +memorizable +memorization +memorize +memorized +memorizer +memorizers +memorizes +memorizing +memory +memoryless +memorymapped +memos +memoweb +memphian +memphis +memphite +mems +memsahib +memsahibs +memsize +memst +memturbo +memucan +mena +menabeikongo +menaccanite +menaccanitic +menace +menaceable +menaced +menaceful +menacement +menacer +menacers +menaces +menachem +menacing +menacingly +menacker +menacme +menadione +menadonese +menads +menage +menagerie +menageries +menagerist +menagery +menages +menahem +menahga +menai +menaik +menaka +menaker +menald +menam +menan +menandon +menangba +menangkabau +menant +menarches +menard +menasce +menasha +menashian +menaspis +menba +mencer +mencham +menchen +menchildren +menchum +mend +menda +mendable +mendaciously +mendacities +mendage +mendaite +mendak +mendalam +mendalem +mende +mendebandi +mended +mendee +mendel +mendele +mendeleev +mendelian +mendelianism +mendelianist +mendelism +mendelist +mendelize +mendelsohn +mendelssohn +mendelsson +mendenhall +mender +menderes +menders +mendeya +mendez +mendham +mendi +mendicancies +mendicancy +mendicant +mendicants +mendicate +mendication +mendicity +mendieta +mendillo +mending +mendings +mendipite +mendlebaum +mendocino +mendokala +mendole +mendolia +mendon +mendonca +mendorf +mendota +mendoz +mendoza +mendozite +mendriq +mendrossen +mends +mendy +mendyako +mendzime +mene +meneao +meneca +menechian +menecke +menefee +meneghinite +menelaus +meneldil +meneldor +meneleas +menem +menemo +menemomogamo +menemsha +menendez +meneng +menfolks +menfra +menfro +meng +mengaka +mengalstein +mengambo +mengau +mengele +mengen +menges +mengesmills +menggala +menggatal +menggei +menggu +menggwei +menghua +menghwa +mengisa +mengisanjowe +mengisanjowi +mengistu +mengka +mengkah +mengkasara +mengkatip +menglet +menglian +mengo +mengwa +mengwe +menhadens +menhir +menhirs +meni +menia +menial +menialism +meniality +menially +menials +menic +meniconi +menifee +menik +menilite +menindal +menindaq +mening +meningeal +meninges +meninggo +meningic +meningina +meningism +meningitic +meningo +meningocele +meningorrhea +meningosis +meninka +meninting +meninx +menippe +meniscal +meniscate +meniscectomy +menisci +menisciform +meniscitis +meniscoid +meniscoidal +meniscuses +menisperm +menispermine +menispermum +menjou +menjuke +menka +menkalinan +menkar +menke +menken +menkes +menkib +menkind +menkrangnoti +menku +menlo +menlopark +menna +mennari +mennie +menno +mennom +mennonist +mennoniten +mennonites +meno +menobranchus +menognath +menognathous +menoken +menolly +menologies +menologium +menology +menominee +menomini +menomonie +menon +menopausal +menopausic +menophania +menoplania +menopoma +menorah +menorahs +menorhyncha +menorrhagia +menorrhagic +menorrhagy +menorrhea +menorrheic +menorrhoea +menorrhoeic +menoschesis +menoschetic +menosepsis +menosky +menostasia +menostasis +menostatic +menostaxis +menotti +menotyphla +menotyphlic +menoua +menoxenia +menpa +menpleasers +menraq +menrik +menriq +mens +mensa +mensae +mensal +mensalize +mensalong +mensaros +mensas +mensch +menschen +mensches +mense +mensed +menseful +menseless +menservants +menses +menshevik +menshevism +menshevist +mensing +mensinkai +mensk +mensonges +menstealers +menstrual +menstruant +menstruated +menstruates +menstruating +menstruation +menstruous +menstruum +mensual +mensur +mensurably +mensural +mensuralist +mensurate +mensurative +menswear +menswears +ment +menta +mentagra +mental +mentalis +mentalism +mentalist +mentalistic +mentalists +mentalities +mentality +mentalize +mentally +mentam +mentarang +mentary +mentat +mentation +mentawai +mentawei +mentawi +mentaya +mentch +mentcle +mentera +mentha +menthaceae +menthaceous +menthadiene +menthane +menthe +menthel +menthene +menthenol +menthenone +menthol +mentholated +menthols +menthone +menthyl +menticide +menticulture +mentiferous +mentiform +mentigerous +mentimeter +mention +mentionable +mentioned +mentionedin +mentioner +mentioners +mentioning +mentionless +mentions +mentis +mentmore +mentohyoid +mentolabial +menton +mentone +mentonniere +mentor +mentorial +mentorism +mentors +mentorship +ments +mentuh +mentuktire +mentum +mentzelia +menu +menuconfig +menuhin +menui +menuitis +menura +menurae +menuridae +menus +menuso +menuzzi +menville +menwithhill +meny +menya +menyaemsya +menyaiut +menyama +menyamya +menyanthes +menyapa +menye +menyefun +menyhart +menyie +menyuk +menyukai +menz +menzel +menzie +menzies +menziesia +meohang +meon +meonenim +meonothai +meoswar +meow +meowed +meowing +meows +mepergan +meperidine +mephaath +mephibosheth +mephisto +mephitic +mephitical +mephitinae +mephitine +mephitis +mephitism +meppen +meprobamate +meprs +meqan +mequem +mequen +mequens +mera +merab +meracious +meradan +merah +meraiah +meraioth +merak +meral +meralgia +meraline +meramera +meranda +merande +merap +merapi +merari +merarit +merarites +merasa +merata +meratei +merathaim +meratia +meratus +merauke +meraux +merayo +meraz +merb +merbaby +mercader +mercadier +mercado +mercaillou +mercal +mercante +mercantilely +mercantilism +mercantilist +mercantility +mercaptal +mercaptan +mercaptides +mercaptids +mercapto +mercaptol +mercaptole +mercara +mercatorial +mercature +merced +mercedarian +mercedes +mercedinus +mercedita +mercedonius +mercenaries +mercenarily +mercer +merceress +mercerisland +mercerize +mercerized +mercerizer +mercerizes +mercerizing +mercers +mercersburg +mercership +mercery +merch +merchandise +merchandised +merchandiser +merchandises +merchandized +merchangman +merchant +merchantable +merchanted +merchanter +merchanthood +merchantish +merchantlike +merchantly +merchantman +merchantmen +merchantries +merchantry +merchants +merchantship +merchet +merci +mercia +mercian +mercie +mercieca +mercier +mercies +merciful +mercifully +mercifulness +merciless +mercilessly +merciline +merciment +mercouri +mercur +mercurate +mercuration +mercure +mercurean +mercurialis +mercurialism +mercuriality +mercurialize +mercurially +mercurian +mercuriate +mercuride +mercuries +mercurify +mercurio +mercurius +mercurize +mercurophen +mercurous +mercury +mercutio +mercy +mercyful +mercyproof +mercyseat +merdeka +merdia +merdivorous +merdu +mere +mered +meredale +meredith +meredithe +meredithian +meredosia +meredyth +merefield +merei +merek +merel +merelava +merelles +merello +merely +merem +meremoth +merenchyma +merenda +mereness +merengue +merengues +merensky +mereo +merer +meres +meresman +merest +merestead +merestone +mereta +merete +meretei +meretrix +mereu +merey +mereyo +merfold +merfolk +mergansers +merge +merged +mergence +mergences +mergenthaler +merger +mergerer +mergers +merges +mergey +mergh +merginae +merging +merguese +mergui +mergulus +mergus +merholz +meri +meriadoc +meriah +meriam +merian +meriann +meribah +meribbaal +mericarp +merice +meriche +mericka +merida +meridale +meridel +meriden +meridew +meridian +meridians +meridiem +meridion +meridionally +meridith +meriel +merig +merighi +merigold +meriko +meril +merile +merilee +meriline +merille +merilyn +merima +merin +merina +merinder +meringued +meringues +merino +merinos +meriones +meriquinoid +meriquinone +meriquinonic +merir +meriro +meris +merism +merismatic +merismoid +merissa +merist +meristele +meristelic +meristem +meristematic +meristic +meristically +merit +meritable +merited +meritedly +meriter +meritful +meriting +meritless +meritmonger +meritmongery +meritocracy +merits +meritt +meritu +meritxell +merival +merivale +meriwether +merizzi +merk +merkel +merkhet +merkin +merkinson +merkle +merklinger +merkuryev +merl +merla +merlav +merlavmerig +merle +merlette +merli +merlin +merlina +merline +merlini +merlins +merlo +merlon +merlons +merlow +merlucciidae +merluccius +merlusse +mermaiden +mermaids +merman +mermelstein +mermen +mermentau +mermis +mermithaner +mermithidae +mermithized +mermithogyne +mermnad +mermnadae +mermother +merna +merney +mernyang +mero +meroblastic +merocele +merocelic +merocerite +meroceritic +merocyte +merodach +merodoam +merogamy +merogastrula +merogenesis +merogenetic +merogenic +merognathite +merogonic +merogony +merohedral +merohedric +merohedrism +meroistic +meroitic +meroki +merola +merom +meromorphic +meromyaria +meromyarian +merong +meronothite +merop +merope +meropes +meropia +meropidae +meropidan +meroplankton +meropodite +meropoditic +merops +merorganize +meros +merosomal +merosomata +merosomatous +merosome +merosthenic +merostomata +merostome +merostomous +merosymmetry +merot +merotomize +merotomy +merotropism +merotropy +merovingian +meroxene +meroz +merozoa +merozoite +merpeople +merralee +merrall +merrett +merri +merribauks +merribush +merrick +merricourt +merriday +merridew +merridie +merrie +merrielle +merrier +merriest +merrifield +merril +merrile +merrilee +merriless +merrili +merrill +merrillan +merrills +merrils +merrily +merrimac +merriman +merriment +merrin +merriness +merrison +merrit +merrithew +merritt +merrittstown +merriweather +merriwether +merriwhether +merron +merrouge +merrow +merry +merryandrew +merrygoround +merryhearted +merryhill +merrymaker +merrymakers +merrymaking +merryman +merrymeeting +merrypoint +merryshow +merrythought +merrytrotter +merryvale +merryville +merryweather +merrywing +mers +mersc +mersch +merse +mersenne +mersey +merseybeats +merseyside +mershon +mersin +mersinger +mersky +mersmann +merson +merten +mertens +mertensia +mertert +merton +mertona +mertons +mertz +mertzon +mertztown +meru +merukenya +merula +merule +meruline +merulioid +merulius +merunix +merunkova +merv +merve +merveileux +mervin +mervyn +merwari +merwe +merwin +merwinite +merwoman +merworth +merxia +merychippus +merycism +merycismus +merycoidodon +meryl +merzbach +mesa +mesabite +mesaconate +mesaconic +mesad +mesadenia +mesail +mesaka +mesakin +mesal +mesalike +mesalliance +mesalliances +mesally +mesameboid +mesange +mesaortitis +mesara +mesaraic +mesaraical +mesarch +mesari +mesarteritic +mesarteritis +mesartim +mesas +mesaticephal +mesatipellic +mesatipelvic +mesatiskelic +mesaxonic +mescal +mescalero +mescalism +mescals +mesch +mesci +mesdames +mesdos +mese +meseberg +mesech +mesectoderm +meseemed +meseems +mesem +mesembryo +mesembryonic +mesena +mesenbourg +mesenchyma +mesenchymal +mesenchyme +mesendoderm +mesengo +mesenna +mesenterial +mesenterical +mesenteries +mesenteritic +mesenteritis +mesenteron +mesenteronic +mesentery +mesentoderm +mesepimeral +mesepimeron +meservey +mesethmoid +mesethmoidal +mesg +mesguich +mesh +mesha +meshach +meshaet +meshcherski +meshech +meshed +meshelemiah +meshes +meshezabeel +meshier +meshik +meshillemith +meshillemoth +meshing +meshobab +meshok +meshoppen +meshrabiyeh +meshullam +meshullemeth +meshwork +meshworks +meshy +mesi +mesiad +mesial +mesially +mesian +mesiang +mesic +mesically +mesick +mesilla +mesillapark +mesing +mesiobuccal +mesioclusion +mesiodistal +mesioincisal +mesiolabial +mesiolingual +mesion +mesiopulpal +mesioversion +mesita +mesitae +mesites +mesitidae +mesitite +mesityl +mesitylene +mesitylenic +mesketo +meskhetian +meskill +meskimen +meskin +mesko +mesme +mesmedje +mesmer +mesmerian +mesmerical +mesmerically +mesmerism +mesmerist +mesmerists +mesmerite +mesmerizable +mesmerize +mesmerized +mesmerizee +mesmerizer +mesmerizers +mesmerizes +mesmerizing +mesmeromania +mesmes +mesnality +mesnalty +mesne +meso +mesoamerica +mesoappendix +mesoarial +mesoarium +mesobaite +mesobar +mesobenthos +mesoblast +mesoblastema +mesoblastic +mesobregmate +mesocaecal +mesocaecum +mesocardia +mesocardium +mesocarp +mesocentrous +mesocephal +mesocephalic +mesocephalon +mesocephaly +mesochilium +mesochroic +mesocoele +mesocoelian +mesocoelic +mesocolic +mesocolon +mesocoracoid +mesocranial +mesocratic +mesode +mesodermal +mesodermic +mesodesma +mesodesmidae +mesodevonian +mesodevonic +mesodic +mesodont +mesoenatides +mesofurca +mesofurcal +mesogaster +mesogastral +mesogastric +mesogastrium +mesogloea +mesogloeal +mesognathic +mesognathion +mesognathism +mesognathous +mesognathy +mesogyrate +mesohepar +mesohippus +mesokurtic +mesolabe +mesolcina +mesole +mesolecithal +mesolimnion +mesolite +mesolithic +mesologic +mesological +mesology +mesomere +mesomeric +mesomerism +mesometral +mesometric +mesometrium +mesomorph +mesomorphic +mesomorphous +mesomorphy +mesomyodi +mesomyodian +mesomyodous +meson +mesonasal +mesonephric +mesonephros +mesonic +mesonotal +mesonotum +mesons +mesonychidae +mesonyx +mesopectus +mesoperiodic +mesopetalum +mesophile +mesophilic +mesophilous +mesophragm +mesophragma +mesophragmal +mesophryon +mesophyll +mesophyllous +mesophyllum +mesophyte +mesophytic +mesophytism +mesopic +mesoplankton +mesoplast +mesoplastic +mesoplastral +mesoplastron +mesopleural +mesopleuron +mesoplodon +mesoplodont +mesopo +mesopodial +mesopodiale +mesopodium +mesopotamia +mesopotamian +mesopotamic +mesoprosopic +mesorchial +mesorchium +mesore +mesorectal +mesorectum +mesoreodon +mesorrhin +mesorrhinal +mesorrhinian +mesorrhinism +mesorrhinium +mesorrhiny +mesosalpinx +mesosaur +mesosauria +mesosaurus +mesoscapula +mesoscapular +mesoscutal +mesoscutum +mesoseismal +mesoseme +mesosiderite +mesosigmoid +mesoskelic +mesosoma +mesosomatic +mesosome +mesosperm +mesosphere +mesospheric +mesospore +mesosporic +mesosporium +mesostasis +mesosternal +mesosternum +mesostethium +mesostoma +mesostomid +mesostyle +mesostylous +mesosuchia +mesosuchian +mesotarsal +mesotartaric +mesothelae +mesothelial +mesothelium +mesotherm +mesothermal +mesothesis +mesothet +mesothetic +mesothetical +mesothoracic +mesothorax +mesothorium +mesotonic +mesotroch +mesotrocha +mesotrochal +mesotrochous +mesotron +mesotropic +mesotympanic +mesotype +mesovarian +mesovarium +mesoventral +mesoxalate +mesoxalic +mesoxalyl +mesozoa +mesozoan +mesozoic +mespil +mespilus +mespot +mesqan +mesquakie +mesquit +mesquita +mesquites +mesra +mesropian +mess +messaga +messagaekol +message +messaged +messagery +messages +messaging +messala +messalian +messalina +messaline +messamena +messan +messana +messaoudi +messapian +messdog +messdos +messdross +messe +messed +messeigneurs +messelite +messemer +messenger +messengered +messengers +messeni +messer +messerian +messes +messet +messiah +messiahs +messiahship +messianic +messianism +messianist +messianize +messias +messick +messidor +messier +messiest +messily +messin +messina +messines +messinese +messiness +messing +messinger +messinia +messiter +messloss +messman +messmate +messmates +messmen +messmer +messner +messor +messroom +messtin +messua +messuage +messy +messydos +mestayer +mestee +mester +mesterbein +mestico +mestimate +mestimates +mestimation +mestimator +mestimators +mestiri +mestiza +mestizas +mestizo +mestizoes +mestizos +mestnii +mesto +mestome +mestral +mestre +mestres +mesua +mesurier +mesut +mesuvier +mesvinian +mesyac +mesyaca +mesyaz +mesyazev +mesymnion +meszaros +meta +metabases +metabasis +metabasite +metabatic +metabi +metabiology +metabiosis +metabiotic +metabit +metabits +metabletic +metabola +metabolia +metabolian +metabolical +metabolism +metabolites +metabolize +metabolized +metabolizers +metabolizes +metabolizing +metabolon +metabolous +metaboly +metaborate +metaboric +metabrushite +metabular +metacarpal +metacarpale +metacarpals +metacarpi +metacarpus +metacenter +metacentral +metacentric +metachemic +metachrome +metachronism +metachrosis +metacircular +metacism +metacismus +metaclase +metacneme +metacoele +metacoelia +metaconal +metacone +metaconid +metaconule +metacoracoid +metacrasis +metacresol +metacromial +metacromion +metacryst +metacyclic +metacymene +metad +metadiabase +metadiazine +metadiorite +metadromous +metafile +metafiles +metafluidal +metafonetica +metagalactic +metagalaxy +metagaster +metagastric +metagastrula +metage +metageitnion +metagelatin +metagenesis +metagenetic +metagenic +metageometer +metageometry +metagnath +metagnathism +metagnathous +metagnomy +metagnostic +metagram +metagraphic +metagraphy +metaigneous +metainfo +metaip +metairie +metakinesis +metakinetic +metal +metalab +metalanguage +metalaw +metalbumin +metalcraft +metalcutting +metaldehyde +metaled +metalepsis +metaleptic +metaleptical +metaler +metalevels +metalheadz +metaline +metalined +metaling +metalism +metalist +metalists +metalization +metalize +metalized +metalizes +metalizing +metallary +metalled +metalleity +metallic +metallica +metallical +metallically +metallicity +metallicize +metallicly +metallics +metallide +metalliform +metallify +metallik +metalline +metalling +metallism +metallize +metallogenic +metallogeny +metallograph +metalloidal +metallometer +metallophone +metalmonger +metalogic +metalogical +metaloph +metalorganic +metaloscope +metaloscopy +metals +metaluminate +metaluminic +metalware +metalworker +metalworkers +metalworking +metalworks +metamagical +metamer +metameral +metamere +metameric +metameride +metamerism +metamerized +metamerous +metamers +metamery +metamora +metamorphize +metamorphous +metamorphy +metamynodon +metan +metanalysis +metaname +metanauplius +metanee +metanephric +metanephron +metanephros +metanepionic +metanetwork +metanilic +metanomen +metanotal +metanotion +metanotions +metanotum +metantimonic +metanym +metaorganism +metapectic +metapectus +metapepsis +metapeptone +metaperiodic +metaphase +metaphloem +metaphonical +metaphonize +metaphony +metaphor +metaphorical +metaphorist +metaphorize +metaphors +metaphragm +metaphragmal +metaphrase +metaphrasis +metaphrast +metaphrastic +metaphyseal +metaphysic +metaphysical +metaphysics +metaphysis +metaphyte +metaphytic +metaphyton +metaplasia +metaplasis +metaplasm +metaplasmic +metaplast +metaplastic +metapleural +metapleure +metapleuron +metaplumbate +metaplumbic +metapneustic +metapodial +metapodiale +metapodium +metapolitic +metapolitics +metapophysis +metapore +metaprotein +metapsychic +metapsychics +metapsychism +metapsychist +metarabic +metareum +metarhyolite +metarossite +metarsenic +metarsenious +metarsenite +metarule +metarules +metascutal +metascutum +metasearch +metasilicate +metasilicic +metasoma +metasomal +metasomasis +metasomatic +metasomatism +metasome +metasperm +metaspermae +metaspermic +metaspermous +metastable +metastannate +metastannic +metastases +metastasis +metastasize +metastasized +metastasizes +metastatic +metastatical +metasternal +metasternum +metasthenic +metastibnite +metastigmate +metastoma +metastome +metastrophe +metastrophic +metastyle +metasymbol +metatantalic +metatarsal +metatarsale +metatarsally +metatarse +metatarsi +metatarsus +metatatic +metataxic +metate +metathalamus +metatheology +metatheria +metatherian +metatheses +metathesis +metathetic +metathetical +metathing +metathoracic +metathorax +metatitanate +metatitanic +metatoluic +metatracheal +metatron +metatrophic +metatungstic +metatype +metatypic +metaurus +metavanadate +metavanadic +metavariable +metavauxite +metavoltine +metaw +metawari +metaxa +metaxenia +metaxite +metaxylem +metaxylene +metayer +metazoa +metazoal +metazoan +metazoans +metazoea +metazoic +metazoon +metcalf +metcalfe +metcalfia +metclaf +metclafe +mete +meted +metekel +metel +metelius +metellus +metelski +metemma +metempiric +metempirical +metempirics +metempsychic +metemptosis +metene +metenteron +metenteronic +meteo +meteogram +meteograph +meteor +meteorgraph +meteorical +meteorically +meteorism +meteorist +meteoristic +meteorital +meteorite +meteorites +meteoritics +meteorize +meteorlike +meteorogram +meteorograph +meteoroid +meteoroidal +meteoroids +meteorolite +meteorolitic +meteorologic +meteorology +meteorometer +meteoroscope +meteoroscopy +meteorous +meteors +metepimeral +metepimeron +meter +meterage +meterages +metered +metergauge +metergram +metering +meterless +meterman +meterod +meters +metership +metes +metestick +metewand +meteyard +meth +methacrylic +methadone +methadose +methan +methanal +methanate +methanes +methanoic +methanols +methanolysis +methanometer +methaqualone +methedras +methegammah +metheglin +methenamine +methene +metheny +methenyl +mether +metherell +methi +methid +methide +methine +methinks +methiodide +methionic +methiwalla +methli +methobromide +method +methodaster +methodeutic +methodical +methodically +methodics +methodistic +methodists +methodisty +methodize +methodized +methodizer +methodizes +methodizing +methodless +methodology +methods +methody +methot +methought +methow +methoxide +methoxychlor +methoxyl +methronic +meths +methusael +methuselah +methylal +methylamine +methylate +methylation +methylator +methylenitan +methylic +methylol +methylolurea +methylosis +methylotic +methyls +metic +meticais +metical +meticulosity +meticulously +metiers +metiks +meting +metis +metivier +metlatonoc +metler +meto +metoac +metochous +metochy +metod +metoestrous +metoestrum +metogenesis +metoki +metoko +metol +metomka +metonym +metonymic +metonymical +metonymies +metonymous +metonymously +metonyms +metonymy +metope +metopias +metopic +metopion +metopism +metopoceros +metopomancy +metopon +metoposcopic +metoposcopy +metosteal +metosteon +metoxazine +metoxenous +metoxeny +metr +metra +metrailer +metralgia +metranate +metranemia +metrano +metratonia +metrazol +metre +metrectasia +metrectatic +metrectomy +metrectopia +metrectopic +metrectopy +metred +metreless +metres +metreship +metreta +metrete +metretes +metria +metric +metrical +metrically +metricate +metricated +metricates +metricating +metrication +metrician +metricism +metricist +metricize +metricized +metricizes +metricizing +metrics +metricton +metridium +metrified +metrifier +metrifies +metrify +metrifying +metring +metrist +metrists +metritis +metro +metrocampsis +metrocarat +metrocele +metroclyst +metrocracy +metrocratic +metrodynia +metrofibroma +metrography +metroliner +metroliners +metrological +metrologies +metrologist +metrologue +metrology +metromalacia +metromania +metromaniac +metrometer +metroneuria +metronomes +metronomic +metronomical +metronymic +metronymy +metropathia +metropathic +metropathy +metropole +metropolis +metropolises +metropolitan +metropolite +metropolitic +metroptosia +metroptosis +metrorrhagia +metrorrhagic +metrorrhea +metrorrhexis +metrorthosis +metros +metrosalpinx +metroscope +metroscopy +metrosideros +metrostaxis +metrostyle +metrotherapy +metrotome +metrotomy +metroxylon +metru +mets +metsahovi +metsing +metsos +metta +mettar +mette +metter +metti +mettig +mettled +mettler +mettles +mettlesomely +mettrey +mettrick +metu +metuchen +metusia +metyibo +metyn +metz +metze +metzenbaum +metzenrath +metzger +metzler +metzman +metzontla +meubus +meudana +meum +meunier +meuniere +meunim +meurisse +meurt +meus +meuse +meusel +meute +mevase +meverink +meville +mevis +mevluet +mevm +mewa +meward +mewari +mewasi +mewed +mewer +mewing +mewl +mewled +mewler +mewlers +mewling +mewls +mews +mewuk +mewun +mexas +mexc +mexia +mexica +mexican +mexicanas +mexicanero +mexicanhat +mexicanize +mexicans +mexico +mexicobeach +mexicocity +mexitl +mexitli +mexta +meyach +meyah +meyburg +meyeli +meyen +meyer +meyerinck +meyerink +meyermann +meyers +meyersdale +meyersville +meynell +meynert +meyniel +meyobe +meyrink +meza +mezahab +mezam +mezama +mezbah +mezcal +mezcals +mezentian +mezentism +mezentius +mezereon +mezereum +mezieres +mezime +mezquit +mezquital +mezquite +mezquites +mezuza +mezuzah +mezuzahs +mezuzas +mezzanine +mezzanines +mezzano +mezzarco +mezzaselva +mezzetti +mezzofanti +mezzogiorno +mezzograph +mezzoiuso +mezzorilevo +mezzorilievo +mezzos +mezzotint +mezzotinter +mezzotinto +mfangano +mfantse +mfanyana +mfdd +mfecc +mfgeng +mfhi +mfhu +mfinu +mflo +mfonyam +mfouati +mfoumou +mfoundi +mfpr +mftl +mfume +mfumte +mfumu +mfununga +mfuti +mgao +mgardner +mgbako +mgbakpa +mgbato +mgbo +mgemba +mget +mgetty +mghccc +mghep +mgmt +mgolog +mgoumba +mgprocedure +mgroptions +mgsoft +mhamed +mhar +mhari +mhent +mhinga +mhmhm +mhmhmmhmhmh +mhmmhmh +mhometer +miadeba +miagao +miagol +miahuatla +miahuatlan +miala +miamee +miami +miamia +miamigardens +miamin +miamisburg +miamitown +miamiville +miamu +mian +miango +miani +mianka +mianmim +mianmin +miano +miao +miaodong +miaoli +miaotse +miaotze +miaou +miaoued +miaouing +miaous +miaow +miaowed +miaower +miaowing +miaows +miaoyao +miaplacidus +miargyrite +miari +miaro +miarolitic +miarra +mias +miasek +miaskite +miasm +miasmas +miasmata +miasmatic +miasmatical +miasmatize +miasmatology +miasmatous +miasmic +miasmology +miasmous +miasms +miastor +miaul +miauled +miauler +mibhar +mibs +mibsam +mibzar +mica +micaceous +micacious +micacite +micado +micaela +micah +micahael +micaiah +micanopy +micareme +micas +micasization +micasize +micate +mication +micaville +micawber +micawberish +micawberism +miccosukee +mice +miceli +micellar +micelle +miceplot +micerun +micesource +mich +micha +michabo +michabou +michael +michaela +michaeli +michaelian +michaelides +michaelina +michaeline +michaelites +michaell +michaella +michaelmas +michaels +michaelson +michaelw +michah +michaiah +michail +michailov +michal +michalak +michalchyk +michaleen +michalek +michales +michalis +michaliszyn +michalos +michalowski +michan +michaud +miche +micheal +michein +michel +michela +michelangelo +michele +michelene +micheli +michelia +michelina +micheline +michell +michelle +michelman +michelonne +michelot +michelotti +michels +michelsen +michelson +michelussi +micher +michette +michey +michi +michico +michie +michiel +michigamea +michigamme +michigan +michigancity +michigander +michiganite +michigantown +michika +michike +michiko +michile +miching +michio +michiyo +michiza +michkovitch +michl +michmas +michmash +michmethah +michoaca +michoacan +michoacano +michod +michon +michri +micht +mick +mickel +mickens +mickey +mickeys +micki +mickie +mickle +mickleton +micklos +micks +mickser +micky +miclovan +micmac +mico +micol +micole +micolici +micom +micoma +micomb +micomh +miconcave +miconia +micoud +micr +micra +micramock +micrampelis +micranatomy +micrander +micrandrous +micraner +micrangelo +micraster +micrergate +micresthete +micrify +micro +microammeter +microampere +microanalyst +microangelo +microb +microbal +microbalance +microbar +microbars +microbased +microbattery +microbe +microbeless +microbeproof +microbes +microbial +microbian +microbic +microbicidal +microbicide +microbiology +microbion +microbiosis +microbiota +microbiotic +microbious +microbism +microbium +microblast +microbomb +microbots +microbrachia +microburet +microburette +microburner +microburst +microbursted +microbursts +microbus +microbuses +microcaltrop +microcardia +microcardius +microcarpous +microcebus +microcentrum +microcentury +microcephal +microcephaly +microchaeta +microcheilia +microcheiria +microchemic +microchip +microchiria +microcinema +microcitrus +microclastic +microclimate +microcline +microcnemia +microcoat +micrococcal +micrococceae +micrococcus +microcode +microcoded +microcodes +microcoding +microcolon +microconodon +microcopies +microcopy +microcoria +microcosmal +microcosmian +microcosmic +microcosmos +microcosms +microcosmus +microcoulomb +microcranous +microcrith +microcrystal +microcurie +microcycle +microcycles +microcyprini +microcyst +microcyte +microcytosis +microdatics +microdentism +microdentous +microdont +microdontism +microdontous +microdose +microdot +microdrawing +microdrili +microdrive +microdyne +microelement +microerg +microfarad +microfauna +microfelsite +microfiches +microfilaria +microfilm +microfilmed +microfilmer +microfilming +microfilms +microfloppy +microflora +microfluidal +microform +microforms +microfossil +microfossils +microfungus +microfurnace +microgadus +microgamete +microgamy +microgaster +microgastria +microgeology +microgilbert +microglia +microglossia +micrognathia +micrognathic +micrografx +microgram +microgramme +microgrammes +micrograms +microgranite +micrograph +micrographer +micrographic +micrographs +micrograver +microgravity +microgroove +microgrooves +microgyne +microgyria +microhelp +microhenry +microhepatia +microhertz +microhm +microhmmeter +microjump +microjumps +microlenat +microlevel +microlink +microlite +microliter +microlith +microlithic +microlitic +microlog +micrologic +micrological +micrologist +micrologue +micrology +microlux +micromac +micromania +micromaniac +micromazia +micromeli +micromelia +micromelic +micromelus +micromeral +micromere +micromeria +micromeric +micromerism +micromeritic +micrometer +micrometers +micromethod +micrometry +micromicron +micromil +micromorph +micromotion +micromotor +micromyelia +micron +micronauts +micronesian +micronesians +micronize +micronometer +microns +micronuclear +micronucleus +microorganic +micropenis +microphage +microphagous +microphagy +microphakia +microphallus +microphone +microphones +microphonic +microphonics +microphoning +microphot +microphysics +microphytal +microphyte +microphytic +micropia +micropin +micropipette +microplakite +micropodal +micropodi +micropodia +micropodidae +micropore +microporous +microprint +microproblem +microprogram +micropsia +micropsy +micropterism +micropterous +micropterus +micropteryx +micropus +micropylar +micropyle +microreid +microrhabdus +microrhopias +micros +microsauria +microsaurian +microscience +microsclere +microsclerum +microscopal +microscope +microscopes +microscopial +microscopic +microscopics +microscopid +microscopies +microscopist +microscopium +microscopize +microsec +microsecond +microseconds +microsection +microseism +microseismic +microseme +microseptum +microsft +microsmatic +microsmatism +microsoft +microsoftr +microsofts +microsoma +microsome +microsomia +microsommite +microsorex +microsort +microspace +microspacing +microspecies +microspermae +microsphaera +microsphere +microspheric +microsplenia +microsplenic +microspore +microsporic +microsporon +microsporous +microsporum +microstat +microstate +microstates +microsthene +microsthenes +microsthenic +microstome +microstomia +microstomous +microstore +microstylis +microstylous +microsurgeon +microsurgery +microsystems +microtape +microtapes +microtechnic +microtek +microtheos +microtherm +microthermic +microthorax +microtia +microtinae +microtine +microtines +microtome +microtomic +microtomical +microtomist +microtomy +microtone +microtus +microtypal +microtype +microtypical +microv +microvax +microvaxen +microvaxes +microvolt +microvolume +microwatt +microwave +microwaved +microwaves +microwaving +microweber +microword +microwords +microzeal +microzoa +microzoal +microzoan +microzoaria +microzoarian +microzoary +microzoft +microzoic +microzone +microzooid +microzoology +microzoon +microzyma +microzyme +microzymian +micrurgic +micrurgical +micrurgist +micrurgy +micrurus +miction +micturate +micturation +micturition +micucci +micula +mida +midaa +midafternoon +midair +midairs +midas +midash +midatlantic +midaugust +midautumn +midaxillary +midbody +midbrain +midbrains +midcentral +midchannel +midcourse +midday +middays +middecember +midden +middens +middenstead +middie +middies +middin +middle +middleaged +middlearth +middlebass +middleboro +middlebourne +middlebranch +middlebrook +middlebrooks +middlebrow +middlebrows +middleburg +middleburgh +middlebuster +middleclass +middled +middleearth +middleendian +middlefalls +middlefield +middlegrove +middlehaddam +middleincome +middleisland +middlemanism +middlemas +middlemass +middlemost +middlename +middlepart +middlepoint +middleport +middleput +middler +middleriver +middlers +middles +middlesboro +middlesex +middleton +middletown +middleville +middlewards +middleware +middleway +middlewoman +middling +middlingish +middlingly +middlingness +middlings +middorsal +middy +mide +mideast +mider +midevening +midewiwin +midfacial +midfield +midford +midforenoon +midfrontal +midgard +midge +midges +midgets +midgette +midgety +midgley +midgut +midguts +midgy +midh +midha +midheaven +midhi +midi +midian +midianite +midianites +midianitish +mididae +midified +midigenie +midik +midiki +midimaster +midindian +midinelte +midioke +midipyrenees +midiron +midis +midjanuary +midjivin +midjune +midkiff +midland +midlandcity +midlander +midlandize +midlandpark +midlands +midlandward +midlatitude +midleg +midlegs +midlenting +midler +midlife +midline +midlines +midlothian +midmain +midmarch +midmay +midmaze +midmonth +midmonthly +midmonths +midmorning +midmost +midmosts +midnapore +midnight +midnightly +midnights +midnite +midnoon +midnovember +midob +midobi +midoctober +midori +midparent +midparentage +midparental +midpines +midpit +midpoints +midramu +midranges +midrash +midrashic +midrib +midribbed +midribs +midriff +midriffs +mids +midscreen +midseason +midsentence +midseptember +midship +midshipmite +midships +midsivindi +midspace +midst +midstory +midstout +midstreet +midstroke +midsts +midstyled +midsummer +midsummerish +midsummers +midsummery +midt +midtap +midterms +midthirties +midtone +midtown +midtowns +midu +midupper +midvale +midvein +midverse +midville +midwahgi +midward +midwaria +midwatch +midway +midwaycity +midways +midweekly +midweeks +midwestern +midwesterner +midwestward +midwich +midwife +midwifed +midwiferies +midwifery +midwifes +midwifing +midwinter +midwinterly +midwinters +midwintry +midwise +midwived +midwives +midwiving +midworld +midyear +midyears +midzuno +midzunos +miec +mieczysl +mieczyslaw +miedo +mieen +miegs +miehe +miehlantse +miek +mieke +mieken +mieko +miel +miele +mielikki +mielke +miello +mienge +miens +miep +miercoles +mierda +miere +mierendorf +mierio +miernik +miers +miersite +mieru +mierwa +mies +miesch +miescherian +miescke +mietek +mieux +miew +mieze +miezitis +miffed +miffiness +miffing +mifflin +mifflinburg +mifflintown +mifflinville +miffs +miffy +mifi +mifsud +mifune +miga +migaama +migaba +migabac +migam +migama +migani +migbe +migdalel +migdalgad +migdalia +migdol +migenes +migg +miggs +might +mightalso +mightbe +mightest +mightier +mighties +mightiest +mightily +mightiness +mightless +mightn +mightnt +mights +mighty +mightyfax +mightyship +migicovsky +migil +migili +migliari +migliazza +miglio +miglioriti +migmatite +mignault +migniardise +mignini +mignon +mignone +mignonette +mignonettes +mignonne +mignonness +mignons +mignts +migonitis +migove +migraine +migraines +migrainoid +migrainous +migrants +migrate +migrated +migrates +migrating +migration +migrational +migrationist +migrations +migrative +migrator +migratorial +migrators +migron +migs +miguel +miguela +miguelenho +migueleno +miguelin +miguelita +miguelito +miguez +miguhni +miha +mihaela +mihai +mihail +mihailescu +mihailo +mihailov +mihailovna +mihaita +mihajlo +mihalev +mihalis +mihalko +mihaly +mihalyffi +mihan +mihanovich +mihara +miharaite +mihasoft +mihavane +mihavani +mihawani +mihirmah +mihiroa +mihm +mihrab +mihram +miikka +miiko +miisa +mija +mijakite +mijamin +mijanou +mijares +mijenix +miji +mijikenda +mijivin +mijl +mijn +mijnheer +mijnheers +mijong +miju +mika +mikado +mikadoate +mikadoism +mikados +mikael +mikaela +mikami +mikana +mikani +mikania +mikarew +mikarewariaw +mikaru +mikasuki +mikauru +mikawa +mike +miked +mikeg +mikel +mikeladze +mikelis +mikell +mikelonis +mikes +mikesbox +mikespc +mikey +mikeyir +mikha +mikhael +mikhail +mikhailov +mikhalkov +miki +mikie +mikifore +mikihito +mikik +mikio +mikir +mikiri +mikkelborg +mikkeli +mikki +mikko +miklai +miklas +miklavic +miklos +mikloth +mikneiah +miko +mikos +mikrons +miksak +miksik +mikula +mikulka +mikulski +mikuni +mikvah +mikveh +mila +milaca +miladies +miladis +milady +milage +milages +milagros +milailov +milaknis +milakovic +milalai +milam +milammeter +milan +milanau +milanese +milani +milanion +milankovitch +milano +milanov +milanovich +milanville +milar +milarite +milash +milbank +milbanke +milbourn +milbridge +milburn +milcah +milch +milchelson +milcher +milchy +milcom +mild +milda +milden +mildened +mildenhall +mildening +mildens +milder +mildest +mildew +mildewed +mildewer +mildewing +mildews +mildewy +mildhearted +mildish +mildjingi +mildly +mildness +mildred +mildrid +mile +mileage +mileages +miledh +mileere +milena +milene +milennium +milepost +mileposts +miler +milers +miles +milesburg +milescity +milesian +milesima +milesius +milestones +milesville +milet +miletic +miletum +miletus +milev +mileway +miley +milfay +milfoil +milfoils +milford +milgrim +milha +milhouse +miliaceous +milian +miliarensis +miliaria +miliarium +miliary +milicent +milichen +milieus +milieux +milijan +milikin +mililamp +milingimbi +milinkovich +milintasai +milintrasai +miliola +milioliform +milioline +miliolite +miliolitic +milion +milionario +miliritbi +milissent +militaire +militancy +militant +militantly +militantness +militants +militaries +militarily +militariness +militaristic +militarists +militarize +militarized +militarizes +militarizing +military +militaryism +militaryment +militaster +militated +militates +militating +militation +militia +militiaman +militias +militiate +militka +militky +milium +milivoj +milizia +miljan +milk +milka +milkbush +milked +milken +milker +milkeress +milkers +milkfat +milkfish +milkgrass +milkhouse +milkier +milkiest +milkily +milkiness +milking +milkless +milklike +milklivered +milkmaid +milkmaids +milkman +milkmans +milkmen +milkness +milks +milkshake +milkshakes +milkshed +milkshop +milksick +milksop +milksopism +milksoppery +milksopping +milksoppish +milksoppy +milksops +milkstone +milkweeds +milkwhite +milkwood +milkwort +milky +mill +milla +millaa +millable +milladore +millage +millaire +millais +millan +milland +millar +millard +millars +millay +millbarge +millbo +millboard +millboro +millbourne +millbrae +millbrook +millburn +millbury +millcity +millclapper +millcourse +millcreek +milldale +milldam +milldams +milldshaw +mille +milled +millefiori +milleflorous +millefoliate +millella +millen +millenarist +millenary +millenia +millenium +millennarian +millennia +millennial +millennially +millennian +millenniary +millennium +millenniums +millepede +millepora +millepore +milleporine +milleporite +milleporous +miller +milleran +millercity +milleress +milleri +millering +millerism +millerite +millerole +millerplace +millers +millersburg +millerscreek +millersferry +millersport +millerstown +millersview +millersville +millerton +millerville +millerwood +milles +millescudi +millesimal +millesimally +millet +milletaine +millets +millett +millette +millettia +millfeed +millfield +millful +millhall +millheim +millhollin +millhouse +millhousen +milli +milliad +milliammeter +milliamp +milliampere +milliamperes +millian +milliard +milliardaire +milliards +milliare +milliarium +milliary +millibar +millibars +millican +millicent +millichamp +millicron +millicurie +millie +millieme +millier +millifarad +millifold +milliform +milligal +milligan +milligrade +milligram +milligramage +milligrams +millihenry +millijoule +milliken +millikin +millilambert +millilampson +millile +milliliter +milliliters +millilux +millimes +millimeter +millimeters +millimetre +millimetres +millimetric +millimicron +millimolar +millimole +millinaire +millincost +milline +milliner +millinerial +millinering +milliners +milling +millings +millington +millingtonia +millinocket +millinormal +millio +millioctave +millioersted +milliohms +million +millionaire +millionaires +millionary +millioned +millioner +milliones +millionfold +millionism +millionist +millionize +millionpound +millions +millionth +millionths +millipedes +milliphot +millipoise +millirem +millirems +milliron +millis +millisec +millisecond +milliseconds +millisent +millistere +millite +millithrum +millivolt +millivolts +milliwatt +millman +millmont +millneck +millo +millocracy +millocrat +millocratism +millonaria +millonario +millot +millowitsch +millowner +milloy +millozzi +millpoint +millpond +millponds +millpool +millport +millpost +millrace +millraces +millrift +millriver +millrun +millruns +millry +millrynd +mills +millsap +millsboro +millshoals +millsite +millspaugh +millspring +millsprings +millstadt +millstock +millston +millstone +millstones +millstream +millstreams +milltail +milltown +millvale +millvalley +millvillage +millville +millward +millwheel +millwood +millwork +millworker +millworks +millwright +millwrights +milly +milmay +milmine +milne +milner +milnesand +milnesville +milnet +milneth +milnor +milo +milona +milor +milords +milos +milosa +milosci +miloslav +milosne +milotte +milou +milow +milpa +milpitas +milquetoast +milquetoasts +milreis +milroy +mils +milsey +milsie +milski +milstd +milstead +milston +milt +miltary +miltenburg +milter +miltern +miltiest +miltlike +miltom +milton +miltona +miltoncenter +miltonia +miltonian +miltonically +miltonism +miltonist +miltonize +miltonmills +miltonvale +miltou +miltsick +miltu +miltwaste +milty +milutinovic +milvago +milvinae +milvine +milvinous +milvus +milw +milwaukee +milway +milwood +mily +milz +milzbrand +milzie +mima +mimas +mimasu +mimbar +mimble +mimbreno +mimbres +mime +mimed +mimeo +mimeoed +mimeographed +mimeographic +mimeographs +mimeoing +mimeos +mimer +mimers +mimes +mimester +mimetene +mimetesite +mimetical +mimetically +mimetism +mimetite +mimi +mimiambi +mimiambic +mimiambics +mimic +mimical +mimically +mimicism +mimicked +mimicker +mimickers +mimicking +mimico +mimicries +mimicry +mimics +mimidae +mimiery +mimieux +mimika +mimimax +miminae +mimine +miming +miminypiminy +mimithos +mimly +mimmation +mimmest +mimmitation +mimmo +mimmock +mimmocking +mimmocky +mimmood +mimmoud +mimmouthed +mimodrama +mimographer +mimography +mimologist +mimosa +mimosaceae +mimosaceous +mimosas +mimosis +mimosite +mimotype +mimotypic +mimoun +mimp +mimpei +mims +mimsey +mimsi +mimsiest +mimsy +mimulus +mimus +mimusops +mimy +mina +minable +minacious +minaciously +minacity +minaco +minaean +minafer +minagen +minahai +minahasa +minahassa +minahassan +minahassian +minai +minala +minalowang +minamanwa +minamata +minami +minamijima +minang +minangende +minangkabau +minanibai +minansut +minar +minard +minardi +minareted +minarets +minargent +minaro +minas +minasanor +minasbate +minasithil +minasragrite +minastirith +minatare +mination +minatoku +minatorial +minatorially +minatorily +minatorv +minatory +minature +minauderie +minavega +minaway +minazzoli +minbei +minbu +minburn +minced +mincer +mincers +minces +mincey +minch +minchery +minchhang +minchia +minchiang +minchiate +mincier +mincing +mincingly +mincingness +minciotti +minck +minclotti +minco +mincopi +mincopie +mincy +mind +minda +mindbenders +minded +mindedly +mindedness +mindel +mindelian +mindelo +minden +mindencity +mindenmines +minder +mindererus +minders +mindert +mindfields +mindful +mindfully +mindfulness +mindif +mindik +minding +mindiptana +mindiri +mindivi +mindjim +mindless +mindlessly +mindlessness +mindoro +minds +mindset +mindseye +mindsight +mindumbu +minduumo +mindvox +mindwarping +mindy +mine +mineable +mineau +mined +minefields +minegishi +minehead +minelamotte +minelayer +minelayers +minemaster +minendon +mineo +mineola +mineowner +miner +mineragraphy +mineraiogic +mineral +mineralbluff +mineralcity +mineralize +mineralized +mineralizer +mineralizes +mineralizing +mineralogic +mineralogist +mineralogize +mineralpoint +mineralridge +minerals +mineralwater +mineralwells +miners +minersville +minerva +minerval +minervan +minervic +minery +mines +minesweepers +minet +mineta +minetola +minetta +minette +minetti +minetto +mineura +mineville +minevitch +minew +minewe +mineworker +minford +ming +mingat +minge +mingelen +mingho +mingi +mingin +mingle +mingleable +mingled +mingledly +minglement +mingler +minglers +mingles +mingling +minglingly +mingo +mingora +mingoville +mingrelian +minguetite +mingus +mingwort +mingy +minh +minhag +minhah +minhasa +minhwi +mini +miniaceous +miniafia +miniafiaubir +miniamin +minianka +miniate +miniator +miniature +miniatures +miniaturist +miniaturists +miniaturize +miniaturized +miniaturizes +minibikes +miniboink +minibus +minibuses +minibusses +minicab +minicabs +minicalc +minicam +minicamera +minicar +minicars +minichilli +minichillo +minicom +miniconjou +minicoy +minidisk +minidisks +minienize +minier +miniferi +minification +minifie +minifloppies +minifloppy +minify +minifying +minihan +minikin +minikinly +minikins +minilanguage +minile +minimacid +minimal +minimalism +minimalist +minimalists +minimally +minimalpath +minimals +minimaxes +minimetric +minimifidian +minimisation +minimise +minimism +minimistic +minimite +minimitude +minimization +minimizator +minimize +minimized +minimizer +minimizers +minimizes +minimizing +minims +minimum +minimums +minimumsize +minimumtype +minimus +minimuscular +mining +minings +minion +minionette +minionism +minionly +minions +minionship +miniport +minir +minis +miniscribe +miniscule +miniseries +minish +minished +minisher +minishment +miniskirt +miniskirted +miniskirts +minislav +minissi +ministate +ministates +minister +ministered +ministereth +ministering +ministerium +ministers +ministership +ministrable +ministrant +ministrants +ministrate +ministration +ministrative +ministrator +ministrer +ministress +ministries +ministros +ministru +ministry +ministryship +minita +minitab +minitant +minitari +miniterm +minium +minivan +miniver +minivet +minix +minj +minjanti +minjimmina +minjir +minjori +mink +minkery +minkia +minkin +minkish +minkopi +minkova +minks +minkus +minn +minna +minnaert +minnaminnie +minnan +minne +minneapolis +minnehaha +minnelli +minneola +minneota +minnesinger +minnesingers +minnesong +minnesota +minnesotan +minnesotans +minnetaree +minnetonka +minnett +minnewaukan +minni +minniboink +minnich +minnie +minniebush +minnies +minning +minninger +minnith +minniver +minnnie +minnows +minns +minny +mino +minoa +minocqua +minogue +minoize +minokok +minometer +minong +minonk +minooka +minoque +minor +minora +minorage +minorate +minoration +minorca +minorcan +minorcas +minored +minoress +minorhill +minoring +minorist +minorite +minorites +minorities +minority +minors +minorship +minoru +minos +minot +minotafb +minotaur +minotis +minotola +minouche +minovitz +minpan +minqu +minque +minriq +mins +minseito +minsitive +minsk +minsky +minster +minsters +minsteryard +minstrel +minstreless +minstrels +minstrelship +minsy +mint +minta +mintage +mintaka +mintamani +mintaqah +mintaqat +mintbush +minted +minter +mintercity +minters +minthorne +mintier +mintiest +mintil +minting +mintmaker +mintmaking +mintman +mintmark +mintmaster +minto +minton +mintonia +mintra +mints +mintspring +minturn +minty +mintz +minuend +minuends +minuet +minuetic +minuetish +minuets +minufiyah +minuit +minungo +minus +minuscular +minuscule +minuscules +minuses +minusmorgul +minusu +minusut +minutary +minutation +minute +minuted +minutely +minuteness +minuter +minutes +minutest +minuthesis +minutia +minutial +minuting +minutiose +minutiously +minutissimic +minutter +minuut +minvalue +minverite +minwidth +minx +minxes +minxish +minxishly +minxishness +minxship +miny +minya +minyadidae +minyae +minyan +minyanim +minyanka +minyans +minyar +minyard +minyas +miocardia +miocenic +miodrag +miof +miohippus +mioko +miolithic +miomafo +mioplasmia +mior +miora +miortvykh +miorznet +mios +miosis +miosnum +miosnun +miothermic +miotic +miotla +miou +mipa +miphkad +mipps +mips +miptes +miqdadiyah +miqra +miquela +miquelet +miquelon +miquon +mira +mirabehn +mirabel +mirabell +mirabella +mirabelle +mirabile +mirabiliary +mirabilis +mirabilite +mirac +mirach +miracidial +miracidium +miracle +miracles +miraclist +miracosta +miraculist +miraculize +miraculosity +miraculous +miraculously +miradad +mirador +miraflores +mirage +mirages +miragy +mirak +mirakhmedov +miraloma +miramanee +miramax +miramolin +miramon +miramonte +miran +mirana +miranda +mirande +mirandocity +mirandolina +mirandous +miranha +miranhan +miranoa +mirapmin +mirapu +mirarchi +miraski +mirasta +mirate +mirault +miravalles +miravilles +mirbach +mirbane +mirc +mirca +mircalla +mircea +mircha +mirco +mird +mirdaha +mirdha +mirdhakharia +mirdhakora +mirdita +mirdite +mirdjukova +mire +mireau +mired +mireia +mireielle +mireille +mirek +mirel +mirella +mirelle +miremont +mirepoix +mires +mirette +mireya +mirheta +miri +miriam +miriama +miriammir +miric +mirid +miridae +mirielle +mirier +miriest +mirific +mirilla +miriness +miring +mirinska +miris +mirish +miriti +miritiparana +mirititapuia +miriwun +miriwung +miriwungic +mirjam +mirjana +mirk +mirkest +mirkhani +mirkier +mirkily +mirkin +mirkiness +mirko +mirks +mirksome +mirku +mirkwood +mirky +mirliton +mirma +mirna +mirnas +mirnaya +mirniny +mirno +miro +miron +mironi +mironov +miropoix +miroshin +mirosin +miroslav +miroslava +mirounga +miroy +mirpur +mirra +mirrell +mirren +mirriam +mirron +mirror +mirrored +mirrorimage +mirroring +mirrorize +mirrorlake +mirrorlike +mirrors +mirrorscope +mirrory +mirrowmere +mirsa +mirta +mirte +mirth +mirtha +mirthful +mirthfully +mirthfulness +mirthless +mirthlessly +mirths +mirthsome +miru +mirua +mirung +mirv +mirvs +miry +miryachit +mirza +mirzapuri +misa +misaccent +misact +misadapt +misadd +misadded +misaddress +misaddressed +misaddresses +misadjust +misadjusted +misadjusting +misadjusts +misadvantage +misadventure +misadvice +misadvise +misadvised +misadvisedly +misadvises +misadvising +misael +misaffected +misaffection +misaffirm +misagent +misaim +misaimed +misaje +misake +misaki +misalienate +misaligned +misalignment +misallege +misalleging +misalliance +misalliances +misallotment +misallowance +misally +misalter +misamis +misanalyze +misandry +misanswer +misanthropes +misanthropia +misanthropy +misapparel +misappear +misapplied +misapplier +misapplies +misapply +misapplying +misappoint +misappraise +misappre +misapprehend +misarchism +misarchist +misarrange +misarranged +misarranges +misarranging +misarray +misascribe +misasperse +misassay +misassent +misassert +misassign +misassociate +misatone +misattend +misattribute +misaunter +misauthorize +misawa +misaward +misbah +misbandage +misbaptize +misbecome +misbecoming +misbefitting +misbeget +misbegetting +misbegin +misbegot +misbegotten +misbehave +misbehaved +misbehaver +misbehavers +misbehaves +misbehaving +misbehavior +misbehaviour +misbeholden +misbelief +misbeliefs +misbelieve +misbeliever +misbelove +misbeseem +misbestow +misbestowal +misbestowed +misbestowing +misbestows +misbetide +misbias +misbiasing +misbiassed +misbill +misbilling +misbills +misbind +misbirth +misbode +misborn +misbrand +misbug +misbuhg +misbuild +misbusy +misc +miscalculate +miscall +miscalled +miscaller +miscalling +miscalls +miscanonize +miscarriage +miscarriages +miscarried +miscarries +miscarry +miscarrying +miscast +miscasting +miscasts +miscasualty +misceability +miscegenate +miscegenator +miscegenetic +miscegine +miscelaneous +miscellanea +miscellanies +miscellanist +mischa +mischallenge +mischance +mischanceful +mischances +mischancy +mischarge +mischarged +mischarges +mischarging +mischief +mischiefful +mischiefs +mischieve +mischievious +mischievous +mischio +mischler +mischoice +mischoose +mischristen +miscibility +miscipher +miscite +misclaim +misclaiming +misclass +misclassify +miscognizant +miscoin +miscoinage +miscolor +miscommand +miscommit +miscompare +miscomplain +miscomplaint +miscompose +miscompute +misconceive +misconceived +misconceiver +misconceives +miscondition +misconduct +misconducted +misconfer +misconfident +misconjugate +misconstruct +misconstrue +misconstrued +misconstruer +misconstrues +misconvey +miscook +miscookery +miscopied +miscopies +miscopy +miscopying +miscorrect +miscounsel +miscount +miscounted +miscounting +miscounts +miscovet +miscreance +miscreancy +miscreants +miscreate +miscreated +miscreation +miscreative +miscreator +miscredited +miscredulity +miscreed +miscript +miscrop +miscstuf +miscue +miscued +miscues +miscuing +misculture +miscurvature +miscut +misczak +misdate +misdated +misdateful +misdates +misdaub +misdeal +misdealer +misdealing +misdeals +misdealt +misdecide +misdecision +misdeclare +misdeed +misdeeds +misdeem +misdeemful +misdeems +misdefine +misdefined +misdefines +misdefining +misdeformed +misdeliver +misdelivery +misdemean +misdemeanant +misdemeanist +misdemeanor +misdemeanors +misdentition +misderive +misdescribe +misdescriber +misdesigned +misdesire +misdetermine +misdev +misdevise +misdevoted +misdevotion +misdiagnose +misdiagnosed +misdiagnoses +misdiagnosis +misdid +misdiet +misdirect +misdirected +misdirecting +misdirection +misdirects +misdispose +misdivide +misdivision +misdo +misdoer +misdoers +misdoes +misdoing +misdoings +misdone +misdoubt +misdoubted +misdoubts +misdower +misdraw +misdrawn +misdraws +misdread +misdrive +mise +misease +misedit +misedits +miseducate +miseducated +miseducates +miseducating +miseducation +miseducative +miseffect +misegian +misemphasis +misemphasize +misemploy +misemployed +misemploying +misemploys +misencourage +misendeavor +misener +misenforce +misengrave +misenheimer +misenite +misenjoy +misenroll +misentitle +misenus +miserabilia +miserabilism +miserabilist +miserability +miserable +miserables +miserably +miserdom +miserected +miserere +misereres +miserhood +miseria +misericord +misericordia +miseries +miserism +miserliness +miserly +misers +misery +mises +misesteem +misestimate +misestype +misexample +misexecute +misexecution +misexpend +misexplain +misexpound +misexpress +misfaith +misfare +misfashion +misfather +misfault +misfeasance +misfeasances +misfeasanee +misfeasor +misfeasors +misfeature +misfeatures +misfee +misfeechr +misfield +misfigure +misfile +misfiled +misfiles +misfiling +misfire +misfired +misfires +misfiring +misfit +misfits +misfitted +misfond +misform +misformation +misformed +misfortunate +misfortune +misfortuned +misfortuner +misfortunes +misframe +misgab +misgauge +misgesture +misgive +misgiving +misgivingly +misgivings +misgo +misgotten +misgovern +misgoverned +misgoverning +misgovernor +misgoverns +misgracious +misgraft +misgrave +misground +misgrow +misgrown +misgrowth +misguess +misguggle +misguidance +misguide +misguided +misguidedly +misguider +misguiders +misguides +misguiding +misguidingly +misha +mishael +mishagua +mishak +mishal +misham +mishandle +mishandled +mishandles +mishandling +mishap +mishappen +mishaps +mishawaka +mishchenkov +misheal +mishear +misheard +mishearing +mishears +mishenin +misher +mishicot +mishima +mishina +mishing +mishka +mishkin +mishma +mishmannah +mishmash +mishmashes +mishmee +mishmi +mishmosh +mishmoshes +mishna +mishnah +mishnaic +mishnic +mishnical +mishongnovi +mishraites +mishulundu +misi +misidentify +misim +misima +misimagine +misiman +misimprove +misimpute +misincensed +misincite +misincline +misinfer +misinference +misinflame +misinform +misinformant +misinformed +misinformer +misinforming +misinforms +misingenuity +misinspired +misinstruct +misinstructs +misintend +misintention +misinter +misinterment +misinterpret +misiones +misirlou +misjoin +misjoinder +misjoined +misjoining +misjudge +misjudged +misjudgement +misjudger +misjudges +misjudging +misjudgingly +misjudgment +misjudgments +miskeep +miskelly +miskemba +misken +miskenning +miskill +miskindle +miskito +misknow +misknowledge +misko +misky +mislabel +mislabeled +mislabeling +mislabelled +mislabelling +mislabels +mislabor +mislaid +mislain +mislanguage +mislay +mislayer +mislayers +mislaying +mislays +mislead +misleadable +misleader +misleading +misleadingly +misleads +mislear +misleared +mislearn +misled +misles +mislest +mislies +mislight +mislike +misliken +mislikeness +misliker +mislikingly +mislippen +mislive +mislocate +mislocation +mislodge +mislove +mismade +mismake +mismanage +mismanaged +mismanager +mismanages +mismanaging +mismark +mismarked +mismarks +mismarriage +mismarriages +mismarry +mismatch +mismatched +mismatches +mismatching +mismatchment +mismate +mismated +mismates +mismating +mismeasure +mismeeting +misminded +mismingle +mismotion +mismove +misname +misnamed +misnames +misnaming +misnarrate +misnatured +misniac +misnomed +misnomer +misnomers +misnumber +misnumbered +misnumbering +misnumbers +misnurture +misnutrition +miso +misobedience +misobey +misobserve +misocapnic +misocapnist +misocatholic +misoccupy +misodi +misogallic +misogamic +misogamist +misogamists +misogamy +misogyne +misogynic +misogynical +misogynism +misogynistic +misogynists +misogynous +misohellene +misologist +misology +misomath +misomon +misoneism +misoneist +misoneistic +misool +misopaterist +misopedia +misopedism +misopedist +misopinion +misorder +misorganize +misos +misoscopist +misosophist +misosophy +misotheism +misotheist +misotheistic +misotyranny +misoxene +misoxeny +mispage +mispaint +misparse +misparsed +mispart +mispassion +mispatch +mispay +mispelled +misperceive +mispereth +misperform +mispersuade +misperuse +misphrase +mispick +mispickel +misplace +misplaced +misplacement +misplaces +misplacing +misplant +misplay +misplayed +misplaying +misplays +misplead +mispleading +misplease +mispoint +mispoise +mispolicy +misposition +mispossessed +mispractice +mispraise +misprint +misprinted +misprinting +misprints +misprisal +misprision +misprisions +misprize +misprizer +misproduce +misprofess +misprofessor +mispronounce +misproposal +mispropose +misproud +misprovide +misprovoke +mispunch +mispunctuate +mispurchase +mispursuit +misput +misqualify +misquality +misquotation +misquote +misquoted +misquoter +misquotes +misquoting +misra +misraise +misratah +misrate +misread +misreader +misreading +misreads +misrealize +misreason +misreceive +misrecital +misrecite +misreckon +misrecognize +misrecollect +misrefer +misreference +misreflect +misreform +misregulate +misrehearsal +misrehearse +misrelate +misrelation +misreliance +misremember +misrender +misrepeat +misreport +misreported +misreporter +misreporting +misreports +misreposed +misrepresent +misreprint +misrepute +misresolved +misresult +misreward +misrhyme +misrhymer +misrouted +misrule +misruled +misrules +misruling +miss +missa +missable +missagh +missaid +missailidis +missal +missals +missay +missayer +missayingk +missed +missedemfive +misseem +missel +missemblance +missen +missend +missentence +misserve +misservice +misses +misset +misshape +misshaped +misshapen +misshapenly +misshapes +misshaping +misshaps +misshood +missible +missick +missie +missies +missile +missileman +missileproof +missilery +missiles +missilry +missiness +missing +missingly +mission +missional +missionaries +missionarize +missione +missioner +missionhill +missionhills +missionize +missionizer +missionridge +missions +missionviejo +missiouri +missis +missisauga +missish +missishness +mississiou +mississipi +mississippi +mississippy +missives +missle +misslitz +missmark +missment +missong +missort +missorted +missorting +missorts +missoula +missouri +missourian +missourians +missouricity +missourite +misspeak +misspecified +misspeech +misspell +misspelled +misspelling +misspellings +misspells +misspelt +misspend +misspender +misspending +misspends +misspent +misspoke +misstanding +misstate +misstated +misstatement +misstater +misstates +misstating +misstay +misstep +missteps +missuade +missummation +missuppose +missus +missy +missyish +missyllabify +mist +mista +mistakable +mistakably +mistake +mistakeful +mistaken +mistakenly +mistakenness +mistakeproof +mistaker +mistakers +mistakes +mistaking +mistakingly +mistakion +mistania +mistassini +mistaught +mistbow +misteach +misteacher +misted +mistell +mistempered +mistend +mistendency +mister +misterdata +misterm +mistermed +misterming +misterms +misters +misterspock +misterx +mistetch +mistfall +mistflower +mistful +misthink +misthought +misthread +misthrift +misthrive +misthrow +misti +mistic +mistide +mistier +mistiest +mistify +mistigris +mistily +mistime +mistimed +mistimes +mistiming +mistiness +misting +mistinguett +mistitle +mistitled +mistitles +mistitling +mistle +mistless +mistletoes +misto +miston +mistone +mistonusk +mistook +mistouch +mistradition +mistrain +mistral +mistrals +mistraltm +mistranslate +mistreat +mistreated +mistreating +mistreatment +mistreats +mistress +mistressdom +mistresses +mistresshood +mistressless +mistressly +mistrial +mistrials +mistrik +mistrist +mistrust +mistrusted +mistruster +mistrustful +mistrusting +mistrustless +mistrusts +mistry +mistryst +mists +mistuloff +mistune +mistuned +mistunes +mistuning +mistuo +misturn +mistutor +misty +mistyish +mistype +mistyped +mistypes +mistyping +mistypings +misumalpan +misura +misusage +misuse +misused +misuseful +misusement +misuser +misusers +misuses +misusing +misusurped +misutka +misuzu +misvaluation +misvalue +misvax +misventure +misventurous +misvouch +miswart +miswarts +miswed +miswisdom +miswish +misword +miswording +misworship +misworshiper +miswort +miswrite +misyoke +miszealous +mita +mitaa +mitace +mitai +mitaka +mitakshara +mitalas +mitamura +mitang +mitani +mitanni +mitannian +mitannish +mitapsis +mitar +mitch +mitchboard +mitchel +mitchell +mitchella +mitchells +mitchelson +mitchem +mitchens +mitchie +mitchif +mitchler +mitchum +mitdm +mite +mitebog +mitei +mitella +miteproof +miter +mitered +miterer +miterers +miterflower +mitering +miters +mites +mitesh +mitgang +mithai +mithan +mithcah +mitheithel +mithil +mithnite +mithra +mithraea +mithraeum +mithraic +mithraicism +mithraicist +mithraicize +mithraism +mithraist +mithraistic +mithraitic +mithraize +mithrandir +mithras +mithratic +mithredath +mithriac +mithridate +mithridatic +mithridatism +mithridatize +mithril +mitiaro +miticidal +miticide +mitidika +mitier +mitiest +mitigable +mitigant +mitigate +mitigated +mitigatedly +mitigates +mitigating +mitigation +mitigative +mitigator +mitigators +mitigatory +mitil +mitis +mitism +mitisms +mitla +mitler +mitlincoln +mitlns +mitmit +mitnick +mitogenetic +mitome +mitontic +mitoses +mitosome +mitotic +mitotically +mitpress +mitra +mitraille +mitrailleur +mitrailleuse +mitrani +mitrate +mitre +mitred +mitrer +mitres +mitri +mitridae +mitriform +mitring +mitro +mitropoulos +mitrou +mitrovic +mitrovich +mitry +mits +mitsiwa +mitsogo +mitsotakis +mitsu +mitsubishi +mitsui +mitsuki +mitsuko +mitsukurina +mitsumata +mitsumi +mitsuo +mitsuru +mitsutoshi +mitt +mittal +mittelhand +mittelmeer +mittelmeyer +mittened +mittens +mittenzwei +mittere +mitterrand +mittie +mittimus +mittleider +mittleman +mitts +mittu +mitty +mitu +mitua +mituku +mitune +mitushi +mitvma +mitwaba +mity +mitylene +mitze +mitzi +mitzvah +mitzvahs +miuffko +miune +miura +miurus +miutini +mivehchi +mivowels +mivque +miwa +miwako +miwamon +miwo +miwok +miwukvillage +mixable +mixableness +mixal +mixblood +mixe +mixed +mixedcase +mixedly +mixedmode +mixedness +mixedrace +mixedup +mixen +mixer +mixeress +mixers +mixes +mixezoque +mixhill +mixible +mixing +mixistla +mixite +mixmaker +mixobarbaric +mixodectes +mixodectidae +mixology +mixolydian +mixomat +mixoploid +mixoploidy +mixosaurus +mixotrophic +mixt +mixtec +mixteca +mixtecan +mixteco +mixtepec +mixtiform +mixtilineal +mixtilion +mixtion +mixture +mixtures +mixups +mixy +miya +miyagi +miyaguchi +miyahara +miyaji +miyak +miyako +miyakojima +miyamoto +miyan +miyangkhang +miyashita +miyatnu +miyawa +miyazaki +miyem +miyemu +miyobe +miyoshi +miyuki +miza +mizan +mizar +mizbehavinit +mizdah +mize +mizell +mizens +mizeran +mizerk +mizlime +mizmast +mizmaze +mizner +mizo +mizoguchi +mizon +mizoram +mizoski +mizpah +mizpar +mizpeh +mizrahi +mizraim +mizuho +mizzah +mizzen +mizzenmast +mizzenmasts +mizzens +mizzentopman +mizzi +mizzie +mizzle +mizzler +mizzly +mizzonite +mizzy +mjillem +mkaa +mkaang +mkdir +mkdirhier +mkfile +mkfontdir +mkfs +mkhedruli +mknod +mknode +mksf +mkswap +mktg +mkuu +mkwet +mlabri +mlacak +mladen +mladenov +mladonov +mlady +mlcoch +mldnhll +mlechchha +mlfl +mlider +mlle +mlodinow +mlomp +mlook +mlrxshl +mlstp +mltnet +mlup +mmaala +mmail +mmala +mmani +mmbers +mmen +mmfo +mmmm +mmmmm +mmmmmm +mmmmmmm +mmmmmmmm +mmmmmmmmmmm +mmmwah +mmpi +mmstudio +mmuless +mmusi +mmwb +mnani +mnason +mnegb +mnegd +mnegf +mnegg +mnegh +mnegl +mnegw +mnem +mneme +mnemic +mnemiopsis +mnemjian +mnemonic +mnemonical +mnemonically +mnemonicon +mnemonics +mnemonism +mnemonist +mnemonize +mnemosyne +mnemot +mnemotechnic +mnemotechny +mnesic +mnestic +mnevis +mniaceae +mniaceous +mnich +mnijhoff +mnill +mnioid +mniotiltidae +mnisi +mnium +mnogie +mnogo +mnong +mnovpc +mnoy +mnsd +mnsmc +mntic +mntrack +mnyamskad +moab +moabi +moabite +moabites +moabitess +moabitic +moabitish +moadiah +moady +moaeke +moaka +moakley +moala +moan +moana +moaned +moanful +moanfully +moaning +moaningly +moanless +moans +moanus +moanza +moapa +moar +moaraeri +moare +moari +moaria +moarian +moas +moase +moat +moated +moating +moats +moatsville +moattalite +moaveke +moazezi +moba +mobable +mobango +mobasheri +mobaye +mobbable +mobbed +mobber +mobbers +mobbing +mobbish +mobbishly +mobbishness +mobbism +mobbist +mobby +mobcaps +mobed +mobeetie +mobel +mober +moberg +moberley +moberly +mobesa +mobies +mobil +mobile +mobiles +mobilia +mobilian +mobilianer +mobiliary +mobilities +mobility +mobilizable +mobilization +mobilize +mobilized +mobilizer +mobilizers +mobilizes +mobilizing +mobilometer +mobjack +moble +mobley +moblike +mobo +mobocracy +mobocrat +mobocratic +mobocratical +mobolatry +mobproof +mobridge +mobs +mobship +mobsman +mobsters +mobula +mobulidae +mobuta +mobutu +moby +mobye +moca +moccacia +moccasins +moccies +moccosin +moce +mocha +mochas +mochda +mochia +mochica +mochinya +mochizuki +mocho +mochow +mochras +mochumi +mochungrr +moci +mocia +mocigin +mock +mockable +mockado +mockbird +mocked +mocker +mockeries +mockers +mockery +mockest +mocketh +mockful +mockfully +mockground +mocking +mockingbird +mockingbirds +mockingly +mockings +mockingstock +mocko +mocks +mockson +mocksville +mockups +mockus +mockvi +mocky +moclips +mocmain +mocnych +moco +mocoa +mocoan +mocobi +mocock +mocomoco +mocovi +moctezuma +mocuck +moda +modafferi +modak +modale +modalism +modalist +modalistic +modalities +modality +modalize +modally +modan +modang +modas +modasa +modd +mode +modea +modebody +modechange +model +modelbased +modelcity +modele +modeled +modeler +modelers +modeless +modelessness +modelfitting +modelfor +modelfree +modeli +modeling +modelings +modelist +modell +modelle +modelled +modeller +modellers +modelling +modelmaker +modelmaking +modelock +models +modelthe +modem +modemain +modemoid +modems +modemshare +modemsta +modena +modene +modenese +moder +moderant +moderantism +moderantist +moderate +moderated +moderately +moderateness +moderates +moderating +moderation +moderatism +moderatist +moderato +moderator +moderatorial +moderators +moderatos +moderatrix +modern +modernaires +moderner +modernest +modernicide +modernised +modernish +modernism +modernist +modernistic +modernists +modernity +modernizable +modernize +modernized +modernizer +modernizers +modernizes +modernizing +modernly +modernness +moderns +modes +modeshift +modest +modesta +modeste +modester +modestest +modestia +modesties +modestine +modestly +modestness +modesto +modesttown +modesty +modesubj +modesum +modfied +modge +modgel +modges +modh +modi +modiation +modica +modicity +modicums +modifiable +modifiably +modificable +modification +modificative +modificator +modificatory +modified +modifier +modifiers +modifies +modifified +modifiy +modify +modifying +modigh +modillion +modine +modiolar +modiolus +modishly +modishness +modist +modiste +modistes +modistry +modius +modl +modli +modniy +modo +modoc +modole +modot +modotto +modplug +modra +modred +modrow +mods +modugno +modul +modula +modulability +modulant +modular +modularity +modularize +modularized +modularizes +modularizing +modularly +modulated +modulates +modulating +modulation +modulations +modulative +modulator +modulators +modulatory +module +modules +modulidae +modulo +modumite +modunga +modupe +modversion +mody +moebes +moebius +moechel +moeck +moed +moeglich +moego +moehafen +moehring +moehringen +moehringia +moejoe +moeko +moel +moellendorff +moeller +moellon +moem +moen +moena +moench +moenebeng +moengo +moening +moerderspiel +moere +moerithere +moeritherian +moeritherium +moerk +moertel +moeschberger +moeschet +moeschlin +moetteli +moeum +moevemans +moewehafen +mofa +mofeli +mofette +moff +moffat +moffatt +moffet +moffett +moffit +moffitt +mofina +mofnaf +mofo +mofou +mofu +mofugudur +mofumokong +mofunord +mofussil +mofussilite +mofusud +mogadiscio +mogadishu +mogador +mogadore +mogambo +mogao +mogareb +mogazang +mogdad +mogg +moggan +moggie +moggy +mogh +moghamo +moghan +moghe +moghis +moghol +mogholi +mogigraphia +mogigraphic +mogigraphy +mogilalia +mogilalism +mogilu +mogimba +mogiphonia +mogistias +mogitocia +moglewer +moglie +mogo +mogogodo +mogographia +mogol +mogollon +mogoni +mogonik +mogororo +mogou +mograbi +mogrebbin +mogregi +mogridge +mogu +moguesis +moguey +moguez +mogul +mogulmuph +moguls +mogulship +mogulskii +mogum +moguntia +moguntine +mogut +mogwai +mogyt +moha +mohabat +mohair +mohairs +mohajeri +mohales +mohall +mohamad +mohamed +mohammad +mohammadi +mohammed +mohammedia +mohammedian +mohammedism +mohammedist +mohammedize +mohammet +mohan +mohanty +mohar +moharram +mohave +mohawk +mohawkian +mohawkite +mohawkoneida +mohawks +mohbee +mohd +mohe +mohegan +moheganlake +mohel +moheli +mohiam +mohican +mohicans +mohideen +mohineyam +mohisa +mohler +mohmandi +mohmedans +mohn +mohner +mohnseed +mohnton +moho +mohock +mohockism +mohole +moholes +mohongia +mohr +mohrlang +mohrmann +mohrodendron +mohrsville +mohsen +mohsin +mohtahs +mohtohs +mohung +mohur +mohyeddin +moibiri +moid +moider +moidore +moien +moieter +moieties +moifau +moih +moikodi +moil +moiled +moiler +moilers +moiles +moiley +moiling +moilingly +moils +moilsome +moin +moina +moinba +moineau +moines +moingi +moingwena +moinot +moio +moir +moira +moires +moirette +moise +moises +moisha +moishe +moism +moissala +moissanite +moisseiev +moisson +moist +moistened +moistener +moisteners +moistening +moistens +moister +moistest +moistful +moistify +moistish +moistishness +moistless +moistly +moistness +moisture +moistureless +moistures +moisturize +moisturized +moisturizer +moisturizers +moisturizes +moisturizing +moisty +moit +moitanik +moity +moium +moix +moiyui +moizer +mojahedin +mojarra +mojave +mojem +mojena +mojesh +mojet +mojgani +mojica +mojmir +mojna +mojno +mojo +mojorow +mojos +mojung +moka +mokaddam +mokaflacq +mokane +mokar +mokareng +mokbel +moke +moken +mokena +mokerang +mokes +mokhehle +mokhev +mokhotlong +moki +mokihana +mokil +mokilese +moklen +moklum +mokmer +moko +mokokchung +mokola +mokole +mokolle +mokolo +mokom +mokomoko +mokong +mokorua +mokoulou +mokpe +mokpo +mokpwe +mokrii +mokrim +mokriy +mokrogo +mokromu +mokros +mokrusha +moksha +mokshan +mokulu +mokum +mokuru +mokusi +mokwale +moky +mokyo +mola +molac +moladah +molala +molality +molalla +molander +molani +molao +molapi +molariform +molarimeter +molarity +molars +molary +molasse +molasses +molasseses +molassied +molassy +molave +molbog +mold +moldability +moldable +moldableness +moldavia +moldavian +moldavians +moldavite +moldboards +molded +molder +moldered +moldering +molders +moldery +moldier +moldiest +moldiness +molding +moldings +moldmade +moldova +moldproof +molds +moldwarp +moldy +mole +molecast +molech +molecula +molecular +molecularist +molecularity +molecularly +molecule +molecules +moledet +moledina +moleeyed +moleface +molehead +moleheap +molehillish +molehills +molehilly +moleism +molelike +molella +molena +molenaar +molendinar +molendinary +moleproof +moler +moles +moleskin +moleskins +molest +molestation +molestations +molested +molester +molesters +molestful +molestfully +molesting +molestor +molests +molet +moley +molge +molgula +moli +moliba +molibagu +molice +molid +molidae +moliere +molieri +molies +molima +molimen +moliminous +molina +molinar +molinare +molinari +molinary +molinas +molinia +molinism +molinist +molinistic +molino +molinos +molirena +molisano +molise +molka +molko +molkoa +molkwo +moll +mollah +molland +mollari +mollberg +molle +mollee +mollendorf +moller +mollerus +mollescence +mollescent +molleton +mollett +molli +mollichop +mollicrush +mollie +mollienisia +mollient +molliently +mollies +mollifiable +mollified +mollifiedly +mollifier +mollifiers +mollifies +mollifying +mollifyingly +molligrant +molligrubs +mollinger +mollipilose +mollisiaceae +mollisiose +mollison +mollities +mollitious +mollitude +mollo +mollohan +mollomiomafo +mollot +molloy +molls +mollugo +mollusc +mollusca +molluscan +molluscans +molluscoid +molluscoida +molluscoidal +molluscoidan +molluscoidea +molluscous +molluscs +molluscum +mollusks +molly +mollycoddled +mollycoddler +mollycoddles +mollycosset +mollycot +mollyford +mollyguard +mollyhawk +molman +molna +molnar +molniey +molo +moloch +molochize +molochko +molochs +molochship +molodavkin +molodoi +molodoy +molof +moloid +moloker +moloko +molokwo +molompi +moloney +molosse +molossian +molossic +molossidae +molossine +molossoid +molossus +molot +molothrus +molotov +moloundou +molpe +molrooken +molson +molted +molten +moltenly +molter +molters +molting +moltini +moltke +molto +moltov +molts +molucca +moluccan +moluccella +moluche +molumaru +molumphry +molunga +molvina +moly +molybdena +molybdenic +molybdenous +molybdic +molybdite +molybdocolic +molybdomancy +molybdonosus +molybdosis +molybdous +molyneaux +molyneux +molysite +moma +momale +momalili +momare +momba +mombasa +mombe +mombesa +mombi +mombin +momble +mombo +mombottu +mombu +mombum +mombuttu +momby +mome +momence +moment +momental +momentally +momentaneall +momentaneity +momentaneous +momentarily +momentary +momently +momento +momentoes +momentos +momentous +momentously +moments +momentsof +momentum +momentums +momfu +momiology +momisa +momism +momisms +momma +mommas +momme +mommet +mommie +mommies +mommy +momo +momogun +momoh +momole +momolili +momon +momordica +momotidae +momotinae +momotus +mompa +mompin +moms +momshell +momtahan +momuna +momunu +momus +momushka +momveda +momvu +momwallpaper +mona +monaca +monacan +monacanthid +monacanthine +monacanthous +monacha +monachal +monachate +monachella +monachi +monachia +monachism +monachist +monachize +monachy +monaco +monacoville +monactin +monactine +monadal +monadelph +monadelphia +monadelphian +monadelphous +monadical +monadically +monadiform +monadigerous +monadina +monadism +monadisms +monadistic +monadnock +monadology +monads +monaene +monagas +monagasque +monaghan +monah +monahan +monahans +monal +monaldi +monam +monamniotic +monanday +monander +monandria +monandrian +monandric +monandrous +monandry +monango +monanthous +monao +monapsal +monarca +monarch +monarchal +monarchally +monarchess +monarchial +monarchian +monarchical +monarchies +monarchism +monarchist +monarchistic +monarchists +monarchize +monarchizer +monarchlike +monarchs +monarda +monardella +monari +monarthritis +monarticular +monas +monasa +monascidiae +monascidian +monase +monaster +monasterial +monasteries +monasterrio +monastery +monastical +monastically +monasticism +monasticize +monastics +monatele +monatomic +monatomicity +monatomism +monau +monaulos +monaurally +monaville +monax +monaxial +monaxile +monaxo +monaxon +monaxonial +monaxonic +monaxonida +monazine +monazite +monba +monbuttu +moncay +moncayo +moncerf +monch +monchiquite +moncion +monck +monckscorner +monclova +moncrief +moncrieff +moncur +moncure +mond +mondaine +mondamin +mondari +monday +mondayish +mondayland +mondays +monde +mondego +monden +mondini +mondjembo +mondo +mondol +mondongo +mondoon +mondor +mondos +mondovi +mondragon +mondropolon +mondu +mondugu +mondunga +mondy +mone +monebwa +monedula +monee +monegasque +monelli +monembryary +monembryonic +monembryony +monepic +monepiscopal +moner +monera +moneragala +moneral +moneran +monergic +monergism +monergist +monergistic +moneric +monero +moneron +monerozoa +monerozoan +monerozoic +monerula +monescu +moneses +monesia +monessen +monestier +monet +moneta +monetarily +monetarists +monetary +monetite +monetization +monetize +monetized +monetizes +monetizing +monett +monetta +monette +monetti +money +moneyage +moneybag +moneybags +moneychanger +moneyed +moneyer +moneyers +moneyflower +moneygrub +moneygrubber +moneylender +moneylenders +moneylending +moneyless +moneymaker +moneymakers +moneymaking +moneymonger +moneypenny +moneys +moneysaving +moneywise +monfette +monfort +monforton +monfre +mong +monga +mongaiyat +mongala +mongalla +mongar +mongbapele +mongbay +mongcorn +monge +mongeese +monger +mongering +mongers +mongery +monggol +monghol +mongholian +mongi +mongibel +mongkoinit +mongkol +mongkut +mongler +monglwe +mongo +mongol +mongolia +mongolian +mongolianism +mongolians +mongolic +mongolioid +mongolish +mongolism +mongolize +mongollangam +mongoloid +mongoloids +mongols +mongombo +mongomery +mongondou +mongondow +mongondowic +mongonkundu +mongooses +mongos +mongour +mongoyo +mongrel +mongreldom +mongrelish +mongrelism +mongrelity +mongrelize +mongrelly +mongrelness +mongrels +mongsen +mongst +mongul +monguna +mongwandi +monhegan +monheimite +moni +monia +monial +monias +moniba +monica +monicker +monickers +monico +monied +moniek +monies +monik +monika +moniker +monikers +monilated +monilethrix +monilia +moniliaceae +moniliaceous +moniliales +monilicorn +moniliform +moniliformly +monilioid +monima +monimbo +moniment +monimia +monimiaceae +monimiaceous +monimolite +monimostylic +monina +moniongo +monique +monirak +monish +monism +monisms +monist +monistic +monistical +monistically +monists +monitary +moniter +monition +monitions +monitive +monitor +monitored +monitorial +monitorially +monitories +monitoring +monitorish +monitors +monitorship +monitress +monitrix +monja +monjakul +monjar +monjo +monjombo +monjomboli +monjul +monk +monkbird +monkcraft +monkdom +monkees +monkeries +monkery +monkess +monkey +monkeyboard +monkeyed +monkeyface +monkeyfy +monkeyhood +monkeying +monkeyish +monkeyishly +monkeylike +monkeynut +monkeypod +monkeypot +monkeyry +monkeys +monkeyshine +monkeyshines +monkeytail +monkfish +monkflower +monkhmer +monkhood +monkhoods +monkhouse +monkishly +monkishness +monkism +monkley +monklike +monkliness +monkly +monkman +monkmonger +monkole +monks +monkship +monkshood +monkshoods +monkton +monlezun +monling +monmouth +monmouthite +monn +monna +monnepwa +monni +monnig +monnon +monny +mono +monoacetate +monoacetin +monoacid +monoacidic +monoalu +monoamide +monoamine +monoamino +monoammonium +monoarfu +monoazo +monobase +monobasic +monobasicity +monoblastic +monoblepsia +monoblepsis +monobloc +monobromated +monobromide +monobromized +monobutyrin +monocalcium +monocarbide +monocarbonic +monocardian +monocarp +monocarpal +monocarpian +monocarpic +monocarpous +monocase +monocellular +monocentric +monocentrid +monocentris +monocentroid +monocercous +monocerous +monochasial +monochasium +monochlor +monochloride +monochloro +monocho +monochord +monochordist +monochordize +monochroic +monochromasy +monochromat +monochromate +monochrome +monochromes +monochromic +monochromist +monochromous +monochromy +monochronic +monochronous +monociliated +monocle +monocled +monocleid +monocles +monoclinal +monoclinally +monocline +monoclinian +monoclinic +monoclinism +monoclinous +monoclonius +monocoelia +monocoelian +monocoelic +monocondyla +monocondylar +monocondylic +monocormic +monocot +monocots +monocracy +monocrat +monocratic +monocrotic +monocrotism +monocularity +monocularly +monoculate +monocule +monoculist +monoculous +monocultural +monoculture +monoculus +monocyanogen +monocycle +monocyclic +monocyclica +monocystic +monocystidae +monocystidea +monocystis +monocyte +monocytes +monocytic +monod +monodactyl +monodactyle +monodactyly +monodelph +monodelphia +monodelphian +monodelphic +monodelphous +monodermic +monodic +monodically +monodies +monodimetric +monodist +monodists +monodize +monodomous +monodon +monodont +monodonta +monodontal +monodram +monodrama +monodramatic +monodromic +monodromy +monody +monodynamic +monodynamism +monoecia +monoecian +monoecious +monoeciously +monoecism +monoeidic +monoestrous +monofilament +monofilm +monoformin +monofuels +monogamian +monogamic +monogamies +monogamist +monogamistic +monogamists +monogamously +monogastric +monogatari +monogene +monogenea +monogeneity +monogeneous +monogenesis +monogenesist +monogenesy +monogenetic +monogenetica +monogenic +monogenism +monogenist +monogenistic +monogenous +monogeny +monoghan +monoglot +monoglycerid +monogoneutic +monogony +monogram +monogramed +monogrammed +monogrammic +monogramming +monograms +monograph +monographer +monographers +monographes +monographic +monographist +monographs +monography +monograptid +monograptus +monogynic +monogynious +monogynist +monogynous +monogyny +monohan +monohybrid +monohydrate +monohydrated +monohydric +monohydrogen +monohydroxy +monoicous +monoketone +monokutuba +monolater +monolatrist +monolatrous +monolatry +monolayer +monoliasis +monoline +monolingual +monolinguals +monolinguist +monoliteral +monolith +monolithal +monolithic +monoliths +monolobular +monolocular +monolog +monologian +monologic +monological +monologists +monologize +monologs +monologue +monologues +monologuist +monologuists +monology +monom +monomachist +monomachy +monomania +monomaniac +monomaniacal +monomaniacs +monomanias +monomerous +monomers +monometallic +monometer +monomethyl +monomethylic +monometric +monometrical +monomials +monomict +monomineral +monomorium +monomorphic +monomorphism +monomorphous +monomya +monomyaria +monomyarian +monon +monona +mononch +mononchus +mononeural +monongah +mononitrate +mononitrated +mononitride +mononomial +mononomian +monont +mononuclear +mononychous +mononym +mononymic +mononymize +mononymy +monoousian +monoousious +monoparental +monoparesis +monopathic +monopathy +monopersonal +monopetalae +monopetalous +monophagism +monophagous +monophagy +monophase +monophasia +monophasic +monophobia +monophone +monophonic +monophonous +monophony +monophotal +monophote +monophthong +monophyletic +monophylite +monophyllous +monophyodont +monophysite +monophysitic +monopitch +monoplacula +monoplacular +monoplane +monoplanes +monoplanist +monoplast +monoplastic +monoplegia +monoplegic +monoploid +monopneumoa +monopode +monopodial +monopodially +monopodic +monopodium +monopodous +monopody +monopolar +monopolaric +monopolarity +monopole +monopoles +monopolies +monopolism +monopolist +monopolistic +monopolists +monopolize +monopolized +monopolizer +monopolizes +monopolizing +monopolous +monopoly +monoprionid +monopsony +monopsychism +monopteral +monopteridae +monopteroid +monopteron +monopteros +monopterous +monoptic +monoptical +monoptote +monoptotic +monopylaea +monopylaria +monopylean +monopyrenous +monorail +monorailroad +monorails +monorailway +monorchid +monorchidism +monorchis +monorchism +monorganic +monorhina +monorhinal +monorhine +monorhyme +monorhymed +monorhythmic +monos +monosabio +monoschemic +monoscope +monose +monosemic +monosepalous +monoservice +monosilane +monosilicate +monosilicic +monosiphonic +monosodium +monosomatic +monosomatous +monosome +monosomic +monoson +monospaced +monosperm +monospermal +monospermic +monospermous +monospermy +monospline +monospore +monospored +monosporous +monostable +monostele +monostelic +monostelous +monostely +monostich +monostichous +monostomata +monostome +monostomidae +monostomous +monostomum +monostrophe +monostrophic +monostylous +monosulfone +monosulfonic +monosulphide +monosulphone +monosyllabic +monosyllable +monosymmetry +monothalama +monothecal +monotheism +monotheist +monotheistic +monotheists +monothelete +monotheletic +monothelious +monothelism +monothelitic +monothetic +monotic +monotint +monotocardia +monotocous +monotomous +monotonal +monotone +monotones +monotonic +monotonical +monotonicity +monotonies +monotonist +monotonize +monotonno +monotonously +monotony +monotremal +monotremata +monotremate +monotremous +monotrichous +monotriglyph +monotrocha +monotrochal +monotrochian +monotrochous +monotropa +monotrophic +monotropic +monotropsis +monotropy +monotypal +monotype +monotypic +monotypical +monotypous +monoureide +monovalence +monovalency +monovalent +monovariant +monoville +monovoltine +monovular +monoxenous +monoxides +monoxime +monoxyle +monoxylic +monoxylon +monoxylous +monozoa +monozoan +monozoic +monozygotic +monpa +monpakha +monponsett +monr +monroe +monroebridge +monroecc +monroecenter +monroecity +monroeism +monroeist +monroeton +monroeville +monrolite +monrose +monrovia +monroy +mons +monsang +monse +monsees +monseigneur +monseignor +monsenor +monsey +monshang +monsieur +monsieurs +monsieurship +monsignor +monsignori +monsignorial +monsignors +monsok +monson +monsoni +monsoonal +monsoonish +monsoonishly +monsoons +monsoontype +monster +monstera +monsterhood +monsterlike +monsters +monstership +monstrance +monstrances +monstrate +monstration +monstrator +monstricide +monstrify +monstrosity +monstrous +monstrously +monsuy +monta +montag +montage +montaged +montages +montaging +montagnac +montagnais +montagnani +montagnard +montagne +montagu +montague +montaigne +montal +montalba +montalban +montalbano +montaldo +montalto +montalvo +montan +montana +montanamines +montanan +montanans +montanari +montanaro +montand +montandon +montane +montange +montanha +montania +montanic +montanin +montanini +montanino +montanism +montanist +montanistic +montanite +montanize +montano +montant +montanus +montara +montares +montargis +montauk +montavon +montbars +montbelvieu +montbretia +montcalm +montchanin +montclare +montcoal +montdore +monte +monteagle +montebello +montebrasite +montecarlo +montecelli +monteene +montefiore +montefiori +monteggia +montego +montegut +monteith +montell +montelli +montellier +montello +montem +montemitro +montenac +montenegrins +montenegro +monterey +montereypark +monterio +montero +monteros +monterosa +monterrey +monterville +montery +montes +montesano +montesco +montesinos +montespan +montessori +montessorian +montevallo +montevecchi +montevideo +monteview +montevista +montey +montez +montezuma +montfleury +montford +montfort +montgolfier +montgomer +montgomery +month +monthlies +monthly +monthon +months +monti +montia +monticelli +monticellite +monticle +monticola +monticolae +monticoline +monticulate +monticule +monticulose +monticulous +monticulus +montie +montiel +montier +montiform +montigeneous +montigny +montijo +montilla +montini +montjoy +montly +montmarcy +montmartrite +montmorenci +montmorency +montol +monton +montone +montong +montor +montour +montourfalls +montoute +montoya +montpelier +montpezat +montreal +montreat +montresor +montreuil +montri +montrose +montross +montroydite +montse +montserrado +montserrat +montsion +montsko +montt +montu +montuno +monture +montvale +montverde +montvernon +montville +monty +monu +monulu +monumbo +monument +monumental +monumentally +monumentary +monumentless +monumentlike +monuments +mony +monyongo +monzamboli +monzano +monzo +monzodiorite +monzogabbro +monzombo +monzonite +monzonitic +monzu +monzumbo +mooachaht +mooch +moocha +mooched +moocher +moochers +mooches +moochick +moochie +mooching +moochulka +mood +mooder +moodier +moodiest +moodily +moodiness +moodish +moodishly +moodishness +moodle +moods +moodus +moody +moodys +mooed +mooers +mooersforks +moof +moog +moogability +moogk +mooi +mooing +moojanga +mook +mooka +mooken +mookherji +mool +moola +moolah +moolahs +moolas +moolet +moolgavkar +moolings +mools +moolum +moomey +moon +moonack +moonah +moonbeam +moonbeams +moonbill +moonblink +moonbow +mooncalf +mooncalves +mooncreeper +mooncrest +moondown +moondrop +moondust +mooned +mooner +moonery +mooney +mooneye +moonface +moonfaced +moonfall +moonfish +moonflower +moonglade +moonglow +moonhead +moonie +moonier +mooniest +moonily +mooniness +mooning +moonish +moonite +moonja +moonjah +moonless +moonlet +moonlets +moonlight +moonlighted +moonlighter +moonlighters +moonlighting +moonlights +moonlighty +moonlike +moonlikeness +moonlit +moonlitten +moonman +moonpath +moonpenny +moonproof +moonraker +moonraking +moonrider +moonrise +moonrises +moonrun +moons +moonsail +moonscape +moonscapes +moonseed +moonset +moonsets +moonshade +moonshee +moonshine +moonshined +moonshiner +moonshiners +moonshining +moonshiny +moonshot +moonshots +moonsick +moonsickness +moonstone +moonstones +moonstruck +moontide +moonwalk +moonwalker +moonwalking +moonwalks +moonward +moonwards +moonwatcher +moonway +moonwort +moony +mooooooh +moop +moor +moorage +moorages +moorbach +moorball +moorband +moorberry +moorbird +moorburn +moorburner +moorburning +moorcroft +moore +moored +mooredagbani +moorefield +moorehaven +moorehead +mooreland +moorer +moores +mooresboro +mooresburg +mooreshill +moorestown +mooresville +mooreton +mooreville +moorflower +moorfowl +moorhead +moorhouse +moorian +moorie +moorier +mooring +mooringa +mooringer +moorings +mooringsport +moorishly +moorishness +moorland +moorlander +moorlands +moorman +moorn +moorpan +moorpark +moors +moorship +moorsman +moorstone +moortetter +moorup +moorwort +moory +moos +moosa +moosavi +moose +mooseberry +moosebird +moosebush +moosecall +mooseflower +mooseheart +moosehide +moosehood +moosekian +mooselake +moosemise +moosepass +moosetongue +moosewob +moosewood +moosey +moosonee +moost +moosup +mootable +mooted +mooter +mooters +mooth +mooting +mootman +moots +mootstead +mootworthy +mooty +mooyo +mopa +mopacs +mopan +mopane +mopanmaya +mopboard +mope +moped +mopeder +mopeders +mopeds +mopeeyed +moper +mopers +mopes +mopeung +mopey +moph +mopha +mophead +mopheaded +mopier +mopiest +moping +mopingly +mopish +mopishly +mopishness +mopla +mopo +mopoco +mopoi +moppc +mopped +mopper +moppers +moppet +moppets +mopping +moppy +mops +mopsey +mopstick +mopsy +mopti +mopus +mopute +mopwa +mopy +moqaddam +moquegua +moquelumnan +moquette +moqui +moquise +moquisse +moquitoes +mora +morabito +moraceae +moraceous +moraea +moraetes +morafa +morag +moraga +morago +moraid +morainal +moraines +morainic +morais +morakot +moral +morale +morales +moralism +moralisms +moralist +moralistic +moralists +moralities +morality +moralization +moralize +moralized +moralizer +moralizers +moralizes +moralizing +moralizingly +moralless +morally +moralness +morals +moran +morana +morand +morandi +morando +morang +morangia +moranis +morann +morannon +morano +morant +morante +moraori +morari +morases +morasseau +morasses +morassic +morassweed +morassy +morasthite +morat +morata +morate +moration +moratoria +moratorium +moratoriums +moratory +morattico +moravek +moravia +moravian +moravianism +moravianized +moravians +moravid +moravite +morawa +moray +morays +moraza +morazan +morazanist +morbid +morbidities +morbidity +morbidize +morbidly +morbidness +morbiferal +morbiferous +morbific +morbifical +morbifically +morbify +morbility +morbillary +morbilli +morbilliform +morbillous +morbius +morbose +morbosity +morcar +morceau +morcellate +morcellated +morcellation +morchella +morcinelli +morcote +mord +mordacious +mordaciously +mordacity +mordan +mordancy +mordant +mordanted +mordanting +mordantly +mordants +mordaunt +mordcha +mordecai +mordechai +mordechay +mordella +mordellid +mordellidae +mordelloid +morden +mordenite +mordent +mordente +mordents +mordicate +mordication +mordicative +mordinoy +mordoc +mordock +mordoder +mordoff +mordor +mordore +mordov +mordred +mordv +mordva +mordvin +mordvinerzya +mordvinian +mordvinov +mordy +more +moreala +moreau +moreauville +moreb +morecambe +morecheat +moreclip +moree +moreen +morefold +moreh +morehead +moreheadcity +moreheadst +morehouse +moreira +moreish +morek +morela +moreland +morelind +morell +morella +morelli +morello +morelos +morels +morely +morena +morenci +morencite +moreness +morenita +moreno +morenosite +morenovalley +moreorless +moreote +moreover +morepork +morerebi +mores +moresada +morespace +moresque +moret +moreton +moretown +moretti +morettin +morever +morevitch +morewood +morey +morf +morfogen +morfrey +morg +morga +morgan +morgana +morganatic +morganatical +morgancity +morganfield +morganhill +morganic +morganica +morganite +morganize +morganmill +morganne +morganson +morganstein +morganton +morgantown +morganville +morganza +morgay +morgen +morgengift +morgenhand +morgenroth +morgens +morgenstern +morghuli +morglan +morglay +morgon +morgues +morgul +morgullord +morgulpass +morgulvale +morha +mori +moria +moriah +moriahcenter +moriam +moriarity +moriarty +moriaty +moribundity +moribundly +moric +morice +moricetown +moriche +moriches +moriconi +moricz +morient +morier +moriform +morigerate +morigeration +morigerous +morigerously +morigi +moriil +morije +morille +morillon +morima +morimba +morimoto +morimune +morin +morinaceae +morinda +morindin +morindone +morineau +morinel +moringa +moringaceae +moringaceous +moringad +moringua +moringuid +moringuidae +moringuoid +morini +morino +morion +moriori +moripiiokea +moris +morisani +moriscan +morisco +morishige +morison +morisonian +morissa +morissete +morissette +morita +moritz +moritzen +moriyama +morjey +mork +morkelyunas +morkin +morlacchi +morland +morlar +morlay +morley +morlop +morma +mormaor +mormaordom +mormaorship +mormo +mormondom +mormoness +mormonism +mormonist +mormonite +mormons +mormonweed +mormoops +mormor +mormyr +mormyre +mormyrian +mormyrid +mormyridae +mormyroid +mormyrus +morn +morna +mornay +morne +morneau +morned +morner +mornful +morning +morningless +morningly +morningpaper +mornings +morningstar +morningsun +morningtide +mornington +morningview +morningward +mornless +mornlike +morns +morntime +mornward +moro +moroa +morobe +moroc +moroccans +morocco +moroccos +morocota +morocz +moroder +morogoro +morokodo +morokodobeli +morokodomoda +morological +morologist +morology +morolowe +moromancy +moromiranga +moron +morona +moronawa +moroncy +moronene +morones +morong +moroni +moronic +moronically +moronidae +moronism +moronisms +moronities +moronity +moronou +moronry +morons +moropus +morosaurian +morosauroid +morosaurus +morosely +moroseness +morosis +morosity +morosky +morosov +morosovia +morosow +morotai +moroto +morotoco +morotschin +morouas +morovis +moroxite +moroz +morozov +morozova +morozumi +morph +morphallaxis +morphea +morphean +morphemes +morphemics +morpher +morphetic +morpheus +morphew +morphia +morphiate +morphic +morphically +morphin +morphinate +morphine +morphines +morphing +morphinic +morphinism +morphinist +morphinize +morphiomania +morphisms +morpho +morphogenic +morphogeny +morphography +morpholine +morphologic +morphologies +morphologist +morpholoical +morphometric +morphometry +morphon +morphonomic +morphonomy +morphophyly +morphoplasm +morphos +morphosis +morphotic +morphotropic +morphotropy +morphous +morphs +morpo +morra +morrah +morral +morray +morreale +morrel +morrell +morrenian +morrett +morrhua +morrhuate +morrhuine +morrice +morricer +morricone +morrie +morriera +morrilton +morrin +morris +morrischapel +morrisdale +morrisean +morrisey +morrison +morrisplains +morrisrun +morriss +morrissette +morriston +morristown +morrisville +morrobay +morrow +morrowing +morrowless +morrowmass +morrows +morrowspeech +morrowtide +morrowville +morsal +morse +morsebluff +morsecode +morsel +morseling +morselize +morsell +morselled +morsels +morsemill +morshower +morsing +morska +morson +morsure +mort +morta +mortacious +mortal +mortale +mortalism +mortalist +mortalities +mortality +mortalize +mortally +mortalness +mortals +mortalty +mortalwise +mortar +mortarboard +mortarboards +mortared +mortaring +mortarize +mortarless +mortarlike +mortars +mortarware +mortary +mortbell +mortcerf +mortcloth +morte +morteau +mortel +mortem +morten +mortensen +mortenson +morter +mortersheen +mortgage +mortgageable +mortgaged +mortgagees +mortgager +mortgagers +mortgages +mortgaging +mortgagors +morth +morthwyrtha +mortice +morticians +mortier +mortifee +mortiferous +mortific +mortified +mortifiedly +mortifier +mortifies +mortify +mortifying +mortifyingly +mortimer +mortis +mortised +mortiser +mortisers +mortises +mortising +mortiz +mortling +mortlock +mortlockese +mortmain +mortmainer +morton +mortongrove +mortonsgap +mortuarian +mortuaries +mortuary +mortuous +mortwell +morty +mortyn +moru +moruas +moruba +morubanmin +morula +morular +morulation +morule +moruloid +morumadi +morunahua +morung +morus +moruwadi +morven +morvin +morwa +morwap +morwong +morz +morzeny +morzini +mosaic +mosaical +mosaically +mosaicism +mosaicist +mosaicity +mosaics +mosaism +mosaist +mosana +mosandrite +mosange +mosasaur +mosasauri +mosasauria +mosasaurian +mosasaurid +mosasauridae +mosasauroid +mosasaurus +mosatenan +mosby +mosca +moscardi +mosch +moschate +moschatel +mosche +moschen +moschi +moschidae +moschides +moschiferous +moschin +moschinae +moschine +moschitta +moschopoulos +moschus +moscionese +moscone +mosconi +moscovich +moscovitch +moscow +moscowmills +moscva +mose +moseby +moseley +moselle +mosely +moser +mosera +moseroth +moses +mosesite +moseslake +mosesso +moseten +mosetena +mosetenan +mosetse +mosette +mosey +moseyed +moseying +moseys +mosf +mosfet +mosgrove +mosgu +moshang +moshannon +moshe +mosheim +mosherville +moshi +moshidagomba +moshiko +moshinsky +moshiri +moshkow +moshoeshoe +moshtagh +mosi +mosieno +mosier +mosimann +mosimo +mosin +mosina +mosinee +mosiro +mosis +mosjukine +moskalik +moskeneer +mosker +mosko +moskona +moskowitz +mosks +moskuna +moskva +moskvax +moskvin +moskvina +mosland +moslem +moslemah +moslemic +moslemin +moslemism +moslemite +moslemize +moslems +mosler +mosley +moslings +mosmar +moso +mosol +mosotho +mosovich +mosque +mosquelet +mosquera +mosquero +mosques +mosquini +mosquish +mosquital +mosquito +mosquitobill +mosquitocide +mosquitoes +mosquitoey +mosquitoish +mosquitos +moss +mossa +mossaka +mossback +mossbacks +mossbeach +mossberg +mossberry +mossbunker +mossed +mossel +mosselbaai +mosselmann +mossendjo +mosser +mossers +mossery +mosses +mossful +mossgrown +mosshead +mossi +mossier +mossiest +mossim +mossiness +mosslanding +mossless +mosslike +mossman +mosso +mossop +mosspott +mosstrooper +mosstroopery +mosstrooping +mossu +mossville +mosswort +mossyback +mossyrock +most +mostaganem +moste +mostel +mosteller +mosten +mosting +mostlike +mostlings +mostly +mostness +mostny +mostof +moston +mostovac +mostovoy +mostprobably +mosts +mostyn +mosul +mosum +mota +motaba +motabang +motacilla +motacillid +motacillidae +motacillinae +motacilline +motalava +motas +motashaw +motatorious +motatory +motaung +motauri +motaz +motazilite +motchekin +motd +mote +moted +motel +moteless +motels +motely +motembo +moter +motes +motets +motettist +motey +motford +moth +mothballed +mothballs +motheaten +mothed +mother +mothera +motherboard +motherboards +motherdom +mothered +motherer +motherers +motherfucker +mothergate +motherhood +motheriness +mothering +motherkin +motherland +motherlands +motherless +motherlike +motherliness +motherling +motherlode +motherly +mothers +mothershead +mothership +mothersome +mothertongue +motherward +motherwise +motherwort +mothery +mothier +mothless +mothlike +mothong +mothopeng +mothproof +mothra +moths +mothworm +mothy +moti +motie +motiem +motif +motific +motifs +motile +motiles +motilities +motility +motilo +motilon +motilone +motion +motionable +motional +motioned +motioner +motioners +motioning +motionless +motionlessly +motions +motitation +motivated +motivates +motivating +motivation +motivational +motivations +motived +motiveless +motivelessly +motiveness +motives +motivic +motivities +motivity +motlav +motley +motleyer +motleyest +motleyness +motleys +motlier +motliest +motmot +moto +motobiak +motofacient +motograph +motographic +motoling +motomagnetic +motoneuron +motophone +motor +motorable +motoracer +motoracing +motorbike +motorbikes +motorboat +motorboatman +motorboats +motorbreath +motorbus +motorbuses +motorcab +motorcade +motorcades +motorcar +motorcars +motorcycles +motorcyclist +motordom +motordrome +motored +motorhead +motorial +motoric +motoring +motorings +motorism +motorist +motorists +motorium +motorization +motorize +motorized +motorizes +motorizing +motorless +motorman +motormen +motorneer +motorny +motorola +motorolas +motorphobe +motorphobia +motorphobiac +motors +motorship +motorships +motortruck +motortrucks +motorway +motorways +motory +motos +mototsune +motozintla +motozintlec +motozintleca +motozintleco +motricity +mots +motsamai +motsetse +motss +motswana +mott +motta +motte +motten +mottled +mottledness +mottlement +mottler +mottlers +mottles +mottling +motto +mottoed +mottoes +mottoi +mottoless +mottolike +mottos +mottramite +mottville +motu +motuba +motumotu +motuna +motusinagoro +motyka +motzfeldt +moualal +mouamenam +mouan +mouat +moubarak +moubi +moucharaby +mouchard +mouchardism +mouchart +mouche +mouchet +mouchette +mouchrabieh +moud +moudad +moudang +moudie +moudieman +moudy +moue +mouel +moues +mouflon +mougeot +mougeotia +mougouba +mougulu +mougy +mouhamed +mouhoun +mouhour +mouhsiung +mouht +mouila +mouillation +mouillaud +mouille +mouillure +moujik +mouk +moukali +mouktele +moul +moulavibazar +moulded +moulder +mouldered +mouldering +moulders +mouldier +mouldiest +moulding +mouldings +moulds +mouldy +moule +moulin +moulinage +moulinet +moulins +moulleen +moulmein +mouloud +mouloudji +moulrush +mouls +moulsoff +moulsworth +moult +moulted +moulter +moulters +moulting +moulton +moultona +moultonboro +moultrie +moults +moulvouday +mouly +moumin +moumouni +mouna +mound +moundan +moundang +moundbayou +moundcity +mounded +moundiness +mounding +moundlet +moundou +moundridge +mounds +moundsville +moundvalley +moundville +moundwork +moundy +mouneyres +moungo +mounir +mounset +mounsey +mount +mounta +mountable +mountably +mountaetna +mountain +mountainair +mountainburg +mountaincity +mountaindale +mountained +mountaineers +mountainet +mountainette +mountainflax +mountainhome +mountainiron +mountainlake +mountainless +mountainlike +mountainous +mountainpark +mountainpass +mountainpine +mountainrest +mountains +mountaintop +mountaintops +mountainview +mountainward +mountainy +mountairy +mountalto +mountangel +mountant +mountauburn +mountaukum +mountayr +mountbatten +mountbethel +mountcalm +mountcalvary +mountcarbon +mountcarmel +mountcarroll +mountclare +mountclemens +mountcory +mountcroghan +mountd +mountdesert +mountdoom +mountdora +mounteaton +mountebank +mountebankly +mountebanks +mounted +mounteden +mountephraim +mounter +mounterie +mounters +mountetna +mountfang +mountford +mountfreedom +mountgay +mountgilead +mountgretna +mounthermon +mountholly +mounthope +mounthoreb +mountida +mountie +mounties +mounting +mountingly +mountings +mountjackson +mountjewett +mountjoy +mountjudea +mountjuliet +mountkisco +mountlaguna +mountlaurel +mountlemmon +mountlet +mountliberty +mountlookout +mountmarion +mountmeigs +mountmorris +mountmourne +mountnebo +mountolive +mountolivet +mountorab +mountou +mountperry +mountpocono +mountpoint +mountpulaski +mountrainier +mountroyal +mounts +mountsavage +mountshasta +mountsherman +mountsidney +mountsinai +mountsolon +mountstorm +mountsummit +mountsunapee +mounttabor +mounttremper +mountulla +mountunion +mountupton +mounture +mountvernon +mountvictory +mountville +mountvision +mountwolf +mountzion +moup +moura +mourad +mourao +mourle +mourn +mourne +mourned +mourner +mourneress +mourners +mourneth +mournful +mournfully +mournfulness +mourning +mourningly +mournings +mournival +mourns +mournsome +mouron +mouroum +mouse +mousebane +mousebat +mousebird +mousecolored +moused +mousefish +mousehawk +mousehole +mousehound +mouseimp +mouseion +mousekevitz +mousekewitz +mousekin +mouselet +mouselike +mouseng +mouseproof +mouser +mousers +mousery +mouses +mouseship +mousetail +mousetool +mousetrap +mousetraps +mouseweb +mousey +mousgou +mousgoum +mousgoun +mousgoy +mousie +mousier +mousiest +mousily +mousiness +mousing +mousingly +mousings +mouskevitz +mouskewitz +mousle +mousmee +mouso +mousoni +mousquetaire +mouss +moussa +moussaka +moussakas +mousse +mousseau +moussei +mousses +moussette +mousseux +moussey +moustache +moustached +moustaches +moustakas +mousterian +moustoc +mout +moutamin +moutan +mouth +mouthable +mouthbreeder +mouthcard +mouthe +mouthed +mouther +mouthers +mouthes +mouthful +mouthfuls +mouthier +mouthiest +mouthily +mouthiness +mouthing +mouthingly +mouthishly +mouthless +mouthlike +mouthpart +mouthparts +mouthpiece +mouthpieces +mouthroot +mouths +mouthwash +mouthwashes +mouthwise +mouthy +moutong +moutonne +moutonnee +moutonnet +moutons +moutou +moutouroua +mouy +mouyenge +mouyengue +mouzah +mouzouna +movab +movability +movable +movableness +movables +movably +movad +movaf +movag +movah +moval +movant +movao +movaq +movar +movaw +movb +movc +movd +move +moveability +moveable +moveableness +moveables +moveably +moveand +moveave +moved +movedst +moveless +movelessly +movelessness +moveline +movement +movements +movemerg +mover +movers +moves +moveth +moveto +movf +movg +movh +movie +moviedom +movieize +movieland +moviemakers +movieplay +movies +moville +movima +movin +moving +movingly +movingness +movings +movita +movl +movo +movp +movpsl +movq +movsb +movtc +movtuc +movw +movzbl +movzbw +movzwl +movzx +movzxl +mowable +mowana +mowanjum +mowat +mowbray +mowburn +mowburnt +mowch +mowcht +moweaqua +mowed +mower +mowers +mowery +mowewe +mowgli +mowha +mowie +mowing +mowings +mowland +mowle +mown +mowra +mowrah +mowrystown +mows +mowse +mowsoh +mowstead +mowt +mowth +moxa +moxahala +moxas +moxdoa +moxee +moxev +moxham +moxibustion +moxico +moxie +moxieberry +moxies +moxley +moxness +moxo +moxon +moxos +moya +moyale +moyano +moyce +moyen +moyenchari +moyenless +moyenne +moyenogooue +moyer +moyers +moyi +moyiesprings +moyite +moyle +moyna +moynihan +moyo +moyock +moyoko +moyom +moyra +moyse +moyu +moyumi +moyzisch +moza +mozah +mozaik +mozambican +mozambique +mozarab +mozarabian +mozarabic +mozarella +mozart +mozartean +mozartia +mozdok +moze +mozek +mozele +mozeleski +mozelle +mozemize +mozes +mozetta +mozga +mozgi +mozgom +mozhesh +mozhet +mozhi +mozhno +mozhumi +mozier +mozing +mozo +mozolin +mozom +mozome +mozuno +mozuya +mozzarella +mozzato +mozzetta +mpade +mpage +mpama +mpangwe +mpbaer +mpbs +mpeg +mpegdj +mpegplayer +mpegs +mpezeni +mpgi +mpho +mphub +mpiemo +mpimi +mping +mpla +mplab +mpladm +mplalabor +mplay +mplr +mplvax +mpobyeng +mpomam +mpompo +mponde +mpondo +mpondomisi +mpondomse +mpongo +mpongoue +mpongwe +mpoo +mpopo +mpoti +mpoto +mpotovoro +mpret +mprp +mprserv +mpsc +mpts +mpudi +mpulungu +mpumpum +mpungwe +mpuono +mpus +mput +mpuun +mpyemo +mpyooting +mpyootr +mrabri +mran +mras +mrassa +mraz +mrazek +mrcnext +mrcs +mregbody +mregmain +mregsubj +mregsum +mress +mrfanatic +mrima +mrinalini +mrinmoyee +mrkos +mrkvicka +mrlimpet +mrnd +mrozinski +mrpp +mrspock +mrsr +mrtibbs +mrtice +mrudulla +mrugesh +mrung +mruxd +msatsun +msbfirst +mscaucas +mscdex +mscontin +msddnpent +msdex +msdos +msdtp +msec +mser +msfc +msgbase +msgedhis +msgedwin +msgid +msgpack +msgs +msgscreen +msgtpack +msgview +msiah +msice +msie +msila +msimangu +msink +msint +mslinerwall +mslookup +msmouse +msofpass +msoft +msource +msowe +mspc +msql +msransi +mssc +mssm +msstate +mstance +mstat +mstest +msus +msustat +mswati +msword +mszmp +mtbaldy +mtbf +mtcarmel +mtcbase +mtezi +mthi +mtholyoke +mthpc +mthvax +mtiul +mtlebanon +mtlipadm +mtlo +mtlookatthat +mtlookitthat +mtmc +mtmorris +mtnebo +mtnhome +mtns +mtnview +mtoliver +mtools +mtpocono +mtpr +mtsac +mtscmd +mtsg +mtskheta +mtsu +mtunion +mtuspeed +mtwara +mtwolf +mtxinu +muad +muaddib +mualang +mualla +muallim +muammar +muan +muana +muang +muara +muaraaman +muarainu +muarakayang +muaramalinau +muarateweh +muasi +muat +muatiamvua +muaturaina +muawad +muazzez +mubadji +mubako +mubarak +mubararon +mubarat +mubarek +mubi +mucago +mucajai +mucaro +mucchi +mucci +mucedin +mucedine +mucedinous +mucemi +much +muchachos +muchaet +muche +muchella +muches +muchfold +muchimproved +muchly +muchneeded +muchness +mucho +muchow +muchy +mucic +mucid +mucidness +muciferous +mucific +muciform +mucigen +mucigenous +mucilages +mucilaginous +mucin +mucinogen +mucinoid +mucinous +muciparous +mucivore +mucivorous +muck +mucked +muckender +mucker +muckerish +muckerism +muckerji +muckers +mucket +muckeye +muckhole +muckier +muckiest +muckily +muckiness +mucking +muckite +muckle +mucklebones +muckles +muckleshoot +mucklow +muckluck +mucklucks +muckman +muckment +muckmidden +muckna +muckrake +muckraked +muckraker +muckrakers +muckrakes +muckraking +mucks +mucksweat +mucksy +muckthrift +muckweed +muckworm +muckworms +mucky +mucluc +mucocele +mucodermal +mucofibrous +mucoid +muconic +mucoprotein +mucopurulent +mucopus +mucor +mucoraceae +mucoraceous +mucorales +mucorine +mucorioid +mucormycosis +mucoroca +mucorrhea +mucosal +mucose +mucoserous +mucosity +mucous +mucousness +mucro +mucronate +mucronated +mucronately +mucronation +mucrones +mucroniform +mucronulate +muculent +mucuna +mucus +mucuses +mucusin +muda +mudak +mudaki +mudar +mudavan +mudaye +mudbank +mudbura +mudburra +mudbutte +mudcap +mudcapped +mudcapping +mudcaps +mudcat +mudd +mudde +mudded +mudden +mudder +mudders +muddied +muddier +muddies +muddiest +muddify +muddily +muddiness +mudding +muddish +muddle +muddled +muddledom +muddleheaded +muddlement +muddleproof +muddler +muddlers +muddles +muddlesome +muddling +muddlingly +mudds +muddy +muddybrained +muddybreast +muddyheaded +muddying +mudee +mudejar +mudfish +mudfishes +mudflow +mudflows +mudge +mudguards +mudhead +mudheads +mudhole +mudholkar +mudhopper +mudia +mudiay +mudie +mudikora +mudima +mudir +mudiria +mudjeti +mudjetire +mudland +mudlark +mudlarker +mudlarks +mudless +mudnya +mudproof +mudpuppies +mudra +mudras +mudrocks +mudry +muds +mudsill +mudsills +mudskipper +mudslides +mudslinger +mudslingers +mudslinging +mudspate +mudstain +mudstone +mudstones +mudsucker +mudtrack +muduf +mudug +mudweed +mudwort +mueck +muede +muehl +muehle +muehleis +muehlstaedt +muei +mueller +muellerfunk +muename +muench +muenchhausen +muenster +muenstermann +muensters +muenz +mueren +muermo +muerta +muerte +muerto +muezzins +muffat +muffed +muffet +muffetee +muffett +muffin +muffineer +muffing +muffins +muffish +muffishness +muffled +muffleman +muffler +mufflers +muffles +muffley +mufflin +muffling +muffs +muffy +mufi +mufinella +mufti +muftis +mufty +mufu +mufutau +mufwa +mufwian +muga +mugaba +mugabe +mugaja +mugali +mugaly +mugange +mugearite +mugful +mugg +mugged +mugger +muggered +muggeridge +muggering +muggers +mugget +muggia +muggier +muggiest +muggily +mugginess +muggings +muggins +muggish +muggles +muggletonian +muggridge +muggs +muggsy +muggy +mughaja +mughalbandi +mughead +mughouse +mugience +mugiency +mugient +mugil +mugilidae +mugiliform +mugiloid +mugla +mugler +muglia +mugniot +mugridge +mugs +mugsy +mugu +muguji +mugum +mugweed +mugwort +mugworts +mugwump +mugwumpery +mugwumpian +mugwumpism +mugwumps +muhafazah +muhafazat +muhajir +muhajirs +muhamad +muhammad +muhammadi +muhammed +muhammitz +muhang +muharram +muharraq +muher +muhian +muhiang +muhibbuddin +muhich +muhl +muhlberg +muhlenbergia +muhltiks +muhltishn +muhmbl +muhnchkin +muhng +muhnj +muhomatsu +muhri +muhso +muhsur +muhura +muhyi +muhyialdin +muid +muikira +muikiri +muila +muilla +muinana +muinane +muinani +muinck +muir +muirburn +muircock +muire +muirfowl +muirhead +muirin +muisca +muise +muishond +muist +muizzaddin +mujahed +mujer +mujeres +mujezinovic +mujica +mujik +mujtahid +muju +muka +mukah +mukahoya +mukai +mukajai +mukama +mukamuga +mukang +mukaru +mukawa +mukendi +mukerjee +mukha +mukhad +mukhadora +mukhamedov +mukhar +mukherjea +mukherjee +mukherji +mukhopadhyay +muki +mukili +mukilteo +mukluk +mukluks +mukogodo +mukohn +mukomuko +mukoquodo +mukosi +mukri +muktar +muktatma +muktele +mukti +muktile +muku +mukul +mukulu +mukund +mukuni +mukuno +mukuru +mukutu +mukwonago +mulaha +mulak +mulam +mulanje +mulao +mulaprakriti +mulatta +mulattoes +mulattoism +mulattos +mulattress +mulb +mulberries +mulberry +mulbigger +mulcahey +mulcahy +mulched +mulcher +mulches +mulching +mulciber +mulcibirian +mulctable +mulctary +mulctation +mulctative +mulctatory +mulcted +mulcting +mulcts +mulctuary +muld +muldaur +mulder +mulderig +mulders +muldiv +muldoon +muldowney +muldraugh +muldrow +mule +muleback +mulecreek +muled +mulefoot +mulefooted +mulege +muleman +mulenge +mulero +mules +muleshoe +mulet +muleta +muleteer +muleteers +muletress +muletta +mulewort +muley +muleys +mulf +mulg +mulga +mulgi +mulgrew +mulh +mulhall +mulherkar +mulhern +mulheron +mulholland +muli +mulia +mulich +mulichenko +muliebral +muliebria +muliebrile +muliebrity +muliebrous +mulier +muliere +mulierine +mulierose +mulierosity +mulimba +muling +mulino +mulishly +mulishness +mulism +mulita +mulitnode +mulitschema +mulk +mulkey +mulkeytown +mull +mulla +mullahs +mullally +mullaly +mullan +mullaney +mullar +mullard +mullarney +mullativu +mullavey +mullay +mulled +mullein +mulleins +mullen +mullenize +mullens +muller +mullerian +mullers +mullet +mulletry +mullets +mullett +mullettlake +mulley +mullhall +mullicahill +mullican +mullid +mullidae +mulligans +mulligrubs +mulliken +mullin +mullinar +mulling +mullinger +mullinix +mullins +mullinville +mullioned +mullioning +mullions +mullite +mullock +mullocker +mullocky +mulloid +mulloway +mulloy +mulls +mullukmulluk +mulmedia +mulmul +mulo +mulock +mulonga +mulot +mulou +mulovsmul +mulp +mulproblems +mulqueen +mulroney +mulrooney +mulse +mulsify +mulsom +mult +multan +multangular +multangulous +multangulum +multani +multanimous +multeity +multi +multiangular +multiarmed +multiaxial +multibit +multiblade +multibladed +multiblock +multiboard +multibrand +multibreak +multibus +multibyte +multicast +multicasting +multicasts +multicentral +multicentric +multichain +multichannel +multicharge +multichord +multichrome +multician +multiciliate +multicipital +multicircuit +multicoccous +multicoil +multicolor +multicolored +multicore +multicorneal +multicostate +multicourse +multics +multicuspid +multicycle +multidentate +multidigit +multidos +multidrop +multiedit +multiengine +multiengined +multiethnic +multiexhaust +multifaced +multifaceted +multifactor +multifamily +multiferous +multifiber +multifibered +multifid +multifidly +multifidous +multifidus +multiflash +multiflorous +multiflow +multiflue +multifocal +multifoil +multifoiled +multifold +multifoliate +multiform +multiformed +multiformity +multiframe +multifurcate +multigap +multigrade +multigraph +multigrapher +multigraphs +multigyrate +multihead +multihearth +multihop +multihued +multiitem +multijet +multijugate +multijugous +multilag +multilaminar +multilateral +multilayer +multilayered +multileaving +multilevel +multileveled +multilighted +multiline +multilineal +multilinear +multilingual +multilirate +multiliteral +multilobar +multilobate +multilobe +multilobed +multilobular +multilocular +multilog +multiloquent +multiloquous +multiloquy +multimachine +multimacular +multimail +multimailer +multimammate +multimarble +multimax +multimedia +multimedial +multimetalic +multimillion +multimodal +multimode +multimotor +multimotored +multimusic +multinervate +multinervose +multinet +multinodal +multinodate +multinode +multinodous +multinodular +multinomials +multinominal +multinormal +multinote +multinuclear +multiovular +multiovulate +multipacket +multipara +multiparient +multiparity +multiparous +multipartite +multiparty +multipass +multipath +multiped +multipeds +multiphase +multiphaser +multiphasic +multipinnate +multiplan +multiplane +multiplayer +multiple +multiples +multiplexed +multiplexer +multiplexers +multiplexes +multiplexing +multiplexors +multiplicand +multiplicate +multiplicity +multiplied +multipliedst +multiplier +multipliers +multiplies +multiplieth +multiply +multiplying +multipointed +multipolar +multipole +multiport +multiported +multipotent +multipresent +multiprocess +multiprogram +multipurpose +multipying +multiracial +multiradial +multiradiate +multiramose +multiramous +multirate +multireflex +multiregion +multirisk +multirooted +multisaccate +multisample +multiscience +multiseated +multisect +multisection +multisector +multiselect +multisensual +multiseptate +multiserial +multiseriate +multiserver +multishot +multisided +multisite +multisonous +multispecies +multispeed +multispindle +multispinous +multispiral +multispired +multistage +multistate +multistep +multistoried +multistory +multistratum +multistriate +multisulcate +multisync +multisystem +multitagged +multitarian +multitask +multitaskers +multitasking +multitech +multitheism +multithread +multitiered +multititular +multitoed +multitoned +multitool +multitrack +multitube +multitubular +multitude +multitudes +multitudinal +multiturn +multitype +multiuser +multivagant +multivalence +multivalency +multivalent +multivalve +multivalved +multivane +multivariant +multivariate +multivarious +multivendor +multiversant +multiverse +multiversion +multiversity +multivious +multivitamin +multivocal +multivoiced +multivolent +multivoltine +multivolumed +multivorous +multiway +multiwindow +multiword +multiwords +multo +multocular +multu +multum +multungulate +multure +multurer +multyftp +mulu +mululu +mulung +mulvane +mulvaney +mulvanez +mulvey +mulvie +mulvihill +mulvsmulo +mulw +mulwi +mulwray +mulwyin +muly +mulyen +mumak +mumakil +mumbake +mumbala +mumblage +mumble +mumblebee +mumbleco +mumbled +mumblement +mumbler +mumblers +mumbles +mumbletypeg +mumblewango +mumbling +mumblingly +mumblings +mumbo +mumbwa +mumbwe +mume +mumeng +mumford +mumify +mumij +mumin +mumm +mumma +mummed +mummer +mummeries +mummers +mummert +mummery +mummichog +mummick +mummied +mummies +mummified +mummifies +mummiform +mummify +mummifying +mumming +mumms +mummy +mummydom +mummyhood +mummying +mummylike +mumness +mumoni +mumorm +mumoth +mump +mumped +mumper +mumphead +mumpish +mumpishly +mumpishness +mumplike +mumps +mumpsimus +mumruffin +mums +mumu +mumughadja +mumupra +mumuye +mumuyedong +mumuyeyoro +mumuyezinna +mumviri +mumy +muna +munabuton +munafo +munandi +munari +munassir +munastir +munaz +muncerian +munched +muncheel +muncher +munchers +munches +munchet +munchies +munchil +munching +munchkin +munchkins +munchmeyer +munchy +muncie +munck +muncy +muncyvalley +mund +munda +mundabi +mundane +mundanely +mundaneness +mundang +mundani +mundaninjen +mundanism +mundanity +mundari +mundat +mundation +mundatory +munday +mundel +mundelein +mundemba +munden +mundhenk +mundi +mundic +mundificant +mundifier +mundify +mundil +mundin +mundinho +mundivagant +mundivagrant +mundle +mundleria +mundo +mundri +mundson +mundt +mundu +munduguma +mundugumor +mundum +mundurucu +munduruku +mundy +munerary +munerate +munford +munfordville +munga +mungaka +mungallala +mungarra +mungbere +munge +munger +mungerry +mungey +munggai +munggava +mungge +munggui +mungiki +munging +mungo +mungofa +mungong +mungoose +mungs +mungu +munguba +mungy +mungyen +munhall +muni +munia +munic +munich +muniche +muniches +munichi +munichino +munichism +municipal +municipalism +municipalist +municipality +municipalize +municipally +municipio +municipios +municipiu +municipium +munier +munific +munificence +munificency +munificently +munikoti +muniment +munin +muninger +munio +munir +munising +munit +munith +munition +munitionary +munitioned +munitioneer +munitioner +munitions +munity +muniwara +muniz +munj +munjan +munjani +munjeet +munji +munjistin +munjiyidgha +munjuk +munk +munkaf +munkan +munkei +munken +munkip +munks +munn +munnari +munne +munnetra +munnings +munnion +munnopsidae +munnopsis +munns +munnsville +munoz +munro +munroe +munroefalls +munsang +munsee +munsey +munshi +munshiganj +munshin +munsonville +munster +munt +muntabi +muntaiwan +muntenia +muntenian +munter +muntiacus +muntin +muntingia +muntjac +munukania +munukutuba +munychia +munychian +munychion +munyo +munz +muohio +muoi +muon +muonic +muonio +muonium +muons +mupad +muphrid +muppet +muppets +muppim +mupun +muqui +mura +murad +muradia +muradiyah +muraena +muraenidae +muraenoid +murage +murakami +muraled +muralidban +muralist +muralists +murally +murals +muramoto +muramvya +muran +muranese +murang +muranga +murano +murapiraha +murasakite +murase +murash +murat +murati +murato +muratorian +muraviov +murawski +murayama +murcell +murch +murchison +murchy +murcia +murda +murdaugh +murder +murdered +murderee +murderees +murderer +murderers +murderess +murderesses +murdering +murderingly +murderish +murderment +murderous +murderously +murders +murdeshwar +murdin +murdo +murdoc +murdoch +murdock +murdrer +murdrum +murdstone +mure +mureil +murelei +murenger +mures +muret +murex +murexan +murexes +murexide +murfin +murfree +murfreesboro +murga +murgas +murgatroid +murgatroyd +murgavi +murgeon +murgi +murgon +muri +muria +murial +muriate +muriated +murica +muricate +muricated +muricid +muricidae +muriciform +muricine +muricoid +muriculate +murid +muridae +muridism +murie +muriel +murielle +muriform +muriformly +murik +murillo +murinae +murinaten +murinbada +murinbata +murine +murines +muring +murinus +murio +murire +muris +murisapa +murison +muriti +murium +muriya +murk +murker +murkest +murkier +murkiest +murkily +murkiness +murkish +murkly +murkness +murkowski +murks +murksome +murky +murle +murlin +murlokotam +murly +murmansk +murmerer +murmi +murmur +murmuration +murmurator +murmured +murmurer +murmurers +murmuring +murmuringly +murmurings +murmurish +murmurless +murmurlessly +murmurous +murmurously +murmurs +murna +murnaghan +murney +muro +murock +muromontite +muroran +murph +murphett +murphies +murphin +murphy +murphys +murphysboro +murra +murrain +murrains +murraro +murray +murraya +murraycity +murrayhill +murraysville +murrayville +murree +murrel +murrelet +murrell +murrey +murrhardt +murrhine +murri +murriata +murrieta +murrina +murrinhpatha +murrion +murris +murrnong +murru +murrungun +murry +murrysville +murshid +mursi +mursum +murtagh +murtaugh +murtha +murther +murthered +murthy +murthys +murton +murty +muru +murua +murugu +murui +murule +murum +murumuru +murun +murung +murupi +murut +muruthu +murutic +muruttidong +muruwa +muruxi +murva +murvyn +murya +murza +murze +murzi +murzim +murzu +murzuq +musa +musaceae +musaceous +musaeus +musahar +musahari +musai +musaib +musak +musal +musales +musali +musalmani +musama +musan +musandam +musang +musante +musar +musarrat +musas +musasa +musashino +musau +musayid +musayna +musc +musca +muscade +muscadel +muscadine +muscadinia +muscardine +muscardinus +muscari +muscariform +muscarine +muscat +muscatel +muscatels +muscatine +muscatorium +muscats +musch +muschi +musci +muscianto +muscicapa +muscicapidae +muscicapine +muscicide +muscicole +muscicoline +muscicolous +muscid +muscidae +musciform +muscinae +muscle +musclebound +muscled +muscleless +musclelike +musclemen +muscles +muscling +musclow +muscly +muscoda +muscogee +muscoid +muscoidea +muscologic +muscological +muscologist +muscology +muscone +muscose +muscoseness +muscosity +muscot +muscotah +muscovadite +muscovado +muscovi +muscovite +muscovites +muscovitic +muscovitize +muscular +muscularity +muscularize +muscularly +musculation +musculature +musculatures +muscule +musculin +musculus +muse +musearc +mused +museful +musefully +musei +museist +museless +muselik +muselike +musella +musemban +museography +museologist +museology +muser +musers +musery +muses +musesmills +musette +musettes +museum +museumize +museums +museveni +musey +museyna +musgoi +musgoy +musgrave +musgrove +musgu +musgum +musha +mushaa +mushabbihite +mushang +mushdos +mushed +musher +mushere +mushers +mushes +mushhead +mushheaded +mushi +mushie +mushier +mushiest +mushily +mushiness +mushing +mushites +mushla +mushmelon +mushmouth +mushrebiyeh +mushroom +mushroomed +mushroomer +mushroomic +mushrooming +mushroomlike +mushrooms +mushroomy +mushru +mushtaque +mushtari +mushu +mushy +musi +musian +music +musica +musical +musicales +musicality +musicalize +musically +musicalness +musicals +musicate +musicease +musicgenie +musician +musiciana +musicianer +musicianly +musicians +musicianship +musick +musicker +musicless +musiclike +musicmatch +musicmonger +musico +musicography +musicologist +musicologue +musicomania +musicophobia +musicopoetic +musicplaying +musicproof +musics +musie +musiina +musik +musilek +musily +musimon +musing +musingly +musings +musique +musitians +musk +muska +muskat +muskeg +muskeggy +muskego +muskegon +muskegs +musketade +musketeer +musketeers +musketlike +musketoon +musketproof +musketries +musketry +muskets +muskett +muskflower +muskhogean +muskie +muskier +muskies +muskiest +muskily +muskiness +muskingum +muskish +muskits +musklike +muskmelons +muskogean +muskogee +muskrat +muskrats +muskroot +musks +muskwaki +muskwood +musky +muslim +muslims +muslined +muslinet +muslins +musn +musnud +musoi +musom +musophaga +musophagi +musophagidae +musophagine +musora +muspratt +musquash +musquashroot +musquashweed +musquaspen +musquaw +musqueam +musrol +muss +mussa +mussabini +mussable +mussably +mussaenda +mussal +mussalchee +mussallem +mussalmani +mussar +mussau +mussed +musseh +musseled +musseler +musselmani +mussels +musselshell +musselwhite +mussende +musser +musses +musset +mussetti +mussgnug +mussier +mussiest +mussily +mussiness +mussing +mussitate +mussitation +musso +mussoh +mussoi +mussolini +musson +mussorgskia +mussorgsky +mussoy +mussuh +mussuk +mussulman +mussulmanic +mussulmanish +mussulmanism +mussulwoman +mussurana +mussy +must +musta +mustache +mustached +mustaches +mustachial +mustachioed +mustafa +mustafaev +mustafina +mustafoff +mustag +mustahfiz +mustang +mustanger +mustangs +mustapha +mustard +mustarder +mustards +mustardseed +musted +mustee +mustek +mustel +mustela +mustelid +mustelidae +musteline +mustelinous +musteloid +mustelus +muster +musterable +mustered +musterer +mustereth +mustering +mustermaster +musters +mustier +mustiest +mustify +mustillo +mustily +mustin +mustiness +musting +mustn +mustnt +musto +mustoe +mustonen +musts +musty +musu +musuk +musume +musy +muszte +muszynska +muta +mutabilia +mutability +mutable +mutableness +mutably +mutafacient +mutage +mutagenesis +mutagenic +mutagenicity +mutagens +mutani +mutant +mutants +mutarotate +mutarotation +mutase +mutate +mutated +mutates +mutating +mutation +mutational +mutationally +mutationism +mutationist +mutations +mutative +mutator +mutatory +mutawalli +mutazala +mutch +mutcher +mutchie +mutchler +mute +muted +mutedly +mutely +muteness +muter +mutes +mutesarif +mutescence +mutessarifat +mutest +muth +muthambi +muthanna +mutheit +mutherfuckin +muthmannite +muthmassel +muthun +muthuswamy +muthuvan +muti +mutia +mutic +muticous +mutige +mutilated +mutilates +mutilating +mutilation +mutilations +mutilative +mutilator +mutilators +mutilatory +mutilla +mutillid +mutillidae +mutilous +mutineered +mutineering +mutineers +muting +mutinied +mutinies +mutining +mutinode +mutinous +mutinously +mutinousness +mutinying +mutisia +mutisiaceae +mutism +mutist +mutistic +mutivariate +mutive +mutivity +mutliple +mutonia +mutoscope +mutoscopic +mutsamudu +mutsje +mutsuddy +mutsumi +mutt +muttaphuken +muttaqi +mutter +muttered +mutterer +mutterers +muttering +mutteringly +mutterings +mutters +mutti +muttonbird +muttonchop +muttonchops +muttonfish +muttonhead +muttonheaded +muttonhood +muttonmonger +muttons +muttontown +muttonwood +muttony +mutts +mutu +mutual +mutualism +mutualist +mutualistic +mutualities +mutuality +mutualize +mutually +mutualness +mutuals +mutuary +mutuatitious +mutuels +mutulary +mutule +mutum +muturami +muturua +muturwa +mutus +mututu +mutuum +mutwang +muumuu +muumuus +muungo +muure +muus +muwalid +muwasi +muxeneder +muxer +muxule +muxuli +muya +muyang +muyenge +muyere +muyinga +muysca +muyu +muyua +muyuka +muyunga +muyusa +muyuw +muywi +muzaffarabad +muzenda +muzgash +muzh +muzhik +muzhike +muzhiks +muzhki +muzic +muziek +muziku +muzio +muzjiks +muzok +muzquiz +muzuk +muzychenko +muzz +muzzier +muzziest +muzzily +muzzin +muzziness +muzzle +muzzled +muzzleloader +muzzler +muzzlers +muzzles +muzzlewood +muzzling +muzzy +mvae +mvan +mvangan +mvanip +mvanlip +mvax +mvay +mvcc +mvedere +mvegumba +mvele +mvete +mvision +mvita +mvme +mvognamve +mvogniengue +mvolo +mvonangkok +mvsa +mvuba +mvubaa +mvue +mvumbo +mwae +mwaghavul +mwahed +mwakenya +mwako +mwali +mwalukwasia +mwamba +mwambong +mwan +mwanda +mwaneka +mwanga +mwani +mwano +mwanza +mwateba +mwatebu +mwave +mweka +mwela +mweneditu +mwenga +mwenyi +mwera +mwerelawa +mweri +mwerig +mwila +mwimbi +mwina +mwinyi +mwomo +mwraaa +mwsc +mwunix +mwyoung +mxic +mxopl +myacea +myagatwa +myagdi +myakkacity +myal +myalgia +myalgic +myalism +myall +myang +myanma +myanmar +myarea +myaria +myarian +myasnikov +myasnikova +myaso +myasthenia +myasthenic +myatism +myatonia +myatonic +myatony +myatrophy +myatt +myau +myazin +mycele +mycelia +mycelial +mycelian +mycelioid +mycelium +myceloid +mycetes +mycetism +mycetocyte +mycetogenic +mycetogenous +mycetoid +mycetology +mycetoma +mycetomatous +mycetophilid +mycetous +mycetozoa +mycetozoan +mycetozoon +mycielski +mycocecidium +mycocyte +mycoderm +mycoderma +mycodermic +mycodermitis +mycodesmoid +mycodomatium +mycogone +mycohaemia +mycohemia +mycoid +mycologic +mycological +mycologist +mycologists +mycologize +mycomycete +mycomycetes +mycomycetous +myconf +mycophagist +mycophagous +mycophagy +mycophyte +mycoplana +mycoplasm +mycoplasmic +mycoprotein +mycorhiza +mycorhizal +mycorrhizal +mycose +mycosin +mycosis +mycosozin +mycosterol +mycotic +mycotoxic +mycotoxin +mycotrophic +mycroft +mycteria +mycteric +mycterism +myctodera +myctophid +myctophidae +myctophum +mydaidae +mydaleine +mydatoxine +mydaus +mydine +mydriasine +mydriasis +mydriatic +mydriatine +myectomize +myectomy +myectopia +myectopy +myelalgia +myelapoplexy +myelasthenia +myelatrophy +myelauxe +myelemia +myelic +myelin +myelinate +myelinated +myelination +myelinic +myelinogeny +myelitic +myelitis +myeloblast +myeloblastic +myelocele +myelocoele +myelocyst +myelocystic +myelocyte +myelocytic +myelocytosis +myelogenesis +myelogenetic +myelogenous +myelogonium +myeloic +myeloma +myelomalacia +myelomatoid +myelomatosis +myelomenia +myelomere +myelon +myelonal +myelonic +myelopathic +myelopathy +myelopetal +myeloplast +myeloplastic +myeloplax +myeloplegia +myelopoiesis +myelopoietic +myelorrhagia +myelorrhaphy +myelosarcoma +myelospasm +myelotherapy +myelozoa +myelozoan +myen +myene +myenge +myentasis +myenteric +myenteron +myer +myers +myersbriggs +myersflat +myerson +myerstown +myersville +myesthesia +myet +myexception +myflix +myfonts +myfoorsch +mygale +mygalid +mygaloid +myhers +myhill +myiarchus +myiasis +myiferous +myimu +myiodesopsia +myiosis +myip +myitis +myitkyina +mykel +mykhanidy +mykines +mykiss +mykityshyn +myla +mylar +mylene +myles +myliobatid +myliobatidae +myliobatine +myliobatoid +mylo +mylodon +mylodont +mylodontidae +mylohyoid +mylohyoidean +mylong +mylonite +mylonitic +mymar +mymarid +mymaridae +mymensingh +mymryk +myna +mynahs +myname +mynarmehs +mynas +mynhardt +mynheers +mynky +mynotes +mynpacht +mynt +myoalbumin +myoalbumose +myoatrophy +myoblast +myoblastic +myocardia +myocardiac +myocarditic +myocarditis +myocele +myoclonic +myoclonus +myocoele +myocoelom +myocolpitis +myocomma +myocyte +myodes +myodiastasis +myodynamia +myodynamic +myodynamics +myoedema +myoelectric +myofibroma +myogen +myogenesis +myogenetic +myogenic +myogenous +myoglobulin +myogram +myograph +myographer +myographic +myographical +myographist +myography +myohematin +myoid +myoidema +myokinesis +myolemma +myolipoma +myoliposis +myologic +myological +myologist +myology +myolysis +myoma +myomalacia +myomancy +myomantic +myomatous +myomectomy +myomelanosis +myomere +myometritis +myometrium +myomorph +myomorpha +myomorphic +myomotomy +myoneme +myoneural +myoneuralgia +myoneure +myoneuroma +myoneurosis +myonosus +myopachynsis +myoparalysis +myoparesis +myopathia +myopathic +myopathy +myope +myopes +myophan +myophore +myophorous +myophysical +myophysics +myopias +myopic +myopical +myopically +myoplasm +myoplastic +myoplasty +myopolar +myoporaceae +myoporaceous +myoporad +myoporum +myoproteid +myoprotein +myoproteose +myops +myopy +myorrhaphy +myorrhexis +myosarcoma +myosclerosis +myoscope +myoseptum +myoshi +myosinogen +myosinose +myosis +myositic +myositis +myosote +myosotis +myospasm +myospasmia +myosurus +myosuture +myosynizesis +myotacismus +myotalpa +myotalpinae +myotasis +myotenotomy +myothermic +myotic +myotome +myotomic +myotomy +myotonia +myotonic +myotonus +myotony +myotrophy +myoung +myowun +myoxidae +myoxine +myoxus +myra +myrabalanus +myrabolam +myrah +myral +myranda +myrasysla +myrberg +myrcene +myrcia +myrddin +myre +myrette +myria +myriacoulomb +myriad +myriaded +myriadfold +myriadly +myriads +myriadth +myriagram +myriagramme +myrialiter +myrialitre +myriam +myriameter +myriametre +myriamme +myrianida +myriapod +myriapoda +myriapodan +myriapodous +myriapods +myriarch +myriarchy +myriare +myrica +myricaceae +myricaceous +myricales +myricetin +myricin +myrick +myricyl +myricylic +myriel +myriem +myrientomata +myrilla +myrillas +myringa +myringectomy +myringitis +myringotome +myringotomy +myriological +myriologist +myriologue +myriophyllum +myriopoda +myriopodous +myriorama +myrioscope +myriosporous +myriotheism +myriotrichia +myristate +myristic +myristica +myristin +myristone +myrl +myrle +myrlene +myrmecia +myrmecobine +myrmecobius +myrmecochory +myrmecoid +myrmecoidy +myrmecology +myrmecophaga +myrmecophile +myrmecophily +myrmecophyte +myrmekite +myrmeleon +myrmica +myrmicid +myrmicidae +myrmicine +myrmicoid +myrmidon +myrmidonian +myrmidons +myrmotherine +myrna +myro +myrobalan +myron +myronate +myronic +myroon +myrosin +myrosinase +myrothamnus +myroxylon +myrrh +myrrha +myrrhed +myrrhic +myrrhine +myrrhis +myrrhol +myrrhophore +myrrhs +myrrhy +myrsinaceae +myrsinaceous +myrsinad +myrsiphyllum +myrta +myrtaceae +myrtaceous +myrtal +myrtales +myrthille +myrtia +myrtice +myrtie +myrtiform +myrtil +myrtille +myrtilus +myrtlbch +myrtle +myrtlebeach +myrtleberry +myrtlecreek +myrtlelike +myrtlepoint +myrtles +myrtlewood +myrto +myrtol +myrtus +mysel +myself +mysell +myselves +myshalova +mysia +mysian +mysid +mysidacea +mysidae +mysidean +mysis +mysogynism +mysoid +mysophobia +mysore +mysosophist +mysost +myst +mystacial +mystacocete +mystacoceti +mystagogic +mystagogical +mystagogue +mystagogy +mystax +mystere +mysteres +mysterial +mysteriarch +mysteries +mysteriosity +mysterious +mysteriously +mysterius +mysterize +mystery +mystes +mystic +mystical +mysticality +mystically +mysticalness +mysticete +mysticeti +mysticetous +mysticism +mysticisms +mysticity +mysticize +mysticly +mystics +mystific +mystifically +mystificator +mystified +mystifiedly +mystifier +mystifiers +mystifies +mystify +mystifying +mystifyingly +mystiques +mystkowski +mytacism +myth +mythic +mythical +mythicalism +mythicality +mythically +mythicalness +mythicism +mythicist +mythicize +mythicizer +mythify +mythism +mythist +mythize +mythland +mythmaker +mythmaking +mythoclast +mythoclastic +mythogenesis +mythogonic +mythogony +mythographer +mythography +mythogreen +mythoheroic +mythologema +mythologer +mythologic +mythological +mythologies +mythologist +mythologists +mythologize +mythologizer +mythologue +mythology +mythomania +mythomaniac +mythometer +mythonomy +mythopoeic +mythopoeism +mythopoeist +mythopoem +mythopoesis +mythopoesy +mythopoet +mythopoetic +mythopoetize +mythopoetry +mythos +myths +mythus +mytilacea +mytilacean +mytilaceous +mytiliaspis +mytilid +mytilidae +mytiliform +mytiloid +mytilotoxine +mytilus +myton +mytyl +myuang +myxa +myxadenitis +myxadenoma +myxaemia +myxamoeba +myxangitis +myxasthenia +myxedema +myxedematoid +myxedematous +myxedemic +myxemia +myxine +myxinidae +myxinoid +myxinoidei +myxo +myxobacteria +myxoblastoma +myxococcus +myxocystoma +myxocyte +myxofibroma +myxogaster +myxogasteres +myxogastres +myxogastric +myxogastrous +myxoglioma +myxoid +myxoinoma +myxolipoma +myxoma +myxomatosis +myxomatous +myxomycete +myxomycetes +myxomycetous +myxomyoma +myxoneuroma +myxophyceae +myxophycean +myxophyta +myxopod +myxopoda +myxopodan +myxopodium +myxopodous +myxopoiesis +myxorrhea +myxosarcoma +myxospongiae +myxospongian +myxospongida +myxospore +myxosporidia +myxosporium +myxosporous +myxotheca +myxovirus +myxoviruses +myziky +myzodendron +myzomyia +myzont +myzontes +myzostoma +myzostomata +myzostome +myzostomid +myzostomida +myzostomidae +myzostomidan +myzostomous +mzab +mzabi +mzabwargla +mzieme +mzimba +mzver +naahai +naahs +naaket +naalehu +naallah +naam +naama +naamah +naaman +naamathite +naamites +naandi +naani +naantali +naaoooo +naapa +naapaa +naarah +naarai +naaran +naarath +naare +naarendorp +naarich +naashon +naasioi +naassenes +naasson +naawee +naaz +naba +nababan +nababsing +nabai +nabak +nabal +nabalebale +nabalism +nabalite +nabalitic +nabaloi +nabalus +nabandi +nabangchang +nabanj +nabarro +nabas +nabataean +nabatean +nabathaean +nabathean +nabathite +nabawan +nabay +nabb +nabbed +nabber +nabbing +nabby +nabdam +nabde +nabdug +nabe +nabesna +nabi +nabih +nabil +nabila +nabiraetsa +nabire +nabisco +nabit +nabk +nablas +nable +nablos +nablus +nabnam +nabo +nabob +nabobery +nabobess +nabobical +nabobish +nabobishly +nabobism +nabobisms +nabobry +nabobs +nabobship +nabor +nabors +naboth +nabothian +nabrug +nabs +nabt +nabte +nabu +nabua +nabuco +nabukelevu +nabul +nacala +nacar +nacarat +nacarati +nacarine +naccaratti +naccarelli +nace +nacelle +nacelles +nach +nacha +nachal +nachali +nachama +nachani +nachas +nachereng +naches +nachinayu +nachinayut +nachitoch +nachitoches +nachman +nachnet +nacho +nachon +nachor +nachricht +nachrichten +nachschlag +nacht +nachte +nachtigal +nachtigall +nachts +nachtsheim +nachum +nachus +nachusa +nacib +nacido +nacio +nacional +nacionalista +nacionalna +nacked +nacker +nacket +naco +nacogdoches +nacor +nacre +nacred +nacreous +nacres +nacrine +nacrite +nacrous +nacry +nada +nadab +nadabo +nadae +nadc +naddeo +nadder +nade +nadean +nadeau +nadeb +nadeem +nadeen +nadeev +nadel +nadell +naden +nadena +nadene +nader +nadeyalsya +nadezhda +nadhi +nadi +nadia +nadim +nadine +nadir +nadiral +nadire +nadirs +nadiuska +nadiya +nadja +nadkarni +nadler +nado +nadoba +nadolgo +nadolny +nadon +nador +nadorite +nadrau +nadrivnim +nadroga +nadu +nady +nadya +naebody +naechsten +naechte +naef +naegate +naegates +naeheres +nael +naem +naema +naemi +naemorhedine +naemorhedus +naerum +naeste +naestiberger +naether +naething +naevose +nafa +nafaanra +nafaara +nafada +nafana +nafar +nafara +nafarpi +nafezi +naff +nafigator +nafisa +nafri +nafs +naftali +nafukwa +nafunfia +nafusah +naga +nagaev +nagahara +nagai +nagaika +nagaland +nagamese +nagana +nagane +nagano +nagao +nagar +nagara +nagaraj +nagaraja +nagaran +nagarchal +nagarchi +nagari +nagarige +nagarotte +nagarsenker +nagarur +nagas +nagashima +nagassamese +nagata +nagatelite +nagatiman +nagatman +nagbanmba +nagbox +nage +nageberger +nageezi +nagekeo +nagel +nagelkerke +nagendra +nagenthiram +nagesh +nagge +nagged +nagger +naggers +naggin +nagging +naggingly +naggingness +naggish +naggle +naggly +naggy +naghade +naght +nagibin +nagilum +nagir +nagishot +nagkassar +nagle +nagler +naglfar +nagmaal +nagman +nagnag +nagnail +nagnal +nago +nagor +nagot +nagots +nagovis +nagovisi +nagpana +nagpur +nagpuri +nagpuria +nagpuriya +nagramadu +nags +nagscreens +nagshead +nagsman +nagster +naguabo +nagual +nagualism +nagualist +naguib +nagumi +naguri +nagy +nagyagite +nagylaki +nagymaros +nagys +nagyszeder +naha +nahabedian +nahal +nahalal +nahali +nahaliel +nahallal +nahalol +naham +nahamani +nahan +nahanarvali +nahane +nahani +nahant +naharai +nahari +naharvali +nahas +nahash +nahata +nahath +nahbi +nahek +nahes +nahil +nahilzay +nahina +nahine +nahitril +nahla +nahma +nahmias +nahni +naho +nahoa +nahoma +nahor +nahorniak +nahouiri +nahoumova +nahouri +nahr +nahren +nahshon +nahsi +nahu +nahua +nahual +nahuan +nahuat +nahuatl +nahuatlac +nahuatlan +nahuatleca +nahuatlecan +nahuatls +nahukua +nahum +nahunta +nahuqua +nahuy +nahuyarilsya +nahyu +naiadaceae +naiadaceous +naiadales +naiades +naiads +naiali +naiant +naias +naibedj +naic +naid +naidu +naif +naifly +naifs +naig +naigie +naik +naiki +naikkuruba +nail +nailbin +nailbrush +naile +nailed +nailer +naileress +nailers +nailery +nailhead +nailheads +nailing +nailless +naillike +nailprint +nailproof +nailrod +nails +nailset +nailsets +nailshop +nailsick +nailsmith +nailwort +naily +naim +naima +naimasimasi +naimpally +nain +nainby +naindin +naingngandaw +nainital +nainsel +nainsook +naio +naioth +naipkin +nair +naira +nairai +nairin +nairn +nairobi +nairy +nais +naish +naismith +naissance +naissant +naitasiri +naither +naito +naive +naively +naiveness +naivest +naivetes +naiveties +naivety +naivite +naiyana +naja +najaf +najafi +najd +najean +naji +najib +najibullah +najil +najin +najjar +najlis +najran +naka +nakache +nakadai +nakae +nakaela +nakahai +nakahara +nakaharo +nakai +nakama +nakamoto +nakamura +nakanai +nakanishi +nakanna +nakano +nakanyare +nakar +nakara +nakare +nakata +nakatal +nakatsu +nakaya +nakazanie +nake +naked +nakeder +nakedest +nakedish +nakedize +nakedly +nakedness +nakedweed +nakedwood +naken +naker +nakgaktai +nakhapelov +nakhi +nakhichevan +nakhla +nakhlite +nakhod +nakhoda +nakhodka +nakhon +nakhoul +naki +nakiai +nakil +nakina +nakir +nakkara +naknek +nako +nakonecznyj +nakonez +nakong +nakoo +nakorn +nakoroboya +nakota +nakote +nakrst +nakukwa +nakula +nakurennim +nakurivaet +nakuru +nakwi +nakwiamasu +nala +nalabon +nalani +nalbach +nalc +nalca +nalder +naldi +naldrett +nale +nalea +nalee +nali +nalik +nalimo +nalin +nalinle +nalita +nall +nallah +nallen +nallengara +nallkadeya +nalou +naltje +naltya +nalu +nalut +nama +namaam +namability +namable +namah +namakaban +namakere +namakereti +namakura +namakwa +namaland +namaliu +naman +namaqua +namaquan +namasa +namassi +namaste +namatalaki +namatanai +namath +namatota +namatote +namau +namaycush +namaz +namazlik +namba +nambakaengo +nambara +nambas +nambe +nambi +nambikua +nambikuara +nambikwara +nambiquara +nambiquaran +namblo +nambo +namboodiri +nambride +nambrong +nambu +nambulu +nambya +nambypamby +nambzya +namchi +namchik +namci +namda +namdan +name +nameability +nameboard +named +nameer +namefs +namejeti +nameji +namele +nameless +namelessly +namelessness +nameling +namely +namen +namena +namentenga +nameof +namepart +nameplates +namer +namers +names +namesakes +namesare +nameserv +nameserver +nameservers +namesize +namespace +nameth +namfau +nami +namia +namib +namibe +namibia +namibian +namida +namie +namiki +naming +namir +namkil +namkoong +naml +namlea +namlite +namlung +nammad +namn +namnam +namnogo +namo +namome +namonaku +namoni +namont +namonuito +namosi +namours +nampa +nampeo +nampo +namposhoto +namposi +nampula +namrata +namrud +namsang +namsangia +namshi +namsrv +namtha +namthat +namu +namuka +namumi +namuni +namunka +namur +namuya +namv +namwanga +namwezi +namwong +nana +nanafalia +nanai +nanaimo +nanaj +nanamambere +nanamiya +nanango +nananne +nanao +nanar +nanasan +nanatuks +nanawood +nanay +nanayakkara +nanayakkaru +nance +nancee +nancere +nances +nancey +nanchang +nanchere +nanci +nancie +nancini +nancoury +nancowry +nancy +nand +nanda +nandan +nande +nandereke +nandi +nandina +nandine +nandita +nandjiwarra +nando +nandor +nandow +nandu +nandutari +nane +nanerge +nanes +nanete +nanette +nang +nanga +nangaeboko +nangaella +nangalami +nangapinoh +nangarach +nangarhar +nangasayan +nangenuwetan +nanggu +nangimera +nangire +nangjere +nangmado +nangumiri +nangurima +nangwin +nanh +nani +nanice +nanine +nanisivik +nanism +naniwa +nanization +nanjemoy +nanjeri +nanjing +nanka +nankai +nankani +nankanse +nankeen +nankeens +nanki +nankin +nankina +nanking +nankingese +nankins +nanna +nannander +nannandrium +nannandrous +nannette +nanni +nannie +nannies +nanning +nanny +nannyberry +nannybush +nannypay +nano +nanoacre +nanoacres +nanoagent +nanoay +nanobot +nanobots +nanocentury +nanocephalia +nanocephalic +nanocephalus +nanocephaly +nanocode +nanocomputer +nanogram +nanograms +nanohbot +nanohk +nanohtekno +nanoid +nanomam +nanomelia +nanomelous +nanomelus +nanon +nanook +nanoprogram +nanosec +nanoseconds +nanosoma +nanosomia +nanosomus +nanostore +nanostores +nanowatt +nanowatts +nanoword +nanpie +nanqa +nanseishoto +nansen +nansenia +nanshi +nant +nantana +nantaporn +nantasiri +nantcere +nantell +nantes +nanticoke +nantjara +nantle +nantokite +nantong +nantou +nantyglo +nantz +nanuet +nanumanga +nanumba +nanumea +nanuni +nanwang +nanynka +nanzva +naogaon +naoh +naohiko +naoko +naological +naology +naolu +naoma +naomam +naome +naometry +naomi +naone +naor +naos +naosaurus +naoto +naoudem +naoum +naouri +napa +napaea +napaean +napagibetini +napagitene +napakiak +napal +napalm +napalmed +napalming +napalms +napaloni +napan +napanoch +napanskij +napaporn +napavine +napayo +napead +napecrest +napellus +naper +naperer +naperies +napert +naperville +napery +napes +naphan +naphish +naphtali +naphtha +naphthacene +naphthalate +naphthalene +naphthalenic +naphthalic +naphthalin +naphthaline +naphthalize +naphthalol +naphthamine +naphthas +naphthene +naphthenic +naphthionate +naphtho +naphthoic +naphthol +naphtholate +naphtholize +naphthols +naphthosalol +naphthous +naphthoxide +naphthyl +naphthylene +naphthylic +naphtol +naphtuhim +napier +napierian +napiform +napinaet +napisal +napisano +napishi +napishu +napke +napkin +napkinful +napkining +napkins +napler +naples +napless +naplessness +napo +napolean +napoleao +napoleon +napoleonana +napoleonism +napoleonist +napoleonite +napoleonize +napoleons +napoles +napoli +napolitani +napolitania +napolitano +naponee +napoo +nappanee +nappe +napped +napper +nappers +nappes +nappie +nappier +nappies +nappiness +napping +nappishness +nappy +naprapath +naprapathy +naprawde +naprimer +napron +naprotiv +naps +naptha +napthionic +napu +napuanmen +napuka +nara +narabuna +narabunu +naraguta +narail +narain +narak +naraka +narango +naranjito +naraoka +nararapi +narasimha +narasimhan +narathiwat +narau +naravisa +narayan +narayana +narayanan +narayanganj +narayani +narberth +narboni +narc +narcaciontes +narceine +narcisco +narcism +narciso +narciss +narcissa +narcissan +narcisse +narcissi +narcissine +narcissistic +narcissists +narcissus +narcissuses +narcist +narcistic +narco +narcobatidae +narcobatus +narcohypnia +narcolepsies +narcolepsy +narcoleptic +narcoma +narcomania +narcomaniac +narcomata +narcomatous +narcomedusae +narcomedusan +narcos +narcose +narcotherapy +narcotia +narcotic +narcotical +narcotically +narcoticism +narcoticness +narcotics +narcotina +narcotine +narcotinic +narcotism +narcotist +narcotize +narcotized +narcotizes +narcotizing +narcous +narcs +nard +nardac +nardacnet +nardacva +nardacwash +nardella +nardi +nardiello +nardin +nardine +nardini +nardo +nardoni +nardoo +nardus +nare +narelle +naren +narendra +nares +naresh +narghile +nargil +nargile +nargileh +nargis +nargisa +nari +narial +naric +narica +naricorn +narida +narie +nariform +narihua +nariko +narin +narinder +narine +naringel +naringenin +naringin +naringuor +narino +naris +narisati +narischkin +narisoval +narita +naritch +nariva +narizzano +nark +narka +narked +narking +narkotiki +narkoty +narkov +narks +narky +narnia +naro +narod +narodno +narodu +narok +narom +naroonso +narouz +narovorovo +narr +narra +narraboth +narraganset +narras +narratable +narrate +narrated +narrater +narraters +narrates +narrating +narration +narrational +narrations +narrative +narratively +narratives +narrator +narrators +narratory +narratress +narratrix +narraway +narrawood +narreweng +narrima +narrinyeri +narron +narrow +narrowed +narrower +narrowest +narrowgauge +narrowing +narrowish +narrowly +narrowminded +narrowness +narrows +narrowsburg +narrowsouled +narrowy +narsarsukite +narsati +narses +narsil +narsinga +narsingdi +nart +narten +narthecal +narthecium +narthex +narthexes +naru +narula +narum +narumi +naruna +narvi +narvon +narwal +narwals +narwhal +narwhale +narwhales +narwhalian +narwhals +nary +narym +nasa +nasab +nasadil +nasal +nasalis +nasalise +nasalism +nasalities +nasality +nasalization +nasalize +nasalized +nasalizes +nasalizing +nasally +nasals +nasalward +nasalwards +nasarawa +nasard +nasarian +nasato +nasawa +nascan +nascapi +nascar +nascence +nascences +nascencies +nascency +nasch +naschet +naschiot +nascimiento +naseberry +naseer +naseeruddin +naselle +nasenlaenge +naser +nasethmoid +nasfurush +nash +nashat +nashel +nashelcya +nashemu +nashet +nashgab +nashgob +nashib +nashim +nashir +nashira +nashla +nashli +nashoba +nashotah +nashport +nashtenka +nashua +nashvill +nashville +nashwauk +nasi +nasial +nasiap +nasicorn +nasicornia +nasicornous +nasie +nasiei +nasiform +nasikwabw +nasilabial +nasilje +nasillate +nasillation +nasioi +nasioinial +nasiomental +nasion +nasir +nasirists +nasit +nasitis +naskapi +naskhi +naslednji +nasm +naso +nasoalveola +nasoantral +nasobasilar +nasobuccal +nasoccipital +nasociliary +nasofrontal +nasolabial +nasological +nasologist +nasology +nasomalar +nason +nasonite +nasoorbital +nasopalatal +nasopalatine +nasopharynx +nasorostral +nasoscope +nasoseptal +nasosinuitis +nasosubnasal +nasoturbinal +nasr +nasreldin +nasri +nasrol +nasrollah +nass +nassa +nassarawa +nassau +nassawadox +nassellaria +nassellarian +nasser +nassgitksian +nassian +nassidae +nassiet +nassim +nassology +nassovia +nassoy +nassr +nasstia +nast +nastaliq +nastasa +nastassia +nastassja +nastia +nastic +nastier +nastiest +nastika +nastily +nastiness +nastja +nastroish +nasturtion +nasturtiums +nastvogel +nasty +nastya +nastygram +nasu +nasua +nasuna +nasus +nasute +nasuteness +nasutiform +nasutus +nasvidenje +nasyev +naszut +nata +natability +natabui +natacha +natagaimas +nataka +natakan +natakani +natala +natalbany +natale +natalee +natalia +natalian +natalie +natalina +nataline +natalities +natality +natalka +natally +nataloin +natals +nataly +natalya +natant +natantly +natanzi +nataoran +nataraja +nataro +natascha +natasha +natashu +natasja +natassia +natassja +natation +natational +natator +natatoria +natatorial +natatorini +natatorious +natatorium +natatoriums +natatory +natc +natch +natchaba +natchbone +natcher +natchez +natchezan +natchitoches +natchnee +natcorp +natd +nate +natedogg +natee +natemba +nateni +nates +nath +nathalia +nathalie +nathalle +nathan +nathanael +nathaneal +nathaniel +nathanmelech +nathanson +nathe +natheaux +natheless +nathenson +nather +natheux +nathless +nathoo +nathrop +nathuran +nati +natica +naticidae +naticiform +naticine +natick +naticoid +natiform +natimba +nation +national +nationalcity +nationale +nationalism +nationalist +nationalista +nationalists +nationality +nationalize +nationalized +nationalizer +nationalizes +nationally +nationalmine +nationalness +nationalpark +nationalrat +nationals +nationalty +nationless +nations +nationwide +natioro +natiorowara +natitingou +natiuk +nativ +native +natively +nativeness +natives +natividad +nativism +nativisms +nativist +nativistic +nativists +nativities +nativity +natjoro +natka +natl +nato +natoli +natoma +nator +natosoft +natour +natr +natricinae +natricine +natrium +natriums +natrix +natrolite +natron +natrons +natsujo +natsuki +natsume +natsuo +natt +natten +natter +nattered +natteredness +nattering +natterjack +natters +nattier +nattiest +nattily +nattiness +nattle +natty +natu +natuary +natukhai +natuna +natural +naturaldam +naturalesque +naturalis +naturalism +naturalist +naturalistic +naturalists +naturality +naturalize +naturalized +naturalizer +naturalizes +naturalizing +naturally +naturalness +naturals +nature +natureal +naturecraft +natured +naturedly +naturel +naturelike +natureopathy +natures +naturing +naturism +naturist +naturista +naturistic +naturita +naturize +naturopathic +naturopathy +natuzaj +natver +natvig +natwick +natyoro +natzler +nauamory +naubinway +naucrar +naucrary +naudm +naueti +naufal +naufragous +naugahyde +naugatuck +nauger +naught +naughtier +naughtiest +naughtily +naughtiness +naughton +naughts +naughty +naugle +nauheima +naujaite +naujokas +naujoks +naukan +naukwate +nauls +nault +naum +naumachia +naumachy +naumann +naumannite +naumburgia +naumik +naumk +naumkeag +naumkeager +nauna +naune +naunt +nauntle +naunton +naupan +naupathia +nauplial +naupliiform +nauplioid +nauplius +naur +naura +nauropometer +nauru +nauruan +nauruans +naus +nauscopy +nause +nausea +nauseam +nauseant +nauseants +nauseaproof +nauseas +nauseated +nauseates +nauseating +nauseatingly +nauseation +nauseous +nauseously +nauseousness +nauset +nausikaa +nausius +naut +nautch +nautches +nautchgirl +nauther +nautic +nauticality +nautically +nautics +nautiform +nautilacea +nautilacean +nautili +nautilicone +nautiliform +nautilite +nautiloid +nautiloidea +nautiloidean +nautilus +nautilusa +nautiluses +nauttilusa +nauvoo +nava +navaho +navahoes +navahos +navajo +navajoapache +navajodam +navajos +navakasiga +naval +navalese +navalism +navalist +navalistic +navally +navalta +navar +navara +navaratnam +navarch +navarchy +navaresse +navarin +navarino +navarone +navarra +navarre +navarrese +navarrian +navarro +navartil +navasota +navasots +navassa +navatu +navbar +navdaf +nave +naveda +naveed +naveen +navel +naveled +navelex +navelexnet +navellike +navels +navelwort +naverno +navernoe +naves +navesink +navet +navette +navew +navhospbrem +navicella +navicert +navicula +naviculaceae +navicular +naviculare +naviculoid +navier +navies +naviform +navigability +navigably +navigant +navigate +navigated +navigates +navigating +navigation +navigational +navigator +navigators +navigerous +navin +navipendular +navipendulum +navirsa +navite +naviyani +navizet +navmedcl +navmeducacda +navo +navojoa +navrat +navratil +navresfor +navrital +navrongo +navscips +navsea +navshipyd +navut +navvies +navvy +navy +nawa +nawab +nawabganj +nawabshah +nawabship +nawaby +nawaf +nawagi +nawaits +nawalparasi +nawalpur +nawan +nawar +nawarat +nawarawa +naware +nawaru +nawata +nawdam +nawdaor +nawdm +nawe +naweni +nawiri +nawmaydar +nawn +nawp +nawt +nawuri +nawyem +naxera +naxi +nayak +nayan +nayar +nayarit +nayarita +nayau +nayaur +naybert +naybor +naydiosh +naydiot +nayini +nayive +nayland +naylor +nayneshkumar +nayok +nays +naysay +naysayer +naytahwaush +nayte +nayti +nayward +nayword +nazad +nazarate +nazardad +nazarean +nazarene +nazarenes +nazarenism +nazareno +nazaret +nazareth +nazarewne +nazarite +nazarites +nazariteship +nazaritic +nazaritish +nazaritism +nazarius +nazarre +nazarro +nazca +naze +nazereth +nazerini +nazerman +nazgul +nazi +nazib +nazified +nazifies +nazify +nazifying +naziism +nazik +nazim +nazimova +nazir +nazirate +nazirite +naziritic +nazis +nazlini +nazmi +nazorine +nazzari +nazzaro +nazzer +nbangam +nbatto +nbcm +nbit +nbkey +nbrcv +nbsir +nbtstat +nbtt +nbule +nbundo +nbundu +nbwaka +ncad +ncan +ncane +ncat +ncbi +nccc +nccu +ncem +ncftpd +ncha +ncham +nchanti +nche +ncheu +nchimbi +nchimburu +nchinchege +nchobela +nchumbulu +nchumburu +nchumburung +nchumunu +ncifcrf +ncis +ncnoc +ncpds +ncqika +ncsa +ncsaa +ncsab +ncsad +ncsax +ncsc +ncse +ncsl +ncssm +ncsu +ncsuvx +ncurses +ncyv +ndaaka +ndaba +ndabaningi +ndagam +ndai +ndaka +ndaktup +ndali +ndam +ndama +ndamba +ndamm +ndanda +ndande +ndanisa +ndano +ndao +ndaoe +ndaonese +ndara +ndare +ndasa +ndau +ndaundau +ndauwa +ndcheg +ndebe +ndebele +ndeewe +ndele +ndelele +ndely +ndem +ndemba +ndembu +ndemli +nden +ndende +ndendeule +ndendeuli +ndengeleko +ndengereko +ndengese +ndeni +ndenselenta +ndenye +ndera +nderground +ndese +ndex +ndhur +ndia +ndiablo +ndiags +ndian +ndiaye +ndiff +ndii +ndikinimeki +ndimensional +ndingi +ndiop +ndios +ndip +ndir +ndirma +nditam +ndjabi +ndjeli +ndjem +ndjembe +ndjeme +ndjevi +ndjinini +ndjuka +ndlambe +ndmpo +ndob +ndobo +ndoe +ndogbang +ndogo +ndogosere +ndokama +ndokbele +ndokbiakat +ndokpa +ndokpenda +ndokpwa +ndoktuna +ndola +ndolo +ndololiboko +ndom +ndombe +ndomde +ndome +ndon +ndonde +ndong +ndonga +ndongo +ndoobo +ndoolo +ndoore +ndop +ndopbamunka +ndopkiesese +ndore +ndoro +ndorobo +ndorola +ndoudja +ndouka +ndoukoula +ndoute +ndpd +ndpl +ndre +ndrek +ndreme +ndreng +ndrenika +ndri +ndrilo +ndroku +ndrp +ndububa +nduga +ndughore +ndugwa +nduindui +nduka +nduke +ndum +ndumbea +ndumbo +ndumbu +ndumu +ndunda +ndunga +ndura +ndurin +ndurinf +nduringest +ndurinlive +ndurinnor +ndut +nduumo +nduup +nduupa +nduvum +ndwa +ndyak +ndyanger +ndzale +ndzawu +ndzem +ndzikou +ndzindziju +ndzubele +ndzundza +ndzungle +ndzungli +neabo +neaera +neaf +neafus +neagle +neah +neahbay +neal +neala +neale +nealley +neallotype +neamt +neander +neanderthal +neanderthals +neanic +neanthropic +neao +neaped +neapolis +neapolitans +neaps +near +nearable +nearabout +nearabouts +nearadjacent +nearaivays +nearaway +nearby +nearctic +nearctica +neared +nearer +nearest +nearfatal +nearfuture +neariah +nearing +nearish +nearliest +nearly +nearmost +nearneighbor +nearness +nears +nearshore +nearside +nearstandard +nearsynonyms +nearthrosis +neartotal +neary +neat +neate +neaten +neatened +neatener +neatening +neatens +neater +neatest +neathanded +neatherd +neatherdess +neatherds +neathmost +neatify +neatly +neatness +neats +neatsoft +neault +neave +neavitt +neback +nebai +nebaioth +nebaj +nebaji +nebajoth +nebalia +nebaliacea +nebalian +nebaliidae +nebalioid +neballat +nebat +nebbed +nebbish +nebbishes +nebbuck +nebbuk +nebby +nebee +nebel +nebelist +nebenkern +nebes +nebiim +nebine +nebo +neboda +nebome +nebout +nebraska +nebraskacity +nebraskan +nebraskans +nebris +nebrwesleyan +nebs +nebu +nebulae +nebularize +nebulas +nebulated +nebulation +nebule +nebulescent +nebuliferous +nebulise +nebulite +nebulium +nebulization +nebulize +nebulized +nebulizer +nebulizers +nebulizes +nebulizing +nebulose +nebulosities +nebulosity +nebulously +nebulousness +nebushasban +nebuzaradan +necator +necec +necedah +necessar +necessarian +necessaries +necessarily +necessary +necessism +necessist +necessitated +necessitates +necessiter +necessities +necessitous +necessitude +necessity +nechci +neche +nechego +neches +nechludow +necho +necio +neck +neckar +neckatee +neckband +neckbands +neckcity +neckcloth +necke +necked +necker +neckercher +neckerchief +neckerchiefs +neckful +neckguard +necking +neckinger +neckings +necklace +necklaced +necklaces +necklaceweed +neckless +necklet +necklike +necklines +neckmold +neckpiece +necks +neckstock +necktieless +neckties +neckward +neckwear +neckwears +neckweed +neckyoke +necmettin +necochea +necrectomy +necremia +necrobiosis +necrobiotic +necrogenic +necrogenous +necrographer +necrolatry +necrologic +necrological +necrologies +necrologist +necrologue +necrology +necromancer +necromancers +necromancing +necromancy +necromania +necron +necronite +necropathy +necrophaga +necrophagan +necrophagous +necrophile +necrophilia +necrophilic +necrophilism +necrophilous +necrophily +necrophobia +necrophobic +necrophorus +necropoleis +necropoles +necropolis +necropolises +necropolitan +necroscopic +necroscopy +necrose +necroses +necrosis +necrotic +necrotically +necrotize +necrotomic +necrotomist +necrotomy +necrotype +necrotypic +nectandra +nectanebus +nectar +nectareal +nectarean +nectared +nectareously +nectarial +nectarian +nectaried +nectarine +nectarines +nectarinia +nectarious +nectarium +nectarize +nectarlike +nectarous +nectars +nectiferous +nectocalyx +nectonema +nectophore +nectopod +nectria +nectriaceous +necturidae +necturus +neda +nedabiah +nedavno +nedda +nedder +nedderman +neddim +neddy +nedebang +nedek +nedeli +nedeliu +nedell +nedelu +nederland +nederlands +nedes +nedeva +nedi +nediar +nedorogoy +nedra +nedri +nedrick +nedrow +nedtur +neebor +neebour +need +needed +needer +needers +needest +needeth +needfire +needfor +needful +needfully +needfulness +needfuls +needgates +needham +needier +neediest +needily +neediness +needing +needle +needlebill +needlebook +needlebush +needlecase +needled +needlefish +needleful +needlelike +needlemaker +needlemaking +needleman +needlemonger +needlepoint +needlepoints +needleproof +needler +needlers +needles +needless +needlessly +needlessness +needlestone +needlewoman +needlewood +needlework +needleworked +needleworker +needling +needlings +needly +needments +needmore +needn +neednot +neednt +needs +needsome +needto +needville +needy +neefs +neeger +neek +neel +neeld +neele +neeley +neelghan +neelishikari +neels +neely +neelyton +neelyville +neem +neeman +neembucu +neena +neenah +neenan +neencephalic +neencephalon +neengatu +neenoa +neep +neepah +neepneep +neepneeping +neepour +neer +neerdowell +neergaard +neeriyas +neese +neeses +neesings +neeson +neet +neethling +neetu +neetup +neewa +neewis +neewomm +neeze +nefandous +nefarious +nefariously +nefarpi +nefast +neferipi +nefertiti +neffs +neffsville +neffy +nefretiri +neftgil +nefti +nefuds +nefusa +nefusi +negami +negandhi +negara +negarote +negate +negated +negatedness +negater +negaters +negates +negating +negation +negationist +negations +negativ +negative +negatived +negatively +negativeness +negativer +negativerage +negatives +negativing +negativism +negativist +negativistic +negativity +negator +negators +negatory +negatron +negatrons +negaunee +negde +neger +negeri +negerinegeri +negev +negidal +negidaly +neginoth +negira +negl +neglect +neglectable +neglected +neglectedly +neglectful +neglectfully +neglecting +neglectingly +neglection +neglective +neglectively +neglector +neglectproof +neglects +negley +neglige +negligees +negligence +negligency +negligent +negligently +negligible +negligibly +nego +negotiable +negotiant +negotiants +negotiate +negotiated +negotiates +negotiating +negotiation +negotiations +negotiator +negotiators +negotiatory +negotiatress +negotiatrix +negr +negra +negre +negreet +negrell +negres +negress +negrete +negri +negrich +negrillo +negrine +negrita +negritian +negritic +negritize +negrito +negritoid +negritos +negritude +negrodom +negrofy +negrohead +negrohood +negroidal +negroids +negroish +negroism +negroization +negroize +negrolike +negroloid +negron +negroni +negrophil +negrophile +negrophilism +negrophilist +negrophobe +negrophobia +negrophobiac +negrophobist +negroponte +negros +negrotic +negu +negueniklani +negundo +negus +neguses +nehalem +nehalennia +nehan +nehantic +nehawka +nehelamite +nehemiah +nehiloth +nehina +nehoroshiy +nehring +nehum +nehushta +nehushtan +nehuy +nehybka +neiafu +neibauer +neider +neidert +neidhardt +neidhart +neidy +neiel +neif +neifert +neigel +neigh +neighbor +neighbored +neighborer +neighboress +neighborhood +neighboring +neighborless +neighborlike +neighborly +neighbors +neighborship +neighbour +neighbouring +neighbours +neighed +neigher +neighing +neighings +neighs +neigle +neigm +neihart +neikter +neil +neila +neile +neill +neilla +neille +neillia +neillsville +neilly +neilsen +neilson +neilton +neimonggol +nein +neinteresno +neiper +neipperg +neise +neisius +neisseria +neisserieae +neist +neiswinder +neith +neither +neithout +neitzel +nejapa +nejd +nejdi +nejeli +nejelova +nejm +nejuu +nekaso +nekeb +nekgini +nekkar +neko +nekoda +nekoma +nekoosa +nekrasov +nekron +nekton +nektonic +neku +nekueey +nela +nelda +nelder +nele +nelema +neleta +neley +nelga +nelia +nelida +nelidova +nelie +neligan +neligh +nelim +nell +nella +nelle +nelleke +nellen +nelli +nellie +nelligan +nellingen +nellis +nelliston +nellson +nelly +nellysford +nelm +nelo +nelon +nels +nelse +nelsen +nelson +nelsonia +nelsonite +nelsons +nelsonville +nelumbian +nelumbium +nelumbo +nelvana +nema +nemacolin +nemadi +nemaha +nemaline +nemalion +nemalionales +nemalite +nemangbetu +nematelmia +nematelminth +nemathece +nemathecial +nemathecium +nemathelmia +nematic +nematoblast +nematocera +nematoceran +nematocerous +nematocide +nematocyst +nematocystic +nematoda +nematode +nematodes +nematodiasis +nematogene +nematogenic +nematogenous +nematognath +nematognathi +nematogone +nematogonous +nematoid +nematoidea +nematoidean +nematologist +nematology +nematomorpha +nematophyton +nematospora +nematozooid +nemausa +nembao +nembe +nembi +nembutal +nemchin +neme +nemea +nemean +nemec +nemeeje +nemeny +nemertea +nemertean +nemertina +nemertine +nemertinea +nemertinean +nemertini +nemertoid +nemes +nemeses +nemesia +nemesic +nemesis +nemet +nemeth +nemetz +nemeyam +nemi +nemia +nemichthys +nemisis +nemnojko +nemo +nemocera +nemoceran +nemocerous +nemogu +nemopanthus +nemophila +nemophilist +nemophilous +nemophily +nemoral +nemorensian +nemoricole +nemostate +nemours +nems +nemu +nemuel +nemuelites +nemur +nena +nenad +nenaya +nendo +neneh +nenema +nenets +nenetta +nenette +nengahiba +nengaya +nengone +nenia +nenni +nenny +nent +nenta +nentse +nentwich +nenuphar +nenya +nenzel +neoacademic +neoanthropic +neoaramaic +neoarctic +neobalaena +neobeckia +neoblastic +neobook +neobotanist +neobotany +neocene +neoceratodus +neocerotic +neoclassical +neocolonial +neocombobox +neocomian +neocosmic +neocracy +neocriticism +neocrypt +neocyanine +neocyte +neocytosis +neodamode +neodarwinism +neodesha +neodidymium +neodiprion +neoegyptian +neofabraea +neofetal +neofetus +neofiber +neoformation +neoformative +neoga +neogaea +neogaean +neogamist +neogamous +neogamy +neogene +neogenesis +neogenetic +neogeorgian +neognathae +neognathic +neognathous +neographic +neogulada +neohellenic +neohexane +neohipparion +neoholmia +neoholmium +neol +neola +neolalia +neolamarkism +neolater +neolatry +neoliberal +neolite +neolith +neoliths +neologian +neologianism +neologic +neological +neologically +neologies +neologisms +neologist +neologistic +neologize +neology +neomenia +neomenian +neomeniidae +neomiracle +neomodal +neomorph +neomorpha +neomorphic +neomorphism +neomorphs +neomycin +neomycins +neomylodon +neon +neonatally +neonates +neonatology +neonatus +neoned +neonomian +neonomianism +neons +neontology +neonychium +neonyunga +neopagan +neopaganism +neopaganize +neopaleozoic +neopallial +neopallium +neoparaffin +neophiles +neophilia +neophilism +neophobia +neophobic +neophrastic +neophron +neophytes +neophytic +neophytish +neophytism +neopieris +neopit +neoplan +neoplanet +neoplasia +neoplasm +neoplasma +neoplasmata +neoplasms +neoplastic +neoplasty +neoplatonic +neoplatonism +neoplatonist +neopok +neoprenes +neoptolemus +neorama +neorealism +neornithes +neornithic +neosalvarsan +neosho +neoshofalls +neoshorapids +neosoft +neosolomonic +neosorex +neosporidia +neossin +neossology +neossoptile +neostriatum +neostyle +neoteinia +neoteinic +neotenia +neotenic +neotenies +neotenous +neoteny +neoteric +neoterically +neoterics +neoterism +neoterist +neoteristic +neoterize +neothalamus +neotoma +neotragus +neotremata +neotropic +neotropical +neotsu +neotype +neoucom +neovitalism +neovolcanic +neoxota +neoytterbium +neoza +neozoic +nepa +nepal +nepalese +nepali +nepenthaceae +nepenthe +nepenthean +nepenthes +neper +neperian +nepeta +nephalism +nephalist +nepheg +nephele +nepheline +nephelinic +nephelinite +nephelinitic +nephelite +nephelium +nephelognosy +nepheloid +nephelometer +nephelometry +nepheloscope +nephesh +nephew +nephews +nephewship +nephi +nephila +nephilinae +nephish +nephishesim +nephite +nephogram +nephograph +nephological +nephologist +nephology +nephoscope +nephradenoma +nephralgia +nephralgic +nephratonia +nephrauxe +nephrectasia +nephrectasis +nephrectomy +nephrelcosis +nephremia +nephria +nephric +nephridia +nephridial +nephridium +nephrism +nephrite +nephrites +nephritic +nephritical +nephritis +nephritises +nephrocele +nephrocoele +nephrocolic +nephrocyte +nephrodinic +nephrodium +nephrogenic +nephrogenous +nephroid +nephrolepis +nephrolith +nephrolithic +nephrologist +nephrology +nephrolysin +nephrolysis +nephrolytic +nephromegaly +nephromere +nephron +nephroncus +nephrons +nephropathic +nephropathy +nephropexy +nephropore +nephrops +nephropsidae +nephroptosia +nephroptosis +nephropyosis +nephros +nephrosis +nephrostoma +nephrostome +nephrostomy +nephrotome +nephrotomize +nephrotomy +nephrotoxic +nephrotoxin +nephrotyphus +nephthalim +nephthys +nephtoah +nephusim +nepidae +nepionic +neploho +nepman +nepodvedi +nepomuck +neponset +nepor +nepotal +nepote +nepotic +nepotious +nepotism +nepotisms +nepotist +nepotistic +nepotistical +nepotists +nepoui +nepouite +nepoye +nepryadva +neptali +neptun +neptune +neptunean +neptunian +neptunism +neptunist +nera +neraaa +neral +nerals +nerauya +nerby +nercessian +nerd +nerdc +nerdgrab +nerdoid +nerds +nere +nereidae +nereides +nereidiform +nereidium +nereids +nereis +nereite +nerem +nereocystis +nererova +neretva +neretvi +nereus +nereyama +nereyo +nerezim +nerg +nergal +neri +neriah +nerigo +nerina +nerine +nerinx +nerio +nerissa +nerita +neritic +neritidae +neritina +neritoid +nerium +nerkuu +nerlove +nerlovepress +nermal +nerman +nermana +nero +neroic +neronian +neronic +neronize +ners +nerstrand +nert +nerta +nerte +nerterology +nerthridae +nerthrus +nerthus +nerti +nertie +nerts +nerty +nertz +nerva +nerval +nervate +nervation +nervature +nerve +nerved +nerveless +nervelessly +nervelet +nerveproof +nerver +nerveroot +nerves +nervi +nervid +nerviduct +nervier +nerviest +nervii +nervily +nervimotion +nervimotor +nervine +nervines +nerviness +nerving +nervings +nervish +nervism +nervm +nervnie +nervosa +nervose +nervosism +nervosities +nervosity +nervous +nervously +nervousness +nervular +nervule +nervulet +nervulose +nervuration +nervure +nervy +nerwa +nesbit +nesbitt +nescessarily +nescessary +nescience +nescient +nescients +nesconset +nescopeck +nese +nesh +neshida +neshkoro +neshly +neshness +nesiot +nesiote +neskhi +neskolko +neskuchno +neslia +nesmith +nesmogu +nesmy +nesogaea +nesogaean +nesokia +nesonetta +nesotragus +nespelem +nespelim +nesquehoning +nesquehonite +nesrallah +ness +nessa +nesscity +nesselroade +nessi +nessie +nessim +nesslerize +nessman +nessus +nessy +nest +nesta +nestable +nestage +nestbruch +neste +nested +nestel +nester +nesterenko +nesterov +nesters +nestful +nesti +nestiatria +nestin +nesting +nestings +nestitherapy +nestled +nestler +nestlers +nestles +nestlike +nestling +nestlings +neston +nestor +nestorean +nestorian +nestorianism +nestorianize +nestorine +nestors +nestquoi +nests +nesty +nesuschaya +nesuzhdeno +nesvach +netacl +netas +netattache +netawaka +netball +netbar +netbios +netblt +netboost +netbraider +netbus +netbush +netbuster +netcalendar +netcat +netcha +netchat +netchilik +netcom +netcon +netcong +netcrt +netcruiser +netdbs +netdev +netdiablo +netdir +netdu +nete +neteeket +netepichnaja +neter +netfherly +netful +neth +nethack +nethak +nethanar +nethaneel +nethaniah +netheist +nether +netherlander +netherlandic +netherlands +nethermore +nethermost +nethersole +netherstock +netherstone +netherward +netherwards +nethinim +nethinims +neti +netid +netiket +netinfo +netinit +netiquette +netizens +netlab +netlaunch +netleaf +netlemeng +netless +netlib +netlike +netlink +netload +netlock +netlogon +netlookout +netmail +netmaker +netmaking +netman +netmanage +netmask +netmasks +netmaster +netmedic +netmgr +netmodem +netmonger +netnews +neto +netobjects +netop +netophah +netophathi +netophathite +netpad +netpal +netperf +netpmsa +netpopup +netrakona +netrexx +netrjs +netrjt +netrock +netroom +nets +netsacape +netscan +netscantools +netscape +netsch +netserver +netsketch +netsman +netsoft +netsonic +netspider +netspy +netstat +netsuke +netsukes +netsupport +netswitcher +netta +nettable +nettably +nettalk +nettapus +netteam +netted +nettel +nettelbeck +netter +netterm +netters +nettest +netti +nettie +nettier +netting +nettings +nettion +nettle +nettlebed +nettlebird +nettled +nettlefire +nettlefish +nettlefoot +nettleford +nettlelike +nettlemonger +nettler +nettlers +nettles +nettleton +nettlewort +nettlier +nettliest +nettling +nettly +netto +nettoob +nettools +nettransfer +nettut +netty +netu +netusil +netware +netwide +netwise +netwolf +networdz +network +networked +networking +networkroom +networks +networksoff +networkson +netwriter +netxray +netz +netzel +netzke +netzle +netzwerk +neua +neuarama +neubauer +neubert +neucatelais +neuchatel +neudacno +neudecker +neudeckian +neudorfer +neue +neueste +neufchatel +neufeld +neugebauer +neugroschen +neuhardt +neuhartt +neuhaus +neuhoff +neujeli +neujmina +neuland +neuma +neuman +neumann +neumatic +neumatize +neume +neumeister +neumic +neun +neuner +neupokoev +neuquen +neurad +neuradynamia +neural +neurale +neuralgiac +neuralgias +neuralgic +neuralgiform +neuralgy +neuralist +neurally +neurasthenia +neurataxia +neurataxy +neuration +neuratrophia +neuratrophic +neuratrophy +neuraxial +neuraxis +neuraxon +neuraxone +neurectasia +neurectasis +neurectasy +neurectome +neurectomic +neurectomy +neurectopia +neurectopy +neurenteric +neurergic +neuriatry +neuric +neurilema +neurilematic +neurilemma +neurilemmal +neurility +neurin +neurine +neurinoma +neurique +neurism +neurite +neuritic +neuritises +neuro +neurobiology +neuroblast +neuroblastic +neurocanal +neurocardiac +neurocele +neurocentral +neurocentrum +neurochitin +neurochord +neurocity +neuroclonic +neurocoele +neurocoelian +neurocyte +neurocytoma +neurodendron +neurodynamic +neurodynia +neurofeed +neurofibril +neurofibroma +neurofil +neurogastric +neurogenesis +neurogenetic +neurogenic +neurogenous +neuroglia +neurogliac +neuroglial +neurogliar +neuroglic +neuroglioma +neurogliosis +neurogram +neurogrammic +neurographic +neurography +neurohumor +neurohumoral +neuroid +neurokeratin +neurokyme +neurological +neurologies +neurologist +neurologists +neurologize +neurologized +neurolymph +neurolysis +neurolytic +neuroma +neuromalacia +neuromalakia +neuromancer +neuromast +neuromastic +neuromatosis +neuromatous +neuromere +neuromerism +neuromerous +neuromimesis +neuromimetic +neuromotor +neuromyic +neurone +neurones +neuronic +neuronism +neuronist +neuronophagy +neurons +neuronym +neuronymy +neuropath +neuropathic +neuropathist +neuropathy +neurope +neurophagy +neurophil +neurophile +neurophilic +neuropile +neuroplasm +neuroplasmic +neuroplasty +neuroplexus +neuropodial +neuropodium +neuropodous +neuropore +neuropsychic +neuropter +neuroptera +neuropteran +neuropteris +neuropterist +neuropteroid +neuropteron +neuropterous +neurorrhaphy +neurosal +neurosarcoma +neuroscience +neurosensory +neurosis +neurosome +neurospasm +neurosthenia +neurosurgeon +neurosurgery +neurosuture +neurosynapse +neurotension +neurotherapy +neurotic +neurotically +neuroticism +neuroticize +neurotics +neurotome +neurotomical +neurotomist +neurotomize +neurotomy +neurotonic +neurotoxia +neurotoxic +neurotoxin +neurotripsy +neurotrophic +neurotrophy +neurotropic +neurotropism +neurovaccine +neurula +neurypnology +neus +neuschwander +neuss +neustifter +neustrian +neusy +neuter +neuterdom +neutered +neutering +neuterlike +neuterly +neuterness +neuters +neutral +neutralism +neutralist +neutralistic +neutralists +neutralities +neutrality +neutralize +neutralized +neutralizer +neutralizers +neutralizes +neutralizing +neutrally +neutralness +neutrals +neutrinos +neutroceptor +neutrodyne +neutrons +neutrophil +neutrophile +neutrophilia +neutrophilic +neutrophils +neuts +neuulm +neuvillette +neuw +neuwirth +neuzhto +neva +nevada +nevadacity +nevadan +nevadans +nevadians +nevadite +nevanlinna +nevardauskis +neve +nevein +nevel +nevelson +nevena +never +neverdying +neverending +neverfading +neverhood +neveri +neverknow +neverland +nevermind +nevermore +nevernever +nevers +neversink +nevertheless +neverthless +neveu +nevi +nevil +nevill +neville +nevin +nevins +nevinson +nevis +nevisdale +nevisian +nevison +nevo +nevoid +nevola +nevome +nevoy +nevrela +nevsa +nevsehir +nevus +nevyanskite +newagen +newahang +newalbany +newalbin +newall +newalla +newalmaden +newalmelo +newang +newange +newar +newari +newaripahri +newark +newarkmdss +newarkvalley +newars +newathens +newauburn +newaugusta +newaygo +newbaden +newbaltimore +newbavaria +newbe +newbedford +newberg +newberlin +newbern +newberne +newberry +newberrytown +newberyite +newbethlehem +newbie +newbies +newblaine +newbold +newbolds +newborn +newborns +newboston +newbould +newbraintree +newbraunfels +newbremen +newbrighton +newbritain +newbrockton +newbruce +newbrunswick +newbuffalo +newburg +newburgh +newburn +newburnside +newbury +newburyport +newby +newcal +newcambria +newcanaan +newcaney +newcanton +newcarlisle +newcastle +newchurch +newcity +newcollege +newcolumn +newcomb +newcombe +newcombia +newcome +newcomers +newconcord +newcreek +newcumberlnd +newcuyama +newdale +newdeal +newdelhi +newderry +newdouglas +newdurham +neweagle +newedinburg +neweffington +newegypt +newell +newellenton +newellton +newels +newelty +newengland +newer +newera +newest +newfane +newfangle +newfangled +newfangledly +newfashioned +newfie +newfield +newfields +newfies +newfile +newfiles +newfledged +newflorence +newfolden +newfound +newfoundland +newfranken +newfranklin +newfreedom +newfreeport +newfs +newgalilee +newgate +newgeneva +newgermany +newglarus +newgoshen +newgretna +newgroup +newgroups +newguinea +newgulf +newhall +newham +newhampshire +newhampton +newharbor +newharmony +newhart +newhartford +newhaven +newhebron +newhill +newholland +newholstein +newhook +newhope +newhouse +newhudson +newhydepark +newiberia +newichawanoc +newill +newing +newings +newington +newipswich +newish +newjersey +newkent +newkingston +newkingstown +newkirk +newknoxville +newlab +newlaguna +newlan +newland +newlandite +newlands +newlebanon +newleipzig +newlenox +newlexington +newley +newliberty +newlimerick +newline +newlines +newlinsky +newlisbon +newll +newllano +newlondon +newlothrop +newly +newlycreated +newlyme +newlywed +newlywedd +newlyweds +newmadison +newmadrid +newman +newmangrove +newmanism +newmanite +newmanize +newmankeuls +newmanlake +newmann +newmanstown +newmar +newmarket +newmatamoras +newmeadows +newmelle +newmemphis +newmexico +newmeyer +newmidway +newmilford +newmillport +newmilton +newmown +newmunich +newmunster +newnam +newnan +newness +newnesses +newobj +newobject +newoffenburg +neworleans +newoxford +newpage +newpalestine +newpaltz +newparis +newpark +newpinecreek +newplymouth +newpoint +newport +newportbeach +newportland +newportnews +newprague +newraymer +newrichland +newrichmond +newriegel +newringgold +newriver +newroads +newrochelle +newrockford +newross +newrow +newrumley +newrussia +newry +news +newsadmin +newsagent +newsalem +newsalisbury +newsarpy +newsbill +newsbin +newsboard +newsboat +newsbot +newsboys +newsbreak +newsbreaker +newscaster +newscasters +newscasting +newscasts +newschool +newscotland +newsdealer +newsdealers +newsdesk +newsex +newsferret +newsfroup +newsful +newsgate +newsgirl +newsgirls +newsgrabber +newsgroup +newsgroups +newsham +newsharon +newsi +newsier +newsies +newsiest +newsiness +newsite +newsless +newslessness +newsletter +newsletters +newsmanmen +newsmonger +newsmongery +newsom +newsome +newsoms +newspace +newspad +newspads +newspaper +newspaperc +newspaperdom +newspaperese +newspaperish +newspapers +newspapery +newspeak +newspeaks +newspeople +newsposting +newsprint +newsreader +newsreaders +newsreading +newsreels +newsroom +newsrooms +newssheet +newsstands +newstanton +newstead +newsteller +newsticker +newstuyahok +newsuffolk +newsvendor +newsweden +newsweek +newswire +newswoman +newswomen +newsworthy +newsy +newt +newtake +newtazewell +newtear +newtell +newterra +newtimers +newton +newtoncenter +newtonfalls +newtongrove +newtonia +newtonianism +newtonic +newtonist +newtonite +newtons +newtonsville +newtonville +newtown +newtownabbey +newtowne +newtrenton +newtripoli +newtroy +newts +newulm +newunderwood +newuser +newvernon +newversion +newvienna +newville +newvineyard +newvirginia +newwaterford +newwaverly +newwells +newwindsor +newwoodstock +newyear +newyork +newyorker +newyorkmills +newzealand +newzelek +newzion +nexal +nexila +nexistas +next +nextcube +nextdoor +nexteditions +nextentry +nextftp +nextly +nextness +nextstep +nexum +nexus +nexuses +neya +neyanda +neyland +neyle +neyman +neymans +neymanscott +neyo +neysa +neywick +nezabivay +nezarka +neziah +nezib +nezon +nezperce +nezu +nfachara +nfec +nfeta +nfete +nfetf +nfile +nforcement +nfslike +nftn +nftp +nfua +nfumte +ngaaka +ngaanyatjara +ngabe +ngabre +ngacang +ngachang +ngada +ngadanja +ngadha +ngadju +ngadotho +ngage +ngai +ngaiman +ngaimbom +ngain +ngaing +ngaio +ngaja +ngaju +ngaka +ngakane +ngakom +ngakpo +ngala +ngalabo +ngalakan +ngalakanic +ngalam +ngalan +ngalangan +ngalik +ngaliknduga +ngaliwerra +ngaliwuru +ngalkbon +ngalkbun +ngalum +ngam +ngama +ngamambo +ngamani +ngamawa +ngambai +ngambay +ngambaye +ngambe +ngambo +ngami +ngamiland +ngamo +ngan +ngana +nganasan +ngandi +ngandic +ngandjara +ngando +ngandokota +ngandu +ngandyera +ngangala +ngangalala +ngangam +ngangan +ngangching +ngangela +ngangomori +ngangoulou +ngantjeri +nganygit +ngao +ngaokrachang +ngaokracharg +ngaonde +ngaoundere +ngapi +ngapo +ngapore +ngapu +ngare +ngarga +ngari +ngariawan +ngarinman +ngarinyeri +ngarinyin +ngariwan +ngarohuanga +ngarowapum +ngasa +ngatana +ngate +ngatik +ngatjan +ngatsang +ngaw +ngawn +ngayaba +ngayarda +ngaymil +ngazar +ngbaka +ngbakamabo +ngbandi +ngbang +ngbanyito +ngbee +ngbendu +ngbinda +ngbo +ngbugu +ngbundu +ngbwandi +ngede +ngee +ngeh +ngelima +ngemba +ngembo +ngen +ngende +ngene +ngenge +ngengu +ngente +ngepma +ngeq +ngeqnkriang +ngero +ngeti +ngezzim +nggae +nggai +nggao +nggatokae +nggaura +nggela +nggem +nggeri +nggwahyi +nggweshe +nghe +nghean +nghia +nghsa +nghuki +nghuy +nghwele +ngiangeya +ngiaw +ngie +ngilemong +ngin +ngindo +nginia +nginyukwur +ngio +ngiow +ngiratkel +ngirere +ngiri +ngishe +ngiti +ngizim +ngizmawa +ngle +ngmamperli +ngmen +ngoahu +ngobere +ngobo +ngobu +ngoc +ngoe +ngoila +ngok +ngoko +ngola +ngoli +ngolo +ngolobatanga +ngolok +ngom +ngoma +ngomba +ngombale +ngombe +ngombia +ngomi +ngonde +ngondi +ngong +ngongo +ngongosila +ngoni +ngoobechop +ngoongo +ngor +ngora +ngoreme +ngork +ngorn +ngoro +ngorro +ngoshe +ngoshendhang +ngoshie +ngossi +ngoumba +ngoundal +ngoundere +ngounie +ngoutchoumi +ngova +ngowiye +ngozi +ngrarmun +ngruimi +ngubu +nguema +nguemba +nguen +nguete +nguili +nguin +nguiu +ngukurr +ngul +ngulak +ngulgule +nguli +ngulo +ngultrum +ngulu +ngumba +ngumbi +ngumbin +ngumbo +ngumetikar +nguna +ngundi +ngundu +ngundugolo +ngunduna +ngunese +ngungulu +ngungwel +ngungwoni +nguni +ngunu +nguo +nguon +nguqwurang +ngura +nguri +ngurimi +ngurma +nguru +nguruimi +nguti +nguu +nguyen +nguyenvanhuu +nguyet +ngwa +ngwaba +ngwaci +ngwajum +ngwaketse +ngwalkwe +ngwalungu +ngwana +ngwandi +ngwane +ngwato +ngwatu +ngwaw +ngwaxi +ngwe +ngwee +ngwele +ngwen +ngweshe +ngwii +ngwili +ngwo +ngwohi +ngwoi +ngwoni +ngwooshie +ngwullaro +ngyemboon +ngyeme +nhaintse +nhamunda +nhan +nhande +nhaneca +nhang +nharon +nhatrang +nhauru +nhaurun +nheengatu +nhengatu +nhien +nhlanganu +nhut +nhyang +niabayo +niabi +niabo +niaboua +niacinamide +niacins +niagara +niagarafalls +niagaran +niah +niahon +niais +niaiserie +niakuol +niakuoll +nial +niall +niamato +niamey +niamniam +niamtougou +niang +niangara +niangbo +niangolo +niangua +niantic +niao +niap +niarada +niardiay +niari +niarong +nias +niasese +niassa +niata +nibak +nibbana +nibbed +nibber +nibble +nibbled +nibbler +nibblers +nibbles +nibbling +nibblingly +nibby +nibert +nibhatta +nibhaz +nibl +niblett +niblick +niblicks +niblike +nibok +nibon +nibong +nibor +nibs +nibshan +nibsome +nibulu +nicaean +nicandro +nicanor +nicaragua +nicaraguan +nicaraguans +nicarao +nicasio +nicastro +nicaud +niccolic +niccolite +niccolls +niccolo +niccolous +nice +niceish +niceling +nicely +niceman +nicene +niceness +nicenian +nicenist +nicer +nicesome +nicest +niceties +nicetish +niceut +niceville +niche +niched +nichego +nichelino +nichelle +nicher +niches +nichette +nichetti +niching +nichol +nichola +nicholai +nicholas +nichole +nicholl +nicholle +nichollette +nichollis +nichols +nicholson +nicholville +nicht +nichurin +nicias +nick +nickeas +nicked +nickel +nickelage +nickeled +nickelic +nickeline +nickeling +nickelize +nickell +nickelled +nickellike +nickells +nickelodeon +nickelodeons +nickelous +nickels +nickelsville +nickeltype +nicker +nickered +nickerie +nickering +nickerpecker +nickers +nickerson +nickey +nicki +nickie +nickieben +nicking +nickl +nicklas +nickle +nickles +nicklisch +nicknack +nicknacks +nickname +nicknameable +nicknamed +nicknamee +nicknameless +nicknamer +nicknames +nicknaming +nickneven +nickolai +nickolas +nickolaus +nickolay +nickonov +nicks +nickson +nickstick +nicktown +nicky +nico +nicobar +nicobara +nicobarese +nicodemi +nicodemite +nicodemos +nicodemus +nicol +nicola +nicolaas +nicolaescu +nicolai +nicolaia +nicolaitan +nicolaitanes +nicolaou +nicolas +nicolau +nicolaus +nicolayite +nicole +nicolea +nicoletta +nicolette +nicoletti +nicoli +nicolina +nicoline +nicolini +nicolle +nicollet +nicolls +nicolo +nicolodi +nicolson +nicomachean +nicomapark +nicopolis +nicos +nicosia +nicotia +nicotian +nicotiana +nicotianin +nicotic +nicotinean +nicotined +nicotineless +nicotines +nicotinian +nicotinic +nicotinism +nicotinize +nicotism +nicotize +nicotria +nicova +nics +nictate +nictated +nictates +nictating +nictation +nictitant +nictitate +nictitated +nictitates +nictitating +nictitation +nicto +niculescu +nicut +nida +nidal +nidamental +nidana +nidation +nidatory +niddering +niddick +niddle +nide +nidem +nides +nidge +nidget +nidgety +nidi +nidicolous +nidificant +nidificate +nidification +nidifugous +nidify +niding +nidologist +nidology +nidor +nidorosity +nidorous +nidorulent +nidrou +nidru +nidulant +nidularia +nidulariales +nidulate +nidulation +nidulus +nidus +nidwalden +nidzh +niebelungen +niebl +niebudek +niebuhr +niece +nieceless +nieces +nieceship +niedens +nieder +niederdorf +niederman +niediekaha +niedra +niedrmeyer +niedzwiecki +nieizsche +niejnie +niejnosti +niek +niel +nielim +niellated +nielled +niellim +niellist +niello +niels +nielsen +nielson +nielsville +niemczyk +niemeng +niemi +niemyska +niende +niendi +nieni +niente +niepa +niepce +niepmann +nierembergia +niergarth +niersteiner +nies +niese +niesen +niesewand +niet +nietermann +nieto +nietontori +nietschze +nietz +nietzsche +nietzschean +nietzscheism +nieue +nieva +nieve +nieveta +nievling +niewiadomska +nife +nifesima +niffer +nific +nifiga +nifilole +nifiloli +nifle +nifling +niftier +niftiest +nifty +nigac +nigalami +nigam +nigbi +nigde +nigel +nigella +niger +nigerami +nigercongo +nigeri +nigeria +nigerian +nigerians +nigerias +nigerien +nigerkaduna +nigers +niggard +niggarded +niggarding +niggardize +niggardling +niggardly +niggardness +niggards +nigged +nigger +niggerdom +niggerfish +niggergoose +niggerhead +niggerish +niggerism +niggerling +niggers +niggertoe +niggerweed +niggery +niggled +niggler +nigglers +niggles +niggling +nigglingly +nigglings +niggly +nigh +nighed +nigher +nighest +nighing +nighly +nighness +nighonn +nighs +night +nightcapped +nightcaps +nightchurr +nightclothes +nightclubber +nightclubs +nightcrawler +nighted +nighter +nighters +nightfall +nightfalls +nightfish +nightflit +nightfowl +nightgown +nightgowns +nighthawks +nightice +nightie +nighties +nightime +nightingale +nightingales +nightjar +nightjars +nightless +nightlight +nightlike +nightlong +nightly +nightman +nightmare +nightmares +nightmarish +nightmary +nightmen +nightrider +nightriders +nights +nightshade +nightshades +nightshine +nightshirst +nightshirts +nightspot +nightspots +nightstand +nightstands +nightstick +nightstock +nightstool +nighttide +nighttime +nighttimes +nightwalker +nightwalkers +nightwalking +nightward +nightwards +nightwear +nightwing +nightwork +nightworker +nighty +nigi +nigii +nigm +nignay +nignye +nigori +nigra +nigranilin +nigraniline +nigre +nigrescence +nigrescent +nigresceous +nigrescite +nigrified +nigrify +nigrine +nigritian +nigritic +nigrities +nigritude +nigrosine +nigrous +nigua +nigwi +nigyama +nihai +nihal +nihali +nihamber +nihei +nihi +nihil +nihilianism +nihilify +nihilisms +nihilistic +nihilists +nihilitic +nihilities +nihility +nihill +nihilo +nihils +nihon +nihondaira +nihuya +nihya +niigata +niihau +niinati +niitaka +nijadali +nije +nijen +nijenhuis +nijholt +nijiko +nijinsky +nijkamp +nijlen +nijrau +nika +nikagba +nikakih +nikakogo +nikandrov +nikaniki +nikau +nikaura +nike +nikel +nikelyovich +niken +nikeno +nikep +nikethamide +nikfarjam +niki +nikiforuk +nikiski +nikita +nikitas +nikitin +nikitina +nikki +nikkie +nikko +nikky +niklas +niklaus +niklesite +niko +nikogo +nikola +nikolaev +nikolaevich +nikolai +nikolaieva +nikolais +nikolaj +nikolajewa +nikolaos +nikolas +nikolaus +nikolay +nikolayev +nikolayevich +nikoletta +nikoleyevich +nikolia +nikolic +nikolin +nikolina +nikolopoulos +nikolski +nikolsky +nikomu +nikon +nikonaev +nikonenko +nikonov +nikos +nikotin +nikouline +niksek +nikuda +nikudan +nikulan +nikulin +nikulukan +nikunau +nila +nilakantan +nilamba +niland +nilda +nildo +nildon +nile +nilecongo +niles +nilgai +nilgau +nilgiri +nili +nill +nilled +nilling +nillinha +nills +nilohamitic +nilometer +nilometric +nilosaharan +niloscope +nilosyrtis +nilot +nilotic +nilous +nilpet +nilphamari +nilrem +nils +nilsa +nilse +nilson +nilsson +nilwood +nilyamba +nimadi +nimalto +nimana +nimar +nimari +nimb +nimba +nimbari +nimbarikebi +nimbated +nimbe +nimbed +nimbi +nimbiferous +nimblefooted +nimbleness +nimbler +nimblest +nimblewitted +nimbly +nimboran +nimbose +nimbosity +nimbus +nimbused +nimbuses +nimeiri +nimh +nimi +nimiety +niminy +nimious +nimitz +nimkish +nimm +nimmer +nimmo +nimo +nimoa +nimowa +nimowasnai +nimoy +nimrah +nimrim +nimrod +nimrodel +nimrodian +nimrodic +nimrodical +nimrodize +nimrods +nimruz +nims +nimshi +nimule +nina +ninam +ninatie +ninawa +ninca +ninchi +nincom +nincompoop +nincompoops +ninde +nindem +nine +ninebladed +ninebulo +nineholes +nineia +ninepegs +ninepence +ninepenny +ninepin +ninepins +nines +ninescore +nineted +nineteen +nineteenfold +nineteens +nineteenth +nineteenthly +nineteenths +nineties +ninetieths +ninetta +ninette +ninety +ninetyeight +ninetyfold +ninetyish +ninetyknot +ninetynine +ninetyseven +ninetysix +nineve +nineveh +ninevite +ninevites +ninevitical +ninevitish +nineyear +ninfa +ning +ningalam +ningawa +ningbo +ningen +ningera +ningerum +ninggera +ninggeroem +ninggerum +ninggirum +ninggrum +ningi +ningil +ninglang +ningpo +ningraharian +ningting +ninguessen +ningxia +ninh +nini +ninia +ninian +niniaripiru +ninigo +ninilchik +ninina +nininger +niningo +ninja +ninnekah +ninnetta +ninnette +ninni +ninnies +ninno +ninny +ninnyhammer +ninnyish +ninnyism +ninnyship +ninnywatch +nino +ninon +ninong +ninotchka +ninox +ninth +ninthly +ninths +ninties +nintu +ninut +ninuza +ninzam +ninzamrukuba +ninzamrukuma +ninzneudinsk +ninzo +niobate +niobe +niobean +niobic +niobid +niobite +niobiums +niobous +niobrara +niog +nioll +niominka +niopreng +niord +nioro +niosh +niota +niotaze +niotes +nipa +nipaporn +nipcheese +niphablepsia +nipissing +nipmuc +nipomo +niporen +nipori +nipped +nipper +nipperkin +nippers +nippier +nippiest +nippily +nippiness +nipping +nippingly +nippitate +nipple +nippleless +nipples +nipplewort +nippon +nipponese +nipponia +nipponism +nipponium +nipponize +nippy +nips +nipsan +nipsy +nipter +niquiran +nira +niramba +niranjan +nirere +nirgal +nirles +nirmal +nirmanakaya +nirney +niro +niroot +nirvana +nirvanan +nirvanas +nirvanic +nisa +nisaean +nisan +nisbet +nisc +nisca +nischuk +nisco +nisd +nise +nisei +niseis +nisenan +nish +nishada +nishang +nishaya +nishi +nishida +nishidawa +nishiguchi +nishihara +nishiki +nishimura +nishinahua +nishio +nishisato +nishith +nishiyama +nishka +nishtun +nisi +nisia +niska +nisland +nism +nisnas +nisnet +nispero +nispiration +nisqualli +nisqually +nisroch +nissa +nissan +nisse +nissei +nisselson +nissen +nissi +nissie +nisswa +nissy +nist +nisula +nisus +nita +nitch +nitchevo +nitella +niten +nitency +nitently +niter +niterbush +nitered +niters +nitery +nither +nithing +nithsdale +nitiabo +nitid +nitidous +nitidulid +nitidulidae +nitijela +nitin +nitinat +nitis +nitkie +nito +niton +nitpicked +nitpicker +nitpickers +nitpicking +nitpicks +nitramine +nitramino +nitranilic +nitraniline +nitrate +nitrated +nitrates +nitratine +nitrating +nitration +nitrator +nitrators +nitre +nitres +nitrian +nitriary +nitric +nitridation +nitriding +nitridize +nitrifaction +nitriferous +nitrifiable +nitrified +nitrifier +nitrifies +nitrify +nitrifying +nitrile +nitriot +nitrites +nitritoid +nitro +nitroamine +nitroaniline +nitrobacter +nitrobarite +nitrobenzene +nitrobenzol +nitrobenzole +nitrocalcite +nitrocotton +nitroform +nitrogelatin +nitrogen +nitrogenate +nitrogenic +nitrogenize +nitrogenous +nitrogens +nitrolamine +nitrolic +nitrolime +nitrometer +nitrometric +nitromuriate +nitrophenol +nitrophilous +nitrophyte +nitrophytic +nitroprussic +nitros +nitrosamine +nitrosate +nitrosify +nitrosite +nitrosomonas +nitrostarch +nitrosyl +nitrotoluene +nitrous +nitroxyl +nitryl +nits +nitschke +nitschky +nittaya +nittayuma +nitter +nittier +nittiest +nitty +nitulescu +nitwit +nitwits +nitza +nitzhe +nitzhye +nitzschia +niuafoou +niuan +niuatoputapu +niue +niuean +niueans +niuefekai +niutao +niva +nivacle +nivakle +nival +nivation +nive +nivean +nivek +nivellate +nivellation +nivellator +niven +nivenite +nivens +niveous +niver +niverville +nivicolous +nivison +nivkh +nivkhi +nivo +nivosity +niwinska +niwot +nixa +nixe +nixed +nixes +nixie +nixies +nixing +nixon +nixxon +nixy +niyoga +niyom +niza +nizam +nizamate +nizamuddin +nizamut +nizar +nizh +nizhny +nizman +niznenepsk +nizovsk +nizy +njabi +njac +njadu +njai +njaire +njalgulgule +njambeta +njangulgule +njanja +njanti +njanyi +njao +njari +njauna +njave +njawah +njawbaw +njawe +njazidja +njbg +njebi +njeepoantu +njegn +njei +njeing +njeleng +njem +njembeng +njeme +njemnjem +njemps +njen +njeng +njeny +njesko +njevi +njijapali +njikini +njikum +njikwa +njin +njindo +njinga +njiningi +njinju +njintura +njit +njitc +njitgw +njiunjiu +njmsa +njock +njong +njore +njowi +njoyame +njstar +njua +njuka +njumit +njungene +njwa +njwande +njyunjyu +nkafa +nkam +nkambe +nkangala +nkap +nkayi +nkem +nkembe +nkemnkum +nkhata +nkhota +nkhumbi +nkim +nkimbe +nkogna +nkokolle +nkole +nkom +nkomba +nkomi +nkonde +nkondjok +nkong +nkongho +nkonya +nkoosi +nkoro +nkorola +nkoroo +nkosi +nkot +nkotakota +nkoxo +nkoya +nkpani +nkqeshe +nkravet +nkriang +nkuchu +nkukoli +nkum +nkuma +nkumbi +nkunabem +nkundo +nkundu +nkune +nkunya +nkuraeng +nkurange +nkutshu +nkutu +nkutuk +nkwanta +nkwe +nkwen +nkwifiya +nkwoi +nlao +nlietz +nline +nlockmgr +nlong +nlos +nmarkovian +nmblookup +nmfecc +nmra +nmrb +nmrc +nmre +nmrf +nmrg +nmrh +nmricl +nmrj +nmrk +nmrpcd +nmrt +nmrx +nmsu +nmtvax +nnam +nnerigwe +nngas +nnhost +nnmc +nnnn +nnnnn +nnnnnn +nnnnnnn +nnnnnnnn +nnnnot +nnnobody +nnothing +nnsc +nntp +noachian +noachic +noachical +noachite +noadiah +noah +noahic +noakes +noakhali +noala +noale +noam +noami +noanama +noang +noao +noatak +noatia +nobackspace +nobah +nobanob +nobatch +nobber +nobbier +nobbily +nobble +nobbled +nobbler +nobblers +nobbles +nobbling +nobbs +nobbut +nobby +nobee +nobel +nobelist +nobelists +nobeliums +nobes +nobiin +nobiliary +nobilify +nobilitate +nobilitation +nobilities +nobility +noble +nobleboro +noblehearted +nobleman +noblemanly +nobleminded +nobleness +nobler +nobles +noblesses +noblest +noblestown +noblesville +nobleton +noblewoman +noblewomen +nobley +noblitt +nobly +nobmuo +nobnob +nobodies +nobody +nobodyd +nobodyness +nobonob +nobre +nobs +nobu +nobuk +nobuko +nobuo +noburo +nobutaka +nobuyo +nobvu +nocake +nocaman +nocardia +nocardiosis +nocatee +noce +nocent +nocerite +noch +nochalo +noche +nochi +nochistla +nochixtla +nochixtlan +nochnie +nociceptive +nociceptor +nock +nocked +nocker +nocket +nocki +nocking +nocks +nocktat +noclue +nocnej +nocni +nocoes +nocoman +nocona +noconfirm +nocoulidie +noctambulant +noctambule +noctambulism +noctambulist +noctambulous +nocte +nocten +noctenes +noctidial +noctidiurnal +noctiferous +noctiflorous +noctilio +noctiluca +noctilucal +noctilucan +noctilucence +noctilucent +noctilucidae +noctilucin +noctilucine +noctilucous +noctipotent +noctis +noctivagant +noctivagous +noctivagrant +noctograph +noctor +noctovision +noctuae +noctuid +noctuidae +noctuiform +noctule +nocturia +nocturn +nocturna +nocturnal +nocturnally +nocturnes +nocturns +nocuity +nocuous +nocuously +nocuousness +nocy +noda +nodab +nodak +nodality +nodally +nodated +nodaway +nodbury +nodded +nodder +nodders +noddies +noddin +nodding +noddingly +noddle +noddles +noddy +node +nodebynode +noded +nodediff +nodelife +nodelist +nodeliste +nodelisten +nodelists +nodenummern +nodes +nodi +nodiak +nodical +nodicorn +nodiferous +nodiflorous +nodiform +nodonk +nodosaria +nodosarian +nodosariform +nodosarine +nodose +nodosity +nodous +nods +nodulate +nodulated +nodulation +noduled +nodules +nodulize +nodulose +nodulous +nodulus +nodup +nodus +noebcd +noecho +noefoor +noegenesis +noegenetic +noehmo +noel +noelani +noele +noelene +noell +noella +noelle +noellyn +noels +noelyn +noemi +noemie +noenama +noerby +noerror +noes +noeschka +noesis +noether +noetic +noetics +noex +noexecute +noffke +nofile +nofill +noframes +nofretete +nofx +nogada +nogah +nogai +nogaitsy +nogajowna +nogal +nogalar +nogales +nogata +nogau +nogay +noggen +noggin +nogging +noggings +noggins +noggs +noghay +noghaylar +noghead +nogheaded +nogn +nogo +nogood +nograd +nogs +noguchi +nogueira +noguerira +nogugu +nogukwabai +nohah +nohex +nohina +noho +nohon +nohop +nohow +nohr +nohu +nohuntsik +nohup +nohur +nohwe +nohya +noibwood +noie +noihe +noikoro +noil +noilage +noiler +noily +noint +nointment +noir +noire +noirer +noires +noiret +noise +noised +noiseful +noisefully +noiseless +noiselessly +noisemaker +noisemakers +noisemaking +noisenak +noiseproof +noises +noisette +noisier +noisiest +noisily +noisiness +noising +noisome +noisomely +noisomeness +noisy +noize +nojiri +nokanoka +nokaw +nokes +nokesville +nokhurli +nokia +nokomis +nokopo +nokta +nokturnal +noku +nokuku +nokwu +nola +nolamer +nolan +nolana +noland +nolanville +nolard +nolascan +nolder +noldor +nolema +nolen +nolensville +noles +nolet +nolgin +nolie +nolition +noll +nollau +nolle +nolleity +nollepros +nollet +nolli +nollie +nollier +nolot +nolte +nolter +noma +nomaande +nomad +nomadian +nomadical +nomadically +nomadidae +nomadism +nomadisms +nomadization +nomadize +nomads +nomai +nomaka +nomancy +nomand +nomane +nomap +nomarch +nomarchy +nomarthra +nomarthral +nombotong +nombre +nombril +nome +nomeidae +nomenclate +nomenclative +nomenclator +nomenclatory +nomenga +nomer +nomeus +nomex +nomi +nomial +nomic +nomina +nominable +nominal +nominalism +nominalist +nominalistic +nominality +nominally +nominals +nominalscale +nominate +nominated +nominately +nominates +nominating +nomination +nominations +nominatival +nominative +nominatively +nominatives +nominator +nominators +nominatrix +nominature +nomine +nomineeism +nominees +nominy +nomis +nomism +nomisma +nomismata +nomisms +nomistic +nomlaki +nomme +nomnem +nomocanon +nomocracy +nomogenist +nomogenous +nomogeny +nomograms +nomographer +nomographic +nomography +nomoi +nomological +nomologist +nomology +nomon +nomopelmous +nomophylax +nomophyllous +nomopo +nomos +nomotheism +nomothete +nomothetes +nomothetic +nomothetical +noms +nomu +nomura +nomwin +nona +nonabiding +nonability +nonabjurer +nonabolition +nonabrasive +nonabsolute +nonabsorbent +nonabstainer +nonabstract +nonacademic +nonacademics +nonacatla +nonacceding +nonaccent +nonacceptant +nonaccess +nonaccession +nonaccessory +nonaccretion +nonacid +nonacosane +nonacoustic +nonacquittal +nonact +nonactinic +nonaction +nonactive +nonactives +nonactuality +nonaculeate +nonacute +nonadaptive +nonaddicting +nonaddictive +nonadditive +nonadecane +nonadherence +nonadherent +nonadhesion +nonadhesive +nonadjacent +nonadjustive +nonadmiring +nonadmission +nonadmitted +nonadoption +nonadorantes +nonadornment +nonadult +nonadults +nonadverbial +nonadvocate +nonaerating +nonaesthetic +nonaffection +nonafrican +nonafricans +nonage +nonagency +nonagent +nonages +nonagesimal +nonagon +nonagons +nonagrarian +nonagreement +nonah +nonahydrate +nonaid +nonair +nonalarmist +nonalcohol +nonalcoholic +nonalgebraic +nonaligned +nonalignment +nonallotment +nonalluvial +nonaluminous +nonama +noname +nonamendable +nonamino +nonamish +nonamotion +nonanalogy +nonanalytic +nonanalyzed +nonanaphoric +nonancestral +nonancourt +nonane +nonangelic +nonangling +nonanimal +nonannuitant +nonannulment +nonanoic +nonanonymity +nonanswer +nonantigenic +nonantum +nonapostolic +nonapparent +nonappearer +nonappearing +nonappellate +nonapply +nonapposable +nonappraisal +nonapproval +nonaquatic +nonaqueous +nonarcing +nonarmament +nonaromatic +nonarrival +nonarsenical +nonarterial +nonartesian +nonartistic +nonary +nonaryan +nonascetic +nonascii +nonaseptic +nonaspersion +nonasphalt +nonaspirate +nonaspiring +nonassault +nonassent +nonassented +nonassenting +nonassertion +nonassertive +nonassistive +nonassurance +nonasthmatic +nonathletic +nonatonement +nonattached +nonattendant +nonattention +nonattitudes +nonauricular +nonautomated +nonautomatic +nonavoidance +nonaxiomatic +nonazotized +nonbachelor +nonbacterial +nonbailable +nonballoting +nonbandas +nonbankable +nonbantu +nonbantuanon +nonbarbarous +nonbaronial +nonbase +nonbasement +nonbasic +nonbasing +nonbath +nonbathing +nonbearded +nonbearing +nonbeing +nonbeings +nonbeliever +nonbelievers +nonbelieving +nonbending +nonbetrayal +nonbeverage +nonbilabiate +nonbilious +nonbinomial +nonbitter +nonblack +nonblameless +nonblank +nonbleeding +nonblended +nonblinking +nonblockaded +nonblocking +nonblooded +nonblooming +nonbodily +nonbookish +nonborrower +nonbotanical +nonbourgeois +nonbranded +nonbreakable +nonbreeder +nonbreeding +nonbroody +nonbrowsing +nonbudding +nonbulbous +nonbulkhead +nonburgage +nonburgess +nonburnable +nonburning +nonbursting +nonbusiness +nonbuying +noncabinet +noncaffeine +noncaking +noncalcarea +noncalcified +noncallable +noncancerous +noncanonical +noncapillary +noncapital +noncapture +noncarbonate +noncareer +noncarrier +noncaste +noncasual +noncatarrhal +noncathedral +noncausal +noncausality +noncausally +noncausation +noncelestial +noncellular +noncensored +noncensus +noncentral +noncentrally +noncereal +noncerebral +noncertain +noncertainty +noncertified +nonces +nonchafing +nonchalance +nonchalantly +nonchalky +nonchampion +nonchanging +nonchastity +nonchemical +nonchemist +nonchokable +nonchokebore +nonchurch +nonchurched +nonciliate +noncircuit +noncircuital +noncircular +noncitation +noncitizen +noncivilized +nonclaim +nonclaimable +nonclaimant +nonclassable +nonclassical +nonclastic +nonclearance +nonclerical +nonclimbable +nonclinical +nonclose +nonclosure +nonclotting +noncock +noncoercion +noncoercive +noncognate +noncognition +noncognitive +noncoherent +noncohesion +noncohesive +noncoinage +noncoking +noncollinear +noncolloid +noncollusion +noncollusive +noncolonial +noncoloring +noncom +noncombat +noncombatant +noncombining +noncome +noncoming +noncommittal +noncommunal +noncommunion +noncommunist +noncompact +noncompetent +noncompeting +noncomplying +noncomposite +noncomputer +noncoms +noncon +nonconcern +nonconcur +nonconducive +nonconductor +nonconfident +nonconfitent +nonconform +nonconformer +noncongruent +nonconjugal +nonconjugate +nonconnubial +nonconscious +nonconsent +nonconsoling +nonconsonant +nonconstancy +nonconsular +noncontact +noncontagion +noncontent +nonconvex +nonconvivial +noncoplanar +noncopying +noncoring +noncorporate +noncorroding +noncorrosive +noncortical +noncosmic +noncottager +noncounty +noncpsu +noncranking +noncreation +noncreative +noncredence +noncredent +noncredible +noncreditor +noncreeping +noncrenate +noncriminal +noncrinoid +noncritical +noncrucial +noncruciform +noncrusading +noncrushable +nonculpable +nonculture +noncurantist +noncurling +noncurrency +noncurrent +noncursive +noncuspidate +noncustomary +noncutting +noncyclic +noncyclical +nonda +nondairy +nondalton +nondamnation +nondancer +nondangerous +nondata +nondatival +nondeaf +nondealer +nondebtor +nondecadence +nondecadent +nondecane +nondecatoic +nondecaying +nondeception +nondeceptive +nondeciduata +nondeciduate +nondeciduous +nondecision +nondeclarant +nondeclarer +nondeduction +nondefection +nondefendant +nondefense +nondefensive +nondeference +nondefiance +nondefining +nondegerming +nondegreased +nondehiscent +nondeist +nondelegable +nondelegate +nondelirious +nondelivery +nondemand +nondemise +nondendroid +nondenial +nondense +nondeparture +nondependent +nondepletion +nondeported +nondepositor +nondepravity +nondepressed +nonderivable +nondescript +nondesignate +nondesigned +nondesire +nondesirous +nondesisting +nondespotic +nondetailed +nondetention +nondeterrent +nondetest +nondeviation +nondevice +nondexterous +nondiabetic +nondiabolic +nondiagnosis +nondiagonal +nondialectal +nondialyzing +nondiametral +nondiastatic +nondichogamy +nondictation +nondidactic +nondieting +nondiffusing +nondigestion +nondilatable +nondilution +nondiocesan +nondipterous +nondirection +nondiri +nondisbursed +nondisclaim +nondiscovery +nondisjunct +nondismissal +nondisparate +nondispersal +nondisplay +nondisposal +nondistant +nondivergent +nondivinity +nondivisible +nondivision +nondivorce +nondo +nondoctrinal +nondogmatic +nondoing +nondomestic +nondominant +nondonation +nondramatic +nondrinker +nondrinkers +nondrinking +nondropsical +nondrought +nondrying +nonduality +nondumping +nondutiable +nondynastic +nondyspeptic +none +nonearning +noneastern +noneatable +nonebcdic +nonechoic +noneclectic +noneclipsing +nonecompense +noneconomic +nonedible +noneditor +noneditorial +noneducable +noneducation +noneffective +noneffete +nonefficacy +nonefficient +noneffusion +nonego +nonegos +nonejection +nonelastic +nonelect +nonelection +nonelective +nonelector +nonelectric +nonelemental +noneligible +nonelopement +nonemanating +nonembryonic +nonemergent +nonemission +nonemotional +nonemphatic +nonempirical +nonemploying +nonempty +nonemulative +nonenactment +nonenclosure +nonendemic +nonendurance +nonenduring +nonene +nonenemy +nonenergic +nonenglish +nonenrolled +nonent +nonentailed +nonenteric +nonentities +nonentitive +nonentitize +nonentity +nonentityism +nonentrant +nonentres +nonentry +nonenvious +nonenzymic +nonephemeral +nonepic +nonepicurean +nonepileptic +nonepiscopal +nonepochal +nonequal +nonequals +nonequation +nonerasure +nonerecting +nonerection +nonergodic +nonerotic +nonerroneous +nonerudite +noneruption +nones +nonescape +nonesh +nonespionage +nonespousal +nonessential +nonesthetic +nonesuch +nonesuches +nonet +noneternal +noneternity +nonetheless +nonethereal +nonethical +nonethically +nonethyl +noneugenic +nonevasion +nonevasive +nonevent +nonevents +noneviction +nonevident +nonevil +nonevolving +nonexaction +nonexcepted +nonexcessive +nonexciting +nonexclusion +nonexclusive +nonexcusable +nonexecution +nonexecutive +nonexemplary +nonexempt +nonexercise +nonexertion +nonexistence +nonexistent +nonexisting +nonexotic +nonexpansion +nonexpansive +nonexpert +nonexpiation +nonexpiry +nonexplosive +nonexposure +nonexpulsion +nonextant +nonextempore +nonextended +nonextensile +nonextension +nonextensive +nonexternal +nonextortion +nonextracted +nonextreme +nonextrinsic +nonexuding +nonfabulous +nonfacetious +nonfacial +nonfacility +nonfacing +nonfact +nonfactious +nonfactory +nonfactual +nonfactually +nonfaculty +nonfaddist +nonfading +nonfailure +nonfalse +nonfamily +nonfamous +nonfanatical +nonfanciful +nonfarm +nonfascist +nonfascists +nonfat +nonfatal +nonfatally +nonfatty +nonfavorite +nonfeasance +nonfeasor +nonfeatured +nonfebrile +nonfederal +nonfederated +nonfelonious +nonfelony +nonferrous +nonfertile +nonfertility +nonfestive +nonfeudal +nonfibrous +nonfiction +nonfictional +nonfiduciary +nonfighter +nonfimbriate +nonfinancial +nonfinding +nonfinishing +nonfinite +nonfireproof +nonfiscal +nonfisherman +nonfissile +nonfixation +nonflaky +nonflammable +nonflexible +nonfloating +nonflowering +nonflowing +nonfluent +nonfluid +nonflying +nonfocal +nonfood +nonforeign +nonforest +nonforested +nonform +nonformal +nonformation +nonfouling +nonfrat +nonfrauder +nonfreedom +nonfreeman +nonfreezable +nonfreeze +nonfreezing +nonfricative +nonfriction +nonfrosted +nonfruition +nonfuel +nonfull +nonfundable +nonfungible +nonfuroid +nonfusion +nonfuturity +nong +nongalactic +nongambian +nongas +nongaseous +nongassy +nongaussian +nongenetic +nongentile +nongerundial +nongibraltar +nongildsman +nongipsy +nonglacial +nonglandered +nonglandular +nonglare +nonglucose +nongnuj +nongoba +nongod +nongold +nongolfer +nongoma +nongospel +nongraduate +nongraduated +nongrain +nongranular +nongraphic +nongraphitic +nongrass +nongravity +nongray +nongreasy +nongreen +nongremial +nongrey +nongrooming +nongtung +nonguarantee +nonguard +nonguttural +nongymnast +nongypsy +nonhabitable +nonhabitual +nonhacker +nonhackers +nonhackish +nonhalation +nonhandicap +nonharmonic +nonhazardous +nonheading +nonhearer +nonheathen +nonhepatic +nonheritable +nonheritor +nonhero +nonheroes +nonhieratic +nonhistoric +nonhostile +nonhuman +nonhumanist +nonhumorous +nonhumus +nonhunting +noni +noniali +nonibm +nonic +nonideal +nonidealist +nonidentical +nonidentity +nonidiomatic +nonidyllic +nonie +nonignitible +nonignorant +nonillion +nonillionth +nonimaginary +nonimbedded +nonimitative +nonimmersion +nonimmigrant +nonimmune +nonimmunity +nonimmunized +nonimpact +nonimperial +nonimplement +nonimporting +noninclusion +noninclusive +nonincrease +noninductive +nonindurated +noninfantry +noninfected +noninfection +noninfinite +noninflected +noninfluence +noninherited +noninitial +noninjurious +noninjury +noninquiring +noninsect +noninsertion +noninsurance +nonintegrity +nonintent +nonintention +nonintrusion +nonintrusive +nonintuitive +noninvariant +noninverted +noninverting +noninvidious +noniodized +nonion +nonionized +nonionizing +nonirate +nonirrigable +nonirrigated +nonirritable +nonirritant +nonisobaric +nonisotropic +nonissuable +nonits +nonius +nonjewish +nonjoinder +nonjudicial +nonjurable +nonjurant +nonjuress +nonjuring +nonjurist +nonjuristic +nonjuror +nonjurorism +nonjury +nonjurying +nonkes +nonkeyboard +nonknowledge +nonkosher +nonkuwaiti +nonlabeling +nonlaminated +nonlanguage +nonlaying +nonleaded +nonleaking +nonlegal +nonlegato +nonlegume +nonleprous +nonlethal +nonleukemia +nonlevel +nonlevulose +nonliability +nonliable +nonlicensed +nonlicet +nonlicking +nonlife +nonlimiting +nonlinear +nonlinearity +nonlinearly +nonlinguist +nonlinwood +nonlipoidal +nonliquid +nonlisp +nonlister +nonlisting +nonliterary +nonliterate +nonlitigious +nonliving +nonlocal +nonlocalized +nonlocals +nonlogical +nonlosable +nonloser +nonlover +nonloving +nonluminous +nonluster +nonlustrous +nonly +nonmagnetic +nonmajority +nonmalarious +nonmalicious +nonmalignant +nonmalleable +nonmammalian +nonman +nonmandatory +nonmanifest +nonmanila +nonmannite +nonmanual +nonmarine +nonmarital +nonmaritime +nonmarket +nonmarkovian +nonmarriage +nonmarrying +nonmartial +nonmaskable +nonmastery +nonmaterial +nonmaternal +nonmatter +nonmedical +nonmedicinal +nonmelodious +nonmem +nonmember +nonmembers +nonmen +nonmenial +nonmental +nonmetal +nonmetallic +nonmetals +nonmeteoric +nonmetric +nonmetrical +nonmicrobic +nonmigratory +nonmilitant +nonmilitants +nonmilitary +nonmimetic +nonmineral +nonminimal +nonmiscible +nonmmu +nonmobile +nonmodal +nonmodern +nonmolar +nonmolecular +nonmomentary +nonmonastic +nonmongolian +nonmonist +nonmorainic +nonmoral +nonmorality +nonmoroccan +nonmortal +nonmother +nonmotile +nonmotoring +nonmotorist +nonmucous +nonmulched +nonmultiple +nonmunicipal +nonmuscular +nonmusical +nonmuslims +nonmussable +nonmutative +nonmutual +nonmystical +nonmythical +nonna +nonnah +nonnant +nonnarcotic +nonnasal +nonnat +nonnational +nonnative +nonnatives +nonnatural +nonnaturals +nonnautical +nonnaval +nonnavigable +nonnebular +nonnecessary +nonnecessity +nonnegative +nonnephritic +nonnervous +nonnescience +nonnescient +nonneutral +nonnewtonian +nonnian +nonnie +nonno +nonnoble +nonnormal +nonnormality +nonnotional +nonnucleated +nonnull +nonnumeral +nonnumeric +nonnumerical +nonnutrient +nonnutritive +nonny +nono +nonobedience +nonobedient +nonobjection +nonobjective +nonobservant +nonobvious +nonocculting +nonoccupant +nonodorous +nonoecumenic +nonoffender +nonoffensive +nonofficial +nonofficinal +nonoic +nonoil +nonoily +nonolfactory +nonomad +nonomani +nononerous +nononono +nonopacity +nonopening +nonoperable +nonoperating +nonoperative +nonoptical +nonoptimal +nonoptional +nonorganic +nonoriental +nonoriginal +nonorthodox +nonoscine +nonouti +nonoutlawry +nonoutrage +nonoverhead +nonowner +nonowners +nonoxidating +nonoxidizing +nonoxygenous +nonpacific +nonpacifist +nonpagan +nonpaid +nonpainter +nonpalatal +nonpapal +nonpapist +nonpar +nonparallel +nonparalytic +nonparasitic +nonpareil +nonpareils +nonparent +nonparental +nonpariello +nonparlor +nonparochial +nonparous +nonpartial +nonpartisan +nonpartisans +nonpartizan +nonpartner +nonparty +nonpassenger +nonpasserine +nonpastoral +nonpatented +nonpaternal +nonpause +nonpaying +nonpayment +nonpeak +nonpeaked +nonpearlitic +nonpecuniary +nonpedigree +nonpelagic +nonpeltast +nonpenal +nonpenalized +nonpending +nonpensioner +nonperforate +nonperformer +nonperiodic +nonperishing +nonperjury +nonpermanent +nonpermeable +nonperpetual +nonperson +nonpersonal +nonpertinent +nonphenolic +nonphonetic +nonphysical +nonpickable +nonpigmented +nonplacental +nonplacet +nonplain +nonplanar +nonplane +nonplanetary +nonplastic +nonplate +nonplausible +nonplayer +nonpleading +nonplosive +nonplus +nonplusation +nonplused +nonpluses +nonplushed +nonplusing +nonplussed +nonplusses +nonplussing +nonpoet +nonpoetic +nonpoisonous +nonpolar +nonpolitical +nonpolluting +nonponderous +nonpopery +nonpopular +nonporous +nonport +nonportable +nonportrayal +nonpositive +nonpotential +nonpower +nonpractical +nonpractice +nonpraedial +nonpreaching +nonprecious +nonpredatory +nonpreformed +nonpregnant +nonpremium +nonpresbyter +nonpresence +nonpress +nonpressure +nonprevalent +nonpriestly +nonprimary +nonprimitive +nonprinting +nonprobable +nonproducer +nonproducing +nonprofane +nonprofessed +nonprofit +nonprolific +nonpromotion +nonprophetic +nonprospect +nonproteid +nonprotein +nonproven +nonprovided +nonpsychic +nonpublic +nonpublicity +nonpueblo +nonpulmonary +nonpulsating +nonpumpable +nonpunctual +nonpunishing +nonpurchase +nonpurchaser +nonpurgative +nonpurposive +nonpursuit +nonpurulent +nonputting +nonpyogenic +nonqatari +nonquality +nonquota +nonracial +nonradiable +nonradiating +nonradical +nonrandom +nonranging +nonratable +nonrated +nonratifying +nonrational +nonrayed +nonreaction +nonreactive +nonreactor +nonreader +nonreaders +nonreading +nonrealistic +nonreality +nonreasoner +nonrebel +nonreceipt +nonreceiving +nonrecent +nonreception +nonrecess +nonrecipient +nonrecital +nonrecluse +nonrecoil +nonrecourse +nonrecovery +nonrectified +nonrecurrent +nonrecurring +nonreducing +nonreference +nonreflector +nonrefueling +nonregarding +nonregent +nonregistred +nonregular +nonreigning +nonrejection +nonrejoinder +nonrelapsed +nonrelation +nonrelative +nonrelease +nonreliance +nonreligion +nonreligious +nonremanie +nonremedy +nonremission +nonremovable +nonrendition +nonrenewable +nonrenewal +nonrepair +nonrepayable +nonrepealing +nonrepeat +nonrepeater +nonreplicate +nonreprisal +nonrequital +nonrescue +nonreserve +nonresidence +nonresidency +nonresident +nonresidents +nonresidual +nonresistant +nonresisting +nonresistive +nonresonant +nonresponse +nonrestraint +nonretention +nonretentive +nonreticence +nonretinal +nonretiring +nonreturn +nonrevealing +nonrevenge +nonrevenue +nonreverse +nonreversed +nonreversing +nonreversion +nonrevision +nonrevival +nonrevolting +nonrevolving +nonrhymed +nonrhyming +nonrhythmic +nonriding +nonrigid +nonrioter +nonriparian +nonrival +nonromantic +nonrotatable +nonrotating +nonrotative +nonround +nonroutine +nonroyal +nonroyalist +nonrubber +nonruminant +nonrun +nonrupture +nonrural +nonrussians +nonrustable +nonsabbatic +nonsacred +nonsacrifice +nonsailor +nonsalable +nonsalaried +nonsale +nonsaline +nonsalutary +nonsalvation +nonsampling +nonsanction +nonsanctity +nonsane +nonsanguine +nonsanity +nonsaturated +nonsaving +nonsawing +nonscalding +nonscaling +nonscheduled +nonschkind +nonscience +nonscientist +nonscoring +nonscraping +nonscrutiny +nonseasonal +nonsecession +nonseclusion +nonsecrecy +nonsecret +nonsecretion +nonsecretive +nonsecretly +nonsecretory +nonsectarian +nonsectional +nonsectorial +nonsecular +nonsecurity +nonsedentary +nonseditious +nonsegmented +nonseizure +nonselected +nonselection +nonselective +nonself +nonselling +nonsense +nonsenses +nonsensible +nonsensify +nonsensitive +nonsensorial +nonsensuous +nonsentence +nonsentient +nonseparable +nonseptate +nonseptic +nonserial +nonseriali +nonserif +nonserious +nonserous +nonservile +nonsetter +nonsetting +nonsettled +nonsexist +nonsexists +nonsexual +nonsexually +nonshaft +nonsharing +nonshatter +nonshedder +nonshipper +nonshipping +nonshredding +nonshrinking +nonsiccative +nonsidereal +nonsignatory +nonsignature +nonsilicated +nonsiliceous +nonsilver +nonsine +nonsinging +nonsingular +nonsinkable +nonsiphonage +nonsister +nonsitter +nonsitting +nonsked +nonskeptical +nonskid +nonskidding +nonskilled +nonskipping +nonsklarkish +nonslip +nonslippery +nonslipping +nonsludging +nonsmoker +nonsmokers +nonsmoking +nonsmooth +nonsmutting +nonsocial +nonsocialist +nonsociety +nonsolar +nonsoldier +nonsolid +nonsolution +nonsolvency +nonsolvent +nonsonant +nonsovereign +nonsoviet +nonspalling +nonsparing +nonsparking +nonspeaker +nonspeaking +nonspecial +nonspecie +nonspecific +nonspecified +nonspectral +nonspherical +nonspill +nonspillable +nonspinning +nonspinose +nonspiny +nonspiral +nonspirit +nonspiritual +nonspored +nonsporting +nonspottable +nonsprouting +nonstable +nonstainable +nonstaining +nonstampable +nonstandard +nonstanzaic +nonstaple +nonstarch +nonstarter +nonstarting +nonstatement +nonstatic +nonstatutory +nonstellar +nonstick +nonsticky +nonstimulant +nonstock +nonstooping +nonstop +nonstowed +nonstrategic +nonstress +nonstretchy +nonstriated +nonstriker +nonstrikers +nonstriking +nonstriped +nonstudent +nonstudious +nonstylized +nonsubject +nonsubsiding +nonsubsidy +nonsuccess +nonsuccour +nonsuch +nonsuches +nonsuction +nonsuctorial +nonsuffrage +nonsugar +nonsuit +nonsuited +nonsummons +nonsupport +nonsupporter +nonsurface +nonsurgical +nonsurrender +nonsurvival +nonsurvivor +nonsuspect +nonswearer +nonswearing +nonsweating +nonswimmer +nonswimming +nonsyllabic +nonsymbiotic +nonsymbolic +nonsympathy +nonsymphonic +nonsyndicate +nonsynodic +nonsyntactic +nonsyntonic +nonsystem +nontabular +nontactical +nontahitians +nontan +nontannic +nontannin +nontariff +nontax +nontaxable +nontaxonomic +nonteachable +nonteacher +nonteaching +nontechical +nontechnical +nontemporal +nontenant +nontenure +nontenured +nontenurial +nonterm +nonterminal +nonterminals +nontextual +nonthaburi +nontheistic +nonthematic +nonthermal +nonthinker +nonthinking +nonthoracic +nonthreaded +nontidal +nontillable +nontimbered +nontime +nontitular +nontolerated +nontonal +nontourist +nontoxic +nontraction +nontrade +nontraded +nontrader +nontrading +nontragic +nontrailing +nontransient +nontraveler +nontraveling +nontreated +nontreatment +nontreaty +nontrespass +nontrial +nontribal +nontribesman +nontributary +nontrier +nontrivial +nontronite +nontropical +nontrunked +nontruth +nontruths +nontuned +nonturkic +nontutorial +nontyphoidal +nontypical +nontypically +nonu +nonukan +nonulcerous +nonumbilical +nonunanimous +nonuncial +nonunified +nonuniform +nonuniformly +nonunion +nonunionism +nonunionist +nonunions +nonunique +nonunison +nonunited +nonuniversal +nonunix +nonunixy +nonuple +nonuplet +nonupright +nonurban +nonurgent +nonus +nonusage +nonuse +nonuser +nonusers +nonusing +nonusurping +nonuterine +nonutile +nonutility +nonutilized +nonutterance +nonvacant +nonvacuous +nonvaginal +nonvalent +nonvalidity +nonvaluation +nonvalve +nonvanishing +nonvariable +nonvariant +nonvariation +nonvascular +nonvassal +nonvaxen +nonvenereal +nonvenomous +nonvenous +nonverbal +nonverdict +nonverminous +nonvertebral +nonvertical +nonvesicular +nonvesting +nonvesture +nonveteran +nonviable +nonvibratile +nonvibration +nonvibrator +nonvibratory +nonvicarious +nonvictory +nonvillager +nonvinous +nonvintage +nonviolation +nonviolence +nonviolent +nonviolently +nonvirginal +nonvirile +nonvirtue +nonvirtuous +nonvirulent +nonvisaed +nonvisceral +nonviscid +nonviscous +nonvisible +nonvisional +nonvisiting +nonvisual +nonvisually +nonvital +nonvitreous +nonvitrified +nonvocal +nonvocalic +nonvoice +nonvolant +nonvolatile +nonvolcanic +nonvolition +nonvoluntary +nonvortical +nonvoter +nonvoters +nonvoting +nonvulvar +nonwalking +nonwanks +nonwar +nonwasting +nonweakness +nonwestern +nonwetted +nonwhite +nonwhites +nonwinged +nonwoody +nonworker +nonworkers +nonworking +nonworship +nonwrite +nonya +nonyielding +nonyl +nonylene +nonylenic +nonylic +nonzealous +nonzebra +nonzero +nonzodiacal +nonzonal +nonzonate +noobe +noodle +noodled +noodledom +noodlehead +noodleism +noodles +noodling +noogar +noohalit +nooked +nookery +nookies +nooking +nooklet +nooklike +nookme +nooknak +nooks +nooksack +nooky +nooli +noological +noologist +noology +noomaante +noometry +noomie +noon +noonan +noonday +noondays +noone +noonflower +noonga +nooning +noonings +noonlight +noonlit +noons +noonstead +noontide +noontides +noontimes +noonu +noonwards +nooo +noooo +nooooo +noop +nooperation +noor +noorani +noorbhai +noordbrabant +noordholland +noori +noosan +nooscopic +noose +noosed +nooser +noosers +nooses +nooshin +noosing +nootka +nootkan +nootsack +noowwwww +nooz +noozel +nopadoe +nopadol +nopal +nopala +nopalea +nopalry +nope +noph +nophah +nophaie +nopi +nopinene +nopnarong +nops +nopuk +nora +norac +norad +norah +noraly +norard +norasprings +norate +noration +norback +norbecker +norbergite +norbert +norbertine +norberto +norbett +norbo +norborne +norby +norc +norcal +norcamphane +norcatur +norce +norco +norcross +norczen +nord +norda +nordberg +nordborg +nordcaper +nordeck +nordell +norden +nordenmarkia +nordenskiold +nordest +nordgronland +nordh +nordhausen +nordheim +nordic +nordicism +nordicist +nordicity +nordicize +nordick +nordine +nordjylland +nordkivu +nordland +nordley +nordling +nordman +nordmann +nordmarkite +nordoff +nordostsee +nordouest +nordquist +nords +nordskog +nordstrom +nordvang +nore +norean +noreast +noreaster +nored +noreen +norega +norel +norelin +norene +noreorg +noresize +norfleet +norfolk +norfolkian +norfork +norga +norgaard +norge +norgine +norgorod +norholt +nori +noria +noric +norie +noriega +noriegist +norihei +norikatsu +norikazu +noriko +norimon +norina +norine +norio +noris +norisk +norite +noriyuki +norka +norkah +norke +norki +norl +norland +norlander +norlandism +norleucine +norlina +norm +norma +normal +normalacy +normalbrash +normalcies +normalcy +normale +normalism +normalist +normalities +normality +normalize +normalized +normalizer +normalizes +normalizing +normally +normalness +normalnimi +normalniy +normals +normalville +norman +normanby +normand +normandin +normanesque +normanfrench +normangee +normanish +normanism +normanist +normanize +normanized +normanizer +normanly +normann +normanna +normannia +normannic +normanpark +normans +normanton +normantown +normated +normatively +normed +norment +norming +normington +normless +normoblast +normoblastic +normocyte +normocytic +normotensive +norms +norn +norna +nornal +norndc +norndon +nornehan +norng +nornicotine +nornorwest +norns +nornsc +noro +norodeen +norodom +noronha +noropianic +norphlet +norpinic +norpondo +norra +norrbottens +norri +norridgewock +norrie +norring +norrington +norris +norriscity +norrish +norristown +norroway +norroy +norry +norse +norseceltic +norsel +norseland +norseler +norseman +norsemen +norsk +norstar +norstrand +norte +nortee +nortenyo +north +northadams +northam +northamherst +northamity +northampton +northandover +northanson +northapollo +northaugusta +northaurora +northbabylon +northbangor +northbay +northbeach +northbend +northbenton +northbergen +northberwick +northboro +northborough +northboston +northbranch +northbridge +northbrook +northcanton +northcarver +northcentral +northchatham +northchicago +northchili +northclymer +northcollins +northconcord +northconway +northcott +northcreek +northdakota +northdighton +northeast +northeaster +northeastern +northeasters +northeastham +northeaston +northeners +northenglish +norther +northern +northerner +northerners +northernize +northernly +northernmost +northernness +northerns +northers +northerton +northest +northevans +northfield +northflowing +northford +northfork +northfreedom +northgarden +northgrafton +northgranby +northgreece +northhampton +northhaven +northhero +northhoosick +northhudson +northing +northings +northisland +northjackson +northjava +northjersey +northjudson +northkorea +northlake +northlander +northliberty +northlight +northlima +northloup +northman +northmatewan +northmiami +northmost +northnehan +northness +northnewton +northnorwich +northolmsted +northome +northoxford +northpitcher +northplains +northplatte +northpomfret +northport +northpowder +northpownal +northprairie +northquincy +northreading +northridge +northriver +northrop +northrose +norths +northsalem +northsanjuan +northside +northsouth +northspring +northstar +northstreet +northsutton +northtroy +northtruro +northturner +northumber +northumbria +northumbrian +northup +northupite +northvale +northvernon +northvietnam +northville +northwahgi +northwales +northward +northwardly +northwards +northwebster +northwest +northwester +northwestern +northwindham +northwood +northzulch +nortier +nortius +norton +nortonhill +nortonville +norumbega +norusis +norval +norvatoff +norvegii +norvegiiu +norvegiya +norvell +norvelt +norvie +norville +norwalk +norward +norwards +norway +norwegian +norwegians +norweigan +norwell +norwest +norwester +norwestward +norwich +norwin +norwood +norworth +nosairi +nosairian +nosal +nosarian +nosave +nosc +nose +nosean +noseanite +nosebags +noseband +nosebanded +nosebands +nosebleed +nosebleeds +nosebone +noseburn +nosed +nosedive +nosegay +nosegaylike +nosegays +noseherb +nosehole +noseless +noselessly +noselessness +noselike +noselite +nosema +nosematidae +nosepiece +nosepinch +noser +noses +nosesmart +nosethirl +nosetiology +nosewards +nosewheel +nosewise +noseworthy +nosey +nosferatu +nosh +noshade +noshed +nosher +noshers +noshes +noshing +nosier +nosiest +nosig +nosily +nosine +nosiness +nosing +nosings +nosir +nosism +nosko +noslab +nosocomial +nosocomium +nosogenesis +nosogenetic +nosogenic +nosogeny +nosographer +nosographic +nosography +nosohaemia +nosohemia +nosological +nosologist +nosology +nosomania +nosomycosis +nosonomy +nosophobia +nosophyte +nosopoetic +nosopoietic +nosotaxy +nosotrophy +nosrat +noss +nosseck +nossek +nostalghia +nostalgia +nostalgie +nostalgii +nostalgy +noster +nostic +nostoc +nostocaceae +nostocaceous +nostochine +nostologic +nostology +nostomania +nostra +nostradamus +nostrificate +nostriled +nostrility +nostrils +nostrilsome +nostro +nostromo +nostrum +nostrums +nosu +nosultem +nosy +nota +notabilia +notabilities +notability +notable +notableness +notables +notably +notacanthid +notacanthoid +notacanthous +notacanthus +notaeal +notaeum +notaire +notal +notalgia +notalgic +notalia +notan +notandum +notani +notarial +notarially +notariate +notaries +notarikon +notarization +notarize +notarized +notarizes +notarizing +notary +notaryship +notasulga +notated +notates +notating +notation +notational +notations +notative +notator +notavail +notaval +notbilities +notburga +notchboard +notched +notchel +notcher +notchers +notches +notchful +notching +notchweed +notchwing +notchy +note +notebook +notebooks +notecase +notecases +notecnirp +noted +notedly +notedness +notehead +noteholder +notekin +notelaea +noteless +notelessly +notelessness +notelet +notepad +notepads +notepaper +notequals +noter +noters +noterse +notes +notesfiles +notesmail +notetab +notewise +noteworthily +noteworthy +nothaas +notharctid +notharctidae +notharctus +nothave +nother +nothin +nothing +nothingarian +nothingism +nothingist +nothingize +nothingless +nothingly +nothingness +nothingology +nothings +nothingware +nothofagus +notholaena +nothosaur +nothosauri +nothosaurian +nothosaurus +nothous +noti +noticable +noticably +notice +noticeable +noticeably +noticed +noticer +notices +noticing +notidani +notidanian +notidanid +notidanidae +notidanidan +notidanoid +notidanus +notifiable +notification +notificator +notified +notifier +notifiers +notifies +notify +notifyee +notifying +notifymail +noting +notion +notionable +notional +notionalist +notionality +notionally +notionalness +notionary +notionate +notioned +notionist +notionless +notions +notiosorex +notitia +notkerian +notley +notlob +notocentrous +notocentrum +notochord +notochordal +notodontian +notodontid +notodontidae +notodontoid +notogaea +notogaeal +notogaean +notogaeic +notommatid +notommatidae +notonecta +notonectal +notonectid +notonectidae +notopodial +notopodium +notopterid +notopteridae +notopteroid +notopterus +notorhizal +notorhynchus +notorieties +notoriety +notorious +notoriously +notornis +notoryctes +notostraca +nototherium +nototrema +nototribe +notour +notourly +notozer +notpad +notredame +notrees +notropis +nots +notse +notself +notsi +notsohumble +nottawa +notte +nottinghams +nottinghill +nottoomuch +nottoway +notu +notum +notungulata +notungulate +notus +notwork +nouadhibou +nouakchott +nouamou +noubar +nouel +noufo +nougat +nougatine +nougats +nought +noughts +noujeim +noula +noumea +noumeaite +noumeite +noumena +noumenal +noumenalism +noumenalist +noumenality +noumenalize +noumenally +noumenism +noumenon +noumou +noumoudara +noun +nouna +nounal +nounally +nounan +nounce +nounclass +nouned +nouni +nounize +nounless +nounouma +nouns +noup +nour +noura +nouri +nourice +nourish +nourishable +nourished +nourisher +nourishers +nourishes +nourisheth +nourishing +nourishingly +nourishment +nourishments +nouriture +noury +nous +nousel +nousle +nouther +noutzu +nouveau +nouveaux +nouvelle +nova +novacek +novack +novaculite +novadays +novae +novak +novalia +novanglian +novanglican +novantique +novara +novarese +novaro +novarro +novas +novastation +novate +novatian +novatianism +novatianist +novation +novative +novato +novator +novatory +novatrix +novaya +novcic +novel +novelcraft +noveldom +novelese +novelesque +novelet +novelette +noveletter +novelettes +novelettish +novelettist +noveletty +novelia +novelint +novelish +novelising +novelism +novelist +novelistic +novelists +novelization +novelize +novelized +novelizes +novelizing +novell +novella +novellas +novelle +novelless +novelli +novellike +novello +novelly +novelness +novelry +novels +novelties +novelty +novelwright +novem +novemali +november +novemberish +novembers +novemcostate +novemfid +novemlobate +novemnervate +novena +novenae +novenary +novenas +novendial +novene +novennial +novercal +noverify +novesty +novethan +novetzke +novex +novgorod +novgrod +novi +novia +novial +noviate +noviates +novic +novice +novicehood +novicelike +novices +noviceship +noviciate +novick +novih +novii +noviko +novikoff +novikov +novilunar +novinar +novinger +novinsky +noviomagum +novis +novisedlak +novitasmas +novitial +novitiates +novitiation +novity +noviy +novoa +novocain +novocaine +novodamus +novogo +novom +novomu +novorossijsk +novorossiysk +novos +novoseltzev +novosiolov +novostalano +novostey +novosti +novostnoe +novotna +novotny +novouygur +novoy +novy +nowack +nowadays +nowai +nowait +nowak +nowanights +nowata +noway +noways +nowdead +nowdeceased +nowdefunct +nowed +nowel +nowell +nowgong +nowhat +nowhen +nowhence +nowhere +nowhereness +nowheres +nowhit +nowhither +nowicki +nowland +nowlegendary +nowlin +nowness +nowobsolete +nowrap +nowroze +nows +nowstandard +nowt +nowy +noxa +noxal +noxally +noxapater +noxen +noxious +noxiously +noxiousness +noxon +noyade +noyau +noye +noyes +noza +noze +nozer +nozi +nozzler +nozzles +npac +npack +npannoying +npcomplete +npeel +npfx +nphard +npictedit +npongue +npongwe +nprdc +nproc +nput +nqojane +nrao +nravitsa +nravitsya +nrdcnola +nrebele +nripes +nrlwashdc +nroff +nrtc +nruanghmei +nrxdoc +nsadop +nsakara +nsanje +nsanta +nsap +nsare +nsari +nsaw +nscee +nsco +nscprl +nsdyok +nsec +nsei +nsele +nsenga +nsesonkpa +nset +nsfnet +nsgeng +nsho +nsihaa +nsipo +nslookup +nsls +nsogbu +nsongo +nsongwa +nsose +nssc +nssdc +nssdca +nssp +nstcpvax +nsungali +nsungli +nsungni +nswase +nswc +nswose +nswses +nsyptsmh +ntaapum +ntab +ntamante +ntaperi +ntau +ntbugtraq +ntcham +ntchisi +ntcm +ntcmdprompt +ntds +ntelpac +ntem +ntembwe +ntenyi +nter +nterface +ntersolv +ntfoss +ntfs +nthali +nthenyi +nthlevel +nthly +nthyear +ntii +ntika +ntinash +ntiu +ntja +ntlakyapamuk +ntlc +ntmail +ntogapid +ntogapig +ntoleh +ntomba +ntombabikoro +ntombabolia +ntombainongo +ntong +ntoumou +ntozi +ntpadmin +ntprel +ntribou +ntribu +ntrubo +ntsaayi +ntsc +ntscho +ntshanti +ntsiam +ntsu +ntswar +nttest +ntui +ntuku +ntum +ntumba +ntumu +ntxe +ntype +nuacc +nuadhu +nuakata +nual +nualart +nuanced +nuances +nuang +nuangola +nuatjim +nuaulu +nuba +nubbier +nubbiest +nubbin +nubbins +nubble +nubbles +nubblier +nubbling +nubbly +nubby +nubecula +nuber +nubi +nubian +nubians +nubias +nubieber +nubiferous +nubiform +nubigenous +nubilate +nubilation +nubilities +nubility +nubilous +nubilum +nubs +nucal +nucament +nucellar +nucellus +nucha +nuchal +nuchalgia +nuciculture +nuciferous +nuciform +nucin +nucivorous +nucla +nucleal +nuclear +nucleary +nuclease +nucleated +nucleates +nucleating +nucleation +nucleations +nucleator +nucleators +nuclei +nucleiferous +nucleiform +nuclein +nucleinase +nucleofugal +nucleoid +nucleolar +nucleolated +nucleole +nucleolinus +nucleoloid +nucleolysis +nucleon +nucleone +nucleonic +nucleonics +nucleons +nucleopetal +nucleoplasm +nucleoside +nucleotides +nucleuses +nuclidic +nuco +nucula +nuculacea +nuculanium +nucule +nuculid +nuculidae +nuculiform +nuculoid +nucum +nuda +nudate +nudation +nudd +nuddle +nude +nudely +nudeness +nudens +nuder +nudes +nudest +nudge +nudged +nudger +nudgers +nudges +nudging +nudibranch +nudibranchia +nudicaudate +nudicaul +nudie +nudies +nudifier +nudiflorous +nudiped +nudish +nudism +nudisms +nudist +nudists +nuditarian +nudities +nudity +nudnick +nudnicks +nudnik +nudniks +nudoo +nudum +nuea +nueces +nuella +nuer +nues +nuestros +nuetzi +nueva +nueve +nuevo +nufawa +nuff +nuffield +nufo +nufoor +nugaal +nugacious +nugacity +nugane +nugator +nugatoriness +nugbo +nuge +nugent +nuget +nuggah +nuggar +nuggets +nuggety +nuggit +nugify +nugil +nugilogue +nuguei +nuguera +nugumiut +nugunu +nuguor +nuguria +nuha +nuhayyan +nuhs +nuhub +nuild +nuima +nuisance +nuisancer +nuisances +nuit +nuits +nujnogo +nujoma +nujum +nuka +nukapu +nuke +nuked +nukem +nukes +nukha +nuki +nuking +nukoro +nuksee +nuku +nukualofa +nukufetau +nukuhiva +nukuhivan +nukuini +nukulaila +nukuma +nukumanu +nukunono +nukunonu +nukunukubara +nukuoro +nukura +nukuria +nules +null +nullable +nullah +nullary +nulled +nullibicity +nullibility +nullibist +nullificator +nullifidian +nullified +nullifier +nullifiers +nullifies +nullifying +nulling +nullipara +nulliparity +nulliparous +nullipennate +nullipennes +nulliplex +nullipore +nulliporous +nullism +nullisome +nullisomic +nullities +nullity +nulliverse +nullo +nulls +nulty +nulu +numa +numac +numagenan +numan +numana +numand +numanggang +numani +numantine +numasa +numb +numba +numbami +numbaz +numbed +number +numberable +numberdword +numbered +numberer +numberers +numberest +numberful +numberic +numbering +numberings +numberless +numberm +numberone +numberous +numbers +numbersome +numbest +numbfish +numbiai +numbing +numbingly +numble +numbles +numbly +numbness +numbs +numbskull +numbu +numbulwam +numbulwar +numda +numdah +numdays +nume +numee +numegaz +numemoreans +numen +numenius +numenor +numerably +numerality +numerals +numerant +numerary +numerated +numerates +numerating +numeration +numerations +numerative +numerator +numerators +numeric +numerical +numerically +numerics +numerist +numero +numerologist +numerology +numerose +numerosity +numerous +numerously +numerousness +numerowia +numfor +numglyphs +numic +numida +numidae +numidia +numidian +numididae +numidinae +numine +numinism +numinously +numismatical +numismatics +numismatists +numkena +numlock +nummary +nummela +nummelin +nummi +nummiform +nummular +nummularia +nummulary +nummulated +nummulation +nummuline +nummulinidae +nummulite +nummulites +nummulitic +nummulitidae +nummulitoid +nummuloidal +nummus +numps +numsel +numskull +numskulled +numskullery +numskullism +numskulls +numu +numud +numukan +numurana +nuna +nunaa +nunapitchuk +nunat +nunatak +nunbird +nunch +nuncheon +nunciate +nunciative +nunciatory +nunciature +nuncio +nuncios +nuncioship +nuncle +nuncles +nuncupate +nuncupation +nuncupative +nuncupatory +nunda +nundinal +nundinate +nundination +nundine +nundoro +nune +nunes +nunez +nung +nungali +nungesser +nunggubuju +nunggubuyan +nunggubuyu +nungu +nunguda +nungura +nunguraba +nunheim +nunhood +nuni +nuniali +nunica +nunivak +nuniya +nunk +nunki +nunku +nunky +nunlet +nunlike +nunn +nunnally +nunnari +nunnated +nunnation +nunnelly +nunneries +nunnery +nunney +nunni +nunnify +nunnish +nunnishness +nuno +nunold +nunpa +nunquam +nuns +nunship +nuntel +nunu +nunukan +nunuma +nunusaku +nunuta +nunzi +nunzia +nunzio +nunzo +nuoku +nuoro +nupani +nupass +nupe +nupeci +nupecidji +nupecizi +nupegwari +nupenchi +nupencizi +nuphar +nuprometheus +nuptiality +nuptialize +nuptially +nuptials +nuquay +nuque +nuquini +nura +nuraghe +nurdin +nuremberg +nuremburg +nurestan +nurettin +nurguni +nurhag +nurhan +nuri +nuria +nuriakhmetov +nurie +nuristan +nuristani +nurit +nurk +nurly +nurmakhanov +nurmela +nurmi +nurney +nuro +nurra +nurradin +nursable +nurse +nursed +nursedom +nursegirl +nursehound +nursekeeper +nursekin +nurselet +nurselike +nurseling +nursemaid +nursemaids +nurser +nurseries +nursers +nursery +nurserydom +nurseryful +nurserymaid +nurserymaids +nurseryman +nurserymen +nurses +nursetender +nursie +nursing +nursingly +nursings +nursle +nursling +nurslings +nursy +nurturable +nurtural +nurturance +nurture +nurtured +nurtureless +nurturer +nurturers +nurtures +nurtureship +nurturing +nuru +nurue +nuruma +nury +nusa +nusairis +nusakan +nusalaut +nusan +nusapenida +nusari +nusawele +nusawilih +nusayri +nusc +nusfiah +nushagak +nussbaum +nusser +nussle +nusu +nuswotar +nutant +nutarian +nutation +nutational +nutations +nutbreaker +nutbrown +nutcake +nutcracker +nutcrackers +nutcrackery +nutgall +nutgrasses +nuthall +nuthatches +nuthin +nuthook +nuthouse +nuthouses +nuti +nutjobber +nutka +nutlet +nutlets +nutlike +nutmeat +nutmeats +nutmeg +nutmegged +nutmeggy +nutmegs +nutpecker +nutpick +nutpicks +nutramin +nutrias +nutrice +nutricial +nutricism +nutrients +nutrify +nutriment +nutrimental +nutriments +nutrioso +nutritial +nutrition +nutritional +nutritionist +nutritiously +nutritively +nutritory +nuts +nutseed +nutshells +nuttall +nuttallia +nuttalliasis +nuttalliosis +nutted +nutter +nutters +nuttery +nuttier +nuttiest +nuttily +nuttiness +nutting +nuttinglake +nuttish +nuttishness +nuttsville +nutty +nuture +nutyam +nutzbar +nutzu +nuucp +nuuk +nuumber +nuvit +nuwa +nuwab +nuwakot +nuwara +nuwes +nuxaa +nuxi +nuxin +nuyen +nuyoo +nuyten +nuzhet +nuzzer +nuzzerana +nuzzle +nuzzled +nuzzler +nuzzlers +nuzzles +nuzzling +nvhal +nvidia +nvram +nwalipenja +nwalungu +nwer +nwesi +nwname +nwnet +nwschasn +nxxxxx +nyaaja +nyaana +nyaanga +nyabadan +nyabasi +nyabea +nyabo +nyabungu +nyabwa +nyac +nyacadsci +nyack +nyada +nyadu +nyag +nyago +nyah +nyaheun +nyahkur +nyaho +nyai +nyakisisa +nyakur +nyakusa +nyakwai +nyakyusa +nyala +nyalesund +nyali +nyalikilo +nyalitchabi +nyam +nyamasa +nyamatom +nyambara +nyambo +nyamdoo +nyamkat +nyamnyam +nyamnyamkebi +nyamtam +nyamuka +nyamusa +nyamusamolo +nyamwanga +nyamwesi +nyamwezi +nyamzax +nyandang +nyandarua +nyandesawai +nyandung +nyaneka +nyang +nyanga +nyangali +nyangatom +nyangbara +nyangbo +nyangeya +nyangga +nyangia +nyangiya +nyango +nyangori +nyangumarda +nyangumarta +nyangumata +nyangwara +nyani +nyanja +nyankole +nyankore +nyanoun +nyanyembe +nyanza +nyao +nyar +nyari +nyaro +nyarong +nyarueng +nyarweng +nyasa +nyasaland +nyasunda +nyatso +nyaturu +nyatwe +nyaura +nyaw +nyaya +nybble +nybbles +nybblize +nyberg +nycboe +nyce +nychthemer +nychthemeral +nychthemeron +nyctaginia +nyctalope +nyctalopia +nyctalopic +nyctalopy +nyctanthes +nyctea +nyctereutes +nycteribiid +nycteridae +nycterine +nycteris +nycticorax +nyctimene +nyctinastic +nyctinasty +nyctipelagic +nyctitropic +nyctitropism +nyctophobia +nycturia +nydia +nyedebwa +nyefu +nyegress +nyekyosa +nyel +nyele +nyem +nyemathi +nyemba +nyen +nyenebo +nyenege +nyengato +nyengatu +nyengo +nyeo +nyep +nyepo +nyepu +nyerere +nyeri +nyers +nyet +nyetwork +nyeu +nyfiken +nygren +nyidu +nyigina +nyiha +nyika +nyikasafwa +nyikobe +nyikuben +nyikyusa +nyilamba +nyilem +nyima +nyiman +nyimang +nyimatali +nyimatli +nyinchi +nyindrou +nyindu +nyininy +nyirabu +nyiropo +nyisam +nyising +nyisunggu +nyixa +nykvarn +nyla +nyland +nylast +nylon +nylons +nyman +nymc +nymegen +nymil +nymph +nympha +nymphae +nymphaea +nymphaeaceae +nymphaeum +nymphal +nymphalid +nymphalidae +nymphalinae +nymphaline +nymphas +nymphe +nympheal +nymphean +nymphet +nymphets +nymphettes +nymphic +nymphical +nymphid +nymphine +nymphipara +nymphiparous +nymphish +nymphitis +nymphlike +nymphlin +nymphly +nympho +nymphoides +nympholepsia +nympholepsy +nympholept +nympholeptic +nymphonacea +nymphos +nymphosis +nymphotomy +nymphs +nymphwise +nymylan +nynaka +nynex +nynexst +nynorsk +nyny +nyok +nyokon +nyole +nyomakere +nyong +nyonga +nyongnepa +nyongwe +nyonyo +nyonyosi +nyoo +nyoole +nyoolne +nyoon +nyooz +nyore +nyoro +nyoroganda +nyorotoro +nyos +nype +nypho +nyquist +nyre +nyree +nyroca +nysa +nyser +nyssa +nyssaceae +nystagmic +nystagmus +nystrom +nything +nyua +nyubi +nyukri +nyukwur +nyule +nyuli +nyulnyulan +nyunga +nyungar +nyungwe +nyuong +nyuwar +nyxis +nzak +nzakara +nzamba +nzangi +nzangyim +nzanyi +nzara +nzare +nzari +nzas +nzebi +nzema +nzerekore +nzikini +nziku +nzima +nzime +nzinzihu +nzlp +nzobe +nzomboy +nzong +nzonyu +nzoro +nzwani +oacis +oacoma +oadal +oaeh +oafdom +oafish +oafishly +oafishness +oafley +oafs +oahost +oahu +oakar +oakberry +oakbluffs +oakboro +oakboy +oakcity +oakcreek +oakdale +oakenfull +oakenshaw +oakenshield +oaker +oakes +oakesdale +oakesia +oakfield +oakford +oakforest +oakgrove +oakhall +oakham +oakharbor +oakhill +oakhurst +oakie +oakisland +oakland +oaklandcity +oaklandmills +oaklawn +oaklet +oakley +oaklike +oakling +oaklisp +oaklyn +oakman +oakmont +oaknsc +oakover +oakpark +oakridge +oakrun +oaks +oakscorners +oakton +oaktongue +oaktown +oakum +oakums +oakvale +oakview +oakville +oakweb +oaky +oanes +oannes +oapec +oappcomm +oapputil +oarage +oarca +oarcock +oared +oarfish +oarhole +oarial +oarialgia +oaric +oaring +oariocele +oariopathic +oariopathy +oariotomy +oaritic +oaritis +oarium +oark +oarless +oarlike +oarlock +oarlocks +oarlop +oarman +oars +oarsman +oarsmanship +oarsmen +oarswoman +oarweed +oary +oasal +oasean +oasis +oasitic +oast +oasthouse +oastler +oasts +oatbin +oatcake +oatcakes +oatear +oaten +oatenmeal +oater +oaters +oates +oatfowl +oath +oathay +oathed +oathful +oathlet +oaths +oathworthy +oatland +oatlike +oatman +oatmeal +oatmeals +oats +oatseed +oaty +oaxaca +oayana +oazaca +obadiah +obaka +obal +obamba +obambulate +obambulation +obambulatory +obamiwamon +oban +obang +obanhein +obanliku +obara +obardi +obarska +obas +obatzter +obbenite +obbligati +obbligato +obbligatos +obce +obclavate +obclude +obcompressed +obconic +obconical +obcordate +obcordiform +obcuneate +obdeltoid +obdolbannim +obdolbannimi +obdormition +obduction +obduracies +obdurated +obdurately +obdurateness +obdurating +obduration +obeah +obeahism +obeahisms +obeahs +obeche +obed +obeda +obededom +obediah +obedience +obediences +obediency +obedient +obediential +obedientiar +obedientiary +obediently +obedjiwan +obeid +obeidat +obeisance +obeisances +obeisantly +obeism +obeli +obelia +obeliac +obelial +obelion +obeliscal +obeliscar +obeliskoid +obelisks +obelism +obelix +obelize +obelus +obenauf +obenchain +ober +oberat +oberdorff +oberflaeche +oberg +obergericht +oberhammer +oberhelman +oberhofer +oberkugen +oberland +oberleutnant +oberley +oberlitz +obermeyer +obermyer +obernburg +oberndorfer +oberon +oberpriller +obersdorf +obershall +oberst +oberstar +oberstein +oberster +obert +oberursel +oberwart +obesely +obeseness +obesities +obesity +obex +obey +obeyable +obeyed +obeyedst +obeyer +obeyers +obeyeth +obeying +obeyingly +obeys +obezjan +obfuscable +obfuscated +obfuscates +obfuscating +obfuscation +obfuscator +obfuscators +obfuscity +obfuscous +obgwo +obian +obiang +obichno +obichnomy +obichnoy +obidicut +obie +obiero +obiism +obil +obileba +obini +obio +obion +obis +obisk +obispo +obit +obiter +obits +obitual +obituarian +obituaries +obituarily +obituarist +obituarize +obituary +obiwan +obiye +objasnenie +object +objectable +objectant +objectation +objectative +objected +objectee +objecter +objectfile +objecthood +objecting +objection +objectional +objectioner +objectionist +objections +objectival +objectivate +objective +objectivec +objectively +objectives +objectivism +objectivist +objectivize +objectize +objectless +objectlessly +objectors +objectpal +objectpascal +objects +objicient +objilsya +objranging +objscan +objuration +objure +objurgate +objurgated +objurgates +objurgating +objurgation +objurgations +objurgative +objurgator +objurgatory +objurgatrix +oblacima +oblak +oblaku +oblanceolate +oblast +oblasti +oblasts +oblately +oblateness +oblates +oblation +oblational +oblationary +oblations +oblatory +oblectate +oblectation +oblection +obley +obligability +obligable +obligancy +obligant +obligated +obligates +obligati +obligating +obligation +obligational +obligations +obligative +obligato +obligator +obligatorily +obligatory +obligatos +obligatum +obliged +obligedly +obligedness +obligee +obligement +obliger +obligers +obliges +obliging +obligingly +obligingness +obligistic +obligor +obliquate +obliquation +oblique +obliqued +obliquely +obliqueness +obliques +obliquing +obliquities +obliquitous +obliquity +obliquus +obliterable +obliterated +obliterates +obliterating +obliteration +obliterative +obliterator +obliterators +oblivescence +oblivial +obliviality +oblivion +oblivionate +oblivionist +oblivionize +oblivions +oblivious +obliviously +obliviscence +obliviscible +oblo +oblocutor +oblomno +oblongata +oblongatae +oblongatal +oblongatas +oblongated +oblongish +oblongitude +oblongly +oblongness +oblongs +obloquial +obloquies +obloquious +obloquy +oblou +obmutescence +obmutescent +obnebulate +obnounce +obnoxiety +obnoxious +obnoxiously +obnubilate +obnubilated +obnubilation +obnunciation +obock +oboe +oboes +obogolo +obogwi +oboists +obol +obolaria +obolary +obole +obolensky +obolet +obolo +obols +obolus +obomegoid +obongo +obonya +oborzel +oboso +obosrali +obote +oboth +obouvki +oboval +obovate +obovoid +obpyramidal +obpyriform +obratil +obratinaya +obratniy +obratno +obrazil +obrecht +obree +obregon +obren +obreption +obreptitious +obrian +obrien +obro +obrogate +obrogation +obrotund +obruchev +obrusniak +obry +obryan +obscene +obscenely +obsceneness +obscener +obscenest +obscenities +obscenity +obschem +obscura +obscurancy +obscurant +obscurantic +obscurantism +obscurantist +obscuras +obscuration +obscurative +obscure +obscured +obscuredly +obscurely +obscurement +obscureness +obscurer +obscurers +obscures +obscurest +obscuring +obscurism +obscurist +obscurities +obscurity +obsecrate +obsecration +obsecratory +obsede +obsequence +obsequent +obsequial +obsequience +obsequies +obsequiosity +obsequiously +obsequity +obsequium +observable +observably +observance +observances +observancy +observandum +observant +observantine +observantist +observantly +observation +observations +observative +observatory +observe +observed +observedly +observer +observers +observership +observes +observest +observeth +observing +observingly +obsessed +obsesses +obsessing +obsessingly +obsession +obsessional +obsessionist +obsessions +obsessive +obsessively +obsessives +obsessor +obsessors +obsex +obshalsya +obshemu +obsidianite +obsidians +obsidional +obsidionary +obsidious +obsignate +obsignation +obsignatory +obsolesce +obsolesced +obsolescence +obsolescent +obsolescing +obsoleseence +obsolete +obsoleted +obsoletely +obsoleteness +obsoletes +obsoleting +obsoletion +obsoletism +obstacle +obstacles +obstanovku +obstetrical +obstetricate +obstetrician +obstetrics +obstetricy +obstetrist +obstetrix +obstinacies +obstinacious +obstinance +obstinate +obstinately +obstination +obstinative +obstipation +obstreperate +obstreperous +obstriction +obstringe +obstruct +obstructant +obstructed +obstructedly +obstructer +obstructers +obstructing +obstruction +obstructions +obstructive +obstructor +obstructors +obstructs +obstruents +obstupefy +obtain +obtainable +obtainably +obtainal +obtainance +obtained +obtainer +obtainers +obtaineth +obtaining +obtainment +obtains +obtect +obtected +obtemper +obtemperate +obtenebrate +obtention +obtest +obtestation +obtrectation +obtriangular +obtruded +obtruder +obtruders +obtrudes +obtruding +obtruncate +obtruncation +obtruncator +obtrusionist +obtrusions +obtrusively +obtund +obtundent +obtunder +obtundity +obturate +obturation +obturator +obturatory +obturbinate +obtusangular +obtuse +obtusely +obtuseness +obtuser +obtusest +obtusifid +obtusilobous +obtusion +obtusish +obtusity +obtusosity +obtw +obuasi +obubra +obudu +obul +obulom +obumbrant +obumbrate +obumbration +obung +obura +obvallate +obvelation +obvention +obversely +obverses +obversion +obvert +obvertend +obverting +obverts +obviable +obviate +obviated +obviates +obviating +obviation +obviations +obviative +obviator +obviators +obviosity +obvious +obviously +obviousness +obvolute +obvoluted +obvolution +obvolutive +obvolve +obvolvent +obwald +obwalden +obweyer +obzavelsya +obzor +obzory +ocaina +ocaisionally +ocala +ocam +ocamo +ocampo +ocana +ocarinas +ocate +occamism +occamist +occamistic +occamite +occams +occamy +occase +occasion +occasionable +occasional +occasionally +occasionary +occasioned +occasioner +occasioning +occasionings +occasionless +occasions +occasive +occhetto +occhini +occhio +occhipinti +occidentally +occidentals +occidents +occiduous +occipiputs +occipita +occipital +occipitalis +occipitally +occipitootic +occiput +occiputs +occitan +occitani +occitone +occluded +occludent +occludes +occluding +occlusal +occluse +occlusions +occlusometer +occlusor +occoquan +occult +occulted +occulter +occulters +occulting +occultism +occultist +occultists +occultly +occultness +occults +occupable +occupance +occupancies +occupancy +occupant +occupants +occupation +occupational +occupations +occupative +occupiable +occupied +occupier +occupiers +occupies +occupieth +occupy +occupying +occur +occuring +occurrance +occurred +occurredin +occurrence +occurrences +occurrent +occurring +occurs +occursion +occursive +ocean +oceana +oceanarium +oceanaut +oceanauts +oceanbeach +oceancity +oceaned +oceanet +oceanful +oceangate +oceangoing +oceangrove +oceanian +oceanic +oceanican +oceanid +oceanity +oceano +oceanography +oceanologist +oceanology +oceanophyte +oceanpark +oceanport +oceans +oceanshores +oceanside +oceansprings +oceanus +oceanview +oceanville +oceanward +oceanwards +oceanways +oceanwise +ocebe +ocellar +ocellary +ocellate +ocellated +ocellation +ocelli +ocellicyst +ocellicystic +ocelliferous +ocelliform +ocelligerous +ocellus +oceloid +ocelot +ocelots +oceola +ochava +ochavo +ochebe +ochekwu +ochelata +ochen +ocher +ochered +ocherish +ocherous +ochers +ochery +ocheve +ocheyedan +ochi +ochidore +ochiherero +ochikwanyama +ochindonga +ochiom +ochirbat +ochlesis +ochlesitic +ochletic +ochlocknee +ochlocracy +ochlocrat +ochlocratic +ochlophobia +ochlophobist +ochman +ochna +ochnaceae +ochnaceous +ochoa +ochola +ochone +ochopee +ochotona +ochotonidae +ochozoma +ochraceous +ochrana +ochre +ochrea +ochreate +ochred +ochreous +ochres +ochrimenko +ochring +ochro +ochrocarpous +ochrochine +ochrogaster +ochroid +ochroleucous +ochrolite +ochroma +ochronosis +ochronosus +ochronotic +ochrous +ochs +ochsen +ochsenknecht +ocht +ocialist +ocilla +ocimum +ociw +ocker +ocko +oclain +ocllo +oclock +ocmap +ocms +ocneria +ocnovnom +ocode +ocoee +ocom +ocone +oconee +oconnell +oconnor +oconomowoc +oconto +ocontofalls +ocote +ocotea +ocotepec +ocotepeque +ocotillo +ocotillos +ocotla +ocotlan +ocozingo +ocozocoautla +ocque +ocracoke +ocracy +ocran +ocrea +ocreaceous +ocreatae +ocreate +ocreated +ocresund +ocros +octachloride +octachord +octachordal +octachronous +octacnemus +octacolic +octactinal +octactine +octactiniae +octactinian +octad +octadecane +octadecanoic +octadecyl +octadic +octadrachm +octads +octaemeron +octaeteric +octaeterid +octagon +octagonally +octagons +octahedric +octahedrical +octahedrite +octahedroid +octahedrons +octahedrous +octahydrate +octahydrated +octal +octamed +octamerism +octamerous +octameter +octan +octandria +octandrian +octandrious +octanes +octangle +octangles +octangular +octans +octantal +octants +octapla +octaploid +octaploidic +octaploidy +octapodic +octapody +octarch +octarchy +octarine +octarius +octary +octasemic +octastich +octastichon +octastrophic +octastyle +octastylos +octateuch +octaval +octavalent +octavarium +octaves +octavia +octavian +octavic +octavina +octavio +octavius +octavo +octavos +octect +octects +octenary +octene +octennially +octet +octets +octette +octettes +octic +octifid +octillionth +octine +octoad +octoalloy +octoate +octobass +october +octobers +octobrist +octochord +octocoralla +octocorallan +octocorallia +octocotyloid +octodactyl +octodactyle +octodecimal +octodecimo +octodentate +octodianome +octodon +octodont +octodontidae +octodontinae +octoechos +octofid +octofoil +octofoiled +octogamy +octogenary +octogild +octoglot +octogynia +octogynian +octogynious +octogynous +octoic +octoid +octolateral +octolocular +octomeral +octomerous +octometer +octonal +octonare +octonarian +octonarius +octonary +octonematous +octonion +octonocular +octoon +octopartite +octopean +octoped +octopede +octopetalous +octophyllous +octopi +octopine +octoploid +octoploidic +octoploidy +octopod +octopoda +octopodan +octopodes +octopodous +octopods +octopolar +octopuses +octopussy +octoradial +octoradiate +octoradiated +octoreme +octoroons +octose +octosepalous +octospermous +octospore +octosporous +octostichous +octosyllabic +octosyllable +octothorp +octothorpe +octothorpes +octovalent +octoyl +octroi +octroy +octubre +octuor +octuple +octupled +octuples +octuplet +octuplets +octuplex +octuplicate +octupling +octuply +octyl +octylene +octyls +octyne +ocuby +ocuilteco +ocularist +ocularly +oculars +oculary +oculate +oculated +oculauditory +oculi +oculiferous +oculiform +oculigerous +oculina +oculinid +oculinidae +oculinoid +oculist +oculistic +oculists +oculofacial +oculofrontal +oculomotor +oculomotory +oculonasal +oculospinal +oculus +ocurred +ocydrome +ocydromine +ocydromus +ocypete +ocypoda +ocypodan +ocypode +ocypodian +ocypodidae +ocypodoid +ocyroe +ocyroidae +odac +odacidae +odacoid +odal +odalborn +odalisk +odalisks +odalisque +odaller +odalman +odalwoman +odame +odamun +odan +odanah +odasa +odawa +odax +odbc +odbcexpress +oddball +oddballs +odden +odder +oddest +oddeven +oddish +oddities +oddity +oddjob +oddlegs +oddly +oddman +oddment +oddments +oddness +oddnesses +oddput +odds +oddsbud +oddsman +oddysee +odebolt +odeca +odecki +oded +odegaard +odeh +odein +odel +odele +odelet +odelia +odelinda +odell +odella +odelle +odelsthing +odelsting +odem +odemar +oden +odencrantz +odent +odenton +odenville +odeon +odeons +oder +oderago +oderiga +odermar +odes +odessa +odete +odets +odetta +odette +odeum +odezhde +odezhdu +odgers +odic +odically +odie +odienne +odile +odilia +odille +odilon +odim +odin +odinakovie +odinary +odindo +odinga +odinian +odinic +odinism +odinist +odinite +odinitic +odinn +odinochku +odio +odiometer +odionganon +odiosos +odious +odiously +odiousness +odishaw +odissea +odissey +odist +odiumproof +odiums +odius +odki +odlum +odlyzko +odnim +odnom +odnomu +odnoobrazno +odnoy +odnu +odoardo +odobenidae +odobenus +odocoileus +ododop +odograph +odology +odolvidian +odom +odometer +odometers +odometrical +odometry +odomi +odomoter +odon +odonahue +odonata +odone +odonnell +odontagra +odontalgia +odontalgic +odontaspidae +odontaspis +odontatrophy +odontexesis +odontiasis +odontic +odontist +odontitis +odontoblast +odontocele +odontocete +odontoceti +odontocetous +odontoclasis +odontoclast +odontodynia +odontogen +odontogenic +odontogeny +odontograph +odontography +odontoid +odontolcae +odontolcate +odontolcous +odontolite +odontolith +odontologist +odontology +odontoloxia +odontoma +odontomous +odontopathy +odontophoral +odontophore +odontophorus +odontoplast +odontopteris +odontopteryx +odontormae +odontoschism +odontoscope +odontosis +odontosyllis +odontotechny +odontotomy +odontotormae +odontotrypy +odoom +odophone +odor +odorament +odorant +odorants +odorate +odorator +odored +odorful +odoriferant +odoriferous +odorific +odorimeter +odorimetry +odoriphore +odorivector +odorize +odorized +odorizes +odorizing +odorless +odoroff +odorometer +odorosity +odorously +odorousness +odorproof +odors +odostemon +odour +odourful +odours +odri +odrum +odrvdev +odsk +odso +odual +oduber +odul +odules +odum +oduor +odut +odwiedziny +odwyer +odyalombito +odyl +odylic +odylism +odylist +odylization +odylize +odyllic +odynerus +odyssean +odysseus +odyssey +odysseys +odzaga +odzila +odziliwa +odzookers +odzooks +oecanthus +oecd +oecist +oecodomic +oecodomical +oecology +oecoparasite +oecophobia +oecs +oecumenian +oecumenic +oecumenical +oecumenicity +oecus +oedematous +oedemerid +oedemeridae +oedicnemine +oedicnemus +oedipean +oedipus +oedipuses +oedogoniales +oedogonium +oehoendoeni +oeil +oejeblikket +oeksendal +oelberman +oeller +oeloemanda +oelrichs +oelwein +oema +oemalasasch +oemer +oems +oenale +oenaledelha +oenanthate +oenanthe +oenanthic +oenanthol +oenanthole +oenanthyl +oenanthylate +oenanthylic +oenin +oeno +oenocarpus +oenochoe +oenocyte +oenocytic +oenolin +oenological +oenologist +oenology +oenomancy +oenomaus +oenomel +oenometer +oenone +oenophile +oenophiles +oenophilist +oenophobist +oenopoetic +oenothera +oenotrian +oenpelli +oepao +oepn +oeringoep +oerjan +oernulf +oerrs +oertelt +oertop +oesophageal +oesophagi +oesophagus +oestergaard +oesterlein +oestradiol +oestreich +oestrelata +oestrian +oestriasis +oestrid +oestridae +oestrin +oestriol +oestroid +oestrous +oestrual +oestruate +oestruation +oestrum +oestrus +oetting +oetumo +oeuvre +oeuvres +oewaku +ofaie +ofallon +ofany +ofavailable +ofay +ofaye +ofays +ofcourse +ofcparm +ofcparms +ofcuz +ofdecision +ofdelphi +ofelia +ofella +oferikpe +oferror +offa +offaling +offals +offaly +offbeats +offbyone +offcast +offcome +offcut +offdiagonal +offed +offence +offences +offend +offendable +offendant +offended +offendedly +offendedness +offender +offenders +offendible +offending +offendress +offends +offened +offenhaus +offense +offenseful +offenseless +offenseproof +offenses +offensible +offensively +offensives +offer +offerable +offerall +offered +offeree +offerer +offerers +offereth +offering +offerings +offerle +offerman +offeror +offerors +offers +offertorial +offertories +offertory +offest +offf +offgoing +offgrade +offhand +offhanded +offhandedly +offical +office +officeless +officer +officerage +officered +officeress +officerhood +officerial +officering +officerism +officerless +officers +officership +offices +officetoys +official +officialese +officialism +officiality +officialize +officially +officials +officialty +officiant +officiants +officiary +officiated +officiates +officiating +officiation +officiator +officinal +officinally +officiously +offing +offings +offish +offishly +offishness +offit +offizielle +offlavender +offlet +offline +offloaded +offloading +offloads +offlook +offord +offpay +offprints +offpspring +offret +offs +offscape +offscour +offscourer +offscouring +offscourings +offscreen +offscum +offset +offsetpartit +offsets +offshoot +offshoots +offshore +offside +offsider +offspring +offsprings +offtake +offtaste +offtrack +offtype +offuscate +offuscation +offut +offutt +offward +offwards +ofgamma +oficio +ofiform +ofilia +ofjob +ofkeys +oflete +ofombonga +ofonokpan +ofoten +ofra +ofsecond +ofsome +ofstatistics +oftail +oftebro +often +oftener +oftenest +oftenheard +oftenness +oftens +oftentime +oftentimes +ofter +oftest +ofthe +oftly +oftness +oftnmisc +ofttime +ofttimes +oftwhiles +ofunobwam +ofutop +ogaden +ogadenharti +ogaire +ogallah +ogallala +ogam +ogamaru +ogambi +ogami +ogamic +ogan +oganibi +ogar +ogata +ogba +ogbaegbema +ogbaegbenma +ogbah +ogbakiri +ogbe +ogbeoke +ogbesale +ogbia +ogbinya +ogbogolo +ogboin +ogboja +ogboni +ogbronuagum +ogbru +ogburn +ogcocephalus +ogden +ogdensburg +ogdoad +ogdoas +ogea +ogee +ogeed +ogees +ogelthorpe +ogema +oger +ogeron +ogganition +oggilby +ogham +oghamic +oghuz +oghuzuzbek +ogier +ogilvie +ogin +oginome +oginsaga +oginske +ogit +ogival +ogive +ogived +ogives +oglala +ogle +ogled +ogler +oglers +ogles +oglesby +oglethorpe +ogling +ogmic +ognian +ogoda +ogoja +ogoko +ogoni +ogooue +ogooueivindo +ogooueiwindo +ogoouelolo +ogor +ogori +ogorimagongo +ogou +ogoujobi +ogowe +ogpu +ogre +ogreish +ogreishly +ogreism +ogres +ogresses +ogrish +ogrishly +ogrism +ogro +ogrodnik +ogtiern +ogua +ogugu +ogulagha +ogum +ogun +ogunquit +ogura +oguta +oguz +ogyalla +ogygia +ogygian +ohad +ohagan +ohana +ohanaonyen +ohandley +ohanlon +ohannessian +ohara +ohare +oharra +ohashi +ohatchee +ohatsu +ohed +ohel +ohelo +oheneyshiy +ohfileeuh +ohgyre +ohhara +ohhh +ohhhh +ohhhhh +ohia +ohiggins +ohinemuri +ohing +ohio +ohioan +ohioans +ohiocity +ohiolink +ohiopyle +ohiostate +ohiou +ohioville +ohiowa +ohitin +ohley +ohlin +ohlirch +ohlman +ohlrig +ohls +ohmage +ohmages +ohmart +ohmaru +ohmayer +ohmmeters +ohms +ohno +ohoy +ohrid +ohridski +ohsaki +ohsone +ohsu +ohta +ohtake +ohtaki +ohtani +ohtar +ohtomo +ohtori +ohud +ohuel +ohuennaya +ohuhu +oiakiri +oiampi +oiampipucu +oiana +oiapoque +oiba +oibu +oicha +oidioid +oidiomycosis +oidiomycotic +oidium +oifing +oikeus +oikology +oikoplast +oilberry +oilbird +oilbirds +oilcan +oilcans +oilcenter +oilcity +oilcloths +oilcoat +oilcup +oilcups +oilderived +oildom +oiled +oiler +oilers +oilery +oilexporting +oilfields +oilfish +oilheating +oilhole +oilier +oiliest +oilily +oiliness +oiling +oilless +oillessness +oillet +oillike +oilmarket +oilmonger +oilmongery +oilmont +oilometer +oilpaper +oilpapers +oilproducing +oilproof +oilproofing +oilrefining +oils +oilseeds +oilskin +oilskinned +oilskins +oilsprings +oilstock +oilstone +oilstones +oilstove +oiltight +oiltightness +oilton +oiltrough +oilville +oilway +oily +oilyish +oimatsaha +oime +oink +oinked +oinking +oinks +oinochoe +oinology +oinomancy +oinomania +oinomel +ointer +ointers +ointment +ointments +oirat +oirata +oiratkhalkha +oireachtas +oirot +oirya +oisca +oise +oiseau +oiseaux +oiseleur +oisen +oishi +oisin +oisivity +oita +oitava +oithe +oiticica +oium +oiumpian +ojaboli +ojai +ojanjur +ojeda +ojerholm +ojha +ojhe +ojhi +ojibwa +ojibwas +ojibway +ojiga +ojila +ojima +ojinaga +ojirami +ojitla +ojitlan +ojobiano +ojocaliente +ojor +ojos +ojosarco +okaaaaaaayyy +okabe +okabena +okada +okafo +okahandja +okahumpka +okai +okaina +okak +okakura +okalana +okam +okamoto +okan +okanagan +okanagon +okande +okanogan +okapa +okapi +okapia +okapis +okarche +okat +okaton +okauchee +okavango +okavangoland +okawa +okawville +okay +okayama +okayed +okaying +okays +okazaki +okeagbe +okean +okeana +okebu +okee +okeechobee +okeeffe +okeema +okeene +okehampton +okeina +okela +okemah +okemos +okene +okenite +okere +oket +oketo +okey +okeydoke +okfile +okhaldhung +okhaldhunga +okhaldunga +okhlupin +okhotsk +okia +okie +okiek +okii +okin +okinagan +okinawan +okinoerabu +okishima +okitipupa +okiyama +okkervil +okking +okko +okla +oklacity +oklafalaya +oklahannali +oklahoma +oklahomacity +oklahoman +oklahomans +oklaunion +oklawaha +oklee +okmulgee +oknah +okobo +okoboji +okojuwoi +okollo +okolo +okolod +okolona +okom +okomanjang +okon +okona +okonchatelno +okondja +okoniosis +okonite +okonyong +okordia +okorobi +okoroete +okorogung +okorotung +okoume +okoyo +okoyong +okpache +okpamheri +okpe +okpeden +okpela +okpele +okpella +okpoto +okra +okras +okreek +okrent +okrika +okro +okrug +okrugs +oksana +oksapmin +oksepultura +okshoofd +oksoft +oksoo +okstate +oktaha +oktavia +oktenai +oktengban +okthabah +oktl +okuari +okudzhava +okulosho +okumoto +okumura +okun +okuni +okupukupu +okura +okurikan +okurosho +okuru +okuta +okuzawa +okwaniye +okwasar +okwe +olacaceae +olacaceous +olaf +olafsen +olafur +olaguibel +olal +olalla +olam +olamic +olamon +olan +olana +olancha +olancho +oland +olandt +olang +olangchung +olanta +olar +olarova +olarra +olaru +olathe +olaton +olaus +olausmagnus +olav +olavi +olax +olbersia +olbiil +olbrayt +olbrychski +olbrychsky +olca +olcha +olchi +olchis +olcmaciicx +olcmacse +olcott +olcuc +oldajpo +oldandyellow +oldappleton +oldbethpage +oldbridge +oldbuck +oldchatham +oldemeyer +oldenbourg +oldendick +oldendorf +older +oldermost +oldest +oldfangled +oldfashioned +oldfield +oldfieldia +oldfields +oldfish +oldforest +oldforge +oldfort +oldglory +oldgreenwich +oldham +oldhamia +oldhamite +oldhams +oldharbor +oldhat +oldhearted +oldhickory +oldie +oldies +oldish +oldland +oldlanding +oldlyme +oldman +oldmark +oldmission +oldmonroe +oldmystic +oldness +oldnesses +oldnoakes +oldocean +oldodo +oldrich +oldright +olds +oldsaybrook +oldsei +oldsen +oldsmar +oldstation +oldsters +oldstyle +oldstyles +oldtime +oldtimer +oldtimerhood +oldtimers +oldtown +oldwestbury +oldwick +oldwife +oldwomanish +oldworld +olea +oleaceae +oleaceous +oleacina +oleacinidae +oleagine +oleaginous +olean +oleana +oleanders +oleandrin +olearia +oleary +olearysun +olease +oleaster +oleate +olecontainer +olecranal +olecranial +olecranian +olecranoid +olecranon +oledep +oleesa +olefiant +olefine +olefinic +olefins +oleg +oleic +oleiferous +oleilnikov +olein +oleksyshyn +olem +olema +olemiss +olemukseen +olen +olena +olenellidian +olenellus +olenid +olenidae +olenidian +olenine +olenka +olent +olenus +oleo +oleocellosis +oleocyst +oleoduct +oleograph +oleographer +oleographic +oleography +oleomargaric +oleomargarin +oleometer +oleonowski +oleoptene +oleoresin +oleoresinous +oleos +oleose +oleosity +oleostearate +oleostearin +oleothorax +oleous +oleraceae +oleraceous +olereg +olericulture +oleromer +oleron +oles +olesen +oleshko +olesko +olethreutes +olethreutid +oleums +oley +olfact +olfactible +olfaction +olfactive +olfactology +olfactometer +olfactometry +olfactor +olfactories +olfactorily +olfacty +olfson +olga +olham +olhaye +olia +oliana +oliban +olibanum +olibanums +olic +olicova +olid +olidous +olie +oligaemia +oligandrous +oliganthous +oligarch +oligarchal +oligarchical +oligarchies +oligarchism +oligarchist +oligarchize +oligarchs +oligemia +oligidria +oligist +oligistic +oligistical +oligocarpous +oligocene +oligochaeta +oligochaete +oligochete +oligocholia +oligochrome +oligochylia +oligoclasite +oligocystic +oligodipsia +oligodontous +oligodynamic +oligohemia +oligolactia +oligomerous +oligomery +oligomyodae +oligomyodian +oligomyoid +oligonephria +oligonephric +oligonite +oligopepsia +oligophagous +oligophrenia +oligophrenic +oligoplasmia +oligopnea +oligopsony +oligopsychia +oligopyrene +oligorhizous +oligosialia +oligosideric +oligosite +oligospermia +oligotokous +oligotrichia +oligotrophic +oligotrophy +oligotropic +oliguresis +oliguretic +oliguria +olimpia +olimpo +olin +olinger +olinia +oliniaceae +oliniaceous +olinick +olinka +olintla +olinto +olinyk +olio +olios +oliphant +oliphaunt +oliprance +olis +olithi +olithiakwaya +oliti +olitiakwaya +olitory +oliva +olivaceous +olivares +olivary +olive +olivean +oliveb +olivebranch +olivebridge +oliveburg +olived +olivedrab +olivehill +olivehurst +oliveira +olivella +oliveness +olivenite +oliveoil +oliver +olivera +oliverea +oliveri +oliverian +oliverman +oliveros +oliversmith +olives +olivescent +olivet +olivetan +olivette +olivetti +olivewood +olivey +oliveyard +oliveyards +olivi +olivia +olividae +olivie +olivier +olivieri +oliviero +oliviers +oliviferous +oliviform +olivil +olivile +olivilin +olivinefels +olivines +olivinic +olivinite +olivinitic +oliy +oliya +oljato +olkin +olkoi +olla +ollamh +ollapod +ollapodrida +ollari +ollaro +ollas +olle +ollenite +ollie +olliff +ollock +ollstead +olly +olmeca +olmeda +olmedo +olmer +olmi +olmito +olmitz +olmos +olmstead +olmsted +olmstedville +olney +olneya +olneysprings +olodiama +olof +ological +ologies +ologist +ologistic +ologists +olograph +ologuti +ology +oloh +oloibiri +oloma +olomao +olombo +olon +olona +olonets +olonetsian +olonetsish +olongapa +olongapo +olonnais +olor +olorin +oloroso +olos +olosega +olossu +olot +olotorit +olpe +olpidiaster +olpidium +olrich +olrsiak +olsburg +olsen +olshaniya +olshansky +olshen +olsheski +olsness +olson +olssen +olsson +olszewski +olsztyn +olteanu +olton +oltonde +oltunna +olubo +olubogo +oluboti +olubwisi +oluchiga +olugwere +oluhanga +olukonjo +olukonzo +olukooki +olulumo +olulumoikom +olunchun +olunyole +olunyore +olusaamia +olusegun +olusese +olusoga +olusola +olustee +oluta +olutangga +oluwanga +olva +olvido +olvier +olvwm +olwell +olwen +olycook +olykoek +olympas +olympe +olympia +olympiad +olympiada +olympiadic +olympiads +olympian +olympianism +olympianize +olympianly +olympians +olympianwise +olympias +olympic +olympicly +olympicness +olympics +olympie +olympieion +olympionic +olympos +olympus +olynthiac +olynthian +olynthus +olynyk +olyphant +olyutor +omachi +omadhaun +omag +omage +omagh +omagra +omagua +omaguas +omaguayete +omagwa +omaha +omahas +omair +omak +omalgia +omalley +oman +omani +omao +omar +omarkhayyam +omarthritis +omaruru +omasitis +omasum +omati +omatu +omayamnon +omayma +omba +ombai +ombeer +ombellampoko +omber +ombessa +ombo +omboue +ombre +ombres +ombrette +ombrifuge +ombrograph +ombrological +ombrology +ombrometer +ombrophile +ombrophilic +ombrophilous +ombrophily +ombrophobe +ombrophobous +ombrophoby +ombrophyte +ombudsmen +omdl +omdurman +omeg +omega +omegandorph +omegas +omegendorph +omegoid +omejes +omelets +omelette +omelettes +omen +omena +omene +omened +omenology +omens +omental +omentectomy +omentitis +omentocele +omentopexy +omentoplasty +omentotomy +omentulum +omentum +omer +omerelu +omero +omers +ometay +ometepec +ometo +ometogimira +omgom +omicrons +omie +omikron +omina +ominate +ominira +ominous +ominously +ominousness +omissible +omissions +omissive +omissively +omit +omitis +omits +omittable +omittance +omitted +omitter +omitting +omiya +omkoi +omlah +ommastrephes +ommateal +ommateum +ommatidial +ommatidium +ommatophore +ommerle +ommiad +ommiades +ommitted +omneity +omnes +omni +omnia +omniactive +omniana +omniarch +omniarchs +omniation +omnibasic +omnibus +omnibuses +omnibusman +omnierudite +omniessence +omnifacial +omnifarious +omniferous +omnific +omnificent +omnifidel +omniform +omniformal +omniformity +omnify +omnigate +omnigenous +omnigerent +omnigraph +omnihuman +omnihumanity +omnilegent +omnilingual +omnilook +omniloquent +omnilucent +omnimental +omnimeter +omnimode +omnimodous +omninescient +omniousness +omnipage +omniparent +omniparient +omniparity +omniparous +omnipatient +omniperfect +omnipotence +omnipotency +omnipotent +omnipotently +omnipregnant +omnipresence +omnipresent +omniprudent +omniquad +omnirange +omniregency +omniscience +omnisciency +omnisciently +omniscope +omniscribent +omnisentient +omnispective +omnist +omnitemporal +omnitenent +omnitolerant +omnitonal +omnitonality +omnitonic +omnitude +omnium +omnivagant +omnivalence +omnivalent +omnivalous +omnivarious +omnividence +omnivident +omniview +omnivision +omnivolent +omnivora +omnivoracity +omnivorant +omnivore +omnivores +omnivorous +omnivorously +omnogovi +omodynia +omohyoid +omoideum +omoni +omoolu +omophagia +omophagic +omophagist +omophagous +omophagy +omophorion +omoplate +omori +omosan +omostegite +omosternal +omosternum +omotana +omotic +omotik +ompa +omphacine +omphacite +omphalectomy +omphali +omphalic +omphalism +omphalitis +omphalocele +omphalode +omphalodium +omphaloid +omphaloma +omphaloncus +omphalopagus +omphalorrhea +omphalos +omphalosite +omphalotomy +omphalus +omran +omri +omro +omsi +omsk +omte +omura +omurano +omvang +omvs +omyene +onabasulu +onactivate +onaga +onager +onagers +onagra +onagraceae +onagraceous +onaka +onalaska +onam +onamia +onan +onancock +onandaga +onanism +onanisms +onanist +onanistic +onanists +onank +onarga +onate +onawa +onaway +onboard +onca +oncalcfields +once +onces +oncetta +onchidiidae +onchidium +onchiota +onchocerca +oncia +oncidium +oncin +onclick +onclose +oncogenic +oncograph +oncography +oncologic +oncological +oncologies +oncologist +oncology +oncome +oncometer +oncometric +oncometry +oncoming +oncomings +onconditions +oncorhynchus +oncosimeter +oncosis +oncosphere +oncost +oncostman +oncotomy +oncreate +onda +ondagram +ondagraph +ondameter +ondascope +ondatra +ondemand +onder +onderwereld +ondine +ondo +ondogram +ondograph +ondometer +ondores +ondoscope +ondoumbo +ondovcik +ondra +ondrea +ondrej +ondumbo +ondy +onea +oneals +oneanother +oneata +oneb +oneberry +onechance +oneco +oneeba +oneeyed +onefold +onefoldness +onefourth +onegite +onego +onehalf +onehearted +onehow +oneida +oneidas +oneil +oneill +oneindustry +oneinten +oneiric +oneirocrit +oneirocritic +oneirodynia +oneirologist +oneirology +oneiromancer +oneiromancy +oneiroscopic +oneiroscopy +oneirotic +oneism +onekama +onele +oneline +oneliner +oneliners +onelink +oneman +onement +onemo +oneness +onenesses +oneonta +oneparameter +oneparty +onepass +oneplusone +onepound +onequarter +oner +onerary +onerative +onerosities +onerosity +onerous +onerously +onerousness +onery +ones +onesample +oneself +oneseventh +oneshot +onesided +onesigned +onesimo +onesimus +onesiphorus +onesso +onestep +onesti +onestone +onesubject +onet +onetailed +onetenth +onethird +onetime +oneto +onette +onevolume +oneway +onewhere +oney +oneyear +oneyer +onfall +onflemed +onflow +onflowing +ongamo +ongaro +ongbe +onge +ongoing +ongom +onhanger +onhide +onia +onian +onias +onicolo +onida +onilne +onin +onintr +oniomania +oniomaniac +onion +onionet +onionized +onionlike +onionpeel +onions +onionskin +onionskins +oniony +onirotic +oniscidae +onisciform +oniscoid +oniscoidea +oniscoidean +oniscus +onitsha +onium +onizuka +onjab +onjob +onkel +onkilonite +onkos +onlay +onlepy +onley +onliest +onlikelihood +online +onlinehelp +onliner +onliness +onlinometer +onload +onlookers +only +onlyoccurs +onmarch +onmark +onmun +onne +onnectivity +onnewrecord +onnie +onobesity +onobrychis +onocentaur +onoclea +onodrim +onofrite +onohippidium +onolatry +onomancy +onomantia +onomastic +onomasticon +onomatology +onomatomania +onomatope +onomatoplasm +onomatopoesy +onomatopy +onomatous +onomomancy +onondagan +onondagas +ononge +ononis +onopordon +onosmodium +onotoa +onotsu +onpaint +onrush +onrushes +onscreen +onseparate +onsets +onsetter +onshore +onshow +onshowhint +onside +onsight +onsite +onsiteteam +onslaughts +onslow +onsmall +onstage +onstand +onstanding +onstead +onsted +onsweep +onsweeping +onsy +ontake +ontal +ontarian +ontaric +ontario +ontena +onthe +onthefly +onthly +ontimer +ontimerevent +ontinue +ontiveros +ontkean +onto +ontocycle +ontocyclic +ontogenal +ontogeneses +ontogenesis +ontogenetic +ontogenic +ontogenies +ontogenist +ontography +ontologic +ontological +ontologies +ontologism +ontologist +ontologistic +ontologize +ontonagon +ontong +ontosophy +ontrack +ontroversy +onua +onukogu +onum +onumo +onumu +onuses +onvert +onwaiting +onward +onwardly +onwardness +onwards +onxt +onycha +onychauxis +onychia +onychin +onychitis +onychium +onychoid +onycholysis +onychomancy +onychonosus +onychopathic +onychopathy +onychophagy +onychophora +onychophoran +onychophyma +onychoptosis +onychosis +onychotrophy +onyegin +onym +onymal +onymancy +onymatic +onymity +onymize +onymous +onymy +onyshko +onyx +onyxes +onyxis +onyxitis +onza +onze +onzole +ooangium +oobee +ooblast +ooblastic +oobleck +ooblick +ooblik +oocyesis +oocyst +oocystaceae +oocystaceous +oocystic +oocystis +oodaira +ooecial +ooecium +oofbird +ooftish +oofy +oogamete +oogamous +oogamy +oogenesis +oogenetic +oogeny +ooghattund +ooglea +oogone +oogonial +oogoniophore +oogonium +oograph +oogrp +oohed +oohh +oohing +oohs +oohum +ooid +ooidal +oois +ookala +ookhwe +ookinesis +ookinete +ookinetic +oolak +oold +oolemma +oolet +oolien +oolite +oolith +oolitic +oolly +oologah +oologic +oological +oologically +oologist +oologize +oology +oolong +oolongs +ooltewah +oomancy +oomantia +oometer +oometric +oometry +oomph +oomphs +ooms +oomycete +oomycetes +oomycetous +oona +oongaq +oonly +oons +oont +oooaaahh +oooaaahhh +oooh +oooo +ooooh +ooooo +oooooo +ooooooh +ooooooo +oooooooo +ooooooooo +oooover +ooops +oooxxxoo +oopak +oophoralgia +oophorauxe +oophore +oophorectomy +oophoreocele +oophoric +oophoridium +oophoritis +oophoroma +oophoromania +oophoron +oophoropexy +oophorostomy +oophorotomy +oophyte +oophytic +ooplasm +ooplasmic +ooplast +oopod +oopodal +ooporphyrin +oops +oopsnet +oopsy +oorali +oorazhi +oord +oorie +oorlans +oorschot +oort +oorwarsted +ooscope +ooscopy +oosima +oosperm +oosphere +oosporange +oosporangium +oospore +oosporeae +oosporic +oosporous +oost +oostburg +oostegite +oostegitic +oostende +oosterbeek +oosterhoff +ootek +ootheca +oothecal +ootid +ootiful +ootocoid +ootocoidea +ootocoidean +ootocous +oottfogvh +ootto +ootype +ooze +oozed +oozes +oozier +ooziest +oozily +ooziness +oozing +oozooid +oozy +opacate +opacified +opacifier +opacifies +opacify +opacifying +opacite +opacities +opacous +opacousness +opah +opaie +opaker +opal +opaled +opalesce +opalesced +opalescence +opalesces +opalescing +opalesque +opalina +opaline +opalinid +opalinidae +opalinine +opalish +opalize +opalocka +opaloid +opals +opalski +opameri +opanal +opania +opao +opaque +opaqued +opaquely +opaqueness +opaquer +opaques +opaquest +opaquing +opari +opat +opata +opating +opatoshu +opaye +opcode +opcodes +opcon +opcs +opdalite +opdyke +opegrapha +opeidoscope +opel +opela +opelet +opelika +opelousas +open +openable +openband +openbeak +openbill +openbsd +opencast +opencp +opendoors +opendos +opened +opener +openers +openest +openeth +openeyed +openfile +opengl +openhanded +openhandedly +openhead +openhearted +openhome +opening +openings +openlink +openlinux +openly +openmouthed +openness +openplan +opens +openserver +openshaw +openside +opensystems +opentools +openvms +openwin +openwindows +openwinhome +openwire +openwork +openworks +oper +opera +operability +operabily +operably +operae +operagoer +operahouse +operalo +operalogue +operameter +operance +operancy +operand +operandi +operands +operants +operas +operasinger +operasjon +operatable +operate +operated +operatee +operates +operatical +operatically +operatics +operating +operation +operational +operationism +operationist +operations +operative +operatively +operatives +operativity +operatize +operator +operatore +operators +operatorsin +operatory +operatrix +opercle +opercled +opercula +opercular +operculata +operculate +operculated +operculiform +operculum +operculums +operemor +opereta +operettas +operette +operettist +operi +operose +operosely +operoseness +operosity +opers +operstators +opert +opes +opfibers +opgrpdcount +opheim +ophel +ophelia +ophelie +ophelimity +ophian +ophiasis +ophic +ophicalcite +ophicephalus +ophichthyoid +ophicleide +ophicleidean +ophicleidist +ophidia +ophidian +ophidians +ophidiidae +ophidioid +ophidion +ophidious +ophidologist +ophidology +ophiobolus +ophioglossum +ophiography +ophioid +ophiolater +ophiolatrous +ophiolatry +ophiolite +ophiolitic +ophiologic +ophiological +ophiologist +ophiology +ophiomancy +ophiomorph +ophiomorpha +ophiomorphic +ophion +ophionid +ophioninae +ophionine +ophiophagous +ophiophilism +ophiophilist +ophiophobe +ophiophobia +ophiophoby +ophiopluteus +ophiosaurus +ophiouride +ophir +ophis +ophisaurus +ophism +ophite +ophitic +ophitism +ophiuchid +ophiucus +ophiuran +ophiurid +ophiurida +ophiuroid +ophiuroidea +ophiuroidean +ophni +ophrah +ophryon +ophrys +ophth +ophthalmagra +ophthalmia +ophthalmiac +ophthalmious +ophthalmist +ophthalmite +ophthalmitic +ophthalmitis +ophthalmopod +ophthalmy +opianic +opianyl +opiate +opiated +opiateproof +opiates +opiatic +opiating +opiconsivia +opie +opif +opificer +opiism +opik +opilia +opiliaceae +opiliaceous +opiliones +opilionina +opilionine +opilonea +opimian +opinability +opinable +opinably +opinant +opination +opinative +opinatively +opinator +opined +opiner +opiners +opines +opiniaster +opiniastre +opiniastrety +opiniastrous +opiniater +opiniative +opiniatively +opiniator +opiniatrety +opiniatry +opining +opinion +opinionable +opinionaire +opinional +opinionated +opinionately +opinionatist +opinionative +opinioned +opinionist +opinions +opintiveness +opioids +opiomania +opiomaniac +opiophagism +opiophagy +opiparous +opisometer +opisthenar +opisthion +opisthocome +opisthocomi +opisthodetic +opisthodome +opisthodomos +opisthodomus +opisthodont +opisthoglyph +opisthograph +opisthoparia +opisthorchis +opisthosomal +opisthotic +opisthotonic +opisthotonos +opisthotonus +opitciwan +opitimal +opitulation +opium +opiumism +opiumisms +opiums +opkts +oplinger +opoba +opobalsam +opobo +opodeldoc +opodidymus +opodymus +opoh +opole +opolis +opopanax +oporoma +oporoza +oporto +oportunity +opossums +opot +opotherapy +opotiki +oppavia +oppenheim +opper +oppian +oppidan +oppilate +oppilation +oppilative +oppland +oppolzer +opponency +opponent +opponents +opportunely +opportunism +opportunist +opportunists +opportunity +opposability +oppose +opposed +opposeless +opposer +opposers +opposes +opposest +opposeth +opposing +opposingly +opposit +opposite +oppositely +oppositeness +opposites +opposition +oppositional +oppositions +oppositious +oppositive +oppositively +oppossum +opposure +oppresive +oppress +oppressed +oppresses +oppresseth +oppressible +oppressing +oppression +oppressions +oppressively +oppressor +oppressors +opprobriate +opprobriated +opprobrious +opprobriums +opprobry +oppugn +oppugnacy +oppugnance +oppugnancy +oppugnant +oppugnate +oppugnation +oppugner +oppugns +oprah +opredelennoy +oprian +opsigamy +opsimath +opsimathy +opsiometer +opsisform +opsistype +opsnet +opsonic +opsoniferous +opsonify +opsonin +opsonist +opsonium +opsonization +opsonize +opsonogen +opsonoid +opsonology +opsonometry +opsonophilia +opsonophilic +opsonophoric +opsplng +opsy +optable +optableness +optably +optant +optate +optation +optative +optatively +optatives +opted +opthalmic +opthalmology +opti +optic +optical +optically +optician +opticians +opticist +opticity +opticom +opticon +optics +optigraph +optik +optiklenz +optimacy +optimal +optimality +optimally +optimate +optimates +optime +optimeter +optimis +optimisation +optimise +optimised +optimisms +optimistic +optimistical +optimists +optimity +optimization +optimize +optimized +optimizer +optimizers +optimizes +optimizing +optimums +opting +optinionist +option +optional +optionality +optionalize +optionally +optionals +optionary +optionee +optionees +optioning +optionor +options +optive +optix +optmip +opto +optoblast +optogram +optography +optological +optologist +optology +optomeninx +optometer +optometric +optometrical +optometries +optometrists +optophone +optotechnics +optotype +opts +opulaster +opulence +opulences +opulencies +opulency +opulently +opulus +opuntia +opuntiaceae +opuntiales +opuntioid +opus +opuscular +opuscule +opusculum +opuses +opzz +oquassa +oquawka +oquigley +oquossoc +orabassu +orac +orach +orachel +oracle +oracles +oracls +oracularity +oracularly +oracularness +oraculate +oraculous +oraculously +oraculum +orad +oradell +orage +oragious +oraha +orak +orakaiva +orakzai +oral +orald +orale +oralee +oraler +oralia +oralie +oralism +oralist +oralities +orality +oralization +oralize +oralla +oralle +orally +oralogist +oralogy +orals +oram +orama +orambul +orami +oran +orane +orang +orangator +orange +orangeade +orangeades +orangebeach +orangebird +orangeburg +orangecity +orangecove +orangefield +orangegrove +orangeism +orangeist +orangelake +orangeleaf +orangeman +orangepark +oranger +orangered +orangeries +orangery +oranges +orangevale +orangeville +orangewoman +orangewood +orangey +orangia +orangier +orangiest +orangish +orangism +orangist +orangite +orangize +orango +orangoutang +orangs +orangutans +orangy +oranjestad +oransky +orant +oraoan +oraon +orarian +orarion +orarium +orary +orasa +orase +orashi +orated +orates +orating +oration +orational +orationer +orationim +orations +orator +oratorial +oratorially +oratorian +oratorianism +oratorianize +oratorically +oratories +oratorios +oratorize +oratorlike +orators +oratorship +oratory +oratress +oratresses +oratrices +oratrix +orau +oraville +oray +orazio +orba +orbach +orban +orbar +orbed +orbesen +orbic +orbical +orbicella +orbicle +orbicular +orbicularis +orbicularity +orbicularly +orbiculate +orbiculated +orbiculately +orbiculation +orbiculoidea +orbific +orbilian +orbilius +orbing +orbison +orbisonia +orbit +orbital +orbitale +orbitally +orbitals +orbitar +orbitary +orbite +orbited +orbitelar +orbitelariae +orbitelarian +orbitele +orbitelous +orbiter +orbiters +orbiting +orbitoides +orbitolina +orbitolite +orbitolites +orbitomalar +orbitonasal +orbitostat +orbitotomy +orbits +orbless +orblet +orbs +orbulina +orby +orca +orcad +orcadian +orcanet +orcas +orce +orcein +orcestra +orch +orchamus +orchan +orchard +orchardhill +orcharding +orchardist +orchardists +orchardman +orchardpark +orchards +orchat +orchectomy +orchel +orchella +orchesis +orchester +orchestia +orchestian +orchestic +orchestiid +orchestiidae +orchestra +orchestrally +orchestras +orchestrate +orchestrated +orchestrater +orchestrates +orchestrator +orchestre +orchestric +orchestrina +orchestrion +orchialgia +orchic +orchichorea +orchid +orchidaceae +orchidacean +orchidaceous +orchidales +orchidalgia +orchidectomy +orchideous +orchideously +orchidist +orchiditis +orchidocele +orchidology +orchidomania +orchidopexy +orchidotomy +orchids +orchiectomy +orchil +orchilla +orchilytic +orchiocele +orchiodynia +orchioncus +orchiopexy +orchioplasty +orchiotomy +orchis +orchitic +orchitis +orchotomy +orcin +orcinol +orcinus +orcrist +orcs +orcutt +ordain +ordainable +ordained +ordainer +ordainers +ordaineth +ordaining +ordainment +ordains +ordanchite +ordas +ordaz +orde +ordeal +ordeals +ordem +orden +order +orderable +orderdesk +ordered +orderedness +orderer +orderers +ordereth +orderform +ordering +orderings +orderless +orderlies +orderliness +orderly +orderlz +ordernum +orderof +orders +orderville +orderxspawn +ordezanka +ordinable +ordinal +ordinally +ordinals +ordinance +ordinances +ordinand +ordinands +ordinant +ordinar +ordinarier +ordinaries +ordinarily +ordinariness +ordinarius +ordinary +ordinaryship +ordinate +ordinately +ordinates +ordination +ordinations +ordinative +ordinator +ordine +ordinee +ordines +ordino +ordisplay +ordnances +ordo +ordog +ordonez +ordonnance +ordonnant +ordos +ordosite +ordovian +ordovices +ordovician +ordric +ordu +ordubad +ordure +ordures +ordurous +ordway +ordy +orea +oread +oreala +oreamnos +oreana +oreas +oreb +orebro +orecchion +orechon +orecity +orectic +orective +ored +oredezh +oree +oreekhwe +oreffice +orefield +oregano +oreganos +oregon +oregoncity +oregonhouse +oregoni +oregonia +oregonian +oregonians +oregu +oreillet +oreilly +orejon +orel +oreland +orelee +orelha +orelia +orelie +orella +orelle +orellin +orelskaya +orem +oreman +oremovic +oren +orenda +orendite +orenov +orenzo +oreo +oreocarya +oreodon +oreodont +oreodontidae +oreodontine +oreodontoid +oreodoxa +oreophasinae +oreophasine +oreophasis +oreortyx +oreotragine +oreotragus +ores +oreste +orestean +oresund +oreweed +orewood +orexis +orexx +orey +orfano +orfeo +orfgild +orfil +orford +orfordville +orfrom +organ +organa +organal +organbird +organdie +organdies +organella +organelle +organelles +organer +organette +organia +organians +organic +organical +organically +organicism +organicismal +organicist +organicistic +organicity +organics +organific +organing +organised +organism +organismal +organisms +organist +organistic +organistrum +organists +organistship +organity +organizable +organization +organizaton +organizatory +organizazii +organize +organized +organizer +organizers +organizes +organizing +organless +organoboron +organogel +organogen +organogenic +organogenist +organogeny +organogold +organography +organoid +organoiron +organolead +organoleptic +organologic +organologist +organology +organon +organonomic +organonomy +organonym +organonymal +organonymic +organonymy +organopathy +organophil +organophile +organophilic +organophone +organophonic +organophyly +organoscopy +organosilver +organosodium +organosol +organotin +organotropic +organotropy +organozinc +organry +organs +organule +organum +organza +organzine +orgas +orgasm +orgasmic +orgasming +orgasms +orgastic +orgeat +orgeats +orgia +orgiac +orgiacs +orgiasm +orgiast +orgiastical +orgic +orgies +orginized +orgocka +orgosolo +orgranizer +orgue +orguinette +orgulous +orgulously +orgy +orgyia +orhansoy +orhelp +orhestra +orhonsay +orhonsoy +oria +oriana +orians +orias +oribatidae +oribi +orichalceous +orichalch +orichalcum +orichen +orick +oriconic +oricycle +orid +orie +oriel +oriels +oriency +oriental +orientalia +orientalism +orientalist +orientality +orientalize +orientally +orientalogy +orientals +orientate +orientated +orientates +orientating +orientation +orientations +orientative +orientator +oriente +oriented +orienting +orientite +orientize +oriently +orientness +orients +orierh +orietta +orifacial +orifice +orifices +orificial +oriflamb +oriflamme +oriform +orig +origami +origamis +origan +origanau +origanized +origanum +origenian +origenic +origenical +origenism +origenist +origenistic +origenize +origin +originable +original +originalist +originality +originally +originalness +originals +originant +originarily +originary +originate +originated +originates +originating +origination +originative +originator +originators +originatress +originist +origins +orign +orignal +orihon +orihyperbola +orillion +orillon +orimoto +orinasal +orinasality +orinda +oring +orinoko +orio +oriola +oriole +orioles +orioli +oriolidae +oriolus +oriomo +orion +oriordan +oriska +oriskanian +oriskany +orismologic +orismology +orison +orisons +orisphere +orissa +orist +oristic +orithms +oritz +oriya +orizaba +orjan +orjas +orkan +orkhon +orkneyan +orla +orlac +orlamond +orland +orlandi +orlandini +orlando +orlandpark +orlanol +orle +orlean +orleanism +orleanist +orleanistic +orleans +orlegui +orlei +orlenok +orlet +orleways +orlewise +orley +orlin +orlinda +orlo +orloff +orlon +orlop +orlov +orlova +orlovius +orlsoft +orlu +orlunga +orly +orlyn +orma +orman +ormazd +orme +ormeny +ormer +ormerod +ormesher +ormiston +ormoc +ormolu +ormolus +ormond +ormondbeach +ormsby +ormu +ormui +ormuri +ormuru +ormuzd +orna +ornamatica +ornament +ornamenta +ornamental +ornamentally +ornamentary +ornamented +ornamenter +ornamenting +ornamentist +ornaments +ornamenttm +ornan +ornate +ornateness +ornation +ornature +ornburn +ornella +ornellas +ornerier +orneriest +orneriness +ornery +ornicar +ornis +orniscopic +orniscopist +orniscopy +ornithic +ornithine +ornithischia +ornithodelph +ornithodoros +ornithogaea +ornithogaean +ornithogalum +ornithoid +ornitholite +ornitholitic +ornithologic +ornithology +ornithomancy +ornithomimus +ornithomorph +ornithon +ornithopappi +ornithophile +ornithophily +ornithopod +ornithopoda +ornithopter +ornithoptera +ornithosaur +ornithoscopy +ornithosis +ornithotomy +ornithurae +ornithuric +ornithurous +ornl +ornoite +ornstein +oroanal +orobanche +orobancheous +orobatoidea +oroc +oroch +orochi +orochon +orocovis +orocratic +orodara +orodiagnosis +orodougou +orodruin +orodugu +orofino +orogen +orogenesi +orogenesis +orogenesy +orogenetic +orogenic +orogeny +orogrande +orograph +orographical +oroha +orohippus +oroi +oroide +orok +orokaiva +oroko +orokoest +orokolo +orokoouest +orol +orolingual +orological +orologist +orology +orom +orombe +orome +orometer +orometric +orometry +orominga +oromo +oromoboran +oromoid +oromovic +oromowellaga +oromowellega +oron +oronasal +oronchon +orondo +oronline +oronoco +oronogo +orontium +oropharynx +orophin +oroqen +oroquieta +ororo +oros +oroshor +oroshori +orosi +orosnay +orosz +orotchko +orotherapy +orotinan +orotund +orotundity +oroua +orovada +oroville +orovitz +orowe +orowitz +orozbek +orozco +orpa +orpah +orphan +orphanages +orphancy +orphandom +orphaned +orphange +orphanhood +orphaning +orphanism +orphanize +orphanned +orphanry +orphans +orphanship +orpharion +orphean +orpheist +orpheon +orpheonist +orpheum +orpheus +orphical +orphically +orphicism +orphism +orphize +orphn +orphrey +orphreyed +orpiment +orpiments +orpine +orpines +orpington +orra +orreries +orrery +orrhoid +orrhology +orrhotherapy +orri +orrible +orrick +orrin +orringorrin +orrington +orris +orrises +orrison +orrisroot +orrsisland +orrstown +orrtanna +orrum +orrville +orsa +orsay +orschel +orseille +orseilline +orsel +orselle +orseller +orsellic +orsellinate +orsellinic +orser +orservices +orsingher +orsini +orslow +orso +orsola +orson +orsova +orst +orszaggyules +orta +ortalid +ortalidae +ortalidian +ortalis +ortegas +ortegosa +orteguaza +ortegus +ortei +orteils +ortelius +ortensia +ortet +orth +orthal +orthanc +ortheris +orthian +orthic +orthid +orthidae +orthis +orthite +orthitic +ortho +orthoaxis +orthobiosis +orthoborate +orthocarpous +orthocarpus +orthocenter +orthocentric +orthocephaly +orthoceran +orthoceras +orthoclasite +orthoclastic +orthocresol +orthocymene +orthodiaene +orthodiagram +orthodiazin +orthodiazine +orthodomatic +orthodome +orthodontia +orthodontics +orthodox +orthodoxal +orthodoxally +orthodoxes +orthodoxian +orthodoxical +orthodoxies +orthodoxism +orthodoxist +orthodoxly +orthodoxness +orthodromic +orthodromics +orthodromy +orthoepic +orthoepical +orthoepist +orthoepistic +orthoepists +orthoepy +orthoformic +orthogamous +orthogamy +orthoganal +orthogenesis +orthogenetic +orthogenic +orthognathic +orthognathus +orthognathy +orthogneiss +orthogonal +orthogonally +orthogonial +orthograde +orthogranite +orthograph +orthographer +orthographic +orthologer +orthologian +orthological +orthology +orthometopic +orthometric +orthometry +orthonectida +orthopaedic +orthopaedics +orthopaedist +orthopath +orthopathic +orthopathy +orthopedia +orthopedical +orthopedics +orthopedist +orthopedists +orthopedy +orthophonic +orthophony +orthophoria +orthophoric +orthophyre +orthophyric +orthoplastic +orthoplasy +orthopnea +orthopneic +orthopod +orthopoda +orthopraxis +orthopraxy +orthoprism +orthopter +orthoptera +orthopteral +orthopteran +orthopterist +orthopteroid +orthopteron +orthopterous +orthoptic +orthopyramid +orthoquinone +orthorrhapha +orthorrhaphy +orthos +orthoscope +orthoscopic +orthose +orthosemidin +orthosilicic +orthosis +orthosite +orthosomatic +orthostatic +orthostichy +orthostyle +orthotactic +orthotectic +orthotic +orthotolidin +orthotoluic +orthotomic +orthotomous +orthotone +orthotonesis +orthotonic +orthotonus +orthotropal +orthotropic +orthotropism +orthotropous +orthotropy +orthotype +orthotypous +orthovanadic +orthoxazin +orthoxazine +orthoxylene +orthron +ortiga +orting +ortive +ortix +ortiz +ortleb +ortley +ortman +ortol +ortolan +ortolans +orton +ortonville +ortran +ortrud +orts +ortstein +ortutay +ortygan +ortygian +ortyginae +ortygine +ortyx +oruhema +oruhima +oruhuma +orukiga +orum +orunchun +orundande +orungu +orunyarwanda +orunyoro +oruone +oruro +orutagwenda +orutoro +oruzgan +orva +orval +orvietan +orvietite +orvieto +orvil +orville +orving +orvis +orwell +orwid +orwigsburg +orya +oryal +oryalist +orycteropus +oryctics +oryctognosy +oryctography +oryctolagus +oryctology +oryssid +oryssidae +oryssus +oryx +oryxes +oryza +oryzenin +oryzivorous +oryzomys +oryzopsis +oryzorictes +orzazewski +osadciw +osafocharles +osage +osagebeach +osagecity +osages +osai +osakakobe +osakis +osama +osamin +osamine +osamu +osan +osanyin +osao +osatuik +osawa +osawatomie +osazone +osbert +osbone +osborn +osborne +osbourne +osburn +osbyte +oscan +oscar +oscarella +oscarellidae +oscars +oscarsson +oscella +osceola +osceolamills +oscheal +oscheitis +oscheocele +oscheolith +oscheoma +oscheoncus +oscheoplasty +oschophoria +oscillance +oscillancy +oscillant +oscillaria +oscillated +oscillates +oscillating +oscillation +oscillations +oscillative +oscillator +oscillatoria +oscillators +oscilliscope +oscillogram +oscillograph +oscillometer +oscillometry +oscilloscope +oscin +oscine +oscines +oscinian +oscinidae +oscinine +oscinis +oscitance +oscitancy +oscitant +oscitantly +oscitate +oscitation +oscnode +osco +oscoda +oscs +osctx +oscula +osculable +osculant +oscular +oscularity +osculate +osculated +osculates +osculating +osculation +osculations +osculatory +osculatrix +oscule +oscules +osculiferous +osculum +oscurrantist +oscy +osea +osee +osela +oser +oses +osetin +osgiliath +osgood +oshac +oshannah +oshea +oshi +oshibki +oshie +oshima +oshin +oshindonga +oshinski +oshiro +osholio +oshorpe +oshoto +osht +oshtemo +osiakwan +osiandrian +oside +osidonga +osiered +osierlike +osiers +osiery +osikom +osilo +osima +osindonga +osing +osinterface +osipetz +osipov +osirian +osiride +osiridean +osirify +osiris +osirism +osita +oska +oskaloosa +oskar +oskorep +osledi +oslo +oslund +osman +osmania +osmanie +osmanli +osmanthus +osmate +osmatic +osmatism +osmazomatic +osmazomatous +osmazome +osmen +osmeridae +osmerus +osmesis +osmeterium +osmetic +osmic +osmidrosis +osmin +osmina +osmious +osmiridium +osmiums +osmogene +osmograph +osmolagnia +osmology +osmometer +osmometric +osmometry +osmond +osmondite +osmophore +osmorhiza +osmoscope +osmose +osmosed +osmoses +osmosing +osmotactic +osmotaxis +osmotherapy +osmotically +osmous +osmund +osmunda +osmundaceae +osmundaceous +osmundine +osnabrock +osnaburg +osnappar +osney +osnovnom +osobenno +osoberry +osokom +osone +osophy +osopong +ososo +osotriazine +osotriazole +ospf +osphradial +osphradium +osphresis +osphretic +osphyalgia +osphyalgic +osphyitis +osphyocele +ospitals +ospray +osprey +ospreys +osric +ossa +ossal +ossama +ossarium +ossature +osse +ossea +ossein +osselet +ossements +osseo +osseofibrous +osseomucoid +osseously +osset +ossete +ossetian +ossetic +ossetine +ossetish +osshe +ossia +ossian +ossianesque +ossianic +ossianism +ossianize +ossicle +ossicular +ossiculate +ossicule +ossiculotomy +ossiculum +ossie +ossiferous +ossific +ossification +ossificatory +ossified +ossifier +ossifiers +ossifies +ossifluence +ossifluent +ossiform +ossifrage +ossifrangent +ossifying +ossima +ossineke +ossing +ossining +ossio +ossip +ossipee +ossivorous +osso +ossouon +ossuaries +ossuarium +ossuary +osswald +ossypite +osta +ostack +ostaf +ostalgia +ostalnie +ostan +ostanha +ostanina +ostap +ostapiw +ostara +ostarello +ostariophysi +ostarthritis +ostashev +ostaszewski +ostavalsya +ostavil +osteal +ostealgia +ostectomy +osteectomy +osteectopia +osteectopy +osteen +osteichthyes +ostein +osteitic +osteitis +ostemia +ostempyesis +ostenia +ostensible +ostensibly +ostension +ostensive +ostensively +ostensorium +ostensory +ostent +ostentate +ostentation +ostentive +ostentous +osteoblast +osteoblastic +osteocele +osteoclasia +osteoclasis +osteoclast +osteoclastic +osteoclasty +osteocolla +osteocomma +osteocranium +osteocystoma +osteodentin +osteodentine +osteoderm +osteodermal +osteodermia +osteodermis +osteodynia +osteofibroma +osteofibrous +osteogen +osteogenesis +osteogenetic +osteogenic +osteogenist +osteogenous +osteogeny +osteoglossid +osteoglossum +osteographer +osteography +osteoid +osteolepidae +osteolepis +osteolite +osteologer +osteologic +osteological +osteologies +osteologist +osteolysis +osteolytic +osteoma +osteomalacia +osteomalacic +osteomancy +osteomanty +osteomatoid +osteomere +osteometric +osteometry +osteoncus +osteopaedion +osteopathies +osteopathist +osteopaths +osteopedion +osteophage +osteophagia +osteophone +osteophony +osteophore +osteophyma +osteophyte +osteophytic +osteoplaque +osteoplast +osteoplastic +osteoplasty +osteoporotic +osteorrhaphy +osteosarcoma +osteoscope +osteosis +osteostixis +osteostomous +osteostracan +osteostraci +osteosuture +osteotome +osteotomist +osteotomy +osteotribe +osteotrite +osteotrophic +osteotrophy +oster +osterberg +osterburg +ostercamp +ostergotland +osterhout +osterloh +osterman +osterreicher +ostertagia +osterville +osterwald +osteyee +ostfeld +ostfold +ostfriesland +ostgronland +osti +ostia +ostiak +ostial +ostiary +ostiate +ostic +ostifichuk +ostinato +ostinatos +ostiolar +ostiolate +ostiole +ostitis +ostitst +ostium +ostivax +ostler +ostleress +ostlers +ostmannic +ostmark +ostmarks +ostmen +ostnavlivaya +ostomy +ostosis +ostracea +ostracean +ostraceous +ostraciidae +ostracine +ostracioid +ostracion +ostracizable +ostracize +ostracized +ostracizer +ostracizes +ostracizing +ostracoda +ostracode +ostracoderm +ostracodermi +ostracodous +ostracods +ostracoid +ostracoidea +ostracon +ostracophore +ostracophori +ostracum +ostraeacea +ostraite +ostrea +ostreaceous +ostreger +ostreidae +ostreiform +ostreoid +ostreophage +ostrich +ostriches +ostrichlike +ostro +ostrobathnia +ostrogoth +ostrogothian +ostrogothic +ostroleka +ostrom +ostrov +ostrova +ostrove +ostrovskij +ostrovsky +ostrow +ostrowskij +ostrya +ostuaca +ostuncalco +ostyak +ostyats +ostyn +osukam +osullivan +osum +osumi +osuna +osvajanje +osvaldo +osvitzimsky +osvobodili +oswald +oswaldo +oswalt +oswegan +oswegatchie +oswego +osyka +osyscsd +osysdoc +osysutil +oszter +otabha +otac +otacoustic +otacousticon +otaheitan +otakar +otake +otaki +otalgia +otalgic +otalgy +otamatea +otanabe +otanave +otanez +otani +otank +otapha +otaps +otar +otaria +otarian +otariidae +otariinae +otariine +otarine +otarioid +otary +otate +otavalo +otavio +otax +otdar +otday +otectomy +otego +oteil +otelcosis +otello +otelo +oterma +otero +otetela +otfried +otha +othake +othan +othe +othelcosis +othelia +othella +othello +othelo +othematoma +othemorrhea +otheoscope +other +othercolumn +othercolumns +otherdom +otherest +othergates +otherguess +otherhow +otherism +otherist +otherness +others +othersome +othertime +otherwards +otherwhence +otherwhere +otherwheres +otherwhile +otherwhiles +otherwhither +otherwise +othilia +othilie +othin +othinism +othmany +othmar +othni +othniel +otho +othon +othonna +othygroma +otiant +otiatric +otiatrics +otiatry +otic +oticodinia +otidae +otides +otididae +otidiform +otidine +otidiphaps +otidium +otila +otimel +otiorhynchid +otiosely +otioseness +otiosity +otis +otisco +otisorchards +otisville +otitic +otitis +otivolma +otivolta +otjag +otjidhimba +otjiwarongo +otkazalsya +otkon +otkritku +otkuda +otlaltepec +otley +otmajeshcya +otmenili +otmoor +otmora +otoantritis +otocariasis +otocephalic +otocephaly +otocleisis +otoconial +otoconite +otoconium +otocrane +otocranial +otocranic +otocranium +otocyon +otocyst +otocystic +otodynia +otodynic +otoe +otogenic +otogenous +otographical +otography +otogyps +otolite +otolith +otolithic +otolithidae +otoliths +otolithus +otolitic +otologic +otological +otologically +otologies +otologist +otology +otomaco +otomanguean +otomar +otomassage +otomi +otomian +otomitlan +otomyces +otomycosis +otoneuralgia +otono +otoo +otopamean +otopathic +otopathy +otophone +otopiesis +otoplastic +otoplasty +otopolypus +otopyorrhea +otopyosis +otoro +otorohanga +otorrhagia +otorrhea +otorrhoea +otosalpinx +otosclerosis +otoscope +otoscopes +otoscopic +otoscopies +otoscopy +otosis +otosphenal +otosteal +otosteon +ototo +ototomy +otowa +otozoum +otpizdim +otranto +otro +otrubilsya +otschollo +otsego +otsidel +otsu +otsuka +otta +ottajanite +ottar +ottavarima +ottavia +ottaviano +ottavio +ottavius +ottawa +ottawalake +ottawan +ottawas +ottco +ottcsr +otte +ottegebe +ottenheimer +otter +otterbein +otterbourne +ottercreek +otterer +otterhound +otterlake +otterloo +otternschlag +otters +otterson +ottertail +otterville +ottery +otthild +otti +ottiano +ottilia +ottilie +ottilien +ottille +ottillie +ottine +ottinger +ottingkar +ottiwell +otto +ottograd +ottokar +ottola +ottoman +ottomanean +ottomanic +ottomanism +ottomanize +ottomanlike +ottomans +ottomite +ottoschmidt +ottosen +ottosson +ottostruve +ottoville +ottowa +ottrelife +ottsville +ottumwa +ottweilian +otuho +otuko +otukpo +otukwang +otuo +otuquian +oturakli +oturia +oturkpo +otus +otuxo +otvechay +otveti +otvezti +otwa +otway +otwell +otyak +ouabain +ouabaio +ouabe +ouachitite +ouadda +ouaddai +ouaddaien +ouaga +ouagadougou +ouahi +ouaka +ouakari +ouala +ouananiche +ouaquaga +ouara +ouaragahio +ouargaye +ouargla +ouarkoye +ouarzazate +ouassa +ouatchi +ouattara +ouayeone +oubangui +oubatch +oubi +oubliette +oubliettes +oubritenga +oubykh +ouch +oucharek +ouchem +ouches +ouchi +oucs +oudalan +oudart +oude +oudemian +oudenarde +oudenodon +oudenodont +oudomxai +oudrey +oudry +oued +ouedghir +ouellet +ouellette +oueme +ouen +ouenguip +ouenite +ouessa +ouesso +ouest +ouffoue +ough +ought +oughted +oughtest +oughtn +oughtness +oughtnt +oughton +oughts +ouguiya +ouham +ouhampende +ouhiguyua +ouija +ouimet +ouinane +ouinjiouinji +ouistiti +oujda +oukia +oula +oulap +ould +ouldeme +oule +oulianov +oulidie +oulihan +ouliotta +oulton +oulu +ouma +oume +oumlemleu +ounas +ounce +ounces +oundjo +ounds +oune +oung +ouni +ounia +ouobe +ouolof +ouphe +ouphish +oupondre +ouran +ourangs +ouranos +ouray +ourdirectory +ourgaye +ouri +ourie +ourodougou +ourolamorde +ouroub +ourouparia +ours +ourself +ourselves +ourteaching +oury +ourza +ourzo +ousel +ousels +ousman +ouspens +ouspenskay +ouspenskaya +oussouye +ousted +ouster +ousters +ousting +ousts +outa +outact +outadmiral +outagami +outage +outages +outambush +outandout +outarde +outargue +outargued +outargues +outarguing +outask +outawe +outbabble +outback +outbacker +outbacks +outbake +outbalance +outbalanced +outbalances +outbalancing +outban +outbanter +outbar +outbargain +outbargained +outbargains +outbark +outbawl +outbeam +outbear +outbearing +outbeg +outbeggar +outbelch +outbellow +outbent +outbetter +outbid +outbidden +outbidder +outbidding +outbids +outbirth +outblacken +outblaze +outbleat +outbleed +outbless +outbloom +outblossom +outblot +outblow +outblowing +outblown +outbluff +outbluffed +outbluffing +outbluffs +outblunder +outblush +outbluster +outboard +outboards +outboast +outboasted +outboasting +outboasts +outbolting +outbond +outbook +outborn +outborough +outbound +outbounds +outbow +outbowed +outbowl +outbox +outboxed +outboxes +outboxing +outbrag +outbranch +outbranching +outbrave +outbray +outbrazen +outbreak +outbreaker +outbreaking +outbreaks +outbreath +outbreathe +outbreather +outbred +outbreed +outbreeding +outbribe +outbridge +outbring +outbrother +outbud +outbuild +outbuilding +outbuildings +outbulge +outbulk +outbully +outburn +outburst +outbursts +outbustle +outbuy +outbuzz +outby +outcant +outcaper +outcarol +outcarry +outcase +outcast +outcaste +outcastes +outcasting +outcastness +outcasts +outcavil +outchamber +outcharm +outchase +outchatter +outcheat +outchide +outchiding +outcity +outclamor +outclass +outclassed +outclasses +outclassing +outclearlyin +outclerk +outclimb +outcome +outcomer +outcomes +outcoming +outcompass +outcompete +outcomplete +outconsume +outcorner +outcount +outcountry +outcourt +outcrawl +outcricket +outcrier +outcries +outcrop +outcropped +outcropper +outcropping +outcroppings +outcross +outcrossing +outcrow +outcrowd +outcry +outcull +outcure +outcurse +outcurve +outcut +outdance +outdare +outdate +outdated +outdazzle +outdevil +outdial +outdid +outdir +outdispatch +outdistance +outdistanced +outdistrict +outdo +outdodge +outdoer +outdoing +outdone +outdoor +outdoorness +outdoors +outdoorsman +outdoorsy +outdraft +outdragon +outdraw +outdream +outdress +outdrink +outdrive +outdure +outdwell +outdweller +outdwelling +outeat +outecho +outed +outedge +outen +outeniqua +outer +outerello +outerians +outerly +outermost +outerness +outerwear +outeye +outeyed +outfable +outface +outfall +outfame +outfangthief +outfast +outfawn +outfeast +outfeat +outfeeding +outfence +outferret +outfiction +outfield +outfielder +outfieldsman +outfight +outfighter +outfighting +outfigure +outfile +outfish +outfit +outfits +outfitted +outfitter +outfitting +outflame +outflank +outflanker +outflanking +outflanks +outflare +outflash +outflatter +outfling +outfloat +outflourish +outflow +outflue +outflung +outflunky +outflush +outflux +outfly +outfold +outfool +outfoot +outform +outfort +outfox +outfreeman +outfront +outfroth +outfrown +outgabble +outgain +outgallop +outgamble +outgame +outgang +outgarment +outgarth +outgas +outgassed +outgassing +outgate +outgauge +outgaze +outgeneral +outgive +outgiving +outglad +outglare +outgleam +outglitter +outgloom +outglow +outgnaw +outgo +outgoer +outgoes +outgoing +outgoingness +outgoings +outgone +outgrabe +outgreen +outgrew +outgribing +outgrin +outground +outgrow +outgrowing +outgrown +outgrows +outgrowth +outguard +outguess +outgun +outgush +outhammer +outhasten +outhaul +outhauler +outhear +outheart +outhector +outheel +outher +outhere +outherod +outhire +outhiss +outhit +outhold +outhorror +outhouse +outhouses +outhousing +outhowl +outhue +outhumor +outhunt +outhurl +outhut +outhwaite +outhymn +outimage +outin +outing +outinvent +outish +outissue +outjazz +outjest +outjet +outjetting +outjinx +outjo +outjockey +outjourney +outjuggle +outjump +outjut +outkeeper +outkick +outkill +outking +outkiss +outkitchen +outknave +outknee +outlabor +outlaid +outlance +outland +outlander +outlandish +outlandishly +outlands +outlash +outlast +outlasted +outlasts +outlaugh +outlaunch +outlaw +outlawed +outlawing +outlawries +outlaws +outlay +outlaying +outlays +outlean +outleap +outlearn +outlegend +outlength +outlengthen +outler +outlet +outlets +outlie +outlier +outliers +outlighten +outlimb +outlimn +outline +outlinear +outlined +outlineless +outliner +outlines +outlinger +outlining +outlip +outlipped +outlive +outlived +outliver +outlives +outliving +outlodging +outlook +outlooker +outlooks +outlord +outlove +outlung +outluster +outly +outlying +outmagic +outmalaprop +outman +outmaneuver +outmanoeuvre +outmantle +outmarch +outmarriage +outmarry +outmaster +outmatch +outmate +outmeasure +outmerchant +outmiracle +outmode +outmoded +outmost +outmount +outmouth +outmove +outname +outness +outnight +outnoise +outnook +outnowed +outnumber +outnumbered +outofband +outofcontrol +outoffice +outofn +outoven +outpace +outpage +outpaint +outparagon +outparamour +outparish +outpart +outpass +outpassion +outpath +outpatient +outpay +outpayment +outpeal +outpeep +outpeer +outpension +outpensioner +outpeople +outperform +outperformed +outperforms +outpick +outpicket +outpipe +outpitch +outpity +outplace +outplan +outplay +outplayed +outplease +outplod +outplot +outpocketing +outpoint +outpoise +outpoison +outpoll +outpomp +outpop +outpopulate +outporch +outport +outporter +outportion +outpost +outposts +outpouching +outpour +outpourer +outpouring +outpractice +outpraise +outpray +outpreach +outpreen +outprice +outprodigy +outproduce +outpromise +outpry +outpull +outpupil +outpurl +outpurse +outpush +output +outputs +outputted +outputter +outputting +outputwidth +outquaff +outquarters +outqueen +outquestion +outquibble +outquote +outrace +outrage +outraged +outrageous +outrageously +outrageproof +outrager +outrages +outraging +outrail +outram +outran +outrance +outrange +outrank +outrant +outrap +outrate +outraught +outrave +outray +outre +outreach +outread +outreason +outreckon +outredden +outrede +outreign +outrelief +outremer +outreness +outrhyme +outrick +outride +outrider +outriding +outrig +outrigger +outriggered +outrigging +outright +outrightly +outrightness +outring +outrival +outroar +outrogue +outroll +outromance +outrooper +outroot +outrove +outrow +outroyal +outrrrageous +outrun +outrunner +outrunning +outruns +outrush +outs +outsail +outsaint +outsally +outsatisfy +outsavor +outsay +outscent +outscold +outscore +outscorn +outscour +outscouring +outscream +outsea +outseam +outsearch +outsee +outseek +outsell +outselling +outsentry +outsert +outservant +outset +outsetting +outsettler +outshadow +outshake +outshame +outshape +outsharp +outsharpen +outsheathe +outshift +outshine +outshined +outshiner +outshining +outshone +outshoot +outshore +outshot +outshoulder +outshout +outshove +outshow +outshower +outshriek +outshrill +outshut +outside +outsided +outsidedness +outsideness +outsider +outsiders +outsift +outsigh +outsight +outsin +outsing +outsit +outsize +outsized +outskill +outskip +outskirmish +outskirt +outskirter +outskirts +outslander +outslang +outsleep +outslide +outslink +outsmart +outsmell +outsmile +outsnatch +outsnore +outsoar +outsold +outsole +outsoler +outsonnet +outsound +outspan +outsparkle +outspeak +outspeaker +outspeech +outspeed +outspell +outspend +outspent +outspill +outspin +outspirit +outspit +outsplendor +outspoken +outspokenly +outsport +outspout +outspread +outspreading +outspring +outsprint +outspue +outspurn +outspurt +outstagger +outstair +outstand +outstander +outstanding +outstare +outstart +outstarter +outstartle +outstate +outstation +outstatistic +outstature +outstay +outsteal +outsteam +outstep +outstepping +outsting +outstink +outstood +outstorm +outstrain +outstream +outstreet +outstretch +outstretched +outstretcher +outstride +outstrike +outstrip +outstripped +outstripping +outstrips +outstrive +outstroke +outstrut +outstudent +outstudy +outstunt +outsubtle +outsuck +outsucken +outsuffer +outsuitor +outsulk +outsum +outswagger +outswarm +outswear +outsweep +outsweeping +outsweeten +outswell +outswift +outswim +outswindle +outswing +outswirl +outsyn +outt +outta +outtaken +outtalent +outtalk +outtask +outtaste +outtear +outtease +outtell +outthieve +outthink +outthreaten +outthrob +outthrough +outthrow +outthrust +outthruster +outthunder +outthwack +outtinkle +outtire +outtoil +outtongue +outtop +outtower +outtrade +outtrail +outtravel +outtrick +outtrot +outtrump +outturn +outturned +outtyrannize +outusure +outut +outvalue +outvanish +outvaunt +outvelvet +outvenom +outvictor +outvie +outvier +outvigil +outvillage +outvillain +outvoice +outvote +outvoted +outvoter +outvotes +outvoting +outvoyage +outwait +outwaiting +outwake +outwale +outwalk +outwall +outwallop +outwander +outwar +outwarble +outward +outwardly +outwardmost +outwardness +outwards +outwars +outwash +outwaste +outwatch +outwater +outwave +outwealth +outweapon +outwear +outwearing +outweary +outweave +outweed +outweep +outweigh +outweighed +outweighing +outweighs +outweight +outwell +outwent +outwhirl +outwick +outwile +outwill +outwind +outwindow +outwing +outwish +outwit +outwith +outwits +outwittal +outwitted +outwitter +outwitting +outwoe +outwoman +outwood +outword +outwore +outwork +outworker +outworld +outworn +outworth +outwrangle +outwrench +outwrest +outwrestle +outwriggle +outwring +outwrite +outwrought +outyard +outyell +outyelp +outyield +outzany +ouve +ouvea +ouvean +ouvert +ouvrard +ouvriere +ouya +ouzal +ouzas +ouzbek +ouzinkie +ouzou +ouzza +ovaherero +oval +ovalau +ovalbumin +ovalescent +ovaliform +ovalish +ovalization +ovalize +ovally +ovalness +ovalo +ovaloid +ovals +ovalwise +ovambo +ovamboland +ovampo +ovand +ovande +ovando +ovangangela +ovans +ovant +ovapa +ovarial +ovarian +ovaries +ovarin +ovariocele +ovariocyesis +ovariole +ovariolumbar +ovariostomy +ovariotomist +ovariotomize +ovariotomy +ovariotubal +ovarious +ovaritis +ovarium +ovas +ovateconical +ovated +ovately +ovation +ovational +ovationary +ovatoconical +ovatocordate +ovatodeltoid +ovatoglobose +ovatooblong +ovatoserrate +ovax +oven +ovenfork +ovenful +ovenlike +ovenly +ovenman +ovenpeel +ovens +ovenstone +ovenware +ovenwise +over +overability +overable +overabound +overabsorb +overabstain +overabundant +overabuse +overaccuracy +overaccurate +overact +overacted +overaction +overactive +overactivity +overacute +overadvance +overadvice +overaffect +overafflict +overage +overageness +overagitate +overagonize +overall +overalled +overalls +overambling +overanalyze +overangelic +overannotate +overanswer +overanxiety +overanxious +overappraise +overapt +overarch +overargue +overarm +overassail +overassert +overassess +overattached +overawe +overawed +overawful +overawing +overawn +overawning +overbake +overbalance +overbalanced +overballast +overbalm +overbanded +overbandy +overbank +overbanked +overbar +overbark +overbarren +overbase +overbaseness +overbashful +overbattle +overbear +overbearance +overbearer +overbearing +overbeat +overbeating +overbeck +overbeetling +overbelief +overbend +overberg +overbet +overbias +overbid +overbidding +overbig +overbigness +overbillow +overbit +overbite +overbitten +overbitter +overbitterly +overblack +overblame +overblaze +overbleach +overblessed +overblind +overblindly +overblithe +overbloom +overblouse +overblow +overblowing +overblown +overboard +overboast +overboastful +overbodice +overboding +overbody +overboil +overbold +overboldly +overboldness +overbook +overbookish +overbooming +overbore +overborne +overborrow +overbought +overbound +overbow +overbowed +overbowl +overbrace +overbragging +overbrained +overbranch +overbrave +overbravely +overbravery +overbray +overbreak +overbreathe +overbred +overbreed +overbribe +overbridge +overbright +overbrightly +overbrim +overbroaden +overbroil +overbrood +overbrook +overbrow +overbrown +overbrowse +overbrush +overbrutal +overbrutally +overbubbling +overbuild +overbuilt +overbulk +overbulky +overburden +overburn +overburned +overburning +overburnt +overburst +overburthen +overbusily +overbusiness +overbusy +overbuy +overby +overbyte +overcall +overcame +overcanny +overcanopy +overcap +overcapable +overcapably +overcapacity +overcape +overcaptious +overcard +overcare +overcareful +overcareless +overcaring +overcarking +overcarry +overcash +overcast +overcasting +overcasual +overcasually +overcatch +overcaution +overcautious +overcertify +overchafe +overchannel +overchant +overcharge +overcharged +overcharger +overcharging +overcharity +overchase +overcheap +overcheaply +overcheck +overcherish +overchidden +overchief +overchildish +overchill +overchoke +overchrome +overchurch +overcivil +overcivility +overcivilize +overclaim +overclamor +overclasp +overclean +overcleanly +overcleave +overclever +overclimb +overcloak +overclockin +overclocking +overclog +overclose +overclosely +overclothe +overclothes +overcloud +overcloy +overcluster +overcoached +overcoat +overcoated +overcoating +overcoats +overcoil +overcold +overcoldly +overcollar +overcolor +overcomable +overcome +overcomer +overcomes +overcometh +overcoming +overcomingly +overcommand +overcommend +overcommon +overcommonly +overcomplete +overcomplex +overcompound +overconcern +overcondense +overconfute +overconquer +overconsume +overcontract +overcook +overcooked +overcool +overcoolly +overcopious +overcorned +overcorrect +overcorrupt +overcostly +overcount +overcourtesy +overcover +overcovetous +overcow +overcoy +overcoyness +overcram +overcredit +overcreed +overcreep +overcritical +overcrop +overcross +overcrow +overcrowd +overcrowded +overcrowding +overcrowds +overcrown +overcrust +overcry +overcull +overculture +overcultured +overcumber +overcunning +overcup +overcured +overcurious +overcurl +overcurrency +overcurrent +overcurtain +overcustom +overcut +overcutter +overcutting +overdaintily +overdainty +overdamn +overdance +overdangle +overdare +overdaringly +overdarken +overdash +overdate +overdazed +overdazzle +overdeal +overdear +overdearly +overdearness +overdeck +overdecorate +overdeeming +overdeep +overdeepen +overdeeply +overdefined +overdelicacy +overdelicate +overdemand +overdepress +overdescant +overdesire +overdesirous +overdevelop +overdevoted +overdevotion +overdid +overdiffuse +overdigest +overdignify +overdignity +overdiligent +overdilute +overdilution +overdiscount +overdistance +overdistant +overdiverse +overdo +overdoer +overdogmatic +overdoing +overdome +overdominant +overdominate +overdone +overdoor +overdosage +overdose +overdoubt +overdoze +overdraft +overdrafts +overdrain +overdrainage +overdramatic +overdrape +overdrapery +overdraw +overdrawer +overdrawing +overdrawn +overdream +overdrench +overdress +overdressed +overdrew +overdrifted +overdrink +overdrip +overdrive +overdriven +overdroop +overdrowsed +overdry +overdubbed +overdue +overdunged +overdure +overdust +overdye +overdyke +overeager +overeagerly +overearnest +overeasily +overeasiness +overeasy +overeat +overeaten +overedge +overedit +overeducate +overeducated +overeffort +overegg +overelate +overelegance +overelegancy +overelegant +overemphasis +overemphatic +overempired +overempty +overenter +overentreat +overentry +overequal +overestimate +overexcite +overexercise +overexert +overexerted +overexertion +overexpand +overexpect +overexpert +overexplain +overexpose +overexposure +overexpress +overextend +overextreme +overeye +overface +overfacile +overfacilely +overfacility +overfactious +overfag +overfagged +overfaint +overfaith +overfaithful +overfall +overfamed +overfamiliar +overfamous +overfanciful +overfancy +overfar +overfast +overfasting +overfat +overfatigue +overfatigued +overfatten +overfavor +overfear +overfearful +overfeast +overfeatured +overfed +overfee +overfeed +overfeel +overfellowly +overfelon +overfeminine +overfeminize +overfertile +overfestoon +overfew +overfierce +overfile +overfill +overfilm +overfine +overfinished +overfish +overfit +overfix +overflatten +overfleece +overfleshed +overflexion +overflight +overfling +overfloat +overflog +overflood +overflorid +overflourish +overflow +overflowable +overflowed +overflower +overfloweth +overflowing +overflown +overflows +overfluency +overfluent +overfluently +overflush +overflutter +overfly +overfold +overfond +overfondle +overfondly +overfondness +overfoolish +overfoot +overforce +overforged +overformed +overforward +overfought +overfoul +overfoully +overfrail +overfrailty +overfrank +overfrankly +overfraught +overfree +overfreedom +overfreely +overfreight +overfrequent +overfret +overfrieze +overfrighted +overfrighten +overfroth +overfrown +overfrozen +overfruited +overfruitful +overfull +overfullness +overfurnish +overgaard +overgaiter +overgalled +overgamble +overgang +overgarment +overgarrison +overgaze +overgeneral +overgenerous +overgenial +overgentle +overgently +overget +overgifted +overgild +overgilted +overgird +overgirded +overgirdle +overglad +overgladly +overglance +overglass +overglaze +overglide +overglint +overgloom +overgloomy +overglorious +overgloss +overglut +overgo +overgoad +overgod +overgodly +overgood +overgorge +overgorged +overgovern +overgown +overgrace +overgracious +overgrade +overgrain +overgrainer +overgrasping +overgrateful +overgratify +overgraze +overgrazing +overgreasy +overgreat +overgreatly +overgreed +overgreedily +overgreedy +overgrew +overgrieve +overgrievous +overgrind +overgross +overgrossly +overground +overgrow +overgrowing +overgrown +overgrowth +overguilty +overgun +overhage +overhair +overhalf +overhand +overhanded +overhandicap +overhandle +overhang +overhanging +overhangs +overhappy +overharass +overhard +overharden +overhardness +overhardy +overharsh +overharshly +overhaste +overhasten +overhastily +overhasty +overhate +overhatted +overhaughty +overhaul +overhauled +overhauler +overhauling +overhauls +overhead +overheadman +overheads +overheady +overheap +overhear +overheard +overhearer +overhearing +overhears +overheartily +overhearty +overheat +overheated +overheatedly +overheave +overheaven +overheavy +overheight +overheighten +overheinous +overheld +overhelp +overhelpful +overhigh +overhighly +overhill +overhit +overholiness +overhollow +overholy +overhomely +overhonest +overhonestly +overhonesty +overhonor +overhorse +overhot +overhotly +overhour +overhouse +overhover +overhuge +overhuman +overhumanity +overhumanize +overhung +overhunt +overhurl +overhurry +overhusk +overidden +overidealism +overidle +overidly +overijssel +overimitate +overimport +overimpress +overinclined +overincrust +overindulge +overinflate +overinform +overink +overinsist +overinsolent +overinstruct +overinsure +overintense +overinterest +overinvest +overiodize +overirrigate +overissue +overitching +overjacket +overjade +overjaded +overjawed +overjealous +overjob +overjocular +overjoy +overjoyed +overjoyful +overjoyfully +overjoyous +overjudge +overjudging +overjudgment +overjump +overjust +overjutting +overkeen +overkeenness +overkeep +overkick +overkill +overkind +overkindly +overkindness +overking +overknavery +overknee +overknow +overknowing +overlabor +overlace +overlade +overlaid +overlain +overland +overlander +overlap +overlapped +overlapping +overlaps +overlard +overlarge +overlargely +overlast +overlate +overlaugh +overlaunch +overlave +overlavish +overlavishly +overlax +overlaxative +overlaxly +overlaxness +overlay +overlayed +overlayer +overlaying +overlays +overlead +overleaf +overlean +overleap +overlearn +overlearned +overleather +overleave +overleaven +overleer +overleg +overleisured +overlength +overlettered +overlewd +overlewdly +overlewdness +overliberal +overlick +overlie +overlier +overlift +overlight +overlighted +overlightly +overliking +overline +overling +overlinger +overlinked +overlip +overlipping +overlisted +overlisten +overliterary +overlittle +overlive +overlived +overlively +overliver +overload +overloaded +overloading +overloads +overloath +overlock +overlocker +overlofty +overlogical +overlong +overlook +overlooked +overlooker +overlooking +overlooks +overloook +overloose +overlord +overlords +overlordship +overlou +overloud +overloup +overlove +overlover +overlow +overlowness +overloyal +overloyally +overloyalty +overluscious +overlush +overlusty +overly +overlying +overmagnify +overmajority +overmalapert +overman +overmantel +overmantle +overmany +overmarch +overmark +overmarking +overmarl +overmask +overmast +overmaster +overmatch +overmatter +overmature +overmaturity +overmean +overmeanly +overmeanness +overmeasure +overmeddle +overmeek +overmeekly +overmeekness +overmellow +overmelodied +overmelt +overmerciful +overmerit +overmerrily +overmerry +overmettled +overmickle +overmighty +overmild +overmile +overmill +overmind +overminute +overminutely +overmix +overmoccasin +overmodest +overmodestly +overmodesty +overmoist +overmoisten +overmoisture +overmortgage +overmoss +overmost +overmotor +overmount +overmounts +overmourn +overmournful +overmuch +overmuchness +overmultiply +overname +overnarrow +overnarrowly +overnear +overneat +overneatness +overneglect +overnervous +overnet +overnew +overnice +overnicely +overniceness +overnicety +overnigh +overnight +overnighter +overnighters +overnimble +overnipping +overnoise +overnotable +overnourish +overnoveled +overnumber +overnumerous +overnurse +overobedient +overobese +overoblige +overoffend +overorder +overpaid +overpained +overpainful +overpaint +overpamper +overpart +overparted +overpartial +overpass +overpast +overpatient +overpay +overpayment +overpeck +overpeer +overpending +overpensive +overpeople +overpepper +overpersuade +overpert +overpet +overphysic +overpick +overpicture +overpinching +overpitch +overpitched +overpiteous +overplace +overplaced +overplain +overplant +overplay +overplease +overplenty +overplot +overplow +overplumb +overplume +overplump +overplus +overply +overpointed +overpoise +overpole +overpolish +overpolitic +overpopular +overpopulate +overpopulous +overpositive +overpossess +overpot +overpotent +overpour +overpower +overpowered +overpowerful +overpowering +overpowers +overpraise +overpray +overpreach +overprecise +overpreface +overpregnant +overpress +overpressure +overprice +overpriced +overprick +overprint +overprinted +overprinting +overprints +overprize +overprizer +overproduce +overprolific +overprolix +overpromise +overprompt +overpromptly +overprone +overproof +overprotect +overprotract +overproud +overproudly +overprove +overprovide +overprovoke +overprune +overpublic +overpuff +overpuissant +overpunish +overpurchase +overquantity +overquarter +overquell +overquick +overquickly +overquiet +overquietly +overrace +overrack +overrake +overran +overrange +overrank +overrankness +overrapture +overrash +overrashly +overrashness +overrate +overrated +overrating +overrational +overravish +overreach +overreacher +overreaching +overreact +overreacted +overread +overreader +overreadily +overready +overrealism +overreckon +overrecord +overrefine +overrefined +overregister +overregular +overregulate +overrelax +overreliance +overreliant +overreligion +overremiss +overremissly +overrennet +overrent +overreplete +overreserved +overresolute +overrestore +overrestrain +overreward +overrich +overriches +overrichness +overridden +override +overrides +overriding +overrife +overrigged +overright +overrigid +overrigidity +overrigidly +overrigorous +overrim +overriot +overripe +overripely +overripen +overripeness +overrise +overroast +overrode +overroll +overroof +overrooted +overrough +overroughly +overroyal +overrude +overrudely +overrudeness +overruff +overrule +overruled +overruler +overrules +overruling +overrulingly +overrun +overrunner +overrunning +overruns +overrush +overrusset +overrust +oversad +oversadly +oversadness +oversaid +oversail +oversale +oversaliva +oversalt +oversalty +oversand +oversanded +oversanguine +oversapless +oversated +oversatisfy +oversaturate +oversauce +oversaucy +oversave +oversaw +overscan +overscare +overscatter +overscented +overscore +overscour +overscratch +overscrawl +overscream +overscribble +overscrub +overscruple +overscurf +overscutched +oversea +overseal +overseam +overseamer +oversearch +overseas +overseason +overseasoned +overseated +oversecure +oversecurely +oversecurity +oversee +overseed +overseeing +overseen +overseer +overseerism +overseers +overseership +oversees +overseethe +oversell +oversend +oversensible +oversensibly +overserious +overservice +overservile +overset +oversetter +oversettle +oversettled +oversevere +overseverely +overseverity +oversew +overshade +overshadow +overshadowed +overshadower +overshadows +overshake +oversharp +overshave +oversheet +overshelving +overshepherd +overshine +overshirt +overshoe +overshoot +overshooting +overshort +overshorten +overshortly +overshot +overshoulder +overshowered +overshrink +overshroud +oversick +overside +oversight +oversights +oversilence +oversilent +oversilver +oversimple +oversimplify +oversimply +oversize +oversized +overskim +overskip +overskipper +overskirt +overslack +overslander +overslaugh +overslavish +oversleep +oversleeping +oversleeve +overslept +overslide +overslight +overslip +overslope +overslow +overslowly +overslowness +overslur +oversmall +oversman +oversmite +oversmitten +oversmoke +oversmooth +oversmoothly +oversnow +oversoak +oversoar +oversock +oversoft +oversoftly +oversoftness +oversold +oversolemn +oversolemnly +oversoon +oversoothing +oversorrow +oversorrowed +oversot +oversoul +oversound +oversour +oversourly +oversourness +oversow +overspacious +overspan +overspangled +oversparing +oversparred +overspatter +overspeak +overspeech +overspeed +overspeedily +overspeedy +overspend +overspent +overspill +overspin +oversplash +overspread +overspring +oversprinkle +oversprung +overspun +oversqueak +overstaff +overstaid +overstain +overstale +overstalled +overstand +overstaring +overstate +overstated +overstately +overstates +overstating +overstay +overstayal +oversteady +overstep +overstepped +overstepping +overstiff +overstifle +overstir +overstitch +overstock +overstocked +overstocking +overstocks +overstoop +overstoping +overstore +overstory +overstout +overstoutly +overstowage +overstowed +overstrain +overstrait +overstraiten +overstraitly +overstream +overstreet +overstrength +overstress +overstretch +overstrew +overstrict +overstrictly +overstride +overstrident +overstrike +overstrikes +overstriking +overstring +overstriving +overstrong +overstrongly +overstruck +overstrung +overstud +overstudied +overstudious +overstudy +overstuff +overstuffed +oversublime +oversubtile +oversubtle +oversubtlety +oversubtly +oversupplied +oversupplies +oversupply +oversure +oversurety +oversurge +overswarm +overswarth +oversway +oversweated +oversweep +oversweet +oversweeten +oversweetly +overswell +overswift +overswim +overswimmer +overswing +overswinging +overswirling +overt +overtakable +overtake +overtaken +overtaker +overtakers +overtakes +overtaketh +overtaking +overtalk +overtalker +overtame +overtamely +overtameness +overtapped +overtare +overtariff +overtarry +overtart +overtask +overtax +overtaxation +overtaxed +overteach +overtedious +overteem +overtell +overtempt +overtender +overtenderly +overtense +overtensely +overtension +overterrible +overtest +overthick +overthin +overthink +overthought +overthrew +overthrifty +overthrong +overthrow +overthrowal +overthrower +overthroweth +overthrowing +overthrown +overthrust +overthwart +overthwartly +overtide +overtight +overtightly +overtill +overtimbered +overtime +overtimer +overtimorous +overtinseled +overtint +overtip +overtipple +overtire +overtired +overtitle +overtly +overtness +overtoe +overtoil +overtoise +overton +overtone +overtones +overtongued +overtook +overtop +overtopped +overtopping +overtopple +overtorture +overtower +overtrace +overtrack +overtrade +overtrader +overtrailed +overtrain +overtrample +overtravel +overtread +overtrick +overtrim +overtrouble +overtrue +overtrump +overtrust +overtrustful +overtruthful +overtumble +overture +overtures +overturn +overturnable +overturned +overturner +overturneth +overturning +overturns +overtutor +overtwine +overtwist +overtype +overtyped +overuberous +overurge +overuse +overused +overusual +overusually +overvaliant +overvaluable +overvalue +overvariety +overvault +overvehement +overveil +overview +overviews +overvoltage +overvote +overwade +overwages +overwake +overwalk +overwander +overward +overwash +overwasted +overwatch +overwatcher +overwater +overwave +overway +overwealth +overwealthy +overweaponed +overwear +overweary +overweather +overweave +overweb +overween +overweener +overweening +overweep +overweigh +overweight +overwell +overwelt +overwet +overwetness +overwheel +overwhelm +overwhelmed +overwhelmer +overwhelming +overwhelms +overwhipped +overwhirl +overwhisper +overwide +overwild +overwilily +overwilling +overwily +overwin +overwind +overwing +overwinter +overwintered +overwiped +overwisdom +overwise +overwisely +overwithered +overwoman +overwomanize +overwomanly +overwood +overwooded +overwoody +overword +overwork +overworked +overworking +overworks +overworld +overworn +overworry +overworship +overwound +overwove +overwoven +overwrap +overwrest +overwrested +overwrestle +overwrite +overwrites +overwriting +overwritten +overwroth +overwrought +overyear +overyoung +overyouthful +overzeal +overzealous +overzicht +ovest +ovett +ovey +ovgan +ovibos +ovibovinae +ovibovine +ovicapsular +ovicapsule +ovicell +ovicellular +ovicidal +ovicide +ovicular +oviculated +oviculum +ovicyst +ovicystic +ovidae +ovidian +oviducal +oviduct +oviductal +oviedo +oviferous +ovification +ovigenesis +ovigenetic +ovigenic +ovigenous +ovigerm +ovigerous +ovila +ovile +ovillus +ovimbundu +ovinae +ovine +ovinia +ovioba +ovipara +oviparal +oviparity +oviparous +oviparously +oviposit +oviposition +ovipositor +ovis +ovisac +oviscapt +ovism +ovispermary +ovist +ovistic +ovivorous +ovna +ovocyte +ovoelliptic +ovoflavin +ovogenesis +ovogenetic +ovogenous +ovogonium +ovoid +ovoidal +ovolemma +ovolo +ovological +ovologist +ovology +ovolytic +ovomucoid +ovoplasm +ovoplasmic +ovopyriform +ovorhangay +ovorhomboid +ovotestis +ovovitellin +ovovivipara +ovporiented +ovrerhasty +ovseevich +ovula +ovular +ovularian +ovulary +ovulate +ovulated +ovulating +ovulation +ovule +ovuliferous +ovuligerous +ovulist +ovum +ovuworie +owambo +owan +owando +owaneco +owanka +owasco +owasso +owatonna +owed +owego +owelty +owen +owena +owenda +owendale +owendo +owenia +owenian +owenism +owenist +owenite +owenize +owenke +owens +owensboro +owensburg +owensby +owensville +owenton +ower +owerance +owerby +owercome +owergang +owerloup +owerri +owertaen +owerword +owes +owest +oweth +owght +owing +owings +owingsmills +owingsville +owiniga +owiss +owldom +owler +owlery +owlet +owlglass +owlhead +owling +owlish +owlishly +owlishness +owlism +owllight +owllike +owls +owlsey +owlshead +owlslight +owlspiegle +owned +owner +ownerless +ownername +owners +ownership +ownerships +owneth +owney +ownhood +owning +ownness +owns +ownself +ownwayish +owoi +owosso +owregane +owrehip +owrelay +owse +owsen +owser +owsiak +owsley +owtchah +owyhee +owyheeite +owynn +oxacid +oxadiazole +oxalacetic +oxalaldehyde +oxalamid +oxalamide +oxalan +oxaldehyde +oxalemia +oxalidaceae +oxalidaceous +oxalis +oxalite +oxalonitril +oxalonitrile +oxaluramid +oxaluramide +oxalurate +oxaluria +oxaluric +oxalyl +oxalylurea +oxamate +oxamethane +oxamic +oxamid +oxamide +oxamidine +oxammite +oxan +oxana +oxanate +oxane +oxanic +oxanilate +oxanilic +oxanilide +oxatcp +oxatcr +oxatjb +oxatsl +oxatsw +oxatyo +oxazine +oxazole +oxbane +oxberry +oxbird +oxbiter +oxblood +oxbow +oxboy +oxbrake +oxbridge +oxcheek +oxchuc +oxcontrols +oxdiacetic +oxdiazole +oxdsa +oxea +oxeate +oxen +oxenby +oxendine +oxenford +oxenga +oxengb +oxengc +oxenge +oxenstierna +oxeote +oxer +oxetone +oxfly +oxford +oxfordian +oxfordism +oxfordist +oxfordshire +oxgang +oxglu +oxglua +oxglub +oxgluc +oxglud +oxglux +oxgluy +oxgluz +oxgoad +oxharrow +oxhead +oxheal +oxheart +oxhide +oxhoft +oxhorn +oxhouse +oxhuvud +oxidability +oxidable +oxidase +oxidation +oxidational +oxidative +oxidator +oxide +oxides +oxidic +oxidimetric +oxidimetry +oxidizable +oxidization +oxidize +oxidized +oxidizement +oxidizer +oxidizing +oxidulated +oximate +oximation +oxime +oxland +oxley +oxlike +oxlip +oxly +oxmail +oxman +oxmanship +oxnims +oxoindoline +oxon +oxonic +oxonium +oxonolatry +oxozone +oxozonide +oxpecker +oxphony +oxphys +oxreim +oxshoe +oxskin +oxtail +oxter +oxtongue +oxwort +oxyacanthine +oxyacanthous +oxyacetylene +oxyacid +oxyaena +oxyaenidae +oxyaldehyde +oxyamine +oxyaphia +oxyaster +oxybaphon +oxybaphus +oxybenzene +oxybenzoic +oxybenzyl +oxyberberine +oxyblepsia +oxybromide +oxybutyria +oxybutyric +oxycalcium +oxycamphor +oxycaproic +oxycarbonate +oxycellulose +oxycephalic +oxycephalism +oxycephalous +oxycephaly +oxychlorate +oxychloric +oxychloride +oxychromatic +oxychromatin +oxycinnamic +oxycoccus +oxycopaivic +oxycoumarin +oxycrate +oxycyanide +oxydactyl +oxydendrum +oxydiact +oxyesthesia +oxyether +oxyethyl +oxyfatty +oxyfluoride +oxygas +oxygen +oxygenant +oxygenated +oxygenating +oxygenation +oxygenator +oxygene +oxygenerator +oxygenic +oxygenicity +oxygenium +oxygenizable +oxygenize +oxygenized +oxygenizer +oxygenizing +oxygenous +oxygeusia +oxygnathous +oxygon +oxygonal +oxyhalide +oxyhaloid +oxyhematin +oxyhexactine +oxyhexaster +oxyhydrate +oxyhydric +oxyhydrogen +oxyiodide +oxyketone +oxyl +oxylabrax +oxyluciferin +oxymandelic +oxymel +oxymethylene +oxymomora +oxymoron +oxymoronic +oxymuriate +oxymuriatic +oxynaphthoic +oxynarcotine +oxyneurin +oxyneurine +oxynitrate +oxyntas +oxyntic +oxyophitic +oxyopia +oxyopidae +oxyosphresia +oxypetalous +oxyphenol +oxyphenyl +oxyphile +oxyphilic +oxyphilous +oxyphonia +oxyphosphate +oxyphthalic +oxyphyllous +oxyphyte +oxypicric +oxypolis +oxyproline +oxypropionic +oxypurine +oxypycnos +oxyquinoline +oxyquinone +oxyrhine +oxyrhinous +oxyrhynch +oxyrhynchous +oxyrhynchus +oxyrrhyncha +oxyrrhynchid +oxysalicylic +oxysalt +oxystearic +oxystomata +oxystomatous +oxystome +oxysulphate +oxysulphide +oxyterpene +oxytocia +oxytocic +oxytocin +oxytocous +oxytoluene +oxytoluic +oxytone +oxytonesis +oxytonical +oxytonize +oxytricha +oxytropis +oxytylotate +oxytylote +oxyuriasis +oxyuricide +oxyuridae +oxyurous +oxywelding +oyama +oyampi +oyampipuku +oyana +oyanpi +oyapi +oyapock +oyaricoulet +oyasato +oyda +oyens +oyer +oyes +oyez +oyin +oykangand +oyly +oyon +oyrot +oyster +oysterage +oysterbay +oysterbird +oystered +oysterer +oysterfish +oystergreen +oysterhood +oysterhouse +oystering +oysterish +oysterlike +oysterling +oysterman +oysterous +oysterroot +oysters +oysterseed +oystershell +oysterville +oysterwife +oysterwoman +oytak +oyuwi +ozabochennie +ozaki +ozal +ozamis +ozan +ozarkite +ozatay +ozawa +ozawkie +ozay +ozbek +ozdamar +ozem +ozena +ozenne +ozer +ozeray +ozersky +ozgur +ozha +ozias +oziemblo +oziexplorer +ozir +oziskender +ozkan +ozker +ozkul +ozlem +ozma +ozman +ozmizrak +ozmond +ozmore +ozni +oznites +ozobrome +ozocerite +ozokerit +ozokerite +ozolotepec +ozona +ozonate +ozonation +ozonator +ozone +ozoned +ozonic +ozonide +ozoniferous +ozonify +ozonium +ozonization +ozonize +ozonizer +ozonometer +ozonometry +ozonoscope +ozonoscopic +ozonous +ozophen +ozophene +ozora +ozostomia +ozotype +ozumaci +ozumacin +ozumatla +ozumatlan +ozyetis +ozzie +ozzman +ozzmosis +ozzy +paaci +paafang +paal +paama +paamalopevi +paamiut +paang +paanga +paar +paarai +paarlenberg +paasale +paasio +paauhau +paauilo +paauw +paave +paavo +paavonurmi +paawa +paba +pabble +pabir +pablo +pablos +pabna +pabouch +pabra +pabular +pabulary +pabulation +pabulatory +pabulous +pabulum +paca +pacaasnovos +pacable +pacaguara +pacahanovo +pacahuara +pacaja +pacakge +pacal +pacaraos +pacate +pacation +pacative +pacatolus +pacawara +pacay +pacaya +pacayal +paccanarist +pacchionian +pacchmi +pacdpinet +pace +paceboard +paced +pacefoot +pacelli +pacemaker +pacemaking +pacer +pacers +paces +pacey +pacf +pachaco +pachagan +pachaghan +pachak +pachal +pachangara +pacheco +pachek +pachelbel +pachella +pachhai +pachien +pachisi +pachitea +pachner +pachnolite +pachometer +pachomian +pachons +pachorek +pacht +pachuco +pachulski +pachuta +pachyacria +pachyaemia +pachycarpous +pachycephal +pachycephaly +pachychilia +pachycholia +pachychymia +pachycladous +pachydactyl +pachydactyly +pachyderm +pachyderma +pachydermal +pachydermata +pachydermia +pachydermial +pachydermic +pachydermoid +pachydermous +pachyemia +pachyglossal +pachyglossia +pachyhaemia +pachyhaemic +pachyhaemous +pachyhemia +pachyhymenia +pachyhymenic +pachylophus +pachylosis +pachyma +pachymenia +pachymenic +pachymeninx +pachymeter +pachynathous +pachynema +pachynsis +pachyntic +pachyodont +pachyotia +pachyotous +pachypod +pachypodous +pachypterous +pachyrhizus +pachysandra +pachysaurian +pachysomia +pachysomous +pachystima +pachytene +pachytylus +pacifiable +pacific +pacifica +pacifical +pacifically +pacificate +pacification +pacificator +pacificatory +pacificbeach +pacificcity +pacificgrove +pacifici +pacificism +pacificist +pacificity +pacified +pacifier +pacifies +pacifieth +pacifique +pacifistic +pacify +pacifying +pacifyingly +pacing +pacinian +pacinko +pacino +pack +packable +package +packaged +packager +packagers +packages +packaging +packagings +packard +packauskas +packbuilder +packcloth +packed +packer +packers +packery +packet +packetboy +packetman +packetpet +packets +packetsmight +packett +packhouse +packing +packless +packly +packmaker +packmaking +packman +packmanship +packness +packrat +packs +packsack +packsaddle +packstaff +packt +packthread +packwall +packwaller +packware +packwaukee +packway +packwood +packy +pacman +paco +pacoh +pacohphuong +pacoima +pacolet +pacoletmills +pacom +pacome +pacon +paconahua +pacouryuva +pacoy +pacquet +pacquita +pacrat +pact +paction +pactional +pactionally +pactolian +pactolus +pacts +pacu +pacula +paczek +paczynski +pada +padam +padamo +padamsee +padan +padanaram +padang +padari +padarise +padas +padass +padauiri +padauk +padaung +padave +paday +padcloth +padda +padded +padden +padder +paddi +paddick +paddie +paddies +padding +paddington +paddle +paddlecock +paddled +paddlefish +paddlelike +paddler +paddlewood +paddling +paddockride +paddockstone +paddockstool +paddon +paddy +paddybird +paddyism +paddymelon +paddywack +paddywatch +paddywhack +pade +padee +padella +paden +padencity +paderborn +padfoot +padge +padgett +padilla +padina +padiou +padishah +padisua +padjan +padla +padle +padli +padlike +padloid +padloids +padlu +padma +padmakar +padmanabhan +padmasana +padme +padmelon +padnag +pado +padoa +padoan +padoe +padogho +padogo +padokwa +padon +padoo +padorho +padoro +padovani +padpiece +padraic +padraig +padriac +padro +padroadist +padroado +padron +padrone +padroni +padronism +pads +padstone +padtree +padua +paduan +paduanism +paduasoy +paducah +paduka +paduko +padula +padus +padvi +paeanism +paeanize +paeckchen +paedarchy +paedatrophia +paedatrophy +paediatry +paedogenesis +paedogenetic +paedometer +paedomorphic +paedonymic +paedonymy +paedotribe +paedotrophic +paedotrophy +paegel +paegle +paeh +paelignian +paella +paeniu +paenula +paeon +paeonia +paeoniaceae +paeonian +paeonic +paes +paesano +paese +paesler +paetrick +paetsch +paetzold +paez +paezan +pafde +pafilis +paftdr +pafuri +pafvcs +paga +pagabete +pagadian +pagai +pagalu +pagan +paganalia +paganalian +pagandom +pagani +paganic +paganical +paganically +paganini +paganish +paganishly +paganism +paganist +paganistic +paganity +paganization +paganize +paganizer +paganly +pagano +paganry +pagans +paganyaw +pagatpat +pagbahan +pagcah +page +pageanted +pageanteer +pageantic +pageants +pageau +pagebar +pageboy +pagebreaks +pagebuilding +pagecraft +paged +pagedn +pagedom +pagedoor +pagefooting +pageftp +pageful +pageheading +pagehood +pagei +pageland +pagelayout +pageless +pagelike +pagemaker +pagemaster +pagemill +pagenkopf +pagenull +pager +pagerdewa +pageref +pagers +pagertap +pages +pageship +pagesysop +paget +pageton +pagetools +pagett +pageup +pagh +pagi +pagiel +pagimana +pagina +paginal +paginary +paginated +paginates +paginating +pagination +paging +pagiopod +pagiopoda +pagis +paglia +pagliacci +pagliai +pagliarulo +pagliero +pagnani +pagni +pagnol +pagny +pago +pagodalike +pagodite +pagoe +pagoo +pagoscope +pagri +pagrus +pagu +paguana +paguara +paguasa +paguate +paguma +pagurek +pagurian +pagurid +paguridae +paguridea +pagurine +pagurinea +paguroid +paguroidea +pagurova +pagurus +pagus +paha +pahala +pahang +pahare +pahareen +pahari +paharia +paharipalpa +pahathmoab +pahavai +pahemuba +pahenbaquebo +paheng +pahi +pahiatua +pahlavani +pahlavi +pahlen +pahmi +pahnke +paho +pahoa +pahoehoe +pahokee +pahoria +pahoturi +pahouin +pahri +pahrump +pahtoon +pahu +pahutan +paia +paialunga +paiawa +paichien +paici +paicines +paiconeca +paicv +paid +paideutic +paideutics +paidia +paidological +paidologist +paidology +paiem +paigc +paige +paigle +paiguna +paii +paijanne +paik +paiko +pail +paile +pailful +pailin +paillard +paillasse +paillette +pailletted +pailou +pails +paimaneh +paimi +paimohuan +pain +paine +pained +painesdale +painesville +painful +painfully +painfulness +painim +paining +painingly +painkiller +painkillers +painless +painlessly +painlessness +painleva +painproof +pains +painstaker +painsworthy +paint +paintability +paintable +paintably +paintbank +paintbox +paintbrush +paintbrushes +painted +paintedness +paintedpost +paintedst +painter +painterish +painterlike +painterly +painters +paintership +painterson +paintertown +paintiness +painting +paintingness +paintings +paintless +paintlick +painton +paintpot +paintproof +paintress +paintrix +paintrock +paintroot +paints +paintshoppro +paintsville +painty +paip +paipai +paiquize +pair +pairang +paired +paireddata +pairedness +pairedt +pairer +pairin +pairing +pairings +pairment +pairoj +pairs +pais +paisa +paisanite +paisano +paise +paisley +paita +paitan +paitanic +paite +paithe +paiuan +paiute +paiva +paiwa +paiwan +paiwanic +paiwari +paix +paiyage +paiyi +pajade +pajadinca +pajadinka +pajahuello +pajama +pajamaed +pajamas +pajarbulan +pajarito +pajeu +pajo +pajock +pajokumbuh +pajonal +pajonism +pajulu +paka +pakaa +pakaanova +pakaanovas +pakaasnovos +pakager +pakang +pakara +pakaro +pakasit +pakatan +pakawa +pakawan +pakchoi +pakeha +pakes +paket +pakets +pakewa +pakhmutova +pakhomov +pakhpuluk +pakhtoo +pakhtu +pakhtun +pakinai +pakinee +pakir +pakishan +pakistan +pakistani +pakistanis +pakkasvirta +pakkau +pakleds +pako +pakot +pakpak +pakprotector +pakse +paksi +paksong +paktia +paktika +paktong +paktu +paktyan +paku +pakue +pakulski +pakum +pakutapuya +pala +palaachi +palaau +palabras +palace +palaced +palacek +palacelike +palaceous +palaces +palaceward +palacewards +palachi +palacio +palacios +paladin +paladium +palaearctic +palaeechini +palaeic +palaemon +palaemonid +palaemonidae +palaemonoid +palaeobotany +palaeocarida +palaeocene +palaeoconcha +palaeocosmic +palaeocyclic +palaeoethnic +palaeofauna +palaeogaea +palaeogaean +palaeogene +palaeoglyph +palaeograph +palaeography +palaeolatry +palaeolith +palaeolithic +palaeolithy +palaeologist +palaeology +palaeoniscid +palaeoniscum +palaeoniscus +palaeophile +palaeophis +palaeophytic +palaeoplain +palaeornis +palaeosaur +palaeosaurus +palaeosophy +palaeostraca +palaeostylic +palaeostyly +palaeothere +palaeotype +palaeotypic +palaeozoic +palaestra +palaestral +palaestrian +palaestric +palaestrics +palaetiology +palafitte +palagonite +palagonitic +palaic +palaihnihan +palaiotype +palaite +palaka +palakhi +palakka +palal +palala +palama +palamar +palamate +palame +palamedea +palamedean +palamedeidae +palamedes +palamite +palamitism +palampore +palamul +palan +palanan +palance +palander +palanenyo +palang +palange +palani +palanka +palankeen +palanque +palanquin +palanskij +palantine +palantir +palantla +palapalai +palapteryx +palaquium +palar +palara +palas +palasek +palat +palata +palatability +palatable +palatably +palatal +palatalism +palatality +palatalize +palataltops +palated +palateful +palateless +palatelike +palates +palatia +palatial +palatially +palatialness +palatian +palatic +palatinal +palatinate +palatineship +palatinian +palatinite +palation +palatist +palatitis +palative +palatization +palatize +palatized +palatka +palatodental +palatogram +palatograph +palatography +palatometer +palatonasal +palatoplasty +palatoplegia +palatua +palau +palauan +palauans +palaui +palauli +palaung +palaungic +palaungriang +palaungwa +palaver +palaverer +palaverist +palaverment +palaverous +palaw +palawan +palawanen +palawano +palawen +palay +palaya +palayan +palbarar +palberry +palch +palchi +palci +palcii +palco +palcy +palczuk +paldena +paldida +pale +palea +paleaceous +palearctic +paleate +palebelly +palebuck +palechinoid +paled +paledness +paleen +paleface +palefaced +palehearted +palei +paleiform +paleleh +palely +paleman +palembang +palen +paleness +palenque +palenquero +palenville +paleoatavism +paleobiology +paleobotanic +paleobotany +paleocene +paleoconcha +paleocosmic +paleocrystal +paleocrystic +paleocyclic +paleoecology +paleoethnic +paleofauna +paleogene +paleogenesis +paleogenetic +paleoglyph +paleograph +paleographer +paleographic +paleography +paleokinetic +paleola +paleolate +paleolatry +paleolith +paleolithic +paleolithist +paleolithoid +paleolithy +paleological +paleologist +paleologus +paleology +paleontology +paleophytic +paleopicrite +paleoplain +paleopsychic +paleostylic +paleostyly +paleotechnic +paleothermal +paleothermic +paleozoology +paler +palermitan +palermo +pales +palesman +palest +palestina +palestine +palestinian +palestinians +palestra +palestral +palestrian +palestric +palestrical +palet +paletes +paletiology +paletot +palets +palette +paletwa +paletz +palevitskaya +palewise +paley +palfreyed +palfreyman +palgat +pali +paliau +palicourea +palicur +palidwor +paliet +palification +paliform +paliga +paligorskite +paliha +palijur +palik +palikar +palikarism +palikinesia +palikir +palikoulo +palikour +paliku +palikur +palila +palilalia +palili +palilia +palilicium +palillo +palillogia +palilogetic +palilogy +palimbacchic +palimbei +palimpsest +palimpsestic +palimpset +palin +palinal +palindromist +paling +palingenesia +palingenesis +palingenesy +palingenetic +palingenic +palingenist +palingeny +palinode +palinodial +palinodic +palinodist +palinody +palinurid +palinuridae +palinuroid +palinurus +palioariene +palioping +palioupiny +paliphrasia +palipo +palirrhea +palisades +palisading +palisado +palisana +palisander +palisfy +palish +palistrophia +palisua +palit +palita +palitiani +palito +palityan +paliurus +paliwal +paliyan +palizin +paljgu +palk +palkee +palki +palku +palla +palladammine +palladianism +palladic +palladinize +palladio +palladion +palladious +palladiumize +palladize +palladous +pallae +pallah +pallakha +pallall +pallanchacra +pallandt +pallas +pallaschke +pallasite +pallavicini +pallbearer +palle +palled +pallen +pallenberg +pallescence +pallescent +pallesen +pallesthesia +pallet +pallete +palleting +palletize +pallette +pallholder +palli +pallial +palliament +palliard +palliasse +palliata +palliation +palliative +palliatively +palliator +palliatory +pallid +pallidity +pallidly +pallidness +pallin +palliness +pallion +palliopedal +pallium +palliyan +pallmall +pallograph +pallographic +pallometric +pallone +palloni +pallor +pallotta +pallu +palluch +palluites +pallwise +pally +palm +palma +palmaceae +palmaceous +palmad +palmae +palmar +palmara +palmarian +palmarini +palmary +palmas +palmated +palmately +palmatifid +palmatiform +palmatilobed +palmation +palmatisect +palmature +palmbeach +palmberg +palmcity +palmcoast +palmcrist +palmdale +palmdesert +palme +palmed +palmella +palmellaceae +palmelloid +palmer +palmerdale +palmerge +palmerite +palmerlake +palmersville +palmerton +palmerworm +palmery +palmesthesia +palmette +palmetum +palmful +palmgren +palmharbor +palmicolous +palmieri +palmiferous +palmiform +palmigrade +palmilobate +palmilobated +palmilobed +palminervate +palminerved +palming +palmiped +palmipedes +palmipes +palmist +palmister +palmistry +palmitate +palmite +palmitic +palmitin +palmitinic +palmito +palmitoleic +palmitone +palmiveined +palmivorous +palmkernel +palmlike +palmo +palmodic +palmos +palmoscopy +palmospasmus +palmpilot +palmrus +palms +palmscan +palmsprings +palmstjerna +palmtop +palmtree +palmula +palmus +palmwise +palmwood +palmwriting +palmy +palmyra +palmyrene +palmyrenian +palnu +palo +paloalto +paloc +palocedro +paloesch +paloheimo +palola +palolo +paloma +palomaa +palomar +palomares +palomba +palombino +palombo +palometa +palomino +palong +palooka +palopinto +paloque +palor +palos +palosapis +palosheights +palospark +palouse +palouser +palouzi +paloverde +palp +palpa +palpability +palpableness +palpably +palpacle +palpal +palpate +palpation +palpatory +palpebra +palpebral +palpebrate +palpebration +palpebritis +palped +palpi +palpicorn +palpicornia +palpifer +palpiferous +palpiform +palpiger +palpigerous +palpitant +palpitate +palpitation +palpless +palpocil +palpon +palpulus +palpus +pals +palsgrave +palsgravine +palsied +palsies +palsson +palstave +palster +palsy +palsylike +palsywort +palt +palta +palter +palterer +paltering +palterly +palti +paltiel +paltite +paltoquet +paltrily +paltriness +paltrinieri +paltry +palu +paluan +paludal +paludament +paludamentum +palude +paludial +paludian +paludic +paludicella +paludicolae +paludicole +paludicoline +paludicolous +paludiferous +paludina +paludinal +paludine +paludinous +paludism +paludose +paludous +paludrin +paludrine +palue +palula +palule +palulus +palumbo +palus +paluso +palustral +palustrian +palustrine +paluxy +paluzzi +palva +paly +palynology +pama +pamale +paman +pamana +pamanyungan +pambadeque +pambanmanche +pambia +pambianchi +pambieri +pamboang +pambuhan +pame +pamekasan +pamela +pamelina +pamella +pamelyn +pament +pamentarian +pamenyan +pameroon +pamfilo +pami +pamina +pamir +pamiri +pamirian +pamirs +pamiwa +pamlico +pammari +pamment +pammi +pammie +pammy +pamoa +pamona +pamosean +pampa +pampadeque +pampanga +pampangan +pampango +pampanguen +pampanini +pampas +pampasano +pampean +pampel +pamper +pampered +pamperedly +pamperedness +pamperer +pamperin +pamperize +pampero +pamperos +pamphagous +pampharmacon +pamphiliidae +pamphilius +pamphjlet +pamphletage +pamphletary +pamphleteer +pamphleter +pamphletful +pamphletic +pamphletical +pamphletize +pamphlets +pamphletwise +pamphylia +pamphysical +pamphysicism +pampilion +pampiniform +pampinocele +pamplegia +pamplico +pamplin +pamplona +pampootee +pampootie +pampre +pamprodactyl +pampsychism +pampsychist +pams +pamue +pamunguup +pamunkey +pamusa +pana +panaca +panace +panacea +panacean +panaceas +panaceist +panache +panached +panachure +panada +panade +panaeati +panafrica +panafrican +panagia +panagiarion +panags +panagua +panaieti +panait +panak +panaka +panakha +panalachi +panalle +panama +panamacity +panamaian +panaman +panamanian +panamanians +panamano +panamenista +panamerican +panamic +panamint +panamist +panang +pananquin +panao +panapanayan +panape +panapospory +panapu +panaquitan +panaras +panarchic +panarchy +panare +panari +panaris +panaritium +panarteritis +panarthritis +panary +panasean +panasiuk +panasonic +panasuan +panatela +panathenaea +panathenaean +panathenaic +panatinani +panatrophy +panawina +panax +panay +panayan +panayano +panayeti +panbal +panbe +panboeotian +panc +pancake +pancaked +pancakes +pancana +pancarditis +pancare +pancaru +pancewicz +panch +pancha +panchagar +panchali +panchama +panchayat +panchen +pancheon +panchgaunle +panchi +panchiao +panchion +panchita +panchito +panchmatia +pancholy +panchromatic +panchthar +panchu +panchway +panclastic +pancosmic +pancosmism +pancosmist +pancratian +pancratiast +pancratic +pancratical +pancration +pancratism +pancratist +pancratium +pancreas +pancreatic +pancreatin +pancreatism +pancreatitic +pancreatitis +pancreatize +pancreatoid +pancreatomy +pancreectomy +pancreozymin +pancyprian +pand +pandal +pandama +pandan +pandanaceae +pandanaceous +pandanales +pandang +pandar +pandaram +pandarctos +pandaric +pandarus +pandas +pandation +pandau +panday +pande +pandean +pandect +pandectist +pandelios +pandemia +pandemian +pandemic +pandemicity +pandemics +pandemoniac +pandemonian +pandemonic +pandemonism +pandemonium +pandemos +pandemy +pandequebo +panderage +panderer +panderess +panderism +panderize +panderly +panderma +pandermite +panderous +pandership +pandewan +pandey +pandi +pandiabolism +pandian +pandikeri +pandillero +pandion +pandionidae +pandit +pandita +pandjama +pandle +pandlewhew +pando +pandolfi +pandolfini +pandolfo +pandora +pandorea +pandoridae +pandorina +pandorphin +pandorphs +pandosto +pandour +pandowdy +pandoz +pandrangi +pandro +pandrop +pandu +pandura +pandurate +pandurated +panduriform +pandy +pandya +pane +paneate +paned +panegoism +panegoist +panegyric +panegyrical +panegyricize +panegyricon +panegyricum +panegyris +panegyrist +panegyrize +panegyrizer +panegyry +paneity +panek +panekiller +panel +panela +panelation +paneled +paneler +paneless +paneling +panelist +panelists +panellation +panelli +panelling +panels +panelwise +panelwork +panence +panentheism +paneroa +panes +panesar +panesthesia +panesthetic +panetta +paneulogism +panev +panewai +paneyate +panfil +panfish +panfried +panful +pang +panga +pangaea +pangai +pangalanes +pangamic +pangamous +pangamously +pangamy +pangan +pangane +pangasinan +pangasinic +pangboen +pangborn +pangborne +pangburn +pangen +pangene +pangenesis +pangenetic +pangenic +panger +pangermanic +pangful +panggar +panghorn +panghse +pangi +pangia +pangium +pangkajene +pangkep +pangkumu +pangless +panglessly +panglima +pangloss +panglossian +panglossic +pangolin +pangpang +pangs +pangseng +pangtsah +pangu +panguitch +pangul +pangutaran +pangwa +pangwe +panhandler +panharmonic +panhead +panheaded +panhellenic +panhellenios +panhellenism +panhellenist +panhellenium +panhidrosis +panhuman +panhygrous +panhyperemia +pani +pania +paniai +panic +panical +panically +panicful +panicked +panicking +panicky +panicled +paniclike +panicmonger +panics +panicularia +paniculate +paniculated +paniculately +paniculitis +panicum +panidrosis +paniduria +panier +panification +panika +panikita +panim +panimmunity +paninaro +paninean +paningesen +panionia +panionian +panionic +paniquita +paniquitan +panisc +panisca +paniscus +panisic +panisse +panivorous +paniya +paniyan +panizzi +panj +panjab +panjabi +panjima +panjsher +pank +pankaj +pankarara +pankarare +pankararu +pankaravu +pankaroru +pankaru +panke +pankesh +pankho +pankhu +pankhurst +pankin +pankington +pankiw +panko +pankow +pankration +pankratov +pankratova +pankratz +pankshin +panky +panlogical +panlogism +panmalaysian +panman +panmelodicon +panmelodion +panmerism +panmeristic +panmixia +panmixy +panmnesia +panmug +panna +pannade +pannag +pannage +pannai +pannam +pannamaria +panne +panned +pannei +pannel +pannell +pannequin +panner +panners +pannery +panneuritic +panneuritis +pannicle +pannicular +pannier +panniered +pannierman +panniers +pannikin +panning +pannonia +pannonian +pannonic +pannose +pannosely +pannum +pannus +pannuscorium +panny +pano +panoan +panobo +panocha +panoche +panococo +panoistic +panola +panom +panomphaic +panomphean +panomphic +panon +panopaea +panophobia +panoplied +panoplist +panoptic +panoptical +panopticon +panora +panoram +panorama +panoramacity +panoramical +panoramist +panornithic +panorpa +panorpatae +panorpian +panorpid +panorpidae +panos +panosh +panosteitis +panostitis +panotitis +panotype +panouchi +panov +panova +panpathy +panpharmacon +panphobia +panpipe +panplegia +panpolism +panpra +panpsychic +panpsychism +panpsychist +pans +panscientist +pansciolism +pansciolist +pansclerosis +pansclerotic +panse +pansexism +pansexual +pansexualism +pansexualist +pansexuality +pansexualize +pansey +panshard +panside +pansideman +pansie +pansied +pansies +pansinuitis +pansinusitis +pansmith +panso +pansophic +pansophical +pansophism +pansophist +pansophy +panspermia +panspermic +panspermism +panspermist +panspermy +pansy +pansylike +pant +pantacosm +pantagamy +pantages +pantagogue +pantagraph +pantagraphic +pantagruel +pantagruelic +pantai +pantaleon +pantaletless +pantalets +pantaletted +pantalgia +pantalon +pantalone +pantaloon +pantalooned +pantaloonery +pantaloons +pantameter +pantamorph +pantamorphia +pantamorphic +pantanemone +pantaphobia +pantar +pantarbe +pantarchy +pantas +pantascope +pantascopic +pantastomina +pantatrophia +pantatrophy +pantatype +pantechnic +pantechnicon +panted +pantego +panteleev +pantelegraph +panteleimon +pantelephone +pantelho +pantelic +pantelis +pantellerite +panter +pantera +panterer +pantesco +panteth +pantha +panthe +panthea +pantheian +pantheic +pantheistic +pantheists +panthelism +pantheology +pantheon +pantheonic +pantheonize +panther +pantherburn +pantheress +pantherine +pantherish +pantherlike +panthers +pantherwood +pantheum +panthollow +pantie +panties +pantile +pantiled +pantiling +panting +pantingly +pantisocracy +pantisocrat +pantle +pantler +panto +pantochrome +pantochromic +pantocrator +pantod +pantodon +pantoffle +pantofle +pantoglot +pantograph +pantographer +pantographic +pantography +pantoja +pantoliano +pantologic +pantological +pantologist +pantology +pantomancer +pantometer +pantometric +pantometry +pantomime +pantomimed +pantomimical +pantomimicry +pantomimish +pantomimist +pantomimus +pantomnesia +pantomnesic +pantomorph +pantomorphia +pantomorphic +panton +pantoon +pantoorat +pantophagic +pantophagist +pantophagous +pantophagy +pantophile +pantophobia +pantophobic +pantophobous +pantopod +pantopoda +pantopterous +pantoscope +pantoscopic +pantosophy +pantostomata +pantostomate +pantostome +pantotactic +pantothenate +pantothenic +pantotheria +pantotherian +pantotype +pantoum +pantries +pantropic +pantropical +pantryman +pantrywoman +pants +pantun +pantuzzi +pantyhose +pantywaist +panui +panung +panurge +panurgic +panurgy +panyah +panyam +panyar +panyopat +panzer +panzoism +panzootia +panzootic +panzooty +paoan +paola +paoletti +paoli +paolicchi +paolieri +paolin +paolina +paolini +paolino +paolo +paomata +paon +paone +paonesa +paongan +paonia +paophan +paoting +paoua +paovarat +papa +papaaloa +papability +papable +papabot +papabuco +papac +papadakis +papadi +papadopoulos +papadopulos +papadouka +papagallo +papagena +papageorges +papageorgiou +papagepetteo +papago +papagopima +papai +papaiani +papaikou +papain +papaioannou +papajanis +papakene +papalism +papalist +papalistic +papalitskas +papalization +papalize +papalizer +papally +papalty +papamichael +papamoskov +papan +papandreou +papane +papangelou +papanov +papantla +papantonis +papao +papapana +papaphobia +papaphobist +papapolas +papar +papara +paparchical +paparchy +paparella +paparua +papas +papasano +papasena +papaship +papaver +papaveraceae +papaverales +papaverine +papaverous +papavo +papaya +papayaceae +papayaceous +papayas +papayotin +papboat +papc +pape +papeete +papei +papel +papelonne +papen +paper +paperback +paperbacks +paperbark +paperbased +paperboard +papered +paperer +paperers +paperful +paperhanger +paperiness +papering +paperings +paperlength +paperlike +papermaker +papermaking +papermouth +papern +papernet +paperno +paperport +papers +papersave +papershell +paperwidth +paperwork +papery +paperyn +papess +papet +papeterie +papetti +papey +paphan +paphian +paphnutius +paphos +papi +papia +papiam +papiamento +papiamentu +papicolar +papicolist +papiermache +papiez +papilio +papiliones +papilionid +papilionidae +papilionides +papilioninae +papilionine +papilionoid +papilla +papillae +papillar +papillate +papillated +papillectomy +papilledema +papilliform +papillitis +papilloedema +papilloma +papillon +papillose +papillosity +papillote +papillous +papillulate +papillule +papilose +papinachois +papineau +papinoff +papio +papion +papish +papisher +papism +papist +papistic +papistical +papistically +papistlike +papistly +papistry +papitalai +papize +papke +papless +paplophlet +papmeat +papola +papolater +papolatrous +papolatry +papoose +papooseroot +papora +paporng +papos +papp +pappa +pappadimos +pappagallo +pappalas +pappas +pappea +papper +pappescent +pappi +pappiferous +pappiform +pappose +pappous +pappox +pappu +pappus +papreg +paprica +paprocki +papruk +paps +papuan +papula +papular +papulate +papulated +papulation +papule +papuliferous +papulose +papulous +papuma +papunya +papuri +papyr +papyraceous +papyral +papyrean +papyrian +papyrin +papyrine +papyritious +papyrocracy +papyrograph +papyrography +papyrologist +papyrology +papyrophobia +papyrotamia +papyrotint +papyrotype +papyrus +paqecito +paqs +paque +paqueras +paquerette +paquet +paquette +paquin +paquita +para +paraafin +parabanate +parabanic +parabaptism +parabasal +parabasic +parabasis +parabema +parabematic +parabhi +parabiosis +parabiotic +parablast +parablastic +parable +parablepsia +parablepsis +parablepsy +parableptic +parables +parabolanus +parabolical +paraboliform +parabolist +parabolize +parabolizer +parabomb +parabotulism +parabranchia +parabulia +parabulic +paracarmine +paracasein +paracel +paracelis +paracelsian +paracelsic +paracelsist +paracelsus +paracentesis +paracentral +paracentric +paracephalus +paracha +parachaplain +parachi +parachinar +paracholia +parachor +parachordal +parachrea +parachroia +parachroma +parachrome +parachronism +parachrose +parachute +parachuted +parachutes +parachutic +parachutism +parachutist +paraclete +paracmasis +paracme +paracoele +paracoelian +paracolitis +paracolon +paracolpitis +paracolpium +paracone +paraconic +paraconid +paracorolla +paracotoin +paracoumaric +paracresol +paracress +paracusia +paracusic +paracyanogen +paracyesis +paracymene +paracystic +paracystitis +paracystium +parada +parade +paraded +paradeful +paradeless +paradelike +paradenitis +paradental +paradentitis +paradentium +parader +paraderm +parades +paradi +paradiastole +paradiazine +paradidymal +paradidymis +paradigm +paradigms +parading +paradingly +paradis +paradisaic +paradisal +paradise +paradisea +paradisean +paradiseidae +paradiseinae +paradisia +paradisiac +paradisiacal +paradisial +paradisian +paradisic +paradisical +paradisio +paradiso +paradnyak +parado +paradoctor +paradori +parados +paradoses +paradox +paradoxal +paradoxer +paradoxes +paradoxial +paradoxical +paradoxician +paradoxides +paradoxidian +paradoxism +paradoxist +paradoxman +paradoxology +paradoxure +paradoxurine +paradoxurus +paradoxy +paradromic +paraene +paraenesis +paraenesize +paraenetic +paraenetical +paraengineer +paraesthesia +paraffine +paraffiner +paraffinic +paraffinize +paraffinoid +paraffiny +paraffle +parafle +paraform +parafunction +paraganglion +paragaster +paragastral +paragastric +paragastrula +parage +paragenesia +paragenesis +paragenetic +paragenic +paragerontic +parageusia +parageusic +parageusis +paraglenal +paraglobin +paraglobulin +paraglossa +paraglossal +paraglossate +paraglossia +paraglycogen +paragnath +paragnathism +paragnathous +paragnathus +paragneiss +paragnosia +paragoge +paragogic +paragogical +paragogize +paragon +paragonah +paragonimus +paragonitic +paragonless +paragonnordc +paragons +paragould +paragraf +paragram +paragraph +paragraphed +paragraphen +paragrapher +paragraphia +paragraphic +paragraphing +paragraphism +paragraphist +paragraphize +paragraphs +paragua +paraguai +paraguari +paraguassu +paraguay +paraguayan +paraguayans +parah +parahematin +parahepatic +parahildy +parahippus +parahopeite +parahormone +parahujano +parahuri +parahydrogen +parai +paraiba +paraiso +paraiyan +paraja +parajhi +parak +parakana +parakate +parakeet +parakilya +parakinesia +parakinetic +parakou +paralactate +paralalia +paraldehyde +parale +paraleipsis +paralepsis +paralexia +paralexic +paralgesia +paralgesic +paralinin +paralipomena +paralipsis +paralitical +parallactic +parallel +parallelable +paralleled +paralleler +paralleling +parallelism +parallelist +parallelith +parallelize +parallelized +parallelizer +parallelizes +parallelled +parallelless +parallelline +parallelling +parallelly +parallels +parallelwise +paralogia +paralogical +paralogician +paralogism +paralogist +paralogistic +paralogize +paralogy +paraluminite +paralysed +paralyses +paralysis +paralytic +paralytical +paralyzant +paralyzation +paralyze +paralyzed +paralyzedly +paralyzer +paralyzes +paralyzing +paralyzingly +param +paramaccan +paramakatoi +paramandelic +paramaribo +paramarine +paramastitis +paramastoid +paramater +paramaters +paramatta +paramecia +paramecidae +paramecium +paramedian +paramenia +parament +paramenter +paramere +parameric +parameron +paramese +paramesial +parameter +parameterize +parameters +parametric +parametrical +parametritic +parametritis +parametrium +parametrized +paramide +paramimia +paramine +paramitome +paramnesia +paramo +paramoecium +paramor +paramorph +paramorphia +paramorphic +paramorphine +paramorphism +paramorphous +paramount +paramountcy +paramountly +paramour +paramours +params +paramuthetic +paramutual +paramyelin +paramylum +paramyotone +paramyotonia +paran +parana +paranagua +paranan +paranapura +paranasal +paranatellon +paranauat +paranawa +paranawat +parandrus +paranema +paranematic +paranephric +paranephros +paranepionic +paranete +parang +paranjape +paranoiac +paranoid +paranoidal +paranoidism +paranomasia +paranomia +paranormal +paranosic +paranotions +paranthelion +paranthropus +paranuclear +paranucleate +paranucleic +paranuclein +paranucleus +paranymph +paranymphal +parao +paraparesis +paraparetic +parapathia +parapathy +parapegm +parapegma +paraperiodic +parapet +parapetalous +parapeted +parapeti +parapetless +parapets +paraph +paraphasia +paraphasic +paraphemia +parapherna +paraphernal +paraphia +paraphilia +paraphimosis +paraphonia +paraphonic +paraphrased +paraphraser +paraphrases +paraphrasia +paraphrasian +paraphrasing +paraphrasis +paraphrasist +paraphrast +paraphraster +paraphrastic +paraphrenia +paraphrenic +paraphyllium +paraphysate +paraphysical +paraphysis +paraplasis +paraplasm +paraplasmic +paraplastic +paraplastin +paraplectic +paraplegia +paraplegic +paraplegy +parapleurum +paraplues +parapluies +parapod +parapodial +parapodium +parapophysis +parapraxia +parapraxis +paraproctium +parapsida +parapsidal +parapsidan +parapsis +parapsychism +parapteral +parapteron +parapterum +parapublic +paraqua +paraquadrate +paraquinone +pararctalia +pararctalian +pararectal +pararek +parareka +pararosolic +pararthria +paras +parasaboteur +parasang +parascene +parascenium +parasceve +paraselene +paraselenic +parasemidin +parasemidine +parashah +parashat +parasiliti +parasita +parasital +parasitary +parasite +parasitelike +parasitemia +parasites +parasitic +parasitica +parasitical +parasiticide +parasitics +parasiticus +parasitidae +parasitism +parasitize +parasitized +parasitizes +parasitoid +parasitoids +parasitology +parasitosis +paraskenion +parasoled +parasolette +paraspecific +parasphenoid +paraspotter +paraspy +parastas +parastatic +parastemon +parastemonal +parasternal +parasternum +parastichy +parastyle +parasuchia +parasuchian +parasynapsis +parasynaptic +parasyndesis +parasynesis +parasynetic +parasyphilis +parasystole +parata +paratactic +paratactical +paratartaric +parataxis +parate +paraterminal +paratheria +paratherian +parathesis +parathetic +parathion +parathormone +parathymic +parathyroid +paratitla +paratitles +paratoloid +paratoluic +paratomial +paratomium +paratonic +paratorium +paratory +paratracheal +paratragedia +paratrimma +paratriptic +paratrooper +paratroopers +paratroops +paratrophic +paratrophy +paratungstic +paratype +paratyphoid +paratypic +paratypical +paraujano +parauk +paraulis +paravail +paravane +paravauxite +paravent +paravesical +parawen +paraxially +paraxon +paraxonic +paraxylene +parazhghan +parazoa +parazoan +parazonium +parazzo +parb +parbake +parbar +parbate +parbatiya +parbattya +parbuckle +parc +parcae +parcel +parceled +parceling +parcellary +parcellate +parcellation +parcelling +parcellize +parcelment +parcels +parcelwise +parcenary +parcener +parcenership +parchable +parchami +parched +parchedly +parchedness +parcheesi +parchemin +parcher +parchesi +parching +parchingly +parchisi +parchment +parchmenter +parchmentize +parchments +parchmenty +parchomenko +parchy +parcidentate +parciloquy +parcity +parclose +parcoal +parcook +parcor +parcvax +pard +pardahl +pardalote +pardanthus +pardao +parded +pardee +pardeep +pardeesville +pardeeville +pardek +pardeks +pardesi +pardhan +pardhi +pardi +pardine +pardip +pardner +pardnomastic +pardo +pardoll +pardon +pardonable +pardonably +pardoned +pardonee +pardoner +pardoners +pardoneth +pardoning +pardonless +pardonmonger +pardons +pardos +pare +pareatges +parec +parece +parecho +pareci +parecis +pared +paredes +pareiasauri +pareiasauria +pareiasaurus +pareioplitae +parekwa +parel +parella +parely +paren +parenago +parenchym +parenchyma +parenchymal +parenchyme +parenchymous +pareng +parenga +parengi +parenji +parens +parent +parentalia +parentalism +parentality +parentally +parentdom +parente +parentela +parentelic +parenteral +parenterally +parentfont +parentheses +parenthesis +parenthesize +parenthisey +parenticide +parentless +parentlike +parents +parentship +pareoean +parepare +parepectolin +parer +pareres +parerethesis +parergal +parergic +parergon +pares +paresi +paresis +paressi +paresthesia +paresthesis +paresthetic +parethmoid +paretian +paretic +paretically +paretnts +pareto +paretos +parets +pareunia +parfait +parfey +parfield +parfilage +parfitt +parfleche +parfocal +parfrey +pargana +pargasite +parge +pargeboard +parget +pargeter +pargeting +pargo +pargrey +parham +parhelia +parheliacal +parhelic +parhelion +parhomology +parhypate +pari +paria +pariahdom +pariahism +pariahship +parial +pariame +parian +pariana +pariasauria +pariasaurus +paridae +paridigitate +paridrosis +paries +parietal +parietales +parietaria +parietary +parietes +parietojugal +parify +parigenin +parigi +parigitara +pariglin +parihar +parikala +parikh +parilia +parilicium +parilla +parillaud +parillin +parima +parimal +parinacota +parinarium +parine +paring +parings +parini +parintinti +paripao +paripinnate +paris +parise +parisen +parish +parishad +parished +parishen +parishes +parishional +parishionate +parishioners +parishs +parishville +parisi +parisian +parisianism +parisianize +parisianly +parisien +parisienne +parisiennes +parisii +parisio +parisis +parisology +parison +parisonic +parissard +paristhmic +paristhmion +parisy +parisyllabic +parisys +parit +pariti +parities +paritium +paritor +paritosh +parity +parivincular +parja +parjhi +parji +parjigadaba +park +parka +parkan +parkar +parkari +parkash +parkcity +parkdale +parked +parkee +parker +parkercity +parkerdam +parkerford +parkers +parkersburg +parkerslake +parkes +parkesburg +parkfalls +parkforest +parkhall +parkhill +parkhurst +parkin +parking +parkington +parkins +parkinson +parkinsonia +parkinsonism +parkinsons +parklike +parkman +parkrapids +parkridge +parkriver +parks +parkside +parksley +parkson +parkston +parksville +parkton +parkvalley +parkville +parkwa +parkward +parkwest +parky +parlament +parlamento +parlando +parlatoria +parlatory +parlaville +parle +parlee +parlement +parlent +parleyer +parliamental +parliamenter +parliaments +parlier +parlimen +parlin +parling +parlish +parlo +parlor +parlorish +parlormaid +parlors +parlour +parlours +parlous +parlously +parlousness +parly +parm +parma +parmacety +parmak +parmaksezian +parmalee +parman +parmar +parmashta +parmeggiani +parmele +parmelee +parmelia +parmeliaceae +parmelin +parmelioid +parmell +parmenas +parmenio +parmental +parmenter +parmentier +parmentiera +parmesan +parmese +parmigiani +parminder +parms +parn +parnach +parnas +parnassia +parnassian +parnassiinae +parnassism +parnassus +parnel +parnell +parnellism +parnellite +parnes +parniani +parniczky +parnigoni +parnorpine +parnum +parnya +paro +paroarion +paroarium +parocana +paroccipital +paroch +parochial +parochialic +parochialism +parochialist +parochiality +parochialize +parochially +parochin +parochine +parochiner +parode +parodi +parodiable +parodial +parodic +parodical +parodied +parodies +parodinia +parodist +parodistic +parodize +parodontitis +parodos +parody +parodying +parodyproof +paroecious +paroeciously +paroecism +paroecy +paroemia +paroemiac +paroemiology +paroicous +parol +parola +parolable +paroled +paroles +parolfactory +paroli +paroling +parolist +parolles +paromoeon +paromologia +paromology +paron +parong +paronomasia +paronomasial +paronomasian +paronomasio +paronychia +paronychial +paronychium +paronym +paronymic +paronymize +paronymous +paronymy +paroo +paroophoric +paroophoron +paropsis +paroptesis +paroptic +parorchid +parorchis +parorexia +parosela +parosh +parosmia +parosmic +parosteal +parosteitis +parosteosis +parostosis +parostotic +parotia +parotic +parotid +parotidean +parotiditis +parotis +parotitic +parotitis +parotoid +parous +parousia +parovarian +parovarium +parow +parowan +paroxazine +paroxysm +paroxysmal +paroxysmally +paroxysmic +paroxysmist +paroxysms +paroxytone +paroxytonic +paroxytonize +parpal +parquenahua +parquet +parquetage +parquetry +parr +parra +parratt +parravicini +parrel +parrente +parrett +parrhesia +parriable +parricidal +parricidally +parricide +parricided +parricidial +parricidism +parridae +parried +parrier +parrilli +parrillo +parrinello +parris +parrish +parrock +parroquia +parroquies +parros +parrot +parroter +parrothood +parroting +parrotism +parrotize +parrotlet +parrotlike +parrotry +parrots +parrott +parrotwise +parroty +parry +parryville +pars +parsable +parse +parsec +parsecs +parsed +parsee +parseeism +parseint +parsekhumij +parsell +parser +parserat +parsers +parses +parshall +parshandatha +parsi +parsian +parsic +parsifal +parsiism +parsimonious +parsing +parsings +parsippany +parsism +parsiwan +parsley +parsleylike +parsleywort +parsloe +parslow +parson +parsonarchy +parsondom +parsoned +parsonese +parsoness +parsonet +parsonhood +parsonic +parsonical +parsonically +parsoning +parsonish +parsonity +parsonize +parsonlike +parsonly +parsonolatry +parsonology +parsonry +parsons +parsonsburg +parsonship +parsonsia +parsonsite +parsony +parswell +part +partain +partakable +partaker +partakers +partakes +partakest +partaking +partan +partanfull +partanhanded +partanna +partap +parte +parted +partedness +partello +parter +parterre +parterred +parters +parteth +parteuropean +partha +partheniad +partheniae +parthenian +parthenic +parthenium +parthenogeny +parthenology +parthenope +parthenopean +parthenos +parthian +parthians +parthy +parti +partial +partialed +partialism +partialist +partialistic +partiality +partialize +partially +partialness +partials +partiary +partibility +partible +particate +particia +participable +participance +participancy +participants +participate +participated +participates +participator +participial +partick +particle +particled +particles +particular +particularly +particulars +particulary +particulate +particuliere +partied +partier +parties +partigen +partile +partimen +partimony +partin +parting +partings +partington +partinium +partiotion +partir +partisan +partisanism +partisanize +partisans +partisanship +partita +partite +partition +partitional +partitionary +partitioned +partitioner +partitioning +partitionist +partitions +partitive +partitively +partitura +partiversal +partivity +partizana +partless +partlet +partlow +partly +partner +partnered +partnerless +partners +partnership +parto +partof +parton +partos +partoss +partovi +partridge +partridges +partridging +parts +partsalev +partschinite +parttime +parture +parturiate +parturience +parturiency +parturient +parturition +parturitive +partway +party +partycolored +partying +partyism +partyist +partykin +partyled +partyless +partymonger +partynet +partyrebirth +partyship +partysocial +partyunity +paru +parua +paruah +paruchuri +parucito +parucutu +parukutu +parulekar +parulis +parumbilical +parun +parure +paruria +parus +parvaim +parvan +parvanimity +parvari +parveen +parvenudom +parvenuism +parviflorous +parvifoliate +parvifolious +parvin +parvipotent +parvis +parviscient +parvitude +parvity +parviz +parvolin +parvoline +parvule +parvulesco +parya +paryag +parypa +paryphodrome +parysatis +paryt +parzen +pasa +pasaala +pasach +pasadena +pasado +pasale +pasali +pasan +pasang +pasangkayu +pasani +pasar +pasarian +pasay +pascacal +pascagoula +pascal +pascale +pascaleval +pascali +pascaline +pascalish +pascals +pascas +pasch +pascha +paschalist +paschall +paschaltide +paschite +pascin +pasco +pascoag +pascoe +pascoite +pascola +pascua +pascuage +pascual +pascuense +pascuous +pasdammim +pase +paseah +pasemah +paseo +pasetti +pasgarde +pash +pashadom +pashagar +pashai +pashalic +pashalik +pashane +pashaship +pashayi +pashchimi +pasher +pashia +pashka +pashm +pashmina +pashmineh +pashto +pashtoon +pashtu +pashtun +pashtunistan +pashur +pasi +pasic +pasiedb +pasigraphic +pasigraphie +pasigraphy +pasilaly +pasinkap +pasion +pasiphae +pasir +pasisir +pasismanua +pasitelean +paskaleva +paskenta +paskey +pasli +pasmo +paso +pasok +pasokleft +pasoom +pasorobles +paspalis +paspalum +paspatian +pasport +paspter +pasquael +pasqual +pasquale +pasqueflower +pasquero +pasquier +pasquil +pasquilant +pasquiler +pasquilic +pasquin +pasquinade +pasquinader +pasquinian +pasquino +pass +passable +passableness +passably +passade +passado +passadumkeag +passage +passageable +passages +passageway +passaggio +passagian +passaic +passalaqua +passalia +passalid +passalidae +passalus +passam +passanante +passant +passante +passaporto +passarinho +passback +passbook +passcode +passcodes +passe +passed +passedst +passee +passegarde +passel +passement +passen +passend +passenger +passengers +passent +passepartout +passera +passeres +passeri +passeriform +passerina +passerine +passerines +passers +passersby +passes +passest +passetemps +passeth +passewa +passibility +passible +passibleness +passier +passiflora +passim +passimeter +passin +passing +passingly +passingness +passion +passiona +passional +passionary +passionate +passionately +passionative +passioned +passionful +passionfully +passionist +passionless +passionlike +passionproof +passions +passiontide +passionwise +passionwort +passir +passival +passivation +passive +passively +passiveness +passives +passivism +passivist +passivity +passkey +passless +passman +passmore +passo +passoff +passometer +passord +passore +passout +passover +passoverish +passovers +passpenny +passport +passportless +passports +passthrough +passthru +passto +passtoo +passtrough +passtrue +passtry +passulate +passulation +passumpsic +passus +passw +passware +passway +passwd +passwdfile +passwdro +passwoman +password +passworded +passwordplus +passwords +passwort +passworthy +passworts +passworx +passymeasure +past +pasta +pastaza +paste +pasteboard +pasteboardy +pasted +pastedness +pastedown +pastel +pastelist +pastell +pastellides +pastels +paster +pasterer +pastern +pasternak +pasterned +pasterp +pastes +pasteur +pasteurella +pasteurian +pasteurism +pasteurize +pasteurized +pasteurizer +pastia +pasticcio +pastiches +pasticheur +pastichio +pastil +pastile +pastille +pastimer +pastimes +pastinaca +pastiness +pasting +pastness +pasto +pastophor +pastophorion +pastophorium +pastophorus +pastor +pastora +pastorage +pastoral +pastorale +pastoralism +pastoralist +pastoralists +pastorality +pastoralize +pastorally +pastoralness +pastorate +pastore +pastorek +pastoress +pastorfield +pastorhood +pastorium +pastorize +pastorless +pastorlike +pastorling +pastorly +pastors +pastorship +pastose +pastosity +pastoukhova +pastrami +pastrana +pastrano +pastries +pastrudis +pastry +pastryman +pasts +pastukhov +pasturable +pasturage +pastural +pasture +pastureless +pasturer +pastures +pasturewise +pastuszok +pastyfaced +pasul +pasuma +pasurage +pasutils +pasv +pasvar +paswam +paswords +paswword +pata +patabua +pataca +patacao +patacas +patachou +patacki +pataco +patadm +patagial +patagiate +patagium +patagon +patagones +patagonia +patagonian +patai +patak +pataka +patakai +pataki +pataky +patalay +patamar +patamona +patampanua +patan +patanayuth +patane +patani +patao +patapat +patapori +pataque +patara +pataria +patarin +patarine +patarinism +pataro +patas +patasho +patashte +pataskala +patassy +patates +patavian +patavinity +pataxi +pataxo +patay +patayin +patball +patballer +patch +patchable +patchcor +patched +patcheen +patcher +patchery +patches +patchett +patcheye +patchgrove +patchily +patchiness +patching +patchit +patchleaf +patchless +patchogue +patchor +patchouli +patchsqa +patchwise +patchword +patchwork +patchworky +patchy +patcon +patcor +pate +patea +patefaction +patefield +patefy +pategi +pateince +patek +patel +patelia +patella +patellar +patellaroid +patellate +patellidae +patellidan +patelliform +patelline +patelloid +patellula +patellulate +paten +patenaude +patency +patener +patent +patentable +patentably +patented +patenter +patenters +patenting +patently +patentor +patents +patep +patera +patercove +pateriform +paterissa +paterlini +paternal +paternalism +paternalist +paternality +paternalize +paternally +paternity +paterno +pateros +paterson +patesi +patesiate +patey +path +pathak +pathan +pathans +patharc +pathbreaker +pathed +pathee +pathema +pathematic +pathes +pathetic +pathetical +pathetically +patheticate +patheticly +patheticness +pathetism +pathetist +pathetize +pathfarer +pathfinder +pathfinding +pathfork +pathic +pathicism +pathless +pathlessness +pathlet +pathlist +pathname +pathnames +pathoanatomy +pathobiology +pathodontia +pathogene +pathogenesy +pathogenetic +pathogenous +pathogeny +pathogerm +pathogermic +pathognomic +pathognomy +pathognostic +pathography +pathologic +pathological +pathologies +pathologist +pathology +patholysis +patholytic +pathom +pathomania +pathomimesis +pathomimicry +pathonomia +pathonomy +pathophobia +pathophoric +pathophorous +pathoplastic +pathopoeia +pathopoiesis +pathopoietic +pathorpe +pathoscopic +pathosocial +pathros +pathrusim +paths +pathtemp +pathum +pathway +pathwayed +pathways +pathworks +pathy +pati +patible +patibulary +patibulate +patidari +patience +patiency +patient +patienten +patientia +patientless +patiently +patientness +patients +patil +patillas +patimitheri +patimkin +patimuni +patinate +patination +patine +patined +patinggi +patinize +patinkin +patinous +patio +patipi +patisserie +patkoi +patkos +patla +patly +patma +patman +patmian +patmore +patmos +patna +patnat +patner +patness +patni +patnidar +patnuli +pato +patocka +patois +patoka +patola +patomak +patompong +paton +patonce +patool +patorzinski +patoskie +patotapuya +patou +patoxo +patpari +patpatar +patra +patrak +patrasaara +patria +patrial +patriarch +patriarchal +patriarchate +patriarchdom +patriarche +patriarched +patriarchess +patriarchic +patriarchism +patriarchist +patriarchs +patriated +patric +patrica +patrice +patricia +patricianism +patricianly +patricians +patriciate +patricidal +patricide +patricio +patrick +patrickgene +patricksburg +patrico +patridge +patrilineal +patrilinear +patriliny +patrilocal +patrimony +patrin +patrinos +patriofelis +patriolatry +patriot +patrioteer +patriotess +patriotic +patriotical +patriotics +patriotism +patriotly +patriots +patriotship +patripassian +patrist +patristical +patristicism +patristics +patrix +patrizate +patrization +patrizi +patrizia +patrizio +patrobas +patrocinium +patroclinic +patroclinous +patrocliny +patroclus +patrogenesis +patrol +patroller +patrolling +patrollotism +patrologic +patrological +patrologist +patrology +patrols +patron +patronal +patronat +patronate +patrondom +patrone +patroni +patronite +patronizable +patronize +patronized +patronizer +patronizes +patronizing +patronless +patronly +patronne +patrons +patronship +patronym +patronymic +patronymy +patroon +patroonry +patroonship +patrova +patrovita +patruity +patry +patryshev +pats +patsayev +patsoka +patsy +patt +patta +pattable +pattae +pattani +pattapu +patte +patted +pattee +patten +pattened +pattener +patter +pattered +patteren +patterer +pattering +patterings +patterist +pattern +patternable +patterned +patterner +patterning +patternize +patternless +patternlike +patternmaker +patterns +patternwise +patterny +patters +patterson +patteson +patti +pattie +patties +patting +pattington +pattinjo +pattis +pattison +patton +pattonsburg +pattonville +patts +pattu +pattullo +patty +pattye +pattypan +patu +patua +patuakhali +patuela +patulent +patulous +patulously +patulousness +patumwan +patuxent +patvi +patwa +patwardhan +patwari +patwin +patxntrv +paty +patzlock +paucar +pauchon +paucidentate +pauciflorous +paucifoliate +paucifolious +paucify +paucijugate +paucilocular +pauciloquent +pauciloquy +paucinervate +paucipinnate +pauciplicate +pauciradiate +paucispiral +paucitypause +paudler +paueme +paughty +pauhut +pauini +pauk +paukpan +paul +paula +paulandre +paular +paulauskas +paulden +paulding +pauldron +paule +pauleon +paulett +pauletta +paulette +pauley +paulhofer +paulhus +pauli +pauliad +paulian +paulianist +pauliccian +paulich +paulicianism +paulie +paulien +paulig +paulin +paulina +pauline +pauling +paulinia +paulinian +paulinism +paulinist +paulinistic +paulinity +paulinize +paulinus +paulism +paulist +paulista +paulita +paulite +paulk +paull +paulle +paullina +paully +paulmueller +paulo +paulohi +paulopast +paulopost +paulospore +paulot +paulova +paulovics +paulownia +pauls +paulsboro +paulsin +paulsmiths +paulsvalley +paulus +pauly +pauma +paumari +paumavalley +paumei +paumotu +paunangis +paunched +paunchful +paunchily +paunchiness +paunchy +paune +paunins +paup +paupack +paupe +pauperage +pauperate +pauperdom +pauperess +pauperism +pauperitic +pauperize +pauperizer +paupers +pauquet +paur +paurong +pauropod +pauropoda +pauropodous +pausably +pausal +pausation +pause +paused +pauseful +pausefully +pauseless +pauselessly +pausement +pauser +pauserna +pauses +pausing +pausingly +paussid +paussidae +paut +pautasso +pauwasi +pauwi +pauxi +pauxiana +pauxiliary +pavage +pavaia +pavan +pavane +pavarotti +pavas +pave +paved +pavel +pavement +pavemental +pavements +paver +paves +pavese +pavesi +pavestone +pavetta +pavia +paviar +pavic +pavid +pavidity +pavier +pavilion +pavilions +pavillion +paving +pavinov +pavior +paviotso +paviour +pavis +pavisade +pavisado +paviser +pavisor +pavitt +pavius +paviva +pavla +pavle +pavlic +pavlidis +pavlik +pavlis +pavlo +pavlon +pavlos +pavlov +pavlova +pavlovic +pavlow +pavlowa +pavo +pavonated +pavonazzetto +pavonazzo +pavoncella +pavoni +pavonia +pavonian +pavonine +pavonis +pavonize +pavy +pawaetonian +pawaia +pawaian +pawana +pawari +pawate +pawcreek +pawdawkwa +pawdite +pawel +pawelchuk +pawellek +pawer +paweth +pawhuska +pawing +pawixi +pawiyana +pawk +pawkery +pawkily +pawkiness +pawkrie +pawky +pawl +pawle +pawlet +pawley +pawlikowski +pawling +pawliw +pawlor +pawlowia +pawlowski +pawnable +pawnage +pawnbrocker +pawnbroker +pawnbrokery +pawnbroking +pawnee +pawneecity +pawneekitsai +pawneerock +pawner +pawnie +pawnor +pawns +pawona +pawpaw +pawpaws +pawri +paws +pawu +paxala +paxico +paxilla +paxillar +paxillary +paxillate +paxilliform +paxillosa +paxillose +paxillus +paxinos +paxinou +paxiuba +paxon +paxriver +paxrv +paxton +paxtonia +paxtonville +paxvax +paxwax +paya +payability +payable +payableness +payably +payagua +payaguan +payah +payahe +payao +payap +payapucuro +paychecks +paycheque +paycheques +payday +paydown +paydro +paye +payed +payee +payeny +payer +payers +payeth +payette +payi +paying +payload +paylor +payment +payments +paymer +paymistress +payn +paynamar +paynap +payne +paynegap +paynesville +payneville +payni +paynim +paynimhood +paynimry +paynize +paynter +payoff +payoffs +payong +payor +payowan +payphones +payrac +payroll +pays +paysagist +paysandu +paysanne +payson +paytash +paythe +payton +payualiene +payuliene +payware +pazande +pazardjian +pazeh +pazehe +pazehkahabu +pazend +pazex +pazman +pazos +pazzehe +pazzo +pazzos +pbarch +pbas +pbds +pbecame +pbib +pbibdesigns +pbxes +pbxs +pbys +pbytestring +pcad +pcanada +pcanywhere +pcast +pcat +pcboard +pcboards +pcbtools +pcbus +pcch +pcclass +pccompatible +pcden +pcdn +pcdob +pcdos +pcds +pced +pces +pcfs +pcgw +pchar +pciii +pciset +pcism +pcisms +pcityo +pcjpg +pcjr +pcland +pclone +pcmagazine +pcmicro +pcmle +pcmouse +pcmp +pcnet +pcnfsd +pcoat +pcon +pcopus +pcopy +pcox +pcpu +pcpy +pcrelay +pcrip +pcrt +pcrypt +pcsg +pcsjr +pcstr +pcsupport +pcta +pctalk +pctv +pcversions +pcware +pcweek +pdch +pdci +pdcn +pdeg +pdel +pdesupport +pdiff +pdisk +pdnunix +pdnvbwin +pdois +pdpa +pdplaban +pdry +pdssa +peaberry +peabody +peace +peaceable +peaceably +peacebreaker +peaceful +peacefully +peacefulness +peaceless +peacelike +peacemaker +peacemakers +peacemaking +peaceman +peacemonger +peacevalley +peach +peacham +peachberry +peachblossom +peachblow +peachbottom +peachcolored +peachcreek +peachen +peacher +peachery +peaches +peachick +peachify +peachiness +peachland +peachlet +peachlike +peachnet +peachorchard +peachsprings +peachwood +peachwort +peachy +peacoat +peacock +peacocke +peacockery +peacockish +peacockishly +peacockism +peacocklike +peacockly +peacocks +peacockwise +peacocky +peacod +peactions +peag +peage +peagram +peahen +peai +peaiism +peak +peake +peaked +peakedly +peakedness +peaker +peakily +peakiness +peaking +peakish +peakishly +peakishness +peakjet +peakless +peaklike +peaks +peakward +peakyish +peal +peale +pealed +pealike +pealing +peals +pean +peana +peano +peanut +peanuts +peapack +pear +pearblossom +pearce +pearceite +pearcy +pearic +pearidge +pearisburg +pearl +pearla +pearland +pearlberry +pearlcity +pearle +pearled +pearler +pearlet +pearlfish +pearlfruit +pearlharbor +pearlike +pearlin +pearline +pearliness +pearling +pearlington +pearlish +pearlitic +pearlman +pearlriver +pearls +pearlsides +pearlweed +pearlwort +pearly +pearmain +pearmonger +pears +pearsall +pearse +pearson +pearsons +peart +pearten +peartly +peartness +pearvalley +pearwood +peary +peas +peasant +peasantess +peasantism +peasantize +peasantlike +peasantly +peasantry +peasants +peasantship +pease +peaseafb +peasecod +peaselike +peasen +peashooter +peasley +peason +peastake +peastaking +peaster +peastick +peasticking +peastone +peasy +peat +peate +peatery +peathouse +peatman +peatship +peatstack +peattie +peatwood +peaty +peau +peaugh +peavey +peavoy +peavy +peawa +peba +peban +pebayaguan +pebbel +pebble +pebblebeach +pebbled +pebbles +pebblestone +pebbleware +pebbly +pebrine +pebrinous +pebworth +pecado +pecador +pecan +pecangap +pecatonica +pecc +peccability +peccable +peccadillo +peccancy +peccant +peccantly +peccantness +peccata +peccation +peccato +peccavi +pech +peche +pecheni +peches +pecheur +pechionka +pecht +pechur +pecic +pecite +pecixe +peck +pecka +pecked +peckel +pecker +peckerwood +pecket +peckett +peckful +peckham +peckhamite +peckiness +pecking +peckinpah +peckinpaugh +peckish +peckishly +peckishness +peckle +peckled +peckly +pecks +pecksmill +pecksniff +pecksniffian +pecksniffism +peckville +pecky +peclet +peconic +pecopteris +pecopteroid +pecora +pecoraro +pecos +pecs +pecsenke +pecsi +pectase +pectate +pecten +pectic +pectin +pectinacea +pectinacean +pectinaceous +pectinal +pectinase +pectinate +pectinated +pectinately +pectination +pectineal +pectineus +pectinic +pectinid +pectinidae +pectiniform +pectinite +pectinogen +pectinoid +pectinose +pectinous +pectizable +pectization +pectize +pectolite +pectora +pectoralgia +pectoralist +pectorally +pectoriloquy +pectosase +pectose +pectosic +pectosinase +pectous +pectunculate +pectunculus +pectus +peculation +peculator +peculiar +peculiarism +peculiarity +peculiarize +peculiarly +peculiarness +peculiarsome +peculium +pecuniarily +pecuniary +pecuniosity +pecunious +peda +pedage +pedagog +pedagogal +pedagogical +pedagogics +pedagogike +pedagogism +pedagogist +pedagoguery +pedagoguish +pedagoguism +pedahel +pedahzur +pedaiah +pedal +pedaled +pedaler +pedalfer +pedalferic +pedaliaceae +pedaliaceous +pedalian +pedalier +pedaling +pedalion +pedalism +pedalist +pedaliter +pedality +pedalium +pedals +pedanalysis +pedantesque +pedantess +pedanthood +pedantical +pedantically +pedanticism +pedanticly +pedanticness +pedantics +pedantism +pedantize +pedantocracy +pedantocrat +pedary +pedasi +pedata +pedate +pedated +pedately +pedatifid +pedatiform +pedatilobate +pedatilobed +pedatinerved +pedatisect +pedatisected +pedatrophia +pedder +peddicord +peddie +peddler +peddleress +peddlerism +peddlers +peddlery +peddling +peddlingly +pedea +pedee +pedelion +pedemonte +peder +pederast +pederastic +pederasty +pederero +pedernales +pedernera +pedero +pedersen +pederson +pederzoli +pedes +pedesis +pedestals +pedestrial +pedestrially +pedestrians +pedetentous +pedetes +pedetidae +pedetinae +pedgen +pedi +pediadontia +pediadontic +pediadontist +pedialgia +pediastrum +pediatrics +pediatrist +pediatry +pedicab +pedicel +pediceled +pedicellar +pedicellaria +pedicellate +pedicellated +pedicelled +pedicellina +pedicellus +pedicle +pedicular +pedicularia +pedicularis +pediculate +pediculated +pediculati +pedicule +pediculi +pediculicide +pediculid +pediculidae +pediculina +pediculine +pediculoid +pediculosis +pediculous +pediculus +pedicure +pedicurism +pedicurist +pediferous +pediform +pedigerous +pedigo +pedigraic +pedigreeless +pedigrees +pediluvium +pedimana +pedimanous +pedimental +pedimented +pedimentum +pedioecetes +pedion +pedionomite +pedionomus +pedipalp +pedipalpal +pedipalpate +pedipalpi +pedipalpida +pedipalpous +pedipalpus +pedipulate +pedipulation +pedipulator +pedir +pedlar +pedlary +pedler +pedley +pedneault +pedobaptism +pedobaptist +pedocal +pedocalcic +pedodontia +pedodontic +pedodontist +pedograph +pedological +pedologist +pedology +pedometer +pedometric +pedometrical +pedometrist +pedomorphic +pedomorphism +pedomotive +pedomotor +pedophilia +pedophilic +pedorasto +pedotribe +pedotrophic +pedotrophist +pedotrophy +pedotti +pedoux +pedra +pedrail +pedregal +pedrero +pedricktown +pedrilka +pedrillo +pedrinelli +pedro +pedrobay +pedroca +pedrucho +pedule +pedum +peduncle +peduncled +peduncular +pedunculata +pedunculate +pedunculated +pedunculus +peduzzi +peebles +peedee +peedin +peek +peekaboo +peeke +peeked +peeking +peekit +peeks +peekskill +peel +peelable +peele +peeled +peeledness +peeler +peelhouse +peeling +peelism +peelite +peell +peelman +peels +peen +peenge +peeohdee +peeohem +peeoy +peep +peeped +peeper +peepeye +peephole +peeping +peeples +peeps +peepshow +peer +peerage +peerdom +peere +peered +peeress +peerhood +peerie +peering +peeringly +peerless +peerlessly +peerlessness +peerling +peerly +peerman +peers +peership +peerson +peery +peerzada +peesash +peesoreh +peesweep +peeters +peets +peetweet +peetz +peeve +peeved +peevedly +peevedness +peever +peeves +peevish +peevishly +peevishness +peewa +peewee +pega +pegalan +pegall +peganite +peganum +pegasean +pegasian +pegasid +pegasidae +pegasoid +pegasus +pegbox +pegeen +pegg +pegged +pegger +peggi +peggie +peggle +peggoty +peggs +peggt +peggy +pegi +pegler +pegless +peglet +peglike +pegman +pegmatite +pegmatitic +pegmatize +pegmatoid +pegmatophyre +pegna +pegology +pegomancy +pegram +pegs +pegu +peguan +pegunungan +pegwood +pehangi +pehelwan +pehlevi +peho +peholomgame +pehuenche +peichev +peignoir +peii +peikutou +peil +peile +peimen +peinan +peine +peiper +peira +peiraeus +peirameter +peirastic +peirce +peirces +peiroos +peisage +peise +peiser +peisey +peisley +peitho +peitsch +peixere +peixoto +pejampi +pejepscot +pejorate +pejoration +pejoratively +pejorism +pejorist +pejority +peka +pekah +pekahiah +pekal +pekan +pekava +pekawa +pekhi +pekin +pekinese +peking +pekingese +pekka +peklhoban +pekod +pekoe +pela +pelada +peladic +pelado +peladon +pelaez +pelage +pelagia +pelagial +pelagian +pelagianism +pelagianize +pelagianizer +pelagic +pelagothuria +pelahatchie +pelaiah +pelaliah +pelam +pelamyd +pelanos +pelargi +pelargic +pelargikon +pelargomorph +pelargonate +pelargonic +pelargonidin +pelargonin +pelargonium +pelasgi +pelasgian +pelasgic +pelasgikon +pelasgoi +pelasla +pelatiah +pelau +pelauw +pelayo +pele +pelea +pelean +peleata +peleato +pelecan +pelecani +pelecanidae +pelecanoides +pelecanus +pelecypod +pelecypoda +pelecypodous +pelee +peleg +pelegri +pelelith +peleliu +pelende +pelennor +pelerin +pelerine +pelet +peleth +pelethites +peleus +pelew +pelf +pelham +pelhi +peli +pelias +pelican +pelicanlake +pelicanry +pelicans +pelick +pelicometer +pelides +pelidnota +peligoni +pelikan +pelike +pelikowsky +pelimpo +peliocles +peliom +pelioma +pelion +peliosis +pelipowai +pelisse +pelissier +pelite +pelitic +pelkie +pell +pella +pellaea +pellage +pellagrin +pellagrose +pellagrous +pelland +pellar +pellard +pellas +pellate +pellation +pellaumail +pellcity +pelle +pellea +pellegrim +pellegrin +pellegrini +pellegrino +peller +pelleted +pelletgroup +pelletier +pelletierine +pelletlike +pelletreau +pellets +pellety +pelley +pellian +pellicer +pellicle +pellicula +pellicular +pellicularia +pelliculate +pellicule +pelligra +pelliker +pellile +pelling +pellitory +pellizzari +pellizzeri +pelllake +pellmell +pellock +pellon +pellotine +pellow +pellston +pellucent +pellucid +pellucidity +pellucidly +pellucidness +pellville +pellworm +pelly +pelman +pelmanism +pelmanist +pelmanize +pelmatic +pelmatogram +pelmatozoa +pelmatozoan +pelmatozoic +pelmet +pelmung +pelobates +pelobatid +pelobatidae +pelobatoid +pelodytes +pelodytid +pelodytidae +pelodytoid +pelomedusa +pelomedusid +pelomedusoid +pelomyxa +pelon +pelonite +pelopaeus +pelopid +pelopidae +peloponnesos +peloponnesus +pelops +peloria +pelorian +peloriate +peloric +pelorism +pelorization +pelorize +pelorus +pelosi +pelot +pelota +pelote +pelotherapy +peloton +pels +pelsor +pelt +pelta +peltandra +peltast +peltate +peltated +peltately +peltatifid +peltation +pelter +pelterer +peltier +peltiferous +peltifolious +peltiform +peltigera +peltigerine +peltigerous +peltinerved +pelting +peltingly +peltless +peltmonger +peltner +peltogaster +pelton +pelts +peltzer +pelu +peluan +peluce +peludo +peluffo +pelufto +pelusios +peluso +pelves +pelvetia +pelviform +pelvigraph +pelvigraphy +pelvimeter +pelvimetry +pelvioplasty +pelvioscopy +pelviotomy +pelvirectal +pelvis +pelvisacral +pelvisternal +pelvisternum +pelycogram +pelycography +pelycology +pelycometer +pelycometry +pelycosaur +pelycosauria +pelym +pelz +pelzer +pemagatsel +pemangkat +pemaquid +pemba +pember +pemberton +pemberville +pembina +pembine +pembroke +pembrooke +pembuanghulu +pemican +pemmicanize +pemon +pemong +pempeit +pemphigoid +pemphigous +pemphigus +pemrac +pems +pena +penablanca +penable +penachi +penacute +penaea +penaeaceae +penaeaceous +penaherrera +penaia +penalist +penality +penalizable +penalization +penalize +penalized +penalizes +penalizing +penally +penalosa +penalties +penalty +penampang +penan +penance +penanceless +penandink +penang +penangah +penannular +penantsiro +penapo +penargyl +penas +penasco +penasifu +penbard +pencatite +pence +pencel +penceless +pencesprings +penchal +penchangan +penche +penchenat +penchute +pencil +pencilbluff +penciled +penciler +penciliform +penciling +pencilled +penciller +pencillike +pencilling +pencilry +pencils +pencilwood +pencraft +pencroft +pend +penda +pendang +pendanted +pendanting +pendantlike +pendarvis +pendau +pendawa +pende +pendecagon +pended +pendeloque +pendelton +pendency +pendent +pendentive +pendently +pender +pendergast +pendergraft +pendergrass +pendering +penderton +pendharkar +pendicle +pendicler +pending +pendle +pendlebury +pendleton +pendltonbks +pendn +pendom +pendragon +pendragonish +pendrake +pendroy +pends +pendulant +pendular +pendulate +pendulation +pendule +penduline +pendulosity +pendulous +pendulously +pendulum +pendulumlike +pendulums +pene +penedos +penee +penella +penelopa +penelope +penelopean +penelophon +penelopinae +penelopine +peneplain +peneplane +penesak +peneseismic +penet +penetrably +penetral +penetralia +penetralian +penetrance +penetrancy +penetrant +penetrate +penetrated +penetrates +penetrating +penetration +penetrations +penetrative +penetrator +penetrators +penetrology +penetrometer +penfield +penfieldite +penfold +penful +peng +penghu +penghulu +pengilly +penglung +pengo +pengu +penguin +penguinery +penguins +penhead +penholder +penhook +peni +penial +penicillate +penicillated +penicillin +penicillium +penide +peniel +penihing +penile +penin +peninnah +peninsula +peninsular +peninsulas +peninsulate +penintime +peninvariant +penis +penistone +penitas +penitence +penitencer +penitent +penitentes +penitently +peniti +penk +penkamichel +penkeeper +penkert +penknife +penland +penlike +penmaker +penmaking +penmanship +penmark +penmaster +penn +pennaceous +pennacook +pennae +pennage +pennales +pennaria +pennariidae +pennatae +pennate +pennated +pennatifid +pennatisect +pennatula +pennatulacea +pennatulid +pennatulidae +pennatuloid +penndc +penne +penned +penneech +penneeck +pennell +pennellville +penner +pennet +penney +penneyfarms +penngrove +pennhills +penni +pennia +pennick +pennie +pennied +pennies +penniferous +penniform +pennigerous +penniless +pennilessly +pennill +penniman +penninervate +penninerved +penning +pennington +penninite +pennipotent +pennisetum +penniveined +pennlaird +pennock +pennon +pennoned +pennopluma +pennoplume +pennorth +pennrun +pennsauken +pennsboro +pennsburg +pennscreek +pennsgrove +pennspark +pennsville +pennsylvania +pennvalley +pennville +penny +pennyan +pennyante +pennybaker +pennybird +pennycress +pennyearth +pennyfeather +pennyflower +pennyhole +pennyleaf +pennyrot +pennyroyal +pennysiller +pennyslvania +pennystone +pennyways +pennyweight +pennywhistle +pennywinkle +pennywise +pennywort +pennyworth +penobscot +penokee +penologic +penological +penologist +penology +penon +penorcon +penot +penpad +penrack +penreader +penrella +penrhyn +penrod +penrose +penroseite +penryn +pens +pensa +pensacola +penscript +penseful +pensefulness +penseroso +penses +penship +pensiangan +pensile +pensileness +pensility +pension +pensionable +pensionably +pensionary +pensioner +pensioners +pensionless +pensions +pensived +pensively +pensiveness +penson +pensri +penster +penstick +penstock +pensum +pensy +pensysa +penta +pentabasic +pentabold +pentabromide +pentacarbon +pentace +pentacetate +pentachenium +pentachord +pentachromic +pentacid +pentacle +pentacoccous +pentacontane +pentacosane +pentacrinite +pentacrinoid +pentacrinus +pentacron +pentacrostic +pentactinal +pentactine +pentacular +pentacyanic +pentacyclic +pentad +pentadactyl +pentadactyla +pentadactyle +pentadecagon +pentadecane +pentadecoic +pentadecyl +pentadecylic +pentademi +pentadicity +pentadiene +pentadrachm +pentadrachma +pentafid +pentagamist +pentagious +pentaglossal +pentaglot +pentagon +pentagonally +pentagonoid +pentagons +pentagyn +pentagynia +pentagynian +pentagynous +pentahalide +pentahedral +pentahedroid +pentahedron +pentahedrous +pentahydrate +pentahydric +pentahydroxy +pentail +pentaiodide +pentalight +pentalobate +pentalogue +pentalogy +pentalpha +pentamera +pentameral +pentameran +pentamerid +pentameridae +pentamerism +pentameroid +pentamerous +pentamerus +pentameter +pentametrist +pentametrize +pentander +pentandria +pentandrian +pentandrous +pentanedione +pentangeli +pentangle +pentangular +pentanitrate +pentanoic +pentanolide +pentanone +pentaphylax +pentaploid +pentaploidic +pentaploidy +pentapody +pentapolis +pentapolitan +pentapterous +pentaptote +pentaptych +pentaquine +pentarch +pentarchical +pentarchy +pentares +pentarus +pentaspheric +pentastich +pentastichy +pentastome +pentastomida +pentastomoid +pentastomous +pentastomum +pentastyle +pentastylos +pentateuch +pentateuchal +pentathionic +pentathlete +pentathlon +pentathlos +pentatomic +pentatomid +pentatomidae +pentatone +pentatonic +pentaur +pentavalence +pentavalency +pentavalent +pentayotissa +pente +penteconter +pentecost +pentecoster +pentecostys +pentecote +penteel +pentelic +pentelican +pentelow +pentene +penteteric +penthara +penthe +penthemimer +penthesilea +penthestes +pentheus +penthiophen +penthiophene +penthoraceae +penthorum +penthouse +penthrit +penthrite +pentimento +pentine +pentiodide +pentit +pentite +pentitol +pentium +pentland +pentlandite +pentlatch +pentode +pentoic +pentol +pentomic +pentosan +pentosane +pentose +pentoside +pentosuria +pentoxide +pentremital +pentremite +pentremites +pentress +pentrit +pentrite +pentrough +pentstemon +pentstock +pentsystem +penttail +pentwater +pentyl +pentylene +pentylic +pentylidene +pentyne +pentzia +penuchi +penuel +penuelas +penult +penultima +penultimate +penultimatum +penumbrae +penumbral +penumbrous +penup +penuriously +penury +penutian +penvern +penwell +penwiper +penwoman +penwomanship +penworker +penworth +penworthy +penwright +penya +penyabung +penyin +penyu +penza +penzance +peola +peon +peonage +peone +peonism +peony +people +peopled +peopledom +peoplehood +peopleize +peopleless +peoplenavoff +peoplenavon +peopler +peoples +peoplesparc +peoplet +peoplish +peor +peoria +peorian +peosta +peotomy +peotone +pepa +pepastic +pepe +pepeekeo +pepeha +pepel +peperine +peperino +peperomia +pepesa +pepesajwira +pepet +pepful +pephredo +pepi +pepin +pepinella +pepino +pepita +pepito +pepler +peplos +peplosed +peplum +peplus +pepo +pepohoan +pepohwan +pepole +peponida +peponium +peppard +peppeddu +pepper +pepperbox +peppercorn +peppercorny +pepperdine +peppered +pepperell +pepperer +pepperidge +pepperily +pepperiness +peppering +pepperish +pepperishly +peppermint +pepperoil +pepperproof +pepperroot +peppers +pepperweed +pepperwood +pepperwort +peppi +peppily +peppin +peppina +peppinello +peppiness +peppino +pepple +peppo +peppone +pepsi +pepsin +pepsinate +pepsinogen +pepsinogenic +pepsis +pepsoftware +peptic +peptical +pepticity +peptidase +peptis +peptizable +peptization +peptize +peptizer +peptogaster +peptogenic +peptogenous +peptogeny +peptolysis +peptolytic +peptonaemia +peptonate +peptone +peptonemia +peptonic +peptonize +peptonizer +peptonoid +peptonuria +peptotoxine +pepys +pepysian +pequabuck +pequannock +peque +pequea +pequenda +pequenino +pequot +pequotlakes +pera +peracarida +peracephalus +peracetate +peracetic +peracid +peracidite +peracss +peract +peracute +peracv +peradventure +peraga +peragrate +peragration +perak +perakim +peralia +peralta +peramble +perambulant +perambulate +perambulator +perameles +peramelidae +perameline +perameloid +peramium +peramuna +peranakan +perancangan +peras +peratae +perates +peravia +peraza +perazim +perazzini +perbellini +perbend +perborate +perborax +perbrahe +perbromide +perca +percale +percaline +percarbide +percarbonate +percarbonic +perce +perced +perceivable +perceivably +perceivance +perceivancy +perceive +perceived +perceivedly +perceiver +perceivers +perceives +perceivest +perceiveth +perceiving +percent +percentable +percentably +percentage +percentaged +percentages +percental +percentiles +percents +percentual +perceptible +perceptibly +perception +perceptional +perceptions +perceptive +perceptively +perceptivity +perceptrons +perceptual +perceptually +percesoces +percesocine +perceval +perch +percha +perchable +perchance +perche +perched +percheo +percher +percheron +perches +perchick +perchicksky +perchik +perchin +perching +perchloric +perchloride +perchromate +perchromic +perchthold +percid +percidae +perciform +perciformes +percipience +percipiency +percipient +percival +perclose +percnosome +percoct +percoid +percoidea +percoidean +percolable +percolate +percolated +percolation +percolative +percolator +percomorph +percomorphi +percompound +percontation +percribrate +perculsion +perculsive +percur +percurration +percurrent +percursory +percuss +percussional +percussioner +percussively +percussor +percutaneous +percutient +percy +percylite +perddims +perdere +perdicinae +perdicine +perdido +perdita +perdition +perdix +perdricide +perdu +perdue +perduehill +perduellion +perdurable +perdurably +perdurance +perdurant +perdure +perduring +perduringly +perdy +pere +perea +perean +pereba +perebrodov +perec +pered +pereda +peredachi +peredal +peredali +peredam +peredoz +pereezda +pereezjayut +perego +peregrin +peregrina +peregrinate +peregrinator +peregrine +peregrinity +peregrinoid +pereio +pereion +pereiopod +pereira +pereirine +pereiro +perek +perelandra +perelli +peremka +peremptorily +peren +perendinant +perendinate +perendure +perene +perennate +perennation +perennial +perenniality +perennialize +perennially +perennials +perennity +pereno +perenyi +perepeczko +perepelkin +perepisivaiu +perepisival +pereption +perequitate +pererration +peres +peresetimage +peresh +pereskia +perestiani +perestroyka +peretashim +peretz +pereveli +pereversev +perexodi +pereyra +perez +perezhitogo +perezone +perezuzza +perezuzzah +perf +perfect +perfectation +perfected +perfectedly +perfecti +perfecting +perfection +perfectioner +perfections +perfectism +perfectist +perfective +perfectively +perfectivity +perfectivize +perfectly +perfectness +perfecto +perfector +perfects +perfervent +perfervid +perfervidity +perfervidly +perfervor +perfervour +perfetti +perfide +perfidious +perfidiously +perfilograph +perflate +perflation +perfluent +perfoliate +perfoliation +perfomance +perforable +perforant +perforata +perforated +perforates +perforating +perforation +perforations +perforative +perforator +perforatory +perforce +perforcedly +perform +performable +performance +performances +performant +performative +performed +performer +performers +performeth +performing +performs +performsmost +perfory +perfrication +perfumatory +perfume +perfumed +perfumeless +perfumer +perfumeress +perfumes +perfuming +perfumy +perfunctory +perfusate +perfusive +perga +pergal +pergamene +pergameneous +pergamenian +pergamic +pergamonp +pergamos +pergamyn +pergola +perh +perhalide +perhalogen +perham +perhaps +perhazard +perhelion +perhorresce +peri +peria +periacinal +periacinous +periactus +periadenitis +perian +perianal +periangioma +periangitis +perianth +perianthial +perianthium +periaortic +periaortitis +periapical +periapsis +periapt +periarctic +periareum +periarterial +periarthric +periaster +periastral +periastron +periastrum +periatrial +periaxial +periaxillary +periaxonal +periblast +periblastic +periblastula +periblem +peribolos +peribolus +peribulbar +peribursal +perica +pericaecal +pericaecitis +pericak +pericapsular +pericardia +pericardiac +pericardial +pericarditic +pericarditis +pericardium +pericarp +pericarpial +pericarpic +pericarpium +pericecal +pericecitis +pericellular +pericemental +pericementum +pericenter +pericentral +pericentric +pericephalic +pericerebral +perichaete +perichaetial +perichaetium +perichete +perichole +perichondral +perichord +perichordal +perichoresis +perichylous +pericladium +periclase +periclasia +periclasite +pericles +periclinal +periclinally +pericline +periclinium +periclitate +pericolitis +pericolpitis +periconchal +pericopal +pericope +pericopic +pericorneal +pericoxitis +pericranial +pericranitis +pericranium +pericristate +pericu +periculant +periculous +pericycle +pericycloid +pericyclone +pericyclonic +pericystic +pericystitis +pericystium +pericytial +perida +peridental +peridentium +periderm +peridermal +peridermic +peridermium +peridesm +peridesmic +peridesmitis +peridesmium +peridial +peridiastole +perididymis +peridier +peridiiform +peridineae +peridinial +peridiniales +peridinian +peridinid +peridinidae +peridinieae +peridiniidae +peridinium +peridiole +peridiolum +peridition +peridium +peridot +peridotic +peridotitic +periductal +periegesis +periegetic +perielesis +periello +perienteric +perienteron +perier +periers +perifistular +perifoliary +perigastric +perigastrula +perigeal +perigee +perigemmal +perigenesis +perigenital +perigeum +perigloea +periglottic +periglottis +perignathic +perigon +perigonadial +perigonal +perigone +perigonial +perigonium +perigraph +perigraphic +perigynial +perigynium +perigynous +perigyny +perihelial +perihelian +perihelion +perihelium +perihepatic +perihernial +periho +perihysteric +perija +perijove +perikaryon +perike +perikronion +peril +perilepsis +perilless +perilobar +perilous +perilously +perilousness +perils +perilsome +perilymph +perim +perimartium +perimastitis +perimeter +perimeters +perimetral +perimetric +perimetrical +perimetritic +perimetritis +perimetrium +perimetry +perimorph +perimorphic +perimorphism +perimorphous +perimyelitis +perimysial +perimysium +perin +perina +perine +perineal +perineocele +perineostomy +perineotomy +perinephral +perinephrial +perinephric +perinephrium +perineum +perineural +perineurial +perineuritis +perineurium +perinium +perinuclear +periocular +period +periodate +periodic +periodical +periodically +periodicals +periodicity +periodide +periodista +periodize +periodogram +periodograph +periodology +periodontal +periodontia +periodontic +periodontist +periodontium +periodontum +periodoscope +periods +perioeci +perioecians +perioecic +perioecid +perioecus +perioikoi +periolat +periomphalic +perionychia +perionychium +perionyx +perionyxis +periople +perioplic +perioptic +perioral +periorbit +periorbita +periorbital +periorchitis +periost +periostea +periosteal +periosteitis +periosteoma +periosteous +periosteum +periostitic +periostitis +periostoma +periostosis +periostotomy +periostracal +periostracum +periotic +periovular +peripatetic +peripatidae +peripatidea +peripatize +peripatoid +peripatopsis +peripatus +peripenial +peripetalous +peripetasma +peripeteia +peripetia +peripety +periphacitis +peripherad +peripheral +peripherally +peripherals +peripherial +peripheric +peripherical +peripheries +periphractic +periphrase +periphrases +periphrasis +periphraxy +periphyllum +periphyse +periphysis +periplaneta +periplasm +periplast +periplastic +peripleural +periploca +periplus +peripneumony +peripneustic +peripolar +periportal +periproct +periproctal +periproctous +peripteral +peripterous +periptery +peripyloric +perique +perirectal +perirectitis +perirenal +perisarc +perisarcal +perisarcous +periscian +periscians +periscii +periscopal +periscope +periscopic +periscopical +periscopism +perish +perishable +perishables +perishably +perished +perisher +perishers +perishes +perisheth +perishing +perishingly +perishless +perishment +perisinuitis +perisinuous +perisoma +perisomal +perisomatic +perisome +perisomial +perisperm +perispermal +perispermic +perisphere +perispheric +perisplenic +perispome +perispomenon +perispore +perissad +perissologic +perissology +peristalith +peristalsis +peristaltic +peristele +peristerite +peristeronic +peristeropod +peristethium +peristole +peristoma +peristomal +peristomatic +peristome +peristomial +peristomium +peristrephic +peristrumous +peristylar +peristyle +peristylium +peristylos +peristylum +perisynovial +perisystole +perisystolic +perit +perite +peritenon +perithece +perithecial +perithecium +perithelial +perithelioma +perithelium +perithoracic +peritomize +peritomous +peritomy +peritoneal +peritoneally +peritoneum +peritonism +peritonital +peritonitic +peritonitis +peritracheal +peritrema +peritreme +peritrich +peritricha +peritrichan +peritrichic +peritrichous +peritroch +peritrochal +peritrochium +peritrochoid +peritropal +peritrophic +peritropous +perityphlic +periungual +periuranium +periureteric +periurethral +periuterine +periuvular +perivaginal +perivascular +perivenous +perivesical +perivisceral +perivitellin +periwig +periwigpated +periwinkled +periwinkler +perizonium +perizzite +perizzites +perjink +perjinkety +perjinkities +perjinkly +perjured +perjuredly +perjuredness +perjurer +perjuress +perjurious +perjuriously +perjurous +perk +perkami +perkasie +perked +perkett +perkey +perkily +perkin +perkiness +perking +perkingly +perkins +perkinson +perkinston +perkinsville +perkish +perkle +perknite +perks +perl +perla +perlaceous +perlaria +perle +perlection +perles +perley +perlid +perlidae +perligenous +perlika +perlingual +perlingually +perlini +perlis +perliss +perlite +perlitic +perlman +perlmutter +perloir +perlovsky +perlustrate +perlustrator +perm +permafrost +permanence +permanency +permanent +permanently +permanganate +permanganic +permansive +permeability +permeably +permeameter +permeance +permeant +permeate +permeated +permeates +permeating +permeation +permeative +permeator +permet +permiak +permic +permillage +permirific +permissable +permissible +permissibly +permission +permissioned +permissions +permissive +permissively +permissory +permit +permition +permits +permittable +permitted +permittedly +permittee +permitter +permitting +permittivity +permixture +permoralize +permutable +permutably +permutate +permutation +permutations +permutator +permutatory +permuted +permuter +permutes +permuting +permyak +permyat +pern +pernambuco +pernancy +pernasal +pernaur +pernavigate +pernell +pernettia +pernicious +perniciously +pernicity +pernickety +pernilla +pernine +pernis +pernitrate +pernitric +pernoctation +pernor +pernyi +pero +peroba +perobrachius +perocephalus +perochirus +perodactylus +perodipus +peroft +perognathus +perojo +peromedusae +peromela +peromelous +peromelus +peromyscus +peron +peronate +peroneal +peronial +peronist +peronium +peronospora +perople +peropod +peropoda +peropodous +peropus +peroral +perorally +perorate +peroration +perorational +perorative +perorator +peroratory +perosis +perosmate +perosmic +perosomus +perot +perotic +perouse +perov +perovic +perovskaya +perovskite +peroxidase +peroxidate +peroxidation +peroxide +peroxidic +peroxidize +peroxy +peroxyl +perozonid +perozonide +perpend +perpension +perpera +perperfect +perpetrable +perpetrated +perpetrates +perpetrating +perpetration +perpetrator +perpetrators +perpetratrix +perpetua +perpetuable +perpetual +perpetualism +perpetualist +perpetuality +perpetually +perpetuana +perpetuance +perpetuant +perpetuated +perpetuates +perpetuating +perpetuation +perpetuator +perpetuity +perpetuum +perpignan +perpignon +perplantar +perplexable +perplexed +perplexedly +perplexer +perplexing +perplexingly +perplexity +perplexment +perplication +perposes +perq +perqd +perqe +perqf +perquadrat +perquest +perquisition +perquisitor +perr +perradial +perradially +perradiate +perradius +perras +perrault +perreau +perreault +perreira +perrella +perrenx +perret +perrette +perrey +perri +perrier +perrin +perrine +perrineville +perrinist +perrins +perrinton +perris +perron +perrone +perroni +perronville +perros +perrot +perrotin +perrotta +perrotti +perroutine +perrson +perruche +perrukery +perruthenate +perruthenic +perry +perryhall +perryman +perryment +perryopolis +perrypark +perrypoint +perrysburg +perrysville +perryton +perryville +pers +persa +persae +persalt +persaud +perscent +perschke +perschy +perscribe +perscrutate +perscrutator +perse +persea +persechino +persecute +persecuted +persecutee +persecutes +persecutest +persecuting +persecution +persecutions +persecutive +persecutor +persecutors +persecutress +persecutrix +perseid +perseite +perseitol +perseity +persekutuan +persen +persent +persephassa +persephone +persepolis +persepolitan +perseus +perseverance +perseverate +persevered +perseveres +persevering +pershin +pershing +persia +persian +persiani +persianist +persianize +persianized +persians +persianurdu +persic +persicaria +persicary +persicize +persico +persicot +persides +persidsky +persienne +persiennes +persiflate +persifleur +persilicic +persimmon +persinger +persis +persism +persist +persisted +persistence +persistency +persistent +persistently +persister +persisting +persistingly +persistive +persistively +persists +persky +persnickety +persoanlly +persoff +person +persona +personable +personably +personae +personages +personal +personalia +personalised +personalism +personalist +personality +personalize +personalized +personalizes +personally +personalness +personals +personalty +personate +personately +personating +personation +personative +personator +personed +personeity +personifiant +personified +personifier +personifies +personifying +personize +personkind +personmust +personna +personnal +personne +personnel +personnelle +personnes +persons +personship +persott +perspection +perspective +perspectived +perspectives +perspicacity +perspicacy +perspirable +perspirant +perspirate +perspiration +perspirative +perspiratory +perspiringly +perspiry +persson +perstor +perstringe +persuadable +persuadably +persuade +persuaded +persuadedly +persuader +persuaders +persuades +persuadest +persuadeth +persuading +persuadingly +persuasible +persuasibly +persuasion +persuasions +persuasive +persuasively +persuasory +persude +persulphate +persulphide +persulphuric +persymmetric +pertain +pertained +pertaineth +pertaining +pertainment +pertains +perten +perth +perthamboy +perthite +perthitic +perthosite +pertinacity +pertinacy +pertinence +pertinencey +pertinency +pertinent +pertinently +pertingent +pertish +pertly +pertness +pertti +pertubation +perturbable +perturbance +perturbancy +perturbant +perturbative +perturbator +perturbatory +perturbatrix +perturbed +perturbedly +perturber +perturbing +perturbingly +perturbment +pertusaria +pertuse +pertused +pertusion +pertussal +pertussis +pertwee +perty +peru +peruano +perucci +perucolombia +peruda +perugian +perugiho +peruginesque +perugino +peruk +peruke +perukeless +perukier +perukiership +perula +perularia +perulate +perule +perun +perusable +perusal +peruse +perused +peruser +perusers +peruses +perusing +peruvian +peruvianize +pervaded +pervadence +pervader +pervades +pervading +pervadingly +pervagate +pervagation +pervalvar +pervasive +pervasively +perverse +perversely +perverseness +perversion +perversities +perversity +perversive +pervert +perverted +pervertedly +perverter +perverteth +pervertible +pervertibly +perverting +pervertive +perverts +perviability +perviable +pervicacious +pervicacity +pervicacy +pervical +pervigilium +pervious +perviously +perviousness +pervoe +pervom +pervulgate +pervulgation +pervus +pervyj +perwakilan +perwitsky +pesa +pesaa +pesach +pesade +pesage +pesah +pesaka +pesante +pesaran +pescadero +pescadores +pescard +pescatori +pescecane +pesche +peschke +pesci +pescow +pesecham +pesechem +pesegem +pesek +pesen +peseta +pesetas +pesewas +peshastin +peshawar +peshawari +peshay +peshe +peshitta +peshkar +peshkash +peshmal +peshtigo +peshwa +peshwaship +pesic +pesii +pesik +pesimiezing +pesiml +pesisir +peske +peskebori +peski +peskily +peskiness +peskun +pesky +pesma +pesniu +pesnyah +peso +pesold +peson +pesos +pesotan +pesotum +pesquet +pess +pessa +pessary +pessimistic +pessimize +pessimizing +pessin +pessomancy +pessoner +pessular +pessulus +pessy +pestalozzian +pester +pestered +pesterer +pestering +pesteringly +pesterment +pesterous +pestersome +pestful +pesthole +pesthouse +pesticidal +pesticide +pesticides +pestiduct +pestiferous +pestifugous +pestify +pestilence +pestilences +pestilent +pestilently +pestill +pestle +pestological +pestologist +pestology +peston +pestproof +pests +pestunovich +pesx +peta +petaca +petachi +petal +petalage +petaled +petalia +petaliferous +petaliform +petaliidae +petaline +petalism +petalite +petalled +petalless +petallike +petalocerous +petalodic +petalodont +petalodontid +petalodus +petalody +petaloid +petaloidal +petaloideous +petalomania +petalon +petalostemon +petalous +petals +petaluma +petalwise +petaly +petapa +petar +petard +petardeer +petardier +petary +petasia +petasites +petasos +petasus +petats +petauke +petaurine +petaurist +petaurista +petauroides +petaurus +petchabun +petchara +petchary +petchnikoft +petcock +pete +peteca +petechiae +petechial +petechiate +petel +petela +petem +peteman +peten +peter +peterara +peterboro +peterborough +peterfreund +peterka +peterke +peterkin +peterloo +peterman +petermichael +peternet +peterpan +peters +petersburg +petersen +petersham +peterson +peterstown +peterwort +petessun +petey +petful +peth +pethahiah +pethia +pethidine +pethor +pethuel +peti +petie +petillion +petillo +petimpui +petiolar +petiolary +petiolata +petiolate +petiolated +petiole +petioled +petiolular +petiolulate +petiolule +petiolus +petion +petit +petite +petiteness +petites +petitgrain +petition +petitionable +petitional +petitionary +petitioned +petitionee +petitioner +petitioners +petitioning +petitionist +petitions +petitor +petitory +petits +petiveria +petka +petkau +petkin +petko +petkoff +petling +petlukoff +peto +petoskey +petr +petra +petrachesco +petraglia +petraitis +petrarca +petrarch +petrarchal +petrarchan +petrarchian +petrarchism +petrarchist +petrarchize +petrary +petras +petre +petrea +petrean +petree +petreity +petrel +petrella +petrenko +petrescence +petrescent +petrescu +petretta +petretto +petrey +petri +petricioli +petrick +petricola +petricolidae +petricolous +petrie +petrifactive +petrifiable +petrific +petrificant +petrificate +petrified +petrifier +petrignani +petrim +petrina +petrinack +petrine +petrinism +petrinist +petrinize +petris +petrissage +petro +petrobium +petrobrusian +petrocelli +petroff +petrogale +petrogenesis +petrogenic +petrogeny +petroglyphic +petroglyphy +petrograd +petrograph +petrographer +petrographic +petrography +petrohyoid +petrolage +petrolatum +petrolean +petrolene +petroleous +petroleuse +petroleuses +petrolia +petrolic +petrolific +petrolist +petrolithic +petrolize +petrologic +petrological +petrolum +petromastoid +petromyzon +petromyzont +petrona +petrone +petronel +petronell +petronella +petronia +petronilla +petronille +petronius +petrophilous +petros +petrosa +petrosal +petroselinum +petrosilex +petrosphere +petrostearin +petrosum +petrosyan +petrounka +petrous +petrov +petrova +petrovic +petrovich +petrovin +petrovitch +petrovna +petrovsky +petrowna +petroxolin +petruccelli +petrucci +petrunewich +petrunka +petrus +pets +petsamo +petschenig +petschnikoff +petscii +petskee +petspets +pett +pettable +petted +pettedly +pettedness +pettelson +pettener +pettengill +petter +petters +pettersson +pettet +pettibone +pettichaps +petticoated +petticoatery +petticoatism +petticoats +petticoaty +pettiet +pettifer +pettifog +pettifogger +pettifoggery +pettifogging +pettigrew +pettijohn +pettily +pettiness +petting +pettingell +pettinger +pettinghill +pettingill +pettingly +pettis +pettish +pettisville +pettit +pettitoes +pettitt +pettle +pettus +petty +pettyfog +pettyjohn +petualang +petula +petulance +petulancy +petulantly +petulia +petune +petunia +petuntse +petur +petwood +petya +petyushin +petzite +petzold +peucedanum +peucetii +peuchen +peucites +peuhl +peul +peulh +peulthai +peumus +peur +peut +peutingerian +peve +pevec +pevekskij +pevely +pevensey +pevney +pevzner +pewa +pewage +pewamo +pewanean +pewaneang +pewaukee +pewdom +peweevalley +pewfellow +pewful +pewholder +pewing +pewit +pewitt +pewless +pewmate +pews +pewter +pewterer +pewterwort +pewtery +pewy +peycherand +peyda +peydal +peyerian +peyote +peyotl +peyramale +peyrelon +peyron +peyser +peyster +peyton +peytona +peytonsburg +peytral +peytrel +pezantic +pezey +pezi +peziza +pezizaceae +pezizaceous +pezizaeform +pezizales +peziziform +pezizoid +pezograph +pezophaps +pezzoli +pezzoni +pezzotta +pezzullo +pezzutto +pfade +pfaff +pfaffian +pfafftown +pfalzer +pfanzagl +pfaudler +pfconfig +pfcrn +pfeffer +pfeffermann +pfeffernuss +pfeifer +pfeiffer +pfeifferella +pfeil +pfennige +pfieffer +pfiffer +pfifferling +pfister +pfitzmann +pfitzner +pflag +pflaumer +pflo +pflug +pflugbeil +pflugerville +pfokomo +pforce +pforsich +pfstat +pfui +pfund +pfunde +pgdn +pghsun +pgmint +pgntt +pgnttrp +pgpwave +pgtnsc +pgup +phaani +phaca +phacelia +phacelite +phacella +phacidiaceae +phacidiales +phacitis +phacocele +phacochere +phacocherine +phacochoere +phacochoerid +phacochoerus +phacocyst +phacoid +phacoidal +phacolite +phacolith +phacolysis +phacomalacia +phacometer +phacopid +phacopidae +phacops +phacoscope +phacotherapy +phadang +phadia +phaeacian +phaedo +phaedra +phaeism +phaenanthery +phaenogam +phaenogamia +phaenogamian +phaenogamic +phaenogamous +phaenology +phaenomenal +phaenomenism +phaenomenon +phaenozygous +phaeo +phaeochrous +phaeodaria +phaeodarian +phaeophore +phaeophyceae +phaeophycean +phaeophyll +phaeophyta +phaeophytin +phaeoplast +phaeospore +phaeosporeae +phaeosporous +phaet +phaethon +phaethonic +phaethontes +phaethontic +phaethusa +phaeton +phaetusa +phagan +phagedena +phagedenic +phagedenical +phagedenous +phagineae +phagocytable +phagocytal +phagocyter +phagocytic +phagocytism +phagocytize +phagocytose +phagocytosis +phagolysis +phagolytic +phagomania +phai +phaidra +phailin +phainolion +phainopepla +phair +phajus +phalaborwa +phalaburwa +phalacrosis +phalaecean +phalaecian +phalaenae +phalaenidae +phalaenopsid +phalaenopsis +phalang +phalangal +phalange +phalangeal +phalangean +phalangerine +phalanges +phalangette +phalangian +phalangic +phalangid +phalangida +phalangidan +phalangidea +phalangidean +phalangides +phalangiform +phalangiid +phalangiidae +phalangist +phalangista +phalangite +phalangitic +phalangitis +phalangium +phalangology +phalansteric +phalanstery +phalanxed +phalarica +phalaris +phalarism +phalcon +phaldakotiya +phalec +phalen +phalera +phalerate +phalerated +phaleucian +phali +phallaceae +phallaceous +phallales +phallalgia +phallephoric +phallic +phallical +phallicism +phallicist +phallin +phallism +phallist +phallitis +phallodynia +phalloid +phalloncus +phalloplasty +phallu +phallus +phalo +phalok +phalpher +phalti +phaltiel +phalura +pham +phan +phana +phanar +phanariot +phanariote +phanatron +phaneric +phanerite +phanerocryst +phanerogam +phanerogamia +phanerogamic +phanerogamy +phanerogenic +phaneromania +phaneromere +phaneroscope +phanerosis +phanerozoic +phanerozonia +phanes +phang +phanga +phangnga +phani +phanic +phano +phanom +phans +phansigar +phantascope +phantasia +phantasiast +phantasist +phantasize +phantasm +phantasma +phantasmal +phantasmally +phantasmata +phantasmatic +phantasmic +phantasmical +phantasmist +phantasmo +phantast +phantom +phantomatic +phantome +phantomic +phantomical +phantomist +phantomize +phantomizer +phantomland +phantomlike +phantomry +phantoms +phantomship +phantomwise +phantomy +phantoplex +phantoscope +phanuel +phaon +phar +pharah +pharao +pharaoh +pharaohnecho +pharaohs +pharaon +pharaonic +pharaonical +pharbitis +phare +phareodus +phares +pharez +phari +pharian +pharisaean +pharisaic +pharisaical +pharisaism +pharisaist +pharisean +pharisee +phariseeism +pharisees +phariss +pharlap +pharmacal +pharmacic +pharmacite +pharmacolite +pharmacon +pharmacopeia +pharmakos +pharmic +pharmuthi +pharoah +pharology +pharomacrus +pharon +pharos +pharosh +pharpar +pharr +pharris +pharsalian +phartz +pharyngal +pharyngalgia +pharyngalgic +pharyngeal +pharynges +pharyngic +pharyngismus +pharyngitic +pharyngitis +pharyngocele +pharyngolith +pharyngology +pharyngotomy +pharynx +pharzites +phascaceae +phascaceous +phascogale +phascolome +phascolomys +phascolonus +phascum +phase +phaseah +phaseal +phased +phaseless +phaselin +phasemeter +phasemy +phaseolaceae +phaseolin +phaseolous +phaseolus +phaseometer +phaser +phasers +phases +phasetype +phasianella +phasianic +phasianid +phasianidae +phasianinae +phasianine +phasianoid +phasianus +phasic +phasing +phasiron +phasis +phasm +phasma +phasmatid +phasmatida +phasmatidae +phasmatodea +phasmatoid +phasmatoidea +phasmatrope +phasmid +phasmida +phasmidae +phasmoid +phasogeneous +phasotropy +phat +phatak +phatarfod +phatharry +phattaloong +phattalung +phatthalung +phay +phayao +phayap +phayeng +pheal +pheasant +pheasantry +pheasants +pheasantwood +pheatt +pheba +phebe +phecda +phedon +phedra +phegopteris +phegor +pheidole +phekon +phelan +phelgm +phelia +phelim +phellandrene +phellem +phelloderm +phellodermal +phellogen +phellogenic +phellonic +phelongre +phelonion +phelpr +phelps +phemba +phemic +phemie +phenacaine +phenacetin +phenaceturic +phenacite +phenacodus +phenacyl +phenakism +phenalgin +phenanthrene +phenanthrol +phenarsine +phenate +phenazine +phenazone +phende +phene +phenegol +phenene +phenethyl +phenetidine +phenetole +phengite +phengitical +phenic +phenicate +phenice +phenicia +phenicious +phenicopter +phenin +phenix +phenixcity +phenmiazine +phenocoll +phenocopy +phenocryst +phenogenesis +phenogenetic +phenolate +phenolize +phenological +phenologist +phenology +phenoloid +phenomena +phenomenal +phenomenally +phenomenic +phenomenical +phenomenism +phenomenist +phenomenize +phenomenon +phenoplast +phenoplastic +phenoquinone +phenosal +phenospermic +phenospermy +phenotypes +phenotypic +phenotypical +phenoxazine +phenoxid +phenoxide +phenozygous +pheny +phenylacetic +phenylamide +phenylamine +phenylate +phenylation +phenylboric +phenylene +phenylic +pheon +pheophyl +pheophyll +pheophytin +pherber +phereclos +pherecratean +pherecratian +pherecratic +pherephatta +pheretrer +pheriannath +pherkad +pheromone +pheromones +pherophatta +pherrongre +phersephatta +phet +phetburi +phetchabun +phetchaburi +phew +phial +phiale +phialful +phialide +phialine +phiallike +phialophore +phialospore +phiatruoc +phiber +phichit +phichol +phidiac +phidian +phidias +phifer +phigalian +phil +phila +philadelphi +philadelphia +philadelphus +philadelphy +philagoria +philalethist +philamot +philander +philanderer +philanthid +philanthidae +philanthus +philantomba +philarchaist +philarminic +philarmonic +philashpyd +philatelic +philatelical +philatelism +philatelist +philately +philathea +philathletic +philbean +philbeck +philbin +philbrick +philbrook +philby +philcampbell +phile +phileas +philemon +philepitta +philes +philesia +philetaerus +philetus +philhellene +philhellenic +philhippic +philhymnic +phili +philia +philiater +philibeg +phililp +philindros +philine +philion +philip +philipa +philipe +philipians +philipino +philipov +philipp +philippa +philippan +philippe +philippeaux +philippi +philippian +philippians +philippic +philippicize +philippina +philippine +philippines +philippino +philippism +philippist +philippistic +philippizate +philippize +philippizer +philippou +philipps +philippus +philips +philipsburg +philis +philister +philistia +philistian +philistim +philistine +philistinely +philistines +philistinian +philistinic +philistinish +philistinism +philistinize +phill +philliber +phillibrown +phillida +phillie +philliloo +phillip +phillipa +phillipe +phillipo +phillippa +phillippe +phillips +phillipsburg +phillipsine +phillipsite +phillipsport +phillis +phillott +phillpotts +philly +phillyrea +phillyrin +philmont +philmore +philo +philobiblian +philobiblic +philobiblist +philobotanic +philobrutish +philocalic +philocalist +philocaly +philocomal +philoctetes +philocubist +philocynic +philocynical +philocyny +philodemic +philodespot +philodina +philodinidae +philodox +philodoxer +philodoxical +philofelist +philofelon +philogarlic +philogastric +philogeant +philograph +philographic +philogy +philogynist +philogynous +philogyny +philohela +philokleptic +philologer +philologian +philologic +philologica +philological +philologist +philologists +philologize +philologue +philologus +philomachus +philomath +philomathic +philomathy +philomel +philomela +philomena +philomene +philomont +philomuse +philomusical +philomystic +philonatural +philoneism +philonian +philonic +philonism +philonist +philonium +philonoist +philopagan +philopater +philopatrian +philopena +philopig +philopoet +philopogon +philopolemic +philopornist +philopterid +philoradical +philornithic +philorthodox +philosopheme +philosophers +philosophia +philosophic +philosophies +philosophism +philosophist +philosophize +philosophy +philosopical +philostrate +philotadpole +philotas +philotechnic +philotheism +philotheist +philotherian +philotria +philoxenian +philozoic +philozoist +philozoonist +philp +philpelli +philpot +philpott +philpotts +phils +philter +philterer +philterproof +philthy +philtra +philtrum +philydraceae +philyra +phimosed +phimosis +phimotic +phineas +phinebung +phinehas +phinlay +phiomia +phipps +phippsburg +phirm +phisube +phit +phitsanulok +phitsanuloke +phiz +phizes +phizog +phlebalgia +phlebangioma +phlebectasia +phlebectasis +phlebectasy +phlebectomy +phlebectopia +phlebectopy +phlebenteric +phlebitic +phlebitis +phlebodium +phlebogram +phlebograph +phlebography +phleboid +phleboidal +phlebolite +phlebolith +phlebolithic +phlebolitic +phlebology +phlebopexy +phleboplasty +phleborrhage +phlebostasia +phlebostasis +phlebotome +phlebotomic +phlebotomist +phlebotomize +phlebotomus +phlebotomy +phlegethon +phlegm +phlegma +phlegmagogue +phlegmasia +phlegmatic +phlegmatical +phlegmaticly +phlegmatics +phlegmatism +phlegmatist +phlegmatous +phlegmless +phlegmon +phlegmonic +phlegmonoid +phlegmonous +phlegmy +phlegon +phlegra +phleum +phlobaphene +phlobatannin +phloem +phloeoterma +phlogisma +phlogistian +phlogistic +phlogistical +phlogiston +phlogogenic +phlogogenous +phlogopite +phlogosed +phlomis +phlon +phlong +phloretic +phloroglucic +phloroglucin +phlorone +phlox +phloxin +phlsun +phnom +phnompenh +phnum +phobia +phobiac +phobias +phobism +phobist +phobophobia +phobos +phoby +phoca +phocacean +phocaceous +phocaea +phocaean +phocaena +phocaenina +phocaenine +phocal +phocean +phocenate +phocenic +phocenin +phocian +phocid +phocidae +phociform +phocinae +phocine +phocodont +phocodontia +phocodontic +phocoena +phocoid +phocomelia +phocomelous +phocomelus +phoebe +phoebean +phoebus +phoenicaceae +phoenicales +phoenicean +phoenician +phoenicid +phoenicite +phoenicize +phoeniculus +phoenicurous +phoenigm +phoenix +phoenixity +phoenixlike +phoenixville +phoh +phoibos +phoka +phoke +pholad +pholadacea +pholadian +pholadid +pholadidae +pholadinea +pholadoid +pholas +pholcid +pholcidae +pholcoid +pholcus +pholido +pholidolite +pholidosis +pholidota +pholidote +pholiota +pholong +phom +phoma +phomopsis +phomvihan +phonal +phonasthenia +phonate +phonation +phonatory +phonautogram +phone +phonebook +phonecard +phoned +phonedialer +phonefree +phonelescope +phoneline +phonelist +phonemes +phonemically +phonemicized +phonemics +phones +phonesis +phonestheme +phonetastic +phonetical +phonetically +phonetician +phoneticism +phoneticist +phoneticize +phonetics +phonetism +phonetist +phonetize +phonewolf +phoney +phong +phongsali +phonhome +phoniatrics +phoniatry +phonics +phonies +phonikon +phoning +phonism +phono +phonocamptic +phonodeik +phonoglyph +phonogram +phonogramic +phonogrammic +phonographer +phonographic +phonographs +phonography +phonolite +phonolitic +phonologer +phonologic +phonological +phonologist +phonometer +phonometric +phonometry +phonomimic +phonomotor +phonopathy +phonophile +phonophobia +phonophone +phonophore +phonophoric +phonophorous +phonophote +phonoplex +phonorganon +phonoscope +phonotype +phonotyper +phonotypic +phonotypical +phonotypist +phonotypy +phoo +phophlon +phor +phora +phoradendron +phoranthium +phoresis +phoresy +phoria +phorid +phoridae +phorminx +phormium +phorology +phorometer +phorometric +phorometry +phorone +phoronic +phoronid +phoronida +phoronidea +phoronis +phoronomia +phoronomic +phoronomics +phoronomy +phororhacos +phoroscope +phorozooid +phos +phose +phosgenic +phosgenite +phosis +phosphagen +phospham +phosphamic +phosphamide +phosphamidic +phosphatase +phosphated +phosphatemia +phosphates +phosphatese +phosphatic +phosphatide +phosphation +phosphatize +phosphaturia +phosphaturic +phosphene +phosphenyl +phosphinate +phosphinic +phosphite +phospho +phospholipin +phosphonate +phosphonic +phosphonium +phosphor +phosphorate +phosphore +phosphoreal +phosphorent +phosphoreous +phosphoreted +phosphori +phosphorical +phosphorism +phosphorite +phosphoritic +phosphorize +phosphorogen +phosphorous +phosphoruria +phosphorus +phosphoryl +phosphuret +phosphuria +phosphyl +phossy +phost +phot +photal +photalgia +photamo +photechy +photek +photeolic +photesthesis +photic +photics +photinia +photinian +photinianism +photiou +photism +photistic +photo +photoactinic +photoactive +photoalbum +photobathic +photobiotic +photobromide +photocampsis +photocell +photoceptor +photoceramic +photochemic +photochemist +photochrome +photochromic +photochromy +photocompose +photocopied +photocopier +photocopiers +photocopies +photocopy +photocopying +photocrayon +photocurrent +photodiode +photodiodes +photodrama +photodrome +photodromy +photodynamic +photoelastic +photoengrave +photoetch +photoetcher +photoetching +photofilm +photofinish +photoflash +photogelatin +photogen +photogene +photogenetic +photogenous +photoglyph +photoglyphic +photoglyphy +photoglyptic +photogram +photograph +photographe +photographed +photographee +photographer +photographic +photographs +photogravure +photogyric +photohalide +photoimp +photoimpact +photoinpact +photokinesis +photokinetic +photolab +photolith +photolitho +photologic +photological +photologist +photology +photolyte +photoma +photomap +photomapper +photometeor +photometer +photometric +photometrist +photomontage +photomural +photon +photonastic +photonasty +photoneutron +photonosus +photoop +photopathic +photopathy +photoperiod +photophane +photophile +photophilic +photophilous +photophily +photophobe +photophobia +photophobic +photophobous +photophone +photophonic +photophony +photophore +photophygous +photopia +photopic +photopile +photoplay +photoplayer +photoprint +photoprinter +photoprocess +photoradio +photorelief +photos +photosalt +photoscope +photoscopic +photoscopy +photosensory +photoshop +photosphere +photospheric +photostable +photostat +photosyntax +phototactic +phototactism +phototaxis +phototaxy +phototechnic +phototherapy +photothermic +phototonic +phototonus +phototools +phototrope +phototrophic +phototrophy +phototropic +phototropism +phototropy +phototube +phototype +phototypic +phototypist +phototypy +photovista +photovisual +photovoltaic +photozinco +photsimi +photuria +phou +phoumi +phoutheung +phra +phrachinburi +phrack +phrae +phragma +phragmidium +phragmites +phragmocone +phragmoconic +phragmoid +phragmosis +phran +phrasable +phrasal +phrasally +phrase +phraseable +phrased +phraseless +phrasemaker +phrasemaking +phraseman +phrasemonger +phraseogram +phraseograph +phraser +phrases +phrasify +phrasiness +phrasing +phrasings +phrasy +phrator +phratral +phratria +phratriac +phratrial +phratry +phreak +phreaker +phreakers +phreaki +phreaking +phreaks +phreatic +phreatophyte +phrenesia +phrenesiac +phrenesis +phrenetic +phrenic +phrenicotomy +phrenics +phrenitic +phrenitis +phrenocardia +phrenocolic +phrenocostal +phrenodynia +phrenogram +phrenograph +phrenography +phrenoia +phrenologer +phrenologic +phrenologist +phrenologize +phrenology +phrenopathia +phrenopathic +phrenopathy +phrenoplegia +phrenoplegy +phrenosin +phrenosinic +phrenospasm +phrenotypics +phrensy +phrenzied +phri +phrog +phrom +phronesis +phronima +phronimidae +phrontistery +phroso +phrozen +phryganea +phryganeid +phryganeidae +phryganeoid +phrygia +phrygian +phrygianize +phrygium +phryma +phrymaceae +phrymaceous +phryne +phrynid +phrynidae +phrynin +phrynoid +phrynosoma +phsin +phthalacene +phthalan +phthalanilic +phthalazin +phthalazine +phthalein +phthalic +phthalid +phthalide +phthalimide +phthalin +phthalyl +phthanite +phthia +phthinoid +phthiocol +phthiozoics +phthiriasis +phthirius +phthisic +phthisical +phthisicky +phthisiology +phthisis +phthongal +phthor +phthoric +phuan +phuang +phuc +phuck +phucked +phuckin +phuckoff +phudagi +phugoid +phuket +phukin +phulbani +phulkari +phulwa +phulwara +phum +phun +phung +phunoi +phuoc +phuong +phupha +phurah +phusang +phut +phutai +phuthi +phuu +phuvah +phya +phyap +phyast +phyciodes +phycite +phycitidae +phycitol +phycochrome +phycocyanin +phycography +phycological +phycologist +phycology +phycomyces +phycomycete +phycophaein +phycoxanthin +phyffe +phygellus +phyillis +phyl +phylacteric +phylacteried +phylacteries +phylacterize +phylactery +phylactic +phylactocarp +phylactolema +phylarch +phylarchic +phylarchical +phylarchy +phyle +phylephebic +phylesis +phyletic +phyletically +phyletism +phylic +phylis +phyliss +phyllachora +phyllactinia +phyllade +phyllanthus +phyllary +phyllaurea +phyllida +phylliform +phyllin +phylline +phyllis +phyllite +phyllitic +phyllitis +phyllium +phyllocactus +phyllocarid +phyllocarida +phylloceras +phyllocerate +phylloclad +phylloclade +phyllocyanic +phyllocyanin +phyllocyst +phyllocystic +phyllode +phyllodial +phyllodinous +phyllodium +phyllodoce +phyllody +phyllogenous +phylloid +phylloidal +phylloideous +phyllomancy +phyllomania +phyllome +phyllomic +phyllomorph +phyllomorphy +phyllophaga +phyllophore +phyllophyte +phyllopod +phyllopoda +phyllopodan +phyllopode +phyllopodium +phyllopodous +phyllopteryx +phylloptosis +phyllorhine +phylloscopus +phyllosoma +phyllosomata +phyllosome +phyllosticta +phyllostoma +phyllostome +phyllostomus +phyllotactic +phyllotaxis +phyllotaxy +phyllous +phylloxera +phylloxeran +phylloxeric +phyllozooid +phyllys +phylo +phylogenetic +phylogenic +phylogenist +phylogeny +phylography +phylology +phylon +phyloneanic +phylum +phylys +phyma +phymata +phymatic +phymatid +phymatidae +phymatodes +phymatoid +phymatosis +phymosia +phys +physa +physagogue +physalia +physalian +physaliidae +physalis +physalite +physalospora +physapoda +physaria +physci +physcia +physciaceae +physcioid +physeter +physeteridae +physeterinae +physeterine +physeteroid +physiatric +physiatrical +physiatrics +physica +physical +physicalism +physicalist +physicality +physically +physicalness +physicals +physician +physicianary +physiciancy +physicianed +physicianer +physicianess +physicianly +physicians +physicism +physicist +physicists +physicked +physicker +physicking +physicky +physicologic +physicomorph +physics +physidae +physiform +physiocracy +physiocrat +physiocratic +physiogenic +physiogeny +physiognomic +physiogony +physiography +physiol +physiolater +physiolatry +physiologer +physiologian +physiologies +physiologist +physiologize +physiologue +physiologus +physiosophic +physiosophy +physiotype +physiotypy +physique +physiqued +physitheism +physitism +physiurgic +physiurgy +physocarpous +physocarpus +physocele +physoclist +physoclisti +physoclistic +physoderma +physogastric +physogastry +physometra +physonectae +physonectous +physophorae +physophoran +physophore +physophorous +physopod +physopoda +physopodan +physostegia +physostigma +physostome +physostomi +physostomous +phytalbumose +phytase +phytelephas +phyteus +phytic +phytiferous +phytiform +phytin +phytivorous +phytobezoar +phytobiology +phytochlorin +phytocidal +phytoecology +phytogamy +phytogenesis +phytogenetic +phytogenic +phytogenous +phytogeny +phytograph +phytographer +phytographic +phytography +phytohormone +phytoid +phytol +phytolacca +phytolatrous +phytolatry +phytologic +phytological +phytologist +phytology +phytoma +phytome +phytomer +phytometer +phytometric +phytometry +phytomonad +phytomonas +phytomorphic +phyton +phytonic +phytonomy +phytophaga +phytophagan +phytophagic +phytophagous +phytophagy +phytophil +phytophilous +phytophthora +phytopsyche +phytoptid +phytoptidae +phytoptose +phytoptosis +phytoptus +phytorhodin +phytosaur +phytosauria +phytosaurian +phytosis +phytosterin +phytosterol +phytostrote +phytotechny +phytotoma +phytotomidae +phytotomist +phytotomy +phytotoxic +phytotoxin +phytozoa +phytozoan +phytozoaria +phytozoon +phytyl +piaba +piac +piacaba +piacle +piacular +piacularity +piacularly +piacularness +piaculum +piaf +piaffe +piaffer +piafi +piaget +piah +piajao +piako +pial +pialyn +piamatsina +piame +pian +pianakoto +pianette +pianga +piani +pianic +pianino +pianism +pianiste +pianistic +pianka +piankashaw +piankov +piannet +piano +pianocoto +pianoforte +pianofortist +pianograph +pianokoto +pianola +pianolist +pianologue +pianos +piantini +piao +piapocan +piapoco +piapoko +piarhemia +piarhemic +piarist +piaroa +piaroan +piaropus +piarroan +piasa +piasecki +piaski +piassava +piast +piaster +piasters +piastillio +piastre +piat +piathip +piation +piatt +piaui +piawi +piazine +piazzaed +piazzaless +piazzalike +piazzas +piazzia +piazzian +pibcorn +pibeseth +piblokto +pibor +pibroch +pica +picabia +picacho +picador +picadura +picae +pical +picamar +picara +picard +picardie +picardo +picards +picarel +picaresque +picariae +picarian +picarii +picaro +picaroon +picary +picas +picaso +picasso +picaview +picayunish +picayunishly +picazo +piccadill +piccadilly +piccalilli +picchi +picchio +picci +piccio +piccola +piccoli +piccolino +piccolo +piccoloist +pice +picea +picene +picenian +piceous +picerni +piceworth +pich +picha +piche +pichel +picher +pichi +pichiciago +pichincha +pichis +pichler +pichocki +pichon +pichuric +pichurim +pici +picidae +piciform +piciformes +picin +picinae +picine +pick +picka +pickaback +pickable +pickableness +pickage +pickaninny +pickard +pickaroon +pickaway +pickax +pickaxes +picked +pickedly +pickedness +pickee +pickeer +pickeerer +pickens +picker +pickerelweed +pickeringia +pickeringite +pickerington +pickers +pickery +picket +picketboat +picketed +picketeer +picketer +picketers +pickethaube +picketing +pickets +pickett +pickfork +pickier +pickietar +picking +pickings +pickins +pickle +pickled +picklelike +pickleman +pickler +pickles +pickleweed +pickleworm +pickling +picklists +picklock +pickmaw +pickmeup +pickney +picknick +picknicker +pickone +pickover +pickpocket +pickpocketry +pickpole +pickpurse +pickrell +pickren +picks +pickshaft +picksman +picksmith +picksome +picksomeness +pickstown +pickthank +pickthankly +pickthatch +pickthorn +pickton +picktooth +pickup +pickups +pickwick +pickwickdam +pickwickian +pickwork +picnic +picnickery +picnickian +picnickish +picnicky +picnics +picnpoke +pico +picobello +picoder +picogram +picoid +picoin +picoline +picolinic +picon +picone +picons +picorivera +picos +picot +picotah +picotee +picotite +picpress +picquart +picquet +picqueter +picra +picramic +picramnia +picrasmin +picrate +picrated +picric +picris +picrite +picrocarmine +picrodendron +picrol +picrolite +picromerite +picrorhiza +picrorhizin +picrotin +picrotoxic +picrotoxin +picrotoxinin +picryl +pics +picstation +pict +pictarnie +pictavi +pictish +pictland +pictogram +pictograph +pictographic +pictography +picton +pictones +pictor +pictorialism +pictorialist +pictorialize +pictorially +pictoric +pictorical +pictorically +pictular +picturable +picturably +pictural +picture +pictureagent +picturecraft +pictured +picturedom +picturedrome +pictureful +pictureless +picturelike +picturely +picturemaker +picturer +picturerocks +pictures +picturing +picturize +pictury +picucule +picuda +picudilla +picudo +picul +piculet +piculule +picumninae +picumnus +picunche +picuris +picus +picvu +picxx +pida +pidan +piddler +piddling +piddock +piderit +pidge +pidgeon +pidginized +pidha +pidie +pidisoi +pidjajap +pidl +pidlimdi +pido +pidori +pidorom +pidorov +piebald +piebaldism +piebaldly +piebaldness +piecaitis +piece +pieceable +pieced +pieceless +piecemaker +piecen +piecener +piecer +pieces +piecette +piecework +pieceworker +piecharter +piecing +piecowye +piecrust +piecza +pied +piedfort +piedly +piedmont +piedmontal +piedmontese +piedmontite +piedness +piedra +piedras +piefke +piegan +piehouse +pieksamaki +piel +pieless +pielet +pielinen +pielou +pielum +piemag +pieman +piemarker +piemonte +piemontese +piemur +pien +pienaar +pienanny +piend +pienne +piepan +pieplant +pieplu +piepoudre +piepowder +pieprint +pier +piera +pierage +pieral +pierantonio +pierce +pierceable +piercecity +pierced +piercefield +piercel +pierceless +piercent +piercer +pierces +pierceth +pierceton +pierceville +piercey +piercing +piercingly +piercingness +piercings +piercy +pierdrop +piere +pierette +pierfederici +pierglass +pierh +pierhead +pieria +pierian +pierid +pieridae +pierides +pieridinae +pieridine +pierinae +pierine +pieris +pieritz +pierjac +pierless +pierlike +pierlot +piermont +piero +pieron +pieroni +pierosara +pierot +pieroway +pierpaoli +pierpoint +pierpont +pierra +pierre +pierrepart +pierret +pierretta +pierrette +pierrick +pierrino +pierro +pierron +pierrot +pierrotic +pierry +piers +piersall +pierse +piersen +piersic +piersis +pierskalla +piersol +pierson +pierz +pies +piesa +piesen +pieshop +pieskot +piet +pietas +pieter +pieters +pietic +pietist +pietistic +pietistical +pietose +pietown +pietr +pietra +pietro +pietromonaco +pietropaolo +pietrosanto +pietrzak +pietsch +piett +piette +pietts +piety +piewife +piewipe +piewoman +piezo +piezometer +piezometric +piezometry +piff +piffard +piffle +piffler +pifine +pifko +pifot +pigaut +pigbelly +pigdan +pigdogs +pigdom +pigeon +pigeonable +pigeoneer +pigeoner +pigeonfalls +pigeongram +pigeonholer +pigeonholes +pigeonman +pigeonry +pigeons +pigeontail +pigeonweed +pigeonwing +pigeonwood +pigface +pigfish +pigflower +pigfoot +pigful +piggery +piggin +piggishly +piggishness +piggle +piggledy +piggot +piggott +piggy +piggyback +piggybacked +piggybacking +piggybacks +pighead +pigheaded +pigheadedly +pigherd +pighin +pighte +pightle +pigless +piglet +piglets +pigliani +pigling +piglinghood +pigly +pigmaker +pigmaking +pigman +pigmental +pigmentally +pigmentary +pigmented +pigmentize +pigmentose +pigments +pigmy +pignolia +pignon +pignorate +pignoration +pignorative +pignus +pignut +pigott +pigozz +pigpen +pigpens +pigritude +pigs +pigsconce +pigshit +pigsney +pigstick +pigsticker +pigsticking +pigsty +pigtail +pigtails +piguid +pigwash +pigweed +pigwidgeon +pigyard +pihahiroth +pihom +piiga +piironen +piita +piitis +piitz +pijao +pije +pijin +pijuan +pika +pikaru +pike +piked +pikel +pikelet +pikelis +pikelner +pikeman +pikemonger +piker +pikeroad +pikes +pikestaff +piketail +piketon +pikeville +pikey +piki +piking +pikiwa +pikle +pikounda +pikstaff +piku +piky +pila +pilaca +pilaffi +pilaga +pilage +pilam +pilandite +pilapil +pilapila +pilar +pilarczyk +pilary +pilaster +pilastered +pilastering +pilastrade +pilastraded +pilastric +pilate +pilatian +pilato +pilau +pilaued +pilbeam +pilborough +pilbow +pilcer +pilch +pilchard +pilcher +pilchuck +pilcomayo +pilcorn +pilcrow +pildash +pile +pilea +pileata +pileate +pileated +piled +piledriver +pileha +pileiform +pileni +pileolated +pileolus +pileorhiza +pileorhize +pileous +piler +pilers +piles +pileus +pileweed +pilework +pileworm +pilferer +pilfering +pilferingly +pilferment +pilgarlic +pilgarlicky +pilger +pilgrimage +pilgrimager +pilgrimages +pilgrimatic +pilgrimdom +pilgrimer +pilgrimess +pilgrimism +pilgrimize +pilgrimlike +pilgrims +pilgrimsknob +pilgrimwise +pilheni +pili +pilidium +pilifer +piliferous +piliform +piligan +piliganine +piligerous +pilikai +pilikian +pililloo +pililo +pilimiction +pilin +piline +piling +pilings +pilip +pilipchuk +pilipilula +pilipino +piljeckaja +pilkington +pilkins +pill +pillageable +pillaged +pillagee +pillager +pillai +pillais +pillao +pillar +pillared +pillaret +pillaring +pillarist +pillarize +pillarlet +pillarlike +pillars +pillarsoft +pillarwise +pillary +pillas +pillbox +pilled +pilledness +piller +pillet +pilletti +pilleus +pillion +pilliver +pilliwinks +pillmaker +pillmaking +pillman +pillmonger +pillorize +pillow +pillowcase +pillowing +pillowless +pillowmade +pillows +pillowwork +pillowy +pills +pillsworth +pillworm +pillwort +pilm +pilmoor +pilmy +pilobolus +piloc +pilocarpine +pilocarpus +pilocereus +pilocystic +piloerection +pilomotor +pilon +pilonidal +pilori +pilose +pilosine +pilosis +pilosism +pilosity +pilot +pilotage +pilotaxitic +pilote +piloted +pilotee +pilotgrove +pilothill +pilothouse +piloting +pilotism +pilotknob +pilotless +pilotman +pilotmound +pilotpoint +pilotrock +pilotry +pilots +pilotship +pilotte +pilotto +pilottown +pilotweed +pilous +pilpai +pilpay +pilpul +pilpulist +pilpulistic +pilsner +piltai +piltock +piltz +pilu +pilula +pilular +pilularia +pilule +pilulist +pilulous +pilum +pilumnus +pilus +pilwillet +pily +pilyen +pima +piman +pimaric +pimary +pimbwe +pimelate +pimelea +pimelic +pimelite +pimelitis +pimenc +pimenov +pimenta +pimentel +pimento +pimenton +pimgenet +pimic +pimienta +pimiento +pimiskern +pimjai +pimlico +pimola +pimp +pimpare +pimpernel +pimpery +pimpinella +pimping +pimpish +pimpla +pimple +pimpleback +pimpled +pimpleproof +pimplinae +pimpliness +pimplo +pimploe +pimplous +pimply +pimpship +pimuru +pina +pinaceae +pinaceous +pinaces +pinachrome +pinacle +pinacoceras +pinacocytal +pinacocyte +pinacoid +pinacoidal +pinacol +pinacolate +pinacolic +pinacolin +pinacone +pinacoteca +pinacotheca +pinaculum +pinacyanol +pinado +pinai +pinajeff +pinakin +pinakiolite +pinakoidal +pinakotheke +pinal +pinaleno +pinales +pinalez +pinang +pinar +pinaster +pinata +pinatype +pinaverdol +pinax +pinaye +pinball +pinbefore +pinbone +pinbush +pincase +pincement +pincenez +pincer +pincerlike +pincers +pincerweed +pinch +pinchable +pinchard +pinchback +pinchbeck +pinchbelly +pinchcock +pinchcommons +pinchcrust +pinche +pinched +pinchedly +pinchedness +pinchem +pinchen +pincher +pinches +pinchfist +pinchfisted +pinchgut +pinchi +pinching +pinchingly +pinchon +pinchot +pinchpenny +pincian +pinciroli +pinckard +pinckney +pinckneya +pincoffin +pinconning +pincpinc +pinctada +pincus +pincushion +pincushiony +pind +pinda +pindache +pindall +pindar +pindare +pindari +pindaric +pindarical +pindarically +pindarism +pindarist +pindarize +pindarus +pinder +pindi +pindje +pindling +pindur +pindus +pindy +pindyck +pine +pineal +pinealism +pinealoma +pineapple +pineapples +pineau +pinebank +pinebeach +pineblff +pinebluff +pinebluffs +pinebrook +pinebush +pinecity +pinecliffe +pinecrest +pined +pinedale +pinedapa +pinedo +pinedrops +pineforge +pinegger +pinegrove +pinehall +pinehill +pineiro +pineisland +pineknot +pinel +pinelake +pineland +pinelawn +pinelevel +pinellaspark +pinelli +pinemeadow +pinemountain +pinene +pineola +pineplains +pineprairie +piner +pineridge +pineriver +pinero +pinery +pines +pinesap +pineth +pinetop +pinetops +pinetown +pinetta +pinetum +pinevalley +pineview +pinevillage +pineville +pineweed +pinewood +pinewoods +piney +pineycreek +pineyflats +pineyfork +pineypoint +pineyriver +pineyview +pineywoods +pinfall +pinfeather +pinfeathered +pinfeatherer +pinfeathery +pinfish +pinfold +ping +pingana +pingas +pingboom +pinged +pingelap +pingfang +pingilapese +pinging +pingle +pingler +pingpong +pingree +pingsim +pingtung +pingue +pinguecula +pinguedinous +pinguefy +pinguescence +pinguescent +pinguicula +pinguid +pinguidity +pinguiferous +pinguin +pinguite +pinguitude +pingyang +pingyuan +pinhead +pinheaded +pinheiro +pinhold +pinhook +pini +pinic +pinicoline +pinicolous +piniferous +piniform +pinin +pining +piningly +pinion +pinioned +pinionless +pinionlike +pinipicrin +piniritjara +pinitannic +pinite +pinitol +pinivorous +pinizzotto +pinjane +pinjari +pinje +pinji +pinjra +pink +pinkas +pinkberry +pinked +pinkeen +pinken +pinker +pinkerton +pinkertonism +pinkest +pinkey +pinkeye +pinkfish +pinkham +pinkhead +pinkhill +pinkify +pinkily +pinkiness +pinking +pinkish +pinkishness +pinkley +pinkly +pinkness +pinkroot +pinks +pinkshirt +pinksome +pinkster +pinkus +pinkweed +pinkwood +pinkwort +pinky +pinless +pinlock +pinmaker +pinna +pinnace +pinnacle +pinnacles +pinnaclet +pinnae +pinnaglobin +pinnal +pinnated +pinnatedly +pinnately +pinnatifid +pinnatifidly +pinnatilobed +pinnation +pinnatiped +pinnatisect +pinnatulate +pinned +pinnegar +pinnel +pinner +pinnet +pinney +pinnidae +pinniferous +pinniform +pinnigerous +pinnigrada +pinnigrade +pinninervate +pinninerved +pinning +pinningly +pinnings +pinniped +pinnipedia +pinnipedian +pinnisect +pinnisected +pinnitarsal +pinniwinkis +pinnocchio +pinnoccio +pinnock +pinnoite +pinnokio +pinnotere +pinnothere +pinnotheres +pinnotherian +pinnow +pinnula +pinnular +pinnulate +pinnulated +pinnule +pinnulet +pinny +pino +pinocchio +pinoccio +pinochio +pinochle +pinocytosis +pinogu +pinola +pinole +pinoleum +pinolia +pinolin +pinon +pinonhills +pinonic +pinopolis +pinotepa +pinotorinese +pinout +pinouts +pinpillow +pinpoint +pinpointed +pinpointing +pinpoints +pinprick +pinproof +pinra +pinrail +pinrang +pinrowed +pins +pinsent +pinsker +pinson +pinsonfork +pinsonneault +pinsons +pinstripe +pint +pinta +pintadera +pintado +pintadoite +pintail +pintano +pintat +pinte +pinter +pintle +pints +pintubi +pintumbang +pintupi +pintura +pintwala +pinu +pinulus +pinup +pinupplayer +pinus +pinusd +pinweed +pinwidic +pinwing +pinwork +pinworm +piny +pinyin +pinyl +pinyo +pinyon +pinza +pinzon +pioche +piochesioni +pioje +pioneer +pioneerdom +pioneered +pioneering +pioneers +pioneership +pioneertown +pioniere +pionnotes +pions +pionsenay +pioquinto +pioscope +pioted +piotine +piotr +piotrkow +piotto +piotty +pioury +piously +piousness +piovani +pioxe +pipa +pipage +pipal +pipalj +piparti +pipe +pipeage +pipeclay +pipecoline +pipecolinic +pipecreek +piped +pipedream +pipefish +pipeful +pipelayer +pipeless +pipelike +pipeline +pipelined +pipelines +pipelining +pipeman +pipemouth +piper +piperaceae +piperaceous +piperales +piperate +piperazin +piperazine +pipercity +piperic +piperide +piperideine +piperidge +piperidide +piperidine +piperine +piperitious +piperitone +piperly +piperni +piperno +pipero +piperoid +piperonal +piperonyl +pipers +pipersville +pipery +piperylene +pipes +pipesinta +pipestapple +pipestem +pipestone +pipet +pipets +pipewalker +pipeweed +pipewood +pipework +pipewort +pipi +pipid +pipidae +pipikoro +pipil +pipile +pipilo +piping +pipingly +pipingness +pipinic +pipipaia +pipiri +pipistrel +pipistrelle +pipistrellus +pipit +pipitone +pipkin +pipkinet +pipkins +pipless +pipline +pipn +pipop +pippa +pippapasses +pippe +pipped +pippen +pipper +pippi +pippin +pippiner +pippinface +pippinworth +pippo +pippy +pipra +pipridae +piprinae +piprine +piproid +piptadenia +piptomeris +pipunculid +pipunculidae +pipx +pipy +piqua +piquable +piquance +piquancy +piquantly +piquantness +pique +piqued +piqueerer +piqueras +piquet +piquia +piqure +pira +pirabanak +piragua +piraha +piraino +piram +piranas +piranga +piranha +piranhas +piraparana +pirapo +pirasoft +piratapuyo +pirate +pirated +piratel +piratelike +piratery +pirates +piratess +pirathon +pirathonite +piratical +piratically +pirating +piratism +piratize +piraty +pirch +pire +pirelli +pirene +pires +piri +piricularia +pirier +pirijiri +pirimapun +pirimi +pirin +piripiri +piririgua +piriutite +pirj +pirkey +pirkle +pirl +pirlot +pirmasens +pirn +pirner +pirnie +pirniritjara +pirny +piro +pirogov +pirojkoffaum +pirojpur +pirol +pirola +pirom +pirooz +piroplasm +piroplasma +piroshka +piroska +pirouetter +pirouettist +pirovitch +pirr +pirraura +pirrene +pirrmaw +pirro +pirrone +pirssonite +pirtleville +piru +pirumpon +pirupiru +pisa +pisabo +pisaca +pisacane +pisachee +pisagua +pisahua +pisal +pisamai +pisan +pisanets +pisang +pisani +pisanite +pisano +pisanu +pisauridae +pisay +piscary +piscataqua +piscataway +piscation +piscatology +piscator +piscatorial +piscatorian +piscatorious +piscatory +piscian +piscicapture +piscicolous +pisciculture +piscid +piscidia +piscifauna +pisciferous +pisciform +piscina +piscinal +piscine +piscinity +piscis +piscivorous +pisco +piscopo +piscora +pise +piseco +pisek +pisgah +pisgahforest +pish +pishagchi +pishan +pishauco +pishaug +pishi +pishkuh +pishogue +pishquow +pishu +pishut +pishutsya +pisidia +pisidium +pisier +pisiform +pisin +pisistratean +pisit +pisk +piske +pisky +pislaru +pismire +pismirism +pismo +pismobeach +piso +pisolite +pisolitic +pison +pisonia +pispah +pisquito +piss +pissabed +pissant +pissarro +pissed +pisses +pisseth +pissing +pissings +pissodes +pissot +pisspot +pist +pistache +pistacia +pistacite +pistareen +piste +pistes +pistia +pistic +pistil +pistillar +pistillary +pistillate +pistilli +pistillid +pistilliform +pistilline +pistillo +pistillode +pistillody +pistilloid +pistilogy +pistils +pistle +pistoiese +pistol +pistolas +pistoleer +pistolet +pistolgram +pistolgraph +pistollike +pistology +pistolproof +pistols +pistolwise +pistonhead +pistonlike +pistons +pistrix +pisu +pisum +piszczyk +pita +pitagord +pitahauerat +pitahauirata +pitahaya +pitaluga +pitanga +pitangua +pitani +pitapat +pitapatation +pitarah +pitard +pitas +pitate +pitau +pitaya +pitayita +pitayo +pitbull +pitcairn +pitcairners +pitcairnia +pitcavage +pitch +pitchable +pitchaccent +pitched +pitcher +pitchered +pitcherful +pitcherlike +pitcherman +pitchers +pitches +pitchforks +pitchhole +pitchi +pitchiness +pitching +pitchlike +pitchman +pitchometer +pitchout +pitchpike +pitchpipe +pitchpole +pitchpoll +pitchwork +pitchy +pite +piteoff +piteously +piteousness +piter +pitera +piterait +piterbarg +pitere +pitfall +pitfalls +pith +pithecan +pithecia +pithecian +pitheciinae +pitheciine +pithecism +pithecoid +pithed +pither +pithes +pithey +pithful +pithier +pithiest +pithily +pithiness +pithing +pithless +pithlessly +pithoegia +pithoigia +pithole +pithom +pithon +pithoro +pithos +pithsome +pithwork +piti +pitiability +pitiableness +pitiably +pitie +pitied +pitiedly +pitiedness +pitier +pitiers +pities +pitieth +pitiful +pitifully +pitifulness +pitigoa +pitikins +pitiless +pitilessness +pitilu +pitirim +pititi +pitjantjara +pitkin +pitkins +pitless +pitlik +pitlike +pitmaker +pitmaking +pitmanager +pitmark +pitmirk +pitney +pitneyfork +pitoa +pitoef +pitoeff +pitometer +piton +pitonara +pitoniak +pitou +pitouto +pitpan +pitpit +pitre +pits +pitsanalok +pitsanulok +pitsburg +pitside +pitt +pitta +pittacal +pittala +pittam +pittance +pittancer +pitted +pittel +pittenger +pitter +pittges +pitti +pitticite +pittidae +pittine +pitting +pittism +pittite +pittman +pittner +pittoid +pitton +pittospore +pittosporum +pitts +pittsboro +pittsburg +pittsburgh +pittsburgher +pittsburghia +pittsfield +pittsford +pittslug +pittston +pittstown +pittsview +pittsville +pittypat +pitu +pituital +pituite +pituitous +pituitrin +pituley +pituri +pitwood +pitwork +pitwright +pity +pityilu +pitying +pityingly +pitylus +pityocampa +pityproof +pityriasic +pityriasis +pityrogramma +pityroid +pitz +pitzalis +pitzs +pium +piura +piuri +piuttosto +piva +pivalic +pivateer +piven +pivert +pivka +pivko +pivo +pivoine +pivom +pivotally +pivoted +pivoter +pivoting +pivots +pivovarov +piwkowski +pixar +pixel +pixels +pixes +pixie +pixilated +pixilation +pixley +pixmap +pixmaps +pixote +pixshow +piya +piyal +piyamatr +piyamatyr +piyampongsan +piyasena +piyuma +piyush +pizani +pizda +pizdatie +pizdets +pizdez +pizdi +pizdu +pize +pizza +pizzaccio +pizzanelli +pizzarello +pizzas +pizzasized +pizzi +pizzimenti +pizzle +pjeven +pjrw +pkarc +pkdcd +pkease +pkgadd +pkgtool +pklite +pkpak +pksfx +pktdrvr +pktpack +pktsec +pktsecretary +pktviewer +pktxcode +pkunlite +pkunpack +pkunzip +pkware +pkwares +pkxarc +pkzip +placability +placable +placableness +placably +placaean +placard +placardeer +placarder +placards +placate +placating +placation +placative +placatively +placatory +placcate +place +placean +placebo +placed +placedo +placefiller +placeful +placeholder +placeholders +placek +placeless +placelessly +placemaker +placemaking +placeman +placemanship +placement +placements +placemonger +placentalia +placentalian +placentary +placentate +placentation +placentia +placentiform +placentitis +placentoid +placentoma +placeofwork +placer +placerville +places +placet +placewoman +placid +placida +placidity +placidly +placidness +placido +placidyl +placing +placit +placitas +placitum +plack +placket +plackett +placketts +plackless +placode +placoderm +placodermal +placodermi +placodermoid +placodont +placodontia +placodus +placoganoid +placoid +placoidal +placoidean +placoidei +placoides +placophora +placophoran +placoplast +placula +placuntitis +placuntoma +placus +pladaroma +pladarosis +pladina +plaer +plafrey +plaga +plagal +plagate +plage +plagianthus +plagiaplite +plagiarical +plagiaristic +plagiarize +plagiarizer +plagiary +plagihedral +plagiochila +plagioclinal +plagiodont +plagiograph +plagionite +plagiophyre +plagiostome +plagiostomi +plagiotropic +plagium +plagose +plagosity +plague +plagued +plagueful +plagueless +plaguelike +plagueproof +plaguer +plagues +plaguesome +plaguily +plaguing +plaguy +plaice +plaid +plaided +plaidie +plaiding +plaidman +plaidoyer +plaids +plaidy +plaigarized +plain +plainascii +plainback +plainbacks +plaincity +plainclothes +plaindealing +plaine +plainer +plainest +plainfield +plainful +plainhearted +plainish +plainly +plainness +plains +plainsboro +plainscraft +plainsfolk +plainsman +plainsoled +plainspoken +plainstones +plainswoman +plaint +plaintail +plaintext +plaintexts +plaintful +plaintiff +plaintiffs +plaintile +plaintive +plaintively +plaintless +plainview +plainville +plainward +plainwell +plaisance +plaisant +plaisanterie +plaise +plaisirs +plaisted +plaister +plaistered +plaistow +plait +plaited +plaiter +plaiting +plaitless +plaits +plaitwork +plak +plakat +plaksi +plakson +plambeck +plamennykh +plamondon +plan +plana +planable +planada +planaea +planalto +planaria +planarian +planarida +planaridan +planariform +planarioid +planarity +planas +planate +planation +planch +planche +plancheite +plancher +planchet +planchette +planching +planchment +planchon +plancier +planckia +planckian +planco +plandok +plandome +plane +planed +planeness +planer +planera +planers +planes +planet +planeta +planetable +planetabler +planetal +planetarian +planetarily +planetarium +planetary +planeted +planeth +planeticose +planeting +planetist +planetkin +planetless +planetlike +planetogeny +planetoidal +planetologic +planetology +planets +planetstruck +planetule +planform +planful +planfully +planfulness +plang +plangency +plangent +plangently +plangor +plangorous +plani +planicaudate +planicipital +planidorsate +planifolious +planiform +planigraph +planilla +planimetric +planimetry +planinata +planineter +planing +planipennate +planipennia +planipennine +planirostral +planiscope +planiscopic +planish +planisher +planispheral +planisphere +planispheric +planispiral +planitia +planity +plank +plankage +plankbuilt +planked +planken +planker +planking +plankinton +plankless +planklike +planks +planksheer +plankter +planktology +planktonic +planktont +plankways +plankwise +planky +planless +planlessly +planlessness +planman +planned +planner +planners +planning +plano +planoblast +planoblastic +planococcus +planoconical +planoferrite +planogamete +planograph +planographic +planography +planom +planometer +planometry +planomiller +planorbidae +planorbiform +planorbine +planorbis +planorboid +planorotund +planosarcina +planosol +planosome +planospiral +planospore +planque +plans +planssigma +plant +planta +plantable +plantad +plantae +plantage +plantagenet +plantago +plantains +plantal +plantamura +plantar +plantaris +plantarium +plantation +plantations +plantcity +plantdom +plante +planted +plantedst +plantegenest +planter +planterdom +planterly +planters +plantership +planteth +planthara +plantigrada +plantigrade +plantigrady +planting +plantings +plantivorous +plantless +plantlet +plantlike +plantling +plantocracy +plants +plantsman +plantsville +plantula +plantular +plantule +planula +planulan +planular +planulate +planuliform +planuloid +planuloidea +planum +planuria +planury +planxty +plap +plapo +plappert +plaque +plaquemine +plaques +plaquette +plaralyzer +plash +plasher +plashet +plashingly +plashment +plashy +plaskett +plaskie +plasla +plasma +plasmagene +plasmase +plasmatic +plasmatical +plasmation +plasmature +plasmic +plasmid +plasmids +plasmocyte +plasmocytoma +plasmode +plasmodesm +plasmodesma +plasmodesmal +plasmodesmic +plasmodesmus +plasmodia +plasmodial +plasmodiate +plasmodic +plasmodium +plasmogen +plasmolysis +plasmolytic +plasmolyze +plasmoma +plasmopara +plasmophagy +plasmoptysis +plasmosoma +plasmosome +plasmotomy +plasome +plass +plasse +plasson +plastein +plastene +plaster +plasteras +plasterbill +plasterboard +plastercity +plastered +plasterer +plasterers +plasteriness +plastering +plasterlike +plasters +plasterwise +plasterwork +plastery +plastic +plastically +plasticcard +plasticine +plasticism +plasticity +plasticize +plasticizer +plasticly +plastics +plastid +plastidium +plastidome +plastidozoa +plastidular +plastidule +plastify +plastin +plastina +plastinoid +plastochron +plastochrone +plastogamic +plastogamy +plastogene +plastomere +plastometer +plastosome +plastotype +plastral +plastrum +plat +plata +plataean +platalea +plataleidae +plataleiform +plataleinae +plataleine +platan +platanaceae +platanaceous +platane +platanist +platanista +platano +platanus +platband +platch +plate +platea +plateasm +plateau +plateaus +plateausahel +plateausun +plateaux +plated +plateful +plategka +plateholder +plateiasmus +platelayer +plateless +platelets +platelike +platemaker +platemaking +plateman +platens +plater +platerer +plateresque +platery +plates +plateway +platework +plateworker +platform +platformally +platformed +platformer +platformish +platformism +platformist +platformless +platforms +platformy +platic +platicly +platilla +platina +platinamine +platinammine +platinate +platine +plating +platinic +platinite +platinize +platinoid +platinotype +platinous +platinum +platitudinal +platla +plato +platocenter +platoda +platode +platodes +platoid +platon +platonesque +platonian +platonic +platonical +platonically +platonich +platonician +platonicism +platonistic +platonize +platonizer +platonoff +platonov +platoon +platopic +platos +platosamine +platosammine +platov +platt +plattdeutsch +plattecenter +plattecity +platted +plattekill +platten +plattenville +platter +platterface +platterful +platters +platteville +platthy +platting +plattnerite +platts +plattsburg +plattsburgh +plattsmouth +platty +platurous +platy +platybasic +platycarpous +platycarpus +platycarya +platycelian +platycelous +platycephaly +platycercine +platycercus +platycerium +platycheiria +platycnemia +platycnemic +platycodon +platycoria +platycrania +platycranial +platyctenea +platycyrtean +platydactyl +platydactyle +platyfish +platyglossal +platyglossia +platyhelmia +platyhieric +platykurtic +platylobate +platymeria +platymeric +platymery +platymeter +platymyoid +platynite +platynotal +platyodont +platyope +platyopia +platyopic +platypellic +platypod +platypoda +platypodia +platypodous +platyptera +platypus +platypygous +platyrhina +platyrhini +platyrrhin +platyrrhina +platyrrhine +platyrrhini +platyrrhinic +platyrrhiny +platysma +platysomid +platysomidae +platysomus +platystemon +platysternal +platystomous +platytrope +platytropy +platz +platzeck +platzman +plau +plaucheville +plaud +plaudation +plaudit +plaudite +plauditor +plauditory +plauenite +plausibility +plausible +plausibly +plausive +plaustral +plautdietsch +plauten +plautine +plautius +plautus +plavay +plavsk +play +playability +playable +playacting +playadelrey +playatuna +playaz +playback +playbacks +playbill +playbook +playbox +playboy +playboyism +playboys +playbroker +playcraft +playday +playdown +played +playedst +player +playerdom +playeress +playero +players +playeth +playfair +playfellow +playfield +playfolk +playful +playfully +playfulness +playgal +playgoer +playgoing +playground +playgrounds +playhouse +playing +playingly +playless +playlet +playlike +playlist +playlists +playmaker +playmaking +playman +playmare +playmates +playmonger +playock +playpen +playreader +plays +playscript +playsome +playsomely +playsomeness +playstead +playsuit +playt +playte +playten +playter +playthings +playward +playwoman +playwork +playwrightry +playwrights +playwriter +plaza +plazolite +plea +pleach +pleached +pleacher +plead +pleadable +pleaded +pleader +pleadeth +pleading +pleadingly +pleadingness +pleadings +pleads +pleaproof +pleas +pleasable +pleasance +pleasande +pleasant +pleasantable +pleasantcity +pleasantdale +pleasanter +pleasanthall +pleasanthill +pleasanthope +pleasantish +pleasantlake +pleasantly +pleasantness +pleasanton +pleasantries +pleasantry +pleasantsome +pleasantview +please +pleased +pleasedly +pleasedness +pleaseman +pleasence +pleasequit +pleaser +pleases +pleasest +pleaseth +pleaship +pleasing +pleasingly +pleasingness +pleasurable +pleasurably +pleasure +pleasureful +pleasurehood +pleasureless +pleasureman +pleasurement +pleasurer +pleasures +pleasuring +pleasurist +pleasurous +pleated +pleater +pleatless +pleb +plebani +plebe +plebeiance +plebeianize +plebeianly +plebeianness +plebeity +plebianism +plebicolar +plebicolist +plebificate +plebify +plebiscitary +plebiscite +plebiscites +plebiscitic +plebiscitum +plebs +pleck +plecoptera +plecopteran +plecopterid +plecopterous +plecotinae +plecotine +plecotus +plectognath +plectognathi +plectopter +plectopteran +plectre +plectridial +plectridium +plectron +plectrum +pled +pledge +pledgeable +pledged +pledgee +pledgeless +pledgeor +pledger +pledges +pledgeshop +pledget +pledging +pledgor +pleeze +plegadis +plegaphonia +plegometer +pleiades +pleikly +pleiku +pleine +pleins +pleiobar +pleiochromia +pleiochromic +pleiomastia +pleiomazia +pleiomerous +pleiomery +pleion +pleione +pleionian +pleiophylly +pleiotaxis +pleiotropic +pleiotropism +pleiotropy +pleistoceine +pleistocene +pleistocenic +pleistoseist +plem +plemochoe +plemyrameter +plenarily +plenariness +plenarium +plenarty +plenderleith +pleneno +plenicorn +plenilunal +plenilunar +plenilunary +plenilune +plenipo +plenipotence +plenipotent +plenish +plenishing +plenishment +plenism +plenist +plenitide +plenshing +plenteous +plenteously +plentiful +plentifully +plentify +plently +plenty +plentywood +pleny +pleochroic +pleochroism +pleochroitic +pleochroous +pleodont +pleomastia +pleomastic +pleomazia +pleometrosis +pleometrotic +pleomorph +pleomorphic +pleomorphism +pleomorphist +pleomorphous +pleomorphy +pleon +pleonal +pleonasm +pleonast +pleonastc +pleonaste +pleonastic +pleonastical +pleonectic +pleonexia +pleonic +pleophyletic +pleopod +pleopodite +pleospora +pleow +plepper +plerergate +plerocercoid +pleroma +pleromatic +plerome +pleromorph +plerophoric +plerophory +plerosis +plerotic +plersoun +ples +plesa +pleschette +pleschkoff +pleshette +plesiobiosis +plesiobiotic +plesiosaur +plesiosauri +plesiosauria +plesiosaurus +plesiotype +pleskot +pleso +plessigraph +plessimeter +plessimetric +plessimetry +plessis +plessor +pleszczynska +plethodon +plethodontid +plethora +plethoretic +plethoric +plethorical +plethorous +plethory +plett +plettschner +pleu +pleuni +pleural +pleuralgia +pleuralgic +pleure +pleurectomy +pleurenchyma +pleuric +pleurisy +pleurite +pleuritic +pleuritical +pleuritis +pleuro +pleurobranch +pleurocapsa +pleurocarp +pleurocarpi +pleurocele +pleurocera +pleuroceroid +pleurococcus +pleurodira +pleurodiran +pleurodire +pleurodirous +pleurodont +pleurodynia +pleurodynic +pleurogenic +pleurogenous +pleuroid +pleurolith +pleurolysis +pleuron +pleuronectes +pleuronectid +pleuronema +pleuropedal +pleuropodium +pleurorrhea +pleurosaurus +pleurosigma +pleurospasm +pleurosteal +pleurosteon +pleurostict +pleurosticti +pleurostigma +pleurotoma +pleurotomine +pleurotomoid +pleurotomy +pleurotonic +pleurotonus +pleurotribal +pleurotribe +pleurotus +pleurum +pleuston +pleustonic +pleut +plevna +plew +plewes +plewis +plews +plex +plexal +plexi +plexicose +plexiform +plexiglass +pleximeter +pleximetric +pleximetry +plexodont +plexometer +plexor +plexure +plexus +pleydon +pleyeri +pliability +pliableness +pliably +pliant +pliantly +pliantness +plica +plicable +plical +plicate +plicated +plicately +plicateness +plicater +plicatile +plication +plicative +plicator +plicatulate +plicature +pliciferous +pliciform +plickett +plied +pliego +plier +plies +plif +plight +plighted +plighter +plikusas +plim +plimmer +plimpton +plimsoll +pliner +pling +plingnet +plinian +plinks +plinta +plinth +plinther +plinthiform +plinthless +plinthlike +plinyism +pliocene +pliohippus +pliopithecus +pliosaur +pliosaurian +pliosauridae +pliosaurus +plioska +pliothermic +pliotron +pliscott +plisetskaya +pliskie +plisky +plissken +plitz +pliusnin +plmania +plmcoop +ploat +ploce +ploceidae +ploceiform +ploceinae +ploceus +plock +plodded +plodder +plodderly +plodding +ploddingly +ploddingness +plodge +plods +ploeg +plog +ploho +ploima +ploimate +plokhoy +plokta +ploktuh +plomb +plommer +plonk +ploof +ploogh +plook +plopped +ploration +ploratory +plosion +plosive +plosives +ploskost +plot +plote +plotful +plotinian +plotinic +plotinical +plotinism +plotinist +plotinize +plotless +plotlessness +plotlib +plotnie +plotnikov +plotproof +plots +plott +plottage +plotted +plotter +plotters +plottery +plotteth +plotting +plottingly +plotty +plotx +plotz +plotzliche +plouffe +plough +ploughed +ploughman +ploughtail +plouk +plouked +plouky +ploum +plounce +plourde +plousiocracy +plout +plouteneion +plouter +plovdiv +plover +ploverlike +plovery +plow +plowable +plowbote +plowboy +plowden +plowed +plower +plowers +ploweth +plowfish +plowfoot +plowgang +plowgate +plowgraith +plowhead +plowing +plowjogger +plowland +plowlight +plowline +plowmaker +plowman +plowmanship +plowmell +plowmen +plowpoint +plowright +plowrightia +plows +plowshares +plowshoe +plowstaff +plowstilt +plowtail +plowwise +plowwoman +plowwright +ploy +ployment +ploys +plra +plsntp +plssup +pltsbrgh +pluchea +plucinska +plucinski +pluck +pluckage +plucked +pluckedness +pluckemin +plucker +pluckerian +plucketh +pluckily +pluckiness +plucking +pluckit +pluckless +plucks +pluckt +plucky +plud +pluff +pluffer +pluffy +plug +plugdrawer +pluggable +pluggandisp +plugged +plugger +pluggery +plugging +pluggingly +pluggy +plugh +plughole +plugin +plugins +plugless +pluglike +plugman +plugpak +plugs +plugtray +plugtree +pluhar +pluin +pluksch +plum +pluma +plumaceous +plumach +plumade +plumaged +plumagery +plumasite +plumate +plumatella +plumatellid +plumatelloid +plumbable +plumbage +plumbagine +plumbaginous +plumbean +plumbed +plumbeous +plumber +plumbers +plumbership +plumbery +plumbet +plumbic +plumbiferous +plumbing +plumbism +plumbite +plumbless +plumbline +plumbness +plumbog +plumbous +plumbranch +plumbs +plumbum +plumcity +plumcolored +plumcot +plumdamas +plumdamis +plume +plumed +plumeless +plumelet +plumelike +plumemaker +plumemaking +plumeopicean +plumeous +plumer +plumerville +plumery +plumes +plumet +plumette +plumgate +plumicorn +plumier +plumiera +plumieride +plumiform +plumiformly +plumify +plumigerous +pluminess +plumiped +plumipede +plumist +plumitas +plumless +plumlet +plumlike +plummer +plummet +plummeted +plummeting +plummetless +plummy +plumose +plumosely +plumoseness +plumosity +plumous +plump +plumped +plumpen +plumper +plumpest +plumpick +plumping +plumpish +plumply +plumpness +plumps +plumpton +plumpy +plums +plumtree +plumula +plumulaceous +plumular +plumularia +plumularian +plumulate +plumule +plumuliform +plumulose +plumville +plumy +plunderable +plunderage +plunderbund +plundered +plunderer +plunderers +plunderess +plundering +plunderingly +plunderless +plunderous +plunderproof +plunders +plunge +plunged +plunger +plungers +plunges +plunging +plungingly +plunket +plunkett +plunther +plup +plupatriotic +pluperfectly +plupp +plural +pluralism +pluralist +pluralistic +plurality +pluralize +pluralizer +plurally +plurals +plurative +plurennial +pluriaxial +pluricentral +pluricipital +pluricuspid +pluridentate +plurielles +pluries +plurifacial +pluriflorous +plurifoliate +plurify +plurilateral +plurilingual +plurilocular +plurimammate +plurinominal +pluripara +pluriparity +pluriparous +pluripartite +pluripotence +pluripotent +pluriseptate +pluriserial +pluriseriate +plurisetose +plurispiral +plurisporous +plurivalent +plurivalve +plurivorous +plurivory +plus +plusdot +pluselli +pluses +plush +plushed +plushette +plushily +plushiness +plushlike +plushmm +plusia +plusiinae +plusimage +plussage +plusses +plustruth +plutarchian +plutarchic +plutarchical +plutarchy +plute +pluteal +plutean +pluteiform +plutella +pluteus +pluthner +pluto +plutocracy +plutocrat +plutocratic +plutolatry +plutological +plutologist +plutology +plutomania +plutonian +plutonic +plutoniom +plutonion +plutonism +plutonist +plutonite +plutonium +plutonomic +plutonomist +plutonomy +plutus +pluvial +pluvialiform +pluvialine +pluvialis +pluvian +pluvine +pluviograph +pluviography +pluviometer +pluviometric +pluviometry +pluvioscope +pluviose +pluviosity +pluvious +plwview +plyer +plying +plyingly +plyler +plymouth +plymouthism +plymouthist +plymouthite +plympton +plynlymmon +plytas +plzen +plzzz +pmapm +pmarkovian +pmasaa +pmcalc +pmccopy +pmchecklog +pmclico +pmconverter +pmdb +pmed +pmeurit +pmfax +pminews +pmistec +pmjpeg +pmmail +pmmeal +pmmpeg +pmnotes +pmpatrol +pmpause +pmradio +pmsane +pmsd +pmsg +pmsig +pmsnoop +pmstripper +pmtrade +pmtreesize +pmview +pmworms +pmwver +pname +pnar +pnch +pndc +pneodynamics +pneograph +pneometer +pneometry +pneophore +pneoscope +pnet +pneuma +pneumatic +pneumatical +pneumaticity +pneumatics +pneumatism +pneumatist +pneumatize +pneumatized +pneumatocele +pneumatocyst +pneumatode +pneumatogram +pneumatology +pneumatonomy +pneumatosic +pneumatosis +pneumatria +pneumaturia +pneumectomy +pneumocele +pneumococcal +pneumococcic +pneumoderma +pneumogram +pneumograph +pneumography +pneumolith +pneumology +pneumolysis +pneumomail +pneumometer +pneumonalgia +pneumonedema +pneumonia +pneumonic +pneumonitic +pneumonitis +pneumonocace +pneumonocele +pneumonolith +pneumonopexy +pneumonosis +pneumonotomy +pneumony +pneumopexy +pneumotactic +pneumothorax +pneumotomy +pneumotoxin +pneumotropic +pneumotyphus +pngbta +pnin +pnini +pnkshin +pnldev +pnlg +pnone +pnong +pnpg +pnpisa +pnstestbed +pntchk +pntdiff +pntlist +pntnode +pntseg +pnvc +poaceae +poaceous +poach +poachable +poached +poacher +poaches +poachiness +poaching +poachy +poai +poales +poalike +poamei +poapoa +poara +poavosa +pobby +pobeda +pobert +poberznik +poblacht +poblacion +poboku +pobre +pobs +pobular +pobyeng +poca +pocahontas +pocaluz +pocasset +pocatella +pocatello +poch +pochade +pochaina +pochard +pochashche +pochashe +pochat +pochath +pochatok +pochay +poche +pochemu +pochereth +pochet +pochette +pochinyat +pochon +pochti +pochuri +pochury +pochutla +pochy +pociagu +pocilliform +pock +pockaj +pocked +pocket +pocketable +pocketbooks +pocketed +pocketer +pocketing +pocketknife +pocketless +pocketlike +pockets +pockett +pockety +pockhouse +pockily +pockiness +pockmanteau +pockmantie +pockmark +pockweed +pockwood +pocky +pocmotrel +poco +pocock +pococurante +pococurantic +pocola +pocoloco +pocom +pocoma +pocomam +pocomchi +pocomokecity +poconchi +pocono +poconolake +poconomanor +poconopines +poconosummit +pocopson +pocosin +pocsag +poculary +poculation +poculent +poculiform +pocus +podagra +podagral +podagric +podagrical +podagrous +podal +podalgia +podalic +podaliriidae +podalirius +podamsya +podarge +podargidae +podarginae +podargine +podargue +podargus +podari +podarki +podarthral +podarthritis +podarthrum +podatus +podaxonia +podaxonial +podbrey +podded +podder +poddidge +poddish +poddle +poddy +pode +podelcoma +podell +podena +podeon +poder +poderosi +podesta +podesterate +podetiiform +podetium +podex +podger +podgily +podginess +podgorodsky +podgy +podhode +podi +podial +podiatrist +podiatry +podical +podiceps +podices +podilegous +podite +poditic +poditti +podium +podkamennaya +podkovyrov +podkrepa +podlaska +podler +podlesna +podley +podlike +podmaroff +podnimatsya +podo +podoba +podobranch +podobranchia +podocarp +podocarpous +podocarpus +pododerm +pododynia +podogo +podogyn +podogyne +podogynium +podoko +podokwo +podolia +podolian +podolite +podology +podolski +podomancy +podomere +podometer +podometry +podopa +podophrya +podophryidae +podophthalma +podophyllic +podophyllin +podophyllous +podophyllum +podoscaph +podoscapher +podoscopy +podosomata +podosomatous +podosperm +podosphaera +podostemad +podostemon +podostomata +podotheca +podothecal +podoue +podovsky +podozamites +podozrenie +podozreniya +podpisal +podpisalsya +podpisany +podpiska +podpiski +podprigivaet +podra +podrobnee +podrobno +pods +podsel +podsnap +podsnappery +podsol +podsolic +podsolize +podsosut +podtype +podumal +podunk +podura +poduran +poduri +podurid +poduridae +podvalit +podvodnik +podware +podzo +podzol +podzolic +podzolize +poea +poebu +poecile +poeciliidae +poecilitic +poecilogony +poecilomere +poecilonym +poecilonymic +poecilonymy +poecilopod +poecilopoda +poedu +poem +poematic +poemet +poemlet +poems +poenaru +poeng +poenichen +poenis +poephaga +poephagous +poephagus +poepping +poertner +poesde +poesia +poesie +poesiless +poesis +poestenkill +poet +poetaster +poetastering +poetasterism +poetastery +poetastress +poetastric +poetastrical +poetastry +poetcraft +poetdom +poetesque +poetess +poethood +poetic +poetical +poeticality +poetically +poeticalness +poeticism +poeticize +poeticness +poetics +poeticule +poetito +poetization +poetize +poetizer +poetless +poetlike +poetling +poetly +poetomachia +poetomu +poetress +poetries +poetru +poetry +poetryless +poets +poetship +poettcker +poetwise +poezddki +poezdka +poezdki +poezdkoy +poff +pofman +pogadi +pogam +pogamoggan +pogany +pogara +pogassian +pogaya +pogey +pogge +poggety +poggi +poggio +poggy +pogo +pogolo +pogolu +pogonatova +pogonatum +pogonia +pogoniasis +pogoniate +pogonion +pogonip +pogoniris +pogonite +pogonologist +pogonology +pogonotomy +pogonotrophy +pogora +pogoro +pogradec +pogrebniak +pogromist +pogromize +pogson +pogudim +pogue +poguli +pogy +poha +pohangina +pohbetian +pohickory +pohja +pohjanmaa +pohl +pohle +pohlman +pohlmann +pohna +pohnpei +pohnpeian +pohoji +pohoneang +pohuai +pohutukawa +pohuyam +poiana +poiccard +poictesme +poietic +poignance +poignancy +poignant +poignantly +poignet +poikilitic +poikiloblast +poikilocyte +poikilotherm +poikolainen +poil +poilu +poimenic +poimenics +poincare +poinciana +poind +poindable +poinder +poindexter +poindimie +poinding +poinlist +poins +point +pointable +pointage +pointarena +pointblank +pointclear +pointcomfort +pointe +pointeapitre +pointed +pointedly +pointedness +pointedto +pointel +pointenoire +pointer +pointerd +pointers +pointerto +pointet +pointevent +pointful +pointfully +pointfulness +pointharbor +pointic +pointillism +pointillist +pointing +pointingly +pointix +pointless +pointlessly +pointlet +pointleted +pointlist +pointlists +pointlisy +pointlookout +pointmaker +pointman +pointmarion +pointment +pointner +pointofrocks +pointrel +pointroberts +points +pointsegment +pointsman +pointstring +pointswoman +pointsystem +pointtopoint +pointways +pointy +poiot +poiret +poirier +poirot +poisable +poise +poised +poiser +poises +poison +poisonable +poisoned +poisoner +poisonful +poisonfully +poisoning +poisonings +poisonless +poisonmaker +poisonous +poisonously +poisonproof +poisons +poisonweed +poisonwood +poissant +poisson +poissonness +poissons +poitevin +poiti +poitier +poitiers +poitin +poitrail +poitras +poitrel +poitrier +poivet +poivrade +poivre +poiwai +pojanart +pojetr +pojken +pojoaque +pojulu +poka +pokable +pokajina +pokajine +pokan +pokanga +pokanoket +pokas +pokau +pokazali +pokazivaiut +pokazivayut +poke +pokeberry +poked +pokeful +pokeloken +pokeout +poker +pokerdice +pokerish +pokerishly +pokerishness +pokeroot +pokes +pokeweed +pokey +pokhara +pokhari +pokhodzei +pokily +pokiness +poking +pokinko +poklo +poko +pokoh +pokoj +pokolban +pokom +pokomam +pokomchi +pokomo +pokomoo +pokonchi +pokoot +pokot +pokou +pokpapa +pokrifcak +pokrifki +pokryshkin +pokrywa +pokun +pokunt +pokurivaesh +pokusay +poky +pola +polab +polabian +polabish +polaca +polacca +polacek +polacheck +polack +polacks +polacre +polada +polak +polakoff +polakov +polakowski +polana +polanah +polanco +poland +polander +polandspring +polanh +polani +polanisia +polanowska +polanski +polansky +polar +polaric +polarid +polarimetric +polarimetry +polario +polaris +polariscopic +polariscopy +polaristic +polarities +polarity +polarizable +polarization +polarize +polarized +polarizer +polarizers +polarly +polarward +polasek +polashock +polaski +polatli +polawanie +polaxis +polbethen +polchi +polci +poldavis +poldavy +polder +polderboy +polderman +polders +poldervaart +poldi +pole +poleang +polearm +poleax +poleaxe +poleaxer +poleburn +poled +poleedit +polehead +poleless +poleman +polemarch +polemical +polemically +polemician +polemicist +polemicists +polemics +polemist +polemize +polemo +polemoniales +polemonium +polemoscope +polenska +polenta +poleo +poler +poleretzky +poles +polesello +polesetter +polesian +polesie +polesman +polestar +poletti +polevaulter +polewali +poleward +polewards +poley +polgar +polhaus +polhemus +poli +poliad +poliadic +poliakoff +poliakov +polian +polianite +polianthes +polic +polican +police +policed +policedom +policeless +policello +policeman +policemanish +policemanism +policemen +polices +policewoman +polichinelle +policia +policial +policier +policies +policing +policize +policizer +policlinic +policom +policy +policyholder +policymakers +policymaking +polidoro +poligar +poligarship +poligonc +poligus +polikliniku +polikoff +polimorph +polin +polina +poling +polinices +polio +polionotus +poliorcetic +poliorcetics +poliosis +polisario +polish +polishable +polished +polishedly +polishedness +polisher +polishers +polishes +polishing +polishment +polishum +polisman +polissoir +polisson +polistes +polit +polital +politarch +politarchic +politbureau +politburos +politcanz +politcians +polite +politeful +politely +politeness +politer +politesse +politest +politic +political +politicalism +politicalize +politically +politicaster +politician +politicians +politicious +politicist +politicize +politicizer +politicly +politicos +politics +politied +politique +politist +politize +polito +politoff +politti +politzerize +poliubish +polivitskiui +poliwoda +polizel +polizia +polizist +polk +polkcity +polkton +polkville +poll +pollable +pollack +pollaczek +polladz +pollage +pollak +pollakiuria +pollam +pollan +pollarchy +pollard +pollatschek +pollbook +polled +pollened +pollenite +pollenless +pollenlike +pollenproof +pollent +poller +pollertova +pollet +polleten +pollex +pollical +pollicar +pollicate +pollina +pollinar +pollinarium +pollinated +pollination +pollinator +pollinators +pollinctor +pollincture +polling +pollinia +pollinic +pollinical +pollinium +pollinize +pollinizer +pollinodial +pollinodium +pollinoid +pollinose +pollinosis +pollinzi +pollitt +polliwig +polliwog +pollock +pollockpines +pollok +polls +pollsters +pollucite +pollutants +pollute +polluted +pollutedly +pollutedness +polluter +pollutes +polluting +pollutingly +pollution +pollutions +pollux +polly +pollyanna +pollyanne +pollyannish +pollywog +pollz +polmas +polniy +polnocna +polnogo +polnom +polnyaps +polo +poloconic +polocyte +poloczek +pologozom +poloic +poloist +polojil +polome +polomska +polonah +polonese +polonia +polonial +polonian +polonism +polonius +polonization +polonize +polonnaruwa +polonombauk +polonskaya +polonsky +polony +polonyi +polopa +polos +polots +polovets +polovinu +polpomo +pols +polsha +polshed +polshi +polska +polson +polt +poltava +poltavka +poltergeist +poltfoot +poltfooted +poltina +poltinnik +poltophagic +poltophagist +poltophagy +poltroon +poltroonery +poltroonish +poltroonism +polty +polu +poluchenie +poluchil +poluchish +poluchlal +poluchowska +poluchshe +poluchu +polugoda +polulack +poluostrov +polvadera +polverine +poly +polya +polyacanthus +polyacid +polyacoustic +polyact +polyactinal +polyactine +polyactinia +polyad +polyadelph +polyadelphia +polyadenia +polyadenitis +polyadenoma +polyadenous +polyadic +polyalcohol +polyamide +polyamylose +polyandria +polyandrian +polyandric +polyandrious +polyandrism +polyandrist +polyandrium +polyandrous +polyandry +polyangium +polyangular +polyantha +polyanthous +polyanthus +polyanthy +polyarch +polyarchal +polyarchical +polyarchist +polyarchy +polyarthric +polyarthrous +polyatomic +polyaxial +polyaxon +polyaxone +polyaxonic +polybasic +polybasicity +polybasite +polyblast +polyborinae +polyborine +polyborus +polybranch +polybranchia +polybromid +polybromide +polybunous +polybuny +polybuttoned +polycarp +polycarpic +polycarpon +polycarpous +polycarpy +polycatt +polycellular +polycentral +polycentric +polycephalic +polycephaly +polychaeta +polychaete +polychaetous +polychasial +polychasium +polychloride +polychoerany +polychord +polychoric +polychotomy +polychrest +polychrestic +polychresty +polychroic +polychroism +polychromate +polychrome +polychromia +polychromic +polychromism +polychromize +polychromous +polychromy +polyciliate +polycitral +polyclad +polycladida +polycladine +polycladose +polycladous +polyclady +polycletan +polyclinic +polyclona +polycoccous +polycodium +polyconic +polycormic +polycotyl +polycotylous +polycotyly +polycracy +polycrase +polycratic +polycrotic +polycrotism +polyctenid +polyctenidae +polycttarian +polyculture +polycyanide +polycyclic +polycycly +polycyesis +polycystic +polycythemia +polycythemic +polycyttaria +polyd +polydactyl +polydactyle +polydactylus +polydactyly +polydemic +polydental +polydermous +polydermy +polydigital +polydipsia +polydisperse +polydomous +polydor +polydymite +polydynamic +polyeidic +polyeidism +polyembryony +polyemia +polyemic +polyergic +polyergus +polyester +polyesthesia +polyesthetic +polyethnic +polyethylene +polyf +polyflorous +polyfoil +polyfold +polyform +polyg +polygala +polygalaceae +polygalic +polygam +polygamia +polygamian +polygamic +polygamical +polygamist +polygamistic +polygamize +polygamous +polygamously +polygamy +polygastric +polygene +polygenesic +polygenesis +polygenesist +polygenetic +polygenic +polygenism +polygenist +polygenistic +polygenous +polygeny +polyglobulia +polyglossary +polyglotry +polyglottal +polyglotted +polyglotter +polyglottery +polyglottic +polyglottism +polyglottist +polyglottous +polyglotwise +polyglycerol +polygonaceae +polygonales +polygonally +polygonals +polygonatum +polygonella +polygoneutic +polygonia +polygonic +polygonoid +polygonous +polygons +polygonum +polygony +polygordius +polygram +polygraph +polygrapher +polygraphic +polygraphy +polygroove +polygrooved +polygyn +polygynaiky +polygynia +polygynian +polygynic +polygynious +polygynist +polygyny +polygyral +polygyria +polyh +polyhaemia +polyhaemic +polyhalide +polyhalite +polyhalogen +polyharmonic +polyharmony +polyhedrals +polyhedric +polyhedrical +polyhedroid +polyhedrosis +polyhedrous +polyhemia +polyhidrosis +polyhistor +polyhistoric +polyhistory +polyhybrid +polyhydric +polyhydroxy +polyhymnia +polyideic +polyideism +polyidrosis +polyiodide +polylemma +polylepidous +polylinear +polylinguist +polylith +polylithic +polylobular +polylogy +polyloquent +polymagnet +polymastia +polymastic +polymastiga +polymastism +polymastodon +polymasty +polymath +polymathic +polymathist +polymathy +polymazia +polymelia +polymelian +polymely +polymer +polymere +polymeria +polymeride +polymerism +polymerize +polymerous +polymers +polymetallic +polymeter +polymetochia +polymetochic +polymicrian +polymicrobic +polymignite +polymixia +polymixiid +polymixiidae +polymnestor +polymnia +polymnite +polymorpha +polymorphean +polymorphic +polymorphism +polymorphous +polymorphy +polymyaria +polymyarian +polymyarii +polymyodi +polymyodian +polymyodous +polymyoid +polymyositis +polymythic +polymythy +polynemid +polynemidae +polynemoid +polynemus +polynesia +polynesian +polynesic +polyneural +polyneuric +polyneuritic +polyneuritis +polynodal +polynoe +polynoid +polynoidae +polynome +polynomial +polynomials +polynomic +polynucleal +polynuclear +polynucleate +polyodon +polyodont +polyodontal +polyodontia +polyodontoid +polyoecious +polyoecism +polyoecy +polyof +polyoicous +polyommatous +polyonomous +polyonomy +polyonychia +polyonym +polyonymal +polyonymic +polyonymist +polyonymous +polyonymy +polyopia +polyopic +polyopsia +polyopsy +polyorama +polyorchism +polyorganic +polyose +polyoxide +polyp +polypage +polypaged +polyparesis +polyparia +polyparian +polyparium +polyparous +polypary +polypean +polyped +polypedates +polypeptide +polypetal +polypetalae +polypetalous +polyphaga +polyphage +polyphagia +polyphagian +polyphagic +polyphagist +polyphagous +polyphagy +polypharmacy +polypharmic +polyphasal +polyphase +polyphaser +polypheme +polyphemian +polyphemic +polyphemous +polyphenol +polyphobia +polyphobic +polyphone +polyphoned +polyphonia +polyphonic +polyphonical +polyphonism +polyphonist +polyphonium +polyphonous +polyphore +polyphotal +polyphote +polyphylesis +polyphyletic +polyphylety +polyphylline +polyphyllous +polyphylly +polyphyly +polyphyodont +polypi +polypian +polypide +polypidom +polypifera +polypiferous +polypigerous +polypinnate +polypite +polyplastic +polyplectron +polyplegia +polyplegic +polyploid +polyploidic +polypnoea +polypnoeic +polypod +polypoda +polypodia +polypodium +polypodous +polypody +polypoid +polypoidal +polypoites +polypomorpha +polyporaceae +polypore +polyporite +polyporoid +polyporous +polyporus +polypose +polyposis +polypotome +polypous +polypragmacy +polypragmaty +polypragmist +polypragmon +polyprene +polyprism +polyps +polypsychic +polypsychism +polypterid +polypteridae +polypteroid +polypterus +polyptote +polyptoton +polyptych +polypus +polyrhizal +polyrhizous +polyrhythmic +polysaccum +polysarcia +polysarcous +polyscope +polyscopic +polysemant +polysemantic +polysemeia +polysemia +polysemous +polysemy +polysensuous +polysepalous +polyseptate +polysided +polysilicate +polysilicic +polysiphonia +polysiphonic +polysix +polyslo +polysomatic +polysomatous +polysomaty +polysomia +polysomic +polysomitic +polysomous +polysomy +polyspast +polyspaston +polyspermal +polyspermia +polyspermic +polyspermous +polyspermy +polyspondyly +polyspora +polyspore +polyspored +polysporic +polysporous +polystaurion +polystele +polystelic +polystichoid +polystichous +polystichum +polystictus +polystomata +polystome +polystomea +polystomella +polystomidae +polystomium +polystylar +polystyle +polystylous +polystyrene +polysulfide +polysulphide +polysyllabic +polysyllable +polysymmetry +polysyndetic +polysyndeton +polyt +polyte +polytechnics +polytechnist +polyterpene +polythalamia +polythalamic +polythecial +polytheism +polytheist +polytheistic +polytheize +polythelia +polythelism +polythely +polythene +polythionic +polytitanic +polytocous +polytokous +polytoky +polytomous +polytomy +polytonal +polytonalism +polytonality +polytone +polytonic +polytony +polytopes +polytopic +polytopical +polytrichia +polytrichous +polytrichum +polytrochal +polytrochous +polytrope +polytrophic +polytropic +polytungstic +polytype +polytypic +polytypical +polyuresis +polyurethane +polyuria +polyuric +polyvalence +polyvalent +polyview +polyvinyl +polyvirulent +polyvoltine +polyxena +polyxo +polyzoa +polyzoal +polyzoan +polyzoarial +polyzoarium +polyzoary +polyzoic +polyzoism +polyzonal +polyzooid +polyzoon +polze +polzenite +polzunov +poma +pomabamba +pomace +pomaceae +pomacentrid +pomacentroid +pomacentrus +pomaceous +pomaderris +pomak +pomaks +pomander +pomane +pomarez +pomaria +pomarine +pomarium +pomaski +pomate +pomato +pomatomid +pomatomidae +pomatomus +pomatorhine +pomatum +pombal +pombe +pombo +pomdependent +pome +pomegranate +pomegranates +pomelo +pomenyalsya +pomerania +pomeranian +pomerene +pomeridian +pomerium +pomerlea +pomerleau +pomerov +pomeroy +pomeroyton +pomeshayut +pomewater +pomey +pomfret +pomian +pomiculture +pomiferous +pomiform +pomivorous +pommainville +pommard +pomme +pommee +pommel +pommeled +pommeler +pommels +pommesby +pommet +pommey +pommeyland +pommier +pommy +pomnish +pomnu +pomo +pomogut +pomoikan +pomological +pomologist +pomology +pomona +pomonal +pomonapark +pomonic +pomorza +pomp +pompa +pompal +pompano +pompanobeach +pompatan +pompe +pompeian +pompeja +pompelmous +pompeo +pompholix +pompholygous +pompholyx +pomphus +pompier +pompilid +pompilidae +pompilius +pompiliusa +pompiloid +pompilus +pompion +pompist +pompless +pompoleon +pompom +pompoms +pomponi +pomponia +pomposelli +pomposo +pompous +pompously +pompousness +pompster +pomptine +pomptonlakes +pomster +ponaal +ponai +ponam +ponape +ponapean +ponapeic +ponares +ponasakan +ponca +poncacity +ponce +ponceau +poncedeleon +poncela +poncelet +poncet +ponch +ponchatoula +poncho +ponchoed +poncin +poncirus +ponda +pondage +pondbush +pondcreek +pondeddy +ponder +ponderable +ponderal +ponderance +ponderancy +ponderant +ponderary +ponderate +ponderation +ponderative +ponderay +pondered +ponderer +pondereth +pondering +ponderingly +ponderling +ponderment +ponderosa +ponderosae +ponderosity +ponderously +ponders +pondfish +pondful +pondgap +pondgrass +pondi +pondicherry +pondirideri +pondlet +pondman +pondo +pondok +pondokkie +pondoma +pondomisi +pondorosity +ponds +pondside +pondus +pondweed +pondwort +pondy +pone +ponek +ponemah +ponent +ponera +poneramoeba +ponerid +poneridae +ponerihouen +ponerinae +ponerine +poneroid +ponerology +ponessa +poneto +poney +pong +ponga +pongani +pongas +pongee +ponger +pongidae +pongnati +pongo +pongola +pongoue +pongu +pongvilai +poni +poniard +ponica +ponier +ponies +ponimaesh +ponimaiu +ponja +ponlard +ponna +ponnambalam +ponnamma +pono +ponomarev +ponorwal +ponosakan +pons +ponsford +ponsonby +pont +ponta +pontac +pontacq +pontage +pontal +pontederia +pontee +pontelliro +pontes +ponthai +ponthieux +pontiac +pontian +pontianak +pontic +ponticelli +ponticello +ponticular +ponticulus +pontifex +pontiffs +pontifical +pontificalia +pontifically +pontificals +pontifices +pontificial +pontificious +pontify +pontil +pontile +pontin +pontine +pontist +pontius +pontlevis +ponto +pontocaspian +ponton +pontonier +pontoon +pontooneer +pontooner +pontooning +pontoppdian +pontotoc +pontryagin +pontus +pontvolant +pony +ponyal +ponyboy +ponychat +ponyo +ponytail +ponzini +ponzite +pooa +pooched +pooder +poodle +poodledom +poodleish +poodles +poodleship +poof +poofski +poofter +poofters +poogye +pooh +poohbear +poohpooh +poohpoohist +poohuevash +pook +pooka +pookaun +pookie +pookoo +pooky +pool +poole +pooled +pooler +poolesville +pooley +pooli +pooling +poolroom +poolroot +pools +poolside +poolville +poolwort +pooly +poom +poomjai +poon +poona +poonac +poonch +poong +poonga +poonghie +pooni +poons +pooped +poophyte +poophytic +poor +poore +poorer +poorest +poorgrass +poorhouse +poorish +poorliness +poorling +poorly +poorlyish +poorman +poormaster +poorness +poorquality +poorweed +poorwill +poos +poot +poothan +pooting +popa +popadam +popadick +popadophalos +popadu +popal +popaya +popayecak +popchik +popcorn +popculture +popd +popdock +pope +popean +popedom +popeholy +popehood +popeism +popejoy +popel +popela +popeler +popeless +popelike +popeline +popely +popen +popendetta +popengare +popenker +poperty +popery +popesco +popescu +popeship +popess +popevalley +popeye +popeyed +popglove +popgun +popgunner +popgunnery +popi +popian +popieraitis +popify +popili +popilius +popinac +popinjay +popishly +popishness +popj +popjay +popjoy +popkin +popl +poplar +poplarbluff +poplarbranch +poplared +poplargrove +poplarridge +poplars +poplarville +poplavsky +poplilia +poplinette +popliteal +popliteus +poplolly +popo +popocracy +popocrat +popodrobnee +popoff +popoheo +popoi +popokabaka +popolare +popolari +popole +popolo +popoloca +popolocan +popoloco +popolos +popoluca +popomastic +popondetta +poporcheni +popov +popova +popover +popovets +popovic +popovich +popovici +popovics +popovnu +popovoy +popovskii +popowicz +popowycz +popozhe +popp +poppa +poppability +poppable +poppaea +poppandov +poppasswd +poppe +poppean +popped +poppel +poppencorken +popper +poppet +poppethead +poppie +poppied +poppies +poppin +popping +poppins +poppiti +popple +popply +poppy +poppycock +poppycockish +poppyfish +poppyhead +poppylike +poppywort +popr +poprobuy +poproshu +poprosi +poprosil +poprosit +pops +popsa +popscene +popshop +popsicle +popsy +popuation +populace +populair +populaire +popular +popularism +popularist +popularity +popularize +popularized +popularizer +popularizes +popularizing +popularly +popularness +populated +populates +populating +population +populational +populations +populaton +populator +populicide +populin +populistic +popullor +populous +populously +populousness +populus +populyarnoe +popup +popus +popushka +poputno +popvax +popweed +popwell +poquelin +poquonock +porac +porakiet +poral +porapora +porat +poratha +porbeagle +porcasi +porcate +porcated +porcelain +porcelainize +porcelainous +porcelaneous +porcelanic +porcelanite +porcelanous +porcellana +porcellanian +porcellanid +porcellanize +porch +porched +porches +porching +porchless +porchlike +porcius +porco +porcula +porcupines +porcupinish +pordenone +porebski +porecha +pored +poree +porel +porelatical +porelike +porella +poren +porencephaly +porer +pores +porfiria +porfirio +porge +porger +porgera +porgy +pori +poria +poricidal +porifera +poriferal +poriferan +poriferous +poriform +porimania +porinesia +poriness +poring +poringly +poriomanic +porism +porismatic +porismatical +poristic +poristical +porite +porites +poritidae +poritoid +porja +pork +porkburger +porker +porkery +porket +porkfish +porkish +porkless +porkling +porkman +porkopolis +porkpie +porkwood +porky +porn +pornerastic +porng +porno +pornocracy +pornocrat +pornograph +pornographic +pornological +pornos +pornprasert +poro +porocephalus +porodine +porodite +porogam +porogamic +porogamous +porogamy +porogram +porohanon +poroja +porokoto +poroma +porome +porometer +poron +porophyllous +poroplastic +poroporo +pororan +pororoca +poros +poroscope +poroscopic +poroscopy +porose +poroseness +porosimeter +porosis +porotic +porotype +porously +porousness +porpentine +porphine +porphyra +porphyraceae +porphyratin +porphyrean +porphyria +porphyrian +porphyrin +porphyrine +porphyrio +porphyrion +porphyrite +porphyritic +porphyro +porphyrogene +porphyroid +porphyrous +porphyry +porpita +porpitoid +porpoiselike +porpoises +porporate +porr +porraceous +porrect +porrection +porrectus +porret +porrett +porridge +porridgelike +porridgy +porriginous +porrigo +porrima +porringer +porriwiggle +porry +porsche +porsches +port +porta +portability +portable +portableness +portables +portably +portacres +portage +portageville +portague +portahepatis +portail +portal +portaled +portalegre +portales +portalled +portallegany +portallen +portalless +portals +portamento +portance +portangeles +portaransas +portarthur +portass +portatile +portative +portauprince +portaustin +portbarre +portbolivar +portbyron +portcarbon +portchester +portclinton +portclyde +portcosta +portcrane +portcrayon +portctour +portcullis +portdeposit +porteacid +ported +portedwards +porteguese +portelance +portemonnaie +porten +portendance +portended +portending +portendment +portends +portenko +porteno +portension +portent +portention +portentosity +portentous +portentously +porteous +porter +porterage +porteranthus +porterdale +porteress +porterfield +porterlike +porterly +porters +portersfalls +portership +portersville +porterville +portet +portewen +portezuelo +portfire +portfolio +portfolios +portgamble +portgentil +portgibson +portglaive +portglaud +portglave +portgrave +porthan +porthaywood +portheiden +porthenry +porthetria +portheus +porthill +porthole +porthook +porthope +porthors +porthos +porthouse +porthueneme +porthuron +portia +portibre +portici +porticoed +portiere +portiered +portifory +portify +portigal +portillo +porting +portini +portio +portiomollis +portion +portionable +portional +portionally +portioner +portionist +portionize +portionless +portions +portis +portisabel +portishead +portitor +portjervis +portkent +portland +portlandia +portlandian +portlast +portlavaca +portless +portlet +portleyden +portligature +portlily +portliness +portlions +portly +portman +portmanmote +portmanteaus +portmanteaux +portmantle +portmap +portmapper +portmatilda +portment +portmonmouth +portmoot +portmurray +portneches +portnorris +portnumber +portobello +portoconnor +portofspain +portoise +portola +portolan +portolano +portonovo +portor +portorchard +portorford +portpenn +portrait +portraitist +portraitlike +portraits +portray +portrayable +portrayal +portrayed +portrayer +portraying +portrayist +portrayment +portrays +portreading +portreeve +portrepublic +portress +portrichey +portroyal +ports +portsaintjoe +portsalerno +portsanilac +portscan +portscanner +portside +portsider +portsis +portsman +portsmouth +portsulphur +porttobacco +porttownsend +portuary +portugais +portugal +portugalism +portugee +portugese +portugue +portugues +portuguesa +portuguese +portulacaria +portulan +portunalia +portunian +portunidae +portunov +portunus +portuphi +portvila +portville +portvue +portway +portwilliam +portwing +portwood +porty +portz +poruchik +porule +porulose +porulous +porum +porus +porvenir +porvoo +porwigle +pory +poryadke +porzana +porzia +posa +posada +posadaship +posado +posavad +posca +poschashe +poschl +posdnyakov +pose +poseathon +posed +poseiden +poseidon +poseidonian +posement +posen +poser +posers +poses +posession +poseti +poseurs +poseyville +poshalovat +poshard +poshel +poshlo +poshtkuh +posilal +posilay +posilayut +posilku +posing +posingly +posited +positing +position +positional +positioned +positioner +positioning +positionless +positions +positival +positive +positively +positiveness +positives +positivism +positivist +positivistic +positivity +positivize +positoning +positor +positronium +positrons +posits +positum +positure +posix +poskin +poskitt +poskoree +poslal +posle +poslednee +posledniy +posledovala +posleduyshie +posli +posmotri +posmotrish +posnania +posnanian +posnet +poso +posobie +posobiem +posobii +posobiya +posole +posologic +posological +posologist +posology +pospahalas +pospisil +pospolite +posporil +posralsya +posravshi +poss +possamay +posse +posselt +posses +possess +possessable +possessed +possessedly +possesses +possessest +possesseth +possessing +possessingly +possession +possessional +possessioned +possessioner +possessions +possessival +possessively +possessives +possessor +possessoress +possessorial +possessors +possessory +posset +possibilism +possibilist +possibility +possibily +possible +possibleness +possibly +possiblyin +possum +possums +possumwood +post +posta +postabdomen +postable +postabortal +postadjunct +postaire +postal +postally +postalveolar +postament +postamniotic +postanal +postantennal +postaortic +postarterial +postaspirate +postatrial +postauditory +postavsky +postaxiad +postaxial +postaxially +postaxillary +postbag +postbox +postboy +postbrachial +postbrachium +postbuccal +postbulbar +postbursal +postcaecal +postcard +postcardiac +postcardinal +postcards +postcardware +postcarnate +postcarotid +postcart +postcava +postcaval +postcecal +postcenal +postcensal +postcentral +postcentrum +postcephalic +postcerebral +postcesarean +postcibal +postclassic +postclavicle +postclimax +postclitic +postclival +postcolon +postcolonial +postcomitial +postcondylar +postcontact +postcontract +postcordial +postcornu +postcosmic +postcostal +postcoxal +postcritical +postcrural +postcubital +postd +postdate +postdental +postdicrotic +postdigital +postdiluvial +postdiluvian +postdural +posted +posteen +postel +postelection +postelle +postelnicu +postelwaite +postemporal +posten +postenteral +postentry +poster +posterette +posteriad +posterial +posterior +posterioric +posteriority +posteriorly +posteriors +posteriorums +posterish +posterist +posterity +posterize +postern +posters +posteruptive +posteternity +postethmoid +postexilian +postexilic +postexist +postexistent +postf +postface +postfact +postfalls +postfebrile +postfemoral +postfetal +postfix +postfixal +postfixation +postfixed +postfixial +postfixing +postflection +postflexion +postform +postfoveal +postfrontal +postfurca +postfurcal +postgastric +postgeminum +postgenial +postgeniture +postglacial +postglenoid +postgracile +postgres +postgrippal +posthabit +posthaste +posthepatic +posthetomist +posthetomy +posthippy +posthitis +posthoc +postholder +posthole +posthorn +posthouse +posthuman +posthumeral +posthumous +posthumously +posthumus +posthyoid +posthypnotic +postic +postical +postically +posticous +posticteric +posticum +postil +postilion +postilioned +postillate +postillation +postillator +postindex +posting +postingly +postings +postion +postique +postischial +postit +postjacent +postjugular +postlabial +postless +postlike +postliminary +postliminium +postliminous +postliminy +postloitic +postloral +postludium +postluetic +postmalarial +postmammary +postman +postmaniacal +postmans +postmarital +postmarks +postmarriage +postmaster +postmasters +postmastoid +postmaturity +postmaximal +postmeatal +postmedia +postmedial +postmedian +postmeiotic +postmental +postmeridian +postmills +postmineral +postmistress +postmodern +postmortal +postmortuary +postmundane +postmuscular +postmutative +postmycotic +postnarial +postnaris +postnasal +postnatal +postnate +postnati +postnecrotic +postnet +postneural +postneuritic +postneurotic +postnikova +postnodular +postnominal +postnotum +postnuptial +posto +postobituary +postocular +postoffice +postoffices +postolek +postolet +postolivary +postomental +poston +postoptic +postoral +postorbital +postorgastic +postosseous +postotic +postpad +postpagan +postpalatal +postpalatine +postpaludal +postparietal +postparotid +postpatellar +postphragma +postphrenic +postphthisic +postplace +postplegic +postponable +postpone +postponed +postponement +postponence +postponer +postpones +postponing +postpontile +postpose +postposited +postpositive +postprandial +postprimary +postprophesy +postprostate +postpubertal +postpubic +postpubis +postpycnotic +postpyloric +postpyretic +postrachitic +postramus +postranecky +postrectal +postrema +postremote +postrenal +postretinal +postrhinal +postrider +postroad +postrorse +postrostral +postrubeolar +posts +postsaccular +postsacral +postscalenus +postscapula +postscapular +postscenium +postscribe +postscript +postscripts +postscriptum +postseason +postsigmoid +postsign +postsphenoid +postsphygmic +postspinous +postsplenial +postsplenic +poststernal +postsurgical +postsynaptic +postsystolic +posttabetic +posttarsal +posttask +posttest +posttests +posttetanic +postthalamic +postthoracic +posttibial +posttonic +posttoxic +posttracheal +posttreaty +posttussive +posttympanic +posttyphoid +postulancy +postulant +postulata +postulate +postulated +postulates +postulating +postulation +postulations +postulator +postulatory +postulatum +postulnar +postumbonal +postural +posture +posturer +postures +postureteric +posturing +posturist +posturize +postuterine +postvaccinal +postvelar +postvenereal +postvenous +postverbal +postverta +postvesical +postvide +postville +postvocalic +postward +postwise +postwoman +postxyphoid +postyard +postzhivkov +poswin +posy +potability +potableness +potage +potager +potagerie +potagery +potaje +potamic +potamobiidae +potamogale +potamogeton +potamologist +potamology +potamometer +potamonidae +potashery +potass +potassa +potassamide +potassic +potate +potation +potative +potato +potatoes +potator +potatory +potatotes +potawatami +potawatomi +potbank +potbellied +potboiler +potboy +potboydom +potch +potchara +potcher +potcherman +potcrook +potdar +pote +poteau +potecary +potecasi +poteen +poteet +potel +potemkin +potence +potency +potentacy +potentate +potentates +potential +potentiality +potentialize +potentially +potentials +potentiate +potentiating +potentiation +potentilla +potentize +potently +potentness +poter +poterium +potesta +potestal +potestas +potestate +potestative +poteye +potful +potgirl +potgun +poth +pothanger +pothe +pothead +pothecary +potheen +pother +potherb +potherment +pothery +pothinos +pothinus +pothole +potholes +pothook +pothookery +pothos +pothouse +pothousey +pothunt +pothunter +pothunting +poticary +potichomania +potifer +potigua +potiguara +potinhua +potion +potions +potiphar +potipherah +potiskum +potleg +potlicker +potlid +potlike +potluck +potmaker +potmaking +potman +potnariven +potnetial +poto +potochney +potocki +potocnjak +potokar +potoke +potokom +potom +potomac +potomania +potomato +potometer +potomuchto +potomy +potong +potoo +potop +potopo +potopore +potoroinae +potoroo +potorous +potosi +pototan +potoy +potpie +potrack +potrero +potro +pots +potsawugok +potsdam +potsherd +potsherds +potshoot +potshooter +potshot +potshots +potstick +potsticker +potstone +potsun +pott +pottage +pottagy +pottah +pottangi +pottawotomi +potted +potter +potterer +potteress +pottering +potteringly +potterplace +potters +pottersville +pottervalley +potterville +pottery +pottiaceae +pottie +potting +pottinger +pottkamp +pottle +pottled +potto +potts +pottsboro +pottscamp +pottsgrove +pottstown +pottsville +potty +potu +potule +potulent +potvaliant +potvin +potwaller +potwalling +potwalloper +potwallopper +potware +potwhisky +potwin +potwork +potwort +potzdorf +potzelberg +pouce +poucer +poucey +pouch +pouched +pouchee +pouches +pouchful +pouchless +pouchlike +pouchy +poudiougou +poudre +poudrette +poue +pouf +poughkeepsie +poughquag +pougouli +pouhyet +pouira +poul +poula +poulain +poulaine +poulan +poulard +poulardize +poulenc +poulet +poulin +pouliot +pouliv +poulos +poulp +poulpe +poulsbo +poulsen +poulson +poult +poulteney +poulter +poulterer +poulteress +poultice +poultices +poulticewise +poultney +poultry +poultrydom +poultryist +poultryless +poultrylike +poultryman +poultryproof +poum +poumele +pounamu +pounce +pounced +pouncer +pounces +pouncet +pouncing +pouncingly +pound +poundage +poundal +poundcake +pounded +pounder +pounders +pounding +poundingmill +poundkeeper +poundless +poundlike +poundman +poundmaster +poundmeal +poundridge +pounds +poundstone +poundworth +pouno +poupee +poupon +pour +pourboire +pourcell +poured +pouredst +pourer +pourers +poureth +pourie +pouring +pouringly +pournelles +pourparler +pourparley +pourpiece +pourpoint +pourpointer +pours +pourtray +pourtrayed +pourve +pourvu +pouser +pouss +poussette +poussin +poustchi +pout +poutanen +pouted +pouteng +pouter +poutful +pouthisat +pouting +poutingly +pouts +pouty +pouvoir +pouyet +pova +povah +pove +povedano +poveri +poverish +poverishment +poverty +povertyweed +povestj +povestku +povfront +povich +povill +povindah +povodu +povratak +powadhi +powari +poway +powder +powderable +powdered +powderer +powderhorn +powderiness +powdering +powderize +powderizer +powderlike +powderly +powderman +powderriver +powders +powdersmoke +powdike +powdry +powel +powell +powellbutte +powellite +powellspoint +powellsville +powellton +powellville +power +powerbar +powerbase +powerbasic +powerbbs +powerboat +powerchute +powercycling +powerdesk +powerdream +powered +powerfor +powerful +powerfull +powerfully +powerfulness +powergate +powerhead +powerhouse +powerhungry +powering +powerless +powerlessly +powerlord +powermarks +powermod +powermonger +poweroff +poweroftwo +poweron +powerpack +powerpc +powerpoint +powerport +powerquest +powers +powerset +powersets +powersharing +powersite +powerslake +powerslide +powersoft +powerstat +powerstrip +powersupply +powersurvey +powersville +powerterm +powertower +powertoys +powerup +powerweb +powes +powhatan +powhattan +powindra +powitch +powldoody +powlison +pownal +pownall +powney +pownie +powsoddy +powsowdy +powtee +powvax +powwow +powwower +powwowism +powys +poxy +poya +poyana +poyanawa +poyavishsya +poydu +poyen +poyeni +poyenisati +poyer +poymali +poymi +poymu +poyner +poynette +poynor +poyntelle +poynter +poynting +poyou +poysippi +pozhaluiusta +pozitiv +poznan +pozo +pozostalych +pozvoni +pozvonu +pozvony +pozzetto +pozzi +pozzo +pozzolana +pozzolanic +pozzuolana +pozzuolanic +ppcp +ppkt +pppass +pppd +pppp +ppppp +pppppp +ppppppp +pppppppp +pprg +ppro +ppsc +ppswor +pptp +praam +praat +prab +prabang +prabble +prabhu +prabir +pracha +prachachon +prachatai +prachin +prachon +pracht +prachuab +prachuap +practen +practic +practicably +practical +practicalism +practicalist +practicality +practicalize +practically +practicals +practicant +practice +practiced +practicer +practices +practician +practicing +practicum +practise +practised +practising +practitional +practitioner +prad +prada +prade +pradeep +pradel +praderas +pradesh +pradhan +pradhana +pradhani +pradier +pradip +prado +prador +prados +pradyumn +prae +praeabdomen +praeanal +praecava +praecipe +praecipuum +praecoces +praecocial +praecognita +praecognitum +praecoracoid +praecordia +praecordial +praecordium +praecornu +praecuneus +praedial +praedialist +praediality +praefect +praefectus +praefervid +praeger +praehallux +praelabrum +praelection +praelector +praelectress +praeludium +praemaxilla +praemolar +praemunire +praenarial +praenestine +praeneural +praenomen +praenomina +praenominal +praepositor +praepostor +praepubis +praepuce +praescutum +praesepe +praesertim +praesian +praesidium +praesphenoid +praesternal +praesternum +praestomium +praesystolic +praetaxation +praetexta +praetor +praetorial +praetorian +praetorium +praetorship +praetz +praeuner +prafula +prafulla +prag +pragarauskas +prager +pragma +pragmas +pragmat +pragmatica +pragmatical +pragmaticism +pragmatics +pragmatistic +pragmatize +pragmatizer +prague +praha +prahka +prahova +prahu +prai +praia +praille +praince +praini +prairie +prairieburg +prairiecity +prairiecraft +prairiecreek +prairied +prairiedom +prairiedusac +prairiefarm +prairiegrove +prairiehill +prairiehome +prairielea +prairielike +prairiepoint +prairies +prairieton +prairieview +prairieville +prairieweed +prairillon +prais +praisable +praisably +praise +praised +praiseful +praisefully +praiseless +praiseproof +praiser +praisers +praises +praiseth +praiseworthy +praising +praisingly +praisworthy +prajapati +prajna +prajneshu +prakan +prakarn +prakasa +prakash +prakrit +prakriti +prakritic +prakritize +prakticheski +praline +pralltriller +pramalot +pramatefti +prame +pramnian +pramod +pramoj +prams +pran +prana +pranab +pranced +pranceful +prancer +prancing +prancingly +prancy +prandial +prandially +prandtl +prang +prange +pranged +prank +pranked +pranker +prankful +prankfulness +pranking +prankingly +prankish +prankishly +prankishness +prankle +pranks +pranksome +prankster +pranksters +pranky +pransing +pransings +prantz +praok +praong +prapanch +prapis +prasa +prasad +prasada +prasarn +prascovia +prase +praseodymia +praseolite +prasert +prashad +prashant +prashaw +prasine +prasinous +praskova +praslin +prasoid +prasophagous +prasophagy +prast +prastha +prastos +prasun +prasuni +prat +prata +pratal +pratap +prate +prateful +pratement +pratensian +prater +pratey +pratfall +prather +pratibha +pratiloma +pratincola +pratincole +pratincoline +pratincolous +prating +pratingly +pratique +prato +pratsch +pratt +prattfall +prattico +prattle +prattled +prattlement +prattler +prattling +prattlingly +prattly +pratts +prattsburg +prattshollow +prattsville +prattville +prau +prav +prava +pravato +pravda +pravdy +praveen +pravin +pravity +prawitz +prawn +prawner +prawny +praxean +praxeanist +praxedis +praxinoscope +praxiology +praxis +praxitelean +praxiteles +pray +praya +prayed +prayenum +prayer +prayerfully +prayerless +prayerlessly +prayermaker +prayermaking +prayers +prayerwise +prayest +prayeth +prayful +praying +prayingly +prayingwise +praysner +prayson +prazer +prcase +prchal +prdm +preabdomen +preabsorb +preabsorbent +preabstract +preabundance +preabundant +preaccept +preaccess +preaccord +preaccount +preaccredit +preaccuse +preaccustom +preach +preachable +preached +preacher +preacherdom +preacheress +preacherize +preacherless +preacherling +preachers +preachership +preaches +preachest +preacheth +preachieved +preachify +preachily +preachiness +preaching +preachingly +preachman +preachment +preacid +preacidity +preacidly +preacidness +preacquaint +preacquire +preacquired +preacquit +preacquittal +preact +preaction +preactive +preactively +preactivity +preacute +preacutely +preacuteness +preadamic +preadamite +preadamitic +preadamitism +preadapt +preadaptable +preaddition +preaddress +preadequacy +preadequate +preadhere +preadherence +preadherent +preadjective +preadjourn +preadjunct +preadjust +preadmire +preadmirer +preadmission +preadmit +preadmonish +preadopt +preadoption +preadoration +preadore +preadorn +preadornment +preadult +preadulthood +preadvance +preadventure +preadvertent +preadvertise +preadvice +preadvisable +preadvise +preadviser +preadvisory +preadvocacy +preadvocate +preaestival +preaffect +preaffection +preaffidavit +preaffiliate +preaffirm +preafflict +preafternoon +preaged +preaggravate +preagitate +preagitation +preagonal +preagony +preagree +preagreement +preah +prealarm +prealcohol +prealcoholic +prealgebra +prealgebraic +prealkalic +preallable +preallably +preallege +prealliance +preallied +preallocate +preallocated +preallot +preallotment +preallow +preallowable +preallowably +preallowance +preallude +preallusion +preally +prealphabet +prealtar +prealveolar +preambition +preambitious +preamble +preambled +preambles +preambling +preambular +preambulary +preambulate +preanal +preanaphoral +preandine +preanimism +preannex +preannounce +preannouncer +preanterior +preantiquity +preaortic +preappoint +preapprise +preapproval +preapprove +preaptitude +prearm +prearrange +prearrest +preartistic +preascertain +preascitic +preaseptic +preassign +preassigned +preassigning +preassigns +preassume +preassurance +preassure +preataxic +preattune +preaudience +preauditory +preaver +preavowal +preaxiad +preaxial +preaxially +prebachelor +prebacillary +prebake +prebalance +preballot +preballoting +prebaptismal +prebaptize +prebarbaric +prebarbarous +prebargain +prebasal +prebasilar +prebble +prebeleve +prebelief +prebeliever +prebelieving +prebellum +prebeloved +preben +prebend +prebendal +prebendary +prebendate +prebenefit +prebeset +prebestow +prebestowal +prebetray +prebetrayal +prebetrothal +prebid +prebidding +prebill +preble +prebless +preblessing +preblockade +preblooming +preboast +preboding +preboil +preboist +preborn +preborrowing +preboyhood +prebrachial +prebrachium +prebreathe +prebridal +prebromidic +prebronchial +prebronze +prebrute +prebuccal +prebudget +prebudgetary +prebullying +preburlesque +preburn +precalculate +precambrian +precampaign +precancel +precancerous +precandidacy +precanning +precanonical +precant +precantation +precanvass +precapillary +precaptivity +precapture +precardiac +precaria +precarious +precariously +precarium +precarnival +precartilage +precary +precast +precation +precative +precatively +precatory +precaudal +precausation +precaution +precautional +precautions +precautious +precava +precaval +precedable +precede +preceded +precedence +precedences +precedency +precedent +precedentary +precedented +precedential +precedently +precedents +preceder +precedes +preceding +precednce +preceed +preceeded +precelebrant +precelebrate +precensure +precensus +precent +precentor +precentorial +precentory +precentral +precentress +precentrix +precentrum +precept +preception +preceptist +preceptive +preceptively +preceptor +preceptoral +preceptorate +preceptorial +preceptory +preceptress +precepts +preceptual +preceptually +preceramic +precerebral +precerebroid +preceremony +precertify +preces +precesses +precessing +precession +precessional +prechallenge +precharge +prechart +precheck +prechemical +precherish +prechildhood +prechill +prechloric +prechoice +prechoose +prechordal +prechoroid +precht +prechtel +preciation +precinction +precinctive +precincts +preciosity +precious +preciously +preciousness +precipe +precipiced +precipitance +precipitancy +precipitant +precipitated +precipitates +precipitator +precipitin +precirculate +precise +precisely +preciseness +precisian +precisianism +precisianist +precision +precisional +precisioner +precisionism +precisionist +precisionize +precisions +precisive +precitation +precite +precited +preclaim +preclaimant +preclaimer +preclassic +preclassical +preclassify +preclean +precleaner +precleaning +preclerical +preclimax +preclinical +preclival +precloacal +preclose +preclosure +preclothe +precludable +preclude +precluded +precludes +precluding +preclusion +preclusive +preclusively +precoastal +precoccygeal +precocial +precocious +precociously +precoda +precogitate +precognition +precognitive +precognizant +precognize +precognosce +precoil +precoiler +precollapse +precollect +precollector +precollege +precollude +precollusion +precollusive +precolor +precolorable +precoloring +precolumbian +precombat +precombatant +precombine +precommand +precommend +precomment +precommit +precommune +precommunion +precomp +precompare +precompass +precompel +precompile +precompiled +precompiler +precompliant +precompose +precompound +precompress +precompute +precomputed +precomputing +preconceal +preconcede +preconceive +preconceived +preconcept +preconcern +preconcert +preconcerted +preconclude +preconcur +precondemn +precondense +precondition +preconduct +preconductor +precondylar +precondyloid +preconfer +preconfess +preconfide +preconfigure +preconfine +preconfirm +preconflict +preconform +preconfound +preconfuse +preconfusion +precongenial +precongested +preconizance +preconize +preconizer +preconnubial +preconquer +preconquest +preconscious +preconsent +preconsider +preconsign +preconsole +preconspire +preconstruct +preconsult +preconsultor +preconsume +preconsumer +precontact +precontain +precontained +precontemn +precontend +precontent +precontently +precontest +precontract +precontrive +precontrol +preconvert +preconvey +preconveyal +preconvict +preconvince +precook +precooker +precool +precooler +precooling +precopy +precoracoid +precordia +precordial +precordially +precordium +precorneal +precornu +precorrect +precorrectly +precorridor +precorrupt +precorruptly +precosmic +precosmical +precostal +precounsel +precourse +precover +precovering +precox +precreate +precreation +precreative +precredit +precreditor +precreed +precritical +precriticism +precriticize +precrucial +precrural +precultivate +precultural +preculture +precuneal +precuneate +precuneus +precure +precurrent +precursal +precurse +precursive +precursor +precursors +precursory +precurtain +precut +precy +precyclone +precyclonic +precynical +precyst +precystic +pred +predable +predacean +predaceous +predacity +predal +predamage +predamn +predamnation +predappia +predark +predarkness +predata +predate +predated +predates +predati +predating +predation +predatism +predative +predator +predatorial +predatorily +predatorprey +predators +predatory +predawn +preday +predaylight +predaytime +predazzite +predealer +predealing +predeath +predeathly +predebate +predebater +predebit +predebtor +predecay +predecease +predeceaser +predeceive +predeceiver +predeception +predecession +predecessor +predecessors +predecide +predecision +predecisive +predeclare +predeclared +predecline +predecree +predecrement +prededicate +prededuct +prededuction +predefault +predefeat +predefect +predefective +predefence +predefend +predefense +predefiance +predeficient +predefine +predefined +predefines +predefining +predefinite +predefray +predefrayal +predefy +predegree +predeication +predel +predelay +predelegate +predelineate +predeliver +predelivery +predella +predelude +predelusion +predemand +predemocracy +predenial +predental +predentary +predentata +predentate +predeny +predepart +predeparture +predependent +predeplete +predepletion +predeposit +predeprive +prederive +predescend +predescent +predescribe +predesert +predeserter +predesertion +predeserve +predeserving +predesign +predesignate +predesigned +predesirous +predesolate +predespair +predesperate +predespise +predespond +predestinate +predestine +predestiny +predestitute +predestroy +predetach +predetail +predetain +predetainer +predetect +predetention +predetermine +predetest +predevelop +predevise +predevote +predevotion +predevour +prediagnosis +predial +prediastolic +prediatory +predicable +predicably +predicaments +predicant +predicate +predicated +predicates +predicating +predication +predications +predicative +predicator +predicatory +predicrotic +predict +predictable +predictably +predictate +predictation +predicted +predicting +prediction +predictional +predictions +predictive +predictively +predictors +predictory +predicts +prediet +predietary +predifferent +predigest +predigestion +predikant +predilected +predilection +prediligent +prediluvial +prediluvian +prediminish +predine +predinner +prediploma +prediplomacy +predirect +predirection +predirector +predisable +predisagree +predisaster +prediscern +predischarge +predisclose +prediscount +prediscourse +prediscover +prediscovery +prediscreet +prediscuss +predisgrace +predisguise +predisgust +predislike +predismiss +predismissal +predisorder +predispatch +predisperse +predisplace +predisplay +predisponent +predisposal +predisposed +predisputant +predispute +predisregard +predisrupt +predissolve +predissuade +predistinct +predistress +predistrict +predistrust +predisturb +prediversion +predivert +predivide +predividend +predivider +predivinable +predivinity +predivision +predivorce +predlojenie +predoctorate +predomestic +predominance +predominancy +predominant +predominated +predominates +predominator +predon +predonate +predonation +predonor +predoom +predorsal +predoubt +predoubter +predoubtful +predraft +predrag +predrainage +predramatic +predraw +predrawer +predread +predrill +predriller +predrive +predriver +predry +preduplicate +predusk +predwell +predynamite +predynastic +pree +preece +preeman +preeminence +preeminently +preemptable +preempted +preempting +preemption +preempts +preened +preener +preengage +preestablish +preexist +preexistence +preexistent +preexisting +preeze +pref +prefab +preface +prefaceable +prefaced +prefacer +prefaces +prefacial +prefacing +prefacist +prefactor +prefactory +prefamiliar +prefamous +prefashion +prefatial +prefator +prefatorial +prefatorily +prefatory +prefavor +prefavorable +prefavorably +prefavorite +prefearful +prefearfully +prefeast +prefect +prefectly +prefectoral +prefectorial +prefectorian +prefectship +prefectual +prefectural +prefectures +prefederal +prefegitura +prefelic +prefer +preferable +preferably +prefered +preferee +preference +preferences +preferent +preferment +preferred +preferredly +preferrer +preferring +preferrous +prefers +prefertile +prefertility +prefertilize +prefervid +prefestival +prefet +prefeudal +prefeudalic +prefeudalism +prefiction +prefictional +prefigurate +prefigure +prefill +prefiller +prefills +prefilter +prefinal +prefinance +prefinancial +prefine +prefinish +prefix +prefixable +prefixal +prefixally +prefixation +prefixed +prefixedly +prefixes +prefixing +prefixion +prefixture +preflatter +preflattery +preflavor +preflavoring +preflection +preflexion +preflight +preflood +prefloration +preflowering +prefoliation +prefool +preforbidden +preforceps +preforgive +preforgotten +preform +preformant +preformation +preformative +preformatted +preformed +preformism +preformist +preformistic +preformulate +prefortunate +prefortune +prefounder +prefragrance +prefragrant +prefrankness +prefraternal +prefraud +prefreeze +prefreshman +prefriendly +prefright +prefrighten +prefrontal +prefulfill +prefulgence +prefulgency +prefulgent +prefunction +prefuneral +prefungoidal +prefurlough +prefurnish +pregain +pregainer +pregalvanize +pregather +pregathering +pregeminum +pregenerate +pregenerous +pregenial +pregeniculum +pregenital +pregibon +pregirlhood +pregl +preglacial +pregladden +pregladness +preglenoid +preglenoidal +preglobulin +pregnability +pregnable +pregnance +pregnancies +pregnancy +pregnant +pregnantly +pregnantness +pregolden +pregolfing +pregracile +pregracious +pregrade +pregranite +pregranitic +pregratify +pregreet +pregreeting +pregrievance +pregrowth +preguarantee +preguarantor +preguard +preguess +preguidance +preguide +preguilt +preguilty +pregust +pregustant +pregustation +pregustator +pregustic +preh +prehae +prehallux +prehalter +prehan +prehandicap +prehandle +prehaps +preharden +preharmony +preharsh +preharshness +preharvest +prehatred +prehaunt +prehaunted +prehazard +prehazardous +preheal +prehearing +preheat +preheated +preheater +prehend +prehensible +prehensile +prehensility +prehension +prehensive +prehensor +prehensorial +prehensory +prehepatic +prehepaticus +preheroic +prehesitancy +prehesitate +prehexameral +prehistorian +prehistoric +prehistorics +prehistory +prehnite +prehnitic +preholder +preholding +preholiday +prehorizon +prehorror +prehostile +prehostility +prehuman +prehumiliate +prehumor +prehunger +prehydration +preidea +preidentify +preignition +preimage +preimaginary +preimagine +preimbibe +preimbue +preimitate +preimitation +preimitative +preimpair +preimpart +preimperial +preimport +preimportant +preimposal +preimpose +preimpress +preimprove +preinaugural +preincarnate +preincentive +preincline +preinclude +preinclusion +preincrease +preindebted +preindemnify +preindemnity +preindex +preindicant +preindicate +preindispose +preinduce +preinduction +preinductive +preindulge +preindulgent +preindustry +preinfect +preinfection +preinfer +preinference +preinflict +preinfluence +preinform +preinhabit +preinhere +preinherit +preininger +preinitial +preinitiate +preinjure +preinjurious +preinjury +preinscribe +preinsert +preinsertion +preinsinuate +preinspect +preinspector +preinspire +preinstall +preinstill +preinstruct +preinsula +preinsular +preinsulate +preinsult +preinsurance +preinsure +preintend +preintention +preintercede +preinterest +preinterfere +preinterpret +preinterrupt +preinterview +preintone +preinvent +preinvention +preinventive +preinventory +preinvest +preinvite +preinvolve +preiotize +preiro +preiser +preisig +preiss +preissen +preisser +preissing +preissuance +preissue +prejacent +prejean +prejudge +prejudged +prejudgement +prejudger +prejudgment +prejudicate +prejudicator +prejudiced +prejudicedly +prejudices +prejudicing +prejudicious +prejunior +prejustify +prejuvenile +prekantian +prekindle +preknit +preknow +preknowledge +prekopa +prelabel +prelabial +prelabor +prelabrum +prelachrymal +prelacrimal +prelacteal +prelacy +prelanguage +prelapsarian +prelate +prelatehood +prelateship +prelatess +prelatial +prelatic +prelatical +prelatically +prelation +prelatish +prelatism +prelatist +prelatize +prelatry +prelature +prelaunch +prelaunching +prelawful +prelawfully +prelazia +prelease +prelect +prelection +prelector +prelectress +prelecture +prelegacy +prelegal +prelegate +prelegatee +prelegend +prelegendary +preliability +preliable +prelibation +preliberal +preliberally +preliberate +prelicense +prelim +preliminary +prelimit +prelimitate +prelingual +prelinpinpin +preliquidate +prelisten +preliteral +preliterally +preliterary +preliterate +prelithic +prell +prelle +preload +preloaded +preloading +preloan +prelocate +prelogic +prelogical +preloral +preloreal +preloss +prelude +preluder +preludes +preludial +preludin +preludio +preludious +preludiously +preludium +preludize +prelumbar +prelusion +prelusive +prelusively +prelusorily +prelusory +preluxurious +prem +prema +premachine +premadasa +premadness +premaillac +premaintain +premake +premaker +premaking +premanhood +premaniacal +premanifest +premankind +premarital +premarriage +premarry +premastery +prematch +premate +prematerial +prematernity +premating +premature +prematurely +prematurity +premaxilla +premaxillary +premeasure +premed +premedia +premedial +premedian +premedic +premedical +premedicate +premedieval +premeditate +premeditated +premeditator +premenace +premenstrual +premention +premeridian +premerit +premetallic +premial +premiant +premiate +premidnight +premidsummer +premier +premieral +premiere +premieress +premierjus +premiers +premiership +premilitary +preminger +preminister +preministry +premious +premisal +premise +premises +premisory +premiss +premium +premiums +premix +premixer +premixture +premodel +premodern +premodify +premolar +premold +premolder +premolding +premonetary +premongolian +premonish +premonition +premonitive +premonitor +premonopoly +premonstrant +premont +premoral +premorality +premorally +premorbid +premorbidly +premorning +premorse +premortal +premortify +premortuary +premosaic +premotion +premourn +premove +premovement +premover +premuddle +premultiply +premundane +premunicipal +premunire +premunition +premunitory +premusical +premuster +premutative +premutiny +premycotic +premyelocyte +premythical +prename +prenanthes +prenares +prenarial +prenaris +prenasal +prenasalized +prenatal +prenatalist +prenatally +prenational +prenative +prenatural +prenaval +prender +prendergast +prendes +prendre +prenebular +preneglect +prenegligent +prenegotiate +preneolithic +prenephritic +preneural +preneuralgic +prenight +prenoble +prenodal +prenom +prenominal +prenominate +prenominical +prenotation +prenotice +prenotify +prenotion +prensation +prentace +prenter +prentice +prenticehall +prenticeship +prentiss +prenumber +prenumbering +prenuncial +prenuptial +prenursery +preo +preobedience +preobedient +preobject +preobjection +preobjective +preobligate +preoblige +preobserve +preobstruct +preobtain +preobtrude +preobtrusion +preobtrusive +preobviate +preobvious +preobviously +preoccipital +preocclusion +preoccupancy +preoccupant +preoccupate +preoccupied +preoccupier +preoccupies +preoccur +preoceanic +preoctober +preocular +preodorous +preoffend +preoffense +preoffensive +preoffer +preoffering +preofficial +preominate +preomission +preomit +preopen +preopening +preoperate +preoperation +preoperative +preoperator +preopercle +preopercular +preoperculum +preopinion +preoppose +preoppress +preoppressor +preoptic +preoption +preoral +preorally +preorbital +preordain +preorder +preorganic +preorganize +preoriginal +preoutfit +preoutline +preoutput +preoverthrow +prep +prepaged +prepaging +prepainful +prepalatal +prepalatine +prepanic +preparable +preparation +preparations +preparatives +preparator +prepardon +prepare +prepared +preparedly +preparedness +preparedst +preparement +preparental +preparer +prepares +preparest +prepareth +preparietal +preparing +preparingly +prepartake +prepartisan +prepartition +prepatellar +prepatent +prepatriotic +prepave +prepavement +prepay +prepayable +prepayment +prepeduncle +prepeliczay +prepend +prepended +prepending +prepenetrate +prepenial +prepense +prepensely +prepeople +preperceive +prepersuade +preperusal +preperuse +prepetition +prephragma +prepigmental +prepink +prepious +prepituitary +preplace +preplacement +preplacental +preplan +preplant +prepledge +preplot +prepnet +prepoetic +prepoetical +prepoison +prepolice +prepolish +prepolitic +prepolitical +prepollence +prepollency +prepollent +prepollex +preponder +preponderant +preponderous +prepontile +prepontine +preportray +preportrayal +prepose +prepositions +prepositive +prepositor +prepositure +prepossess +prepossessed +prepossessor +prepost +preposterous +prepotence +prepotency +prepotent +prepotential +prepotently +prepped +prepractical +prepractice +preprandial +preprice +preprimary +preprimer +preprimitive +preprint +preprinted +preprocess +preprocessed +preprocessor +preprofess +prepromise +prepromote +prepromotion +prepronounce +preprophetic +preprostatic +preprove +preprovide +preprovision +preprovoke +preprudent +preprudently +preps +prepuberal +prepubertal +prepuberty +prepubescent +prepubic +prepubis +prepublish +prepuce +prepunched +prepunctual +prepunish +prepupa +prepupal +prepurchase +prepurchaser +prepurpose +preputial +preputium +prepyloric +prepyramidal +prequalify +prequestion +prequotation +prequote +preracing +preradio +prerailroad +prerailway +preramus +prerational +prereadiness +preready +prerealize +prerebellion +prereceipt +prereceive +prereceiver +prerecital +prerecite +prereckon +prereckoning +prerecognize +prerecommend +prereconcile +prerecord +prerectal +preredeem +prereduction +prerefer +prereference +prerefine +prereform +prerefusal +prerefuse +preregal +preregister +preregulate +prereject +prerejection +prerejoice +prerelate +prerelation +prerelease +prereleased +prereligious +preremit +preremorse +preremote +preremoval +preremove +prerenal +prerent +prerental +prereport +prerepresent +prereption +prerequest +prerequire +preresemble +preresolve +preresort +prerespire +prerestrain +prerestraint +prerestrict +prereturn +prereveal +prerevenge +prereversal +prereverse +prereview +prerevise +prerevision +prerevival +prerheumatic +prerich +prerighteous +prerogatival +prerogatived +prerogatives +prerolandic +preromantic +preroute +preroutine +preroyal +preroyally +preroyalty +prerupt +preruption +pres +presacral +presacrifice +presageful +presagefully +presager +presagient +presaging +presagingly +presalvation +presanctify +presanguine +presanitary +presartorial +presatisfy +presavage +presavagery +presay +presbyacusia +presbycousis +presbycusis +presbyope +presbyopia +presbyopic +presbyopy +presbyte +presbyter +presbyteral +presbyterate +presbyteress +presbyteria +presbyterial +presbyterium +presbytery +presbytia +presbytic +presbytinae +presbytis +presbytism +prescan +prescapula +prescapular +preschool +preschools +prescience +prescient +presciently +prescind +prescindent +prescious +prescission +presco +prescored +prescott +prescout +prescribable +prescribe +prescribed +prescriber +prescribes +prescribing +prescription +prescrive +prescual +prescutal +prescutum +preseal +presearch +preseason +preseasonal +presecular +presecure +presee +preselect +preselected +preselecting +preselects +presell +preseminal +preseminary +presence +presenced +presenceless +presences +presenile +presenility +presensation +presension +present +presentable +presentably +presental +presentano +presentation +presentative +presentday +presente +presented +presentee +presentence +presenter +presential +presentially +presentient +presentiment +presenting +presentist +presentive +presentively +presently +presentment +presentness +presentor +presents +presenttm +preseparate +preseparator +preser +preservable +preserval +preservation +preservative +preservatize +preservatory +preserve +preserved +preserver +preserveress +preservers +preserves +preservest +preserveth +preserving +preses +presession +preset +presets +presetting +presettle +presexual +presgrove +preshadow +preshape +preshare +presharpen +preshelter +preship +preshipment +presho +preshortage +preshorten +preshov +preshow +preshrunk +presided +presidence +presidencia +presidency +president +presidente +presidentess +presidential +presidents +presider +presides +presidial +presidially +presidiary +presiding +presidio +presidios +presidium +presidnt +presie +presies +presift +presign +presignal +presignify +presimian +preslavery +preslavutoy +presle +presley +presliced +presmooth +presnell +presner +presnts +presocial +presocialism +presocialist +presolar +presolicit +presolution +presolvated +presolve +presophomore +presound +prespa +prespecific +prespecified +prespecify +prespective +prespeculate +presphenoid +presphygmic +prespinal +prespinous +presplendor +prespoil +prespread +presprinkle +prespur +presqueisle +press +pressable +pressacco +pressboard +pressdom +presse +pressed +pressel +presser +presses +presseth +pressfat +pressful +pressgang +pressible +pressing +pressingly +pressingness +pressings +pression +pressive +pressler +pressman +pressmanship +pressmark +pressnall +presson +pressor +presspack +pressroom +presssed +presssure +pressurage +pressural +pressure +pressured +pressureless +pressures +pressuring +pressurize +pressurized +pressurizer +presswoman +presswork +pressworker +prest +prestabilism +prestability +prestable +prestamp +prestandard +prestant +prestate +prestation +presteam +presteel +prester +presternal +presternum +presti +prestia +prestige +prestigiate +prestigiator +prestimulate +prestimulus +prestipino +prestissimo +presto +prestock +prestomial +prestomium +preston +prestonpark +prestonsburg +prestorage +prestore +prestrain +prestress +prestressed +prestretch +prestricken +prestriction +prestrud +prestruggle +prestubborn +prestudious +prestudy +prestuplenie +presubdue +presubiculum +presubject +presubmit +presubscribe +presubsist +presuccess +presuffer +presuffering +presuffrage +presuggest +presuitable +presuitably +presumable +presumably +presume +presumed +presumedly +presumer +presumes +presuming +presumption +presumptions +presumptious +presumptuous +presupervise +presupply +presupport +presupposal +presupposed +presupposes +presupposing +presuppress +presupremacy +presupreme +presurgery +presurgical +presurmise +presurprisal +presurprise +presurrender +presurround +presurvey +presuspect +presuspend +presuspicion +presustain +presutti +presutural +preswallow +presylvian +presympathy +presymphonic +presymphony +presymptom +presynapsis +presynaptic +presystole +presystolic +pret +preta +pretabulate +pretan +pretangible +pretangibly +pretannage +pretardily +pretardiness +pretardy +pretariff +pretaste +prete +preteach +pretechnical +pretelegraph +pretelephone +pretell +pretemperate +pretemporal +pretence +pretend +pretendant +pretended +pretendedly +pretender +pretenderism +pretenders +pretending +pretendingly +pretends +pretenduyt +pretense +pretenseful +pretenseless +pretenses +pretensional +pretensions +pretensive +pretensively +pretentative +pretentions +pretentious +pretercanine +preterequine +pretergress +preterhuman +preterience +preterient +preterist +preterit +preterition +preteritive +preteritness +preterlabent +preterlegal +preterlethal +preterminal +pretermit +pretermitter +preternative +preternormal +preterroyal +pretest +pretestify +pretestimony +pretesting +pretests +pretext +pretexted +pretexts +pretextuous +prethoracic +prethreaten +prethrill +prethrust +pretibial +pretimely +pretincture +pretire +preto +pretoken +pretone +pretonic +pretoria +pretorial +pretorious +pretorius +pretorship +pretorsional +pretorture +pretrace +pretracheal +pretrain +pretraining +pretransact +pretranslate +pretransmit +pretransport +pretravel +pretre +pretreat +pretreatment +pretreaty +pretrematic +pretribal +pretry +prettier +prettiest +prettifier +prettify +prettikin +prettily +prettiness +pretty +prettyface +prettyhead +prettyish +prettyism +prettyprint +pretympanic +pretyphoid +pretypify +pretyranny +pretzel +pretzels +preultimate +preumbonal +preundertake +preunion +preunite +preuss +preussler +preutilize +prev +prevacate +prevacation +prevaccinate +prevail +prevailance +prevailed +prevailer +prevailest +prevaileth +prevailing +prevailingly +prevailment +prevails +prevalence +prevalency +prevalent +prevalently +prevalescent +prevalid +prevalidity +prevalidly +prevaluation +prevalue +prevariation +prevaricate +prevaricator +prevascular +prevatt +prevelar +prevenance +prevenancy +prevene +prevenience +prevenient +preveniently +prevent +preventable +preventably +preventative +prevented +preventer +preventers +preventest +preventible +preventing +preventingly +prevention +preventive +preventively +preventives +preventorium +prevents +preventure +preverb +preverbal +preverify +prevernal +preversion +prevertebral +prevesical +preveto +preveza +previde +previdence +preview +previewed +previewing +previews +previgilance +previgilant +preville +previn +previolate +previolation +previous +previously +previousness +previse +previsible +previsibly +prevision +previsional +previsit +previsitor +previsive +previsor +prevocal +prevocalic +prevocally +prevogue +prevoid +prevoidance +prevolunteer +prevomer +prevost +prevotal +prevote +prevoyance +prevoyant +prevue +prew +prewar +prewarn +prewarrant +prewash +preweigh +prewelcome +prewett +prewhip +prewhitening +prewilling +prewillingly +prewire +prewireless +prewitness +prewitt +prewonder +preworldly +preworship +preworthily +preworthy +prewound +prewrap +prex +prexes +prey +preyed +preyer +preyful +preying +preyingly +preyouthful +preypredator +preys +preysing +preziosa +prezonal +prezone +prezydenta +prezygomatic +prfer +prgramms +priacanthid +priacanthine +priacanthus +priam +priamus +priangan +priapean +priapic +priapism +priapulacea +priapulid +priapulida +priapulidae +priapuloid +priapuloidea +priapulus +priapus +priapusian +pribilof +pribilofs +pribluda +price +priceable +priceably +priced +pricedale +priceis +priceite +priceless +pricer +pricers +prices +pricesfrom +prich +prichard +prichem +prichiom +pricing +prick +prickant +pricked +pricker +pricket +prickett +prickfoot +pricking +prickingly +prickish +prickleback +prickled +pricklefish +prickless +prickliness +prickling +pricklingly +pricklouse +prickly +pricklyback +prickmadam +prickproof +pricks +prickseam +prickshot +prickspur +pricktimber +prickwood +pricky +priddy +pride +prideaux +prided +prideful +pridefully +pridefulness +prideless +pridelessly +prideling +prides +prideweed +pridgen +pridian +priding +pridingly +pridumal +pridy +pried +priede +priedesh +priedu +priegnitz +priego +priehal +priehali +prien +prier +prieska +priest +priestal +priestcap +priestcraft +priestdom +priesteen +priestery +priestess +priestfish +priesthood +priestianity +priestish +priestism +priestless +priestlet +priestley +priestlike +priestliness +priestling +priestly +priestridden +priestriver +priests +priestship +priestshire +prieto +prietoy +prieur +priezdjay +priezhali +priezjay +priezzhev +prigatano +prigdom +prigger +priggery +priggess +priggishly +priggishness +priggism +prighood +priglashenia +priglasit +prigman +prihodyat +prihoju +prijeki +prikalivaet +prikkel +prikol +prikoli +prikolist +prikolnie +prikolno +prikolotsa +prikolov +prikopa +prikro +prilep +prilichno +prilip +prilipaet +prill +prillion +prim +prima +primage +primal +primalist +primality +primar +primarian +primaried +primaries +primarily +primariness +primary +primasoft +primatal +primate +primates +primateship +primatial +primatic +primatical +primavera +primaveral +prime +primea +primeau +primeb +primed +primegilt +primeira +primely +primeness +primer +primerin +primero +primerole +primers +primes +primevalism +primevally +primeverose +primevity +primevous +primevrin +primghar +primi +primianist +primigene +primigenial +primigenian +primigenious +primigenous +primigravida +primine +priming +primipara +primiparity +primiparous +primipilar +primitiae +primitial +primitias +primitive +primitively +primitives +primitivist +primitivity +primitivo +primly +primmi +primmsprings +primness +primo +primogenesis +primogenial +primogenital +primogenitor +primogenous +primoprime +primordality +primordia +primordially +primordiate +primordinate +primordium +primosity +primost +primrosed +primrosetide +primrosetime +primrosy +primsie +primula +primulaceae +primulaceous +primulales +primulaverin +primulic +primuline +primulinus +primus +primwort +primy +prin +prince +princeage +princecraft +princedom +princegeorge +princehood +princeite +princekin +princeless +princelet +princelike +princeliness +princeling +princely +princeps +princes +princesa +princeship +princess +princessa +princessanne +princessdom +princesse +princesses +princesslike +princessly +princeton +princetonia +princeville +princewick +princewood +princified +princify +princip +principal +principality +principally +principals +principate +principe +principes +principia +principiant +principiate +principium +principle +principled +principles +principly +principulus +princock +princox +prine +prineville +pringle +prinicipally +prinimay +prink +prinker +prinkle +prinky +prinos +prins +prinsburg +prinsloo +print +printability +printable +printably +printc +printed +printemps +printer +printerdom +printerlike +printers +printery +printf +printing +printit +printless +printline +printout +printouts +prints +printscreen +printscript +printsupport +printworks +prinz +prio +priobrel +priodon +priodont +priodontes +prion +prionezh +prionid +prionidae +prioninae +prionine +prionodon +prionodont +prionopinae +prionopine +prionops +prionus +prior +prioracy +prioral +priorate +priore +prioress +prioristic +priorite +priorities +prioritize +prioritized +prioritizer +priority +priorlake +priorly +priors +priorship +priory +pris +prisable +prisage +prisal +prisca +priscan +priscella +priscian +priscianist +priscilla +priscillian +prised +prishiol +prishlesh +prishli +prisioneros +priska +prislal +prism +prisma +prismal +prismatical +prismatize +prismatoid +prismatoidal +prismed +prismoid +prismoidal +prisms +prismy +prisometer +prison +prisonable +prisondom +prisoner +prisoneros +prisoners +prisonful +prisonlike +prisonment +prisonniers +prisonous +prisons +priss +prissie +prissily +prissiness +prissy +pristane +pristis +pristo +pristodus +pritch +pritchard +pritchardia +pritchel +pritchett +priteeprint +prithee +prithyi +priti +pritikin +pritsker +prittle +pritulak +priturize +prity +priulian +prius +priv +priva +privacies +privacity +privacy +prival +privant +privat +private +privateer +privateering +privateexe +privatefile +privately +privateness +privater +privates +privation +privations +privative +privatively +privatize +privatized +privee +privelaged +privelages +privett +privies +privilaged +priviledge +privilege +privileged +privileger +privileges +priviliged +privily +priviness +privitera +privity +privs +privy +prixunis +priya +prizable +prize +prizeable +prized +prizefight +prizefighter +prizeholder +prizeman +prizer +prizers +prizery +prizes +prizetaker +prizewinner +prizeworthy +prizing +prizzi +prlnsc +prndrv +prnet +prnounced +prnticehall +proa +proacademic +proach +proacquittal +proaction +proactive +proactively +proactor +proaddition +proadmission +proadoption +proaesthetic +proagitation +proagrarian +proagreement +proagule +proairesis +proairplane +proal +proalien +proalliance +proallotment +proamateur +proambient +proamendment +proamnion +proamniotic +proamusement +proanaphora +proanaphoral +proanarchic +proanimistic +proantarctic +proanthropos +proapostolic +proapproval +proaquatic +proaquino +proarchery +proarctic +proarmy +proarthri +proatheist +proatheistic +proathletic +proatlas +proattack +proauction +proaudience +proaulion +proauthor +proauthority +proavian +proaviation +proavis +proaward +prob +probabilism +probability +probabilize +probabilty +probabl +probable +probableness +probably +probachelor +probal +proballoon +probaly +probang +probant +probaseball +probated +probates +probathing +probatical +probating +probation +probational +probationary +probationer +probationism +probationist +probative +probatively +probator +probatory +probattle +probe +probeable +probed +probeer +probeport +prober +probert +proberta +probes +probetting +probew +probey +probing +probings +probiology +probit +probitas +problably +problem +problematic +problematist +problematize +problemdom +problemist +problemistic +problemize +problems +problemwise +problm +problmens +problockade +proboard +probonding +probonus +proborrowing +proboscatory +proboscidal +proboscidate +proboscidea +proboscidean +proboscides +proboscidial +proboscidian +probosciform +probosciger +proboscis +probosz +probouleutic +proboulevard +proboval +probowling +proboxing +proboycott +probrick +probridge +probs +probudget +probudgeting +probuilding +probur +probusiness +probuying +proc +procaccino +procaccio +procacious +procaciously +procacity +procalc +procambial +procambium +procanal +procapital +procarnival +procarp +procarpium +procarrier +procatarctic +procatarxis +procathedral +procavia +procaviidae +procca +proccess +procedendo +procedes +procedural +procedurally +procedure +procedured +procedurefor +procedures +proceduring +proceed +proceeded +proceeder +proceedeth +proceeding +proceedings +proceeds +procellaria +procellarian +procellarid +procellas +procello +procellose +procellous +procensure +procephalic +procercoid +procereal +procerebral +procerebrum +proceres +procerite +proceritic +procerity +procerus +procesi +process +processal +processed +processes +processing +procession +processional +processioner +processions +processive +processor +processors +processspawn +processual +procfs +procharity +prochazka +prochein +prochemical +prochinese +prochital +prochlorite +prochnow +prochondral +prochoos +prochordal +prochorion +prochorionic +prochorus +prochronic +prochronism +prochronize +prochurch +prochurchian +prochvitz +procidence +procident +procidentia +procious +procivic +procivilian +procivism +proclaim +proclaimable +proclaimant +proclaimed +proclaimer +proclaimers +proclaimeth +proclaiming +proclaims +proclamation +proclamator +proclamatory +proclassic +proclassical +proclergy +proclerical +procline +proclisis +proclitic +proclive +proclivities +proclivitous +proclivous +procne +procnemial +procner +procoelia +procoelian +procoelous +procoercive +procoffset +procol +procom +procombat +procomedy +procomment +procommittee +procommunal +procommunism +procommunist +proconnesian +proconquest +proconsul +proconsular +proconsulary +proconsulate +procoracoid +procosmetic +procotols +procotton +procourt +procreant +procreation +procreative +procreator +procreatory +procreatress +procreatrix +procremation +procris +procritic +procritique +procrypsis +procryptic +procs +proctal +proctalgia +proctalgy +proctatresia +proctatresy +proctectasia +proctectomy +procter +proctitis +procto +proctocele +proctoclysis +proctodaeal +proctodaeum +proctodynia +proctologic +proctologist +proctology +proctoplasty +proctoplegia +proctoptoma +proctoptosis +proctorage +proctoral +proctorial +proctorially +proctorical +proctorize +proctorling +proctorrhea +proctorship +proctorville +proctoscope +proctoscopic +proctoscopy +proctospasm +proctostomy +proctotome +proctotomy +proctotresia +proctotrypid +procuba +procuban +proculian +procumbent +procurable +procuracy +procural +procurals +procurance +procurate +procuration +procurative +procurator +procuratory +procuratrix +procure +procured +procurement +procurements +procurer +procurers +procures +procuress +procureth +procureur +procuring +procurrent +procursive +procurvation +procurved +procyon +procyonidae +procyoniform +procyoninae +procyonine +proczarist +prod +prodali +prodatary +prodcrops +prodded +prodder +prodding +proddle +prodefault +prodefiance +prodelay +prodelision +prodelphi +prodemocracy +prodenia +prodentine +proderjalsya +prodespotic +prodespotism +prodhomme +prodialogue +prodigal +prodigalish +prodigalism +prodigality +prodigalize +prodigally +prodigence +prodigiosity +prodigiously +prodigus +prodigy +prodisplay +prodition +proditorious +prodivision +prodivorce +prodmfg +prodmgmt +prodolzhay +prodproof +prodramatic +prodroma +prodromal +prodromatic +prodrome +prodromic +prodromos +prodromous +prodromus +produc +producal +produce +produceable +produced +producent +producer +producers +producership +produces +producing +product +producted +productible +productid +productidae +productile +production +productional +productions +productive +productively +productivity +productoid +productor +productory +productress +products +productsm +producttype +productus +produkshon +proebali +proeconomy +proeducation +proegumenal +proelectric +proem +proembryo +proembryonic +proemial +proemium +proemployee +proemptosis +proenzym +proenzyme +proepimeron +proequality +proethical +proethnic +proetid +proetidae +proetus +proevolution +proexecutive +proexemption +proexercise +proexpert +proexporting +proexposure +proextension +proezjayut +prof +profaculty +profanable +profanably +profanation +profanatory +profanchise +profane +profaned +profanely +profanement +profaneness +profaner +profaneth +profaning +profanism +profanity +profanize +profarmer +profection +profectional +profeminism +profeminist +proferment +proferred +profert +profesional +profess +professable +professed +professedly +professes +professeur +professing +profession +professional +professions +professive +professively +professor +professorate +professordom +professoress +professors +professory +profeta +proffer +proffered +profferer +proffering +proffers +proffit +proficience +proficiency +proficient +proficiently +profiction +proficuous +proficuously +profile +profilecopy +profiled +profiler +profiles +profiling +profilist +profilograph +profit +profitable +profitably +profited +profiteering +profiteers +profiter +profiteth +profiting +profitless +profitlessly +profitmonger +profitproof +profits +profitted +profitter +profitters +proflated +proflavine +profligacy +profligate +profligately +profligation +proflogger +profluence +profluent +profluvious +profluvium +proforeign +profound +profoundest +profoundly +profoundness +profugate +profulgent +profunda +profusely +profuseness +profusion +profusive +profusively +prog +progambling +progamete +progamic +progamme +progams +proganosaur +progenerate +progenies +progenital +progenitive +progenitors +progenitress +progenitrix +progeniture +progenity +progeny +progeotropic +progeria +progesterone +progestin +progger +proggie +proggies +proggy +proglet +proglottic +proglottid +proglottis +progman +prognathi +prognathic +prognathism +prognathous +prognathy +progne +prognose +prognostic +progon +progoneate +progospel +program +programable +programas +programing +programist +programistic +programki +programm +programma +programmable +programmar +programmatic +programme +programmed +programmer +programmers +programmerto +programmes +programmi +programming +programmng +programms +programmu +programs +programsfor +programthat +programz +progrede +progrediency +progredient +progreso +progress +progressed +progresser +progresses +progressing +progression +progressions +progressism +progressist +progressive +progresso +progressor +progs +proguardian +progymnasium +progypsy +progz +prohack +prohaska +prohaste +prohelp +prohibit +prohibited +prohibiter +prohibiting +prohibition +prohibitions +prohibitive +prohibitor +prohibits +prohic +prohod +prohodili +proholiday +prohorenko +prohostility +prohuman +proie +proietti +proimmunity +proinclusion +proincrease +proindemnity +proinquiry +proinsias +proinsurance +proiraqi +proishodit +projacient +project +projectable +projected +projectedly +projectile +projecting +projectingly +projection +projectional +projections +projective +projectively +projectivity +projectmt +projector +projectors +projectress +projectrix +projects +projecture +projetr +projicience +projicient +projiciently +projil +projitochnii +projofc +projudicial +proke +prokeimenon +proker +prokes +prokey +prokhor +proklausis +proklova +prokne +prokofjev +prokon +prokop +prokopenko +prokoszny +prolabium +prolabor +prolacrosse +prolactin +prolamin +prolan +prolapse +prolapsus +prolarva +prolarval +prolately +prolateness +prolation +prolative +prolatively +prole +proleague +proleaguer +prolection +prolectite +proleg +prolegate +prolegomenal +prolegomenon +prolejal +proleniency +prolepsis +proleptic +proleptical +proleptics +proletaire +proletairism +proletarian +proletarize +proletary +proletcult +proletti +proleucocyte +proleukocyte +prolicense +prolicidal +prolicide +proliferant +proliferated +proliferates +proliferous +prolificacy +prolifical +prolifically +prolificate +prolificity +prolificly +prolificness +prolificy +prolify +proligerous +proliotom +proliquor +proliterary +proliturgist +prolixity +prolixly +prolixness +prolocution +prolocutor +prolocutress +prolocutrix +prolog +prologist +prologize +prologizer +prologos +prologuelike +prologuer +prologuist +prologuize +prologuizer +prologus +prolong +prolongable +prolongably +prolongation +prolonge +prolonged +prolonger +prolongeth +prolonging +prolongment +prolongs +prolusionize +prolusory +prolyl +prom +promachinery +promachos +promajority +promammal +promammalia +promammalian +promarriage +promaximum +promemorial +promenade +promenaded +promenader +promenades +promercy +promerger +promeristem +promerit +promeritor +promethea +prometheus +prometida +promic +promilitary +prominare +prominence +prominency +prominent +prominently +prominimum +proministry +prominority +promisable +promiscuity +promiscuous +promise +promisecity +promised +promisedst +promisee +promiseful +promiseless +promiseproof +promiser +promises +promising +promisingly +promisor +promissive +promissor +promissorily +promissory +promitosis +promittor +promnesia +promo +promodernist +promokhov +promonarchic +promonopoly +promontoried +promontories +promontory +promoral +promorph +promoscow +promotable +promote +promoted +promotement +promoter +promoters +promotes +promoteth +promoting +promotion +promotional +promotions +promotive +promotor +promotorial +promotress +promotrix +promoution +promovable +promovent +prompt +promptbook +prompted +prompter +promptest +prompting +promptings +promptive +promptly +promptness +prompton +promptress +prompts +promptuary +prompture +proms +promsin +promt +promulgated +promulgates +promulgating +promulgation +promulgator +promulgatory +promulge +promulger +promuscidate +promuscis +promycelial +promycelium +promythic +pronaos +pronate +pronation +pronational +pronative +pronator +pronaval +pronavy +prone +pronegro +pronegroism +pronely +proneness +pronephric +pronephron +pronephros +proner +proneur +pronews +prongbuck +pronged +pronger +pronghead +pronghorn +pronglike +prongs +pronic +prono +pronograde +pronomial +pronominal +pronominally +pronoriega +pronotal +pronotum +pronoun +pronounal +pronounce +pronounced +pronouncedly +pronouncer +pronounces +pronouncing +pronouns +pronpl +pronto +pronuba +pronubial +pronuclear +pronucleus +pronumber +pronunciable +pronuncial +pronunciator +pronuncio +pronymph +pronymphal +proo +prooemiac +prooemion +prooemium +proof +proofer +proofful +proofing +proofless +prooflessly +proofness +proofreader +proofreading +proofroom +proofs +proofy +prop +propack +propadiene +propaedeutic +propagable +propagand +propaganda +propagandic +propagandism +propagandize +propagate +propagated +propagates +propagating +propagation +propagations +propagative +propagator +propagatory +propagatress +propago +propagulum +propale +propalinal +propanol +propanone +propapist +proparasceve +propargyl +propargylic +proparia +proparian +propashtshiy +propatagial +propatagian +propatagium +propatriotic +propatronage +propayment +propel +propellable +propellent +propeller +propellers +propelling +propelment +propels +propend +propendency +propendent +propene +propenoic +propense +propensely +propenseness +propension +propensitude +propenyl +propenylic +proper +properispome +properly +properness +propertied +properties +propertiesof +property +propertyless +propertyship +propertyyou +propes +propessimism +propessimist +prophase +prophasis +prophater +prophecies +prophecy +prophesiable +prophesied +prophesier +prophesies +prophesieth +prophesy +prophesying +prophesyings +prophet +prophetess +prophethood +prophetical +propheticism +propheticly +prophetism +prophetize +prophetless +prophetlike +prophetry +prophets +prophetship +prophetstown +prophloem +prophoric +prophylaxis +prophylaxy +prophyll +prophyllum +propietary +propination +propine +propinoic +propinquant +propinque +propinquity +propinquous +propinsi +propiolate +propiolic +propione +propionic +propionitril +propionyl +propithecus +propitiable +propitial +propitiation +propitiative +propitiator +propitiatory +propitiously +proplasm +proplasma +proplastic +propless +propleural +propleuron +proplex +proplexus +propman +propodeal +propodeon +propodeum +propodial +propodiale +propodite +propoditic +propodium +propolis +propolitical +propolize +propone +proponement +proponent +proponents +proponer +propons +propontic +propooling +propopery +proportion +proportional +proportioned +proportioner +proportions +proposable +proposal +proposals +proposant +propose +proposed +proposer +proposes +proposing +proposition +propositions +propositus +propounded +propounder +propounding +propoundment +propounds +propoxy +proppage +propped +propper +propping +propraetor +propranolol +proprecedent +propriation +proprietage +proprietary +proprietors +proprietory +proprietous +proprietress +proprietrix +proprium +proprivilege +proproctor +proprofit +proprogated +proprovost +props +propterygial +propterygium +proptosed +proptosis +propublicity +propugn +propugnacled +propugnation +propugnator +propugner +propulsation +propulsatory +propulsion +propulsions +propulsity +propulsive +propulsor +propulsory +propupa +propupal +propurchase +propus +propwood +propygidium +propylacetic +propylactic +propylaeum +propylamine +propylation +propylic +propylidene +propylite +propylitic +propylon +propyne +propynoic +proquaestor +proracing +prorailroad +prorata +proratable +prorated +prorates +proration +prore +proreader +prorealism +prorealist +prorealistic +proreality +prorean +prorebate +prorebel +prorecall +prorector +prorectorate +proreduction +proreform +proreformist +proregent +prorelease +proreptilia +proreptilian +proreption +proresearch +prorevision +prorhinal +proritual +prorogate +prorogation +prorogator +proroguer +prorok +proromance +proromantic +proroyal +proroyalty +prorrhesis +prorsad +prorsal +proruption +pros +prosabbath +prosacral +prosaical +prosaically +prosaicism +prosaicness +prosaism +prosaist +prosar +prosarthri +prosateur +proscan +proscapula +proscapular +proschan +proschool +proscolecine +proscolex +proscribable +proscribed +proscriber +proscript +proscriptive +proscutellar +proscutellum +proscynemata +prose +prosecrecy +prosecretin +prosect +prosection +prosector +prosectorial +prosectorium +prosecutable +prosecute +prosecuted +prosecutes +prosecuting +prosecution +prosecutions +prosecutors +prosecutrix +prosel +proselenic +proselike +proselyte +proselyter +proselytes +proselytical +proselytism +proselytist +proselytize +proselytized +proselytizer +proselytizes +proseman +proseminar +proseminary +proseminate +prosenchyma +proseneschal +proser +proserpina +proserpinaca +prosethmoid +proseucha +proseuche +proshaite +proshe +proshlii +proshlom +prosi +prosidel +prosifier +prosify +prosil +prosiliency +prosilient +prosiliently +prosilverite +prosily +prosimiae +prosimian +prosiness +prosing +prosingly +prosiphon +prosiphonal +prosiphonate +prosise +prosish +prosist +prosjhlogo +proskurin +prosky +proslave +proslaver +proslavery +proslier +prosner +prosneusis +proso +prosobranch +prosocele +prosodal +prosode +prosodemic +prosodetic +prosodiac +prosodiacal +prosodial +prosodially +prosodian +prosodical +prosodically +prosodics +prosodion +prosodist +prosodus +prosogaster +prosogyrate +prosogyrous +prosoma +prosomal +prosomatic +prosonomasia +prosopalgia +prosopalgic +prosophist +prosopic +prosopically +prosopis +prosopite +prosopium +prosoplasia +prosopon +prosopospasm +prosopotocia +prosopyl +prosopyle +prosorus +prosoviet +prospect +prospected +prospecthill +prospecting +prospection +prospections +prospective +prospectives +prospectless +prospector +prospectors +prospectpark +prospects +prosper +prosperation +prospered +prospereth +prosperi +prospering +prosperity +prospero +prosperous +prosperously +prospers +prosperus +prospicience +prosport +pross +prossant +prossecute +prosser +prossitt +prossy +prost +prostar +prostatauxe +prostate +prostatic +prostatism +prostatitic +prostatitis +prostatolith +prostatotomy +prostemmate +prostemmatic +prosternal +prosternate +prosternum +prostheca +prosthenic +prostheses +prosthesis +prosthetics +prosthetist +prosthion +prosthionic +prostigmin +prostitute +prostitutely +prostitutes +prostitution +prostitutor +prosto +prostomial +prostomiate +prostomium +prostoy +prostrate +prostration +prostrative +prostrator +prostrike +prostyle +prostylos +prosuffrage +prosupport +prosurgical +prosurrender +prosverlim +prosy +prosyk +prosyllogism +prot +protacio +protactic +protagon +protagonism +protagonist +protagonists +protagorean +protalbumose +protamine +protandric +protandrism +protandrous +protandry +protanomal +protanope +protanopia +protanopic +protargentum +protargin +protargol +protariff +protarsal +protarsus +protasis +protaspis +protatic +protatically +protax +protaxation +protaxial +protaxis +prote +protea +proteaceae +proteaceous +protead +proteanly +proteanwise +protechnical +protect +protectant +protected +protecteur +protectible +protecting +protectingly +protection +protectional +protections +protective +protectively +protectons +protector +protectoral +protectorial +protectorian +protectors +protectory +protectress +protectrix +protects +protecttheir +protege +protegee +proteges +protegulum +proteic +proteida +proteidae +proteide +proteidean +proteiform +protein +proteinase +proteinic +proteinous +proteins +proteinuria +proteles +protelidae +protem +protend +protension +protensity +protensive +protensively +proteogenous +proteon +proteopectic +proteopexic +proteopexis +proteopexy +proteosaurid +proteosaurus +proteose +proteosoma +proteosomal +proteosome +proteosuria +proterandry +proterobase +proteroglyph +proterogyny +proterotype +proterozoic +protervity +protesilaos +protest +protestable +protestancy +protestante +protestantly +protestants +protestator +protestatory +protested +protester +protesters +protesting +protestingly +protestive +protestor +protestors +protests +protetrarch +proteus +protevangel +protext +prothalamia +prothalamion +prothalamium +prothallia +prothallial +prothallic +prothalline +prothallium +prothalloid +prothallus +protheca +prothesis +prothetic +prothetical +prothin +prothon +prothoracic +prothorax +prothrift +prothrombin +prothyl +prothysteron +protide +protingla +protiodide +protist +protista +protistan +protistic +protistology +protiston +protium +protivin +proto +protoascales +protobacco +protobasidii +protobishop +protoblast +protoblastic +protocalcium +protocaris +protocaseose +protoceras +protocercal +protochemist +protochorda +protocitizen +protoclastic +protocneme +protococcal +protococcoid +protococcus +protocol +protocolar +protocolary +protocolist +protocolize +protocols +protoconch +protoconchal +protocone +protoconid +protoconule +protoconulid +protocopper +protocorm +protodeacon +protoderm +protodevil +protodonata +protodonatan +protodonate +protodont +protodonta +protogaster +protogenal +protogeneia +protogenes +protogenesis +protogenetic +protogenic +protogenist +protogine +protogod +protogonous +protogospel +protograph +protogynous +protogyny +protohacker +protohippus +protohistory +protohomo +protohuman +protohydra +protoiron +protokoll +protolaba +protolithic +protolog +protologist +protoloph +protoma +protomagnate +protomala +protomalal +protomalar +protomammal +protomartyr +protome +protomerite +protomeritic +protometal +protomorph +protomorphic +protonated +protone +protonegroid +protonema +protonemal +protonematal +protoneme +protonephros +protoneuron +protoneurone +protonic +protonickel +protonitrate +protonotater +protonotion +protonotions +protonovo +protons +protonym +protonymph +protonymphal +protopapas +protopappas +protoparent +protopathia +protopathic +protopathy +protopattern +protopectin +protopepsia +protophloem +protophyll +protophyte +protophytic +protopin +protopine +protoplasma +protoplasmal +protoplasmic +protoplast +protoplastic +protopod +protopodial +protopodite +protopoditic +protopoetic +protopope +protoprism +protopteran +protopterous +protopterus +protopyramid +protore +protorebel +protorosaur +protosalt +protosaurian +protosilicon +protosinner +protosiphon +protosocial +protospasm +protospore +protostega +protostele +protostelic +protostome +prototaxites +prototheca +protothecal +prototheme +protothere +prototheria +prototherian +prototraitor +prototroch +prototrochal +prototrophic +prototypal +prototype +prototyped +prototypes +prototypical +prototyping +prototyrant +protourize +protoview +protovillain +protovum +protoxide +protoxylem +protoypes +protozoa +protozoacide +protozoal +protozoea +protozoean +protozoiasis +protozoic +protozoology +protozoon +protozoonal +protracheata +protracheate +protracted +protractedly +protracter +protractible +protractile +protraction +protractive +protractor +protrade +protradition +protragedy +protragical +protragie +protransfer +protravel +protreasurer +protreaty +protremata +protreptic +protreptical +protriaene +protropical +protrudable +protruded +protrudent +protrudes +protruding +protrusible +protrusile +protrusions +protrusively +prottagonist +protter +protuberance +protuberancy +protuberate +protuberous +protura +proturan +protutor +protutory +protyl +protyle +protylopus +protype +proud +proudcrested +prouder +proudest +proudfoot +proudful +proudhearted +proudish +proudishly +proudling +proudly +proudness +proue +prouheze +proulx +prounion +prounionist +proustite +prout +prouty +prov +prova +provability +provable +provableness +provably +provaccinist +proval +provand +provant +provascular +provdes +prove +provect +provection +proved +proveditor +provedly +provedor +provedore +proveli +proven +provenc +provencal +provencale +provencalize +provence +provencher +provencial +provender +provenience +provenient +provenly +provenzale +prover +proverb +proverbal +proverbial +proverbially +proverbic +proverbize +proverblike +proverbs +proveriu +provers +proves +proveth +provicar +provicariate +providable +providance +provide +provided +providence +providencia +providential +providently +provider +providers +provides +providesa +provideth +providing +providore +providoring +province +provinces +provincetown +provincia +provinciale +provincially +provincias +provinciate +provincie +provincien +provinculum +provine +proving +provingly +proviseur +provision +provisional +provisionary +provisioned +provisioner +provisioning +provisions +provisive +provisor +provisorily +provisorship +provisory +provisos +provitamin +provo +provocant +provocation +provocations +provocative +provocator +provocatory +provokable +provoke +provoked +provokedst +provokee +provoker +provokes +provoketh +provoking +provokingly +provolone +provoost +provoquant +provostal +provostess +provostorial +provostry +provostship +prowar +prowarden +prowed +prowersite +prowess +prowessed +prowessful +prowest +prowisk +prowl +prowled +prowler +prowlers +prowling +prowlingly +prows +prowse +proxenet +proxenete +proxenetism +proxenos +proxenus +proxeny +proxically +proxies +proximad +proximally +proximately +proximation +proximities +proximity +proximo +proxium +proxy +proxyship +proxysm +proyasni +proyasnili +prozac +prozentsatz +prozesky +prozessor +prozip +prozone +prozoning +prozor +prozoroff +prozymite +prpb +prpnet +prsc +prsl +prtc +prto +prtrfix +prtsc +prtvtoc +prucha +pruckner +prucnal +prucnalova +prud +prude +prudelike +prudely +pruden +prudence +prudencia +prudent +prudentia +prudentially +prudently +prudenville +prudery +prudhoe +prudi +prudish +prudishly +prudishness +prudist +prudity +prudy +prue +pruechner +prueckner +pruett +prufrock +prugu +pruh +pruina +pruinate +pruinescence +pruinose +pruinous +pruit +pruitt +prulaurasin +prum +prunable +prunableness +prunably +prunaceae +prunase +prunasin +prune +pruned +prunell +prunella +prunelle +prunellidae +prunello +pruner +pruners +prunes +prunetin +prunetol +prunier +pruniferous +pruniform +pruning +pruninghooks +prunitrin +prunt +prunted +prunus +prupis +prurience +pruriency +pruriently +pruriginous +prurigo +pruriousness +pruritic +pruritus +prusiano +prussel +prussia +prussian +prussianism +prussianize +prussianizer +prussiate +prussic +prussify +prut +prutah +pruzansky +prvious +prvniho +pryam +pryamo +prybyla +pryce +prydain +pryer +prying +pryingly +pryingness +pryler +pryllida +prymack +prymno +prymus +pryor +pryproof +prys +pryse +prystie +pryszlak +prytaneum +prytanis +prytanize +prytany +przemysl +przewlocki +przybycien +przybylinski +psalis +psalm +psalmic +psalmist +psalmister +psalmistry +psalmless +psalmodial +psalmodic +psalmodical +psalmodist +psalmodize +psalmody +psalmograph +psalmography +psalms +psalmsthey +psalmy +psaloid +psalterial +psalterian +psalteries +psalterion +psalterist +psalterium +psaltery +psaltes +psaltress +psaltry +psammite +psammitic +psammocharid +psammogenous +psammolithic +psammologist +psammology +psammoma +psammophile +psammophis +psammophyte +psammophytic +psammous +psaronius +psch +pschent +pscxmp +psdb +psdi +psds +psdsnfnc +psect +psects +psedera +pseek +pselaphidae +pselaphus +psellism +psellismus +psend +psephism +psephisma +psephite +psephitic +psephomancy +psephurus +psetta +pseudaconine +pseudacusis +pseudamphora +pseudandry +pseudangina +pseudaphia +pseudapostle +pseudataxic +pseudatoll +pseudaxine +pseudaxis +pseudechis +pseudelminth +pseudelytron +pseudembryo +pseudhemal +pseudimago +pseudo +pseudoacid +pseudoalum +pseudoanemia +pseudoanemic +pseudoangina +pseudoataxia +pseudobayes +pseudobest +pseudobinary +pseudobranch +pseudobulb +pseudobulbar +pseudobulbil +pseudocandid +pseudocarp +pseudocele +pseudocelian +pseudocelic +pseudocellus +pseudoceryl +pseudochina +pseudococcus +pseudoconcha +pseudocone +pseudocortex +pseudocosta +pseudocroup +pseudocubic +pseudocumene +pseudocumyl +pseudocyesis +pseudocyst +pseudoderm +pseudodermic +pseudodevice +pseudodont +pseudodown +pseudodox +pseudodoxal +pseudodoxy +pseudoedema +pseudoembryo +pseudoerotic +pseudofamous +pseudofarcy +pseudofever +pseudofiles +pseudofinal +pseudoform +pseudofossil +pseudogalena +pseudogaster +pseudogenus +pseudogerman +pseudogeusia +pseudoglioma +pseudograph +pseudography +pseudogyne +pseudogynous +pseudogyny +pseudogyrate +pseudohemal +pseudoheroic +pseudohuman +pseudoinsane +pseudoisatin +pseudoism +pseudoisomer +pseudolabial +pseudolabium +pseudolalia +pseudolarix +pseudolatry +pseudolegal +pseudolichen +pseudolobar +pseudologist +pseudologue +pseudology +pseudolokele +pseudolunule +pseudolus +pseudomancy +pseudomania +pseudomaniac +pseudomantic +pseudomer +pseudomeric +pseudomerism +pseudomery +pseudomica +pseudomnesia +pseudomodern +pseudomodest +pseudomonas +pseudomoral +pseudomorph +pseudomorula +pseudomucin +pseudomucoid +pseudonym +pseudonymal +pseudonymic +pseudonymity +pseudonymous +pseudonyms +pseudonymy +pseudoop +pseudopeziza +pseudopious +pseudoplasm +pseudoplasma +pseudopod +pseudopodal +pseudopodia +pseudopodial +pseudopodian +pseudopodium +pseudopoetic +pseudopore +pseudoprime +pseudopsia +pseudoptics +pseudoptosis +pseudopupa +pseudopupal +pseudoquinol +pseudorabies +pseudoramose +pseudorandom +pseudoregal +pseudorganic +pseudorunic +pseudosacred +pseudosalt +pseudoscarus +pseudoscines +pseudoscope +pseudoscopic +pseudoscopy +pseudoscutum +pseudoskink +pseudosmia +pseudosocial +pseudosoph +pseudosopher +pseudosophy +pseudosperm +pseudosphere +pseudospore +pseudostigma +pseudostoma +pseudostrata +pseudosubtle +pseudosuchia +pseudosuit +pseudotabes +pseudotribal +pseudotsuga +pseudoval +pseudovarian +pseudovary +pseudovelar +pseudovelum +pseudovum +pseudowhorl +pseudozealot +pseudozoea +psflg +psha +pshav +pshaw +psich +psicology +psidium +psikye +psilanthropy +psiloceran +psiloceras +psiloceratan +psiloceratid +psilocybe +psilocybin +psilocyn +psiloi +psilology +psilomelane +psilomelanic +psilophyte +psilophyton +psilosis +psilosopher +psilosophy +psilotaceae +psilotaceous +psilothrum +psilotic +psilotum +psion +psionic +psithurism +psithyrus +psittaceous +psittaci +psittacidae +psittacinae +psittacine +psittacinite +psittacism +psittacistic +psittacosis +psittacus +psize +psklib +psmrg +psntestbed +psoadic +psoas +psoatic +psoc +psocid +psocidae +psocine +psoe +psoft +psohoh +psoitis +psokhok +psokok +psomophagic +psomophagist +psomophagy +psora +psoralea +psoriasic +psoriasiform +psoriasis +psoriatic +psoriatiform +psoric +psoroid +psorophora +psoroptes +psoroptic +psorosis +psorosperm +psorospermic +psorous +pspice +pssimistical +psss +pssw +pstat +pstree +psuedo +psugate +psutka +pswcrack +pswstor +psxvideo +psyber +psych +psychadelic +psychagogic +psychagogos +psychagogue +psychagogy +psychal +psychalgia +psyche +psychean +psychedelic +psycheometry +psyches +psychiasis +psychiater +psychiatria +psychiatric +psychiatrist +psychiatrize +psychic +psychical +psychically +psychichthys +psychicism +psychicist +psychics +psychid +psychidae +psyching +psychism +psychist +psycho +psychoactive +psychobiotic +psychoclinic +psychoda +psychodance +psychodidae +psychodrama +psychofugal +psychogenic +psychogeny +psychognosis +psychognosy +psychogonic +psychogony +psychogram +psychograph +psychography +psychoid +psychokyme +psycholepsy +psycholeptic +psychologer +psychologian +psychologic +psychologics +psychologism +psychologist +psychologize +psychologue +psychology +psychomachy +psychomancer +psychomancy +psychomantic +psychometer +psychometric +psychomonism +psychomoral +psychomotor +psychon +psychoneural +psychonomic +psychonomics +psychonomy +psychony +psychopath +psychopathia +psychopathic +psychopathy +psychopetal +psychophobia +psychoplasm +psychopompos +psychoreflex +psychorhythm +psychorrhagy +psychosexual +psychosis +psychosocial +psychosome +psychosophy +psychostasy +psychostatic +psychotaxis +psychotheism +psychotic +psychotria +psychotrine +psychotron +psychout +psychovital +psychozoic +psychrograph +psychrometer +psychrometry +psychrophile +psychrophore +psychrophyte +psychurgy +psykter +psylla +psyllid +psyllidae +psylocibe +psysend +psyton +psytons +pszoniak +ptamo +ptarmic +ptarmica +ptarmical +ptas +ptefs +ptelea +ptemp +ptenoglossa +pteranodon +pteranodont +pteraspid +pteraspidae +pteraspis +ptereal +pterergate +pterian +pteric +pterichthys +pterideous +pteridium +pteridoid +pteridology +pteridophyta +pteridophyte +pteridosperm +pterion +pteris +pterocarpous +pterocarpus +pterocarya +pterocaulon +pterocera +pteroceras +pterocles +pterocletes +pteroclidae +pterodactyl +pterodactyli +pterographer +pterographic +pterography +pteroid +pteroma +pteromalid +pteromalidae +pteromys +pteropaedes +pteropaedic +pteropegal +pteropegous +pteropegum +pterophorid +pterophorus +pterophryne +pteropid +pteropidae +pteropine +pteropod +pteropoda +pteropodal +pteropodan +pteropodial +pteropodidae +pteropodium +pteropodous +pteropsida +pteropus +pterosaur +pterosauri +pterosauria +pterosaurian +pterospora +pterostemon +pterostigma +pterostigmal +pterotheca +pterothorax +pterotic +pterygial +pterygium +pterygode +pterygodum +pterygogenea +pterygoid +pterygoidal +pterygoidean +pterygomalar +pterygophore +pterygota +pterygote +pterygotous +pterygotus +pteryla +pterylology +pterylosis +ptiliidae +ptilimnium +ptilinal +ptilinum +ptilocercus +ptilopaedes +ptilopaedic +ptilosis +ptilota +ptinid +ptinidae +ptinoid +ptinus +ptisan +ptizi +ptmpmt +ptochocracy +ptochogony +ptochology +ptok +ptolemaean +ptolemaian +ptolemaical +ptolemais +ptolemaism +ptolemaist +ptolemean +ptolemy +ptomain +ptomaine +ptomainic +ptomatropine +ptosis +ptotic +ptra +ptrec +ptree +ptsake +ptslab +pttomax +ptts +ptyalagogic +ptyalagogue +ptyalectasis +ptyalin +ptyalism +ptyalize +ptyalocele +ptyalogenic +ptyalolith +ptyalorrhea +ptychoparia +ptychoparid +ptychopariid +ptychosperma +ptype +ptysmagogue +ptyxis +puah +pualski +puan +puaral +puari +pubal +pubble +pube +puberal +pubertal +pubertic +puberty +puberulent +puberulous +pubes +pubescence +pubescency +pubian +pubic +pubigerous +pubiotomy +pubis +public +publicaccess +publically +publican +publicanism +publicans +publication +publications +publicism +publicist +publicity +publicize +publicized +publicizes +publicizing +publick +publickly +publicly +publicness +publicschool +publicsector +publilian +publio +publish +publishable +published +publisher +publisheress +publishers +publishes +publisheth +publishing +publishment +publishng +publius +pubofemoral +puboiliac +puboischiac +puboischial +puborectalis +pubotibial +pubourethral +pubovesical +pubs +puca +pucauma +pucayacu +pucc +puccelli +pucci +puccinia +pucciniaceae +puccinoid +puccoon +puce +pucelage +pucellas +pucelle +puceron +puch +puchala +puchanahua +puchanan +pucherite +puchero +puchikwar +pucikwar +pucil +puck +pucka +puckball +pucker +puckerbush +puckered +puckerel +puckerer +puckering +puckermouth +puckers +puckery +puckett +puckfist +puckishly +puckishness +puckle +pucklike +puckling +puckneedle +puckrel +puckster +pucky +pucuro +pudd +puddee +puddening +pudder +puddick +puddifoot +pudding +puddingberry +puddinghead +puddinghouse +puddinglike +puddings +puddington +puddingwife +puddingy +puddle +puddled +puddlelike +puddler +puddles +puddling +puddock +puddy +pudency +pudenda +pudendal +pudendous +pudendum +pudens +pudent +pudge +pudgily +pudginess +pudgy +pudiano +pudibund +pudibundity +pudic +pudical +pudicitia +pudicity +pudillo +puditara +pudovkin +pudsey +pudsy +pudtol +pudu +puebla +pueblito +pueblo +puebloan +puebloize +pueblos +puede +puelche +puelchean +puelma +puent +puente +pueraria +puerco +puerer +puericulture +puerilely +puerileness +puerilism +puerility +puerman +puerpera +puerperal +puerperalism +puerperant +puerperium +puerperous +puerpery +puerta +puertoreal +puett +puetz +puff +puffback +puffbird +puffed +puffer +pufferfish +puffeth +puffily +puffin +puffiness +puffinet +puffing +puffingly +puffinus +pufflet +puffs +puffwig +pufpaff +pugacev +pugachev +pugan +puget +pugetsound +puggard +puggaree +pugged +pugger +puggi +pugginess +pugging +puggish +puggle +puggree +puggy +pugh +pughe +pugil +pugilant +pugilism +pugilist +pugilistic +pugilistical +puglia +puglianite +pugliese +pugman +pugmill +pugmiller +pugnaciously +pugnacity +puguli +puhalski +puhdl +puhites +puhl +puhnut +puhoc +puhovik +puhuria +puig +puijo +puinabe +puinahua +puinave +puinavi +puinavian +puinavis +puiron +puisatier +puisne +puissance +puissantly +puissantness +puist +puistie +puistotie +puits +puizzi +puja +pujara +pujol +pujolle +pujunan +puka +pukao +pukapuka +pukatea +pukateine +pukaunu +puke +puked +pukeko +pukelsheim +puker +pukeweed +pukhtun +puki +pukirieri +pukish +pukishness +pukka +pukkila +pukobye +pukras +puku +pukunu +pukwana +puky +pula +pulaar +pulabu +pulahan +pulahanism +pulak +pulana +pulang +pulangiyen +pulap +pular +pulasan +pulaskite +pulau +pulaya +pulayan +pulcher +pulchrify +pulchritude +pulcifer +pulcine +pulcinella +pulcinello +pulcini +pulcova +pule +pulegol +pulegone +puleniyan +puler +pulex +pulford +pulgarcito +pulgasari +pulghere +pulham +pulhilh +puli +pulian +pulicarious +pulicat +pulicene +pulicid +pulicidae +pulicidal +pulicide +pulicine +pulicoid +pulicose +pulicosity +pulicous +pulido +pulierauto +puling +pulingly +pulish +pulitzer +pulk +pulka +pull +pullable +pullan +pullboat +pulldevil +pulldoo +pulldown +pulldrive +pulled +pullen +puller +pullery +pullet +pulleyblank +pulleyless +pulleys +pulli +pulling +pullings +pullman +pullmanize +pullo +pullorum +pulls +pullulant +pullulate +pullulation +pullum +pullus +pully +pulmocardiac +pulmogastric +pulmometer +pulmometry +pulmonal +pulmonar +pulmonaria +pulmonarian +pulmonary +pulmonata +pulmonate +pulmonated +pulmonectomy +pulmonic +pulmonifer +pulmonifera +pulmonitis +pulmotor +pulo +pulopetak +pulp +pulpaceous +pulpal +pulpalgia +pulpamenta +pulpboard +pulpectomy +pulpefaction +pulper +pulpifier +pulpify +pulpily +pulpiness +pulping +pulpit +pulpital +pulpitarian +pulpiteer +pulpiter +pulpitful +pulpitic +pulpitical +pulpitically +pulpitis +pulpitish +pulpitism +pulpitize +pulpitless +pulpitly +pulpitolatry +pulpitry +pulpits +pulpless +pulplike +pulpotomy +pulpous +pulpousness +pulpstone +pulpwood +pulpy +pulque +puls +pulsant +pulsar +pulsatance +pulsated +pulsatile +pulsatility +pulsatilla +pulsation +pulsational +pulsations +pulsative +pulsatively +pulsator +pulsatory +pulse +pulsed +pulseless +pulselessly +pulselike +pulsellum +pulses +pulsidge +pulsific +pulsimeter +pulsing +pulsion +pulsive +pulsky +pulsojet +pulsometer +pultaceous +pulteney +pultneyville +pulton +pulu +pulusuk +puluwat +pulvar +pulver +pulveraceous +pulverant +pulverate +pulveration +pulvereous +pulverin +pulverizable +pulverizate +pulverizator +pulverize +pulverized +pulverizer +pulverizing +pulverous +pulverulence +pulverulent +pulvic +pulvil +pulvillar +pulvilliform +pulvillus +pulvinar +pulvinaria +pulvinarian +pulvinate +pulvinated +pulvinately +pulvination +pulvinic +pulviniform +pulvino +pulvinule +pulvinulus +pulvinus +pulviplume +pulwar +puly +puma +puman +pumani +pumblechook +pumbora +pume +pumi +pumicate +pumiced +pumiceous +pumicer +pumiciform +pumicite +pumicose +pumkin +pumma +pummelled +pummice +pump +pumpable +pumpage +pumpcon +pumped +pumpel +pumpellyite +pumper +pumpernickel +pumping +pumpkin +pumpkinify +pumpkinish +pumpkinity +pumpkins +pumple +pumpless +pumplike +pumpman +pumps +pumpsman +pumpwright +pums +pumune +puna +punaise +punakha +punalua +punaluan +punan +punana +punannibong +punapa +punatoo +punce +punch +punchable +punchboard +punchcutting +punchdrunk +punched +punchedcard +puncheon +puncher +punches +punchey +punchinello +punching +punchless +punchlike +punchline +punchproof +punchy +punct +punctal +punctate +punctated +punctation +punctator +puncticular +puncticulate +puncticulose +punctiform +punctiliar +punctilio +punctilious +punctist +puncto +punctualist +punctuality +punctually +punctualness +punctuated +punctuating +punctuation +punctuative +punctuator +punctuist +punctulate +punctulated +punctulation +punctule +punctulum +punctum +puncturation +puncture +punctured +punctureless +puncturer +punctures +puncturing +puncuri +pundaumeda +pundigrion +pundita +punditic +punditically +pundits +pundonor +pundum +pundyk +puneca +puneet +punfs +pung +punga +pungapung +pungar +pungence +pungency +pungent +pungently +punger +pungey +pungi +pungle +pungled +punglung +pungoteague +pungupungu +punia +punica +punicaceae +punicaceous +puniceous +punicial +punicin +punicine +punily +puniness +punish +punishable +punishably +punished +punisher +punishes +punishing +punishment +punishments +punites +punition +punitional +punitionally +punitively +punitiveness +punitory +puniya +punjab +punjabi +punjaritre +punjum +punk +punkah +punkaharju +punker +punketto +punkie +punkrock +punks +punkwood +punless +punlet +punnable +punnage +punner +punnet +punnic +punnical +punnigram +punning +punningly +punnology +puno +punoi +punon +punproof +puns +punsley +punsly +punstress +punta +puntabout +puntagorda +puntal +puntanen +puntarenas +punted +puntel +punter +punthamara +punti +puntil +punting +puntist +puntlatch +puntlatsh +punto +puntout +punts +puntsman +punty +puntzev +punu +punx +punxsutawney +puny +punyish +punyism +puoc +puok +pupa +pupae +pupahood +puparial +puparium +pupation +pupelo +pupidae +pupiferous +pupiform +pupigenous +pupigerous +pupil +pupilability +pupilage +pupilar +pupilarity +pupilate +pupildom +pupiled +pupilize +pupillarity +pupillary +pupilless +pupillidae +pupillometer +pupillometry +pupilloscope +pupilloscopy +pupils +pupinyo +pupipara +pupiparous +pupitau +pupivora +pupivore +pupivorous +pupkin +puploo +pupoid +puposky +puppet +puppetdom +puppethood +puppetish +puppetism +puppetize +puppetlike +puppetly +puppetman +puppetmaster +puppetry +puppets +puppies +puppify +puppily +puppis +puppleworth +puppsr +puppy +puppydom +puppyfish +puppyfoot +puppyhood +puppyism +puppylike +puppysnatch +pups +pupu +pupuke +pupulo +pupuluca +pupunha +puquina +puquinan +puquio +pura +puragi +purai +puram +puramati +puran +purana +puranic +puraque +purari +purasati +purbeck +purbeckian +purbi +purblind +purblindly +purblindness +purceil +purcell +purcellville +purchase +purchaseable +purchased +purchaser +purchasers +purchasery +purchases +purchasing +purdah +purdell +purdham +purdin +purdom +purdon +purdue +purdum +purdy +purdys +pure +pureblood +purebred +pured +puree +purehearted +purely +pureness +purer +purest +purfle +purfled +purfler +purfling +purfly +purga +purgative +purgatively +purgatorial +purgatorian +purgatory +purge +purgeable +purged +purger +purgerson +purgery +purges +purgeth +purging +purgitsville +puri +purificant +purification +purificative +purificator +purificatory +purified +purifier +purifiers +purifies +purifieth +puriform +purify +purifying +purig +purigpa +purigskad +purik +puriks +purim +purington +puriri +purism +purist +puristic +puristical +purists +puritan +puritandom +puritaness +puritanical +puritanism +puritanize +puritanizer +puritanlike +puritanly +puritano +purity +purjo +purki +purkinje +purkinjean +purko +purlear +purler +purlhouse +purlicue +purlieu +purlieuman +purlieus +purlin +purling +purlman +purloiner +purloining +purmela +purnam +purnea +purnell +purnells +purobora +purohit +purolymph +puromucous +puroum +purpart +purparty +purple +purplelip +purplely +purpleness +purpler +purplescent +purplest +purplewood +purplewort +purplish +purplishness +purply +purport +purported +purportedly +purporter +purporters +purportes +purporting +purportively +purportless +purports +purpose +purposed +purposedly +purposefully +purposeless +purposelike +purposely +purposer +purposes +purposeth +purposing +purposively +purposivism +purposivist +purpresture +purpura +purpuraceous +purpurate +purpure +purpureal +purpurean +purpureous +purpurescent +purpuric +purpuriform +purpurin +purpurine +purpurite +purpurize +purpuroid +purr +purre +purred +purree +purreic +purrel +purrer +purring +purringly +purrone +purrs +purry +pursat +purse +pursed +purseful +purseless +purselike +pursell +pursen +purseproud +purser +pursership +purses +pursewarden +pursey +pursglove +purshia +pursily +pursiness +purslet +pursley +purson +pursuable +pursual +pursuance +pursuantly +pursue +pursued +pursuer +pursuers +pursues +pursueth +pursuing +pursuit +pursuitmeter +pursuits +pursuivant +pursy +purtenance +puru +puruba +purubora +purucoto +puruha +purulence +purulency +purulent +purulently +puruloid +purum +purung +purupuru +purus +purusha +purushartha +purushottam +purves +purveyable +purveyal +purveyance +purveyancer +purveying +purveyoress +purveyors +purviance +purview +purvis +purvoe +purwannah +puryear +pusa +pusante +pusc +puschelik +puschkinia +puschkinow +pusciti +puserinfo +pusey +puseyhouse +puseyism +puseyistical +puseyite +push +pusha +pushab +pushad +pushaf +pushag +pushah +pushal +pushao +pushaq +pushaw +pushball +pushcart +pushd +pushdown +pushed +pushelberg +pusher +pushers +pushes +pushful +pushfully +pushfulness +pushing +pushingly +pushingness +pushj +pushjay +pushkey +pushkin +pushl +pushmobile +pushover +pushr +pushto +pushtu +pushwainling +pusit +pusith +pusjkin +puskay +puss +pusscat +pussie +pussley +pusslike +pussy +pussyfoot +pussyfooted +pussyfooter +pussyfooting +pussyfootism +pussytoe +pustkuchen +pusto +pustolov +pustulant +pustular +pustulate +pustulated +pustulation +pustulatous +pustule +pustuled +pustulelike +pustuliform +pustulose +pustulous +pusztai +putage +putahi +putai +putamen +putaminous +putanism +putar +putatan +putation +putationary +putatively +putback +putch +putchen +putcher +pute +puteal +puteik +putelee +putenh +puteoli +puter +putera +puterman +puthai +puther +puthery +puthsu +puti +putian +putid +putidly +putidness +putiel +putih +putikiat +putinbay +puting +putla +putlog +putman +putmem +putnam +putnamhall +putnamvalley +putnamville +putney +putoh +putois +putonghua +putorius +putout +putredinal +putredinous +putrefacient +putrefaction +putrefactive +putrefiable +putrefier +putrefy +putrefying +putresce +putrescence +putrescency +putrescent +putrescible +putrescine +putri +putricide +putrid +putridity +putridly +putridness +putrifacted +putriform +putrifying +putrilage +puts +putsch +putschism +putschist +putsi +putspek +putsyou +puttalam +puttee +putten +putter +putterer +puttering +putteringly +putters +puttest +putteth +putti +puttier +putting +puttock +puttooas +putty +puttyblower +puttyhead +puttyhearted +puttylike +puttyroot +puttywork +putu +putujara +putukwam +putumayo +puture +putus +putz +putzdorf +putzie +puukila +puunene +puuri +puvilom +puxico +puxmeteca +puxy +puya +puyallup +puyi +puyuma +puyungan +puzic +puzik +puzzi +puzzle +puzzleation +puzzled +puzzledly +puzzledness +puzzledom +puzzlehead +puzzleheaded +puzzleman +puzzlement +puzzlepate +puzzlepated +puzzler +puzzlers +puzzles +puzzling +puzzlingly +puzzlingness +puzzlings +pvalue +pvalues +pvamu +pvcs +pvda +pwaamei +pwad +pwakanyaw +pwani +pwapwa +pwata +pwconv +pwds +pwdump +pwebo +pwertcp +pweto +pwlcrack +pwlosr +pwltool +pwrap +pxdazz +pyaemia +pyal +pyam +pyanogo +pyapum +pyapun +pyarthrosis +pyas +pyasino +pyatigoriya +pyatiletka +pyatiy +pyatt +pyche +pycnanthemum +pycnia +pycnial +pycnid +pycnidia +pycnidial +pycnidium +pycniospore +pycnite +pycnium +pycnocoma +pycnodont +pycnodonti +pycnodontoid +pycnodus +pycnogonid +pycnogonida +pycnogonoid +pycnometer +pycnomorphic +pycnonotidae +pycnonotinae +pycnonotine +pycnonotus +pycnosis +pycnospore +pycnosporic +pycnostyle +pycnotic +pyelectasis +pyelic +pyelitic +pyelitis +pyelogram +pyelograph +pyelographic +pyelography +pyelometry +pyeloplasty +pyeloscopy +pyelotomy +pyem +pyemesis +pyemia +pyemic +pyen +pyeta +pygal +pygalgia +pygar +pygarg +pygargus +pygidial +pygidid +pygididae +pygidium +pygmaean +pygmee +pygmees +pygmies +pygmoid +pygmy +pygmydom +pygmye +pygmyhood +pygmyish +pygmyism +pygmyship +pygmyweed +pygobranchia +pygofer +pygopagus +pygopod +pygopodes +pygopodidae +pygopodine +pygopodous +pygopus +pygostyle +pygostyled +pygostylous +pyhel +pyic +pyidaungzu +pyin +pyine +pyinemya +pyithu +pyjama +pyjamaed +pyjamas +pyke +pyknatom +pyknic +pyla +pylades +pylagore +pylangial +pylangium +pylar +pyle +pyles +pylesville +pylic +pylon +pyloralgia +pylorectomy +pyloric +pyloritis +pyloroplasty +pyloroptosis +pyloroscopy +pylorospasm +pylorostomy +pylorus +pynchot +pyne +pynite +pyocele +pyoctanin +pyocyanase +pyocyanin +pyocyst +pyocyte +pyodermia +pyodermic +pyogenesis +pyogenetic +pyogenic +pyogenin +pyogenous +pyoid +pyolymph +pyometra +pyometritis +pyonephritis +pyonephrosis +pyonephrotic +pyonganbukto +pyongando +pyongannamdo +pyongtaek +pyongyang +pyongyangsi +pyoob +pyophagia +pyophthalmia +pyophylactic +pyoplania +pyopoiesis +pyopoietic +pyoptysis +pyorrhea +pyorrheal +pyorrheic +pyosalpinx +pyosis +pyospermia +pyote +pyotherapy +pyothorax +pyotoxinemia +pyotr +pyotrpervyj +pyoureter +pyoxanthose +pyracantha +pyraceae +pyracene +pyral +pyrales +pyralid +pyralidae +pyralidan +pyralidid +pyralididae +pyralidiform +pyralidoidea +pyralis +pyraloid +pyrameis +pyramid +pyramidaire +pyramidale +pyramidalis +pyramidalism +pyramidalist +pyramidally +pyramidate +pyramided +pyramidella +pyramidellid +pyramiden +pyramider +pyramides +pyramidia +pyramidic +pyramidical +pyramidion +pyramidist +pyramidize +pyramidlike +pyramidoidal +pyramids +pyramidwise +pyramoidal +pyran +pyranometer +pyranyl +pyrargyrite +pyrausta +pyraustinae +pyrazine +pyrazole +pyrazoline +pyrazolone +pyrazolyl +pyrectic +pyrena +pyrene +pyrenean +pyrenees +pyrenematous +pyrenic +pyrenin +pyrenocarp +pyrenocarpic +pyrenochaeta +pyrenodean +pyrenodeine +pyrenodeous +pyrenoid +pyrenolichen +pyrenomycete +pyrenopeziza +pyret +pyrethrin +pyrethrum +pyretic +pyreticosis +pyretogenic +pyretogenous +pyretography +pyretology +pyretolysis +pyretos +pyrewinkes +pyrexia +pyrexial +pyrexic +pyrexical +pyrgeometer +pyrgocephaly +pyrgoidal +pyrgologist +pyrgom +pyrheliophor +pyribole +pyridazine +pyridic +pyridinium +pyridinize +pyridone +pyridoxine +pyridyl +pyrie +pyriform +pyriformis +pyrimidyl +pyritaceous +pyrite +pyrites +pyritic +pyritical +pyritiferous +pyritization +pyritize +pyritohedral +pyritohedron +pyritoid +pyritology +pyritous +pyro +pyroacetic +pyroacid +pyroarsenate +pyroarsenic +pyroarsenite +pyrobelonite +pyroborate +pyroboric +pyrocatechin +pyrocatechol +pyrochemical +pyrochlore +pyrochromate +pyrochromic +pyrocitric +pyroclastic +pyrocoll +pyrocomenic +pyrocotton +pyrocystis +pyrodine +pyrogallate +pyrogallic +pyrogallol +pyrogen +pyrogenation +pyrogenesia +pyrogenesis +pyrogenetic +pyrogenic +pyrogenous +pyroglutamic +pyrognomic +pyrognostic +pyrognostics +pyrograph +pyrographer +pyrographic +pyrography +pyrogravure +pyroguaiacin +pyroid +pyrola +pyrolaceae +pyrolaceous +pyrolater +pyrolatry +pyroligneous +pyrolignic +pyrolignite +pyrolignous +pyrolite +pyrollogical +pyrologist +pyrology +pyrolusite +pyrolytic +pyrolyze +pyromachy +pyromagnetic +pyromancer +pyromancy +pyromania +pyromaniac +pyromaniacal +pyromantic +pyromeconic +pyromellitic +pyrometric +pyrometrical +pyrometry +pyromorphism +pyromorphite +pyromorphous +pyromotor +pyromucate +pyromucic +pyromucyl +pyron +pyronaphtha +pyrone +pyronema +pyronine +pyronomics +pyronyxis +pyrope +pyropen +pyrophanite +pyrophanous +pyrophile +pyrophilous +pyrophobia +pyrophone +pyrophoric +pyrophorous +pyrophorus +pyrophyllite +pyropuncture +pyropus +pyroracemate +pyroracemic +pyroscope +pyroscopy +pyrosis +pyrosmalite +pyrosoma +pyrosome +pyrosomidae +pyrosomoid +pyrosphere +pyrostat +pyrosulphate +pyrosulphite +pyrotartaric +pyrotartrate +pyrotechnian +pyrotechnics +pyrotechnist +pyrotechny +pyrotechs +pyroterebic +pyrotheology +pyrotheria +pyrotherium +pyrotic +pyrotoxin +pyrotritaric +pyrouric +pyrovanadate +pyrovanadic +pyroxanthin +pyroxenic +pyroxmangite +pyroxonium +pyroxyle +pyroxylene +pyroxylic +pyroxylin +pyroxyline +pyrrha +pyrrhichian +pyrrhichius +pyrrhicist +pyrrhonean +pyrrhonian +pyrrhonic +pyrrhonism +pyrrhonist +pyrrhonistic +pyrrhonize +pyrrhotine +pyrrhotism +pyrrhotist +pyrrhotite +pyrrhous +pyrrhuloxia +pyrrhus +pyrrodiazole +pyrrol +pyrrole +pyrrolic +pyrrolidine +pyrrolidone +pyrrolidyl +pyrroline +pyrrolylene +pyrrophyllin +pyrroyl +pyrryl +pyrrylene +pyrula +pyrularia +pyruline +pyruloid +pyrus +pyruvate +pyruvic +pyruvil +pyruvyl +pyrylium +pyschology +pyser +pythagoras +pythagoric +pythagorical +pythagorism +pythagorist +pythagorize +pythagorizer +pythia +pythiaceae +pythiacystis +pythiad +pythiambic +pythian +pythic +pythios +pythium +pythius +pythogenesis +pythogenetic +pythogenic +pythogenous +python +pythoness +pythonic +pythonical +pythonid +pythonidae +pythoniform +pythoninae +pythonine +pythonism +pythonissa +pythonist +pythonize +pythonoid +pythonomorph +pythons +pyuma +pyun +pyuria +pyvuril +pyxidanthera +pyxidate +pyxides +pyxidium +pyxie +pyxis +pzpr +qabe +qabis +qaboos +qabus +qachas +qadarite +qadikolahi +qadim +qadir +qadisiyah +qadri +qaen +qafsah +qahar +qahirah +qahiran +qainfo +qainsp +qajar +qalitas +qalmaq +qalyubiyah +qaminis +qamishli +qandahar +qaplus +qaqet +qara +qarabulli +qaragozlu +qaraqulpaqs +qarashahr +qarawi +qaribian +qarlug +qaroun +qarqan +qaruh +qashqai +qashqari +qashqay +qasida +qasim +qasr +qasrayn +qatari +qataruae +qatvenua +qawashqar +qawasqar +qayrawan +qaywayn +qazaq +qazaqi +qazi +qazvini +qboost +qconnect +qdos +qebena +qedai +qedvb +qemant +qemm +qere +qeri +qerimi +qeshm +qfever +qhpc +qhtml +qiandong +qiang +qibili +qiblah +qiclab +qidong +qiemo +qienjiang +qikbac +qimant +qimr +qina +qinati +qing +qingbai +qingdao +qinghai +qingjiang +qinhuangdao +qintar +qintars +qiqihar +qirjaqi +qiubei +qiuce +qiujiang +qiungnai +qiuze +qizhen +qizilbash +qmaps +qmelight +qmodem +qoheleth +qoole +qoph +qottu +qpcrak +qpid +qqqq +qqqqq +qqqqqq +qqqqqqq +qqqqqqqq +qrdesign +qreg +qspawn +qtalk +qtam +qtest +qtimer +quaalude +quaas +quab +quabbin +quabird +quachil +quack +quacked +quackhood +quackish +quackishly +quackishness +quackism +quackle +quacks +quacksalver +quackster +quacky +quad +quadded +quaddle +quade +quadea +quader +quadfifoil +quadfiform +quadflieg +quadi +quadlink +quadmeter +quadra +quadrable +quadragesima +quadral +quadram +quadrangled +quadrans +quadrant +quadrantal +quadrantes +quadrantid +quadrantile +quadrantlike +quadrantly +quadrants +quadraphonic +quadrat +quadrate +quadrated +quadrateness +quadrathorpe +quadratical +quadratics +quadratifera +quadrating +quadratrix +quadratum +quadratures +quadratus +quadrennia +quadrennium +quadriad +quadrialate +quadribasic +quadrible +quadrichord +quadricinium +quadricone +quadricorn +quadricuspid +quadricycle +quadricycler +quadriennial +quadriennium +quadrifid +quadrifilar +quadrifocal +quadrifoil +quadrifolium +quadriform +quadrifrons +quadriga +quadrigabled +quadrigamist +quadrigate +quadrigatus +quadrihybrid +quadrijugal +quadrijugate +quadrijugous +quadrilled +quadrillion +quadrilobate +quadrilobed +quadrilogue +quadrilogy +quadrimum +quadrinodal +quadrinomial +quadriparous +quadriplanar +quadriplegia +quadriplegic +quadripoint +quadripolar +quadripole +quadrireme +quadrisect +quadriserial +quadrisetose +quadrispiral +quadriurate +quadrivalent +quadrivalve +quadrivial +quadrivious +quadroon +quadrophenia +quadrual +quadrula +quadrum +quadrumana +quadrumanal +quadrumane +quadrumanous +quadruped +quadrupedal +quadrupedan +quadrupedant +quadrupedate +quadrupedism +quadrupedous +quadruplane +quadruplator +quadruple +quadrupled +quadruples +quadruplet +quadruplex +quadrupling +quadruply +quadspeed +quaedam +quaequae +quaesitum +quaestor +quaestorial +quaestorian +quaestorship +quaestuary +quaff +quaffer +quaffingly +quag +quagga +quagginess +quaggle +quaggy +quagmires +quagmiry +quahaug +quai +quaice +quaid +quaide +quaife +quail +quailberry +quailery +quailhead +quaillike +quails +quaily +quaint +quaintance +quaintise +quaintish +quaintly +quaintness +quainton +quaiquer +quaitso +quakake +quake +quakecheck +quaked +quakeful +quakeii +quakelist +quakeman +quakenbush +quakeproof +quaker +quakerbird +quakercity +quakerdom +quakerhill +quakeric +quakerish +quakerishly +quakerism +quakerize +quakerlet +quakerlike +quakerly +quakers +quakership +quakerstreet +quakertown +quakery +quakes +quaketail +quakeworld +quakiness +quaking +quakingly +quaky +qual +qualcomm +quale +qualen +qualifiable +qualificator +qualified +qualifiedly +qualifier +qualifiers +qualifies +qualify +qualifying +qualifyingly +qualimeter +qualitative +qualitied +qualities +quality +qualityless +qualityship +qualley +qualminess +qualmish +qualmishly +qualmishness +qualmproof +qualmy +qualmyish +qualtagh +qualtinger +qualup +quamasia +quami +quamoclit +quan +quanah +quand +quandaries +quandary +quando +quandong +quandt +quandy +quane +quang +quanguo +quannet +quant +quanta +quantal +quante +quanti +quantic +quantical +quantico +quantifiable +quantifiably +quantified +quantifier +quantifiers +quantifies +quantify +quantifying +quantile +quantiles +quantimeter +quantitate +quantitative +quantitied +quantities +quantitive +quantitively +quantity +quantivalent +quantization +quantize +quantized +quantizer +quantizes +quantizing +quantizize +quantogram +quantometer +quantrell +quantrill +quantulum +quantum +quantumg +quapaw +quaqua +quaquaversal +quaquaversum +quar +quara +quarai +quaranta +quarante +quarantine +quarantined +quarantiner +quarantines +quarantining +quarantotto +quaranty +quarasa +quarc +quardeel +quare +quarenden +quarender +quarentene +quarina +quark +quarks +quarkxpress +quarkxt +quarl +quarle +quarred +quarrel +quarreled +quarreler +quarreling +quarrelingly +quarrelled +quarreller +quarrelling +quarrelproof +quarrels +quarriable +quarried +quarrier +quarries +quarryable +quarrying +quarrystone +quarryville +quarshie +quartan +quartane +quartation +quartenylic +quarter +quarterage +quarterdeck +quartered +quarterer +quarterevil +quarterill +quartering +quarterland +quarterlies +quarterly +quartermain +quarterman +quartern +quartero +quarterpace +quarters +quartersaw +quartersawed +quarterspace +quarterstaff +quartets +quartett +quartette +quartetto +quartful +quartier +quartiere +quartiers +quartine +quartiparous +quarto +quartole +quartos +quartre +quarts +quartus +quartz +quartzes +quartzic +quartzitic +quartzless +quartzoid +quartzose +quartzous +quartzsite +quartzy +quasar +quasative +quashed +quashee +quashes +quashey +quashie +quashing +quashy +quasiacronym +quasilegal +quasimodo +quasinewton +quasiquote +quasirandom +quasirange +quasiranges +quasky +quasqueton +quassation +quassative +quassia +quassiin +quassin +quast +quastler +quat +quata +quatch +quatermain +quatern +quaternal +quaternarian +quaternarius +quaternate +quaternion +quaternionic +quaternions +quaternity +quaters +quatertenses +quatorzain +quatorze +quatral +quatrayle +quatre +quatrefoil +quatrefoiled +quatrible +quatrin +quatrino +quatro +quatrocento +quatsino +quattie +quattrini +quattro +quattrocento +quattrucci +quatuor +quauk +quave +quavered +quaverer +quavering +quaveringly +quaverous +quavers +quavery +quaw +quawk +quayage +quayful +quayle +quaylike +quayman +quayne +quayside +quaysider +qubba +qubbah +quchan +quchani +qudshanis +queach +queachy +queak +queal +quean +queanish +queasier +queasiest +queasily +queasiness +queasom +queasy +quebeck +quebrachine +quebrachitol +quebracho +quebrachos +quebradilla +quebradillas +quecchi +quechan +quechee +quechua +quechuan +quecl +quecreek +quedah +quedful +quednau +queechy +queeg +queen +queena +queenanne +queencake +queencity +queencraft +queencreek +queencup +queendom +queenfish +queenhood +queenie +queening +queenite +queenless +queenlet +queenlike +queenliness +queenly +queenright +queenroot +queens +queensberry +queenship +queensland +queenstown +queenweed +queenwood +queequeg +queer +queerer +queerest +queerish +queerishness +queerity +queerly +queerness +queers +queersome +queery +queest +queesting +queet +queeve +quegh +quei +queintise +queions +quek +quel +quelch +quele +quelea +queli +quelimane +quelle +queller +quelling +quelqu +quelque +quelques +quemado +quembo +queme +quemeful +quemefully +quemely +quemoy +quench +quenchable +quenched +quencher +quenches +quenching +quenchless +quenchlessly +quenelle +quenemo +queney +quenneville +quenouille +quensel +quenselite +quentin +quently +quequexque +querak +quercetic +quercetin +quercetum +quercic +querciflorae +quercin +quercine +quercinic +quercitannic +quercitannin +quercite +quercitin +quercitol +quercitrin +quercitron +quercivorous +quercus +quere +querecho +querelle +querendi +querendy +querengesser +querent +queres +queretaro +querida +querido +queried +querier +queries +queriman +querimonious +querimony +querist +querken +querl +quern +quernal +quernales +quernstone +queropalca +quert +querulent +querulential +querulist +querulity +querulosity +querulously +query +querying +queryingly +queryist +queryn +querystuff +ques +quesada +quesenberry +quesited +quesitive +quesnel +quest +questa +questadt +quested +questel +questell +quester +questers +questeur +questful +questing +questingly +question +questionable +questionably +questionaire +questionarie +questionary +questioned +questionee +questioner +questioners +questioning +questionings +questionist +questionless +questionous +questions +questionwise +questman +questor +questorial +questorship +quests +quet +queta +quetch +queteleta +quetenite +quett +quetta +quetzal +quetzalcoatl +quetzales +quetzaltepec +queue +queued +queueing +queuer +queuers +queues +queuesize +queuing +queuthoe +quevillon +quey +quez +quiangan +quiapo +quiativis +quiatoni +quiavicuzas +quib +quibala +quibbled +quibbleproof +quibbler +quibbling +quibblingly +quiberon +quiblet +quica +quichau +quiche +quichean +quiches +quichua +quick +quickapp +quickbasic +quickbbs +quickbeam +quickbooks +quickboot +quickborn +quickcard +quickcd +quickcolor +quickdial +quickdraw +quicken +quickenance +quickenbeam +quickened +quickener +quickeneth +quickening +quickens +quicker +quickest +quickfoot +quickfreeze +quickhatch +quickheal +quickhearted +quickies +quickley +quicklink +quickly +quickmotion +quickness +quickpaint +quickreport +quickreports +quickrun +quicksand +quicksands +quicksandy +quicksburg +quickscented +quickset +quicksilver +quicksilvery +quicksort +quickstep +quickthorn +quicktime +quicktray +quickview +quickweb +quickwitted +quickwork +quicky +quid +quidae +quidam +quiddative +quidder +quiddet +quiddist +quiddit +quidditative +quiddity +quiddle +quiddler +quidnunc +quiegolani +quieman +quien +quiere +quieri +quierro +quiesce +quiesced +quiescence +quiescency +quiescently +quiet +quieta +quietable +quieted +quieten +quietener +quieter +quietest +quieteth +quieting +quietism +quietist +quietistic +quietive +quietlike +quietly +quietness +quiets +quietsome +quietude +quiff +quiffing +quigley +quiina +quiinaceae +quiinaceous +quijo +quikmenu +quila +quilcene +quilck +quilengue +quiles +quileute +quiligua +quilkin +quill +quillagua +quillai +quillaic +quillaja +quillan +quillback +quilled +quillen +quiller +quillet +quilleted +quilley +quillfish +quilligan +quilling +quilltail +quillwork +quilly +quilombo +quilp +quilt +quilted +quilter +quilting +quilts +quilty +quilyacmoc +quimbaya +quimbundo +quimby +quimp +quimper +quin +quina +quinacrine +quinada +quinaielt +quinaldic +quinaldine +quinaldinic +quinaldinium +quinaldyl +quinamicine +quinamidine +quinamine +quinanisole +quinaquina +quinara +quinarian +quinarius +quinary +quinate +quinatoxine +quinault +quinazoline +quinazolyl +quinby +quincannon +quince +quincewort +quincey +quinch +quincubital +quincuncial +quincunx +quincunxial +quincux +quincy +quindecad +quindecagon +quindecangle +quindecemvir +quindecim +quindecima +quindecylic +quindene +quindio +quine +quinebaug +quinetum +quinhydrone +quinia +quinible +quinic +quinichette +quinicine +quinidia +quinidine +quinin +quinina +quininic +quininism +quininize +quiniretin +quinisext +quinisextine +quinism +quinite +quinitol +quinizarin +quinize +quink +quinlan +quinlaw +quinlen +quinn +quinnat +quinncannon +quinnesec +quinnet +quinnimont +quinnipiac +quinnovieres +quino +quinoa +quinoform +quinogen +quinoid +quinoidal +quinoidation +quinoidine +quinol +quinoline +quinolinic +quinolinium +quinolinyl +quinologist +quinology +quinolyl +quinometry +quinone +quinones +quinonez +quinonic +quinonimine +quinonize +quinonoid +quinonyl +quinopyrin +quinotannic +quinotoxine +quinova +quinovate +quinovic +quinovin +quinovose +quinoxaline +quinoxalyl +quinoyl +quinqin +quinquatria +quinquatrus +quinque +quinquefid +quinquegrade +quinquelobed +quinquenary +quinquennia +quinquenniad +quinquennial +quinquennium +quinquepedal +quinquereme +quinquertium +quinquesect +quinquevalve +quinquevir +quinquina +quinquino +quinse +quinsied +quinsy +quinsyberry +quinsywort +quinta +quintad +quintadena +quintadene +quintain +quintal +quintan +quintana +quintanilha +quintanilla +quintant +quintara +quintary +quintas +quintato +quinte +quintelement +quinten +quintennial +quinter +quinternion +quintero +quinteron +quinteroon +quinteros +quintessence +quintet +quintette +quintetto +quintile +quintilis +quintilla +quintillian +quintillion +quintillus +quintin +quintina +quintiped +quintius +quinto +quintole +quinton +quintroon +quintuple +quintupled +quintuplet +quintupling +quinuclidine +quinwood +quinyl +quinz +quinze +quinzieme +quioquitani +quiote +quiotepec +quip +quipea +quipful +quipo +quipped +quipper +quippish +quippishness +quippy +quiproquo +quips +quipsome +quipsomeness +quipster +quipu +quipus +quique +quira +quire +quirewise +quirin +quirinalia +quirinca +quirino +quiritarian +quiritary +quirite +quirites +quirk +quirkiness +quirkish +quirks +quirksey +quirksome +quirky +quirl +quiroga +quiros +quiroz +quirquincho +quis +quisby +quiscos +quisle +quisling +quisqualis +quisqueite +quisqueyan +quisquilian +quisquiliary +quisquilious +quisquous +quissama +quist +quisutsch +quit +quita +quitaque +quitch +quitclaim +quite +quitemoca +quiteno +quiting +quitman +quito +quitrent +quits +quittable +quittance +quitted +quitter +quitters +quitting +quittle +quittner +quittor +quitu +quiturran +quiver +quivered +quiverer +quiverful +quivering +quiveringly +quiverish +quiverleaf +quivers +quivery +quixo +quixote +quixotical +quixotically +quixotism +quixotize +quixotry +quiz +quizmaster +quizzability +quizzable +quizzacious +quizzatorial +quizzed +quizzee +quizzer +quizzery +quizzicality +quizzically +quizzify +quizziness +quizzing +quizzingly +quizzish +quizzism +quizzity +quizzy +qulin +qunaytirah +qunduz +qung +qunintet +quntain +quoc +quod +quoddies +quoddity +quoddy +quodlibet +quodlibetal +quodlibetary +quodlibetic +quogue +quoi +quoilers +quoin +quoined +quoining +quoireng +quoit +quoiter +quoitlike +quoits +quon +quondam +quondamly +quondamship +quoniam +quonset +quonsett +quop +quoratean +quot +quota +quotability +quotable +quotableness +quotably +quotas +quotaserver +quotation +quotational +quotationist +quotations +quotative +quote +quoted +quotee +quoteless +quotennial +quoter +quotes +quotewatch +quoteworthy +quoth +quotha +quothe +quotidian +quotidianly +quotient +quotients +quotiety +quoting +quotingly +quotity +quotlibet +quottu +quotum +qurama +quran +quranic +qurayyat +qureaish +qureshi +qurk +qursh +qurti +qusar +quthing +quuces +quux +quuxandum +quuxare +quuxes +quuxo +quuxu +quuxuum +quuxy +quyen +quynh +quzhou +qview +qwabe +qwagwa +qwallet +qwannab +qwaqwa +qwara +qwcrak +qwera +qwerty +qwikschedule +qwikswitch +qyol +raab +raac +raad +raaf +raaflaub +raahe +raaijmakers +raaiti +raaj +raakhee +raamah +raamiah +raamses +raandalist +raanian +raash +rabadi +rabaglia +rabah +rabai +rabal +rabam +raband +rabanna +rabaraba +rabasa +rabasse +rabatich +rabatine +rabato +rabatsale +rabatte +rabattement +rabaul +rabay +rabbah +rabbanist +rabbanite +rabbath +rabbeting +rabbi +rabbie +rabbies +rabbin +rabbinate +rabbindom +rabbinic +rabbinica +rabbinical +rabbinically +rabbinism +rabbinist +rabbinistic +rabbinite +rabbinize +rabbinship +rabbis +rabbiship +rabbist +rabbit +rabbitberry +rabbitears +rabbiter +rabbith +rabbitlike +rabbitmouth +rabbitproof +rabbitroot +rabbitry +rabbits +rabbitskin +rabbitt +rabbitweed +rabbitwise +rabbitwood +rabbity +rabblelike +rabblement +rabbleproof +rabbler +rabblesome +rabbo +rabboni +rabbonim +rabe +rabecs +rabel +rabelaisian +rabelaism +rabelo +rabenau +rabenstein +raber +rabha +rabi +rabiasz +rabic +rabid +rabidity +rabidly +rabidness +rabie +rabies +rabietic +rabific +rabiform +rabigenic +rabin +rabinal +rabinet +rabinovich +rabinowitz +rabipour +rabirubia +rabitic +rabjohn +rabmag +rabon +rabotaet +rabotu +raboty +rabsaris +rabshakeh +rabuka +rabulistic +rabulous +rabungap +rabuteau +rabzel +raca +racache +racca +raccoon +raccoonberry +raccoons +raccroc +race +raceabout +racebrood +racecourse +raceculture +raced +racegoer +racegoing +racehorse +raceland +racelike +racemate +racemation +raceme +racemed +racemic +racemiferous +racemiform +racemism +racemization +racemize +racemose +racemosely +racemous +racemously +racemule +racemulose +racer +racers +racerunner +races +racette +rach +racha +rachab +rachada +rachael +rachal +rachani +rache +rachel +rachele +rachelle +rachet +rachial +rachialgia +rachialgic +rachianectes +rachid +rachides +rachidia +rachidial +rachidian +rachiform +rachiglossa +rachigraph +rachilla +rachins +rachiodont +rachiodynia +rachiometer +rachioplegia +rachiotome +rachiotomy +rachipagus +rachis +rachischisis +rachitic +rachitis +rachitism +rachitogenic +rachitome +rachitomous +rachitomy +rachlitz +rachman +rachmaninoff +rachmaninov +rachwalska +rachycentron +racial +racialism +racialist +raciality +racialize +racially +racicot +racier +raciest +racily +racimo +racine +raciness +racing +racinglike +racioppi +racism +racist +rack +rackabones +rackan +rackboard +racked +racker +rackerby +racket +racketeering +racketeers +racketer +racketing +racketlike +racketproof +racketry +rackets +rackett +rackettail +rackful +rackham +racki +racking +rackingly +rackle +rackless +rackman +rackmaster +racknumber +rackproof +rackrent +rackrentable +racks +rackum +rackway +rackwork +racloir +racon +raconteur +racoon +racovian +racquel +racquet +racz +rada +radabaugh +radachamai +radagast +radames +radamsky +radar +radarada +radarman +radars +radarscope +raday +radbug +radc +radcd +radcheck +radcliff +radcliffe +radcom +raddai +raddalgoda +raddatz +raddb +raddick +raddle +raddled +raddleman +raddlings +rade +radectomy +radegond +rademakers +raden +rader +radetzky +radeva +radfind +radford +radha +radhakrishna +radhamadhab +radhoefer +radi +radiability +radiable +radial +radiale +radialia +radiality +radialize +radially +radiance +radiancy +radians +radiant +radiantly +radiata +radiate +radiated +radiately +radiateness +radiates +radiatics +radiatiform +radiating +radiation +radiational +radiations +radiative +radiator +radiators +radiatory +radiature +radical +radicale +radicalism +radicality +radicalize +radicalized +radicalizing +radically +radicalness +radicals +radicand +radicant +radicate +radicated +radicating +radication +radicel +radich +radichev +radicicola +radicicolous +radiciferous +radiciform +radicivorous +radick +radicle +radico +radicolous +radicose +radicula +radicular +radicule +radiculitis +radiculose +radidii +radiectomy +radiescent +radiferous +radin +radinecky +radio +radioactive +radioactives +radiobserver +radiobuttons +radiocarpal +radiocast +radiocaster +radiocenter +radioctl +radiode +radiodigital +radiodontia +radiodontic +radiodontist +radiodynamic +radioed +radioelement +radiogenic +radiograph +radiographer +radiographic +radiohead +radiohumeral +radioing +radioisotope +radiolaria +radiolarian +radiolead +radiolite +radiolites +radiolitic +radiolitidae +radiolocator +radiologic +radiological +radiologist +radiolucency +radiolucent +radiolysis +radioman +radiomedial +radiometric +radiometry +radiomovies +radionics +radiopacity +radiopalmar +radiopaque +radiophare +radiophone +radiophonic +radiophony +radiopraxis +radiorama +radios +radioscope +radioscopic +radioscopy +radioshack +radiosonic +radiosurgery +radioteria +radiothermy +radiothorium +radiotoxemia +radiotrance +radiotrician +radiotron +radiotropic +radiotropism +radiovision +radir +radishchev +radishes +radishlike +radisse +radisson +radium +radiumize +radiumlike +radiumproof +radius +radiuses +radix +radj +radknight +radko +radlai +radley +radman +radmilovic +radmis +radner +radnor +rado +radochin +radojewska +radojicic +radom +radome +radomir +radonnikodym +radoslav +radoter +radoteur +radougou +radoux +radovan +radovic +radovich +radovnikovic +radowsky +radox +radsimir +radu +radue +raduga +radula +radulate +radulescu +raduliferous +raduliform +radulovich +radunsky +radvanyi +rady +radziwill +radzum +raeann +raebank +raeckmeister +raederle +raef +raeford +raeger +raehold +raelets +raepa +raer +raeuber +rafa +rafaeia +rafael +rafaela +rafaeli +rafaelia +rafaelita +rafaelito +rafail +rafaj +rafe +rafeal +rafeeq +rafek +rafelson +rafenauer +rafer +raff +raffaele +raffaelesque +raffaella +raffaelli +raffaello +raffaule +raffe +raffee +rafferty +raffertz +raffery +raffi +raffili +raffin +raffinase +raffinate +raffing +raffinose +raffishly +raffishness +raffled +raffler +rafflesia +rafflin +raffling +rafi +rafik +rafiq +rafita +rafle +rafn +rafol +rafsanjani +raftage +rafter +rafters +raftery +raftiness +raftis +raftlike +raftman +rafts +raftsman +rafty +raga +ragabash +ragabrash +ragade +ragamuffin +ragamuffinly +ragan +raganyamlell +ragau +ragazza +ragbir +ragde +rage +raged +rageful +ragefully +rageless +rageous +rageously +rageousness +rageproof +rager +rages +ragesome +ragestein +rageth +ragetta +ragfish +ragga +ragged +raggedly +raggedness +raggedy +raggee +raggen +ragger +raggery +raggety +ragghianti +raggil +raggily +raggle +raggled +raggy +raghavachari +raghavarao +raghaven +ragheb +raghouse +raghu +raghunath +raghuvir +ragian +raging +ragingly +raglai +raglan +ragland +raglanite +raglet +ragley +raglin +ragman +ragnar +ragnebern +ragner +ragnhild +ragni +ragno +rago +ragoli +ragooli +ragovic +ragpicker +ragreig +rags +ragsdale +ragseller +ragshag +ragsorter +ragstone +ragtag +ragtime +ragtimer +ragtimey +ragu +raguel +ragueneau +ragui +ragule +raguly +ragusan +ragwe +ragwort +raha +rahab +rahabari +rahal +rahall +raham +rahanwein +rahanwin +rahardjo +rahaween +rahawein +rahdar +rahdaree +rahe +rahel +rahimtoola +rahiya +rahl +rahlfs +rahm +rahman +rahmani +rahmany +rahmat +rahn +raho +rahrer +rahul +rahway +raia +raiae +raices +raid +raide +raided +raider +raiders +raidhi +raiding +raidjua +raidler +raidproof +raids +raiffa +raiford +raigarh +raiidae +raiiform +raijua +raik +raike +raikes +rail +raila +railage +railcar +railed +railer +railers +railey +railgun +railing +railingly +railings +railleries +railless +raillike +railly +railman +railroad +railroadana +railroaded +railroader +railroaders +railroadflat +railroadiana +railroading +railroadish +railroads +railroadship +rails +railsback +railton +railway +railwaydom +railwayless +railways +raimannia +raimbourg +raiment +raimentless +raimonda +raimonde +raimondi +raimondo +raimu +raimundo +rain +raina +rainaldi +rainband +rainbargo +rainbeaux +rainbird +rainbolt +rainbord +rainbound +rainbow +rainbowhued +rainbowlake +rainbowlike +rainbows +rainbowweed +rainbowy +rainburst +raincoats +raindrop +raindrops +raine +rained +rainelle +rainer +raines +rainey +rainfall +rainfed +rainforest +rainfowl +rainful +raing +raingiving +rainha +rainie +rainier +rainiest +rainily +raininess +raining +rainitovo +rainless +rainlessness +rainlight +rainmaker +rainman +rainproof +rainproofer +rains +rainsforth +rainspout +rainstorm +rainsville +raintight +rainwash +rainwater +rainworm +rainy +raioid +raione +raipur +rais +raisa +raisable +raise +raised +raiseman +raisen +raiser +raisers +raises +raiseth +raisin +raising +raisins +raisiny +raison +raissa +raissian +raistlin +raiswell +raivavae +raizo +raizul +raja +rajai +rajala +rajan +rajani +rajapakse +rajar +rajaship +rajasthan +rajasthani +rajbangsi +rajbansi +rajbari +rajcher +rajchgod +rajchwald +rajczi +rajeev +rajendra +rajes +rajesh +rajeswara +rajguru +raji +rajidae +rajinderpal +rajiv +rajkot +rajkoti +rajmahal +rajmahalia +rajnay +rajom +rajot +rajput +rajshahi +raju +rajwani +rajya +raka +rakah +rakahanga +rakan +rakas +rake +rakeage +raked +rakeful +rakehell +rakehellish +rakehelly +rakel +rakem +raker +rakery +rakes +rakesh +rakesteel +rakestele +rakh +rakhain +rakhine +rakhshani +rakhuma +raki +rakily +raking +rakishly +rakishness +rakit +rakkath +rakkon +raklu +rakluun +rakochy +rakoczi +rakomin +rakotomalala +rakotonirina +rakow +rakowsky +raksanyi +raksha +rakshasa +raktoe +raku +rakubian +rakuel +rakunei +rakyat +ralam +raldy +raleigh +ralenta +raley +ralf +ralfe +ralik +ralina +rall +rallarblod +rallentando +ralli +ralliance +rallidae +rallied +rallier +rallies +ralliform +rallinae +ralline +ralls +rallus +rally +rallye +rallying +ralph +ralphie +ralstonite +ralte +ralthasar +raluana +rama +ramachandra +ramachandran +ramadan +ramades +ramadhani +ramage +ramah +ramahatra +ramaism +ramaite +ramakant +ramakesavan +ramakrishna +ramakrishnan +ramal +ramamoorthi +raman +ramana +ramanamurthy +ramanand +ramanas +ramanathan +ramand +ramano +ramanujan +ramapo +ramaprakash +ramarama +ramas +ramass +ramasubban +ramaswami +ramaswamy +ramate +ramath +ramathite +ramathlehi +ramathmizpeh +ramati +ramaz +ramazan +ramazotti +ramazzotti +rambal +rambani +rambatu +rambausek +rambeau +rambeh +ramberg +ramberge +rambert +rambi +rambia +ramble +rambled +rambler +rambles +rambling +ramblingly +ramblingness +ramblings +rambo +rambong +rambooze +rambouillet +rambow +rambunctious +rambuso +rambutan +rambutyo +ramdisk +ramdisks +ramdohrite +rame +rameal +ramean +rameau +ramechhap +ramed +ramee +rameil +ramekin +ramellose +rament +ramentaceous +ramental +ramentum +rameous +ramequin +ramer +rames +rameses +rameseum +ramesh +ramessid +ramesside +ramet +ramex +ramey +ramez +ramfeezled +ramgul +ramgunshoch +ramhead +ramhood +rami +ramiah +ramicorn +ramie +ramiferous +ramificate +ramification +ramified +ramiflorous +ramiform +ramifying +ramig +ramigani +ramigerous +ramil +ramillie +ramillied +ramin +ramingining +ramiparous +ramirez +ramiro +ramis +ramisection +ramisectomy +ramism +ramist +ramistical +ramiz +ramjam +ramjet +ramji +ramkissoon +ramkokamekra +ramlike +ramline +ramlogan +ramly +ramm +rammack +ramme +rammed +rammel +rammer +rammerman +rammers +ramming +rammish +rammishly +rammishness +rammstein +rammy +ramna +ramnak +ramnarine +ramnenses +ramnes +ramniklal +ramoaaina +ramon +ramona +ramonda +ramondt +ramones +ramoneur +ramoosii +ramos +ramose +ramosely +ramosity +ramoth +ramothgilead +ramous +ramp +rampacious +rampaciously +rampage +rampaged +rampageous +rampageously +rampager +rampaging +rampagious +rampancy +rampant +rampantly +rampart +ramparts +rampaul +ramped +rampelmann +ramper +ramphastidae +ramphastides +ramphastos +rampi +rampick +rampike +rampileboni +ramping +rampingly +rampion +rampire +rampler +rampling +ramplor +rampoong +ramps +rampsman +rampur +rampway +ramrace +ramroddy +ramroop +rams +ramsaran +ramsay +ramsayer +ramscallion +ramsch +ramsdale +ramsden +ramsel +ramsen +ramses +ramseur +ramsewak +ramsey +ramseyer +ramshackle +ramshackled +ramshackly +ramsis +ramson +ramstad +ramstam +ramstein +ramstrom +ramtil +ramu +ramuaina +ramudu +ramular +ramule +ramuliferous +ramulose +ramulous +ramulus +ramuntcho +ramus +ramuscule +ramusi +rana +ranahan +ranajit +ranal +ranales +ranalli +ranao +ranarian +ranarium +ranasinghe +ranatra +ranau +ranawat +ranburne +rance +rancel +rancellor +rancelman +rancer +rancescent +ranch +ranche +ranched +rancher +rancheria +ranchero +ranchers +ranches +ranchester +ranchi +ranching +ranchless +ranchman +ranchmen +ranchomirage +ranchos +ranchwoman +rancid +rancidify +rancidity +rancidly +rancidness +rancocas +rancor +rancorously +rancorproof +rancour +rand +randa +randai +randal +randalia +randall +randallite +randallstown +randan +randannite +randazzo +rande +randecker +randee +randel +randell +randem +randene +rander +randers +randhawa +randhir +randi +randia +randie +randier +randiest +randile +randing +randini +randir +randite +randle +randleman +randles +randlett +randm +randn +randol +randolf +randolph +random +randomeffect +randomfields +randomised +randomish +randomize +randomized +randomizer +randomizes +randomizing +randomlake +randomly +randomness +randoms +randomsum +randomwise +randon +randone +randsburg +randy +rane +ranea +ranee +ranei +ranella +ranenfjord +raner +ranere +ranet +raney +ranez +rang +ranga +rangan +ranganathan +rangari +rangas +rangasami +rangaswami +rangatau +rangatira +rangda +rangdania +range +ranged +rangei +rangel +rangeless +rangeley +rangely +rangeman +ranger +rangers +rangership +ranges +rangework +rangey +rangi +rangier +rangiest +rangifer +rangiferine +ranginess +ranging +rangiora +rangitikei +rangkas +rangkhol +rangle +rangler +rangloi +ranglong +rango +rangoon +rangooni +rangpan +rangpur +rangri +rangsit +rangy +rani +rania +ranice +ranid +ranidae +ranieri +raniferous +raniform +ranina +raninae +ranine +raninian +ranique +ranivorous +ranjan +ranjit +rank +rankandfile +rankbased +ranked +ranken +ranker +rankers +rankest +rankin +ranking +rankings +rankins +rankish +rankit +rankled +rankless +rankling +ranklingly +rankly +rankness +rankorder +ranks +ranksman +ranksum +rankwise +ranley +rann +ranna +rannel +rannells +ranneth +ranni +rannigal +ranny +rano +ranoa +ranong +ranonga +ranoska +ranquel +ransacked +ransacker +ransacking +ransackle +ransacks +ransal +ranse +ransel +ranselman +ransom +ransomable +ransome +ransomed +ransomer +ransomfree +ransoming +ransomless +ransoms +ransomville +ranson +ranstead +rant +rantala +rantan +rantani +rantankerous +rantaseppa +rantebulahan +rantebulawan +rantec +ranted +rantepao +rantepole +ranter +ranterism +ranters +ranting +rantingly +rantipole +rantock +rantoul +rants +ranty +ranuccio +ranula +ranular +ranulf +ranunculales +ranunculi +ranunculus +ranvir +ranzania +raohe +raong +raorubin +raos +raosiara +raouf +raoul +raoulia +raoult +rapa +rapaces +rapaceus +rapaciously +rapacity +rapakivi +rapallo +rapanea +rapangkaka +rapanui +rapaport +rapateaceae +rapateaceous +rape +raped +rapeful +rapelje +rapelye +raper +rapes +rapeseed +rapesheake +rapha +raphael +raphaela +raphaele +raphaelesque +raphaelic +raphaelism +raphaelite +raphaelitism +raphaelle +raphalita +raphania +raphanus +raphany +raphe +raphia +raphide +raphides +raphidiid +raphidiidae +raphidodea +raphidoidea +raphine +raphiolepis +raphis +raphu +rapic +rapicom +rapid +rapida +rapidan +rapidcity +rapideploy +rapidity +rapidly +rapidness +rapidriver +rapids +rapidscity +rapiered +rapillo +rapine +rapiner +raping +rapinic +rapiraha +rapisarda +rapist +rapitok +raploch +rapons +raposo +rapp +rappage +rappang +rappaport +rapparee +rappe +rapped +rappee +rappel +rappen +rappeport +rapper +rapping +rappist +rappite +rappoport +raps +rapscallion +rapszodia +rapt +raptatorial +raptatory +rapti +rapting +raptly +raptness +raptor +raptores +raptorial +raptorials +raptorious +raptornt +raptors +raptril +raptured +raptureless +raptures +rapturist +rapturize +rapturous +rapturously +raptury +raptus +rapunzel +rapzinsky +raqqah +raquel +raquela +raquettelake +rarahu +rarbsd +rarden +rare +rarebit +rared +rareeshow +rarefaction +rarefactive +rarefiable +rarefication +rarefied +rarefier +rarefying +rarely +rareness +rarer +rareripe +rarest +rareties +rarety +rareyfy +rarhp +rariconstant +raries +rarish +rarities +rarity +rarlinux +rarnaby +rarotonga +rarotongan +rarry +rarua +rasa +rasadminext +rasak +rasalas +rasalhague +rasamala +rasant +rasawa +rasberry +rasc +rascacio +rascainikoff +rascal +rascaldom +rascaless +rascalion +rascalism +rascality +rascalize +rascallike +rascallion +rascally +rascalpro +rascalry +rascals +rascalship +rascel +rasceta +rascette +rasch +rasche +raschel +raschid +raschig +raschild +rase +rasen +rasenna +raser +rasgado +rasgez +rash +rashad +rashed +rashel +rashella +rashenko +rasher +rashes +rashful +rashid +rashidi +rashing +rashkovskii +rashlike +rashling +rashly +rashmi +rashness +rashti +rashtriya +rashwan +rasia +rasiblan +rasinoff +rasion +raskin +rasklade +raskolnik +raskrutku +rasla +rasmon +rasmpc +rasmus +rasmussen +rasores +rasorial +rasp +raspatorium +raspatory +raspberriade +raspberries +raspberry +rasped +rasper +rasphone +raspi +raspier +raspiest +rasping +raspingly +raspingness +raspings +raspish +raspite +raspoli +rasps +rasputin +raspy +rass +rasse +rasselas +rassell +rassendyll +rassi +rassimov +rasskaji +rasskazaival +rasskazav +rassle +rassled +rassling +rassmussen +rasstrel +rassylok +rasta +rastaban +rastafarians +rastaman +rastelli +raster +rasterdesk +rasterman +rastik +rastimer +rastle +rastogi +rastres +rasul +rasulala +rasummy +rasumny +rasure +rasuwa +ratability +ratable +ratableness +ratably +ratafee +ratafia +ratagnon +ratahan +ratak +ratal +ratan +ratana +ratanaporn +ratanhia +rataning +rataplan +ratataplan +ratatat +ratattating +ratbag +ratbite +ratcatcher +ratcatching +ratch +ratchaburi +ratchasima +ratchathani +ratched +ratchel +ratchelly +ratcher +ratchet +ratchetlike +ratchety +ratching +ratchitt +ratchment +ratcliff +ratcliffe +rate +rateby +rated +ratel +rateless +ratement +ratepaying +raters +rates +ratesusing +ratfish +ratfor +rath +ratha +rathbone +rathbun +rathdrum +rathe +rathed +rathely +ratheness +rather +ratherest +ratheripe +ratherish +ratherly +rathest +rathi +rathie +rathite +rathnov +rathod +rathole +rathora +raths +rathskeller +rathvi +ratib +raticidal +raticide +ratification +ratified +ratifier +ratifies +ratifying +ratigan +ratihabition +ratine +rating +ratings +ratio +ratiocinant +ratiocinated +ratiocinator +ratiometer +ration +rationable +rationably +rational +rationale +rationales +rationalism +rationalist +rationality +rationalize +rationalized +rationalizer +rationalizes +rationally +rationalness +rationalrose +rationals +rationate +rationed +rationing +rationless +rationment +rations +ratios +ratiotype +ratisbona +ratitae +ratite +ratitous +ratka +ratko +ratkowski +ratliff +ratliffcity +ratlike +ratlin +ratline +ratliner +ratlings +ratmar +ratmate +ratna +ratnagari +ratnam +ratnapura +ratnayake +ratner +rato +ratoff +raton +ratoon +ratooner +ratov +ratproof +ratracing +rats +ratsadon +ratsbane +ratsel +ratsiraka +ratskeller +ratsua +ratsy +rattage +rattan +ratte +ratted +ratteen +ratten +rattenbury +rattener +ratter +rattery +ratti +rattier +rattiest +rattigan +rattinet +ratting +rattish +rattle +rattlebag +rattlebones +rattlebox +rattlebrain +rattlebush +rattled +rattlehead +rattleheaded +rattlejack +rattlemouse +rattlenut +rattlepate +rattlepated +rattlepod +rattleproof +rattler +rattleran +rattleroot +rattlers +rattlertree +rattles +rattleskull +rattlesnakes +rattlesome +rattleth +rattletrap +rattletraps +rattleweed +rattlewort +rattling +rattlingly +rattlingness +rattly +ratto +ratton +rattoner +rattrap +rattray +rattus +ratty +ratu +ratwa +ratwood +ratyani +ratz +ratzenberger +ratzo +raua +rauch +raucid +raucidity +raucity +raucour +raucourt +raucous +raucously +raucousness +raud +raudres +raudys +rauen +rauf +rauffenberg +raught +raugrave +raugwitz +rauk +raukle +raul +rauli +rault +rauma +raumo +raun +raunchier +raunchiest +raunchily +raunchiness +raunchy +raunge +rauni +raunikar +raupo +rauque +rauraci +rauric +raurici +rausa +rausch +raush +rausse +rautahat +raute +rautha +rauti +rauto +rautu +rauwolfia +rauzena +rava +ravaged +ravagement +ravager +ravagers +ravages +ravaging +ravagli +ravaioli +ravalec +ravaria +rave +raved +raveh +ravehook +raveinelike +ravel +raveled +raveler +ravelin +raveling +ravelled +ravelli +ravelling +ravello +ravelly +ravelment +ravelproof +raven +ravena +ravenal +ravenala +ravencliff +ravendale +ravenden +ravendom +ravenduck +ravenel +ravenelia +ravenell +ravener +ravenhill +ravenhood +ravenhurst +ravening +ravenish +ravenlike +ravenna +ravenne +ravenoff +ravenous +ravenously +ravenousness +ravenry +ravens +ravensara +ravensdale +ravenshoe +ravenstone +ravenswood +ravenwise +ravenwood +raver +ravernal +ravero +ravers +raves +ravet +ravi +ravia +ravic +ravigote +ravin +ravinate +ravinder +ravindra +ravindranath +ravine +ravined +ravinement +ravines +raviney +raving +ravingly +ravings +ravinia +ravinsky +ravioli +ravished +ravishedly +ravisher +ravishing +ravishingly +ravishment +ravison +ravissant +ravissante +ravitch +ravith +ravitz +raviv +ravji +ravno +ravo +ravs +ravz +rawa +rawalpindi +rawan +rawanduz +rawang +rawas +rawbones +rawcopy +rawdon +rawer +rawest +rawhead +rawhide +rawhider +rawish +rawishness +rawitch +rawl +rawley +rawlings +rawlingson +rawlins +rawlston +rawly +rawness +rawnsley +rawo +rawson +raxaul +raxel +raxshani +raxter +raya +rayage +rayahl +raybold +raybould +raybrook +raychel +raycity +raye +rayed +rayette +rayford +rayful +rayglay +rayl +rayland +rayle +rayleigh +rayless +raylessness +raylet +raymaker +rayman +rayment +raymond +raymonde +raymondville +raymone +raymore +raymundo +rayna +raynald +raynard +raynaud +rayne +raynell +rayner +raynesford +raynham +raynor +raynore +rayo +rayon +rayong +rayonnance +rayonnant +rays +raysal +rayser +rayshell +rayska +raysut +rayton +raytracer +raytracing +rayville +raywick +raywood +raza +razak +razanabahiny +razdeza +razed +razee +razer +razgrad +razin +razing +razinin +raznih +raznitsa +raznix +razoo +razor +razorable +razorback +razorbill +razoredge +razorless +razormaker +razormaking +razorman +razors +razorstrop +razoumofskya +razumov +razz +razzac +razzia +razzle +razzly +razzmatazz +rbara +rbettina +rbms +rbmu +rboc +rbocs +rcca +rcea +rces +rchisn +rchive +rchlab +rcid +rcls +rcopy +rcpt +rcte +rcvbt +rcvd +rcvr +rcvt +rcwsun +rdata +rdbms +rdensprache +rdisk +rdlvax +rdpc +rdrc +rdscom +rdstest +rdte +rduncan +rdundant +reaal +reabandon +reabbreviate +reabenis +reabolish +reabolition +reabridge +reabsence +reabsent +reabsolve +reabsorb +reabsorption +reabuse +reacceptance +reaccess +reaccession +reaccompany +reaccomplish +reaccord +reaccost +reaccount +reaccredit +reaccrue +reaccumulate +reaccusation +reaccuse +reaccustom +reach +reachability +reachable +reachably +reached +reacher +reaches +reachesthe +reacheth +reachieve +reaching +reachless +reachy +reacidify +reacquaint +reacquire +reacquired +react +reactance +reacted +reacting +reaction +reactional +reactionally +reactionary +reactionism +reactionist +reactions +reactivate +reactivated +reactivates +reactivating +reactivation +reactive +reactively +reactiveness +reactivities +reactivity +reactology +reactor +reactors +reacts +reactualize +reactuate +read +readability +readable +readableness +readably +readapt +readaptable +readaptation +readaptive +readd +readdition +readdress +reade +reader +readerdom +readers +readership +readest +readeth +readfield +readhere +readhesion +readick +readied +readier +readies +readiest +readily +readin +readiness +reading +readingand +readingdom +readings +readington +readjourn +readjudicate +readjust +readjustable +readjusted +readjuster +readjustment +readkey +readl +readline +readling +readln +readlyn +readme +readminister +readmiration +readmire +readmission +readmit +readmittance +readmitted +readonly +readopt +readoption +readorn +readout +readouts +reads +readsboro +readslanding +readsmb +readstown +readstring +readvance +readvar +readvent +readventure +readvertency +readvertise +readvise +readvocate +readwrite +ready +readying +readytoprint +readytoship +readyville +reael +reaeration +reaffect +reaffection +reaffiliate +reaffirm +reaffirmance +reaffirmed +reaffirmer +reafflict +reafford +reafforest +reaffusion +reagan +reagency +reagent +reagents +reaggravate +reaggregate +reaggressive +reagiert +reagin +reagitate +reagitation +reagree +reagreement +reaia +reaiah +reak +real +realarm +realaudio +realencoder +realer +reales +realest +realgar +realienate +realienation +realign +realigned +realigning +realignment +realigns +realise +realised +realising +realism +realist +realistic +realisticize +realists +realities +realitos +reality +realive +realizable +realizably +realization +realizations +realize +realized +realizer +realizes +realizing +realizingly +reall +reallegation +reallege +reallegorize +realler +realliance +reallocate +reallocated +reallocating +reallocation +reallot +reallotment +reallow +reallowance +reallude +reallusion +really +reallywas +realm +realmagic +realmless +realmlet +realmode +realms +realnames +realness +realno +realos +realplayer +reals +realsecure +realtek +realter +realteration +realtime +realvideo +realworld +realy +reamage +reamalgamate +reamass +reambitious +reamend +reamendment +reamer +reamerer +reaminess +reamo +reamputation +reamstown +reamuse +reamy +reanalysis +reanalyze +reanalyzes +reanalyzing +reanchor +reang +reanimalize +reanimate +reanimated +reanimating +reanimation +reanimator +reanneal +reannex +reannexation +reannotate +reannounce +reannoy +reannoyance +reanoint +reanswer +reanvil +reanxiety +reao +reap +reapable +reapdole +reapeatable +reaped +reaper +reapers +reapest +reapeth +reaping +reapologize +reapology +reapparel +reapparition +reappeal +reappear +reappearance +reappeared +reappearing +reappears +reappease +reapplaud +reapplause +reappliance +reapplicant +reapplier +reapply +reappoint +reappointed +reapportion +reapposition +reappraisal +reappraisals +reappraise +reappreciate +reapprehend +reapproach +reapproval +reapprove +reaps +rear +rearbitrate +reardan +reardon +reare +reared +rearer +reargue +reargument +rearhorse +rearick +rearing +rearisal +rearise +rearj +rearling +rearm +rearmament +rearmost +rearousal +rearouse +rearrange +rearranged +rearranger +rearranges +rearranging +rearray +rearrenges +rearrest +rearrested +rearrival +rearrive +rears +rearward +rearwardly +rearwardness +rearwards +reasati +reascend +reascendancy +reascendant +reascendency +reascendent +reascension +reascent +reascertain +reasearch +reashlar +reasiness +reasiti +reask +reasnor +reason +reasonable +reasonably +reasoned +reasonedly +reasoner +reasoning +reasoningly +reasonings +reasonless +reasonlessly +reasonproof +reasons +reaspire +reassail +reassault +reassay +reassemblage +reassemble +reassembled +reassembles +reassembling +reassembly +reassent +reassert +reasserted +reassertion +reassertor +reassess +reassessment +reasseverate +reassign +reassigned +reassigning +reassignment +reassigns +reassimilate +reassist +reassistance +reassociate +reassort +reassortment +reassserting +reassume +reassumption +reassurance +reassure +reassured +reassuredly +reassurement +reassurer +reassures +reassuring +reassuringly +reastiness +reastonish +reastray +reasty +reasy +reattach +reattachment +reattack +reattain +reattainment +reattempt +reattend +reattendance +reattention +reattentive +reattest +reattire +reattract +reattraction +reattribute +reatus +reaudit +reaume +reauthorize +reavail +reavailable +reaver +reaves +reavis +reavoid +reavoidance +reavouch +reavow +reawait +reawake +reawaken +reawakened +reawakening +reawakenment +reawakens +reaward +reaware +reba +rebab +reback +rebag +rebait +rebake +rebalance +rebale +reballast +reballot +reban +rebandage +rebandaging +rebanish +rebanishment +rebankrupt +rebankruptcy +rebaptism +rebaptismal +rebaptize +rebaptizer +rebar +rebarbarize +rebarbative +rebargain +rebasa +rebase +rebasis +rebatable +rebate +rebateable +rebated +rebatement +rebater +rebates +rebathe +rebating +rebato +rebawl +rebbecca +rebbot +rebe +rebeamer +rebear +rebeat +rebeaud +rebeautify +rebec +rebeca +rebecca +rebeccaism +rebeccaites +rebeck +rebecka +rebecome +rebed +rebeg +rebeget +rebeggar +rebegin +rebeginner +rebeginning +rebeguile +rebehold +rebeka +rebekah +rebekka +rebekkah +rebel +rebelde +rebeldom +rebelief +rebelieve +rebell +rebelled +rebeller +rebellest +rebellike +rebellion +rebellions +rebellious +rebelliously +rebello +rebellow +rebellowing +rebelly +rebelong +rebelove +rebelproof +rebels +rebemire +rebenciuc +rebend +rebenefit +rebengivc +reber +rebersburg +rebeset +rebesiege +rebestow +rebestowal +rebetake +rebetray +rebewail +rebey +rebhorn +rebia +rebias +rebid +rebiffe +rebill +rebillet +rebilling +rebina +rebinawa +rebind +rebinding +rebinds +rebirth +rebite +rebkong +reblade +reblame +reblast +rebleach +reblend +rebless +reblin +reblock +rebloom +reblossom +reblot +reblow +reblue +rebluff +reblunder +rebmann +reboant +reboantic +reboard +reboast +reboation +rebob +reboil +reboiler +reboise +reboisement +rebold +rebolledo +rebolt +rebone +rebonk +rebook +reboot +rebooted +rebooter +rebooting +reboots +rebop +rebore +reborn +reborrow +rebottle +reboulia +rebounce +rebound +reboundable +rebounded +rebounder +rebounding +rebounds +rebourbonize +rebox +rebrace +rebraid +rebranch +rebrand +rebrandish +rebreathe +rebreed +rebrew +rebribe +rebrick +rebridge +rebring +rebringer +rebroach +rebroadcast +rebroadcasts +rebroff +rebronze +rebrown +rebrush +rebrutalize +rebu +rebubble +rebuck +rebuckle +rebud +rebudget +rebuff +rebuffable +rebuffably +rebuffed +rebuffet +rebuffproof +rebuild +rebuilder +rebuilding +rebuilds +rebuilt +rebukable +rebuke +rebukeable +rebuked +rebukeful +rebukefully +rebukeproof +rebuker +rebukes +rebuketh +rebuking +rebukingly +rebulk +rebunch +rebundle +rebunker +rebuoy +rebuoyage +reburden +reburgeon +reburial +reburn +reburnish +reburst +rebury +rebus +rebush +rebusy +rebute +rebutment +rebuttable +rebuttal +rebutter +rebutton +rebuy +recabarren +recable +recadency +recage +recalcine +recalcitrate +recalculate +recalculated +recalculates +recalesce +recalescence +recalescent +recalibrate +recalibrated +recalibrates +recalk +recall +recallable +recalled +recalling +recallist +recallment +recalls +recampaign +recancel +recandidacy +recant +recantation +recanter +recantingly +recanvas +recap +recapacitate +recapitalize +recapitulate +recapped +recapper +recapping +recaption +recaptivate +recaptor +recapture +recaptured +recapturer +recaptures +recapturing +recarbon +recarbonate +recarbonize +recarbonizer +recarburize +recarburizer +recarnify +recarpet +recarriage +recarrier +recarry +recart +recarve +recase +recash +recasket +recast +recaster +recasting +recasts +recatalogue +recatch +recausticize +recce +recco +reccomed +reccy +rece +recede +receded +recedence +recedent +receder +recedes +receding +receipt +receiptable +receiptless +receiptor +receipts +receivable +receivables +receival +receive +received +receivedness +receivedst +receivefrom +receiveonly +receiver +receivers +receivership +receives +receiveth +receiving +recelebrate +recement +recency +recense +recension +recensionist +recensor +recensure +recensus +recent +recenter +recently +recentness +recentralize +recentre +recept +receptacles +receptacular +receptaculum +receptant +receptible +reception +receptionism +receptionist +receptions +receptitious +receptive +receptively +receptivity +receptor +receptoral +receptorial +receptors +receptual +receptually +recercelee +recertify +recessed +recesser +recesses +recessional +recessionary +recessively +recesslike +recessor +recha +rechab +rechabite +rechabites +rechabitism +rechafe +rechah +rechain +rechal +rechallenge +rechamber +rechange +rechant +rechaos +rechar +recharge +recharter +rechase +rechaser +rechasten +rechauffe +rechaw +recheat +recheck +rechecked +recheer +rechenberg +recherches +rechew +rechip +rechisel +rechkemmer +rechner +rechoose +rechristen +rechuck +rechurn +recidivate +recidivation +recidive +recidivism +recidivist +recidivistic +recidivity +recidivous +recieve +recieved +recieves +recil +reciminate +recipe +recipes +recipiangle +recipience +recipiency +recipiend +recipiendary +recipient +recipients +recipiomotor +reciprocable +reciprocal +reciprocally +reciprocals +reciprocated +reciprocates +reciprocator +recircle +recirculate +recirculated +recirculates +recision +recission +recissory +recitable +recital +recitalist +recitals +recitatif +recitation +recitations +recitative +recitatively +recitativo +recite +recited +recitement +reciter +recites +reciting +recive +recivilize +reckase +reckhard +reckitt +reckla +reckless +recklessly +recklessness +reckling +recknagel +reckon +reckonable +reckoned +reckoner +reckoneth +reckoning +reckonings +reckons +recktenwald +reclaim +reclaimable +reclaimably +reclaimant +reclaimed +reclaimer +reclaimers +reclaiming +reclaimless +reclaimment +reclaims +reclama +reclamations +reclang +reclasp +reclass +reclassified +reclassifies +reclassify +reclean +recleaner +recleanse +reclear +reclearance +reclimb +reclinable +reclinate +reclinated +reclination +recline +reclined +recliner +reclining +reclivate +reclose +reclothe +reclothing +reclusely +recluseness +reclusery +reclusion +reclusive +reclusory +recoach +recoal +recoast +recoat +recock +recoct +recoction +recode +recoded +recoder +recodes +recodify +recoding +recog +recogitate +recogitation +recognise +recognised +recognition +recognitions +recognitive +recognitor +recognitory +recognizable +recognizably +recognizance +recognizant +recognize +recognized +recognizedly +recognizee +recognizer +recognizers +recognizes +recognizing +recognizor +recognosce +recoil +recoiled +recoiler +recoiling +recoilingly +recoilless +recoilment +recoils +recoin +recoinage +recoiner +recoke +recollapse +recollate +recollation +recollect +recollected +recollecting +recollection +recollective +recollet +recolonize +recolor +recomb +recombinant +recombine +recombined +recombines +recombining +recomember +recomend +recomfort +recommand +recommence +recommencer +recommences +recommend +recommended +recommendee +recommender +recommending +recommends +recommission +recommit +recommitment +recommittal +recommitted +recommitting +recommunion +recompact +recompare +recomparison +recompass +recompel +recompence +recompences +recompensate +recompense +recompensed +recompenser +recompensest +recompensing +recompensive +recompete +recompetitor +recompile +recompiled +recompiles +recompiling +recomplain +recomplaint +recomplete +recompletion +recompliance +recomplicate +recomply +recompose +recomposer +recompound +recomprehend +recompress +recompute +recomputed +recomputes +recomputing +recon +reconceal +reconcede +reconceive +reconception +reconcert +reconcession +reconcilable +reconcilably +reconcile +reconciled +reconcilee +reconciler +reconciles +reconciliate +reconciling +reconclude +reconclusion +reconcoct +reconcrete +reconcur +recondemn +recondense +reconditely +recondition +recondole +reconduct +reconduction +reconfer +reconfess +reconfide +reconfigure +reconfigured +reconfigurer +reconfigures +reconfine +reconfirm +reconfiscate +reconform +reconfound +reconfront +reconfuse +reconfusion +recongeal +recongest +recongestion +reconized +reconjoin +reconnect +reconnected +reconnecting +reconnection +reconnects +reconnoiter +reconnoitre +reconnoitred +reconnoitrer +reconquer +reconqueror +reconquest +reconsecrate +reconsent +reconsider +reconsidered +reconsiders +reconsign +reconsole +reconstitute +reconstruct +reconstructs +reconstrue +reconsult +recontact +recontend +recontest +recontinue +recontract +recontrast +recontribute +recontrive +recontrol +reconvalesce +reconvene +reconvention +reconverge +reconverse +reconversion +reconvert +reconverted +reconverts +reconvey +reconveyance +reconvict +reconviction +reconvince +reconvoke +recook +recool +recooper +recopper +recopy +recopyright +record +recordable +recordant +recordation +recordative +recordatory +recorded +recordedly +recorder +recorders +recordership +recording +recordings +recordist +recordless +records +recordsfor +recordvalues +recork +recorporify +recorrect +recorrection +recorrupt +recorruption +recostume +recounsel +recount +recountable +recountal +recounted +recounter +recounting +recountless +recounts +recoup +recoupable +recouper +recouple +recoupment +recourse +recover +recoverable +recoverance +recovered +recoveree +recoverer +recoveries +recovering +recoveringly +recoverless +recovernt +recoveror +recovers +recovery +recquiscat +recramp +recrank +recrate +recreance +recreancy +recreant +recreantly +recreantness +recrease +recreate +recreated +recreates +recreating +recreation +recreational +recreations +recreative +recreatively +recreator +recreatory +recredit +recrement +recremental +recrescence +recrew +recriminated +recriminator +recriticize +recroon +recrop +recross +recrowd +recrown +recrucify +recrudency +recrudesce +recrudescent +recruit +recruitable +recruitage +recruital +recruited +recruitee +recruiter +recruiters +recruithood +recruiting +recruitment +recruitors +recruits +recruity +recrush +recrusher +recruting +recsnik +rect +recta +rectal +rectalgia +rectally +rectangle +rectangled +rectangles +rectangular +rectangulate +rectectomy +recti +rectifiable +rectificator +rectified +rectify +rectifying +rectigrade +rectigraph +rectilineal +rectinerved +rection +rectirostral +rectischiac +rectiserial +rectitic +rectitis +rectitude +recto +rectocele +rectoclysis +rectocolitic +rectocolonic +rectocranial +rectogenital +rectopexy +rectoplasty +rectoral +rectorate +rectoress +rectorial +rectories +rectorrhaphy +rectors +rectorship +rectortown +rectoscope +rectoscopy +rectosigmoid +rectostomy +rectotome +rectotomy +rectovaginal +rectovesical +rectress +rectricial +rectrix +rectum +rectums +rectus +recubant +recubate +reculade +recultivate +recumbence +recumbency +recumbently +recuperance +recuperated +recuperating +recuperation +recuperative +recuperator +recuperatory +recure +recureful +recureless +recurl +recurrence +recurrences +recurrency +recurrent +recurrently +recurrer +recurring +recurringly +recurs +recurse +recursed +recurses +recursing +recursion +recursions +recursive +recursively +recurtain +recurvant +recurvaria +recurvate +recurvation +recurvature +recurve +recurved +recurvity +recurvous +recusance +recusancy +recusation +recusative +recusator +recushion +recussion +recut +recv +recyclable +recycle +recycled +recycler +recycles +recycling +reda +redaction +redactional +redactorial +redaktor +redamage +redamnation +redan +redare +redargue +redargution +redargutive +redargutory +redarken +redarn +redart +redash +redate +redaub +redawn +redback +redbait +redband +redbank +redbanks +redbay +redbeard +redbelly +redberry +redbill +redblock +redbluff +redbone +redbook +redbordered +redbox +redbreast +redbronze +redbrush +redbuck +redbud +redbutton +redby +redcap +redcliff +redcliffe +redcloud +redcreek +redcrest +redcrested +redd +redded +reddell +reddendo +reddendum +reddened +reddening +redder +reddest +reddi +reddick +reddidora +reddigan +redding +reddingite +reddingius +reddingridge +reddington +reddish +reddishness +reddition +reddleman +reddock +reddsman +reddy +rede +redeal +redebate +redebit +redeceive +redecide +redecimate +redecision +redeck +redecker +redeclare +redeclared +redeclares +redeclaring +redecline +redecorate +redecorating +redecoration +redecrease +redecussate +rededicate +rededication +rededicatory +rededit +rededuct +rededuction +redeed +redeem +redeemable +redeemably +redeemed +redeemedst +redeemer +redeemeress +redeemers +redeemership +redeemeth +redeeming +redeemless +redeems +redefault +redefeat +redefecate +redefer +redefiance +redefine +redefined +redefines +redefining +redefinition +redeflect +redefy +redeify +redeker +redelay +redelegate +redelegation +redeliberate +redeliver +redeliverer +redelivery +redemand +redemandable +redemarcate +redemise +redemolish +redemptible +redemptine +redemption +redemptional +redemptioner +redemptively +redemptor +redemptorial +redemptorist +redemptory +redemptress +redemptrice +redenigrate +redeny +redepend +redeploy +redeployment +redeposit +redeposition +redepreciate +redeprive +rederivation +redescend +redescent +redescribe +redesertion +redeserve +redesign +redesignate +redesignated +redesigned +redesigning +redesigns +redesire +redesirous +redesman +redespise +redetect +redetention +redetermine +redevelop +redeveloper +redevise +redevote +redevotion +redeye +redfern +redfield +redfin +redfinch +redfish +redfoot +redford +redfox +redgie +redgranite +redgrave +redhand +redhanded +redhat +redhawk +redheaded +redheadedly +redheart +redhearted +redhibition +redhibitory +redhill +redhook +redhoop +redhot +redhouse +redia +redial +redictate +redictation +redient +redig +redigest +redigestion +redim +redimension +redimensions +rediminish +reding +redingote +redinha +redintegrate +redip +redipper +redirect +redirectable +redirected +redirecting +redirection +redirections +redirector +redirectors +redirects +redisable +redisappear +redisburse +redischarge +rediscipline +rediscount +rediscourage +rediscover +rediscovered +rediscoverer +rediscovery +rediscuss +rediscussion +redisembark +redish +redismiss +redispatch +redispel +redisperse +redisplay +redisplayed +redisplaying +redisplays +redispose +redispute +redissect +redissection +redisseise +redisseisin +redisseisor +redisseize +redisseizin +redisseizor +redissoluble +redissolve +redist +redistend +redistill +redistiller +redistrain +redistrainer +redistribute +redistrict +redisturb +redition +redive +rediversion +redivert +redivertible +redivide +redivision +redivive +redivivous +redivivus +redivorce +redivulge +redivulgence +redjacket +redjang +redkey +redknees +redko +redl +redlake +redlakefalls +redlands +redleg +redlegs +redlevel +redlight +redlined +redlion +redlodge +redly +redman +redmayne +redmon +redmond +redmonstraat +redmountain +redmouth +redneck +redner +redness +rednex +redo +redoak +redock +redocket +redodid +redodoing +redodone +redoing +redolence +redolency +redolent +redolently +redominate +redon +redonda +redondilla +redondo +redondobeach +redone +redoom +redouble +redoubled +redoublement +redoubler +redoubling +redoubt +redoubtable +redoubtably +redoubted +redound +redowa +redowl +redox +redpath +redraft +redrag +redragon +redrape +redraw +redrawer +redrawing +redrawn +redream +redredge +redress +redressable +redressal +redressed +redressement +redresser +redresses +redressible +redressing +redressive +redressless +redressment +redressor +redrill +redrive +redriver +redrock +redroot +redrose +redry +reds +redsear +redseposki +redshaw +redshirt +redskin +redsprings +redstar +redstone +redstreak +redtab +redtail +redtape +redtapism +redtapist +redthroat +redub +redubber +reduce +reduceable +reduced +reducedform +reducement +reducent +reducer +reducers +reduces +reducibility +reducibly +reducing +reduct +reductant +reductase +reductio +reduction +reductional +reductionism +reductionist +reductions +reductive +reductively +reductor +reductorial +redue +redunca +redundance +redundancies +redundancy +redundant +redundantly +reduplicate +reduplicated +reduviid +reduviidae +reduvioid +reduvius +redux +redvale +redward +redware +redwater +redway +redweed +redwine +redwing +redwithe +redwood +redwoodcity +redwoodfalls +redworth +redye +reeba +reece +reecho +reechy +reed +reedbird +reedbush +reedcity +reeded +reeden +reeder +reeders +reedge +reedier +reediest +reedily +reediness +reeding +reedish +reedited +reedition +reedless +reedley +reedlike +reedling +reedmaker +reedmaking +reedman +reedplot +reedpoint +reeds +reedsburg +reedsport +reedsspring +reedsville +reeducate +reeducation +reedville +reedwork +reef +reefable +reefer +reefing +reefs +reefy +reeggiero +reeheights +reek +reeker +reeking +reekingly +reekless +reeky +reel +reelable +reelaiah +reelect +reelected +reelecting +reelects +reeled +reeler +reeling +reelingly +reelrall +reels +reelsville +reem +reembody +reemerge +reeming +reemish +reemphasize +reemphasized +reemphasizes +reemployment +reems +reen +reena +reenable +reenabled +reene +reenforce +reenge +reenter +reenterable +reentered +reentering +reenters +reentrancy +reentrant +reentrantly +reentry +reents +reeny +reeper +reeperbahn +rees +reese +reeseville +reeshle +reesink +reesk +reesle +reest +reestablish +reestate +reester +reestle +reesty +reesville +reet +reeta +reetam +reetle +reetz +reeva +reevaluate +reevaluated +reevaluates +reevaluating +reevaluation +reeve +reeved +reeveland +reeves +reeveship +reevesville +reeving +reexamine +reexamined +reexamines +reexamining +reexecuted +reexports +reface +refaced +refacilitate +refacing +refall +refallow +refan +refascinate +refashion +refashioner +refasten +refathered +refavor +refcnt +refect +refectionary +refectioner +refective +refectorary +refectorer +refectorial +refectorian +refectories +refed +refederate +refeed +refeel +refeign +refel +refence +refer +referats +refered +referee +refereed +referees +reference +referenced +referencer +references +referencing +referendal +referendary +referendum +referendums +referential +referently +referents +refering +referment +referrals +referred +referrer +referrible +referring +refers +refertilize +refetch +reffered +refight +refigure +refill +refillable +refilled +refilling +refills +refilm +refilter +refinable +refinage +refinance +refind +refine +refined +refinedly +refinedness +refinement +refinements +refiner +refineries +refines +refinger +refining +refiningly +refinish +refinisher +refire +refit +refitment +refitted +refitting +refix +refixation +refixture +reflag +reflagellate +reflame +reflash +reflate +reflation +reflationism +reflect +reflected +reflectedly +reflectent +reflecter +reflectible +reflecting +reflectingly +reflection +reflectional +reflections +reflective +reflectively +reflectivity +reflectors +reflects +refledge +reflee +reflemen +reflex +reflexed +reflexes +reflexible +reflexion +reflexism +reflexive +reflexively +reflexives +reflexivity +reflexly +reflexness +reflexology +refling +refloat +refloatation +reflog +reflood +refloor +reflorescent +reflourish +reflow +reflower +refluence +refluency +refluent +reflush +reflux +refluxed +refluxing +refly +refocillate +refocus +refold +refoment +refont +refool +refoot +reforbid +reforce +reford +reforecast +reforest +reforestize +reforestment +reforfeit +reforfeiture +reforge +reforger +reforget +reforgive +reform +reforma +reformable +reformado +reformandum +reformat +reformati +reformation +reformative +reformatness +reformats +reformatted +reformatting +reformed +reformedly +reformer +reformeress +reformers +reforming +reformingly +reformism +reformist +reformistic +reformproof +reforms +reformulate +reformulated +reformulates +reforsake +refortify +reforward +refound +refoundation +refounder +refractable +refracted +refractedly +refractile +refractility +refracting +refraction +refractional +refractive +refractively +refractivity +refractor +refractorily +refracture +refragable +refragment +refrain +refrained +refrainer +refraineth +refraining +refrainment +refrains +reframe +refrangent +refrangible +refreeze +refreezing +refrenation +refrenzy +refresh +refreshant +refreshed +refreshen +refreshener +refresher +refreshers +refreshes +refresheth +refreshful +refreshfully +refreshing +refreshingly +refreshment +refreshments +refrigerant +refrigerated +refrigerator +refrighten +refringence +refringency +refringent +refront +refroze +refrustrate +refry +refs +reft +refton +refuel +refueled +refueling +refuels +refuge +refugee +refugeeism +refugees +refugeeship +refuges +refugia +refugiados +refugio +refulge +refulgence +refulgency +refulgent +refulgently +refunction +refund +refundable +refunder +refunding +refundment +refunds +refurbish +refurbishing +refurl +refurnish +refusable +refusal +refusals +refuse +refused +refusedst +refuser +refuses +refuseth +refusing +refusingly +refusion +refusive +refutability +refutable +refutably +refutal +refutative +refutatory +refuted +refuter +refutes +refuting +rega +regain +regainable +regained +regainer +regaining +regainment +regains +regal +regalbato +regalbuto +regalecidae +regalecus +regaled +regalement +regaler +regalian +regaling +regalism +regalist +regalito +regality +regalize +regallop +regally +regalness +regalvanize +regan +regard +regardable +regardance +regardancy +regardant +regarded +regarder +regardest +regardeth +regardez +regardful +regardfully +regarding +regardless +regardlessly +regards +regarment +regarnish +regarrison +regas +regata +regather +regauge +regazzi +regbody +regcode +regdata +regdmp +regdoor +rege +regedit +regeksp +regelate +regelation +regelia +regelin +regem +regemmelech +regenbogen +regencies +regency +regend +regeneracy +regenerance +regenerant +regenerate +regenerated +regenerates +regenerating +regeneration +regenerative +regenerator +regenerators +regeneratory +regeneratrix +regenesis +regensburg +regental +regentess +regents +regentship +regentspark +regerminate +reges +reget +regex +regexp +regexps +regfile +regfind +regforms +regga +reggae +regge +regged +reggi +reggiani +reggiassun +reggie +reggio +reggy +regi +regia +regiao +regicidal +regicide +regicidism +regier +regift +regifuge +regild +regill +regimbald +regime +regimen +regimenal +regimental +regimentaled +regimentally +regimentals +regimentary +regimented +regiments +regimes +regiminal +regin +regina +reginal +reginald +reginaldo +regine +reginhild +regini +reginita +reginod +reginold +regioes +region +regional +regionalism +regionalist +regionalize +regionally +regionary +regione +regioned +regiones +regioni +regions +regis +regisration +regisry +regista +register +registered +registerer +registering +registers +registership +registral +registrar +registrary +registrate +registration +registrator +registrators +registred +registrer +registries +registrtion +registry +registrypath +regive +regladden +reglair +reglaze +regle +reglement +reglementary +reglementist +reglet +reglorified +regloss +reglove +reglow +reglue +regm +regma +regmacarp +regmain +regnal +regname +regnancy +regnant +regnard +regnerable +regnier +regnum +regnumba +regnumbaz +regnumber +rego +regognized +regolith +regorge +regovern +regpatch +regradation +regrade +regraduate +regraduation +regraft +regrant +regrasp +regrass +regrate +regrater +regratify +regrating +regratingly +regrator +regratress +regravel +regrede +regreen +regreet +regrese +regreso +regressand +regressed +regresses +regressing +regressions +regressive +regressively +regressivity +regressor +regret +regretful +regretfully +regretless +regrets +regrettable +regrettably +regrette +regretted +regretter +regretting +regrettingly +regrind +regrinder +regrip +regroup +regrouped +regrouping +regroupment +regrow +regrowth +regrun +regs +regsubj +regsum +regtune +reguarantee +reguard +reguardant +reguerdon +reguide +regula +regulable +regular +regulares +regularia +regularities +regularity +regularize +regularized +regularizer +regularizing +regularly +regularness +regulars +regulary +regulatable +regulate +regulated +regulates +regulating +regulation +regulations +regulative +regulatively +regulator +regulators +regulatress +regulatris +reguli +reguline +regulize +regulyarno +regum +regur +regurge +regurgitant +regurgitated +reguse +regush +rehab +rehabiah +rehair +rehale +rehallow +rehammer +rehandicap +rehandle +rehandler +rehandling +rehang +rehaniya +rehappen +reharden +reharm +reharmonize +reharness +reharrow +reharvest +rehash +rehashed +rehashing +rehaul +rehavam +rehave +rehazard +rehbein +rehberg +rehder +rehead +reheal +reheap +rehear +rehearheard +rehearing +rehearsals +rehearse +rehearsed +rehearser +rehearses +rehearsing +rehearten +reheat +reheater +reheboth +rehedge +reheel +reheighten +rehel +rehi +rehkopf +rehm +rehman +rehme +rehn +rehob +rehobeth +rehoboam +rehoboth +rehobothan +rehoe +rehoist +rehollow +rehonor +rehonour +rehood +rehook +rehoop +rehosed +rehost +rehosting +rehouse +rehrersburg +rehug +rehum +rehumanize +rehumble +rehumiliate +rehung +rehybridize +rehydrate +rehydrated +rehydration +reich +reichenbach +reicher +reichertz +reichhardt +reichinger +reichman +reichmann +reichmuth +reichow +reichsgulden +reichsland +reichslander +reichsmark +reichsrath +reichstadt +reichstaler +reicht +reichtun +reid +reidelberger +reidentify +reidsville +reidville +reif +reiff +reification +reify +reigate +reigle +reign +reigned +reignest +reigneth +reigning +reignite +reignition +reignore +reigns +reihl +reijerkerk +reijo +reiko +reill +reillume +reilluminate +reillumine +reillustrate +reilly +reilman +reim +reimage +reimagine +reiman +reimann +reimbark +reimbibe +reimbody +reimbold +reimbursed +reimburser +reimbursing +reimbush +reimbushment +reimer +reimers +reimkennar +reimmerge +reimmerse +reimmersion +reimmigrant +reimpact +reimpark +reimpart +reimpatriate +reimpel +reimplant +reimplement +reimply +reimport +reimportune +reimpose +reimposition +reimposure +reimpregnate +reimpress +reimpression +reimprint +reimprison +reimprove +reimpulse +rein +reina +reinaba +reinability +reinach +reinaldo +reinalt +reinaugurate +reinbeck +reinbolt +reinboth +reincapable +reincarnate +reincarnated +reincense +reincentive +reincidence +reincidency +reincite +reincke +reincline +reinclude +reinclusion +reincrease +reincrudate +reinculcate +reincur +reind +reindebted +reindeer +reindeers +reindel +reindicate +reindication +reindict +reindictment +reindorse +reinduce +reinducement +reindue +reindulge +reindulgence +reine +reineck +reinecke +reined +reineke +reiner +reinertsen +reinette +reinfect +reinfection +reinfectious +reinfer +reinfest +reinflame +reinflate +reinflation +reinflict +reinfliction +reinfluence +reinforce +reinforced +reinforcer +reinforces +reinforcing +reinform +reinfuse +reinfusion +reingard +reingraft +reingratiate +reingress +reinhabit +reinhard +reinhardt +reinheart +reinherit +reinhoff +reinhold +reinholds +reinholt +reininghaus +reinink +reinitialize +reinitiate +reinitiation +reinject +reinjure +reinke +reinking +reinless +reinlie +reinmuth +reinmuthia +reinoculate +reinquire +reinquiry +reins +reinsane +reinsanity +reinscribe +reinsel +reinsert +reinserted +reinserting +reinsertion +reinserts +reinsist +reinsman +reinspect +reinspection +reinspector +reinsphere +reinspire +reinspirit +reinstall +reinstalled +reinstalment +reinstated +reinstates +reinstating +reinstation +reinstator +reinstil +reinstill +reinstitute +reinstruct +reinsult +reinsurance +reinsure +reinsurer +reintegrate +reintend +reinter +reintercede +reinterest +reinterfere +reinterment +reinterpret +reinterprets +reinterrupt +reintervene +reinterview +reinthrone +reintimate +reintimation +reintitule +reintrench +reintroduce +reintroduced +reintroduces +reintrude +reintrusion +reintuition +reintuitive +reintz +reinvade +reinvasion +reinvent +reinvented +reinventing +reinvention +reinventor +reinvents +reinversion +reinvert +reinvest +reinvestment +reinvigorate +reinvitation +reinvite +reinvoice +reinvolve +reinwald +reinwardtia +reirrigate +reirrigation +reis +reisen +reisenweber +reiser +reisicitner +reising +reisler +reisman +reisner +reisolation +reiss +reisser +reissuable +reissue +reissued +reissuement +reissuer +reist +reisterstown +reit +reitbok +reitbuck +reitemize +reiter +reiterable +reiterance +reiterant +reiterate +reiterated +reiteratedly +reiterates +reiterating +reiteration +reiterative +reitfort +reith +reittan +reitze +reiver +reivers +reiwo +reize +rejail +rejang +rejangbaram +rejanglebong +rejangsajau +rejean +rejeanne +reject +rejectable +rejectage +rejectamenta +rejectaneous +rejected +rejecteth +rejecting +rejectingly +rejection +rejections +rejectious +rejective +rejectment +rejector +rejectors +rejects +rejerk +rejhon +rejoice +rejoiced +rejoiceful +rejoicement +rejoicer +rejoices +rejoicest +rejoiceth +rejoicing +rejoicingly +rejoin +rejoined +rejoining +rejoins +rejolt +rejourney +rejudge +rejumble +rejunction +rejustify +rejuvenant +rejuvenated +rejuvenating +rejuvenation +rejuvenative +rejuvenator +rejuvenesce +rejuvenize +reka +rekem +rekert +rekha +rekhta +rekhti +reki +rekick +rekill +rekindle +rekindlement +rekindler +reking +rekiss +reklama +reklaw +reknit +reknow +rekord +rekowski +rektomee +rektor +reky +relabel +relabeled +relabeling +relabelled +relabelling +relabels +relacao +relace +relacquer +relade +reladen +relais +relament +relamp +reland +relap +relapper +relapsable +relapse +relapsed +relapseproof +relapser +relapses +relapsing +relast +relaster +relata +relatability +relatable +relatch +relate +related +relatedness +relater +relates +relating +relation +relational +relationally +relationals +relationary +relationism +relationist +relationless +relations +relationship +relatival +relative +relatively +relativeness +relatives +relativism +relativist +relativistic +relativity +relativize +relativly +relator +relators +relatrix +relatum +relaunch +relax +relaxable +relaxant +relaxation +relaxations +relaxative +relaxatory +relaxed +relaxedly +relaxedness +relaxen +relaxer +relaxes +relaxing +relay +relayed +relaying +relayman +relays +relbun +relchow +relcom +relea +relead +releap +relearn +release +releaseback +released +releasee +releasement +releaser +releases +releasing +releasor +releather +releazed +relection +relegable +relegate +relegated +relegates +relegating +relegation +relend +relent +relented +relenting +relentingly +relentless +relentlessly +relentment +relents +relessee +relessor +relet +reletter +relevance +relevances +relevancy +relevant +relevantly +relevate +relevation +relevator +releve +relevel +relevent +relevy +reli +relia +reliability +reliabilty +reliable +reliableness +reliably +reliance +reliant +reliantly +reliberate +relic +relicary +relicense +relick +reliclike +relicmonger +relics +relicted +reliction +relied +relief +reliefless +relier +relies +relievable +relieve +relieved +relievedly +reliever +relievers +relieves +relieveth +relieving +relievingly +relievo +relift +religate +religation +relight +relightable +relighten +relightener +relighter +religieuse +religiey +religion +religionary +religionate +religioner +religionism +religionist +religionize +religionless +religions +religiose +religious +religiously +relime +relimit +relimitation +reline +reliner +relink +relinquent +relinquish +relinquished +relinquisher +relinquishes +reliquaire +reliquary +reliquefy +reliquiae +reliquian +reliquidate +reliquism +relish +relishable +relished +relisher +relishes +relishing +relishingly +relishsome +relishy +relist +relisten +relitigate +relive +relived +relives +reliving +reliz +relizane +relize +relized +relja +rella +rellan +rellence +reller +rellyan +rellyanism +rellyanite +rellys +reload +reloaded +reloader +reloading +reloads +reloan +relocable +relocatable +relocate +relocated +relocates +relocating +relocation +relocations +relocator +relock +relodge +relook +relose +relost +relot +relove +relower +relph +relsacher +relucent +reluct +reluctance +reluctancy +reluctant +reluctantly +reluctate +reluctation +reluctivity +relume +relumine +relva +rely +relying +remade +remagnetize +remagnify +remail +remain +remainder +remainderman +remainders +remained +remainer +remainest +remaineth +remaining +remains +remaintain +remakable +remake +remaker +remaliah +remanage +remanagement +remanation +remancipate +remandment +remanence +remanency +remanent +remanet +remaning +remanipulate +remantle +remanure +remap +remapping +remaps +remar +remarch +remargin +remark +remarkable +remarkably +remarked +remarkedly +remarker +remarket +remarking +remarks +remarque +remarriage +remarried +remarry +remarshal +remask +remass +remast +remasticate +rematch +rembargic +rembarranga +rembarrnga +rembarunga +rembecki +rembert +rembish +remble +remboken +rembrandtish +rembrandtism +rembrandts +remeant +remeasure +remeasuring +remeber +remeck +remede +remediably +remedially +remediation +remedied +remedies +remediless +remedilessly +remedios +remeditate +remeditation +remedy +remedying +remeet +remek +remelt +remember +rememberable +rememberably +remembere +remembered +rememberer +rememberest +remembereth +remembering +remembers +rememberthat +remembrance +remembrancer +remembrances +rememeber +rememoration +rememorize +remenace +remend +remengesau +remer +remerge +remers +remet +remetal +remeth +remex +remezov +remi +remica +remicate +remication +remick +remicle +remiey +remiform +remigate +remigation +remiges +remigial +remigio +remigrant +remigrate +remigration +remijia +remilitarize +remill +remillard +remimic +remind +remindal +reminded +reminder +reminders +remindful +reminding +remindingly +remindme +reminds +remineralize +remingle +remington +reminicent +reminisced +reminiscence +reminiscency +reminiscent +reminiscer +reminiscing +remint +remiped +remirror +remis +remise +remiss +remissful +remissible +remission +remissive +remissively +remissly +remissness +remissory +remit +remitment +remittable +remittal +remittancer +remittances +remitted +remittee +remittence +remittency +remittent +remittently +remitter +remittitur +remittor +remix +remixture +remlap +remley +remme +remmick +remmon +remnant +remnantal +remnants +remo +remob +remobilize +remoboth +remock +remodel +remodeled +remodeler +remodeling +remodelled +remodeller +remodelling +remodelment +remodels +remodify +remolade +remolarde +remold +remollient +remon +remonetize +remonstrance +remonstrant +remonstrated +remonstrates +remonstrator +remontado +remontant +remontoir +remop +remora +remord +remorse +remorsefully +remorseless +remorseproof +remortgage +remos +remote +remoteaccess +remotely +remoteness +remoter +remotest +remotewin +remotion +remotive +remotti +remould +remoulin +remount +remounted +remounting +remoute +removability +removable +removably +removal +removals +remove +removed +removedly +removedness +removement +remover +removes +removeth +removing +rempart +remphan +rempi +rempin +remqhi +remqti +remque +remrey +rems +remsen +remsenburg +remson +remsql +remu +remuda +remugient +remultiply +remunerable +remunerably +remunerated +remunerating +remuneration +remunerative +remunerator +remuneratory +remurmur +remuster +remutation +remy +remzi +rena +renable +renably +renae +renail +renaissance +renaissant +renalara +renaldi +renaldo +rename +renamed +renamer +renames +renametable +renamewiz +renaming +renan +renant +renard +renardine +renascence +renascency +renascent +renascible +renata +renatag +renate +renato +renature +renaud +renauxa +renavant +renavat +renavent +renavigate +renavigation +rencharo +rencher +rencontre +rencontres +rencounter +rencounters +renculus +rend +rende +rendell +render +renderable +rendered +renderer +renderest +rendereth +rendering +renderings +renders +renderset +rendez +rendezvous +rendezvoused +rendibility +rendible +rendile +rendille +rendina +rending +rendino +rendition +renditions +rendl +rendlesham +rendlewood +rendon +rendor +rendova +rendra +rendre +rendrock +rends +rendu +rendzina +rene +reneague +renealmia +reneau +renee +reneg +renegade +renegades +renegadism +renegado +renegation +renege +reneged +reneger +reneging +reneglect +renegotiate +renegue +renehan +renell +renella +renelle +renerve +renes +renet +renevant +renevent +renew +renewability +renewable +renewably +renewal +renewals +renewed +renewedly +renewedness +renewer +renewest +renewing +renewment +renews +renfe +renfield +renfrew +renfro +renfroe +renfrovalley +rengao +renggou +rengjongmu +rengma +rengmas +renhtml +reni +renicardiac +renick +renickel +renidify +renie +renier +reniform +renilla +renillidae +renin +reniportal +renipuncture +renish +renishly +renitence +renitency +renitent +renja +renji +renk +renken +renko +renky +renmin +renn +renne +rennell +rennellese +renner +rennes +rennet +renneting +rennick +rennie +rennin +renninge +renniogen +rennit +renny +reno +renogastric +renography +renoir +renominate +renomination +renormalize +renormalized +renotation +renotice +renotify +renoudot +renouf +renounce +renounceable +renounced +renouncement +renouncer +renounces +renouncing +renourish +renovated +renovater +renovating +renovatingly +renovation +renovative +renovator +renovatory +renovize +renovo +renown +renowned +renownedly +renownedness +renowner +renownful +renownless +rensch +renshaw +rensheimer +rensing +renssclaer +rensta +rent +rentability +rentable +rentachler +rentage +rental +rentaler +rentaller +rentals +rentaro +rented +rentee +renter +rentest +rentfree +rentiesville +renting +rentless +rentman +renton +rentoul +rentrant +rentrayeuse +rents +rentschler +rentz +renu +renucci +renumber +renumbered +renumbering +renumbers +renumerate +renumeration +renunciable +renunciance +renunciant +renunciation +renunciative +renunciator +renunciatory +renunculus +renverse +renville +renvoi +renvoy +renwick +renyi +renzi +renzia +renzo +reobject +reobligate +reobligation +reoblige +reobscure +reobserve +reobtain +reobtainable +reobtainment +reoccasion +reoccupation +reoccupied +reoccupy +reoccur +reoccurrence +reoccurs +reoffend +reoffense +reoffer +reoffset +reoil +reolving +reometer +reomission +reomit +reopen +reopened +reopening +reopens +reoperate +reoperation +reoppose +reopposition +reoppress +reoppression +reordain +reorder +reordered +reordering +reorders +reordinate +reordination +reorg +reorganize +reorganized +reorganizer +reorganizes +reorganizing +reorgtable +reorient +reorienting +reornament +reoutfit +reoutline +reoutput +reoutrage +reovercharge +reoverflow +reovertake +reoverwork +reown +reoxidation +reoxidize +reoxygenate +reoxygenize +repace +repacify +repack +repackage +repacker +repaganize +repaganizer +repage +repaid +repaint +repainted +repair +repairable +repaired +repairer +repairing +repairs +repale +repanbitip +repand +repandly +repandous +repanel +repaper +reparability +reparable +reparably +reparagraph +reparate +reparations +reparative +reparatory +reparaz +repark +repartable +repartake +repartee +reparteeist +repartition +repass +repassable +repassage +repasser +repast +repaste +repasts +repasture +repatch +repatency +repatent +repatriable +repatriate +repatriated +repatriating +repatriation +repatronize +repattern +repave +repavement +repawn +repay +repayable +repayal +repayed +repayeth +repaying +repayment +repayments +repays +repealable +repealed +repealer +repealing +repealist +repealless +repeals +repeat +repeatable +repeatal +repeated +repeatedly +repeaters +repeateth +repeating +repeats +repeg +repel +repellance +repellant +repellence +repellency +repellent +repellently +repeller +repelling +repellingly +repels +repen +repenetrate +repension +repent +repentable +repentance +repentantly +repented +repenter +repentest +repenteth +repenting +repentingly +repentings +repents +repeople +reperceive +repercept +reperception +repercuss +repercussion +repercussive +repercutient +reperform +reperfume +reperible +repermission +repermit +reperplex +repersuade +repersuasion +repertoire +repertorial +repertories +repertorily +repertorium +reperusal +reperuse +repeta +repetatively +repetend +repetition +repetitional +repetitionen +repetitions +repetitive +repetitively +repetitory +repetoire +repetticoat +repew +rephael +rephah +rephaiah +rephaim +rephaims +rephase +rephidim +rephonate +rephotograph +rephrase +rephrased +rephrases +rephrasing +repic +repick +repicolous +repicture +repiece +repile +repin +repine +repined +repineful +repinement +repiner +repining +repiningly +repipe +repique +repitch +repkie +replace +replaced +replacement +replacements +replacer +replaces +replacing +replait +replan +replane +replant +replantable +replantation +replanted +replanter +replaster +replate +replay +replayed +replaying +replays +replead +repleader +repleat +repledge +repledger +replenish +replenished +replenisher +replenishes +replenishing +repletely +repleteness +repletion +repletive +repletively +repletory +repleviable +replevin +replevisable +replevisor +replevy +repliant +replica +replicant +replicas +replicate +replicated +replicates +replicatile +replicating +replication +replications +replicative +replicator +replicatory +replied +replier +replies +repliest +repliez +replight +replod +replot +replotment +replotted +replotter +replough +replow +replum +replume +replunder +replunge +reply +replying +replyingly +repmanad +repo +repocket +repoint +repolish +repoll +repollute +repolon +repolymerize +repoman +reponder +repone +repope +repopulate +repopulation +report +reportable +reportage +reportbasic +reported +reportedly +reporter +reporteress +reporterism +reporters +reportership +reporting +reportingly +reportion +reportit +reportoral +reportorial +reports +reportsmith +repos +reposal +repose +reposed +reposedly +reposedness +reposeful +reposefully +reposer +reposes +reposing +reposit +repositary +reposition +repositioned +repositions +repositor +repositories +repository +repossess +repossession +repossessor +repost +reposted +repostpone +repot +repound +repour +repousse +repowder +repp +reppe +repped +repperbahn +reppucci +repractice +repray +reprazent +repreach +repredict +reprefer +reprehend +reprehender +reprehension +reprehensive +reprehensory +reprepare +represcribe +represent +representant +represented +representer +representing +represents +represide +repress +repressed +repressedly +represser +represses +repressible +repressibly +repressing +repression +repressions +repressive +repressively +repressment +repressor +repressory +repressure +reprice +reprieval +reprieved +repriever +reprieves +reprieving +reprimand +reprimander +reprimanding +reprime +reprimer +reprint +reprinted +reprinter +reprinting +reprints +reprisal +reprisalist +reprisals +reprise +reprising +repristinate +reprivatize +reprivilege +reproach +reproachable +reproachably +reproached +reproacher +reproaches +reproachest +reproacheth +reproachful +reproaching +reproachless +reprobacy +reprobance +reprobate +reprobated +reprobater +reprobates +reprobating +reprobation +reprobative +reprobator +reprobatory +reproceed +reprocess +reprocessed +reproclaim +reprocurable +reprocure +reproduce +reproduced +reproducer +reproducers +reproduces +reproducible +reproducibly +reproducing +reproduction +reproductive +reproductory +reprofane +reprofess +reprogram +reprogrammed +reprograms +reprohibit +repromise +repromulgate +repronounce +reproof +reproofless +reproofs +repropagate +repropitiate +reproportion +reproposal +repropose +reprosecute +reprosper +reprotect +reprotection +reprotest +reprovable +reprovably +reproval +reprove +reproved +reprover +reproveth +reprovide +reproving +reprovingly +reprovision +reprovoke +reprune +reps +repsolda +reptant +reptatorial +reptatory +reptile +reptiledom +reptilelike +reptiles +reptilferous +reptilia +reptilian +reptiliary +reptiliform +reptilious +reptilism +reptility +reptiloid +repton +republi +republic +republica +republican +republicans +republics +republika +republikaner +republike +republiky +republique +republish +republished +republisher +repuddle +repudiable +repudiated +repudiates +repudiating +repudiation +repudiations +repudiative +repudiator +repudiatory +repuff +repugn +repugnable +repugnance +repugnancy +repugnantly +repugnate +repugner +repullulate +repulpit +repulse +repulsed +repulseless +repulseproof +repulser +repulses +repulsing +repulsions +repulsive +repulsively +repulsory +repulverize +repump +repunch +repunched +repunish +repunishment +repurchase +repurchaser +repurchasing +repurge +repurify +repurple +repurpose +repursue +repursuit +reputability +reputable +reputably +reputation +reputations +reputative +reputatively +repute +reputed +reputedly +reputeless +reputes +reputing +reqs +requ +requa +requalify +requarantine +requeen +requelme +requena +requench +requently +request +requested +requester +requesters +requesting +requestion +requests +requeued +requiem +requienia +requiers +requiescence +requin +requirable +require +required +requiredfor +requiredto +requirement +requirements +requirems +requirer +requires +requirest +requireth +requiring +requirs +requiscat +requisitely +requisites +requisitions +requisitor +requisitory +requit +requitable +requital +requitative +requite +requited +requiteful +requitement +requiter +requiting +requiz +requotation +requote +requries +rerack +reracker +reradiation +rerail +reraise +rerake +reran +rerank +rerate +rerau +reread +rereader +rereading +rerebere +rerebrace +reree +rereel +rereeve +rerefief +reregister +reregistered +reregulate +reregulation +rereign +reremouse +rerent +rerental +rerep +reresupper +rereward +reri +rerig +rering +rerise +rerival +rerivet +rerngchai +rerob +rerobe +reroll +reroof +reroot +rerope +reroute +rerouted +reroutes +rerow +reroyalize +rerub +rerummage +rerun +rerunning +reruns +resaca +resack +resacrifice +resaddle +resail +resalable +resale +resalt +resalutation +resalute +resalvage +resample +resanctify +resanction +resatisfy +resaw +resawer +resawyer +resay +resazurin +rescan +rescattering +resch +reschedule +reschke +rescindable +rescinded +rescinder +rescindment +rescissible +rescission +rescissory +rescore +rescources +rescramble +rescratch +rescribe +rescript +rescription +rescriptive +rescrub +rescuable +rescue +rescued +rescueless +rescuer +rescuers +rescues +rescueth +rescuing +resdoc +rese +reseal +reseam +research +researched +researcher +researchers +researches +researchful +researching +researchist +reseat +reseating +resecrete +resecretion +resect +resection +resectional +reseda +resedaceae +resedaceous +resee +reseed +reseeding +reseek +resegment +reseise +reseiser +reseize +reseizer +reseizure +resek +resel +reselect +reselected +reselecting +reselection +reselects +reself +resell +reseller +reselling +resemblable +resemblance +resemblances +resemble +resembled +resembler +resembles +resembling +resemblingly +reseminate +resen +resend +resending +resends +resene +resensation +resensitize +resent +resented +resentence +resenter +resentfully +resentience +resenting +resentingly +resentive +resentless +resentment +resents +resepulcher +resequencing +resequent +resequester +reserene +reservable +reserval +reservation +reservations +reservatory +reserve +reserved +reservedly +reservedness +reservee +reserveful +reserveless +reserver +reservery +reserves +reserveth +reservice +reserving +reservior +reservist +reservoir +reservoirs +reservor +reset +resets +resetswt +resettable +resetter +resetting +resettings +resettle +resettled +resettlement +resever +resew +resex +resgisters +resh +reshake +reshape +reshare +resharpen +reshave +reshe +reshear +reshearer +resheathe +reshelve +resheniya +resheph +reshetki +reshiat +reshift +reshil +reshili +reshine +reshingle +reship +reshipment +reshipper +reshma +reshman +reshoe +reshoot +reshoulder +reshovel +reshower +reshrine +reshuffle +reshun +reshunt +reshut +reshuttle +resi +resiance +resiant +resiccate +reside +resided +residence +residencer +residences +residencies +residency +resident +residental +residenter +residential +residentiary +residents +residentship +resider +resides +residing +residua +residuals +residuation +residue +residuent +residues +residuous +residuua +resift +resigaro +resigero +resigh +resignal +resignatary +resignations +resigned +resignedly +resignedness +resignee +resigner +resignful +resigning +resignment +resigns +resile +resilement +resilial +resiliate +resilience +resiliency +resilient +resilifer +resiliometer +resilition +resilium +resilver +resina +resinaceous +resinate +resinbush +resiner +resinfiable +resing +resinic +resiniferous +resinifluous +resiniform +resinify +resinize +resink +resinlike +resinogenous +resinoid +resinol +resinolic +resinophore +resinosis +resinous +resinously +resinousness +resins +resipiscence +resipiscent +resist +resistable +resistably +resistance +resistances +resistant +resistantly +resisted +resistencia +resister +resisteth +resistful +resistibly +resisting +resistingly +resistively +resistivity +resistless +resistlessly +resistors +resists +resitting +resize +resizer +resizes +resizing +resketch +reski +reskin +reslash +reslate +reslay +reslide +reslot +resmell +resmelt +resmile +resmini +resmooth +resnap +resnatch +resnatron +resnick +resnik +resnub +resoak +resoap +resoften +resoil +resojourn +resol +resold +resolder +resole +resoled +resolemnize +resolicit +resolidify +resoling +resoltn +resolubility +resoluble +resolutely +resoluteness +resolution +resolutioner +resolutions +resolutory +resolvable +resolvancy +resolve +resolveable +resolved +resolvedly +resolvedness +resolvent +resolver +resolvers +resolves +resolvible +resolving +resonable +resonance +resonances +resonancy +resonant +resonantly +resonated +resonator +resonatory +resonses +resoothe +resorb +resorbence +resorbent +resorcin +resorcine +resorcinism +resorcinum +resorcylic +resore +resorption +resorptive +resort +resorted +resorter +resorting +resorts +resorufin +resought +resound +resounder +resounding +resoundingly +resounds +resource +resourcefile +resourceful +resourceless +resourcepoor +resources +resoutive +resow +resp +respace +respade +respan +respangle +resparkle +respeak +respecified +respecify +respect +respectable +respectably +respectant +respected +respecter +respecteth +respectfully +respecting +respective +respectively +respectless +respects +respell +resperse +respersion +respersive +respin +respirable +respiration +respirative +respiratored +respiratory +respired +respiring +respirit +respiro +respirometer +respirometry +respite +respiteless +resplend +resplendence +resplendency +resplendent +resplice +resplit +respoke +responce +respond +responde +responded +respondence +respondency +respondentia +respondents +responder +responders +responding +responds +respondto +responsal +responsary +response +responseless +responser +responses +responsible +responsibly +responsion +responsive +responsively +responsivity +responsorial +responsory +respot +respray +respread +respresent +respring +resprout +respublika +respubliki +respue +resquare +resqueak +ress +ressaidar +ressala +ressaldar +ressaut +ressel +ressing +ressner +rest +restable +restack +restaff +restain +restainable +restake +restamp +restant +restart +restartable +restarted +restarting +restarts +restate +restated +restatement +restates +restating +restaur +restaurant +restaurants +restaurate +restauration +restbalk +resteal +rested +resteel +resteep +restem +restep +rester +resterilize +restes +restest +resteth +restfully +restfulness +restharrow +resthome +resthouse +restiaceae +restiaceous +restiad +restif +restiff +restiffen +restiffener +restiffness +restifle +restiform +restigmatize +restigouche +restimate +restimulate +restin +resting +restingly +restingplace +restio +restionaceae +restipulate +restir +restis +restitch +restitute +restitution +restitutive +restitutor +restitutory +restively +restiveness +restless +restlessly +restlessness +restlin +restock +reston +restopper +restorable +restoral +restoration +restorations +restorator +restoratory +restore +restored +restorefont +restorer +restorers +restores +restoreth +restoring +restow +restowal +restproof +restraighten +restrain +restrainable +restrained +restrainedly +restrainer +restrainers +restrainest +restraining +restrains +restraint +restraintful +restraints +restrap +restream +restrengthen +restrepo +restress +restretch +restrict +restricted +restrictedly +restricting +restriction +restrictions +restrictive +restricts +restrike +restring +restringe +restringency +restringent +restrip +restrive +restroke +restructure +restructured +restructures +rests +restudy +restuff +resturant +restward +restwards +resty +restyle +restyled +resubject +resubjection +resubjugate +resublime +resubmerge +resubmission +resubmit +resubmitted +resubmitting +resubscribe +resubscriber +resubstitute +resucceed +resuck +resudation +resue +resuffer +resufferance +resuggest +resuggestion +resuing +resuit +result +resultance +resultancy +resultant +resultantly +resultants +resultative +resulted +resultful +resultfully +resulting +resultingly +resultive +resultless +resultlessly +results +resumability +resumable +resume +resumed +resumer +resumes +resuming +resummon +resummons +resumption +resumptions +resumptive +resumptively +resun +resup +resuperheat +resupervise +resupinate +resupinated +resupination +resupine +resupply +resupport +resuppose +resuppress +resurface +resurfaced +resurfacing +resurge +resurgence +resurgency +resurprise +resurrect +resurrected +resurrecting +resurrection +resurrective +resurrector +resurrectors +resurrects +resurrender +resurround +resurui +resurvey +resuscitable +resuscitant +resuscitated +resuscitator +resuspect +resuspend +resuspension +resutls +reswage +reswallow +resward +reswarm +reswear +resweat +resweep +reswell +reswill +reswim +resymbolize +resync +resynthesis +resynthesize +reta +retable +retack +retackle +retag +retail +retailer +retailers +retailing +retailment +retailor +retain +retainable +retainal +retainder +retained +retainer +retainers +retainership +retaineth +retaining +retainment +retains +retake +retaken +retaker +retaking +retal +retalhuleu +retaliate +retaliated +retaliating +retaliation +retaliative +retaliator +retalk +retallack +retama +retame +retan +retana +retanner +retap +retape +retaped +retardance +retardate +retardative +retardatory +retarded +retardence +retardent +retarder +retarding +retardingly +retardive +retardment +retardure +retare +retarget +retargeted +retargeting +retariff +retaste +retation +retattle +retax +retaxation +retched +retcon +retconned +rete +reteach +retear +retecious +retection +retelegraph +retelephone +retell +retelling +retem +retemper +retempt +retemptation +retenant +retender +retene +retent +retention +retentionist +retentions +retentively +retentivity +retentor +retepora +retepore +reteporidae +retest +retested +retesting +retexture +retf +retha +rethank +rethatch +rethaw +rethe +rethel +retheness +retherford +rethicken +rethimni +rethink +rethinking +rethrash +rethread +rethreaten +rethresh +rethresher +rethrill +rethrive +rethrone +rethrow +rethrust +rethunder +retia +retial +retiariae +retiarian +retiarius +retiary +reticella +reticello +reticence +reticency +reticent +reticently +reticket +reticle +reticles +reticula +reticular +reticularia +reticularian +reticularly +reticulary +reticulated +reticulately +reticulates +reticulating +reticulation +reticule +reticuled +reticulin +reticulitis +reticulocyte +reticulosa +reticulose +retie +retier +retiform +retighten +retightening +retile +retill +retimber +retime +retin +retina +retinacular +retinaculate +retinaculum +retinae +retinalite +retinas +retinasphalt +retincture +retinene +retinerved +retinian +retinispora +retinite +retinitis +retinize +retinker +retinoid +retinol +retinopathy +retinophoral +retinophore +retinoscope +retinoscopic +retinoscopy +retinospora +retinula +retinular +retinule +retip +retiracied +retiracy +retirade +retiral +retire +retired +retiredly +retiredness +retirement +retirements +retirer +retires +retiring +retiringly +retiringness +retistene +retkon +retlex +retoast +retold +retolerate +retoleration +retomb +retonation +retook +retool +retooling +retooth +retoother +retord +retore +retortable +retorted +retorter +retortion +retortive +retorts +retorture +retoss +retossing +retotal +retouch +retoucher +retouching +retouchment +retour +retourable +retrace +retraceable +retraced +retracement +retraces +retracing +retrack +retract +retractable +retractation +retracted +retractible +retractile +retractility +retracting +retraction +retractions +retractive +retractively +retractor +retracts +retrad +retrade +retradition +retrahent +retrain +retrained +retraining +retrains +retral +retrally +retramp +retrample +retranscribe +retransfer +retransform +retransfuse +retransit +retranslate +retranslated +retransmit +retransmits +retransmute +retransplant +retransport +retrat +retravel +retraverse +retraxit +retread +retreat +retreatal +retreatant +retreated +retreater +retreatful +retreating +retreative +retreatment +retreats +retree +retreiver +retrench +retrenchable +retrencher +retrenchment +retrevial +retrial +retribute +retribution +retributive +retributor +retributory +retricked +retried +retrier +retriers +retries +retrievable +retrievably +retrieval +retrievals +retrieve +retrieveable +retrieved +retrieveless +retrievement +retriever +retrieverish +retrievers +retrieves +retrieving +retrim +retrimmer +retrip +retro +retroact +retroaction +retroactive +retrobuccal +retrobulbar +retrocaecal +retrocardiac +retrocecal +retrocede +retrocedence +retrocedent +retrocession +retrocessive +retrochoir +retroclusion +retrocolic +retrocostal +retrocouple +retrocoupler +retrocult +retrocurved +retrodate +retroduction +retrodural +retrofire +retrofired +retrofiring +retrofit +retroflected +retroflex +retroflexed +retroflexion +retroflux +retroform +retrofract +retrofracted +retrofrontal +retrogastric +retrograded +retrogradely +retrograding +retrogradism +retrogradist +retrohepatic +retrohk +retroinsular +retroiridian +retroject +retrojection +retrojugular +retrolental +retrolingual +retromammary +retromastoid +retromingent +retronasal +retroplexed +retroposed +retropubic +retropulsion +retropulsive +retrorectal +retrorenal +retrorse +retrorsely +retros +retroserrate +retrosplenic +retrostalsis +retrostaltic +retrosternal +retrot +retrotarsal +retrothyroid +retrousse +retrovaccine +retroverse +retroversion +retrovert +retrovirus +retroxiphoid +retrude +retrue +retrusible +retrusion +retrust +retry +retrying +retsina +retsof +retsu +retta +retted +retter +rettery +rettie +rettig +retting +rettmann +retton +rettory +retty +retuama +retube +retuck +retumble +retumescence +retune +returban +returf +returfer +return +returnable +returned +returner +returneth +returning +returnless +returnlessly +returns +returnto +retuse +retwine +retwist +retying +retype +retyped +retypes +retyping +retzian +retzinsky +reuben +reubenite +reubenites +reubens +reuber +reuchlinian +reuchlinism +reud +reuel +reumah +reundercut +reundergo +reundertake +reundulate +reundulation +reune +reunerta +reunfold +reunify +reunion +reunionese +reunionism +reunionist +reunionistic +reunions +reunitable +reunite +reunited +reunitedly +reuniter +reuniting +reunition +reunitive +reunpack +reuphold +reupholster +reuplift +reurge +reusable +reusble +reusch +reuschel +reuse +reused +reuses +reusing +reuss +reusse +reuters +reutilize +reutter +reutterance +reuven +reva +revacate +revaccinate +revach +revache +revah +reval +revalenta +revalescence +revalescent +revalidate +revalidation +revalorize +revaluate +revaluation +revalue +revamp +revamped +revamper +revamping +revampment +revamps +revankar +revaporize +revarnish +revarnished +revary +revas +revcourier +reve +reveal +revealable +revealed +revealedly +revealer +revealeth +revealing +revealingly +revealment +reveals +revector +revectored +revectoring +revectors +revegetate +revegetation +revehent +reveil +reveille +revelability +revelant +revelation +revelational +revelationer +revelations +revelative +revelator +reveled +reveler +reveling +revelle +revelled +revellent +reveller +revelling +revellings +revelly +revelment +revelo +revelries +revelrout +revelry +revels +revenant +revend +revender +revendicate +reveneer +revenge +revengeable +revenged +revengeful +revengefully +revengeless +revengement +revenger +revengers +revenges +revengeth +revenging +revengingly +revenir +revent +reventilate +reventure +revenual +revenue +revenued +revenuer +revenuers +revenues +reverable +reverand +reverb +reverbatory +reverberant +reverberate +reverberated +reverberator +reverbrate +reverdure +revere +revered +reverence +reverenced +reverencer +reverencing +reverend +reverendly +reverends +reverendship +reverent +reverential +reverently +reverentness +reverer +reveres +reverie +reveries +reverified +reverifies +reverify +reverifying +revering +reverist +revermaster +revers +reversable +reversals +reverse +reversed +reversedly +reverseful +reverseless +reversely +reversement +reverser +reverses +reverseways +reversewise +reversi +reversibly +reversifier +reversify +reversing +reversingly +reversional +reversionary +reversioner +reversionist +reversis +reversist +reversive +reverso +revert +revertal +reverted +reverter +revertible +reverting +revertively +reverts +reves +revest +revestiary +revestry +revesz +revete +revetement +revetment +revguera +revibrate +revibration +reviction +revictorious +revictory +revictual +revie +revier +review +reviewable +reviewage +reviewal +reviewed +reviewer +revieweress +reviewers +reviewing +reviewish +reviewless +reviewof +reviews +revigorate +revigoration +revile +reviled +revilement +reviler +revilers +revilest +reviling +revilingly +revilings +revill +revilla +revillo +revindicate +reviolate +reviolation +revious +revirescence +revirescent +revis +revise +revised +revisee +reviser +revisership +revises +revisible +revising +revision +revisional +revisionism +revisionist +revisions +revisit +revisitant +revisitation +revisited +revisiting +revisits +revison +revisor +revisory +revisualize +revitalize +revitalized +revitalizer +revivability +revivable +revivably +revival +revivalism +revivalist +revivalistic +revivalize +revivals +revivatory +revive +revived +revivement +reviver +revives +revivessence +revivication +revivified +revivifier +revivify +revivifying +reviving +revivingly +reviviscence +reviviscency +reviviscent +reviviscible +revivor +revkah +revloc +revo +revocability +revocably +revocation +revocative +revocatory +revoice +revokable +revoked +revokement +revoker +revokes +revoking +revokingly +revolant +revolatilize +revolt +revolted +revolter +revolters +revolting +revoltingly +revoltress +revolts +revolubility +revoluble +revolubly +revolunteer +revolute +revoluted +revolution +revolutional +revolutioner +revolutions +revolvable +revolvably +revolved +revolvement +revolvency +revolver +revolvers +revolves +revolving +revolvingly +revomit +revote +revue +revuelta +revueltas +revuette +revuist +revulsed +revulsionary +revulsive +revulsively +revuz +revy +rewa +rewade +rewager +rewake +rewaken +rewall +rewallow +reward +rewardable +rewardably +rewarded +rewardedly +rewarder +rewardeth +rewardful +rewarding +rewardingly +rewardless +rewardproof +rewards +rewarehouse +rewarm +rewarn +rewash +rewashing +rewater +rewave +rewax +rewaybill +rewayle +reweaken +rewear +reweave +rewed +reweigh +reweigher +reweight +reweighted +rewelcome +reweld +rewend +rewet +rewey +rewhelp +rewhirl +rewhisper +rewhiten +rewiden +rewin +rewind +rewinder +rewinding +rewinds +rewirable +rewire +rewired +rewiring +rewish +rewithdraw +rewithdrawal +rewitzer +rewley +rewleyhouse +rewood +reword +rework +reworked +reworking +reworks +rewound +rewove +rewoven +rewrap +rewrite +rewriter +rewrites +rewriting +rewritten +rewrote +rexanthony +rexburg +rexd +rexec +rexen +rexford +rexmit +rexmont +rexroad +rexville +rexx +rexxalgo +rexxbase +rexxbos +rexxcc +rexxit +rexxla +rexxutil +reyaud +reybouba +reyburn +reydell +reydman +reydon +reyer +reyes +reyesano +reyield +reykjavik +reymen +reymert +reymond +reyna +reynaldo +reynard +reyno +reynold +reynolds +reynoldsburg +reynoso +reyoke +reyouth +reys +reza +rezaian +rezaiye +rezaiyeh +rezansoff +rezbanyite +rezende +rezeph +rezepte +rezepten +rezhou +rezia +rezident +rezin +reznechek +reznick +rezon +rezso +rezzik +rezzori +rfactor +rfarceur +rfcs +rfeynman +rfnm +rfree +rgpu +rguniot +rgvax +rgyarong +rhabdite +rhabditiform +rhabditis +rhabdium +rhabdocarpum +rhabdocoela +rhabdocoelan +rhabdocoele +rhabdoid +rhabdoidal +rhabdolith +rhabdology +rhabdom +rhabdomal +rhabdomancer +rhabdomancy +rhabdomantic +rhabdomonas +rhabdomyoma +rhabdophane +rhabdophora +rhabdophoran +rhabdopleura +rhabdopod +rhabdos +rhabdosome +rhabdosophy +rhabdosphere +rhabdus +rhacianectes +rhacomitrium +rhacophorus +rhada +rhadamanthus +rhadamanthys +rhade +rhaden +rhae +rhaetian +rhaetic +rhagades +rhagadiform +rhagiocrin +rhagionid +rhagionidae +rhagite +rhagodia +rhagon +rhagonate +rhagose +rhame +rhamn +rhamnaceae +rhamnaceous +rhamnal +rhamnales +rhamnetin +rhamninase +rhamninose +rhamnite +rhamnitol +rhamnohexite +rhamnohexose +rhamnonic +rhamnose +rhamnoside +rhamnus +rhamphoid +rhamphotheca +rhapis +rhapontic +rhaponticin +rhapontin +rhapsode +rhapsodical +rhapsodie +rhapsodies +rhapsodism +rhapsodist +rhapsodistic +rhapsodize +rhapsodized +rhapsodizing +rhapsody +rhason +rhasophore +rhatania +rhatany +rhattigan +rhea +rheadine +rheae +rheal +rhealstone +rheault +rheaume +rheba +rhebok +rhebosis +rhee +rheeboc +rheebok +rheems +rheen +rhegium +rhegmatype +rhegmatypy +rhegnopteri +rheic +rheidae +rheiformes +rhein +rheinberg +rheinfelden +rheinic +rheinlander +rheinmain +rheinman +rheinsberg +rhema +rhematic +rhematology +rheme +rhemish +rhemist +rhengkitang +rheno +rheo +rheobase +rheocrat +rheologist +rheometer +rheometric +rheometry +rheophile +rheophore +rheophoric +rheoplankton +rheoscope +rheoscopic +rheostatic +rheostatics +rheotactic +rheotan +rheotaxis +rheotome +rheotrope +rheotropic +rheotropism +rhesa +rhesian +rhesus +rheta +rhetor +rhetoric +rhetorical +rhetorically +rhetoricals +rhetorize +rhetoromance +rhett +rhetta +rheumatalgia +rheumatical +rheumaticky +rheumatismal +rheumative +rheumatiz +rheumatize +rheumatoid +rheumatoidal +rheumed +rheumic +rheumier +rheumiest +rheumily +rheuminess +rheumy +rhew +rhexia +rhexis +rhiamon +rhianna +rhiannon +rhianon +rhigolene +rhigosis +rhigotic +rhime +rhin +rhina +rhinal +rhinalgia +rhinanthus +rhinarium +rhincospasm +rhine +rhinebeck +rhinecliff +rhinehart +rhineland +rhinelander +rhinenchysis +rhineodon +rhineura +rhineurynter +rhinidae +rhinion +rhinitis +rhino +rhinobatidae +rhinobatus +rhinobyon +rhinocaul +rhinocele +rhinocelian +rhinocerial +rhinocerian +rhinocerine +rhinoceroid +rhinoceros +rhinocerotic +rhinoderma +rhinodynia +rhinogenous +rhinolalia +rhinolite +rhinolith +rhinolithic +rhinological +rhinologist +rhinology +rhinolophid +rhinolophine +rhinopharynx +rhinophidae +rhinophis +rhinophonia +rhinophore +rhinophyma +rhinoplastic +rhinoplasty +rhinopolypus +rhinoptera +rhinorrhagia +rhinorrhea +rhinorrheal +rhinos +rhinoscope +rhinoscopic +rhinoscopy +rhinotheca +rhinothecal +rhinovirus +rhinthonic +rhinthonica +rhinyihinyi +rhipidate +rhipidion +rhipidistia +rhipidistian +rhipidium +rhipidoptera +rhipiphorid +rhipiptera +rhipipteran +rhipipterous +rhipsalis +rhiptoglossa +rhith +rhizanthous +rhizina +rhizinaceae +rhizine +rhizinous +rhizobium +rhizocarp +rhizocarpeae +rhizocarpean +rhizocarpian +rhizocarpic +rhizocarpous +rhizocaul +rhizocaulus +rhizocephala +rhizocorm +rhizoctonia +rhizodermis +rhizodus +rhizogen +rhizogenetic +rhizogenic +rhizogenous +rhizoid +rhizoidal +rhizoma +rhizomatic +rhizomatous +rhizome +rhizomelic +rhizomic +rhizomorph +rhizomorphic +rhizoneure +rhizophagous +rhizophilous +rhizophora +rhizophore +rhizophorous +rhizophyte +rhizoplast +rhizopod +rhizopoda +rhizopodal +rhizopodan +rhizopodist +rhizopodous +rhizopogon +rhizopus +rhizosphere +rhizostomae +rhizostomata +rhizostome +rhizostomous +rhizota +rhizotaxis +rhizotaxy +rhizote +rhizotic +rhizotomi +rhizotomy +rhmpc +rhoades +rhoadesville +rhoads +rhod +rhoda +rhodaline +rhodamine +rhodan +rhodanate +rhodanian +rhodanic +rhodanine +rhodanthe +rhode +rhodeisland +rhodelia +rhodell +rhodenizer +rhodeose +rhodes +rhodesdale +rhodesia +rhodesian +rhodesoid +rhodespoint +rhodeswood +rhodhiss +rhodia +rhodian +rhodic +rhodie +rhodin +rhoding +rhodinol +rhodite +rhodizite +rhodizonic +rhodococcus +rhodocystis +rhodocyte +rhodope +rhodophane +rhodophyceae +rhodophyll +rhodophyta +rhodoplast +rhodopsin +rhodora +rhodoraceae +rhodorhiza +rhodosperm +rhodospermin +rhodothece +rhodotypos +rhody +rhodymenia +rhoeadales +rhoecus +rhoeo +rhoin +rhomb +rhomberg +rhombical +rhombiform +rhomboclase +rhomboganoid +rhombogene +rhombogenic +rhombogenous +rhombohedra +rhombohedric +rhombohedron +rhomboid +rhomboidal +rhomboidally +rhomboideus +rhomboidly +rhombos +rhombovate +rhombozoa +rhombuses +rhome +rhona +rhonchal +rhonchial +rhonchus +rhonda +rhone +rhonealpes +rhooke +rhopalic +rhopalism +rhopalium +rhopalocera +rhopaloceral +rhopalura +rhosyn +rhotacism +rhotacismus +rhotacistic +rhotacize +rhual +rhubarb +rhubarby +rhue +rhumb +rhumba +rhumbatron +rhumbus +rhur +rhus +rhyacolite +rhye +rhyme +rhymed +rhymeless +rhymelet +rhymemaker +rhymemaking +rhymeproof +rhymer +rhymery +rhymes +rhymester +rhymewise +rhymic +rhymin +rhyming +rhymist +rhymy +rhyn +rhynchocoela +rhyncholite +rhynchonella +rhynchophora +rhynchophore +rhynchopinae +rhynchops +rhynchosia +rhynchospora +rhynchota +rhynchotal +rhynchote +rhynchotous +rhynconellid +rhyncostomi +rhyndress +rhynia +rhyniaceae +rhynocheti +rhynsburger +rhyobasalt +rhyodacite +rhyolite +rhyolitic +rhyotaxitic +rhypography +rhyptic +rhyptical +rhys +rhysimeter +rhyssa +rhythm +rhythmal +rhythmeen +rhythmic +rhythmical +rhythmically +rhythmicity +rhythmicize +rhythmics +rhythmist +rhythmizable +rhythmize +rhythmless +rhythmometer +rhythmopoeia +rhythmproof +rhythms +rhytidodon +rhytidome +rhytidosis +rhytina +rhytisma +rhytm +rhyton +riabinkina +riacs +riadaattivo +riadaform +riahoma +rial +rialda +rialland +rials +rialto +rian +riancy +riane +riang +rianglang +riannon +riano +rianon +riant +riantana +riantly +riasati +riasi +riasiti +riata +riau +riaume +riawa +riaz +riazzi +riba +ribai +ribakovs +ribaldish +ribaldly +ribaldo +ribaldrous +ribaldry +riball +ribam +riban +riband +ribandism +ribandist +ribandlike +ribandmaker +ribandry +ribanna +ribart +ribat +ribaudequin +ribaudred +ribaw +ribband +ribbandry +ribbed +ribbentrop +ribber +ribbet +ribbi +ribbidge +ribbing +ribble +ribbon +ribbonback +ribboner +ribbonfish +ribbonism +ribbonlike +ribbonmaker +ribbonman +ribbonry +ribbons +ribbonweed +ribbonwood +ribbony +ribby +ribcage +ribe +ribeaux +ribeira +ribeiro +ribera +riberalta +riberolles +ribes +ribhus +ribi +ribia +ribina +riblah +riblake +ribless +riblet +riblike +ribnikov +ribonic +ribonuclease +ribos +ribot +ribovska +ribraka +ribroast +ribroaster +ribroasting +ribs +ribskin +ribspare +ribston +ribun +ribwork +ribwort +rica +rican +ricard +ricarda +ricardi +ricardian +ricardianism +ricardo +ricca +riccamonza +riccardi +riccardo +ricci +riccia +ricciaceae +ricciaceous +ricciales +ricciardi +ricciarelli +riccibitti +riccio +riccitelli +ricciuto +ricco +rice +ricebird +riceboro +riced +riceia +ricelake +riceland +ricer +riceslanding +ricetown +riceville +ricey +rich +richa +richand +richard +richarde +richardia +richardo +richards +richardson +richardsonia +richardton +richboro +richburg +richcreek +richdom +riche +richebourg +richelieu +richelle +richellite +richen +richer +richert +riches +richesse +richest +richey +richeyville +richez +richford +richgrove +richhill +richi +richie +richilde +richland +richlands +richlandtown +richlark +richler +richling +richly +richman +richmond +richmonddale +richmondena +richmondhill +richness +richo +richsquare +richt +richter +richterite +richthofen +richthoffen +richton +richtonpark +richvale +richview +richville +richweed +richwine +richwood +richwoods +richx +richy +rici +ricin +ricine +ricinelaidic +ricing +ricinic +ricinine +ricininic +ricinium +ricinoleate +ricinoleic +ricinolein +ricinolic +ricinulei +ricinus +rick +rickaby +rickard +rickardite +rickborn +rickel +rickenbacker +ricker +rickert +ricketily +ricketiness +ricketish +ricketson +rickett +ricketts +rickettsiae +rickettsial +rickety +rickey +ricki +rickie +rickle +rickles +rickman +rickmatic +rickover +rickovers +rickrack +rickrd +rickreall +ricks +ricksha +rickshaws +rickson +rickstaddle +rickstand +rickstick +ricky +rickyard +rico +ricocheted +ricocheting +ricoh +ricolettaite +ricotta +ricouxa +ricrac +rictal +rictus +rida +ridable +ridableness +ridably +ridan +ridarngo +riddall +riddam +riddance +riddaway +ridded +riddel +riddell +ridden +ridder +riddermark +riddi +riddick +ridding +riddle +riddled +riddlemeree +riddler +riddles +riddlesburg +riddleton +riddling +riddlingly +riddlings +riddon +ride +rideable +rideau +riden +rident +rider +ridered +rideress +riderless +riders +ridership +riderwood +rides +rideth +rideway +ridge +ridgeback +ridgeband +ridgeboard +ridgebone +ridgecrest +ridged +ridgedale +ridgefarm +ridgefield +ridgel +ridgeland +ridgelet +ridgeley +ridgelike +ridgeling +ridgely +ridgemont +ridgepiece +ridgeplate +ridgepoled +ridger +ridgerope +ridges +ridgespring +ridgetop +ridgetree +ridgetype +ridgeview +ridgeville +ridgeway +ridgewell +ridgewise +ridgewood +ridgil +ridging +ridgingly +ridgling +ridgway +ridgy +ridibund +ridicolo +ridicule +ridiculed +ridiculer +ridicules +ridiculing +ridiculize +ridiculosity +ridiculous +ridiculously +ridin +riding +ridingman +ridingwood +ridit +ridits +ridley +ridleypark +ridofi +ridott +ridotto +rids +riebauer +riebe +riebeckite +rieber +riebl +riechst +rieck +riedel +riedendank +rieder +riedesel +riedl +riedmann +rief +riefenstahl +riegel +riegelsville +riegelwood +riegert +riegger +riegle +riegler +riehle +riekie +riel +riele +riels +riem +riema +riemann +riemannean +riempie +rien +rieng +rieni +riento +rienzi +rier +ries +riesa +riesel +riesgo +riesling +riesner +rieti +rietty +rieux +rifa +rifacimento +rifat +rife +rifely +rifeness +riff +riffi +riffian +riffled +riffler +riffling +riffraf +riffraff +riffy +rifi +rifia +rifian +rifka +rifki +rifkin +rifle +riflebird +rifled +rifledom +riflemanship +rifleproof +rifler +riflery +rifles +rifleshot +rifling +rifraf +rifraff +rift +rifter +riftless +rifton +rifts +rifty +riga +rigadoon +rigail +rigali +rigamajig +rigamarole +rigand +rigas +rigation +rigaud +rigault +rigaux +rigbane +rigby +rigdon +rige +rigel +rigelian +rigescence +rigescent +rigg +riggald +rigged +rigger +rigging +riggins +riggish +riggite +riggot +riggs +riggsbee +righ +right +rightabout +rightarrow +rightbank +rightbrain +rightcontrol +righted +righten +righteous +righteously +righter +rightful +rightfully +rightfulness +righthand +righthanded +rightheaded +righthearted +righting +rightist +rightle +rightless +rightly +rightmargin +rightmeta +rightminded +rightmire +rightness +righto +rights +rightship +rightsideup +rightwardly +rightwards +rightwing +righty +righu +rigi +rigid +rigidify +rigidist +rigidities +rigidity +rigidly +rigidness +rigidulous +rigikov +rigler +rigley +rigling +rigmaree +rigmarole +rigmarolery +rigmarolic +rigmarolish +rignault +rigney +rignum +rigo +rigoberto +rigol +rigolbouche +rigolette +rigoletto +rigor +rigorism +rigorist +rigoristic +rigorous +rigorously +rigorousness +rigors +rigotti +rigour +rigs +rigsbee +rigsby +rigsdag +rigsdaler +rigsmaal +rigsmal +rigstad +rigsy +riguier +rigwe +rigwiddie +rigwiddy +riha +rihall +rihe +rihn +rihouen +rihua +riichiro +rijan +rijeka +rijk +rijn +rijos +rijswijk +riju +rikari +rikbaktsa +riker +riki +rikisha +rikiya +rikk +rikke +rikki +rikley +rikpa +riksdag +riksha +rikshaw +riksmaal +riksmal +rikvani +rikyu +rilawa +rilchiam +rile +riled +riley +rileyville +riling +rilla +rillet +rillett +rillette +rilling +rillington +rillito +rillock +rillstone +rillton +rilovitch +riltyar +rima +rimal +rimanez +rimatara +rimate +rimbach +rimbase +rimbaud +rimbomba +rime +rimed +rimeless +rimer +rimersburg +rimester +rimett +rimfire +rimforest +rimi +rimiform +riming +rimini +rimito +rimkus +riml +rimland +rimless +rimmaker +rimmaking +rimmed +rimmer +rimming +rimmler +rimmon +rimmonparez +rimoldi +rimon +rimose +rimosely +rimosity +rimous +rimpi +rimple +rimption +rimrock +rims +rimsa +rimstar +rimu +rimula +rimulose +rina +rinaldi +rinaldo +rinard +rinardmills +rinat +rinceau +rincewind +rinch +rinco +rincon +rinconada +rinconsur +rind +rinda +rinde +rinded +rindeff +rinderpest +rindge +rindiri +rindlay +rindle +rindless +rindom +rindre +rinds +rindy +rine +rinell +riner +rineyville +ring +ringable +ringadoo +ringatu +ringbark +ringbarker +ringbill +ringbird +ringbolt +ringbone +ringboned +ringcraft +ringdove +ringe +ringed +ringelmann +ringent +ringer +ringers +ringeye +ringgenberry +ringgit +ringgits +ringgiver +ringgiving +ringgoer +ringgold +ringgou +ringhals +ringhead +ringi +ringiness +ringing +ringingly +ringingness +ringings +ringite +ringkobing +ringle +ringlead +ringleader +ringless +ringleted +ringlets +ringlety +ringlike +ringling +ringmaker +ringmaking +ringman +ringmaster +ringneck +ringnes +ringo +ringoes +ringold +ringrazia +rings +ringsail +ringside +ringsider +ringsted +ringster +ringstraked +ringtail +ringtaw +ringtime +ringtoss +ringtown +ringtree +ringwaiths +ringwald +ringwalk +ringwall +ringwise +ringwood +ringworld +ringworm +ringy +rini +rink +rinka +rinken +rinker +rinkite +rinkouka +rinn +rinnah +rinncefada +rinneite +rinner +rinnooy +rinok +rinott +rinsable +rinsed +rinser +rinses +rinsing +rinso +rintala +rintels +rinthereout +rintherout +rintoul +rinty +rioblanco +rioboo +riocreek +riodan +riodell +riofrio +riogrande +riohondo +rioja +riolinda +riomedina +rion +rionero +riooso +riopel +riopelle +riopiedras +riordan +rios +riosinho +riot +rioted +rioter +rioters +rioting +riotingly +riotist +riotistic +riotocracy +riotous +riotously +riotousness +riotproof +riotry +riots +riou +riouwlingga +rioux +riovista +ripa +ripaint +ripal +ripan +riparial +riparians +riparii +riparious +riparius +ripcord +ripe +ripelike +ripely +ripener +ripeness +ripening +ripeningly +riper +ripere +ripey +ripgut +riphath +ripicolous +ripidolite +ripienist +ripieno +ripier +ripley +ripoli +ripon +ripost +riposte +riposted +riposting +rippable +ripped +ripper +ripperman +rippet +rippey +rippier +ripping +rippingly +rippingness +rippit +ripple +rippled +rippleless +ripplemead +rippler +ripples +ripplet +ripplier +rippliest +rippling +ripplingly +ripploh +ripply +rippon +rippy +riprap +riprapping +rips +ripsack +ripsaw +ripsnorter +ripsnorting +ripterm +riptide +ripuarian +ripup +rirder +riri +ririe +riring +ririo +riroriro +rirratjingu +risa +risager +risala +risaralda +risberm +risc +risca +riscbased +riscchip +risch +risco +riscoe +riscos +riscpc +riscs +riscsc +riscsm +riscy +risdal +risdon +rise +riseman +risen +risener +riser +riserau +risers +rises +risest +riseth +rishel +risher +rishi +rishon +rishtadar +rishuwa +risibilities +risibility +risibleness +risibles +risibly +rising +risingcity +risingfawn +risings +risingson +risingstar +risingsun +risingwell +risk +risked +risker +riskful +riskfulness +riskier +riskiest +riskily +riskiness +risking +riskish +riskless +risko +riskpooling +riskproof +risks +risky +risler +risley +riso +rison +risorial +risorius +risp +risper +risque +risquee +riss +rissah +rissel +risser +rissi +rissian +rissle +rissman +risso +rissoa +rissoid +rissoidae +rissone +rist +ristanovic +ristenpart +risterucci +ristiina +risto +ristori +risunki +rita +ritalin +ritard +ritardando +ritarnugu +ritarungo +ritch +ritchard +ritchey +ritchie +ritchies +rite +rited +ritei +riteless +ritelessness +ritenour +rites +ritharngu +ritharrngu +rithmah +ritirong +ritlabs +ritling +ritner +rito +ritok +riton +ritorna +ritornel +ritornelle +ritornello +ritratto +ritschlian +ritt +rittenberg +rittenhouse +ritter +rittichai +rittingerite +rittman +rittmann +rittmeister +rittner +ritts +ritty +ritu +ritual +ritualism +ritualist +ritualistic +rituality +ritualize +ritualized +ritualless +ritually +rituals +ritva +rity +ritz +ritza +ritzhow +ritzier +ritziest +ritzmann +ritzville +ritzy +riung +riva +rivage +rival +rivalable +rivale +rivaled +rivalee +rivaless +rivaling +rivalism +rivality +rivalize +rivalled +rivalless +rivallights +rivalling +rivalries +rivalrous +rivals +rivalship +rivan +rivanoak +rivard +rivarol +rivarola +rivas +rive +rived +rivel +rivell +rivelles +rivelli +riven +rivendell +river +rivera +riverain +riverboat +riverbush +rivercess +riverdale +riverdamp +rivere +rivered +riveredge +riverfalls +riverforest +rivergrove +riverhead +riverhood +riverine +riverish +riverless +riverlet +riverlike +riverling +riverly +riverman +rivero +riverrouge +rivers +riverscape +riverside +riversider +riverton +rivervale +riverview +riverward +riverwards +riverwash +riverway +riverweed +riverwise +rivery +rives +rivest +rivesville +riveted +riveter +rivethead +riveting +rivetless +rivetlike +rivetowski +rivets +rivi +rivier +riviera +riviere +rivina +riving +rivingly +rivinian +rivka +rivkah +rivkeh +rivose +rivron +rivularia +rivulation +rivulets +rivulose +rivuole +rivy +riwai +rixation +rixatrix +rixeyville +rixford +rixiform +rixon +rixx +rixy +riyad +riyadh +riyal +riyals +riyao +riyaz +riyom +rizal +rizaykat +rize +rizewiski +rizhenko +riziform +rizk +rizm +rizpah +rizwan +rizzar +rizzi +rizzio +rizzle +rizzo +rizzom +rizzomed +rizzonite +rizzuti +rjets +rjevskii +rjevsky +rjin +rjkj +rjpa +rkal +rkey +rkmen +rlam +rlapska +rlfossil +rliche +rline +rllhints +rllmisc +rllstory +rlogin +rlosen +rltab +rlvs +rmation +rmdir +rmgroup +rmit +rmland +rmpr +rmpro +rmsone +rmss +rnbolib +rndnum +rndu +rnorm +roachback +roachdale +roached +roaches +road +roadability +roadable +roadbook +roadbuilding +roadcraft +roaded +roader +roadfellow +roadhead +roadie +roading +roadite +roadless +roadlessness +roadlike +roadman +roadmap +roadmarks +roadmaster +roadmon +roadrunner +roads +roadshow +roadsider +roadsman +roadstead +roadsters +roadstone +roadtrack +roadwarrior +roadways +roadweed +roadwise +roadworthy +roald +roam +roamage +roamaina +roamed +roamer +roaming +roamingly +roams +roan +roana +roanmountain +roann +roanna +roanne +roanoke +roar +roared +roarer +roareth +roarin +roaring +roaringgap +roaringly +roaringriver +roarings +roark +roarke +roars +roast +roastable +roasted +roaster +roasteth +roasting +roastingly +roasts +roat +roata +roay +roba +robalito +robalo +roband +robard +robards +robart +robarts +robati +robay +robb +robba +robbed +robber +robberies +robberproof +robbers +robbery +robbeth +robbi +robbie +robbin +robbing +robbins +robbinsmonro +robbinston +robbinsville +robboe +robbs +robby +robbyn +robe +robed +robedaux +robeless +robeline +robeling +robelmonte +robelo +robena +robenhausian +robenia +rober +roberbauxa +roberd +roberdeau +roberds +roberdsman +roberge +robers +roberson +robert +roberta +roberti +robertlee +roberto +robertom +roberts +robertsburg +robertsdale +robertson +robertsville +robery +robes +robeson +robesonia +robespierre +robest +robeth +robey +robiana +robie +robieux +robigalia +robigus +robillard +robin +robina +robinet +robinett +robinetta +robinette +robing +robinia +robinin +robinne +robinoside +robins +robinsmdss +robinson +robinton +robis +robison +robitaille +robitussan +roble +robledo +robles +robling +robo +roboam +robocop +roboda +robomb +roborant +roborate +roboration +roborative +roborean +roboreous +robot +robotech +robotesque +robotham +robotian +robotic +robotically +robotics +robotism +robotistic +robotization +robotize +robotlike +robotry +robots +robroy +robs +robsahm +robson +robstown +robur +roburite +robust +robustelli +robustful +robustfully +robustic +robusticity +robustious +robustiously +robustity +robustized +robustly +robustness +robustnessto +roby +robyn +robynne +robyx +roca +rocambole +rocard +rocas +rocca +roccardi +roccella +roccellaceae +roccellic +roccellin +roccelline +rocco +roccuzzo +roces +rocessing +rocessor +roch +rocha +rochard +rochat +rochdale +rochdi +roche +rochea +roched +rochefort +rochelime +rochell +rochella +rochelle +rochellepark +rocheman +rocheport +rocher +rochers +rochert +roches +rochester +rochet +rocheted +rochette +rochford +rochlin +rochon +rochwarger +rochway +rociada +rocinante +rocio +rock +rockable +rockably +rockaby +rockafeller +rockall +rockallite +rockatansky +rockbell +rockberry +rockbird +rockborn +rockbridge +rockbrush +rockcamp +rockcastle +rockcave +rockcist +rockcity +rockclimbing +rockcraft +rockcreek +rockdale +rocke +rocked +rockefeller +rockefellia +rockelay +rocker +rockerfeller +rockers +rockery +rocket +rocketed +rocketeer +rocketer +rocketing +rocketlike +rocketor +rocketpack +rocketry +rockets +rocketsled +rockett +rockety +rockfall +rockfalls +rockfield +rockfish +rockfoil +rockford +rockglen +rockhair +rockhall +rockham +rockhearted +rockhill +rockholds +rockhouse +rockier +rockies +rockiest +rockin +rockiness +rocking +rockingham +rockingly +rockingstone +rockish +rockisland +rocklake +rockland +rocklay +rockledge +rockless +rocklet +rockley +rockliffe +rocklike +rocklin +rockling +rockman +rockmart +rockmoving +rockne +rockoff +rockpoint +rockport +rockrapids +rockriver +rockrose +rocks +rockseia +rockshaft +rockslide +rockslides +rockspring +rocksprings +rockstaff +rockstream +rockstrewn +rocktavern +rockton +rocktree +rockvale +rockvalley +rockvax +rockview +rockville +rockwall +rockward +rockwards +rockweed +rockwell +rockwellcity +rockwellkent +rockwood +rockwork +rocky +rockybranch +rockycomfort +rockyface +rockyford +rockygap +rockyhill +rockyhorror +rockymount +rockypoint +rockyridge +roco +rocoroibo +rocouyenne +rocque +rocquemore +rocta +roda +rodakiewicz +rodan +rodann +rodanthe +rodari +rodbard +rodchenko +rodcliffe +rodd +rodda +roddan +roddenberry +roddice +roddick +roddikin +roddin +rodding +roddy +rode +rodee +rodely +roden +rodenfels +rodent +rodentia +rodential +rodentially +rodentian +rodenticidal +rodenticide +rodentproof +rodents +rodeo +rodeolight +rodeos +roder +roderfield +roderic +roderick +roderigo +rodero +rodessa +rodge +rodger +rodgers +rodham +rodhopi +rodi +rodie +rodier +rodime +rodimus +rodin +rodina +rodinal +rodine +rodinesque +roding +rodingite +rodiny +rodion +rodionova +rodis +roditi +rodiya +rodja +rodkey +rodknight +rodless +rodlet +rodlike +rodmaker +rodman +rodney +rodolfo +rodolph +rodolphe +rodolpho +rodolphus +rodomont +rodomontade +rodomontador +rodong +rodosto +rodric +rodrigo +rodrigue +rodrigues +rodriguese +rodriguez +rodrigus +rodriques +rodriquez +rods +rodschat +rodsman +rodster +rodsun +roduco +roduction +rodvold +rodway +rodwood +rody +roebling +roeblingite +roebourne +roebuck +roebucks +roeburi +roeckerath +roed +roede +roedel +roedy +roehl +roehla +roehn +roehrig +roekk +roel +roelf +roelike +roelof +roelofs +roemer +roemera +roemmich +roentgen +roentgenism +roentgenize +roentgenray +roepstorff +roer +roerick +roero +roes +roesler +roesner +roestone +roeten +roever +roeves +roey +roff +rofik +roga +rogak +rogaland +rogan +rogation +rogationtide +rogatis +rogative +rogatory +rogel +rogelim +rogelio +rogello +roger +rogeria +rogerings +rogerio +rogero +rogers +rogerscity +rogersite +rogerson +rogersville +roget +rogge +roggen +roggle +roglai +rogmevert +rogne +rogness +rognlie +rognont +rogo +rogosa +rogozhin +rogozin +rogram +rogrammable +rogue +roguedom +rogueling +rogueries +rogueriver +roguery +rogues +rogueship +roguevert +roguing +roguish +roguishly +roguishness +rogulina +rohal +rohan +rohangap +rohanwold +rohatgi +rohde +rohee +rohenhauer +roheryn +rohgah +rohilla +rohini +rohirrim +rohit +rohl +rohleder +rohlf +rohm +rohn +rohna +rohner +rohnertpark +rohob +rohomoni +rohrabacher +rohrersville +rohrmoser +rohtert +rohun +rohuna +roid +roids +roig +roiit +roil +roiled +roily +roinji +roio +rois +roist +roisterer +roistering +roisteringly +roisterly +roisterous +roisterously +roit +roithmaier +roja +rojac +rojas +rojdestvo +rojeck +rojer +roji +rojo +rojos +roka +rokas +roke +rokeage +rokeby +rokee +rokelay +roker +rokey +rokhlin +rokitansky +rokko +roko +rokoske +rokossovsky +roky +roland +rolande +rolandic +rolando +rolands +roldan +roldosist +role +rolen +roleo +roleplaying +roles +roleson +rolesville +rolette +rolex +rolf +rolfe +rolfes +rolfing +rolike +rolin +rolinson +roll +rolla +rollable +rollan +rolland +rollandia +rolleck +rolled +rolleder +rollejee +rollel +roller +rollerer +rollermaker +rollermaking +rollerman +rollers +rollerskater +rolleth +rolley +rolleyway +rolleywayman +rolliche +rollichie +rollicker +rollicking +rollickingly +rollicksome +rollicky +rollie +rollin +rolling +rollingbay +rollingfork +rollingly +rollingpin +rollings +rollingstone +rollinia +rollins +rollinsford +rollinsfork +rollinson +rollinsville +rollix +rollmop +rollo +rollock +rolloff +rollon +rollout +rolls +rollway +rolly +rolnick +rolodex +rolofson +rolom +rolong +roloway +rolpa +rolph +rols +rolski +rolsom +rolston +rolus +roly +roma +romaean +romagna +romagnese +romagnino +romagnol +romagnole +romagnolo +romagnuolo +romaic +romaika +romain +romaine +romaji +romal +romamtiezer +roman +romana +romanau +romance +romancealist +romancean +romanced +romanceful +romanceish +romanceless +romancelet +romancelike +romanceproof +romancer +romanceress +romancers +romances +romanche +romanchuck +romancical +romancing +romancist +romancy +romand +romandom +romandutch +romane +romanelli +romanes +romanese +romanesque +romang +romanglasses +romanhood +romani +romanian +romanians +romanic +romanichal +romaniform +romanin +romanis +romanish +romanism +romanist +romanistic +romanite +romanity +romanium +romanization +romanize +romanizer +romanly +romannumeral +romano +romanoff +romanov +romanova +romanowski +romanowsky +romans +romansch +romansh +romantic +romantical +romantically +romanticism +romanticist +romanticity +romanticize +romanticized +romanticly +romanticness +romantics +romantism +romantist +romantowska +romantsev +romanus +romany +romanza +romanzo +romas +romashka +romaunt +romay +romayor +rombauer +rombebai +rombeek +romberg +rombi +romblomanon +romblon +rombo +romboh +rombos +rombough +rombowline +rome +romea +romecity +romeite +romenes +romenetti +romensky +romeo +romer +romerillo +romero +romesburg +romescot +romeshot +romeuf +romeward +romewards +romic +romilda +romilly +romina +romipetal +romish +romishly +romishness +romkuin +romkun +romley +rommack +rommani +rommany +rommel +romney +romneya +romo +romoff +romokoy +romola +romolo +romona +romonda +romor +romped +romper +romping +rompingly +rompish +rompishly +rompishness +rompon +romps +rompu +rompuy +rompy +roms +romsdal +romuald +romualdo +romul +romulan +romulian +romulo +romulus +romungre +romy +rona +ronai +ronal +ronald +ronalda +ronalds +ronaldson +ronan +ronane +ronard +ronav +ronay +ronberry +roncador +roncaglian +ronceray +roncet +ronceverte +ronchetti +ronco +rond +ronda +rondache +rondacher +rondawaya +rondawel +ronde +rondeau +rondel +rondele +rondelet +rondeletia +rondelier +rondell +rondelle +rondellier +rondino +rondle +rondoletto +rondolos +rondon +rondonia +rondos +rondu +rondure +rone +ronee +ronen +ronet +ronette +roney +rong +ronga +rongbuk +rongeur +rongke +rongkong +rongmai +rongmei +rongo +rongpa +rongram +rongrang +ronhelin +roni +ronian +ronica +ronin +ronit +ronkonkoma +ronks +ronley +ronn +ronna +ronnback +ronneby +ronneke +ronni +ronnica +ronnie +ronny +ronoro +ronquil +ronrang +ronsardian +ronsardism +ronsardist +ronsardize +ronsdorfer +ronsdorfian +ronson +ronstadt +rontaylor +rontgen +rontledge +ronu +rony +ronyon +ronzhin +roob +roobbie +rood +roodebok +roodhouse +roodle +roodloft +roodscreen +roodstone +roof +roofage +roofed +roofer +roofing +roofless +rooflet +rooflike +roofman +roofs +rooftop +rooftops +roofward +roofwise +roofy +rooi +rooibok +rooinek +rooke +rooker +rookeried +rookeries +rookery +rookies +rookish +rooklet +rooklike +rooks +rool +room +roomage +roomarrows +roomed +roomer +roomers +roomette +roomfilling +roomfuls +roomie +roomier +roomiest +roomily +roominess +rooming +roomkeeper +roomless +roomlet +roommates +rooms +roomstead +roomth +roomthily +roomthiness +roomthy +roomward +roon +rooner +rooney +roongas +roope +roopnarine +roopville +roorback +roos +roosa +roose +roosendahl +rooseveltown +roosted +rooster +roosterfish +roosterhood +roosterless +roosters +roostership +roosting +roosvelf +root +rootage +rootcap +rooted +rootedly +rootedness +rooten +rooter +rootery +rootes +rootfast +rootfastness +rooth +roothold +rootiness +rooting +rootkit +rootkits +rootle +rootless +rootlessness +rootlet +rootlike +rootling +roots +rootshell +rootstalk +rootstock +rootstown +rootwalt +rootward +rootwise +rootworm +rooty +rootzen +roove +rooyen +rooynards +ropable +rope +ropeable +ropeband +ropebark +roped +ropedance +ropedancer +ropedancing +ropelayer +ropelaying +ropelike +ropemaker +ropemaking +ropeman +roper +roperbamyili +roperipe +ropers +ropery +ropes +ropesmith +ropesville +ropetrick +ropewalk +ropewalker +ropeway +ropework +ropily +ropiness +roping +ropish +ropishness +ropo +ropp +ropy +roque +roquefort +roquelaure +roquemore +roquer +roquet +roquette +roquevert +roquist +rora +roraima +roral +roratorio +rord +rore +rori +roria +roric +rorid +roridula +roridulaceae +rorie +roriferous +rorifluent +roripa +rorippa +rorison +roritorious +rorke +roro +roros +rorovana +rorqual +rorres +rorty +rorulent +rory +rosa +rosabel +rosabella +rosabelle +rosaceae +rosacean +rosaceous +rosado +rosal +rosalba +rosaleen +rosales +rosalia +rosalie +rosalind +rosalinda +rosalinde +rosaline +rosalvo +rosalyn +rosalynd +rosamaria +rosamond +rosamund +rosamunde +rosana +rosander +rosanilin +rosaniline +rosanky +rosanna +rosanne +rosanova +rosar +rosari +rosaria +rosarian +rosaries +rosario +rosarium +rosaruby +rosary +rosas +rosasharn +rosat +rosated +rosati +rosato +rosaura +rosay +rosberg +rosburg +rosch +roschach +rosche +roscherite +roscherk +roscid +roscius +rosco +roscoe +roscoelite +roscommon +rosdoe +rose +roseabove +roseal +roseann +roseanna +roseanne +roseate +roseately +roseau +rosebay +rosebloom +roseboom +roseboro +rosebud +rosebuds +roseburg +rosecity +rosecolored +rosecreek +rosed +rosedale +rosedrop +roseen +rosefish +roseglen +rosehead +rosehed +rosehill +rosehiller +rosehulman +roseine +roseires +rosel +roseland +roselawn +roseless +roselet +roselia +roselike +roselin +roseline +roselite +roselius +rosell +rosella +rosellate +roselle +rosellinia +roselodge +rosely +roselyne +roseman +rosemaria +rosemarie +rosemary +rosemead +rosemond +rosemonde +rosemonds +rosemont +rosemount +rosemund +rosenberg +rosenbergia +rosenblatt +rosenbloom +rosenblum +rosencrantz +rosenda +rosendale +rosendo +rosene +rosener +rosenfeld +rosenfield +rosenhayn +rosenhead +rosenkrantz +rosenmontag +rosenow +rosenquist +rosenstrasse +rosenthal +rosenwaike +roseola +roseolar +roseoliform +roseolous +roseous +rosepettle +rosepine +roseroot +rosery +roses +roset +rosetan +rosetangle +rosete +rosetime +roseto +rosetree +rosetta +rosette +rosetted +rosettes +rosetty +rosetum +rosety +roseville +roseways +rosewell +rosewise +rosewood +rosewort +rosey +rosh +rosha +roshal +roshan +roshani +rosharon +roshelle +roshi +rosholt +roshundt +rosi +rosic +rosiclare +rosicrucian +rosicrucians +rosie +rosied +rosien +rosier +rosieresite +rosiest +rosignol +rosilind +rosilla +rosillo +rosily +rosin +rosina +rosinate +rosinduline +rosine +rosiness +rosing +rosinous +rosinski +rosinweed +rosinwood +rosiny +rosita +rositta +roskilde +rosko +roskott +rosl +rosland +rosley +rosly +roslyn +rosman +rosmarie +rosmarine +rosmarinus +rosmer +rosminian +rosminianism +rosmunda +rosner +rosnov +roso +rosoli +rosolic +rosolio +rosolite +roson +rosorial +rospars +rosquemore +rosqui +ross +rossa +rossana +rossanese +rossano +rossbach +rossberg +rossburg +rosse +rosseau +rossel +rosseland +rosselia +rossellini +rossen +rosser +rossett +rossetti +rossi +rossignal +rossignol +rossii +rossiiu +rossika +rossilli +rossington +rossini +rossino +rossip +rossite +rossiter +rossitsa +rossitto +rosslyn +rossmore +rosso +rosson +rossovich +rossreiter +rosss +rosston +rossville +rosswell +rosszemberek +rostel +rostellar +rostellaria +rostellarian +rostellate +rostelliform +rostellum +rostenkowski +rosters +rostia +rostiferous +rostill +rostock +rostov +rostova +rostra +rostral +rostrally +rostrate +rostrated +rostriferous +rostriform +rostrocaudal +rostroid +rostron +rostrular +rostrulate +rostrulum +rostrums +rostylaw +rostyslaw +rosular +rosulate +rosulkova +rosvick +roswell +roswitha +rosy +roszhenko +roszhenkos +roszko +rota +rotacism +rotaeta +rotah +rotal +rotala +rotalia +rotalian +rotaliform +rotaliiform +rotaman +rotameter +rotan +rotane +rotanev +rotang +rotanokiri +rotar +rotarianism +rotarianize +rotascope +rotatable +rotate +rotated +rotates +rotating +rotation +rotational +rotations +rotative +rotatively +rotativism +rotatoplane +rotator +rotatoria +rotatorian +rotatory +rotbart +rotbarth +rotch +rote +rotea +roteang +roteler +rotella +rotenberg +roter +rotex +rotf +rotfl +rotge +rotgut +roth +rothamel +rothbury +rothe +rothenburger +rothenstien +rother +rothermuck +rothey +rothgardt +rothier +rothkirch +rothkopf +rothman +rothsay +rothstein +rothsville +rothville +rothwell +roti +rotifer +rotifera +rotiferal +rotiferan +rotiferous +rotifers +rotiform +rotinese +rotisserie +rotkin +rotl +roto +rotocard +rotograph +rotokas +rotondo +rotorcraft +rotorua +rotoruataupo +rotproof +rotraut +rots +rotscheff +rotse +rottan +rottatheanei +rotted +rotten +rottenish +rottenly +rottenness +rottenstone +rotter +rotterdam +rotti +rotting +rottle +rottlera +rottlerin +rottock +rottolo +rotula +rotulad +rotular +rotulet +rotulian +rotuliform +rotulus +rotuma +rotuman +rotuna +rotundate +rotundiform +rotundify +rotundity +rotundly +rotundness +rotundo +roturier +rotwang +rotwelsch +rotzjean +roua +roualet +roub +roubert +roubicek +rouble +roucarie +rouche +roucou +roucouyenne +roud +roudenko +roue +rouelle +rouen +rouer +rouffaer +rouffe +rouge +rougeau +rougeberry +rouged +rougelike +rougemont +rougemontite +rougeot +rougerie +rouget +rougeul +rough +roughage +roughcaster +roughdraft +roughdraw +roughdress +roughdry +roughed +roughener +rougher +roughest +roughet +roughgarden +roughhearted +roughhew +roughhewer +roughhewn +roughhouse +roughhoused +roughhouser +roughhousing +roughhousy +roughie +roughing +roughings +roughishly +roughishness +roughleg +roughly +roughness +roughometer +roughride +roughrider +roughriders +roughroot +roughscuff +roughsetter +roughshod +roughslant +roughsome +roughstring +roughstuff +roughtail +roughtailed +roughwork +roughwrought +roughy +rouging +rougon +rougy +rouieau +rouille +rouka +roukema +rouku +rouky +roulade +roule +roulean +rouleau +roulette +roulez +roulien +roulin +roulke +rouman +roumanian +roumeliote +roun +rounce +rounceval +rouncy +round +roundaboutly +roundclock +rounded +roundedly +roundedness +roundel +roundelay +roundeleer +roundenbush +rounder +rounders +roundest +roundfield +roundfish +roundheaded +roundhill +rounding +roundings +roundish +roundishness +roundlake +roundlet +roundline +roundly +roundmouthed +roundness +roundnose +roundnosed +roundo +roundpond +roundridge +roundrock +rounds +roundseam +roundsman +roundtail +roundtop +roundtree +roundtrip +roundwise +roundwood +roundworms +roundy +rounga +rounseville +rountree +roup +roupen +rouper +roupet +roupily +roupingwife +roupit +roupy +roure +rourk +rourke +rourou +rous +rouse +rouseabout +roused +rousedness +rousement +rouser +rouses +rousespoint +rouseville +rousing +rousingly +roussas +roussea +rousseau +rousseauan +rousseauism +rousseauist +rousseauite +rousseeuw +roussel +roussellian +rousseou +rousset +roussette +roussev +roussier +roussignol +roussille +roussillon +roussin +roussos +roussotte +roussy +roust +rouster +roustev +rousting +route +routed +router +routers +routes +routeur +routh +routhercock +routhie +routhier +routhiness +routhy +routinary +routine +routineer +routinely +routines +routinesand +routing +routings +routinish +routinism +routinist +routinize +routinized +routivarite +routledge +routous +routously +rouvel +rouverol +rouvillite +roux +rouyi +rouzerville +rovaniemi +roved +roven +rover +rovere +rovers +roves +rovet +rovetto +roviana +rovina +roving +rovingly +rovingness +rowable +rowan +rowanberry +rowandcolumn +rowanduz +rowatt +rowbotham +rowbottom +rowcolumn +rowdier +rowdies +rowdiest +rowdily +rowdiness +rowdy +rowdydow +rowdydowdy +rowdyish +rowdyishly +rowdyishness +rowdyism +rowdyproof +rowe +rowed +rowel +rowelhead +rowell +rowen +rowena +rower +rowers +rowesville +rowet +rowformat +rowhani +rowiness +rowing +rowings +rowland +rowlandite +rowlands +rowlandson +rowleian +rowles +rowlesburg +rowlet +rowlett +rowletts +rowley +rowleyan +rowlf +rowlie +rowlock +rownan +rowntree +rowport +rows +rowsell +rowty +rowy +roxa +roxana +roxane +roxanna +roxanne +roxanol +roxas +roxboro +roxburgh +roxette +roxi +roxie +roxine +roxiu +roxobel +roxolani +roxton +roxy +roya +royal +royalcenter +royalcity +royale +royalet +royalism +royalist +royalists +royalization +royalize +royall +royalle +royally +royaloak +royals +royalties +royalton +royalty +royalut +roybal +royce +roycroft +royena +royer +royersford +royet +royetness +royetous +royetously +roygbiv +royle +royo +roys +roysecity +royster +royston +roystonea +royt +roza +rozakis +rozalia +rozalie +rozalin +rozamond +rozanna +rozanne +rozanov +rozay +roze +rozel +rozele +rozelia +rozella +rozelle +rozen +rozencweig +rozet +rozett +rozhdestvo +rozhkov +rozi +rozier +rozina +rozman +rozner +rozon +rozsabegyi +rozseghyi +rozsika +rozsival +rozum +rozumna +rozvi +rozwi +rozycki +rpal +rparen +rpcbind +rpcinfo +rpcr +rpitsgw +rprudf +rpslmc +rptinst +rquito +rras +rreth +rrethe +rrivax +rrriiip +rrrip +rrrr +rrrrr +rrrrrr +rrrrrrr +rrrrrrrr +rsched +rschwere +rsdg +rsei +rsfsr +rshd +rshift +rsmas +rsqa +rsre +rsts +rsvp +rsxnt +rtcase +rtchi +rtfaq +rtfm +rtmidi +rtpbuild +rtprel +rtprelb +rtty +rtwo +rtwodtwo +ruaba +ruac +ruach +ruade +ruafa +ruairidh +rual +ruam +ruana +ruanda +ruandaurundi +ruane +ruanne +ruatha +ruaud +ruavatu +ruba +rubacuori +rubadub +rubali +ruban +rubassa +rubasse +rubato +rubbage +rubbed +rubber +rubberduck +rubberer +rubberface +rubberize +rubberized +rubberizing +rubberless +rubberneck +rubbernecken +rubbernecker +rubbernose +rubbers +rubberstone +rubberwise +rubbery +rubbethed +rubbing +rubbingstone +rubbish +rubbishing +rubbishingly +rubbishly +rubbishry +rubbishy +rubble +rubbled +rubbler +rubblestone +rubblework +rubbly +rubcate +rube +rubedinous +rubedity +rubefacient +rubefaction +rubeiro +rubelet +rubella +rubelle +rubellite +rubello +rubellosis +rubelvitch +ruben +rubenking +rubens +rubensian +rubenstein +rubeola +rubeolar +rubeoloid +ruberythric +rubes +rubescence +rubescent +rubetta +rubi +rubia +rubiaceae +rubiaceous +rubiales +rubiana +rubianic +rubiate +rubiator +rubicam +rubican +rubicelle +rubicola +rubicon +rubiconed +rubicundity +rubidic +rubidine +rubie +rubied +rubies +rubific +rubification +rubificative +rubiform +rubify +rubiginous +rubigo +rubijervine +rubik +rubiks +rubin +rubina +rubine +rubinek +rubineous +rubini +rubinov +rubinovitch +rubins +rubinstein +rubio +rubious +rubis +rubkalev +ruble +rubles +rublican +rublik +rublis +rublyov +ruboff +ruboni +rubor +rubout +rubrica +rubrical +rubricality +rubrically +rubricate +rubrication +rubricator +rubrician +rubricism +rubricist +rubricity +rubricize +rubricose +rubrific +rubrify +rubrisher +rubrospinal +rubs +rubstone +rubus +ruby +rubycolored +rubylike +rubytail +rubythroat +rubyvalley +rubywise +rucci +rucervine +rucervus +ruch +ruchama +ruchbah +ruche +ruchel +ruchi +ruching +ruchome +ruck +ruckebusch +rucker +ruckersville +rucki +ruckle +ruckling +ruckman +rucksack +rucksey +rucky +ructation +ruction +rucuyen +rudas +rudaux +rudbeckia +rudd +ruddell +rudder +rudderhead +rudderhole +rudderless +rudderlike +rudderpost +rudders +rudderstock +ruddh +ruddick +ruddied +ruddier +ruddiest +ruddily +ruddiness +ruddle +ruddleman +ruddock +ruddy +ruddyish +rude +rudeboy +rudecki +rudely +rudeness +rudenko +rudens +rudented +rudenture +ruder +rudera +ruderal +rudesby +rudesheimer +rudesoft +rudest +rudge +rudhyar +rudi +rudiak +rudie +rudiger +rudimental +rudimentary +rudiments +rudin +rudinsky +rudis +rudish +rudisill +rudista +rudistae +rudistan +rudistid +rudity +rudleo +rudley +rudling +rudman +rudmasday +rudnaya +rudner +rudneva +rudnickel +rudoi +rudolf +rudolfer +rudolfo +rudolph +rudolpho +rudolphus +rudolpn +rudorff +rudoy +rudvin +rudy +rudzinski +rudzitis +rudzki +rueben +rued +rueda +ruedee +ruedi +ruediger +ruefully +ruefulness +rueger +ruehmann +ruel +rueli +ruelike +ruelle +ruellia +ruen +rueprecht +ruer +rueschendorf +ruesome +ruesomeness +ruest +rueter +ruetting +ruewort +rufe +rufescence +rufescent +ruff +ruffable +ruffcreek +ruffed +ruffer +ruffianage +ruffiandom +ruffianhood +ruffianish +ruffianism +ruffianize +ruffianlike +ruffianly +ruffiano +ruffians +ruffin +ruffini +ruffled +ruffleless +rufflement +ruffler +ruffles +rufflike +ruffliness +ruffling +ruffly +ruffo +ruffolo +ruffsdale +rufia +ruficarpous +ruficaudate +ruficoccin +ruficornate +rufigallic +rufige +rufiji +rufino +rufio +rufiyaa +rufo +rufofulvous +rufofuscous +rufopiceous +ruft +rufter +rufton +rufulous +rufus +ruga +rugara +rugate +rugbeian +rugby +rugciriku +ruger +rugged +ruggedly +ruggedness +ruggell +rugger +ruggeri +ruggero +rugging +ruggle +ruggles +ruggy +rugheaded +ruginis +ruglike +rugmaker +rugmaking +rugnot +rugo +rugosa +rugose +rugosely +rugosity +rugous +rugs +rugulose +rugungu +ruguru +ruhamah +ruhaya +ruhe +ruhengeri +ruhfus +ruhl +ruhlen +ruho +ruick +ruidoso +ruidosodowns +ruigrok +ruihi +ruija +ruili +ruin +ruinable +ruinate +ruinations +ruinatious +ruinator +ruined +ruiner +ruing +ruiniform +ruining +ruinlike +ruinous +ruinously +ruinousness +ruinproof +ruins +ruis +ruitta +ruiz +ruka +rukai +rukaragwe +rukbat +rukh +ruki +rukiga +rukobi +rukonjo +rukoro +rukuba +rukube +rukum +rukwa +rukwangali +rulable +rulander +rule +ruled +ruledom +rulegoverned +ruleless +rulemonger +ruler +rulers +rulership +rules +rulest +ruletable +ruleth +ruleville +rulez +rulezman +rulezz +rulezzz +rulf +ruli +rulie +ruling +rulingly +rulings +rulison +rull +ruller +rullion +rulo +ruloff +rulsets +ruma +rumah +rumahkay +rumaholat +rumai +rumaiya +rumal +ruman +rumanau +rumaneh +rumania +rumanian +rumann +rumanovlach +rumantsch +rumaya +rumb +rumba +rumbala +rumbek +rumbelow +rumberpon +rumbia +rumble +rumbled +rumblegarie +rumblement +rumbler +rumbles +rumbling +rumblingly +rumblings +rumbly +rumbo +rumbold +rumbooze +rumbowline +rumbowling +rumbullion +rumbumptious +rumbur +rumbustical +rumbustious +rumchunder +rumdali +rumelian +rumely +rumenitis +rumenotomy +rumex +rumfordpoint +rumfort +rumfustian +rumgumption +rumgumptious +rumi +rumil +ruminal +ruminantia +ruminantly +ruminated +ruminating +ruminatingly +rumination +ruminations +ruminative +ruminatively +ruminator +rumkin +rumless +rumley +rumli +rumly +rummage +rummaged +rummager +rummaging +rummagy +rummans +rummel +rummell +rummer +rummily +rumminess +rummish +rummy +rumness +rumney +rumor +rumored +rumorer +rumormonger +rumorous +rumorproof +rumors +rumour +rumoured +rumourmonger +rumours +rump +rumpad +rumpadder +rumpade +rumpel +rumpelstilz +rumper +rumphi +rumpkinhead +rumple +rumpled +rumpless +rumpling +rumply +rumpscuttle +rumpuncheon +rumrunner +rumrunning +rums +rumsey +rumshop +rumson +rumswizzle +rumtytoo +rumuwa +runa +runacre +runagate +runanga +runaround +runaway +runback +runboard +runby +runch +runchweed +runciman +runcinate +rundale +rundi +rundle +rundlet +rundshagen +rundstein +rundum +runecraft +runed +runefolk +runeless +runelike +runer +runes +runesmith +runestaff +runet +runeword +runfish +runfor +rung +runga +rungakibet +rungchenbung +runghead +rungi +runglawan +rungless +rungrath +rungroj +rungs +rungu +rungus +rungwa +runholder +runibase +runically +runiform +runite +runix +runkeeper +runkel +runkle +runkly +runlength +runless +runlet +runman +runmoon +runnability +runnable +runned +runnel +runnells +runnels +runnemede +runnenberg +runnenburg +runner +runners +runnest +runnet +runneth +runnier +runniest +running +runningly +runnion +runny +runo +runoff +runoilija +runologist +runology +runout +runover +runproof +runrig +runround +runs +runservice +runted +runtee +runthe +runtier +runtiest +runtime +runtimes +runtiness +runtish +runtishly +runtishness +runubu +runway +runways +runyambo +runyankole +runyarwanda +runyeon +runyi +runyon +runyoro +runyour +ruohonen +rupa +rupees +rupert +ruperta +rupertwildt +rupestral +rupestrian +rupestrine +rupia +rupiah +rupiahs +rupial +rupicapra +rupicaprinae +rupicaprine +rupicola +rupicolinae +rupicoline +rupicolous +rupie +rupil +rupini +rupitic +rupnow +rupp +ruppe +ruppert +ruppia +ruppina +ruprecht +rupsis +ruptile +ruption +ruptive +ruptuary +rupturable +rupture +ruptured +ruptures +rupturewort +rupturing +rupununi +rupuzz +rural +rurales +ruralhall +ruralism +ruralist +ruralite +rurality +ruralization +ruralize +rurally +ruralness +ruralretreat +ruralridge +ruralvalley +rurari +rurban +ruri +ruric +rurick +ruridecanal +rurigenous +rurik +ruriko +ruritania +ruritanian +rurora +ruru +ruruhiip +ruruhip +ruruli +ruruma +rurutu +rusa +rusce +rusch +ruschel +ruschmeier +ruscio +rusconi +ruscus +rusers +rush +rusha +rushakoff +rushan +rushani +rushbush +rushcenter +rushcity +rushed +rushen +rusher +rushes +rusheth +rusheva +rushford +rushhill +rushier +rushiest +rushiness +rushing +rushingly +rushingness +rushkin +rushkoff +rushland +rushlight +rushlighted +rushlike +rushlit +rushmann +rushmore +rushsprings +rushsylvania +rushton +rushvalley +rushville +rushy +rusian +rusificate +rusification +rusin +rusine +rusinga +ruskin +ruskinian +rusky +ruslan +rusler +rusma +ruso +rusos +rusot +ruspack +rusper +ruspone +russ +russa +russalkas +russano +russek +russel +russelia +russell +russellite +russellton +russellville +russelton +russene +russeting +russetish +russetlike +russett +russety +russia +russian +russianism +russianist +russianize +russianoff +russians +russianstyle +russiaville +russificator +russifier +russify +russine +russinov +russism +russkie +russkih +russkiy +russman +russniak +russo +russolatrous +russolatry +russom +russomania +russomaniac +russophile +russophilism +russophilist +russophobe +russophobia +russophobiac +russophobism +russophobist +russos +russud +rust +rustable +rustagi +rustam +rustburg +rusted +rusterholz +rustful +rusthawelia +rustical +rustically +rusticalness +rusticate +rusticated +rusticates +rusticating +rustication +rusticator +rusticial +rusticism +rusticity +rusticize +rusticly +rusticness +rusticoat +rustie +rustier +rustiest +rustily +rustiness +rusting +rustle +rustled +rustler +rustlers +rustless +rustling +rustlingly +rustlingness +rustly +ruston +rustre +rustred +rusts +rustu +rusty +rustyback +rustyish +rusurja +ruswut +rusyn +rusyns +ruta +rutaceae +rutaceous +rutaecarpine +rutagwenda +rutah +rutal +rutana +rutanya +rutate +rutberg +rutch +rute +rutelian +rutelinae +ruteng +rutger +rutgers +ruth +ruthann +ruthanne +ruthart +ruthe +ruthelma +ruthenate +ruthene +ruthenian +ruthenians +ruthenic +ruthenious +ruthenous +ruther +rutherford +rutherfordia +rutherglen +rutheron +ruthful +ruthfully +ruthfulness +ruthi +ruthie +ruthless +ruthlessly +ruthlessness +ruthton +ruthven +ruthville +ruthwolfe +ruthy +rutia +rutic +rutidosis +rutilant +rutilated +rutilous +rutin +rutinose +rutiodon +rutkai +rutkin +rutkowski +rutland +rutledge +rutleigh +rutllant +rutooro +ruts +rutsch +rutse +rutshuru +rutt +ruttan +rutted +ruttee +rutter +ruttier +ruttiest +ruttiness +rutting +ruttish +ruttishly +ruttishness +ruttmann +ruttner +rutul +rutuli +rutulis +rutultsy +rutuly +rutuman +rutwa +rutyl +rutylene +rutyna +ruud +ruul +ruund +ruviana +ruvid +ruvuma +ruwala +ruweng +ruwenzori +ruxmani +ruyant +ruyigi +ruying +ruymen +ruymgaart +ruysdael +ruzek +ruzena +ruzica +ruzicka +ruzitska +ruzsa +ruzwi +ruzycki +rvanu +rvax +rvika +rvulsant +rwamba +rwanda +rwandan +rwandans +rwandarundi +rwho +rwja +rwthaachen +rxlbox +rxlib +rxlibrary +rxmulch +rxportio +rxrobi +rxsock +rxvt +rxxmath +ryabchukov +ryad +ryal +ryall +ryals +ryan +ryania +ryann +ryans +ryazan +rybat +rybczynski +rycca +rychlicki +rychlik +rydal +rydbeck +ryde +rydeberg +rydell +ryder +ryderwood +rydes +rydhan +ryebeach +ryegate +ryen +ryerson +rygh +rygwalski +ryker +rykwalder +rylan +ryland +ryle +ryley +rylott +rymal +ryman +rymandra +ryme +rymkiewicz +rynchospora +rynd +rynde +rynders +rynn +rynt +rynties +ryoichi +ryoko +ryoma +ryong +ryot +ryota +ryotwar +ryotwari +ryoung +rypdal +rype +rypeck +rysiowna +ryson +ryszard +ryszarda +rythm +rytidosis +rytina +rytit +ryudo +ryuichi +ryuko +ryukyu +ryukyuan +ryuta +ryutara +ryuzo +ryzard +ryzhkov +ryzhov +ryzin +rzepczynski +rzerklee +rzeszow +rzsplit +saad +saadie +saadje +saafi +saafisaafi +saak +saakye +saal +saam +saame +saami +saamia +saan +saang +saanich +saapa +saarbrucken +saarc +saard +saarland +saaroa +saaronge +saarua +saatcioglu +saavedra +saavik +saavina +saawa +saba +sabachthani +sabadash +sabadilla +sabadine +sabadinine +sabaean +sabaeanism +sabaeism +sabael +sabah +sabai +sabaigrass +sabaism +sabaist +sabal +sabalaceae +sabalo +saban +sabana +sabanagrande +sabanahoyos +sabanaseca +sabane +sabanero +sabanes +sabanga +sabanilla +sabanut +sabaot +sabaoth +sabar +sabara +sabaragamuwa +sabari +sabaroff +sabat +sabathikos +sabatier +sabatini +sabatio +sabatka +sabato +sabattus +sabauda +sabazian +sabazianism +sabazios +sabbagh +sabbang +sabbat +sabbatarian +sabbatary +sabbatean +sabbath +sabbathaian +sabbathaic +sabbathaist +sabbathism +sabbathize +sabbathless +sabbathlike +sabbathly +sabbaths +sabbatia +sabbatian +sabbatic +sabbatically +sabbatine +sabbatism +sabbatist +sabbatize +sabbaton +sabbitha +sabbra +sabdariffa +sabe +sabeans +sabeca +sabel +sabela +sabella +sabellan +sabellaria +sabellarian +sabelli +sabellian +sabellianism +sabellianize +sabellid +sabellidae +sabelloid +sabena +saber +saberbill +sabered +saberi +saberleg +saberlike +saberproof +sabers +sabertehrani +sabertooth +saberwing +sabetha +sabety +sabeu +sabeyap +sabha +sabia +sabiaceae +sabiaceous +sabian +sabianism +sabians +sabicu +sabik +sabin +sabina +sabinal +sabine +sabinepass +sabinian +sabinine +sabino +sabinsville +sabiny +sabir +sabira +sabishii +sabishiians +sablagh +sable +sablefish +sableness +sables +sabline +sabljic +sablon +sably +sabnis +sabo +saboba +sabol +sabon +sabones +sabongida +saboorian +sabora +saboraim +sabot +sabotage +sabotaged +sabotages +sabotaging +saboted +saboteur +saboteurs +sabotine +sabouret +sabourin +sabra +sabran +sabratah +sabre +sabres +sabretache +sabreur +sabri +sabrina +sabromin +sabron +sabry +sabta +sabtah +sabtecha +sabtechah +sabu +sabubn +sabuja +sabula +sabuline +sabulite +sabulose +sabulosity +sabulous +sabulum +sabum +sabungo +sabup +sabur +saburi +saburo +saburra +saburral +saburration +sabuson +sabutan +sabuyan +sabuyau +sabzevar +sabzi +sacae +sacaev +sacajawea +sacalait +sacaline +sacapulas +sacapulteco +sacar +sacarello +sacatepe +sacatepequez +sacaton +sacatra +sacbrood +saccadic +saccammina +saccarify +saccarimeter +saccate +saccated +sacch +saccha +saccharamide +saccharase +saccharate +saccharated +saccharic +saccharide +saccharifier +saccharify +saccharilla +saccharin +saccharinate +saccharinely +saccharinic +saccharinity +saccharize +saccharoid +saccharoidal +saccharon +saccharonate +saccharone +saccharonic +saccharose +saccharous +saccharulmic +saccharulmin +saccharum +saccharuria +sacchetti +sacchi +sacciferous +sacciform +saccity +saccoderm +saccolabium +saccomyian +saccomyid +saccomyidae +saccomyina +saccomyine +saccomyoid +saccomyoidea +saccomys +saccopharynx +saccorhiza +saccos +saccular +sacculate +sacculated +sacculation +saccule +sacculina +sacculus +saccus +sacellum +sacemnet +sacerdocy +sacerdotage +sacerdotal +sacerdotally +sacerdotical +sacerdotism +sach +sacha +sachamaker +sachar +sacheen +sachel +sachemdom +sachemic +sachemship +sacher +sachet +sacheverell +sachi +sachiko +sachnovsky +sacho +sachse +sacian +sack +sackage +sackamaker +sackbag +sackbut +sackcloth +sackclothed +sackclothes +sackdoudle +sacked +sacken +sacker +sackett +sackful +sacking +sackler +sackless +sacklike +sackly +sackmaker +sackmaking +sackman +sacks +sacktime +sackville +saclike +saco +sacope +sacque +sacra +sacrad +sacrafices +sacralgia +sacralize +sacrament +sacramental +sacramentary +sacramenter +sacramentism +sacramentize +sacramento +sacraments +sacramentum +sacraria +sacrarial +sacrarium +sacrectomy +sacred +sacredheart +sacredly +sacredness +sacreligious +sacrificable +sacrificant +sacrificati +sacrificator +sacrifice +sacrificed +sacrificedst +sacrificer +sacrificers +sacrifices +sacrificeth +sacrificial +sacrificing +sacrilege +sacrileger +sacrilegious +sacrilegist +sacrilumbal +sacring +sacripant +sacrist +sacristan +sacristies +sacristy +sacro +sacrocaudal +sacrococcyx +sacrocostal +sacrocoxitis +sacrodorsal +sacrodynia +sacrofemoral +sacroiliac +sacroischiac +sacrolumbal +sacrolumbar +sacropubic +sacrorectal +sacrosciatic +sacrosecular +sacrospinal +sacrospinous +sacrotomy +sacrum +sacrums +sacs +sacto +sacul +sacz +sada +sadachbia +sadagopan +sadah +sadakichi +sadalir +sadalmelik +sadalsuud +sadam +sadan +sadana +sadang +sadanga +sadani +sadansche +sadar +sadaraka +sadari +sadasivan +sadat +sadati +sadayoo +sadcc +saddam +saddened +saddening +saddeningly +saddens +sadder +saddest +saddik +saddirham +saddish +saddle +saddleback +saddlebacked +saddlebag +saddlebags +saddlebow +saddlecloth +saddled +saddleleaf +saddleless +saddlelike +saddlenose +saddlepoint +saddlepoints +saddler +saddleriver +saddlery +saddles +saddleshaped +saddlesick +saddlesore +saddlestead +saddlestring +saddletree +saddlewise +saddling +sadducaic +sadducean +sadducee +sadduceeism +sadduceeist +sadducees +sadducism +sadducize +sade +sadeghi +sadei +sadek +sadella +sadeness +sadeq +sadesky +sadeya +sadh +sadhan +sadhe +sadhearted +sadhu +sadi +sadic +sadie +sadieville +sadiq +sadiron +sadistic +sadistically +sadists +sadite +sadleir +sadler +sadly +sadm +sadna +sadness +sado +sadoc +sadoff +sadoja +sadok +sadong +sadorra +sadorus +sadoyan +sadr +sadri +sadrik +sadroudine +sadru +sadvinsky +sadye +saecula +saeculum +saed +saediq +saeed +saegers +saegertown +saeid +saeima +saek +saeko +saeng +saenz +saep +saernaite +saerndal +saeter +saeume +saez +safa +safah +safajah +safalaba +safalba +safaliba +safan +safanow +safaqis +safar +safara +safarian +safaris +safat +safavi +safawid +safazo +safe +safeblower +safeblowing +safebreaker +safebreaking +safeconduct +safecracking +safeguard +safeguarded +safeguarder +safeguarding +safeguards +safehex +safehold +safehouse +safekeeper +safelight +safely +safemaker +safemaking +safen +safener +safeness +safer +safes +safest +safeties +safety +safetyharbor +safeword +safeyoka +saffarian +saffarid +saffell +saffian +safflor +safflorite +safflow +safflower +safford +saffron +saffroned +saffrontree +saffronwood +saffrony +safi +safia +safier +safine +safini +safisafi +safiulin +safranin +safranine +safrankova +safranophile +safranyik +safroko +safrole +safronov +safrontani +safrouter +saft +safwa +saga +sagaciate +sagaciously +sagada +sagadin +sagai +sagaie +sagaing +sagal +sagala +sagalla +sagaman +sagamite +sagamore +sagan +sagans +sagapenum +sagaponack +sagar +sagara +sagaradze +sagarai +sagarana +sagarmatha +sagas +sagathy +sagbee +sage +sagebrecht +sagebrusher +sagebush +sageju +sageleaf +sagely +sagene +sageness +sagenite +sagenitic +sagepubl +sager +sageretia +sagerose +sages +sageship +sagest +saget +sagewood +saggar +sagged +sagger +saggier +saggiest +sagginess +sagging +saggittary +saggon +saggy +saghala +sagharbor +saghavart +saghilin +sagi +sagina +saginate +sagination +saginaw +saging +sagital +sagitarii +sagitta +sagittally +sagittaria +sagittariid +sagittary +sagittate +sagittid +sagittiform +sagittocyst +sagittoid +sagle +sagless +sagoe +sagoin +sagola +sagolike +sagoo +sagra +sagramore +sagris +sags +sagtengpa +saguache +saguaros +saguerus +saguia +sagum +sagunto +saguran +saguye +sagvandite +sagwire +sagy +sagzee +saha +sahade +sahadeo +sahadeva +sahaftra +sahai +sahana +sahaptin +sahara +saharan +saharans +saharia +saharian +saharic +sahbra +sahcle +sahel +sahh +sahib +sahibah +sahidic +sahih +sahinalp +sahiwal +sahli +sahlia +sahme +sahn +saho +sahota +sahoukar +sahr +sahri +sahu +sahuarita +sahuda +sahukar +sahuu +saiah +saiba +saibah +saibai +saibal +saibou +saic +saick +said +saida +saidee +saidi +saidily +saidor +saidst +saidu +saidzadeh +saied +saiet +saifuddin +saifullah +saiga +saighani +saigon +saija +saijai +saikaley +saiko +sail +sailable +sailage +sailala +sailau +sailcloth +sailed +sailen +sailer +sailflying +sailing +sailingly +sailless +sailmaker +sailmaking +sailolof +sailor +sailoring +sailorizing +sailorless +sailorlike +sailorly +sailorman +sailorproof +sailors +sailplane +sails +sailship +sailsman +saily +saim +saimaa +saimiri +saimy +sain +sainai +sainati +saines +sainfoin +saingbaung +saini +sainji +sainju +sainpolis +sainsbury +saint +saintagatha +saintalbans +saintamand +saintamant +saintandrews +saintann +saintanne +saintannes +saintansgar +saintanthony +saintantonys +saintbenets +saintbernard +saintbernice +saintcharles +saintclair +saintcloud +saintcroix +saintdavid +saintdenis +saintdom +saintdonatus +sainte +sainted +saintedward +saintelmo +saintemarie +saintes +saintess +saintfrancis +saintgabriel +saintgeorge +saintgeorges +saintgermain +sainthedwig +sainthelen +sainthelena +sainthelens +sainthenry +sainthilaire +sainthood +saintignace +saintinigoes +saintish +saintism +saintjacob +saintjames +saintjo +saintjoe +saintjohn +saintjohns +saintjoseph +saintjust +saintlandry +saintleo +saintleonard +saintless +saintlibory +saintlier +saintliest +saintlike +saintlily +saintliness +saintling +saintlouis +saintlucas +saintly +saintmaries +saintmarks +saintmartin +saintmary +saintmarys +saintmaurice +saintmeinrad +saintmichael +saintnazianz +saintogne +saintolaf +saintologist +saintology +saintonge +saintparis +saintpatrick +saintpaul +saintpaulia +saintpauls +saintpeter +saintpeters +saintpierre +saintregis +saintrose +saints +saintship +saintthomas +saintvincent +saintvrain +saintxavier +saip +saipa +saipan +saiph +saipin +sair +sairang +saire +sairly +sairope +sairve +sairy +sais +saisamon +saiset +saisett +saisho +saisiat +saisie +saisiett +saisirat +saisiyat +saison +saisyet +saisyett +sait +saitama +saite +saith +saithe +saitic +saito +saitoti +saiva +saivism +saiwasi +saixa +saiyed +saizang +sajau +saji +sajou +saka +sakae +sakaguchi +sakai +sakalagan +sakalava +sakall +sakam +sakamoto +sakane +sakanyi +sakao +sakar +sakara +sakarindr +sakarovitch +sakarya +sakassou +sakata +sakau +sakauye +sakda +sake +sakeber +sakeen +sakei +sakel +sakelarides +sakell +sakellaridis +sakenov +saker +sakeret +sakes +sakha +sakhalin +sakharov +sakhon +saki +sakieh +sakiray +sakishima +sakizaya +sakkara +sakkath +sakon +sakorn +sakov +sakowicz +sakpu +sakram +saks +saksena +sakteng +saktism +sakulya +sakun +sakuntala +sakura +sakurai +sakus +sakuye +sakyamuni +sala +salaamlike +salaams +salabekha +salabert +salability +salable +salableness +salably +salaceta +salaciously +salacity +salacot +salad +salada +salade +salading +saladna +salado +salads +salaga +salago +salagrama +salah +salai +salaidh +salaj +salajar +salak +salakahadi +salaksak +salal +salale +salalir +salam +salama +salamaika +salaman +salamanca +salamandarin +salamandra +salamandrian +salamandrina +salamandrine +salamandroid +salamas +salamat +salamaua +salambao +salamin +salamina +salaminian +salamis +salamo +salamon +salamoniko +salampasu +salampore +salangane +salangid +salangidae +salani +salapai +salapek +salar +salariat +salaries +salary +salaryless +salas +salasaca +salat +salatav +salathiel +salavat +salaverria +salavina +salawati +salay +salayar +salayer +salazar +salb +salbin +salcah +salce +salcedo +salchah +salchug +salchuq +saldana +saldanha +saldee +sale +saleable +salebabu +salebrosity +salebrous +salecity +salecreek +saleel +saleem +salegoer +saleh +salehi +saleier +salele +salem +salema +saleman +salembier +salemburg +salemi +salenger +salenixon +salento +salep +saleratus +saleroom +sales +salesagent +salesclerk +salescritter +salesdroid +saleski +salesladies +salesman +salesmanship +salespeople +salesroom +salesthing +salesville +saleswoman +saleswomen +salew +salewari +salework +saley +saleyard +salfern +salfner +salford +salfordville +salgado +salhany +sali +salia +salian +saliany +saliaric +salias +saliba +salibabu +salibi +salic +salicaceae +salicaceous +salicales +salicetum +salicin +salicional +salicorn +salicornia +salicyl +salicylal +salicylamide +salicylase +salicylate +salicylic +salicylide +salicylidene +salicylism +salicylize +salicylous +salicyluric +salicylyl +salida +salien +salience +salientia +salientian +saliently +salier +salieri +salif +saliferous +salifiable +salification +salify +saligenin +saligot +salih +salihli +salihu +salili +salim +salima +salimeter +salimetry +salimi +salimo +salina +salinan +salinas +salination +saline +salinella +salinelle +salinen +salineness +salineno +salineville +saling +salinger +salingit +saliniferous +saliniform +salinity +salinization +salinize +salinometer +salinometry +salio +salis +salisburia +salisbury +salishan +salite +salited +salitpa +saliva +salival +salivan +salivant +salivated +salivating +salivation +salivator +salivatory +salivous +salix +salized +salk +salka +salkilld +salkini +salkok +salkum +salladay +sallagoi +sallah +sallai +sallapadan +salleamanger +sallee +salleeman +sallenders +sallet +salley +salli +sallie +sallied +sallier +sallies +sallis +sallisaw +salloker +salloo +sallowish +sallowness +sallowy +sallu +salluste +sally +sallyann +sallyanne +sallybloom +sallying +sallyman +sallyport +sallywood +salm +salma +salmacis +salmagundi +salman +salmas +salmi +salmiac +salmine +salminen +salmis +salmo +salmon +salmone +salmonellae +salmonellas +salmonet +salmonid +salmonidae +salmoniform +salmonlike +salmonmonia +salmonoid +salmonoidea +salmonoidei +salmonova +salmons +salmonsite +salmwood +salnatron +salo +salog +salol +saloma +salomao +salombe +salome +salomen +salometer +salometry +salomi +salomon +salomone +salomonia +salomonian +salomonic +salonga +salonica +salonika +salons +salonta +saloon +saloonist +saloons +saloop +salopian +salor +salou +saloud +saloum +salov +salp +salpa +salpacean +salpeter +salpian +salpicon +salpidae +salpiform +salpiglosis +salpiglossis +salpinges +salpingian +salpingion +salpingitic +salpingitis +salpingocele +salpingopexy +salpingotomy +salpinx +salpoid +salreng +sals +salsa +salsabil +salsberg +salsbery +salsburycove +salse +salsifis +salsilla +salsola +salsolaceae +salsolaceous +salsuginous +salt +salta +saltamartini +saltant +saltarella +saltarello +saltary +saltate +saltation +saltator +saltatoria +saltatorial +saltatorian +saltatoric +saltatorious +saltatory +saltbox +saltcat +saltcatch +saltcellar +saltdried +salted +saltee +salten +saltenfjord +salter +saltern +salterpath +salters +salterton +saltery +saltfat +saltflat +saltfoot +saltgum +salthouse +saltier +saltierra +saltierwise +saltiest +saltigradae +saltigrade +saltillo +saltily +saltimbanco +saltimbank +saltimbanque +saltine +saltines +saltiness +salting +saltire +saltish +saltishly +saltishness +saltiui +saltlakecity +saltlcy +saltless +saltlessness +saltlick +saltly +saltmaker +saltmaking +saltman +saltmouth +saltness +salto +saltometer +saltorel +saltpan +saltpeter +saltpetrous +saltpits +saltpoint +saltpond +saltrock +salts +saltsburg +saltsider +saltspoon +saltspoonful +saltus +saltville +saltweed +saltwife +saltworker +saltworks +saltwort +salty +saltysoft +saltyui +saltzman +salu +saluan +salubrify +salubriously +salubrity +saluda +salue +salug +saluki +saluma +salumei +salung +salur +salut +salutarily +salutariness +salutation +salutational +salutations +salutatious +salutatorian +salutatorily +salutatorium +salutatory +salute +saluted +saluter +salutes +saluteth +salutiferous +saluting +salutory +salva +salvability +salvable +salvableness +salvably +salvador +salvadora +salvadoran +salvadorian +salvage +salvaged +salvagee +salvageproof +salvager +salvages +salvaging +salvarsan +salvary +salvatella +salvatini +salvation +salvational +salvationism +salvationist +salvato +salvator +salvatore +salvatori +salvatory +salved +salveline +salvelinus +salver +salverform +salves +salvesen +salvi +salvia +salvianin +salviat +salvietti +salvific +salvifical +salvifically +salvilla +salvin +salving +salvini +salvinia +salviniaceae +salviniales +salvio +salviol +salvisa +salvisberg +salvo +salvoes +salvone +salvor +salvos +salvucci +salvy +salway +salween +salwey +saly +salya +salyer +salyersville +salyniuk +salyr +salzburg +salzfelle +salzillo +salzman +salzmann +sama +samabajaw +samac +samachique +samada +samadera +samadh +samadhi +samael +samaga +samagir +samah +samahsamah +samaia +samaj +samaja +samajtantrik +samaki +samal +samalek +samalot +saman +samana +samanai +samancilar +samandura +samang +samangan +samani +samanid +samaniego +samaniegos +samanov +samanta +samantar +samantha +samanzing +samap +samar +samara +samaradasa +samarahan +samaran +samardzic +samaren +samargin +samaria +samariform +samarin +samario +samaritan +samaritaness +samaritanism +samaritans +samarkand +samarkena +samarkind +samarleyte +samaroid +samarokena +samaroo +samarovski +samarra +samarskite +samarwaray +samas +samasap +samasodu +samatali +samatari +samate +samatha +samaya +samayhuate +samba +sambaa +sambal +sambala +sambalic +sambalpur +sambalpuri +sambalput +samban +sambaqui +sambar +sambara +sambas +sambathe +sambation +sambeek +samberi +samberigi +sambhogakaya +sambi +sambio +sambirir +sambiu +sambla +sambo +sambolabbo +samborsky +sambou +sambrell +sambu +sambucaceae +sambucus +sambuk +sambuke +sambunigrin +sambup +sambur +samburg +samburu +sambyu +samchi +samdrup +samdup +same +samedi +sameh +samei +samein +samejima +samekh +samel +sameliness +samely +samen +samenage +sameness +samerkeh +samesome +samgarnebo +samh +samhaber +samhain +samhita +samhouston +sami +samia +samian +samic +samie +samieian +samiel +samihim +samii +samim +saminaka +samir +samiresite +samiri +samiria +samisen +samish +samitchell +samite +samius +samiy +samizdat +samkara +samlah +samlerng +samlet +samm +sammee +sammel +sammer +sammeth +sammi +sammie +sammier +sammis +sammon +sammons +sammy +samn +samnani +samnite +samnorwood +samnos +samo +samoa +samoan +samoans +samobi +samodelkin +samoe +samogho +samoghogban +samoghoiri +samogit +samogitian +samogo +samogohiri +samogonka +samohai +samoic +samoilenko +samoilov +samoilova +samoio +samokubo +samokubobibo +samoleon +samoliot +samolus +samoma +samon +samong +samood +samopal +samora +samoro +samorogouan +samos +samosa +samosatenian +samosir +samothere +samotherium +samothracia +samothracian +samoy +samoyed +samoyedic +samp +sampa +sampaguita +sampaio +sampaleanu +sampaloc +sampan +sampang +sampange +sampantabil +sampara +sampat +sampedro +samper +sampford +samphan +samphire +sampi +sampit +sample +sampled +sampleman +samplepack +sampler +samplers +samplery +samples +samplesize +sampling +samplings +sampo +sampognato +sampolawa +sampori +samprit +samps +sampsaean +sampson +sampston +sampur +samre +samrerng +samrin +sams +samsam +samsara +samshu +samsien +samsk +samskara +samsoi +samson +samsonenko +samsoness +samsonian +samsonic +samsonistic +samsonite +samsun +samsung +samtali +samtao +samtau +samtosh +samtuan +samual +samucan +samucu +samuel +samuelcahn +samuels +samur +samurai +samuru +samurzakan +samut +samvedi +samvetsomma +samweila +samwise +samy +samya +samydaceae +samzelius +sana +sanaa +sanaag +sanaberigi +sanability +sanable +sanableness +sanabria +sanacacia +sanacacio +sanada +sanae +sanaga +sanai +sanainawa +sanamaica +sanamaika +sanamayka +sanana +sanandreas +sanangelo +sananselmo +sananton +sanantonio +sanapana +sanardo +sanardzic +sanarelli +sanaroa +sanatarium +sanathanan +sanation +sanative +sanativeness +sanatoriria +sanatory +sanaugustine +sanbalbe +sanballat +sanbenito +sanbiau +sanborn +sanbornton +sanbornville +sanbrell +sanbrook +sanbruno +sancarlos +sance +sancente +sancha +sanche +sanches +sanchetti +sanchez +sanchis +sanchiz +sancho +sanchuan +sanclemente +sancristobal +sanct +sancta +sanctanimity +sancti +sanctifiable +sanctifiably +sanctificate +sanctified +sanctifiedly +sanctifier +sanctifieth +sanctify +sanctifying +sanctilogy +sanctimonial +sanctimony +sanction +sanctionable +sanctionary +sanctioned +sanctioner +sanctioning +sanctionist +sanctionless +sanctionment +sanctions +sanctis +sanctities +sanctitude +sanctity +sanctologist +sanctology +sanctorium +sanctuaried +sanctuaries +sanctuarize +sanctuary +sanctum +sanctums +sanctus +sancy +sancyite +sand +sanda +sandahl +sandai +sandak +sandakan +sandaled +sandaliform +sandaling +sandalled +sandalphon +sandals +sandalwort +sandan +sandarac +sandaracin +sandastros +sandauer +sandaui +sandaun +sandawe +sandawi +sandayo +sandbag +sandbagged +sandbagger +sandbagging +sandbags +sandbank +sandbar +sandbender +sandberg +sandbin +sandblasted +sandboard +sandborg +sandborn +sandbox +sandboy +sandbur +sandburg +sandclub +sandcoulee +sandcreek +sandculture +sande +sanded +sandeep +sandefur +sandell +sandema +sandemanian +sandemanism +sander +sanderman +sanders +sanderson +sandersville +sandewar +sandfish +sandflower +sandford +sandfork +sandgap +sandglass +sandhar +sandheat +sandheaver +sandherr +sandhi +sandhog +sandhu +sandhya +sandi +sandia +sandiapark +sandidge +sandie +sandiego +sandier +sandiest +sandiferous +sandiford +sandimas +sandin +sandiness +sanding +sandinista +sandino +sandisfield +sandison +sandiver +sandiwar +sandix +sandjar +sandkvist +sandladen +sandlake +sandlapper +sandler +sandlers +sandless +sandlford +sandlike +sandling +sandlot +sandlotter +sandman +sandnatter +sandnecker +sandner +sandness +sando +sandomir +sandoni +sandor +sandorski +sandoval +sandow +sandoway +sandown +sandoz +sandpaperer +sandpeep +sandpoint +sandproof +sandra +sandre +sandrelli +sandridge +sandrine +sandro +sandrock +sands +sandsorting +sandspit +sandsprings +sandspur +sandstadt +sandstay +sandston +sandstone +sandstorm +sandstorms +sandswept +sandt +sandu +sandulsecu +sandusky +sandust +sandvik +sandwe +sandweed +sandweld +sandwich +sandwiched +sandwiches +sandwichwise +sandwood +sandworm +sandwort +sandy +sandycreek +sandye +sandyhook +sandyish +sandylake +sandylevel +sandyman +sandypoint +sandyridge +sandys +sandyspring +sandysprings +sandyville +sandz +sane +saneh +sanelizario +sanely +sanema +saneness +saner +sanest +sanetch +sanfelipe +sanfernando +sanfidel +sanford +sanforized +sanfran +sanfrancisco +sang +sanga +sangab +sangabriel +sangamesvari +sangamon +sangangalla +sangar +sangara +sangareau +sangau +sangband +sangbanga +sangbe +sangboriboot +sangborivutr +sangche +sangchung +sangei +sanger +sangerbund +sangerfest +sangerfield +sangerin +sangerman +sangeronimo +sangerville +sanggar +sanggau +sanggauledo +sanggi +sanggil +sangh +sangha +sanghar +sangho +sanghvi +sangihe +sangiin +sangil +sangir +sangire +sangirese +sangisari +sangke +sangkulirang +sangla +sanglant +sanglech +sanglechi +sangley +sanglich +sangman +sangmeister +sango +sangpang +sangraal +sangre +sangreeroot +sangregorio +sangrel +sangriento +sangrima +sangsad +sangsrgyas +sangster +sangsue +sangtai +sangtal +sangtam +sangu +sangue +sanguicolous +sanguie +sanguiferous +sanguifier +sanguifluous +sanguimotor +sanguimotory +sanguinaria +sanguinarily +sanguineless +sanguinely +sanguineness +sanguines +sanguinism +sanguinity +sanguinolent +sanguinous +sanguisorba +sanguisuge +sanguisugent +sanguisugous +sanguivorous +sangvoributr +sangyas +sanh +sanhaven +sanhedrim +sanhedrist +sanhita +sani +sanibel +sanicula +sanidine +sanidinic +sanidinite +sanies +sanification +sanify +saniga +sanin +saninawacana +sanine +sanio +saniohiowe +sanious +sanipractic +sanisidro +sanitaire +sanitarian +sanitariia +sanitariiums +sanitarily +sanitarist +sanitarium +sanitary +sanitation +sanitist +sanitize +sanitized +sanitizing +sanitorium +sanity +saniyo +saniyohiyowe +sanja +sanjacinto +sanjak +sanjakate +sanjakbeg +sanjakship +sanjan +sanjaq +sanjay +sanjeet +sanjeev +sanji +sanjiang +sanjiange +sanjines +sanjo +sanjoaquin +sanjon +sanjose +sanjoy +sanjuan +sanjuro +sank +sanka +sanke +sankey +sankha +sankhuwasawa +sankhya +sankiang +sanks +sankt +sankuru +sankuwasawa +sanleandro +sanlorenzo +sanlucas +sanluis +sanluisrey +sanmanuel +sanmarcos +sanmarinese +sanmarino +sanmartin +sanmatenga +sanmateo +sanmiguel +sann +sanna +sannachan +sannaite +sannerson +sannoisian +sannup +sanny +sannyasi +sannyasin +sano +sanogo +sanoh +sanoilov +sanok +sanopurulent +sanorex +sanoserous +sanostee +sanovich +sanoy +sanpablo +sanpail +sanpatricio +sanpedro +sanpei +sanperlita +sanpierre +sanpoil +sanquentin +sanrafael +sanramon +sanrasoen +sans +sansaba +sansad +sansalvador +sansannah +sansar +sansberry +sanschagrin +sansculottes +sansebastian +sansei +sansevieria +sanshach +sanshe +sansi +sansimeon +sansimon +sansing +sanskritic +sanskritish +sanskritist +sanskritize +sansom +sanson +sansu +sant +santa +santaana +santaanna +santabarbara +santacilla +santaclara +santaclarita +santaclaus +santacreu +santacroce +santacruz +santaelena +santafe +santafox +santaisabel +santal +santalaceae +santalaceous +santalales +santali +santalic +santalin +santalo +santalol +santalum +santalwood +santamaria +santamonica +santan +santana +santander +santandrea +santangel +santaniello +santanon +santapaula +santapee +santaquin +santarem +santarosa +santarrosino +santaynez +santaysabel +santchou +sante +santechnike +santee +santehnik +santehnika +santell +santella +santene +santenocito +santer +santercole +santess +santhali +santhiali +santi +santiagan +santiago +santiaguen +santiam +santimassino +santimi +santims +santini +santir +santis +santisteban +santistevan +santitoro +santner +santo +santodomingo +santolina +santon +santongeais +santoni +santonica +santonin +santoninic +santony +santora +santore +santorini +santorinite +santorum +santos +santosh +santovena +santoyo +santra +santri +santrokofi +santschi +santu +santubong +santucci +santz +sanuki +sanukite +sanuma +sanvi +sanvicente +sanvido +sanvitalia +sanvito +sanya +sanyakoan +sanyal +sanyasi +sanye +sanygnacio +sanyo +sanysidro +sanyun +sanz +sanza +sanzone +saoch +saom +saonek +saonras +saop +saora +saoshyant +saotch +saowitree +sapa +sapajou +sapan +sapang +sapanwood +sapara +saparua +sapatos +sapbush +sape +sapek +sapele +sapeloisland +sapena +saperda +sapful +saph +sapharensian +saphead +sapheaded +saphena +saphenal +saphenous +saphie +saphir +sapho +sapid +sapidity +sapidless +sapidness +sapience +sapiency +sapiens +sapientia +sapiential +sapientially +sapientize +sapiently +sapin +sapinda +sapindaceae +sapindaceous +sapindales +sapindaship +sapindus +sapio +sapir +sapiros +sapirstein +sapiteri +sapium +sapiutan +saple +sapless +saplessness +saplinghood +saplings +sapo +sapodilla +sapogenin +sapoin +sapolewa +saponaceous +saponacity +saponaria +saponarin +saponary +saponi +saponifiable +saponified +saponifier +saponifying +saponin +saponite +sapophoric +sapor +saporific +saporosity +saporous +saporta +saposa +sapota +sapotaceae +sapotaceous +sapote +sapotilha +sapotilla +sapotoxin +sapouan +sapounakeida +sappanwood +sappare +sapped +sapper +sapphic +sapphira +sapphire +sapphired +sapphires +sapphirewing +sapphiric +sapphirine +sapphism +sapphist +sappho +sappier +sappiest +sappiness +sapping +sappings +sappington +sapples +sapporo +sapran +saprek +sapremia +sapremic +saprine +sapritch +saprocoll +saprodil +saprodontia +saprofita +saprogenic +saprogenous +saprolegnia +saprolite +saprolitic +sapropel +sapropelic +sapropelite +saprophagan +saprophagous +saprophile +saprophilous +saprophyte +saprophytic +saprophytism +saprostomous +saprozoic +saprtich +saps +sapsago +sapsamluay +sapsea +sapskull +sapsuck +sapsug +sapt +saptari +saptou +sapuan +sapucaia +sapucainha +sapudi +sapulot +sapulpa +sapulut +saputan +sapwood +sapwort +saqani +saqqara +saqqarat +saqqiz +saqr +saquaro +sara +saraad +saraann +saraba +sarabacan +sarabagirmi +sarabaguirmi +sarabaite +saraband +sarabhai +saraburi +saracci +saracen +saracenian +saracenic +saracenical +saracenism +saracenlike +saracinesca +saracole +sarada +saradoc +saraf +sarafian +saragosa +saragossa +saraguro +sarah +sarahann +sarahill +sarahsville +sarai +saraiki +sarajane +sarajevo +sarak +saraka +sarakham +saraki +sarakole +sarakolet +sarakolle +saralaka +saraland +saralir +saramacca +saramaccan +saramaccaner +saramo +saran +saranac +saranaclake +sarande +sarandoi +sarandon +sarang +sarangani +sarangarajan +sarangi +sarangousty +sarap +saraph +sarapiqui +sarar +sarare +sarasota +sarasvat +sarath +saratoga +saratogan +saravan +saravane +saravanos +saraveca +saravene +saravia +sarawai +sarawak +sarawakese +sarawakite +sarawan +sarawani +sarawaria +sarawule +sarbacane +sarbanes +sarbaschev +sarbican +sarbochha +sarbutt +sarcasm +sarcasmproof +sarcasms +sarcast +sarcastic +sarcastical +sarcee +sarcelle +sarcenet +sarcey +sarchapkkha +sarchet +sarcilis +sarcina +sarcine +sarcione +sarcitis +sarcle +sarcler +sarcoadenoma +sarcobatus +sarcoblast +sarcocarp +sarcocele +sarcococca +sarcocolla +sarcocollin +sarcocyst +sarcocystis +sarcocystoid +sarcocyte +sarcode +sarcoderm +sarcodes +sarcodic +sarcodictyum +sarcodina +sarcodous +sarcogenic +sarcogenous +sarcoglia +sarcogyps +sarcoid +sarcolactic +sarcolemma +sarcolemmic +sarcolemmous +sarcoline +sarcolite +sarcologic +sarcological +sarcologist +sarcology +sarcolysis +sarcolyte +sarcolytic +sarcomas +sarcomata +sarcomatoid +sarcomatosis +sarcomatous +sarcomere +sarcophaga +sarcophagal +sarcophagi +sarcophagic +sarcophagid +sarcophagine +sarcophagize +sarcophagous +sarcophagy +sarcophile +sarcophilous +sarcophilus +sarcoplasm +sarcoplasma +sarcoplasmic +sarcoplast +sarcoplastic +sarcopoietic +sarcopsylla +sarcoptes +sarcoptic +sarcoptid +sarcoptidae +sarcosepsis +sarcosepta +sarcoseptum +sarcosine +sarcosis +sarcosoma +sarcosperm +sarcosporid +sarcosporida +sarcostosis +sarcostyle +sarcotheca +sarcotherapy +sarcotic +sarcous +sarcoxie +sarculation +sarcura +sard +sardachate +sardalia +sardanapalus +sardar +sardarese +sardauna +sarde +sardegna +sardel +sardian +sardine +sardines +sardinewise +sardinia +sardinian +sardinians +sardino +sardis +sardites +sardius +sardoin +sardonical +sardonically +sardonicism +sardonicus +sardonyx +sardou +sards +sarducci +sare +sareboido +saree +sarek +sareks +sarema +saremde +sarena +sarene +sarepta +sarette +sarfati +sarfaty +sargasso +sargassum +sarge +sargeant +sargent +sargento +sargents +sargentville +sargeson +sargis +sargo +sargon +sargonic +sargonid +sargonide +sargur +sargus +sarh +sarhad +sari +saria +sariba +sarid +sarie +sarieng +sarif +sarig +sarigue +sarikamis +sarikei +sarikoli +sarilla +sarin +sarina +sarinda +sarine +sarioglu +sariola +sarip +saripul +sariq +sarira +saris +sarisen +sarish +sarita +saritsky +sarjenka +sark +sarkany +sarkar +sarkari +sarkazmom +sarkful +sarkical +sarkindingis +sarkine +sarking +sarkinite +sarkisian +sarkit +sarkless +sarky +sarkyryr +sarlak +sarles +sarli +sarlos +sarlota +sarlyk +sarma +sarmatian +sarmatic +sarmatier +sarmel +sarment +sarmenta +sarmentose +sarmentous +sarmentum +sarmi +sarmiento +sarmiyotafa +sarn +sarna +sarnac +sarnami +sarndal +sarner +sarngam +sarno +sarnoff +saro +saroa +sarobi +sarod +saroj +saron +sarona +sarong +saronic +saronide +saronville +saros +sarothamnus +sarothra +sarothrum +saroua +saroyan +sarp +sarpalius +sarpedon +sarpler +sarpo +sarra +sarracenia +sarracenial +sarraf +sarrasin +sarrazin +sarret +sarris +sarrus +sarrusophone +sarsa +sarsar +sarsberry +sarsechim +sarsen +sarsenet +sarsi +sarson +sart +sartage +sartain +sartell +sartenais +sartene +sartes +sartet +sartin +sartish +sartkalmyk +sarto +sarton +sartor +sartoriad +sartorial +sartorially +sartorian +sartoris +sartorite +sartorius +sartre +sarts +sartul +sartzetakis +sarua +sarubbi +saruch +sarudu +saruga +saruhu +saruk +saruman +sarumi +sarun +sarunas +sarus +saruwaged +sarver +sarvil +sarwa +sarwan +sarychev +sarygh +sarykoly +sarymsakov +saryq +sarzan +sarzeau +sasa +sasabe +sasabuchi +sasagawa +sasak +sasaki +sasakwa +sasan +sasani +sasanqua +sasar +sasaru +sasaruenwan +sasawa +sascha +sase +saseng +sash +sasha +sashenka +sashery +sashihara +sashing +sashko +sashless +sasi +sasima +sasime +sasin +sasine +sasithorn +sask +saska +saskia +sasku +sasore +sasotzka +saspamco +sasportas +sass +sassaby +sassafac +sassafrack +sassak +sassandra +sassanian +sassanid +sassanidae +sassanide +sassanou +sassard +sassarese +sassenach +sasser +sassier +sassiest +sassine +sassiness +sassner +sassnitz +sasso +sassoli +sassolite +sasson +sassy +sassywood +sastean +sastra +sastri +sastry +saswata +satable +sataev +satan +satanael +satanas +satang +satanic +satanical +satanically +satanism +satanist +satanistic +satanity +satanize +satanology +satanophany +satanophil +satanophobia +satanship +satanta +sataporn +satar +satara +satare +satartia +satawal +satawalese +satc +satcam +satch +satchel +satcheled +satchell +satchels +sate +sated +sateen +sateenwood +satelecwksp +sateless +satelles +satellital +satellite +satellited +satellites +satellitian +satellitic +satellitious +satellitium +satellitoid +satellitory +satelloid +sater +satere +sateremawe +saterland +sates +satest +satha +sathe +sather +sathewkok +sathington +sathit +sathorn +sati +satiability +satiableness +satiably +satiate +satiated +satiating +satiation +satie +satieno +satient +satin +satinbush +satine +satined +satinette +satinfin +satinflower +sating +satinite +satinity +satinize +satinleaf +satinlike +satinpod +satinwood +satiny +satipo +satireproof +satires +satirical +satirically +satirist +satirizable +satirize +satirized +satirizer +satirizing +satisdation +satisdiction +satisfact +satisfaction +satisfactive +satisfactory +satisfiable +satisfice +satisfied +satisfiedly +satisfier +satisfies +satisfiest +satisfieth +satisfy +satisfying +satisfyingly +satispassion +sativa +satkamp +satkhira +satlijk +satna +satnet +sato +satoca +satods +satos +satoshi +satpaev +satpariya +satrae +satrap +satrapal +satrapess +satrapic +satrapical +satrapy +satriani +satriany +satro +satron +satsifaction +satsop +satsuma +satta +sattahip +sattar +satterfield +sattle +sattler +sattley +satto +sattva +satu +satun +satupaitea +satur +satura +saturability +saturant +saturated +saturates +saturating +saturation +saturator +saturday +saturdays +satureia +saturin +saturity +saturn +saturnal +saturnale +saturnalian +saturne +saturnia +saturnian +saturniid +saturniidae +saturnin +saturninely +saturninity +saturnino +saturnism +saturnity +saturnize +saturnus +satya +satyabrata +satyagrahi +satyajit +satyamurthi +satyanarayan +satyashodak +satyr +satyresque +satyress +satyriasis +satyric +satyricon +satyridae +satyrinae +satyrine +satyrion +satyrism +satyrlike +satyromaniac +satyrs +satz +saubina +sauce +sauceboat +saucebox +sauced +saucedish +sauceless +sauceline +saucemaker +saucemaking +sauceman +saucepans +sauceplate +saucer +saucerful +saucerleaf +saucerless +saucerlike +saucerman +saucers +sauces +sauch +saucier +sauciest +saucily +sauciness +saucing +sauck +sauder +saudi +saudian +saudiarabia +saudis +saudra +saueld +sauer +sauerbraten +sauers +sauf +saugatuck +sauger +saugerties +saugh +saughen +saugus +sauh +saui +sauk +saukcentre +saukcity +saukfox +saukrang +saukrapids +saukville +saul +sauld +saulie +saulis +saulnier +sauls +saulsbury +saulteaux +saulter +saulteur +saum +sauma +saumanganja +saumitra +saumon +saumont +saumur +saumure +saun +sauna +saunas +saundercook +saunders +saunderson +saunderstown +saunderswood +saundra +saunemin +saungikar +saunter +sauntered +saunterer +sauntering +saunteringly +saunulu +sauqui +sauquoit +saur +saura +sauraseni +saurashtra +saurashtri +saurauia +saurauiaceae +saurel +sauren +sauri +sauria +saurian +sauriasis +sauriosis +saurischia +saurischian +saurisirami +sauroctonos +saurodont +saurognathae +sauromatian +sauron +saurophagous +sauropod +sauropoda +sauropodous +sauropsid +sauropsida +sauropsidan +sauropsidian +saurornithes +saurornithic +saurs +saururaceae +saururaceous +saururae +saururan +saururous +saururus +saury +sausage +sausagelike +sausages +sausalito +sause +sausebokoko +sausi +sausinger +sausman +saussurea +saussurite +saussuritic +saussuritize +saut +sauteed +sauteing +sauterelle +sauternes +sauteur +sauty +sauvage +sauvageau +sauvagesia +sauvanelex +sauve +sauvegarde +sauvegrain +sauvy +sava +savable +savableness +savacu +savadkouhi +savage +savageau +savaged +savagedom +savagely +savageness +savager +savageries +savagerous +savagers +savages +savagess +savaging +savagism +savagize +savait +saval +savalas +savan +savanh +savanilla +savanna +savannah +savannakhet +savanne +savannehkhet +savar +savara +savard +savarese +savarimuthu +savarin +savary +savaryego +savation +save +saveable +saveall +saved +savedskf +savegame +saveh +saveliev +savell +savelova +saveloy +savemsg +saver +saverform +saverin +saverio +savers +saverton +savery +saves +savest +savetaglist +saveth +savey +savezna +saviange +savic +savid +savident +saville +savin +savina +saving +savingly +savingness +savings +savini +savino +savio +savior +savioress +saviorhood +saviors +saviorship +saviour +saviours +savisaari +savita +savitar +savitri +savits +savitski +savitsky +savitt +savo +savoca +savoie +savoir +savola +savolax +savona +savonarolist +savonburg +savonlinna +savonnerie +savor +savored +savorer +savorier +savoriest +savorily +savoriness +savoring +savoringly +savorless +savorous +savors +savorsome +savory +savosavo +savour +savourest +savours +savoury +savoyed +savoying +savssat +savu +savunese +savusavu +savva +savvas +savvied +savvy +savvying +sawa +sawaan +sawaba +sawabwala +sawada +sawade +sawaguchi +sawah +sawai +sawaiori +sawalha +sawali +sawan +sawang +sawar +sawara +saward +sawaria +sawaroje +sawarra +sawat +sawatupwa +sawaya +sawback +sawbill +sawblades +sawbones +sawbuck +sawbwa +sawchuk +sawczyn +sawder +sawdust +sawdustish +sawdustlike +sawdusty +sawed +sawer +saweri +saweris +sawest +sawhorse +sawhorses +sawi +sawing +sawiron +sawish +sawitto +sawknah +sawla +sawlike +sawmaker +sawmaking +sawman +sawmiller +sawmilling +sawmills +sawmon +sawmont +sawn +sawney +sawnwood +sawos +sawoyeei +sawpy +sawriya +saws +sawsetter +sawsharper +sawsmith +sawt +sawter +sawtoothed +sawu +sawunese +sawuve +sawuy +sawway +sawworker +sawwort +sawyer +sawyerhogg +sawyers +sawyerville +saxapahaw +saxatile +saxboard +saxcornet +saxe +saxel +saxena +saxeville +saxhorn +saxicava +saxicavous +saxicola +saxicole +saxicolidae +saxicolinae +saxicoline +saxicolous +saxida +saxifraga +saxifragant +saxifrage +saxifragous +saxifrax +saxigenous +saxis +saxish +saxon +saxonburg +saxondom +saxonian +saxonic +saxonical +saxonically +saxonish +saxonism +saxonist +saxonite +saxonization +saxonize +saxonly +saxons +saxophones +saxophonist +saxotromba +saxpence +saxten +saxtie +saxton +saxtonsriver +saxtuba +saxwegbe +saya +sayability +sayable +sayableness +sayaboury +sayabury +sayaco +sayacu +sayad +sayago +sayal +sayan +sayanchi +sayant +sayar +sayara +sayasirapin +sayawa +saybrook +sayburn +sayce +sayed +sayeeda +sayegh +sayer +sayers +sayest +sayette +saygn +sayid +saying +sayings +sayl +sayla +sayle +sayles +saylor +saylorsburg +saylskri +sayma +sayner +saynomore +saynor +sayo +sayonara +sayre +sayres +sayreville +says +saysanasy +saysay +sayshell +sayula +sayuri +sayville +sazalornil +sazarina +sazava +sazek +sazen +sazena +sazhin +sazin +sbaikian +sbaku +sbalti +sbanag +sbarge +sbbetty +sbbs +sbcs +sbeingeaten +sbfy +sbin +sbirro +sblood +sbnewsbot +sbodikins +sbop +sbradley +sbragia +sbrinz +sbrk +sbss +sbwc +sbwcc +scab +scabbard +scabbardless +scabbards +scabbed +scabbedness +scabbery +scabbier +scabbiest +scabbily +scabbiness +scabbing +scabble +scabbler +scabbling +scabby +scabellum +scaberulous +scabid +scabies +scabietic +scabinus +scabiosa +scabiosity +scabish +scabland +scablands +scabrate +scabrescent +scabrid +scabridity +scabridulous +scabrities +scabrosely +scabrously +scabrousness +scabwort +scacchi +scacchic +scacchite +scaccia +scad +scaddle +scads +scadurra +scaean +scaff +scaffardi +scaffer +scaffery +scaffie +scaffle +scaffold +scaffoldage +scaffolded +scaffolder +scaffolding +scaffoldings +scaffolds +scafin +scaglia +scagliola +scagliolist +scaith +scalable +scalableness +scalably +scalabrini +scalage +scalar +scalare +scalaria +scalarian +scalariform +scalariidae +scalars +scalarwise +scalation +scalawag +scalawaggery +scalawaggy +scalco +scald +scaldberry +scalded +scalder +scaldfish +scaldic +scalding +scaldweed +scaldy +scale +scaleable +scaleback +scalebark +scaleboard +scaled +scaledrake +scalefish +scalefont +scaleful +scaleless +scalelet +scalelike +scaleman +scalena +scalene +scalenon +scalenous +scalenum +scalenus +scalepan +scaleproof +scaler +scalera +scalers +scales +scalesman +scalesmith +scalesmound +scaletail +scaleth +scalewing +scalewise +scalework +scalewort +scalf +scalia +scalier +scaliest +scaliger +scaliness +scaling +scalings +scalisi +scall +scallawag +scalled +scallion +scallola +scallom +scalloped +scalloper +scalloping +scallops +scallopwise +scalma +scaloni +scalops +scalopus +scalp +scalpeen +scalpel +scalpellar +scalpellic +scalpellum +scalpellus +scalper +scalping +scalpless +scalpriform +scalprum +scalps +scalpture +scalt +scaltriti +scalx +scaly +scalya +scalytail +scalz +scaman +scamander +scamandrius +scamble +scambler +scambling +scamell +scameyka +scamler +scamles +scammel +scammerhorn +scammon +scammoniate +scammonin +scammony +scammonyroot +scampavia +scamped +scamper +scamperer +scampering +scamperings +scampers +scamphood +scampi +scampies +scamping +scampingly +scampish +scampishly +scampishness +scampsman +scamurra +scan +scanactj +scanc +scancd +scancode +scancodes +scandal +scandalize +scandalized +scandalizer +scandalizing +scandalous +scandalously +scandalproof +scandals +scandaroon +scandent +scandia +scandian +scandic +scandicus +scandinavian +scandisk +scandix +scandrett +scanell +scaner +scanga +scania +scanian +scanic +scaning +scanlan +scanlon +scanmag +scannable +scannapieco +scanned +scannell +scanner +scanners +scannin +scanning +scanningly +scano +scanpci +scans +scansion +scansionist +scansores +scansorial +scansorious +scanstor +scant +scantier +scanties +scantiest +scantily +scantiness +scantity +scantle +scantling +scantlinged +scantly +scantness +scanton +scanty +scap +scape +scapece +scapegallows +scapegoat +scapegoatism +scapegrace +scapel +scapeless +scapelli +scapement +scapethrift +scapha +scaphander +scaphion +scaphiopus +scaphism +scaphite +scaphites +scaphitidae +scaphitoid +scaphocerite +scaphoid +scapholunar +scaphopod +scaphopoda +scaphopodous +scapiform +scapigerous +scapin +scapinelli +scapoid +scapolite +scaponi +scapose +scapple +scappler +scappoose +scapulae +scapulalgia +scapulare +scapulary +scapulas +scapulated +scapulectomy +scapulet +scapulimancy +scapulodynia +scapulopexy +scapuloulnar +scapus +scar +scarab +scarabaean +scarabaei +scarabaeid +scarabaeidae +scarabaeinae +scarabaeoid +scarabaeus +scarabee +scarabelli +scaraboid +scaramel +scaramouch +scaramouche +scarborough +scarbro +scarbrough +scarce +scarcelins +scarcely +scarcement +scarcen +scarceness +scarcer +scarchocos +scarcie +scarcities +scarcity +scarden +scardino +scardon +scards +scare +scarebabe +scarecrow +scarecrowish +scarecrowy +scared +scareful +scarehead +scaremonger +scareproof +scarer +scares +scaresome +scarest +scarey +scarf +scarfe +scarfed +scarfer +scarffe +scarflike +scarfpin +scarfs +scarfskin +scarfwise +scarfy +scarid +scaridae +scarier +scariest +scarificator +scarified +scarifier +scarifying +scarily +scariness +scaring +scarini +scariose +scarious +scarlatina +scarlatinal +scarlatinoid +scarlatinous +scarless +scarlet +scarletberry +scarletseed +scarlett +scarlety +scarman +scarn +scaroid +scarolina +scarp +scarpa +scarpelli +scarpetta +scarpia +scarpine +scarpines +scarping +scarpment +scarproof +scarps +scarred +scarrer +scarret +scarring +scarrow +scarry +scars +scarsdale +scarso +scart +scarth +scarus +scarved +scarville +scarwid +scary +scase +scasely +scat +scatch +scatchard +scatcherd +scatena +scates +scatgirl +scath +scatha +scathed +scatheful +scatheless +scathelessly +scathful +scathing +scathingly +scathless +scaticook +scatland +scatman +scatologia +scatologic +scatological +scatologism +scatology +scatomancy +scatophagid +scatophagoid +scatophagous +scatophagy +scatoscopy +scatted +scatter +scatterable +scatteration +scatteraway +scattered +scatteredly +scatterer +scattereth +scattergood +scattering +scatteringly +scatterings +scatterling +scattermouch +scatterplot +scatterplots +scatters +scattery +scatty +scatula +scaturient +scaul +scaum +scaup +scauper +scaur +scaurie +scaut +scavage +scavel +scavenage +scavenged +scavenger +scavengerism +scavengers +scavengery +scavenging +scavran +scaw +scawd +scawl +scazon +scazontic +sccgate +sccs +sccvax +scdisk +scdpyr +sceat +scelalgia +scelerat +scelidosaur +sceliphron +sceloncus +sceloporus +scelotyrbe +scelso +scely +scelzo +scemne +scena +scenario +scenarioist +scenarioize +scenarios +scenarist +scenarize +scenary +scend +scene +scenecraft +scenedesmus +sceneful +sceneman +sceneries +scenery +sceneryhill +scenes +sceneshifter +scenewright +scenic +scenical +scenically +scenist +scenite +scenograph +scenographer +scenographic +scenography +scenopinidae +scent +scentbag +scented +scenter +scentful +scenting +scentless +scentproof +scents +scentwood +scepi +scepsis +scepter +scepterdom +sceptered +scepterless +scepters +sceptical +scepticism +sceptral +sceptre +sceptres +sceptrosophy +sceptry +scerne +sceuophorion +sceuophylax +sceva +schaab +schaack +schaaf +schaafsma +schaake +schaal +schaan +schaapsteker +schaber +schabernack +schable +schach +schacham +schachop +schachter +schachtler +schack +schadan +schade +schader +schaefer +schaefers +schaeffer +schaefferia +schafer +schaffel +schaffer +schaffhausen +schaffingen +schaffner +schagen +schaggi +schaghticoke +schaible +schaich +schaifers +schairerite +schalen +schalfert +schall +schallenberg +schaller +schallert +schalmei +schalmey +schalstein +schamachi +schambala +schanberg +schanck +schani +schaninger +schanne +schansov +schanz +schapbachite +schappe +schapped +schapping +scharf +scharff +scharrer +schartmann +scharwenka +schassberger +schatchen +schatten +schatz +schatzberg +schatzkin +schauen +schauer +schaumasse +schaumburg +schaunard +schavo +schavone +schchukin +scheaffer +scheat +scheck +schecter +schedar +schediasm +schediastic +schedin +schedius +schediwy +schedual +schedulable +schedular +schedulate +schedule +scheduled +scheduler +schedulers +schedules +scheduling +schedulize +scheelite +scheer +scheerer +scheff +scheffe +scheffel +schefferite +scheffes +scheffler +scheherazade +scheherezade +scheible +scheibli +scheidegger +scheider +scheidt +scheifele +scheila +scheimer +scheisse +scheiwiller +schejbal +schekere +schelde +schell +schellcity +schelle +schellebelle +schellenberg +scheller +schellingian +schellingism +schellsburg +schelly +scheltopusik +schema +schemas +schematic +schematics +schematism +schematist +schematize +schematizer +schematogram +schematonics +schembri +scheme +schemed +schemeful +schemeless +schemena +schemer +schemers +schemery +schemes +scheming +schemingly +schemist +schemmer +schemy +schenck +schene +schenevus +schenk +schenkel +schenkkan +schenley +schenzle +schepel +schepen +schepers +scheppan +scheppes +schepps +scher +scherbach +scherbinsky +scherbkov +scherer +schererville +scherif +scherm +scherr +schertz +schervish +scherzando +scherzi +scherzinger +scherzos +schesis +schesvold +scheuchzeria +scheuer +scheuermann +scheuren +scheurer +schev +scheveningen +schevlor +schfldbk +schiaffino +schiaftino +schiaparelli +schiarelli +schiavelli +schiavi +schiavone +schich +schick +schickele +schidor +schieber +schiedam +schiefer +schiegl +schiel +schierbaum +schieske +schiff +schiffli +schiffman +schiffner +schigolch +schikaneder +schilda +schildkraut +schildt +schill +schiller +schillerfels +schillerize +schillerpark +schillers +schilling +schillings +schilowa +schilt +schiltknecht +schiltz +schimkus +schimmel +schindel +schindler +schindylesis +schindyletic +schine +schinkel +schinus +schipinzi +schipper +schipperke +schirmer +schirra +schirtzinger +schisandra +schism +schisma +schismatic +schismatical +schismatism +schismatist +schismatize +schismic +schismless +schissel +schistaceous +schistic +schistocelia +schistocerca +schistocyte +schistoid +schistomelia +schistomelus +schistoscope +schistose +schistosity +schistosoma +schistosome +schistosomia +schistosomus +schistous +schistus +schittl +schizaea +schizaeaceae +schizanthus +schizaxon +schizo +schizocarp +schizocarpic +schizochroal +schizocoele +schizocoelic +schizocyte +schizodinic +schizogamy +schizogenic +schizogenous +schizognath +schizogonic +schizogony +schizoidism +schizolite +schizomeria +schizomycete +schizoneura +schizonotus +schizont +schizophasia +schizophrene +schizophyta +schizophyte +schizophytic +schizopod +schizopoda +schizopodal +schizopodous +schizorhinal +schizospore +schizostele +schizostelic +schizostely +schizothecal +schizothyme +schizothymia +schizothymic +schiztic +schkorski +schlachter +schlagenhauf +schlager +schlaghammer +schlamovitz +schlange +schlater +schlatter +schlecht +schledwitz +schlegel +schleichera +schleichert +schlemiel +schlemihl +schlemmer +schlenck +schlender +schlenter +schlesinger +schleswig +schlettow +schley +schlicht +schlichting +schlick +schlieben +schlieric +schlobohm +schloop +schlossen +schlosser +schlotzer +schluetow +schlumberger +schlumping +schluter +schlutia +schmadel +schmadtke +schmahl +schmakova +schmalenbach +schmalkaldic +schmaltz +schmaltzy +schme +schmear +schmedt +schmee +schmeing +schmeiser +schmeler +schmeling +schmelz +schmelze +schmelzel +schmerer +schmerling +schmettau +schmetterer +schmick +schmid +schmidlap +schmidt +schmidtchen +schmidtmer +schmidty +schmiedeke +schmieder +schmith +schmitigal +schmitt +schmitz +schmoe +schmortz +schmugge +schnachtman +schnack +schnaithman +schnappen +schnapper +schnapps +schnaps +schnauzer +schneeberger +schneeweiss +schneider +schneiderian +schneiders +schnell +schneller +schneph +schnirer +schnittgens +schnittman +schnitzel +schnob +schnorchel +schnorkel +schnorrer +schnozzle +schnupp +schnur +schnurmann +scho +schober +schoberova +schobert +schoch +schochat +schochet +schock +schoder +schoe +schoeber +schoebinger +schoedsack +schoeffling +schoelen +schoeller +schoen +schoenboeck +schoene +schoener +schoenfeld +schoenherr +schoening +schoenling +schoenobatic +schoenstadt +schoenstein +schoenus +schoenwalder +schoerhuber +schoffa +schofield +schoharie +schoknecht +schola +scholae +scholar +scholarch +scholardom +scholarian +scholarism +scholarless +scholarlike +scholarly +scholars +scholarship +scholarships +scholasm +scholastical +scholasticly +scholastics +scholes +scholey +scholia +scholian +scholiast +scholiastic +scholion +scholium +scholkmann +scholl +schollars +schollin +schollwer +scholman +scholtz +scholz +schomberg +schomburgkia +schon +schonberg +schonberger +schone +schonfelsite +schonhals +schonherr +schoo +schoodic +school +schoolable +schoolbag +schoolboydom +schoolboyish +schoolboyism +schoolboys +schoolbutter +schoolcraft +schooldame +schooldom +schooled +schooler +schoolers +schoolery +schooley +schoolfellow +schoolful +schoolgirl +schoolgirly +schoolgoing +schoolhouse +schoolhouses +schooling +schoolingly +schoolish +schoolkeeper +schoolless +schoollike +schoolmaam +schoolmaid +schoolman +schoolmarm +schoolmaster +schoolmen +schoolmiss +schoolroom +schoolrooms +schools +schoolshaped +schooltide +schooltime +schoolward +schoolyard +schoon +schooner +schoot +schopenhauer +schopf +schopflin +schoppen +schore +schork +schorl +schorlaceous +schorlomite +schorlous +schorly +schorm +schorria +schott +schottische +schottish +schouler +schousboe +schout +schouten +schouwen +schracter +schrader +schraegen +schrage +schram +schramm +schrammell +schraner +schrang +schrank +schrebera +schreck +schrei +schreiber +schreier +schreiner +schreinerize +schrenk +schribman +schricker +schrier +schriever +schrijver +schriver +schrode +schroder +schrodingers +schroeder +schroeppel +schroer +schroeter +schroff +schroffel +schroldt +schrom +schroonlake +schroth +schrottle +schrum +schrund +schryburt +schtipana +schtoff +schtupp +schu +schubart +schubarth +schubb +schubert +schucany +schuck +schucrenberg +schuddeboom +schuehlein +schueler +schuendler +schueneman +schuenemeyer +schuenzel +schuerenberg +schuerger +schuermann +schuessler +schuett +schuette +schuh +schuhe +schuit +schukardt +schukert +schukshina +schuld +schuldorff +schule +schulenburg +schuler +schulhof +schull +schuller +schulmeister +schulte +schultenite +schulter +schultes +schultheiss +schultz +schultze +schultzy +schulze +schulzki +schumacher +schumaker +schuman +schumann +schumer +schumm +schumway +schundler +schungite +schunzel +schuppius +schur +schurenberg +schurman +schurz +schuss +schuster +schute +schutte +schutz +schuurman +schuurmann +schuyler +schuylerlake +schvan +schverenberg +schvezii +schwa +schwab +schwabacher +schwabe +schwaderer +schwaffer +schwalbach +schwalbea +schwall +schwalle +schwane +schwaner +schwankel +schwanneke +schwantes +schwartz +schwartzman +schwary +schwarz +schwarzacher +schwarze +schwarzer +schwarzian +schwarzkopf +schwarzott +schweder +schwegler +schweiger +schweik +schweikarda +schweimann +schwein +schweinfur +schweisser +schweizer +schwejk +schwemer +schwenk +schwerer +schwerin +schwerke +schwertman +schwertner +schwester +schwiers +schwiezerkas +schwind +schwitters +schwoegler +schwuchow +schwyz +schygulla +schyndel +schyving +sciadopitys +sciaena +sciaenid +sciaenidae +sciaeniform +sciaenoid +sciagraph +sciagraphy +scialytic +sciamachy +scian +sciapod +sciapodous +sciara +sciarid +sciaridae +sciarinae +sciarra +sciatheric +sciatherical +sciatic +sciatical +sciatically +sciaticky +scibek +scibile +science +scienced +sciencehill +sciences +scient +sciential +scientician +scientifc +scientific +scientifical +scientism +scientist +scientistic +scientists +scientize +scientolism +scienza +scika +scilicet +scilla +scillain +scillipicrin +scillitan +scillitin +scillitoxin +scillonian +scimitar +scimitared +scimitarpod +scimiter +scin +scinacia +scince +scincid +scincidae +scincidoid +scinciform +scincoid +scincoidian +scincomorpha +scincus +scind +sciniph +scins +scintilla +scintillant +scintillated +scintillator +scintillize +scintillose +scintle +scintler +scintling +scio +sciograph +sciographic +sciography +sciolism +sciolist +sciolistic +sciolous +sciomachy +sciomancy +sciomantic +sciophilous +sciophyte +scioptic +sciopticon +scioptics +scioptric +sciosophist +sciosophy +sciot +sciota +scioterical +scioterique +sciotheism +sciotheric +sciotherical +sciotomills +scious +scipio +scipiocenter +scipione +scirenga +scirocco +scirophoria +scirophorion +scirpus +scirrhi +scirrhoid +scirrhoma +scirrhosis +scirrhous +scirrhus +scirrosity +scirtopod +scirtopoda +scirtopodous +scissel +scissible +scissile +scission +scissiparity +scissons +scissorbill +scissorbird +scissored +scissorer +scissoring +scissorium +scissorlike +scissors +scissorsbird +scissorsmith +scissorstail +scissortail +scissorwise +scissura +scissure +scissurella +scissurellid +scitaminales +scitamineae +scitech +scituate +sciurid +sciuridae +sciurine +sciuroid +sciuromorph +sciuromorpha +sciuropterus +sciurus +sciuto +scivax +sckets +sclaff +sclate +sclater +sclav +sclavonian +sclaw +scler +sclera +scleral +scleranth +scleranthus +sclere +sclerectasia +sclerectomy +scleredema +sclereid +sclerema +sclerenchyma +sclerenchyme +scleretinite +scleria +scleriasis +sclerify +sclerite +scleritic +scleritis +sclerized +sclerobase +sclerobasic +scleroblast +sclerocauly +sclerocornea +scleroderm +scleroderma +sclerodermi +sclerodermia +sclerodermic +sclerogen +sclerogeni +sclerogenoid +sclerogenous +scleroid +scleroiritis +scleroma +scleromata +scleromeninx +scleromere +sclerometer +sclerometric +scleronychia +scleronyxis +scleropages +scleroparei +sclerophyll +sclerophylly +sclerosal +scleroscope +sclerose +sclerosed +scleroseptum +scleroses +sclerospora +sclerostoma +sclerotal +sclerote +sclerotia +sclerotial +sclerotica +sclerotical +sclerotics +sclerotinia +sclerotinial +sclerotioid +sclerotitic +sclerotitis +sclerotium +sclerotized +sclerotoid +sclerotome +sclerotomic +sclerotomy +sclerous +sclerozone +scliff +sclim +sclimb +sclommari +sclove +scnt +scoad +scoane +scob +scobby +scobee +scobey +scobicular +scobie +scobiform +scobs +scoc +scodras +scoey +scoff +scoffed +scoffer +scoffers +scoffery +scoffing +scoffingly +scofflaw +scoffs +scofield +scog +scoggan +scogger +scoggin +scogginism +scogginist +scoggins +scogliera +scoinson +scoke +scola +scolastica +scolb +scoldable +scolded +scoldenore +scolder +scolding +scoldingly +scolds +scoleces +scoleciasis +scolecid +scolecida +scoleciform +scolecite +scolecoid +scolecology +scolecospore +scoleryng +scolese +scolex +scolia +scolices +scoliid +scoliidae +scoliometer +scolion +scoliosis +scoliotic +scoliotone +scolite +scollay +scollop +scolog +scolopaceous +scolopacidae +scolopacine +scolopax +scolopendra +scolopendrid +scolophore +scolopophore +scolymus +scolytid +scolytidae +scolytids +scolytoid +scolytus +scomber +scomberoid +scombresox +scombrid +scombridae +scombriform +scombrine +scombroid +scombroidea +scombroidean +scombrone +scomello +sconce +sconcer +sconces +sconcheon +sconcible +scone +scones +sconzo +scooba +scooby +scooler +scoon +scoop +scooped +scooper +scoopful +scoopfulfuls +scooping +scoopingly +scoops +scoot +scooted +scooter +scooting +scop +scopa +scoparin +scoparius +scopate +scope +scoped +scopedsp +scopeless +scopelid +scopelidae +scopeliform +scopelism +scopeloid +scopelus +scopes +scopet +scopidae +scopiferous +scopiform +scopiformly +scopine +scoping +scopiped +scopola +scopolamine +scopoleine +scopoletin +scopoline +scopp +scopperil +scoptical +scoptically +scoptophilia +scoptophilic +scoptophobia +scopula +scopularia +scopularian +scopulate +scopuliform +scopuliped +scopulipedes +scopulite +scopulous +scopus +scorbute +scorbutic +scorbutical +scorbutize +scorbutus +scorch +scorched +scorcher +scorches +scorching +scorchingly +scorchproof +score +scoreboard +scorebook +scored +scorekeeper +scorekeeping +scoreless +scorer +scorers +scores +scoriac +scoriaceous +scoriae +scorifier +scoriform +scorify +scoring +scorings +scorious +scorn +scorned +scorner +scorners +scornest +scorneth +scornful +scornfully +scornfulness +scorning +scorningly +scornproof +scorns +scorny +scorodite +scorpaena +scorpaenid +scorpaenidae +scorpaenoid +scorpene +scorper +scorpidae +scorpididae +scorpii +scorpiid +scorpik +scorpio +scorpioid +scorpioidal +scorpioidea +scorpion +scorpiones +scorpionic +scorpionid +scorpionida +scorpionidea +scorpionis +scorpions +scorpionweed +scorpionwort +scorpiurus +scorpius +scorse +scorsese +scortation +scortatory +scorza +scorziello +scorzonera +scot +scotale +scotch +scotcher +scotchery +scotchgrove +scotchify +scotchiness +scotching +scotchman +scotchness +scotchplains +scotchwoman +scotchy +scote +scoter +scotfree +scotian +scotic +scotino +scotish +scotism +scotist +scotistic +scotistical +scotize +scotland +scotlandneck +scotodinia +scotogram +scotograph +scotographic +scotography +scotoma +scotomata +scotomatic +scotomatical +scotomatous +scotomia +scotomic +scotomy +scotophobia +scotopia +scotopic +scotoscope +scotosis +scotrun +scots +scotsman +scotswoman +scott +scottafb +scottbar +scottcity +scottdale +scottdepot +scotter +scottforsmn +scotti +scotticism +scotticize +scottie +scottify +scottish +scottisher +scottishly +scottishman +scottishness +scottjoplin +scottown +scotts +scottsbluff +scottsboro +scottsburg +scottshill +scottsmills +scottsmoor +scottsun +scottsville +scottville +scotty +scottys +scouch +scouk +scoular +scoundrel +scoundreldom +scoundrelish +scoundrelism +scoundrelly +scoundrels +scoup +scourage +scourby +scoured +scourer +scouress +scourfish +scourge +scourged +scourger +scourges +scourgeth +scourging +scourgingly +scourgings +scourie +scouriness +scouring +scourings +scourneau +scours +scourway +scourweed +scourwort +scoury +scouse +scout +scoutcraft +scoutdom +scouted +scouter +scouth +scouther +scouthood +scouting +scoutingly +scoutish +scoutmaster +scouts +scoutship +scoutwatch +scove +scovel +scovell +scovill +scovillite +scovy +scow +scowbank +scowbanker +scowder +scowl +scowled +scowler +scowlful +scowling +scowlingly +scowlproof +scowls +scowman +scoy +scpbuild +scpiivo +scptest +scrab +scrabbled +scrabbler +scrabbling +scrabe +scrae +scraffle +scrag +scragg +scragga +scragged +scraggedly +scraggedness +scragger +scraggier +scraggiest +scraggily +scragginess +scragging +scraggled +scragglier +scraggliest +scraggling +scraggly +scraggy +scraily +scramasax +scramble +scrambled +scramblement +scrambler +scrambles +scrambling +scramblingly +scrambly +scrammed +scrampton +scrampum +scran +scranch +scrank +scranky +scrannel +scranning +scranny +scrantom +scranton +scrap +scrapable +scrapbooks +scrape +scrapeage +scraped +scrapepenny +scraper +scrapers +scrapes +scrapie +scraping +scrapingly +scrapings +scrapler +scraplet +scrapling +scrapman +scrapmonger +scrappage +scrapped +scrapper +scrappet +scrappier +scrappiest +scrappily +scrappiness +scrapping +scrappingly +scrapple +scrappler +scrappy +scraps +scrapworks +scrapy +scrat +scratch +scratchable +scratchably +scratchback +scratchboard +scratchbrush +scratchcard +scratchcat +scratched +scratcher +scratchers +scratches +scratchier +scratchiest +scratchiness +scratching +scratchingly +scratchless +scratchlike +scratchman +scratchmark +scratchpad +scratchpads +scratchproof +scratchweed +scratchwork +scratchy +scrath +scratter +scrattle +scrattling +scrauch +scrauchle +scraunch +scraw +scrawdyke +scrawk +scrawl +scrawled +scrawler +scrawlier +scrawliest +scrawliness +scrawling +scrawls +scrawly +scrawm +scrawnier +scrawniest +scrawnily +scrawniness +scrawny +scray +scraze +scrbacic +scrc +screak +screaking +screaky +scream +screamed +screamer +screamers +screamin +screaminess +screaming +screamingly +screamproof +screams +screamy +scree +screech +screechbird +screeched +screecher +screeches +screechier +screechiest +screechily +screechiness +screeching +screechingly +screek +screel +screeman +screen +screenable +screenage +screenbox +screencraft +screendom +screendump +screened +screener +screenful +screenhiding +screening +screenings +screenless +screenlike +screenman +screenplay +screens +screensaver +screenserver +screenshot +screenshots +screensman +screentaker +screenwise +screenwork +screenwriter +screeny +screet +screeve +screeved +screever +screich +screigh +screve +screven +screver +screw +screwable +screwage +screwbarrel +screwdrive +screwdriver +screwed +screwer +screwhead +screwier +screwiest +screwily +screwiness +screwing +screwish +screwless +screwlike +screwman +screwmatics +screws +screwshaped +screwship +screwsman +screwstem +screwstock +screwtops +screwwise +screwy +scrfchar +scribable +scribacious +scribal +scribatious +scribblage +scribblative +scribblatory +scribble +scribbleable +scribbled +scribbledom +scribbleism +scribblement +scribbler +scribbles +scribbling +scribblingly +scribbly +scribe +scriber +scribes +scribeship +scribing +scribism +scribner +scride +scrieve +scriever +scriggle +scriggler +scriggly +scrike +scrime +scrimer +scrimm +scrimmaged +scrimmager +scrimmaging +scrimp +scrimped +scrimper +scrimpier +scrimpiest +scrimpily +scrimpiness +scrimpingly +scrimply +scrimpness +scrimption +scrimpy +scrimshander +scrimshandy +scrimshank +scrimshanker +scrimshaw +scrimshon +scrimshorn +scrin +scrinch +scrine +scringe +scriniary +scrip +scripee +scripless +scrippage +scripps +script +scriptable +scripted +scripting +scriptitious +scriptitory +scriptive +scriptor +scriptorial +scriptorium +scriptory +scripts +scripturally +scripture +scriptured +scriptures +scripturient +scripturism +scripturist +scriptwriter +scripula +scripulum +scritch +scritoire +scrivaille +scrive +scrivello +scrivener +scrivenery +scrivening +scrivenly +scrivens +scriver +scrn +scrnfrm +scrnsav +scrnsave +scrob +scrobble +scrobe +scrobicula +scrobicular +scrobiculate +scrobicule +scrobiculus +scrobis +scrod +scrodgill +scroff +scrofula +scrofularoot +scrofulaweed +scrofulide +scrofulism +scrofulitic +scrofuloderm +scrofulosis +scrofulous +scrofulously +scrog +scroger +scrogged +scroggins +scroggs +scroggy +scrolar +scroll +scrollable +scrollbars +scrolled +scroller +scrollery +scrollhead +scrolling +scrollit +scrolllock +scrollock +scrolls +scrollwise +scrollwork +scrolly +scronach +scroo +scrooch +scrooge +scrooloose +scroop +scrophularia +scrota +scrotal +scrotectomy +scrotiform +scrotitis +scrotocele +scrotum +scrotums +scrouge +scrouger +scrounge +scrounged +scrounger +scrounging +scrout +scrow +scroyle +scrozzle +scrozzled +scrsize +scrub +scrubba +scrubbable +scrubbed +scrubber +scrubbery +scrubbier +scrubbiest +scrubbily +scrubbiness +scrubbing +scrubbird +scrubbly +scrubboard +scrubbs +scrubby +scrubgrass +scrubland +scrubwood +scruf +scruff +scruffier +scruffiest +scruffily +scruffiness +scruffle +scruffman +scruffy +scruft +scruggs +scrum +scrummage +scrummager +scrump +scrumple +scrumption +scrunch +scrunchy +scrunge +scrunger +scruno +scrunt +scrupled +scrupleless +scrupler +scruples +scruplesome +scrupling +scrupula +scrupular +scrupuli +scrupulist +scrupulous +scrupulously +scrupulum +scrupulus +scrush +scrutability +scrutable +scrutate +scrutation +scrutator +scrutatory +scrutil +scrutinant +scrutinate +scrutineer +scrutinies +scrutinize +scrutinized +scrutinizer +scrutinizing +scrutinous +scrutinously +scruto +scrutoire +scrutzler +scruze +scry +scryer +scrypter +scsi +scsifmt +scsiscan +scss +scssdev +sctv +scubed +scuddaler +scuddawn +scudded +scudder +scuddick +scuddle +scuddy +scudi +scudler +scudo +scuffed +scuffer +scuffled +scuffler +scuffles +scuffling +scufflingly +scuffly +scuffy +scuft +scufter +scug +scuggery +sculch +sculduddery +sculla +sculler +sculleries +scullery +scullful +sculli +scullion +scullionish +scullionize +scullionship +scullog +scully +sculp +sculper +sculpted +sculptile +sculptitory +sculptograph +sculptorid +sculptors +sculptress +sculpts +sculpturally +sculpture +sculptured +sculpturer +sculptures +sculpturing +sculsh +scum +scumber +scumble +scumbling +scumboard +scumfish +scumless +scumlike +scummed +scummer +scummier +scummiest +scumming +scummy +scumproof +scun +scuncheon +scunder +scunner +scup +scupful +scuppaug +scupper +scuppernong +scuppet +scuppler +scups +scur +scurdy +scurf +scurfer +scurfier +scurfiest +scurfily +scurfiness +scurflike +scurfy +scurlock +scurried +scurrier +scurrile +scurrilist +scurrilities +scurrility +scurrilize +scurrilous +scurrilously +scurrying +scurvied +scurvier +scurviest +scurvily +scurviness +scurvish +scurvy +scurvyweed +scusation +scuse +scut +scuta +scutage +scutal +scutari +scutate +scutated +scutatiform +scutation +scutch +scutcheon +scutcheoned +scutcher +scutching +scute +scutel +scutella +scutellae +scutellar +scutellaria +scutellarin +scutellate +scutellated +scutellation +scutellerid +scutelliform +scutellum +scutibranch +scutifer +scutiferous +scutiform +scutiger +scutigera +scutigeral +scutigeridae +scutigerous +scutiped +scutt +scutter +scuttle +scuttlebutt +scuttled +scuttleful +scuttleman +scuttler +scuttles +scuttling +scuttock +scutty +scutula +scutular +scutulate +scutulated +scutulum +scutum +scuz +scuzzy +scwabisch +scybala +scybalous +scybalum +scye +scyelite +scyld +scyler +scylla +scyllaea +scyllaeidae +scyllarian +scyllaridae +scyllaroid +scyllarus +scyllidae +scylliidae +scyllioid +scyllite +scyllitol +scyllium +scypha +scyphae +scyphate +scyphi +scyphiferous +scyphiform +scyphistoma +scyphistomae +scyphoi +scyphomancy +scyphophore +scyphophori +scyphopolyp +scyphose +scyphostoma +scyphozoa +scyphozoan +scyphula +scyphulus +scyphus +scyt +scytale +scyth +scythe +scythed +scytheless +scythelike +scytheman +scythes +scythesmith +scythestone +scythework +scythia +scythian +scythic +scything +scythize +scytitis +scytodepsic +scytonema +scytopetalum +sdag +sdam +sdata +sdccis +sdcrdcf +sdcsvax +sdeath +sdelaesh +sdelal +sdelali +sdftp +sdlc +sdlvax +sdrucciola +sdsc +sdschp +sdsmt +sdsu +sdump +seaa +seaadsa +seabank +seabeach +seabeard +seabeck +seabed +seabee +seaber +seaberry +seabird +seabirds +seaborderer +seabound +seabright +seabrook +seabury +seacannie +seacat +seacatch +seacenlant +seacliff +seacoasts +seacom +seaconny +seacord +seacraft +seacrafty +seacroft +seacunny +seadog +seadrift +seadrome +seafardinger +seafarer +seafarers +seafaring +seaflood +seaflower +seafolk +seafood +seaford +seaforth +seaforthia +seafowl +seaga +seagate +seager +seagers +seaghan +seagirt +seagle +seago +seagoer +seagoing +seagoville +seagraves +seagrim +seagrove +seagroves +seagull +seagulls +seah +seahound +seahub +seahurst +seaisland +seaislecity +seak +seal +sealable +sealbeach +sealch +sealcove +seale +sealed +sealer +sealery +seales +sealess +sealest +sealet +sealeth +sealette +sealevel +sealflower +sealharbor +sealike +sealine +sealing +sealless +seallike +seals +sealskin +sealston +sealwort +sealy +sealyham +seam +seamaid +seamancraft +seamanite +seamanlike +seamanly +seamanship +seamark +seamas +seambiter +seamed +seamer +seamier +seamiest +seaminess +seaming +seamless +seamlessly +seamlessness +seamlet +seamlike +seamon +seamost +seamrend +seamrog +seams +seamster +seamus +sean +seana +seanad +seance +seances +seang +seanna +seanor +seansi +seaography +seapiece +seaplane +seaports +seaqaqa +searano +searby +searce +searcer +search +searchable +searchant +searchbots +searched +searcher +searcheress +searcherlike +searchers +searchership +searches +searchest +searcheth +searchful +searching +searchingly +searchings +searchless +searchlights +searchment +searchwolf +searcloth +searcy +seared +searedness +searer +seargeant +searing +searingly +searl +searle +searles +searlesite +searness +sears +searsboro +searsmont +searsport +seary +seas +seasan +seascape +seascapist +seascout +seascouting +seashell +seashine +seashores +seasick +seasickness +seaside +seasidepark +seasider +season +seasonable +seasonably +seasonal +seasonality +seasonally +seasonalness +seasonals +seasoned +seasonedly +seasoner +seasoners +seasoning +seasonings +seasonless +seasons +seastar +seastrand +seastroke +seasvm +seat +seatang +seated +seathe +seating +seatless +seaton +seatonville +seatrain +seatron +seats +seatsman +seatter +seattle +seattleu +seatward +seatwork +seave +seaver +seavey +seaview +seavy +seawan +seawant +seawardly +seawards +seaware +seawater +seaway +seaweeds +seaweedy +seawell +seawife +seawoman +seaworn +seaworthy +seax +seay +seba +sebacate +sebaceous +sebacic +sebaga +sebagolake +sebait +sebane +sebaru +sebaruang +sebaste +sebastia +sebastian +sebastiana +sebastianite +sebastiano +sebastiao +sebastien +sebastion +sebastodes +sebastopol +sebat +sebatane +sebate +sebaugh +sebba +sebe +sebec +sebeh +sebei +sebeka +sebele +sebeok +seber +seberg +seberry +seberuang +sebesten +sebewaing +sebie +sebiferous +sebific +sebilla +sebiparous +sebja +sebkha +seblon +sebob +seboeis +sebolith +sebop +seborrhagia +seborrhea +seborrheal +seborrheic +seborrhoic +seboyeta +sebree +sebright +sebring +sebuano +sebum +sebundy +sebut +sebutuia +sebuyau +sebya +sebyar +seca +secability +secable +secacah +secada +secale +secalin +secaline +secalose +secam +secamone +secancy +secantly +secateur +secaucus +secchia +seccion +sece +secea +secede +seceded +seceder +secedes +seceding +secern +secernent +secernment +secesh +secesher +secessia +secession +secessional +secessiondom +secessioner +secessionism +secessionist +sech +sechelt +sechium +sechole +sechrest +sechu +sechuana +seck +seckel +seckenheim +seckler +secluded +secludedly +secludedness +secluding +secluse +seclusion +seclusionist +seclusive +seclusively +seco +secodont +secohm +secohmmeter +secombe +seconal +second +secondar +secondaries +secondarily +secondary +secondbest +secondcreek +seconde +seconded +seconder +seconders +secondhanded +seconding +secondly +secondment +secondmesa +secondness +secondorder +secondrate +seconds +secondsystem +secor +secos +secound +secoya +secpar +secque +secre +secrecies +secrecy +secrest +secret +secreta +secretage +secretagogue +secretaire +secretarian +secretariate +secretaries +secretary +secretdisk +secreted +secretes +secretin +secreting +secretion +secretional +secretionary +secretions +secretitious +secretive +secretively +secretly +secretmonger +secretness +secreto +secretomotor +secretor +secretory +secrets +secretum +secs +sect +sectarial +sectarianism +sectarianize +sectarianly +sectarism +sectarist +sectary +sectator +sectile +sectility +section +sectional +sectionalism +sectionalist +sectionality +sectionalize +sectionally +sectionary +sectioned +sectioning +sectionist +sectionize +sections +sectism +sectist +sectiuncle +sective +sector +sectored +sectorial +sectoring +sectors +sectroid +sectrs +sects +sectwise +secular +secularism +secularist +secularistic +secularity +secularize +secularized +secularizer +secularizing +secularly +secularness +secund +secundate +secundation +secundine +secundines +secundino +secundipara +secundly +secundum +secundus +securable +securance +secure +securecom +securecrt +secured +secureid +securely +securement +secureness +securer +secures +securewin +securifer +securifera +securiferous +securiform +securigera +securigerous +securing +securings +securitan +securities +security +securitys +securom +securpc +secvente +seda +sedaceae +sedaka +sedalia +sedalir +sedan +sedang +sedangrengao +sedangtodrah +sedanier +sedanka +sedat +sedated +sedately +sedateness +sedating +sedation +sedative +sedatives +sedbusk +seddigh +seddon +sedehi +sedek +sedemando +sedena +sedent +sedentaria +sedentarily +sedentation +sedeq +seder +sederunt +sedes +sedged +sedgelike +sedgemonth +sedgewick +sedging +sedgmire +sedgwick +sedgy +sediakk +sedigheh +sedigitate +sedigitated +sedik +sedile +sedilia +sedimayr +sediment +sedimental +sedimentate +sedimentous +sediments +sedimetric +sedimetrical +sediq +sedition +seditionary +seditionist +seditions +seditiously +sedjadeh +sedky +sedlak +sedley +sedoa +sedona +sedone +sedov +sedran +sedransk +sedrowoolley +seduan +seduanbanyok +seduce +seduceable +seduced +seducee +seducement +seducer +seducers +seduces +seduceth +seducible +seducing +seducingly +seducive +seduct +seduction +seductionist +seductions +seductive +seductively +seductor +seductress +sedulity +sedulously +sedulousness +sedum +seeableness +seealso +seeareleff +seebayaga +seebeck +seebja +seebohm +seecatch +seech +seeck +seecombe +seed +seedage +seedbird +seedbox +seedcake +seedcase +seedcode +seedeater +seeded +seedek +seedeq +seeder +seeders +seedful +seedgall +seedier +seediest +seedik +seedily +seediness +seeding +seedings +seedkin +seedless +seedlessness +seedlet +seedlike +seedlings +seedlip +seedman +seedness +seedpod +seeds +seedsman +seedstalk +seedtime +seedy +seefahrer +seege +seeger +seegobin +seeing +seeingly +seeingness +seeiso +seek +seeked +seeker +seekerism +seekers +seekest +seeketh +seeking +seekonk +seeks +seel +seelaender +seelan +seeler +seeley +seeleylake +seelful +seelhaft +seeligeria +seelos +seely +seelyville +seem +seema +seemable +seemably +seemann +seeme +seemed +seemer +seemeth +seeming +seemingly +seemingness +seemless +seemlier +seemliest +seemlihead +seemlily +seemliness +seemly +seems +seen +seena +seenie +seenu +seep +seeped +seepeeem +seepeeyoo +seeping +seeps +seeptsa +seepweed +seepy +seer +seerbacker +seerband +seercraft +seereer +seeress +seerfish +seerhand +seerhood +seerlike +seerpaw +seers +seership +seery +sees +seesaw +seesawiness +seesee +seesel +seesia +seest +seeteeessess +seeth +seetharaman +seethe +seethed +seethes +seething +seethingly +seetulputty +seex +seeya +seeynes +sefardi +sefardic +sefekhet +sefelt +seffner +sefton +sefwi +sega +segaf +segah +segahan +segai +segal +segalang +segaliud +segall +segama +segamat +segar +segate +segeant +segee +segeju +segen +seger +segert +seget +segev +segfault +seggar +seggard +segged +seggie +seggrom +segiddi +seginus +segment +segmental +segmentally +segmentary +segmentate +segmentation +segmented +segmenting +segments +segne +segni +segnitude +segnity +sego +segodnya +segol +segolate +segou +segovia +segreant +segregable +segregate +segregated +segregates +segregating +segregation +segregative +segregator +segreras +segretti +segub +segue +segued +seguedougou +segueing +seguela +segui +seguin +segum +segun +segura +segurola +segv +segvee +segwiss +sehen +sehgal +sehinson +sehmbey +sehne +sehnsucht +sehnt +seho +sehore +sehr +sehri +seiaa +seiac +seiad +seiadvalley +seiae +seiaf +seiag +seiah +seiai +seiaj +seiajpo +seiak +seial +seiam +seian +seiao +seiap +seiar +seiarticle +seias +seiat +seiau +seiav +seiaw +seiax +seiay +seiaz +seib +seiba +seibb +seibc +seibd +seibe +seibert +seibf +seibg +seibh +seibi +seibj +seibk +seibl +seibm +seibn +seibo +seibp +seibq +seibr +seibs +seibt +seibu +seibv +seibw +seibx +seibz +seic +seica +seicb +seicc +seicd +seicf +seicg +seich +seiche +seici +seicj +seick +seicl +seicm +seicn +seico +seicp +seicq +seicr +seics +seict +seicu +seicw +seicx +seicy +seicz +seid +seide +seidelman +seiden +seidenfeld +seidh +seidi +seidj +seidk +seidl +seidler +seidlitz +seidm +seidman +seidn +seidner +seido +seidoutia +seidp +seidq +seidr +seids +seidt +seidu +seidv +seidx +seidz +seie +seiea +seieb +seied +seiee +seief +seieg +seieh +seiei +seiel +seiem +seieo +seiep +seieq +seier +seiet +seiew +seif +seifa +seifb +seifc +seifd +seife +seifers +seifert +seiff +seiffert +seifg +seifh +seifi +seifj +seifk +seifl +seifm +seifn +seifo +seifp +seifq +seifr +seifried +seifs +seift +seifu +seifv +seifw +seifx +seify +seifz +seig +seiga +seigb +seigc +seigd +seige +seigel +seigf +seigg +seigh +seigi +seigj +seigji +seigk +seigl +seigm +seign +seigner +seigneur +seigneurage +seigneuress +seigneurial +seigneury +seignier +seignior +seigniorage +seignioral +seignioralty +seigniorial +seigniority +seigniorship +seigniory +seignorage +seignoral +seignoret +seignorial +seignority +seignorize +seignory +seigo +seigp +seigq +seigr +seigs +seigt +seigu +seigv +seigw +seigx +seigy +seigz +seih +seiha +seihb +seihc +seihd +seihe +seihf +seihg +seihh +seihi +seihj +seihk +seihl +seihm +seihn +seiho +seihp +seihq +seihr +seihs +seiht +seihu +seihv +seihw +seii +seij +seiji +seik +seiko +seikura +seil +seilenoi +seilenos +seiler +seiletter +seili +seiling +seillier +seim +seimat +seimbri +seimemo +sein +seinajoki +seindang +seine +seined +seiner +seining +seins +seio +seip +seiple +seippel +seiq +seir +seira +seirath +seireport +seirgaakar +seirospore +seirosporic +seis +seiscars +seise +seisgi +seishun +seisin +seisirat +seism +seismal +seismatical +seismetic +seismic +seismically +seismicity +seismism +seismo +seismogram +seismograph +seismologic +seismologist +seismologue +seismometer +seismometric +seismometry +seismoscope +seismoscopic +seismotic +seit +seite +seiter +seith +seitkaitetu +seity +seitz +seiu +seiurus +seiv +seiw +seix +seiyap +seiyara +seiyuhonto +seiyukai +seiz +seiza +seizable +seize +seized +seizer +seizes +seizin +seizing +seizor +seizure +seizures +sejant +sejbalova +sejima +sejiq +sejm +sejoin +sejoined +sejongro +sejugate +sejugous +sejunct +sejunction +sejunctive +sejunctively +sejunctly +seka +sekak +sekalan +sekalana +sekalau +sekane +sekani +sekanina +sekapan +sekapat +sekar +sekarang +sekare +sekaryongo +sekatakbunyi +sekayu +seke +sekepan +seker +sekhwan +seki +sekiana +sekiu +sekiyani +sekka +seko +sekol +sekong +sekori +sekos +sekou +sekpele +sekretarin +seksan +seksee +seku +sekunda +sekwa +sekyani +sela +selachian +selachii +selachoid +selachoidei +selachostome +selachostomi +seladang +selaginaceae +selaginella +selagite +selago +selah +selahattin +selako +selale +selalir +selama +selamin +selamlik +selander +selangor +selar +selaru +selas +selassie +selat +selatan +selau +selayar +selbee +selber +selbergite +selbie +selbornian +selbrede +selburg +selby +selbyville +selchow +selct +selcuk +seld +selden +seldes +seldom +seldomcy +seldomer +seldomly +seldomness +seldomused +seldon +seldor +seldseen +sele +selebipikwe +select +selectable +selected +selectedly +selectee +selecting +selection +selectionism +selectionist +selections +selective +selectively +selectivity +selectly +selectness +selector +selectors +selectreport +selects +seled +seleected +selegop +selekau +selektor +selemo +selena +selene +selenge +selenian +seleniate +selenic +selenicereus +selenide +selenidera +seleniferous +selenigenous +selenion +selenious +selenipedium +selenitic +selenitical +selenitish +seleniuret +selenodont +selenodonta +selenodonty +selenograph +selenography +selenolatry +selenologist +selenology +selenomancy +selenoscope +selenosis +selenotropic +selenotropy +selensilver +selensulphur +selent +seleo +selepe +selepegno +selepele +selepet +seleput +selestina +seletar +seleucia +seleucian +seleucid +seleucidae +seleucidan +seleucidean +seleucidian +seleucidic +seleucus +seleznev +seleznyov +self +selfaccusing +selfadmiring +selfapplause +selfassumed +selfcide +selfcommand +selfconceit +selfcontrol +selfdecit +selfdefence +selfdefense +selfdelusion +selfdenial +selfdenying +selfdestruct +selfdom +selfeducated +selfeffacing +selfemployed +selfesteem +selfevident +selfexistent +selfexisting +selfful +selffulness +selfglorious +selfheal +selfhelp +selfhood +selfing +selfinterest +selfinverse +selfish +selfishly +selfishness +selfism +selfist +selfless +selflessly +selflessness +selflocking +selflove +selfly +selfname +selfness +selfparody +selfpraise +selfreliance +selfreproach +selfreproof +selfrespect +selfsame +selfsameness +selfsealing +selfseeking +selfselected +selftaught +selftorture +selftuning +selfward +selfwards +selfwill +selfwilled +selfworship +selia +selianin +selic +selictar +selidor +selie +seligman +seligmannite +selihoth +selim +selime +selina +selinda +seline +selinger +selinsgrove +selinuntine +selinur +selion +seliske +selisker +selj +seljuk +seljukian +selk +selkirk +selknam +selkow +selkup +sell +sella +sellable +sellably +sellaite +selland +sellar +sellars +sellate +selle +selleck +sellenders +sellenthin +seller +sellers +sellersburg +sellersville +sellest +selleth +selli +sellie +selliform +selling +sellinger +sellman +sellon +sells +sellwood +selly +selma +selmancity +selmar +selmer +selmon +selong +selser +selsoviet +selsyn +selt +selten +selter +selti +selton +seltsamer +seltzogene +selu +seluka +selung +selungai +seluwasan +selv +selva +selvage +selvaged +selvagee +selvaggio +selvaraj +selvas +selvasa +selvedge +selves +selvidge +selvin +selwart +selwyn +selwyne +selwynne +selya +selz +selzer +selzogene +sema +semaca +semachiah +semaeostomae +semai +semakha +semambu +semandang +semang +semangja +semangjah +semangsenoic +semanteme +semantic +semantical +semantically +semantician +semanticist +semanticists +semanticly +semantics +semanticsto +semantology +semantron +semaphore +semaphores +semaphoric +semaphorical +semaphorist +semaq +semarang +semariji +semarum +semasiology +semateme +sematic +sematography +sematology +sematrope +semau +semawa +sembach +sembakoeng +sembakong +sembakung +semball +sembi +sembilan +sembla +semblable +semblably +semblance +semblant +semblative +semble +sembler +seme +semecarpus +semedo +semee +semeed +semei +semeia +semeiography +semeiologic +semeiologist +semeiology +semeion +semeiotic +semeiotical +semeiotics +semelai +semele +semelfactive +semelovsky +semelparity +semelparous +semels +semembu +semen +semence +semendo +semendua +semeniuk +semenov +semeonova +semeostoma +semere +semese +semester +semesters +semestral +semestrial +semi +semiacid +semiadherent +semiadnate +semiaerial +semiahmoo +semialbinism +semialien +semialpine +semiamarts +semiang +semiangle +semiangular +semianimal +semianimate +semianimated +semiannealed +semiannual +semiannually +semiannular +semiantique +semiape +semiaperture +semiaquatic +semiarc +semiarch +semiarid +semiaridity +semiatheist +semiattached +semiauto +semiaxis +semibachelor +semibald +semibalked +semiball +semiballoon +semiband +semibarbaric +semibaronial +semibarren +semibase +semibasement +semibastion +semibay +semibeam +semibejan +semibelted +semibifid +semibleached +semiblind +semiblunt +semibody +semiboiled +semibold +semibouffant +semibreve +semibull +semic +semicadence +semicalcined +semicanal +semicanalis +semicardinal +semicarnally +semicastrate +semicaudate +semicell +semicentury +semichannel +semichaotic +semichemical +semicheviot +semichevron +semichiffon +semichoric +semichorus +semichrome +semicircle +semicircled +semicircular +semicirque +semicitizen +semiclassic +semiclause +semicleric +semiclerical +semiclimber +semiclimbing +semiclose +semiclosed +semiclosure +semicoke +semicollar +semicolloid +semicolon +semicolonial +semicolons +semicolumn +semicolumnar +semicoma +semicomatose +semicombined +semicombust +semicomic +semicomical +semicompact +semicomplete +semiconceal +semiconcrete +semicone +semiconic +semiconical +semiconnate +semiconoidal +semiconvert +semicordate +semicordated +semicorneous +semicoronate +semicoronet +semicostal +semicotton +semicotyle +semicountry +semicrepe +semicretin +semicriminal +semicroma +semicrome +semicubical +semicubit +semicup +semicupium +semicupola +semicured +semicurl +semicursive +semicyclic +semicycloid +semicylinder +semicynical +semidaily +semidark +semidarkness +semidead +semideaf +semidecay +semidefinite +semideific +semideity +semidelight +semideltaic +semidemented +semideponent +semidesert +semidetached +semidiameter +semidiapason +semidiapente +semidigested +semidine +semidirect +semidisabled +semidisk +semiditone +semidiurnal +semidivided +semidivine +semidole +semidome +semidomed +semidomestic +semidomical +semidormant +semidouble +semidrachm +semidramatic +semidress +semidressy +semidried +semidry +semidrying +semiductile +semidull +semiduplex +semiduration +semie +semieducated +semieffigy +semiegg +semiegret +semielastic +semielision +semiellipse +semiellipsis +semielliptic +semien +semienclosed +semiengaged +semiequitant +semier +semierect +semiessay +semiexpanded +semiexposed +semiexternal +semiextinct +semifable +semifabulous +semifailure +semifamine +semifascia +semifashion +semifast +semiferal +semiferous +semifeudal +semifib +semifiction +semifigure +semifinal +semifinalist +semifine +semifinish +semifinished +semifiscal +semifistular +semifit +semifitting +semifixed +semiflex +semiflexed +semiflexible +semiflexion +semiflexure +semiflint +semifloating +semifloret +semifloscule +semiflow +semifluent +semifluid +semifluidic +semifluidity +semifoaming +semiforeign +semiform +semiformal +semiformed +semifossil +semifrantic +semifriable +semifrontier +semifuddle +semifused +semifusion +semify +semigae +semigala +semigirder +semiglaze +semiglazed +semiglobe +semiglobose +semiglobular +semiglorious +semiglutin +semigod +semigrainy +semigranitic +semigravel +semigroove +semigroups +semihand +semihard +semiharden +semihardy +semihastate +semihexagon +semihiant +semihiatus +semihigh +semihobo +semihonor +semihoral +semihorny +semihostile +semihot +semihuman +semihumbug +semihumorous +semihyaline +semihydrate +semiinfinite +semijealousy +semijubilee +semijudicial +semilanceta +semilatent +semilatus +semileafless +semilens +semilethal +semiliberal +semilichen +semiligneous +semilimber +semilined +semiliquid +semiliterate +semilocular +semilogical +semilong +semilooper +semiloose +semiloyalty +semilucent +semilunar +semilunare +semilunary +semilunate +semilunation +semilune +semiluxation +semiluxury +semimachine +semimade +semimadman +semimagical +semimagnetic +semimajor +semimarine +semimarket +semimarking +semimarkov +semimature +semimember +semimetal +semimetallic +semimi +semimild +semimilitary +semimill +semimineral +semiminim +semiminor +semimolecule +semimonastic +semimonitor +semimonopoly +semimonster +semimonthly +semimoron +semimucous +semimuslim +semimute +semimystic +semimystical +semimythical +seminaked +seminal +seminality +seminally +seminarcosis +seminarial +seminaries +seminarist +seminaristic +seminarize +seminars +seminasal +seminase +seminatant +seminate +semination +seminative +seminebulous +seminegro +seminervous +seminiferal +seminiferous +seminific +seminifical +seminirao +seminist +seminium +seminivorous +seminoma +seminomad +seminomadic +seminomads +seminomata +seminormal +seminose +seminovel +seminovelty +seminude +seminudity +seminule +seminuria +seminvariant +semioblivion +semiofficial +semiography +semionotidae +semionotus +semiopacity +semiopacous +semiopal +semiopaque +semiopened +semiorb +semiordinate +semioriental +semiosseous +semiotic +semiotician +semiotics +semioval +semiovaloid +semiovate +semiovoid +semiovoidal +semioxidated +semioxidized +semipagan +semipalmate +semipalmated +semipanic +semipapal +semipapist +semiparallel +semipartial +semipaste +semipastoral +semipasty +semipause +semipaved +semipeace +semipectoral +semiped +semipedal +semipellucid +semipendent +semiperfect +semiperoid +semipervious +semipetaloid +semiphase +semipinnate +semipiscine +semiplastic +semiplume +semipolar +semipoor +semipopish +semipopular +semiporous +semiportable +semipostal +semiprecious +semiprivacy +semiprivate +semipro +semiprofane +semiprone +semiproof +semiproven +semipublic +semipupa +semipurulent +semiputrid +semipyritic +semiquadrate +semiquartile +semiquaver +semiquietism +semiquietist +semiquintile +semiquote +semiradial +semiradiate +semiramis +semiramize +semirara +semirare +semiraw +semirefined +semireflex +semiregular +semirelief +semireniform +semiresinous +semiresolute +semirevolute +semirhythm +semiriddle +semirigid +semiring +semiroll +semirot +semirotary +semirotating +semirotative +semirotatory +semirotund +semirotunda +semiround +semiroyal +semiruin +semirural +semirustic +semis +semisacred +semisaint +semisaline +semisaltire +semisarcodic +semisatiric +semisavage +semisavagery +semiscenic +semisecrecy +semisecret +semisection +semisegment +semisemistar +semisensuous +semisentient +semiseptate +semiserf +semiserious +semiservile +semisevere +semiseverely +semiseverity +semisextile +semishady +semishaft +semisheer +semishirker +semishrub +semishrubby +semisilica +semisimious +semisimple +semisingle +semisixth +semiskilled +semislave +semismelting +semismile +semismiley +semisocial +semisocinian +semisoft +semisolemn +semisolemnly +semisolid +semisolute +semisomnous +semisopor +semispan +semispeakers +semisphere +semispheric +semispinalis +semispiral +semisport +semisporting +semisquare +semistable +semistarved +semistate +semisteel +semistiff +semistill +semistock +semistory +semistriate +semistriated +semisuburban +semisuccess +semisupine +semisweet +semita +semitact +semitae +semitailored +semital +semitandem +semitangent +semitau +semitaur +semiteetotal +semitelic +semiterete +semitertian +semitesseral +semitessular +semitica +semiticism +semiticize +semitics +semitime +semitism +semitist +semitization +semitize +semitonal +semitonally +semitone +semitonic +semitontine +semitorpid +semitour +semitrailer +semitrained +semitransept +semitrimmed +semitropic +semitropical +semitropics +semitruth +semituberous +semitubular +semiuncial +semiupright +semiurban +semiurn +semivalvate +semivault +semivector +semivirtue +semiviscid +semivital +semivitreous +semivocal +semivocalic +semivolatile +semivolcanic +semivowel +semivowels +semiwaking +semiwarfare +semiweeklies +semiweekly +semiwild +semiwoody +semiyearlies +semiyearly +semjanov +semjen +semler +semmelrogge +semmelweich +semmelweis +semmens +semmes +semmet +semmit +semmler +semnae +semnam +semnan +semnani +semnones +semo +semola +semolella +semolika +semolina +semological +semology +semon +semoq +semora +semostomae +semostomeous +semostomous +sempahore +sempan +semper +semperannual +sempergreen +sempervirent +sempervirid +sempervivum +semphyra +sempitern +sempiternal +sempiternity +sempiternize +sempiternous +sempkin +semple +sempler +semplice +sempoint +semporna +sempstress +sempstrywork +sempurna +semra +semsem +semstress +semukung +semuncia +semuncial +semwatch +semyon +sena +senaah +senaat +senadi +senado +senadores +senagi +senaigo +senaite +senaki +senam +senari +senarian +senarius +senarmontite +senary +senas +senat +senate +senates +senath +senato +senatobia +senator +senatorially +senatorian +senators +senatorship +senatory +senatress +senatrices +senatrix +senatus +sence +senci +sencion +send +senda +sendable +sendai +sendal +sendana +sendee +senden +sendenary +sender +sendero +senderport +senders +sendest +sendeth +sending +sendmail +sendra +sends +sendsms +sendto +sendyk +sene +seneca +senecacastle +senecafalls +senecal +senecan +senecarocks +senecas +senecaville +senecio +senecioid +senecionine +senectitude +senectude +senectuous +sened +senega +senegal +senegalese +senegambia +senegambian +senegin +seneh +senepol +sener +senesce +senescence +senescent +seneschal +seneschally +seneschalsy +seneschalty +senese +seneta +senex +seney +senf +senftleben +seng +senga +sengal +sengam +sengan +sengasena +sengbe +sengeju +sengekanten +sengele +sengere +sengga +senggi +senggo +senghor +sengima +sengmai +sengo +sengoba +sengoi +sengoshi +sengreen +sengseng +sengupta +senhaja +seni +seniang +senicide +senih +senijextee +senile +senilely +senilism +senilita +senility +senilize +senior +seniorities +seniority +seniors +seniorship +senir +senistive +seniti +seniuk +seniwong +senje +senji +senka +senkaku +senkakushoto +senkansse +senkov +senlac +senna +sennacherib +sennegrass +sennet +sennett +sennetti +sennight +sennit +sennite +seno +senocular +senoi +senoia +senoic +senones +senonian +senoufo +senoufou +senrat +sensa +sensable +sensal +sensas +sensation +sensational +sensationary +sensationish +sensationism +sensationist +sensations +sensatorial +sensatory +sense +sensed +senseful +sensei +senseless +senselessly +senseng +senses +sensi +sensibilia +sensibilisin +sensibility +sensibilium +sensibilize +sensible +sensibleness +sensibly +sensical +sensifacient +sensiferous +sensific +sensifics +sensify +sensigenous +sensile +sensilia +sensilla +sensillum +sensing +sension +sensism +sensist +sensistic +sensitive +sensitively +sensitives +sensitivity +sensitize +sensitized +sensitizer +sensitizing +sensitometer +sensitometry +sensitory +sensitve +sensive +sensize +senso +sensomobile +sensomotor +sensor +sensoria +sensorial +sensorium +sensors +sensory +senstive +sensual +sensualism +sensualist +sensualistic +sensuality +sensualize +sensually +sensualness +sensuism +sensuist +sensum +sensuosity +sensuous +sensuously +sensuousness +sensyne +sent +senta +sentados +sentah +sentali +sentani +sentator +senten +sentence +sentenced +sentencer +sentences +sentencing +sentenggau +sententially +sententiary +sententious +sentest +senthang +senti +sentience +sentiency +sentiendum +sentiently +sentier +sentiment +sentimental +sentimenter +sentiments +sentinel +sentinelese +sentinellike +sentinels +sentinelship +sentinelwise +sentisection +sentition +sentner +sentries +sentrokofi +sentry +senuah +senufo +senufotusia +senusi +senusian +senusism +senyavin +senyildiz +senyshyn +senza +senzeni +senzo +seongin +seoni +seorim +seoul +seow +sepa +sepad +sepahua +sepaled +sepaline +sepalled +sepalody +sepaloid +separability +separable +separably +separata +separate +separated +separatedly +separately +separateness +separates +separateth +separatical +separating +separation +separations +separatism +separatist +separatistic +separative +separatively +separator +separators +separatory +separatress +separatrix +separatum +sepe +sepedi +sepek +sepen +seperate +seperated +seperator +seperovitch +sephar +sepharad +sephardi +sephardic +sephardim +sepharvaim +sepharvites +sephen +sephira +sephiric +sephirothic +sephora +sepia +sepiaceous +sepialike +sepian +sepiarian +sepiary +sepic +sepicolous +sepiidae +sepik +sepikmadang +sepikramu +sepiment +sepioid +sepioidea +sepiola +sepiolidae +sepiolite +sepion +sepiost +sepiostaire +sepium +sepko +sepoe +sepone +seposition +sepp +seppina +seppl +seppo +seppuku +sepricely +seps +sepsidae +sepsine +sepsis +sept +septal +septan +septane +septangle +septangled +septangular +septarian +septariate +septarium +septated +septation +septavalent +septave +septectomy +september +septemberer +septemberism +septemberist +septembral +septembrian +septembrist +septembrize +septembrizer +septemfid +septemfluous +septemia +septemvious +septemvir +septemvirate +septemviri +septenar +septenarian +septenarius +septenary +septenate +septennary +septennate +septenniad +septennially +septennium +septenous +septentrio +septentrion +septerium +septermber +septet +septett +septette +septfoil +septi +septical +septically +septicemia +septicemic +septicidal +septicidally +septicity +septicolored +septiembre +septieme +septier +septifarious +septiferous +septifluous +septifolious +septiform +septifragal +septilateral +septile +septillionth +septimal +septimanal +septime +septimole +septimus +septinsular +septipartite +septivalent +septleva +septocosta +septogerm +septogloeum +septoic +septole +septonasal +septoria +septotomy +septship +septuagenary +septuagesima +septuagint +septuagintal +septulate +septulum +septums +septuncial +septuor +septuple +septuplet +septuplicate +sepulcher +sepulchers +sepulchrally +sepulchre +sepulchres +sepulchrous +sepultura +sepultural +sepulture +sepulveda +sepulvede +seputan +seqed +seqence +seqfchk +seqrch +sequa +sequacious +sequaciously +sequacity +sequan +sequani +sequanian +sequatchie +sequel +sequela +sequelae +sequelant +sequels +sequence +sequenced +sequencer +sequencers +sequences +sequencing +sequencings +sequency +sequent +sequential +sequentially +sequently +sequents +sequest +sequestered +sequestra +sequestrable +sequestral +sequestrate +sequestrator +sequestro +sequestrum +sequim +sequin +sequins +sequoia +sequoias +sequoya +sequoyah +seqwl +serab +serabend +serac +serach +serack +seractal +serafia +serafin +serafina +serafini +serafino +seragli +seraglios +serah +serahuli +serai +seraiah +serail +serak +seral +seralbumin +seram +seramar +serambau +serambo +serang +serapamoun +serapea +serapeum +seraph +seraphic +seraphical +seraphically +seraphicism +seraphicness +seraphims +seraphin +seraphina +seraphine +seraphism +seraphlike +seraphs +seraphtide +serapias +serapic +serapin +serapio +serapis +serapist +seras +serasker +seraskerate +seraskier +seraskierat +serato +serau +seraw +serawai +serawaj +serawi +serb +serban +serbdom +serbedjija +serbedzja +serber +serbian +serbin +serbize +serbobosnian +serbodjadi +serbonian +serbophile +serbophobe +serbs +serbus +serc +sercbl +serce +sercial +sercicf +sercom +sercuriy +serda +serdab +serdar +serdcu +serdobolskii +sere +serea +serean +serebriakoff +serebriakov +serebu +sered +seree +sereer +seregelyi +seregni +sereh +serein +serekini +serena +serenade +serenaded +serenader +serenading +serenata +serenate +serendib +serendibite +serendite +serene +serenella +serenelli +serenely +sereneness +serengeti +serenify +serenissime +serenissimi +serenissimo +serenity +serenize +serenoa +serepta +serer +sererenon +sereresafen +sereresine +serersafen +serersin +serersine +seres +seresere +sereward +serewen +sereys +serf +serfage +serfhood +serfish +serfishly +serfishness +serfism +serflike +serfling +serfozo +serfs +serfship +serg +serge +sergeancies +sergeancy +sergeant +sergeantcy +sergeantess +sergeantry +sergeants +sergeantship +sergeanty +sergedesoy +sergeev +sergei +sergej +sergel +sergent +serger +sergette +sergeui +sergey +sergeyevich +sergi +serging +sergino +sergio +sergipe +sergiu +sergius +serglobulin +sergo +serguei +sergyl +serhta +seri +seria +serial +serialist +seriality +serializable +serialize +serialized +serializes +serializing +serialline +serially +serialport +serials +serian +seriano +seriary +seriately +seriating +seriation +seric +sericana +sericate +sericated +sericea +sericeous +seriche +sericin +sericipary +sericite +sericitic +sericocarpus +sericteria +sericterium +serictery +sericultural +sericulture +serie +serieller +seriema +series +serif +serific +seriform +serigraph +serigrapher +serigraphy +serikawa +serim +serimeter +serin +serina +serinette +sering +seringa +seringal +seringhi +serinus +serio +seriocomedy +seriocomic +seriocomical +seriola +seriolidae +serioline +seriosity +serious +seriousis +seriously +seriousness +seripositor +seriwo +serizeille +serjania +serjeant +serjeants +serjei +serke +serki +serkisetavi +serko +serkowski +sermah +sermata +serment +sermo +sermon +sermoneer +sermoner +sermonesque +sermonet +sermonettino +sermonic +sermonically +sermonics +sermonish +sermonism +sermonist +sermonize +sermonizer +sermonizing +sermonless +sermonoid +sermonolatry +sermonology +sermonproof +sermons +sermonwise +sermuncle +serna +sernamby +sernas +serner +sernion +sernum +sernumba +sernurmorkin +serny +sero +seroa +seroalbumin +serocco +serocolitis +serocyst +serocystic +serodermitis +seroenzyme +serofibrous +serofluid +seroimmunity +seroka +serolemma +serolin +serolipase +serologic +serological +serologist +seromaniac +seromucous +seromuscular +seron +seronegative +seroon +seroot +serophthisis +seroplastic +seropositive +seroprotease +seropuriform +seropurulent +seropus +seroq +seroreaction +serosa +seroscopy +serositis +serosity +serosynovial +serotherapy +serotina +serotinal +serotine +serotinous +serotonin +serotoxin +serour +serous +serousness +serovaccine +serow +seroy +serozyme +serpari +serpe +serpedinous +serpens +serpent +serpentaria +serpentarian +serpentarii +serpentarium +serpentarius +serpentary +serpente +serpenteau +serpentes +serpentess +serpentian +serpenticide +serpentid +serpentiform +serpentina +serpentinely +serpentinian +serpentinic +serpentinize +serpentinoid +serpentinous +serpentis +serpentize +serpentlike +serpently +serpentoid +serpentry +serpents +serpentwood +serphid +serphidae +serphin +serphoid +serphoidea +serpico +serpierite +serpiginous +serpigo +serpivolant +serpolet +serpula +serpulae +serpulan +serpulid +serpulidae +serpulidan +serpuline +serpulite +serpulitic +serpuloid +serra +serradella +serraf +serrage +serrai +serran +serrana +serrania +serranid +serranidae +serranilla +serrano +serranoid +serranus +serrasalmo +serrate +serrated +serratic +serratiform +serratile +serration +serratosa +serrature +serrault +serravalle +serre +serreau +serrekunda +serrer +serres +serret +serricorn +serricornia +serried +serriedly +serriedness +serrifera +serriferous +serriform +serriped +serrom +serrulate +serrulated +serrulation +serry +serse +sersetup +sersic +sert +serta +sertori +sertularia +sertularian +sertularioid +sertule +sertulum +sertum +seru +serua +seruawan +serudong +serudung +serug +seruilaut +serumal +serums +serut +serv +servable +servage +servais +serval +servaline +servance +servant +servantcy +servantdom +servantess +servantless +servantlike +servantry +servants +servantship +servation +servauntes +serve +serveas +served +servedst +servent +servente +serventie +serventism +server +servera +serveral +serveris +servername +serveron +servers +servery +serves +servest +servet +serveth +servetian +servetianism +servhuli +servia +servian +servicais +service +serviceable +serviceably +serviced +serviceless +servicepack +servicepak +services +servicesoff +serviceson +servicing +servidio +servidor +servient +serviential +servier +servigny +servile +servilely +servileness +servilism +servility +servilize +serville +serving +servingman +servings +servio +servis +servist +servite +servitor +servitorial +servitorship +servitress +servitrix +servitude +serviture +servius +servlan +servo +servoid +servomotor +servos +servoss +servoyd +servr +servulate +serwa +serwamby +serwang +serwin +serwiz +sery +sesa +sesajap +sesake +sesame +sesamoid +sesamoidal +sesamoiditis +sesamum +sesan +sesarwa +sesay +sesayap +sesban +sesbania +sescuple +sese +seseli +seshadri +seshat +sesia +sesiidae +sesivi +sesma +sesoko +sesotho +sesqui +sesquialter +sesquialtera +sesquibasic +sesquinona +sesquinonal +sesquioctava +sesquioxide +sesquipedal +sesquiquarta +sesquiquinta +sesquisalt +sesquisextal +sesquisquare +sesquitertia +sess +sessack +sessak +sesser +sessile +sessilis +sessility +session +sessional +sessionary +sessions +sessionwall +sessler +sesso +sessue +sesta +sesterce +sestertium +sestet +sesti +sestiad +sestian +sestina +sestine +sestio +sestole +sestuor +sesun +sesuto +sesuvium +seta +setaceous +setaceously +setae +setal +setaman +setaria +setarious +setast +setbacks +setbit +setblock +setbolt +setcharwidth +setcolor +setdown +sete +setebo +setenta +setenv +setfast +setfont +setgray +seth +sethd +sethead +sethi +sethian +sethic +sethite +sethur +sethuraman +seti +setiali +setiawan +setibo +setier +setif +setifera +setiferous +setiform +setigerous +setimr +setioerr +setiparous +setirostral +setjmp +setley +setline +setllers +setlocale +setmacro +setmeup +setness +setnet +seto +setochka +setoff +setogbe +setonhall +setophaga +setophaginae +setophagine +setose +setouchi +setous +setout +setover +setpfx +sets +setsman +setsthe +setsuko +setswana +sett +settable +settaine +settat +sette +settee +settels +setter +setterfield +settergrass +setters +setterwort +settest +setteth +setting +settings +settla +settle +settleable +settled +settledly +settledness +settlement +settlements +settler +settlerdom +settlers +settles +settlest +settling +settlings +settlor +setto +setts +settsman +setu +setubal +setuid +setula +setule +setuliform +setulose +setulous +setup +setupcheck +setups +setwall +setwise +setwork +setz +setzen +setzt +seuca +seuce +seuci +seucrty +seufert +seugh +seul +seung +seungchul +seurat +seure +seuss +seusss +sevanne +sevareid +sevastjanov +sevastopol +sevastyanov +sevda +sevek +seven +sevenbark +sevenday +sevener +sevenfold +sevenfolded +sevenmile +sevennight +sevenpence +sevenpenny +sevenpointed +sevens +sevenscore +sevensprings +sevente +seventeen +seventeens +seventeenth +seventh +seventhday +seventhly +seventies +seventy +seventyfold +sevenvalleys +sevenvowel +sevenyear +sever +severa +severable +several +severality +severalize +severally +severalness +severalth +severance +severation +severe +severed +severedly +severely +severeness +severer +severest +severi +severian +severin +severinac +severine +severing +severingly +severini +severinus +severish +severities +severity +severization +severize +severly +severn +severnapark +severnaya +severns +severnx +severny +severo +severs +severy +sevierville +sevigny +sevilla +sevillano +seville +sevillian +sevn +sevogorob +sevot +sewa +sewable +sewacu +sewage +sewall +sewan +sewanee +sewaren +sewataitai +sewawa +sewe +sewed +sewell +sewellel +sewen +sewer +sewered +sewerless +sewerlike +sewerman +sewers +sewery +seweryn +sewest +seweth +sewickley +sewing +sewless +sewn +sewround +sews +sexa +sexadecimal +sexagenarian +sexagenary +sexagesima +sexagesimal +sexagesimals +sexagonal +sexangle +sexangled +sexangular +sexangularly +sexannulate +sexcentenary +sexcuspidate +sexdigital +sexdigitate +sexdigitated +sexdigitism +sexed +sexenary +sexennial +sexennially +sexennium +sexern +sexes +sexfarious +sexfid +sexfoil +sexhood +sexier +sexiest +sexifid +sexillion +sexily +sexin +sexiness +sexing +sexiped +sexipolar +sexism +sexist +sexisyllabic +sexisyllable +sexivalence +sexivalency +sexivalent +sexless +sexlessly +sexlessness +sexlike +sexlocular +sexly +sexmachine +sexological +sexologist +sexology +sexonix +sexpartite +sexradiate +sext +sexta +sextactic +sextain +sextan +sextant +sextantal +sextar +sextarii +sextarius +sextary +sextennial +sextern +sextest +sextette +sextic +sextidecimal +sextile +sextilis +sextillionth +sextipara +sextipartite +sextiply +sextipolar +sexto +sextodecimo +sextole +sextolet +sexton +sextoness +sextonscreek +sextonship +sextonville +sextry +sextula +sextulary +sextumvirate +sextuplex +sextuplicate +sextuply +sextus +sexual +sexuale +sexualism +sexualist +sexuality +sexualize +sexually +sexuous +sexupara +sexuparous +sexy +sexyfont +seya +seyar +seyawa +seybertite +seychas +seychaz +seychelles +seychellois +seydel +seydou +seye +seyferth +seyfferrtitz +seyffertitz +seyfollah +seyit +seyki +seyl +seylar +seyler +seyma +seymeria +seymour +seyrig +seyu +seyyid +sezer +sezies +sezo +sfasu +sfax +sfbmcusps +sfconvention +sfiroudis +sfit +sfla +sflovers +sfoltz +sfone +sfoot +sfree +sfry +sfsq +sfsr +sfsu +sfts +sftware +sgad +sgau +sgaw +sgawbghai +sger +sgeu +sgid +sgluchil +sgmp +sgornikov +sgot +sgraffiato +sgraffito +sgroups +sgtu +sguigna +shaab +shaaban +shaafi +shaalabbin +shaalbim +shaalbonite +shaale +shaanxi +shaaph +shaaraim +shaari +shaashgaz +shaatnez +shab +shaba +shabak +shaban +shabana +shabari +shabash +shabatura +shabba +shabbath +shabbed +shabbethai +shabbier +shabbiest +shabbify +shabbily +shabbiness +shabbir +shabble +shabbona +shabbyish +shabeellaha +shablonc +shabo +shabogala +shabrack +shabun +shabunda +shabunder +shabuoth +shabwah +shachia +shachle +shachly +shachtman +shack +shackanite +shackatory +shackbolt +shacked +shackelford +shackland +shacklebone +shackled +shackledom +shackleford +shacklefords +shackler +shackles +shackleton +shacklewise +shackley +shackling +shackly +shacks +shacky +shacriaba +shad +shadal +shadbelly +shadberry +shadbird +shadchan +shaddam +shaddock +shade +shaded +shadeful +shadegap +shadehill +shadeless +shader +shades +shadetail +shadey +shadier +shadiest +shadily +shadine +shadiness +shading +shadings +shadkan +shadoan +shadoof +shadow +shadowable +shadowbox +shadowboxing +shadowed +shadower +shadowfax +shadowfoot +shadowgram +shadowgraph +shadowgraphy +shadowhawk +shadowhost +shadowily +shadowiness +shadowing +shadowishly +shadowist +shadowland +shadowless +shadowlike +shadowly +shadowness +shadowpw +shadows +shadowy +shadrach +shadrack +shads +shadwick +shady +shadycove +shadydale +shadygrove +shadypoint +shadyside +shadyspring +shadyvalley +shae +shaefer +shaemen +shafer +shaff +shaffer +shaffers +shaffle +shafi +shafiite +shafik +shafiq +shafique +shaft +shafted +shafter +shaftfoot +shafting +shaftless +shaftlike +shaftman +shaftment +shaftoe +shafton +shaftr +shafts +shaftsburg +shaftsbury +shaftsman +shaftway +shafty +shaganappi +shagau +shagawu +shagbag +shage +shagged +shaggedness +shaggier +shaggiest +shaggily +shagginess +shaggy +shagia +shagin +shaglet +shaglike +shagpate +shagrag +shagrat +shagreen +shagreened +shagroon +shagtail +shahab +shahabuddin +shahaptian +shahara +shaharaim +shahari +shaharith +shahazimah +shahbandar +shahdol +shahdom +shaheen +shahen +shahhat +shahi +shahid +shahin +shahmansuri +shaho +shahpur +shahram +shahriar +shahrokh +shahroodi +shahrudi +shahsavani +shahseven +shahshahani +shahzada +shai +shaib +shaibal +shaigia +shaikh +shaikin +shaikiyeh +shail +shailendra +shailesh +shailin +shaina +shaine +shaini +shaire +shaitan +shaiva +shaivism +shaji +shajna +shajo +shak +shaka +shakable +shakably +shakajlo +shakar +shake +shakebly +shaked +shakefork +shaken +shakenly +shakeout +shakeproof +shaker +shakerag +shakerdom +shakeress +shakerism +shakerlike +shakers +shakes +shakescene +shakespeare +shaketh +shakha +shakhajlo +shakhtarin +shakib +shakier +shakiest +shakily +shakin +shakiness +shaking +shakingly +shakira +shakka +shakoor +shakopee +shakos +shaksheer +shakta +shakti +shaktism +shaku +shakurov +shaky +shakyamuni +shal +shalaby +shalako +shalaumov +shalbatana +shalelike +shalem +shaleman +shaler +shalf +shalim +shalimar +shalisha +shall +shalla +shallal +shallecheth +shallert +shallon +shalloon +shallop +shallopy +shallots +shallotte +shallow +shallowater +shallowbrain +shallowdraft +shallower +shallowish +shallowist +shallowly +shallowness +shallowpate +shallowpated +shallows +shallowy +shallu +shallum +shallun +shallzwall +shalmai +shalman +shalmaneser +shalmar +shalmon +shalna +shalne +shalt +shalton +shalu +shalwar +shaly +shama +shamable +shamableness +shamably +shamadin +shamaitish +shamakhi +shamakot +shamal +shamali +shamaliyah +shamalo +shamam +shaman +shamaness +shamanic +shamanism +shamanist +shamanistic +shamanize +shamariah +shamarokov +shamash +shamata +shamatari +shamateur +shamathari +shamba +shambaa +shambala +shambaugh +shambhu +shambled +shambles +shamblin +shambling +shamblingly +shambrier +shambu +shame +shameable +shamed +shamefacedly +shamefast +shamefastly +shameful +shamefully +shamefulness +shameless +shamelessly +shameproof +shamer +shames +shamesick +shameth +shameworthy +shamgar +shamhuth +shamianah +shamie +shamim +shaming +shamir +shamji +shamma +shammah +shammai +shammar +shammas +shammed +shammer +shammick +shamming +shammish +shammock +shammocking +shammocky +shammoth +shammua +shammuah +shammy +shamnyuyanga +shamokin +shamokindam +shamon +shamos +shampoo +shampooed +shampooer +shampooing +shamroot +shamrus +shams +shamsdin +shamshad +shamsheer +shamsherai +shamshiri +shamsi +shamsia +shamsuddin +shamus +shamushti +shan +shana +shanachas +shanachie +shanahan +shanbhag +shand +shanda +shandaken +shandean +shandee +shandeigh +shandel +shandia +shandie +shandig +shandon +shandong +shandor +shandra +shandredhan +shandry +shandrydan +shandu +shandy +shandygaff +shandyism +shane +shaner +shaneyfelt +shang +shanga +shangaan +shangalla +shangama +shangan +shangana +shanganchi +shangawa +shangge +shanghai +shanghaied +shanghaier +shanghaiing +shanghainese +shanghnessy +shangilla +shangkun +shango +shangrila +shangul +shanhuo +shani +shania +shanie +shaniko +shanjo +shankadi +shankar +shankarsun +shanked +shankella +shanker +shankilla +shankillinya +shankings +shankland +shankley +shankpiece +shanks +shanksman +shanksville +shanlang +shanley +shanna +shannah +shannen +shanner +shannock +shannon +shannoncity +shanny +shanon +shanqilla +shans +shansa +shansi +shant +shanta +shantaram +shantee +shantey +shanteys +shanthikumar +shanti +shanties +shantou +shantylike +shantyman +shantytown +shantz +shanusi +shanxi +shanzi +shao +shaodawa +shaonahua +shaoush +shaowu +shaoyang +shap +shapable +shapcott +shape +shaped +shapeful +shapeless +shapelessly +shapeley +shapelier +shapeliest +shapeliness +shapely +shapen +shaper +shapers +shapes +shapeshifter +shapesmith +shapham +shaphan +shaphat +shapher +shapin +shaping +shapingly +shapir +shapiro +shapirowilk +shapland +shapleigh +shapometer +shaporenko +shaposhnikov +shapra +shaps +shapsug +shaptan +shapy +shar +shara +sharable +sharabyn +sharad +sharai +sharaim +sharakanan +sharaku +sharanahua +sharar +sharc +sharchop +sharchup +shardana +sharded +shards +shardy +share +shareable +sharebone +sharebroker +sharecropped +sharecropper +shared +sharedmemory +sharee +shareholders +shareman +sharen +sharename +sharepenny +sharer +sharers +shares +sharescr +shareship +sharesman +sharess +sharewar +shareware +sharewort +sharezer +shargar +sharge +shari +sharia +shariat +sharib +sharif +shariff +sharim +sharin +sharing +shariqah +sharira +sharit +sharity +shariyatpur +shark +sharkey +sharkfin +sharkful +sharkhan +sharkish +sharklet +sharklike +sharks +sharkship +sharkskin +sharku +sharky +sharl +sharla +sharleen +sharlene +sharlin +sharline +sharma +sharman +sharn +sharna +sharnbud +sharny +sharoka +sharon +sharona +sharoncenter +sharone +sharongrove +sharonhill +sharonite +sharonov +sharp +sharpa +sharpe +sharpen +sharpened +sharpener +sharpeners +sharpeneth +sharpening +sharpens +sharper +sharpes +sharpest +sharpeyed +sharpie +sharpish +sharpknife +sharples +sharply +sharpness +sharpo +sharps +sharpsaw +sharpsburg +sharpschapel +sharpshill +sharpshin +sharpshod +sharpshooter +sharpsville +sharptail +sharptown +sharpware +sharpy +sharqi +sharqiyah +sharra +sharrag +sharratt +sharrett +sharri +sharringham +sharron +sharry +sharuhen +sharwa +shary +sharyl +sharyn +shas +shasha +shashai +shashak +shashank +shashi +shashikala +shasta +shastaite +shastan +shaster +shastra +shastraik +shastri +shastrik +shastry +shat +shatalov +shatan +shathmont +shati +shatlovsky +shatner +shatov +shatsmi +shatt +shattay +shatter +shatterbrain +shattercones +shattered +shatterer +shatterhand +shattering +shatteringly +shatterment +shatterpated +shatters +shatterwit +shattery +shattuc +shattuck +shattuckite +shauchle +shauck +shaugh +shaughan +shaughnessy +shaugulidze +shaukat +shaul +shaula +shaulites +shaun +shauna +shaunessy +shaunnessy +shauntee +shaup +shauri +shausha +shauwe +shavable +shavante +shavarsh +shave +shaveable +shaved +shavee +shaveh +shaveling +shavely +shaven +shaver +shaverlake +shavery +shaves +shavese +shavester +shavetail +shaveweed +shavian +shaviana +shavianism +shaving +shavings +shaviyani +shavsha +shaw +shawafb +shawanee +shawanese +shawano +shawasha +shawboro +shawe +shawia +shawisland +shawiya +shawled +shawlee +shawley +shawling +shawlless +shawllike +shawls +shawlwise +shawm +shawmut +shawn +shawna +shawnee +shawneetown +shawneewood +shawny +shawsville +shawtown +shawville +shawwal +shawy +shawyer +shay +shayabit +shayanpour +shaye +shayke +shaykh +shaykhdoms +shayla +shaylah +shayle +shaylyn +shaylynn +shayna +shayne +shays +shaysite +shaz +shazdeh +shcheglov +shdanoff +shea +sheading +sheaf +sheafage +sheaffer +sheaflike +sheafripe +sheafy +sheal +shealing +shealtiel +shealy +shean +sheappard +shear +shearbill +sheard +sheared +shearer +shearers +sheargrass +shearhog +sheariah +shearin +shearing +shearjashub +shearless +shearling +shearman +shearmouse +shears +shearsman +sheartail +shearwater +shearwaters +sheat +sheatfish +sheath +sheathbill +sheathed +sheather +sheathery +sheathes +sheathing +sheathless +sheathlike +sheaths +sheathy +sheaved +sheaveless +sheaveman +sheaves +sheaving +sheb +sheba +shebah +shebam +shebang +shebaniah +shebarim +shebat +shebbedre +shebeen +shebeener +shebelle +sheber +shebna +sheboygan +shebuel +shecaniah +shechan +shechaniah +shechem +shechemites +shechtman +sheckley +shecky +shed +shedd +shedded +shedder +sheddeth +shedding +shede +shedei +shedekka +sheder +shedeur +shedhand +shedim +shedlike +shedman +sheds +shedule +sheduler +sheduller +shedwise +shee +sheedy +sheehan +sheela +sheelagh +sheelah +sheely +sheen +sheena +sheenful +sheenless +sheenly +sheeny +sheenyu +sheep +sheepback +sheepberry +sheepbine +sheepbiter +sheepbiting +sheepcote +sheepcotes +sheepcrook +sheepdip +sheepdog +sheepfaced +sheepfacedly +sheepfold +sheepfolds +sheepfoot +sheepgate +sheephead +sheepheaded +sheephearted +sheepherder +sheepherding +sheephook +sheephouse +sheepify +sheepish +sheepishly +sheepishness +sheepkeeper +sheepkeeping +sheepkill +sheepless +sheeplet +sheeplike +sheepling +sheepman +sheepmaster +sheepmonger +sheepnose +sheepnut +sheeppen +sheeps +sheepshank +sheepshanks +sheepshead +sheepshear +sheepshearer +sheepshed +sheepskins +sheepsplit +sheepsteal +sheepstealer +sheepwalk +sheepwalker +sheepweed +sheepy +sheer +sheered +sheeree +sheergar +sheering +sheerly +sheerness +sheesley +sheet +sheetage +sheeted +sheeter +sheetflood +sheetful +sheeting +sheetless +sheetlet +sheetlike +sheetling +sheets +sheetswa +sheetways +sheetwise +sheetwork +sheetwriting +sheety +sheffer +sheffey +sheffield +sheffler +sheftel +shegai +shehariah +shehitah +shehleh +sheidafar +sheik +sheikdom +sheikh +sheikhlike +sheikhly +sheiklike +sheikly +sheiks +sheila +sheilah +sheilds +sheileagh +sheiley +shein +sheiner +sheiu +shek +shekalev +shekar +shekasip +sheke +shekel +shekels +shekhani +shekhar +shekhoan +shekinah +shekiri +shekiyana +shekka +shekko +sheko +shekwan +shel +shela +shelagh +shelah +shelanites +shelba +shelbi +shelbiana +shelbina +shelburn +shelburne +shelby +shelbygap +shelbyville +sheld +sheldahl +sheldapple +shelder +sheldfowl +sheldon +sheldonville +sheldrake +shelduck +shelegey +shelemiah +sheleph +shelesh +shelf +shelfback +shelffellow +shelfful +shelflife +shelflike +shelflist +shelfmate +shelfpiece +shelfroom +shelfware +shelfworn +shelfy +shelia +sheliak +shelkota +shell +shella +shellac +shellack +shellacked +shellacker +shellacking +shellapple +shellback +shellblow +shellblowing +shellbound +shellburst +shellcracker +shelle +shelleater +shelled +shelleen +shellem +shellen +sheller +shelley +shelleyan +shelleyana +shellfire +shellfish +shellfishery +shellflower +shellful +shellhammer +shellhead +shelli +shellie +shelliness +shelling +shellknob +shelllake +shellman +shellmonger +shellproof +shellrock +shells +shellsburg +shellshake +shellum +shellwizard +shellwork +shellworker +shelly +shellycoat +shelob +shelocta +shelomi +shelomith +shelomoth +shelta +shelter +shelterage +sheltered +shelterer +sheltering +shelteringly +shelterless +shelters +shelterwood +sheltery +sheltie +shelton +sheltron +shelty +shelumiel +shelved +shelver +shelves +shelving +shelvingly +shelvingness +shelvy +shelyak +shelyne +shem +shema +shemaah +shemaiah +shemaka +shemariah +shematics +shemayne +shemeber +shemer +shemgang +shemiah +shemida +shemidah +shemidaites +sheminahua +sheming +sheminith +shemiramoth +shemite +shemitic +shemitish +shemp +shemu +shemuel +shemul +shemwell +shen +shena +shenandoah +shenar +shenara +shenazar +shend +shendal +shendam +shendan +shendu +sheng +shenge +shengen +shengha +shengo +shenguo +shengwe +sheni +shenir +shenna +shennan +shennawy +shenorock +shenshai +shensi +shenton +shenyang +sheol +sheolic +shep +shepanabekwa +shepard +shepham +shephard +shephathiah +shephatiah +shepherd +shepherdage +shepherddom +shepherdess +shepherdhood +shepherdia +shepherdish +shepherdism +shepherdize +shepherdless +shepherdlike +shepherdling +shepherdly +shepherdry +shepherds +shephi +shepho +shephrd +shephuphan +shepley +shepodd +shepp +sheppard +sheppeck +shepperd +sheppey +sheppherd +sheppton +shepstare +sher +shera +sheragul +sherah +sherali +sherani +sherard +sherardia +sherardize +sherardizer +sheratan +sheraton +sherayogur +sherbacha +sherbak +sherban +sherbanee +sherbet +sherbetlee +sherbetzide +sherbo +sherborn +sherbro +sherburn +sherburne +sherd +sherds +sherdukpen +shere +sherebiah +sheree +sherel +sheremeto +sherente +sheresh +sherewyana +sherezer +shergin +sheri +sheriat +sheridan +sheridanlake +sheridon +sherie +sherif +sherifa +sherifate +sheriff +sheriffalty +sheriffdom +sheriffess +sheriffhood +sheriffry +sheriffs +sheriffship +sheriffwick +sherifi +sherifian +sherifis +sherift +sherify +sherill +sherilyn +sheristadar +sheriyat +sherk +sherlagh +sherline +sherlock +sherloque +sherm +sherman +shermanmills +shermanoaks +shermansdale +shermet +shermin +shero +sheron +sherow +sherpa +sherpas +sherpur +sherr +sherramoor +sherrard +sherrel +sherrell +sherrer +sherri +sherrie +sherries +sherrif +sherriff +sherrill +sherrington +sherry +sherrye +sherryl +sherrymoor +sherven +sherwill +sherwin +sherwood +sherwyn +sherye +sheryl +shes +shesha +sheshach +sheshai +sheshan +sheshbazzar +sheshea +sheshi +shestakovski +shestopalov +sheta +shete +shetebo +sheth +shethar +shetland +shetlander +shetlandic +sheu +sheugh +sheva +shevchenko +shevel +sheveled +shevik +shevlin +shevri +shew +shewa +shewbread +shewchenko +shewed +shewedst +shewel +shewest +sheweth +shewhart +shewing +shewn +sheybal +sheydakov +sheyenne +sheyle +sheynin +shez +shfsep +shhh +shhhed +shhowwn +shia +shiach +shiah +shiang +shiao +shiba +shibah +shibahara +shibar +shibarghan +shibata +shibatani +shibberu +shibboleth +shibbolethic +shibdas +shibilant +shibmah +shibuichi +shibukun +shice +shicer +shicheong +shichopi +shicker +shickered +shickley +shickshinny +shicopi +shicron +shide +shidler +shied +shieff +shiegen +shiek +shiel +shiela +shield +shieldable +shieldboard +shielddrake +shielded +shielder +shieldflower +shielding +shieldings +shieldless +shieldlessly +shieldlike +shieldling +shieldmaker +shieldmay +shields +shieldt +shieldtail +shieling +shiell +shier +shies +shiest +shiffer +shiffler +shifinagh +shiflett +shift +shiftable +shiftage +shifted +shifter +shifters +shiftful +shiftfulness +shiftier +shiftiest +shiftily +shiftin +shiftiness +shifting +shiftingly +shiftingness +shiftings +shiftl +shiftless +shiftlessly +shifts +shig +shiga +shiganov +shigeki +shigella +shigemura +shigeo +shigeru +shigeta +shigeto +shigetsu +shigezane +shiggaion +shighni +shigionoth +shigram +shiguno +shigura +shih +shihavu +shihlanganu +shiho +shihon +shihor +shihu +shihuai +shihuh +shiism +shiite +shiitic +shik +shikaki +shikar +shikara +shikargah +shikari +shikarpur +shikasta +shikata +shikiana +shikimi +shikimic +shikimole +shikimotoxin +shikka +shikken +shiko +shikoku +shikotan +shikotanto +shikpigbe +shikra +shikulska +shila +shilanganu +shilcach +shilengwe +shiley +shilf +shilfa +shilh +shilha +shilhi +shilhim +shilla +shillaber +shillalah +shillelagh +shillelah +shillem +shillemites +shiller +shillet +shillety +shillhouse +shillibeer +shilling +shillinger +shillingford +shillingless +shillings +shillington +shillito +shilloo +shilluh +shilluk +shillyshally +shilo +shiloach +shiloah +shiloh +shiloni +shilonite +shilonites +shilov +shilpit +shilshah +shima +shimacu +shimada +shimagae +shimal +shimandle +shimane +shimanto +shimaore +shimaori +shimbogedu +shimbwera +shimea +shimeah +shimeam +shimeath +shimeathites +shimei +shimen +shimeon +shimerman +shimhi +shimi +shimigae +shimites +shimizu +shimizya +shimkus +shimma +shimmele +shimmer +shimmered +shimmering +shimmeringly +shimmers +shimmery +shimmied +shimmying +shimoda +shimojo +shimomoto +shimomura +shimon +shimono +shimonoseki +shimose +shimoto +shimoyama +shimp +shimper +shimrath +shimri +shimrith +shimrom +shimron +shimronites +shimronmeron +shimshai +shimura +shimuzu +shimwali +shina +shinab +shinabo +shinagawa +shinaki +shinaniging +shinar +shinarump +shinasha +shindand +shinder +shindig +shindle +shindo +shindy +shine +shined +shineless +shiner +shiners +shines +shineth +shing +shingazidja +shingcheon +shingei +shingle +shingled +shinglehouse +shingler +shingles +shingleton +shingletown +shinglewise +shinglewood +shingling +shingly +shingsol +shingu +shinguard +shingwalungu +shinhopple +shinichi +shinichiro +shinier +shiniest +shinily +shininess +shining +shiningly +shiningness +shinji +shinjo +shinjuku +shinkai +shinkoya +shinleaf +shinn +shinnecock +shinned +shinner +shinnery +shinney +shinnied +shinning +shinnston +shinny +shinnying +shino +shinobu +shinozaki +shinplaster +shins +shinsuke +shintari +shintaro +shintiyan +shinto +shintoism +shintoist +shintoistic +shintoize +shintus +shinty +shinwari +shinwood +shiny +shinyanga +shinyee +shinyiha +shinyuki +shinza +shinzwani +shiocton +shioko +shiomi +shionoya +shiori +ship +shipbound +shipboy +shipbreaking +shipbroken +shipbuilder +shipcraft +shipe +shipentine +shipful +shiphi +shiphmite +shiphrah +shiphtan +shipibo +shipinahua +shipka +shipkeeper +shipless +shiplessly +shiplet +shipload +shipmanship +shipmast +shipmaster +shipmates +shipmatish +shipmen +shipment +shipments +shipowner +shipowning +shipp +shippable +shippage +shipped +shippen +shippensburg +shippenville +shipper +shippers +shipping +shippingport +shipplane +shippo +shippon +shippy +shiprock +ships +shipshapely +shipshewana +shipside +shipsmith +shipstead +shiptars +shipward +shipwards +shipway +shipwork +shipworm +shipwreck +shipwrecked +shipwreckers +shipwrecks +shipwrecky +shipwright +shipwrightry +shir +shira +shirahata +shiraho +shirai +shirakashi +shirakura +shirallee +shirandami +shirawa +shiraz +shirazi +shire +shirehouse +shireman +shirene +shiretoko +shirewick +shirey +shiriana +shirikov +shirin +shiringol +shirink +shirinlou +shirish +shirk +shirker +shirking +shirks +shirky +shirl +shirland +shirlcock +shirle +shirlee +shirleen +shirlene +shirley +shirleybasin +shirleysburg +shirline +shiro +shironga +shiroshi +shirpit +shirpuri +shirr +shirra +shirriffs +shirring +shirt +shirtband +shirtiness +shirting +shirtless +shirtlike +shirtmaker +shirtmaking +shirtman +shirts +shirttail +shirtwaist +shirty +shiru +shirvan +shiryaev +shiryayer +shiryayev +shisa +shisambyu +shiselweni +shisha +shishak +shishakly +shisham +shishi +shishido +shishong +shishtovite +shisn +shissel +shit +shita +shitako +shitest +shither +shithlou +shithouse +shitire +shitload +shitogram +shitohgram +shitrai +shitsonga +shitswa +shittah +shittim +shittimwood +shitting +shiu +shiue +shiv +shiva +shivaism +shivaist +shivaistic +shivaite +shivaree +shivcharan +shivdarsan +shive +shiver +shivered +shivereens +shiverer +shivering +shiveringly +shiverproof +shivers +shiversome +shiverweed +shives +shivey +shivnan +shivoo +shivpuri +shivy +shivzoku +shiza +shizuhiko +shizuoka +shkaki +shker +shkip +shklovskij +shkoder +shkole +shkreba +shkumbi +shkupetar +shkurat +shkurt +shleinikov +shlesinger +shlettow +shli +shlib +shloime +shlomit +shlomo +shlu +shluh +shmaltz +shmaltzier +shmaltziest +shmaltzy +shmeeler +shmotki +shmul +shnay +shneider +shnider +shoa +shoad +shoader +shoaf +shoalbrain +shoaler +shoalhaven +shoaliness +shoalness +shoals +shoalwise +shoaly +shoat +shoba +shobab +shobach +shobai +shobal +shobana +shobang +shobek +shobi +shobonier +shobwa +shobyo +shocho +shochoh +shock +shockability +shockable +shocked +shockedness +shocker +shockers +shockeye +shockheaded +shocking +shockingly +shockingness +shockley +shocklike +shockproof +shocks +shockwave +shoco +shocu +shod +shodden +shoddier +shoddies +shoddiest +shoddily +shoddiness +shoddy +shoddydom +shoddyism +shoddyite +shoddylike +shoddyward +shoddywards +shode +shoder +shoe +shoeb +shoebill +shoebinder +shoebindery +shoebinding +shoebird +shoeblack +shoebox +shoeboy +shoebrush +shoecraft +shoed +shoeflower +shoehorned +shoehorning +shoeing +shoeingsmith +shoelaces +shoelatchet +shoeless +shoemaker +shoemaking +shoeman +shoenfelder +shoepack +shoer +shoes +shoescraper +shoeshine +shoeshop +shoesmith +shoewoman +shofle +shoful +shog +shoga +shogaol +shoggie +shoggle +shoggly +shogi +shogo +shogun +shogunal +shogunate +shoham +shohet +shoho +shohola +shoichi +shoie +shoji +shojo +shokan +shokoladze +shokwave +shol +shola +sholaga +shole +sholes +sholio +sholokhov +sholom +shom +shomba +shomberg +shomer +shomoh +shomong +shon +shona +shone +shoneen +shonen +shong +shonga +shongaloo +shongar +shongawa +shongo +shonka +shonkinite +shonshe +shonuck +shood +shooed +shoofa +shooi +shooing +shook +shool +shooldarry +shooler +shoop +shoopiltie +shoor +shoot +shootable +shootboard +shootee +shooter +shooters +shooteth +shoother +shootin +shooting +shootingcoat +shootings +shootist +shootman +shoots +shop +shopboard +shopbook +shopboy +shopbreaker +shopbreaking +shopers +shopfolk +shopfronts +shopful +shopgirl +shopgirlish +shophach +shophan +shophar +shopkeeper +shopkeepers +shopkeepery +shopkeeping +shopland +shoplet +shoplift +shoplifter +shoplifting +shoplike +shopmaid +shopman +shopmark +shopmate +shopocracy +shopocrat +shopov +shoppe +shopped +shopper +shoppers +shoppin +shopping +shoppish +shoppishness +shoppy +shops +shopster +shoptalk +shopville +shopwalker +shopwear +shopwife +shopwindow +shopwoman +shopwork +shopworker +shoq +shor +shorack +shoran +shorawak +shore +shorea +shoreberry +shorebird +shorebirds +shorebush +shored +shoregoing +shoreham +shoreland +shoreless +shoreline +shoreman +shorer +shores +shoreside +shoresman +shoreward +shorewards +shoreweed +shoreyer +shorgan +shoring +shorling +shorn +short +shortage +shortages +shortbread +shortcake +shortchange +shortchanged +shortchanger +shortclothes +shortcoat +shortcomer +shortcoming +shortcomings +shortcreek +shortcut +shortcuts +shortcutting +shorted +shorten +shortened +shortener +shortening +shortens +shorter +shorterville +shortest +shortform +shorthand +shorthanded +shorthander +shorthead +shorthills +shorthorn +shortia +shorting +shortland +shortlands +shortlived +shortly +shortname +shortness +shortrange +shorts +shortschat +shortsea +shortsome +shortstaff +shortsville +shorttail +shortterm +shortwave +shortwinded +shorty +shortzy +shorwan +shoshana +shoshanna +shoshio +shosho +shoshone +shoshonean +shoshoni +shoshonite +shostak +shostakovich +shosteck +shot +shote +shotesbury +shotfree +shotgun +shotgunned +shotguns +shotless +shotlike +shotmaker +shotman +shotproof +shots +shotsman +shotstar +shott +shotted +shotten +shotter +shotty +shotweld +shotwell +shou +shoukry +shoulars +should +shoulder +shoulderbags +shouldered +shoulderer +shoulderette +shouldering +shoulders +shouldest +shouldi +shouldn +shouldna +shouldnt +shouldplace +shouldst +shouli +shoun +shouning +shoupeltin +shoures +shourky +shout +shouted +shouter +shouters +shouteth +shouting +shoutingly +shoutings +shoutir +shouts +shouyu +shoval +shove +shoved +shovegroat +shovel +shovelard +shovelbill +shovelboard +shoveled +shoveler +shovelfish +shovelful +shovelfuls +shovelhead +shoveling +shovelled +shoveller +shovelling +shovelmaker +shovelman +shovelnose +shovels +shovelweed +shover +shoves +shoving +show +showable +showalter +showance +showbird +showbiz +showboard +showboater +showboating +showcase +showcased +showcse +showdep +showdom +showdown +showed +showell +shower +showered +showerer +showerful +showeriness +showering +showerless +showerlike +showerproof +showers +showery +showgirl +showhint +showier +showiest +showily +showiness +showing +showings +showish +showit +showjumper +showless +showlog +showlow +showmanism +showmanry +showmanship +showmount +shown +showoff +showpartner +showplace +showrawdir +shows +showshoe +showstopper +showtime +showtree +showup +showworthy +showyard +shoya +shprintze +shqip +shqiperi +shqipni +shrab +shraddha +shrader +shradh +shraf +shrag +shram +shrank +shrap +shrapnel +shrave +shravey +shrdlu +shreadhead +shred +shredcock +shredded +shredder +shredding +shreddy +shredless +shredlike +shreds +shree +shreepuri +shreevadwomn +shreeve +shreiner +shrend +shrestha +shreve +shreveport +shrevie +shrew +shrewdest +shrewdish +shrewdly +shrewdness +shrewdom +shrewdy +shrewish +shrewishly +shrewishness +shrewlike +shrewly +shrewmouse +shrews +shrewsbury +shrewstruck +shriek +shrieked +shrieker +shriekers +shriekery +shriekily +shriekiness +shrieking +shriekingly +shriekproof +shrieks +shrieky +shrieval +shrievalty +shrieve +shrieves +shriftless +shrikant +shrike +shriker +shrikhande +shrilled +shrilling +shrillish +shrillness +shrimp +shrimper +shrimpfish +shrimpi +shrimpish +shrimplike +shrimpoid +shrimpton +shrimpy +shrinal +shrine +shrineless +shrinelet +shrinelike +shriner +shrines +shrink +shrinkable +shrinkage +shrinker +shrinkhead +shrinking +shrinkingly +shrinkproof +shrinks +shrinky +shrip +shriram +shrite +shrive +shrived +shriveled +shriveling +shrivelled +shrivelling +shriven +shriver +shriving +shroake +shroe +shroff +shrog +shromazdeni +shropshire +shroud +shrouded +shrouding +shroudless +shroudlike +shroudy +shrove +shrover +shrovetide +shrub +shrubbed +shrubber +shrubberies +shrubbery +shrubbier +shrubbiest +shrubbiness +shrubbish +shrubby +shrubland +shrubless +shrublet +shrublike +shruboak +shrubs +shrubwood +shruff +shrug +shrugged +shrugging +shruggingly +shrugs +shrum +shrunk +shrups +shsu +shtafari +shtar +shtein +shtevgrom +shtick +shtigje +shtirlitz +shtivel +shtivelman +shtokavski +shtol +shtrall +shtreimel +shttp +shtulman +shua +shuadi +shuadit +shuah +shuaib +shuakhwe +shual +shuang +shuangfeng +shuar +shuara +shuaybah +shuba +shubael +shubaly +shubert +shubeykin +shubi +shubinternet +shubunkin +shubuta +shuch +shucker +shucking +shuckins +shuckpen +shucks +shudder +shuddered +shudderful +shudderiness +shuddering +shudderingly +shudders +shuddersome +shue +shuff +shuffle +shufflecap +shuffled +shuffleplay +shuffler +shuffles +shufflewing +shuffling +shufflingly +shufflings +shug +shugan +shugart +shughnani +shughni +shugiin +shugnan +shugni +shugule +shuhali +shuham +shuhamites +shuhite +shui +shuichi +shuipaii +shuji +shuk +shuke +shukor +shukri +shukria +shukshin +shukster +shukulumbwe +shukuri +shul +shula +shulamit +shulamite +shulamith +shulanin +shule +shuler +shulerville +shuli +shull +shulla +shullsburg +shullt +shultis +shultz +shulwaurs +shum +shuma +shumac +shuman +shumann +shumasht +shumashti +shumast +shumate +shumathites +shumov +shumsky +shumusti +shumway +shun +shunammite +shunary +shunchen +shune +shunem +shungtsog +shunhui +shuni +shunichiro +shunites +shunk +shunkla +shunko +shunless +shunmugam +shunnable +shunned +shunner +shunro +shuns +shunsuke +shunt +shunted +shunter +shunting +shunyuo +shuo +shuoyen +shupe +shupham +shuphamites +shuppim +shupu +shuqing +shuqualak +shur +shura +shure +shurenkov +shurf +shurhsu +shuri +shurik +shurka +shuro +shurtleff +shuru +shurygin +shush +shushan +shushed +shusher +shushkina +shushtar +shust +shuster +shuswap +shut +shutan +shutdown +shutdowns +shute +shuter +shutesbury +shuteye +shuthalhites +shuthelah +shutler +shutness +shuts +shutta +shuttance +shutten +shutter +shutterbug +shuttered +shuttering +shutterless +shutters +shutterwise +shutteth +shutting +shuttle +shuttlecraft +shuttled +shuttlelike +shuttles +shuttlewise +shuttleworth +shuttling +shutul +shuvolov +shuwa +shuway +shuwaykh +shved +shveyzarii +shvyrkov +shwai +shwanpan +shwartz +shwe +shwed +shwo +shyam +shydepoke +shye +shyen +shyer +shyest +shying +shyish +shylo +shylock +shylockism +shyly +shyness +shyoko +shypski +shysoft +shyster +shyu +shyuba +siad +siagbe +siagha +siaghayenimu +siaha +siak +siaka +siakwa +siakwan +sialaden +sialadenitis +sialagogic +sialagogue +sialagoguic +sialemesis +sialia +sialic +sialid +sialidae +sialidan +sialis +sialoangitis +sialogenous +sialoid +sialolith +sialology +sialorrhea +sialoschesis +sialosis +sialosyrinx +sialozemia +sialum +siamack +siamak +siamang +siamese +siamou +siana +siane +siang +siani +sianna +siantan +siao +siapa +siar +siaratesa +siarcg +sias +siasi +siassi +siau +siay +sibale +sibalenhon +sibau +sibayu +sibbaldus +sibbe +sibbecai +sibbechai +sibbed +sibbens +sibber +sibbet +sibbie +sibboleth +sibby +sibeal +sibel +sibele +sibelius +sibella +sibelle +sibendirah +sibenpopu +siberi +siberia +siberiada +siberiade +siberian +siberic +siberite +siberut +sibiga +sibil +sibilance +sibilancy +sibilantly +sibilants +sibilate +sibilatingly +sibilation +sibilator +sibilatory +sibilla +sibilous +sibilus +sibincic +sibiric +sibirskaia +sibiu +sibley +siblings +sibmah +sibness +sibo +siboi +siboma +sibomana +sibonai +sibop +sibora +siboux +sibraim +sibrede +sibship +sibships +sibsib +sibson +sibsons +sibu +sibucoon +sibucovitali +sibugay +sibuguey +sibuian +sibuka +sibukaun +sibuku +sibukun +sibul +sibundoy +sibunruang +siburan +sibuti +sibutu +sibutuq +sibuya +sibuyan +sibuyau +sibyl +sibylesque +sibylic +sibylism +sibylla +sibylle +sibylline +sibyllist +sica +sicambri +sicambrian +sicana +sicani +sicanian +sicard +sicarian +sicarious +sicarius +sicca +siccaneous +siccant +siccate +siccation +siccative +sicced +siccimeter +siccing +siccity +sice +sicel +siceliot +sicelli +sich +sichao +siche +sichem +sichert +sichtseeren +sichuan +sichule +sicie +sicilia +siciliana +sicilianism +sicilians +sicilica +sicilicum +sicilienne +siciliens +sicily +sicilyisland +sicinnian +sick +sickbed +sicked +sickel +sickener +sickening +sickeningly +sicker +sickerly +sickerness +sickest +sickhearted +sickie +sicking +sickish +sickishly +sickishness +sickle +sicklebill +sickled +sicklelike +sickleman +sicklemia +sicklemic +sicklepod +sickler +sicklerite +sicklerville +sickles +sickless +sickleweed +sicklewise +sicklied +sicklier +sickliest +sicklily +sickliness +sickling +sickly +sicklying +sickness +sicknesses +sicknews +sickout +sickroom +sicob +sicology +sicotte +sics +sicsac +sicuane +sicuani +sicuari +sicula +sicular +siculi +siculian +sicyonian +sicyonic +sicyos +sida +sidahmed +sidak +sidalcea +sidaminya +sidamo +siday +sidcup +siddall +siddell +sidder +siddha +siddhanta +siddhartha +siddharthan +siddhi +siddie +siddim +siddiq +siddiqui +siddley +siddone +siddons +siddri +siddur +side +sideage +sidebar +sideboards +sidebone +sidebones +sideburn +sideburns +sidecarist +sidecheck +sided +sidedness +sideeffect +sideeffects +sideflash +sidehead +sidehill +sideia +sideis +sideisch +sidekick +sidekicker +sidelake +sidelang +sideless +sideli +sidelights +sideline +sidelined +sideling +sidelings +sidelingwise +sidelining +sidell +sidelong +sidema +sideme +sidemi +sidenote +sidenrang +sidepiece +sider +sideral +sideration +sidereal +siderealize +sidereally +siderean +siderin +siderism +sideritic +sideritis +siderognost +siderography +siderolite +siderology +sideromancy +sideromelane +sideronym +sideroscope +siderose +siderosis +siderostat +siderostatic +siderotechny +siderous +sideroxylon +sidership +siderurgical +siderurgy +sides +sideshake +sideslip +sideslipped +sideslipping +sidesman +sidesplitter +sidestepped +sidestepping +sidesteps +sidestroke +sidesway +sideswipe +sideswiped +sideswiper +sideswiping +sidev +sidewalk +sidewalks +sideward +sidewards +sideways +sidewheeler +sidewinder +sidewipe +sidewiper +sidhe +sidhu +sidi +sidibe +sidikalang +sidin +siding +sidings +sidingspring +sidled +sidler +sidley +sidling +sidlingly +sidman +sidmouth +sidnaw +sidney +sidneycenter +sido +sidon +sidone +sidoney +sidoni +sidonia +sidonian +sidonians +sidonnie +sidor +sidorovsky +sidr +sidra +sidrach +sidrap +sids +sidth +siduan +siduani +sidy +sidya +sidyat +siebeck +sieben +sieber +sieberkruhd +sieberpuhnk +sieberspays +siebert +siebohme +siede +siedlce +siedow +siefert +siefgried +siefried +sieg +siegal +siege +siegeable +siegecraft +siegel +siegena +siegenberg +siegenite +sieger +sieges +siegework +siegfrieds +siegfrit +sieghardt +siegle +sieglinde +sieglingia +siegmann +siegmund +siegried +siegu +siehe +siehl +sieiro +sielanski +sieling +sieman +siemanowski +siemens +siemer +siemian +siemreab +siemreap +siemu +sienese +sieng +sienna +sieper +sieppe +sier +sieradz +siering +sierozem +sierra +sierrablanca +sierracity +sierraleone +sierramadre +sierran +sierras +sierraville +sierravista +siesta +siestaland +siete +sieu +sieva +sieve +sieveful +sievelike +sievemakers +siever +sieversia +sieverts +sieves +sievings +sievy +siew +siewert +siewiorek +sieworick +siezak +sifac +sifaka +sifatite +sife +sifert +siffilate +siffle +sifflement +sifflet +sifflot +sift +siftage +sifted +sifter +sifting +sigabac +sigalrm +siganar +siganidae +siganus +sigarau +sigatoka +sigaultian +sigbus +sigda +sigdi +sigel +sigelinde +sigelius +sigell +sigeru +sigfile +sigfiles +sigfpe +sigfrit +sigge +sigger +siggie +siggoyo +siggs +siggy +sigh +sighed +sigher +sighest +sigheth +sighful +sighfully +sighing +sighingly +sighingness +sighless +sighlike +sighs +sight +sightable +sighted +sighten +sightening +sighter +sightful +sightfulness +sighthole +sighting +sightings +sightless +sightlessly +sightlier +sightliest +sightlily +sightliness +sightly +sightproof +sights +sightworthy +sighty +sighu +sighup +sigi +sigidi +sigil +sigila +sigilative +sigill +sigillaria +sigillarian +sigillarid +sigillarioid +sigillarist +sigillaroid +sigillary +sigillate +sigillated +sigillation +sigillistic +sigillum +sigint +sigisigero +sigkill +sigla +siglarian +siglish +siglo +siglos +siglufjordur +sigma +sigmaspire +sigmate +sigmatic +sigmation +sigmatism +sigmodont +sigmodontes +sigmoid +sigmoidal +sigmoidally +sigmoiditis +sigmoidopexy +sigmoids +sigmon +sigmund +sign +signable +signal +signaled +signalee +signaler +signalese +signaletic +signaletics +signaling +signalism +signalist +signality +signalize +signalized +signalizing +signalled +signaller +signalling +signally +signalman +signalment +signals +signary +signatary +signate +signation +signator +signatories +signatory +signatural +signature +signatures +signaturist +signe +signed +signee +signer +signers +signes +signet +signetics +signets +signetwise +signifer +signifiable +significal +significance +significancy +significant +significants +significate +significator +significavit +significian +significs +signified +signifier +signifies +signifieth +signify +signifying +signing +signior +signiorship +signist +signlab +signless +signlike +signman +signoff +signon +signons +signore +signorelli +signoret +signorial +signorini +signorita +signorship +signory +signs +signum +signwriter +sigognac +sigonella +sigourney +sigpipe +sigplan +sigquit +sigrid +sigrun +sigs +sigsegv +sigsys +sigterm +sigtrap +sigueiro +siguiri +sigune +sigurd +sigurdson +sigurdur +sigurjonsson +sigut +sigvor +sigyn +siha +siham +sihan +sihanaka +sihanouk +sihanoukist +sihasapa +sihon +sihong +sihor +sihuas +siidel +siime +siirt +siis +sijagha +sijali +sijert +sijjin +sijthoff +sika +sikaiana +sikami +sikan +sikar +sikari +sikaritai +sikarwari +sikasso +sikatch +sikau +sikayana +sike +sikel +sikensi +sikerly +sikerness +sikes +sikeston +siket +sikh +sikhara +sikhism +sikhota +sikhotealin +sikhra +sikhs +sikhule +sikia +sikiana +sikinnis +sikirou +sikka +sikkanese +sikkim +sikkimese +sikking +sikolo +sikor +sikoro +sikorski +sikos +sikri +siks +siksika +siku +sikubung +sikule +sikulovic +sikwangali +sikyum +sila +silabe +silabu +silacayoapan +siladja +silaginoid +silaipui +silajara +silak +silakau +silang +silanke +silas +silat +silata +silay +silayan +silber +silberberg +silberg +silbermann +silberry +silburt +silcrete +sile +sileas +sileibi +silen +silenaceae +silenaceous +silenales +silence +silenced +silencer +silencers +silences +silencieux +silencing +silencio +silency +silene +sileni +silenic +silent +silentes +silential +silentiary +silentious +silentish +silently +silentness +silenus +silenzio +siler +silercity +silers +silerton +silesia +silesian +siletski +siletsky +siletti +siletz +silex +silexite +silgardo +silhouette +silhouetted +silhouettes +silhouetting +silhouettist +silhoutte +sili +silianu +silica +silicam +silicane +silicate +silicates +silication +silicea +silicean +silicicolous +silicidize +siliciferous +silicify +siliciophite +silicious +silicium +silicize +silicle +silico +silicoacetic +silicoethane +silicoidea +silicon +siliconize +silicononane +silicosis +silicotic +silicula +silicular +silicule +siliculose +siliculous +silicyl +silieff +siligi +silimiga +silimo +silinkere +silins +silio +silipan +silipica +siliput +siliqua +siliquaceous +siliquae +siliquaria +silique +siliquiform +siliquose +siliquous +silisili +silk +silkalene +silkaline +silkcotton +silke +silked +silker +silkflower +silkgrower +silkie +silkier +silkiest +silkily +silkine +silkiness +silklike +silkman +silkness +silks +silksman +silktail +silkweed +silkwoman +silkwood +silkwork +silkworks +silky +sill +silla +sillabub +silladar +sillaginidae +sillago +sillandar +sillanpaa +sillapata +sillar +sillato +sillay +sillcbtdev +silldcd +siller +sillery +sillibouk +sillicocks +sillier +silliest +sillikin +sillily +sillimanite +silliness +sillius +sillock +sillograph +sillographer +sillok +sillometer +sillon +sills +sillube +silly +sillyhood +sillyhow +sillyish +sillyism +sillyton +sillywalk +silmaril +siloah +siloam +siloed +siloing +siloist +silopa +silopi +silos +silozi +silp +silpha +silphid +silphidae +silphium +sils +silsbee +silsby +siltage +silted +silti +siltier +siltiest +silting +siltlike +silts +siluck +silundum +silures +siluria +silurian +siluric +silurid +siluridae +siluridan +siluroid +siluroidei +silurus +silva +silvah +silvain +silvan +silvana +silvani +silvanity +silvano +silvanry +silvanus +silvaz +silvela +silvendy +silver +silvera +silverado +silverback +silverbay +silverbeater +silverbelly +silverberg +silverberry +silverbill +silverboom +silverbush +silverchair +silvercity +silvercliff +silvercreek +silverdale +silvered +silverer +silvereye +silverfin +silverfish +silvergrove +silverhead +silverheels +silverhill +silverily +silveriness +silvering +silverio +silverish +silverite +silverize +silverizer +silverlake +silverleaf +silverless +silverlike +silverling +silverlings +silverlode +silverly +silverman +silvern +silverness +silverpeak +silverpeaks +silverplume +silverpoint +silverrod +silvers +silverside +silversides +silverskin +silversmith +silverspot +silverspring +silverspurs +silverstar +silverstein +silverstone +silverstreet +silvertail +silverthorn +silvertip +silverton +silvertoned +silvertop +silvervine +silverware +silverweed +silverwing +silverwood +silverwork +silverworker +silvery +silvester +silvestre +silvestri +silvestro +silvestrov +silveus +silvey +silveyra +silvia +silviano +silvical +silvicolous +silvics +silviculture +silvie +silvio +silvis +silvius +silvretta +silvsetd +silwer +silyanah +silybum +silyl +silzer +simaa +simaba +simak +simal +simalegi +simalungan +simalungun +simalur +simanskis +simar +simara +simaranhon +simard +simarouba +simastl +simatang +simatsu +simay +simba +simbach +simbai +simbakong +simball +simbari +simbelmyne +simberg +simberi +simberloff +simbil +simbiti +simblin +simblob +simblot +simblum +simbo +simbu +simcity +simcoe +simcon +simcox +sime +simeao +simeisa +simeiz +simeizlight +simek +simeke +simeku +simelungan +simen +simennon +simeon +simeone +simeonism +simeonite +simeonites +simeonova +simeuloe +simeulue +simfero +simferopol +simhan +simi +simia +simiad +simial +simian +simiane +simianity +simic +simiesque +simiidae +simiinae +similar +similarily +similarit +similarities +similarity +similarize +similarly +similarsized +similative +similer +similiar +simililitude +similimum +similiter +similitive +similitude +similitudes +simility +similize +similor +simioid +simious +simiousness +simiranch +simirinche +simity +simivalley +simkin +simkowitz +simla +simle +simliar +simlin +simling +simm +simmered +simmering +simmeringly +simmers +simmesport +simming +simmon +simmonds +simmons +simms +simmy +simnel +simnelwise +simo +simoes +simog +simojovel +simoleon +simon +simona +simonds +simone +simonetta +simonette +simoni +simoniac +simoniacal +simoniacally +simonian +simonianism +simonida +simonides +simonini +simonious +simonism +simonist +simonize +simonne +simonov +simonova +simonovich +simons +simonsen +simonsick +simonton +simony +simool +simoom +simoon +simor +simori +simos +simosaurus +simous +simp +simpai +simpatico +simpe +simperer +simpering +simperingly +simpi +simpilar +simpkin +simpkins +simple +simpleness +simpler +simples +simplest +simplet +simpletonian +simpletonic +simpletonish +simpletonism +simplexed +simplexity +simplices +simplicident +simplicio +simplicist +simplicities +simplicity +simplicize +simpliest +simplified +simplifiedly +simplifier +simplifiers +simplifies +simplify +simplifying +simplism +simplist +simplistic +simply +simplyfix +simpson +simpsons +simpsonville +simri +sims +simsboro +simsbury +simser +simsim +simson +simte +simud +simula +simulacra +simulacral +simulacre +simulacrize +simulacrum +simulance +simulant +simular +simulate +simulated +simulates +simulating +simulation +simulationof +simulations +simulative +simulatively +simulatoe +simulator +simulators +simulatory +simulcasting +simuler +simulhole +simuliid +simuliidae +simulioid +simulium +simultaneous +simulul +simunjan +simunul +simvax +simzer +sina +sinabu +sinae +sinaean +sinagen +sinagoro +sinai +sinaic +sinais +sinaite +sinaitic +sinaiyah +sinak +sinaketa +sinaki +sinal +sinalbin +sinale +sinaloa +sinalon +sinam +sinama +sinamay +sinamine +sinan +sinanan +sinano +sinapate +sinapic +sinapine +sinapinic +sinapis +sinapism +sinapize +sinapoline +sinarchism +sinarchist +sinarquism +sinarquist +sinarquista +sinaruco +sinarupa +sinarupo +sinasac +sinasina +sinatra +sinaugoro +sinauna +sinawa +sinbad +sincaline +since +sincere +sincereley +sincerely +sincereness +sincerer +sincerest +sincerities +sincerity +sinchak +sincipital +sinciput +sinclair +sinclaire +sincock +sind +sindak +sindamon +sindang +sindanga +sindangan +sinde +sindebele +sindee +sindell +sinden +sinder +sindh +sindhi +sindhuli +sindi +sindihui +sinding +sindle +sindoc +sindon +sindou +sindry +sinead +sinecural +sinecure +sinecureship +sinecurism +sinecurist +sinelnikova +sines +sinesaloum +sinesian +sinesine +sinesip +sinet +sinew +sinewed +sinewiness +sinewless +sinewous +sinews +sinfonia +sinfonie +sinfonietta +sinfra +sinful +sinfully +sinfulness +sing +singa +singability +singableness +singakawang +singako +singala +singali +singally +singalong +singapore +singaporean +singarelli +singarip +singbeil +singbhum +singburi +singed +singeing +singeingly +singer +singers +singersglen +singeth +singey +singfo +singgi +singgie +singh +singha +singhal +singhala +singhalese +singham +singhbhum +singhe +singhi +singida +singillatim +singin +singing +singingly +singkamas +singkarak +singkil +single +singlebar +singlebit +singlecase +singled +singleengine +singlefont +singleframe +singlehood +singlelane +singleline +singleman +singleminded +singleness +singleparty +singleplayer +singlepoint +singlequotes +singler +singles +singleserver +singlesided +singlespace +singlestep +singlestick +singletons +singletrack +singletrade +singletree +singleuser +singli +singling +singlings +singly +singo +singoalla +singorakai +singpho +singpo +singpurwalla +sings +singsing +singsiri +singson +singsongy +singspiel +singstress +singuiness +singular +singularism +singularist +singularity +singularize +singularly +singularness +singult +singultous +singultus +singye +sinh +sinha +sinhala +sinhalese +sini +sinian +sinic +sinicism +sinicization +sinicize +sinicized +sinico +siniestro +sinifi +sinification +sinify +sinigrin +sinigrinase +sinigrosid +sinigroside +sinijalia +sinikka +sinim +sininkere +sinisian +sinism +sinister +sinisterly +sinisterness +sinisterwise +sinistrad +sinistrality +sinistrally +sinistration +sinistrin +sinistrorsal +sinistrorse +sinistrous +sinistrously +sinistruous +sinite +sinitic +sinja +sinjai +sinjar +sinji +sink +sinka +sinkable +sinkage +sinkaling +sinked +sinker +sinkerless +sinkers +sinkfield +sinkhead +sinkholes +sinkiang +sinking +sinkiuse +sinkless +sinklike +sinko +sinkon +sinkovics +sinkovits +sinkroom +sinks +sinksgrove +sinkstone +sinky +sinless +sinlessly +sinlessness +sinlike +sinn +sinnable +sinnableness +sinnat +sinned +sinnen +sinner +sinneress +sinners +sinnership +sinnest +sinnet +sinneth +sinnett +sinnikoglou +sinning +sinningia +sinningly +sinningness +sinnott +sino +sinoatrial +sinogram +sinohoan +sinoidal +sinolog +sinologer +sinological +sinologist +sinologue +sinology +sinomenine +sinon +sinongko +sinonism +sinop +sinope +sinophile +sinophilism +sinopia +sinopic +sinopite +sinople +sinotibetan +sinoyannis +sinproof +sins +sinsauru +sinsiga +sinsinawa +sinsion +sinsring +sinsyne +sint +sintang +sinte +sintef +sintes +sinthesizer +sinthia +sinti +sinto +sintoc +sintoism +sintoist +sinton +sintsink +sintu +sinu +sinuate +sinuated +sinuately +sinuation +sinuatrial +sinuitis +sinukov +sinulihan +sinun +sinundungan +sinuose +sinuosely +sinuosities +sinuosity +sinuous +sinuously +sinuousness +sinupallia +sinupallial +sinupalliata +sinupalliate +sinus +sinusal +sinusitis +sinuslike +sinusoidally +sinusoids +sinward +sinya +sinyar +sinyonyoi +sinyor +siobhan +siocon +siol +siomalas +siompu +sion +siona +sionasecoya +siong +sioni +sioning +sionite +siora +siosaia +sioua +siouan +sioux +siouxcenter +siouxcity +siouxfalls +siouxie +siouxrapids +siouxsie +sipacapa +sipacapen +sipacapense +sipage +sipai +sipaliwini +sipari +sipe +sipeng +siper +siperco +sipesville +siphmoth +siphoid +siphon +siphonaceous +siphonage +siphonal +siphonales +siphonaptera +siphonaria +siphonariid +siphonata +siphonate +siphoneae +siphoned +siphoneous +siphonet +siphonia +siphonial +siphoniata +siphonic +siphonifera +siphoniform +siphoning +siphonium +siphonless +siphonlike +siphonogam +siphonogama +siphonogamic +siphonogamy +siphonoglyph +siphonophora +siphonophore +siphonoplax +siphonopore +siphonorhine +siphonosome +siphonostele +siphonostely +siphonostoma +siphonostome +siphonozooid +siphonula +siphorhinal +siphorhinian +siphosome +siphuncle +siphuncled +siphuncular +siphunculata +siphunculate +sipibo +sipid +sipidity +siping +sipirok +sipitang +sipling +sipo +sipoma +sipp +sippai +sipped +sipper +sipperly +sippet +sipping +sippingly +sippio +sipple +sipples +sips +sipsey +sipsong +sipsongpanna +sipunculacea +sipunculid +sipunculida +sipunculoid +sipunculus +sipupu +sipura +sipurghan +sipylite +siquijor +siquirres +sira +siracusa +siragi +sirah +siraia +siraiki +siraiya +siraj +sirajganj +siraji +sirak +sirali +sirami +sirapunu +sirasira +sirata +sirawa +siraya +sircar +sirdar +sirdarship +sire +sirebi +sired +siredon +sireless +siren +sirene +sirenia +sirenian +sirenic +sirenical +sirenically +sirenidae +sirenik +sirening +sirenize +sirenlike +sirenoid +sirenoidea +sirenoidei +sirens +sireny +sires +sireship +siress +sirevicius +sirgang +sirhe +siri +siria +sirian +sirianian +sirianni +siriano +siriaque +siriasis +sirichanva +sirichanya +siricid +siricidae +siricoidea +sirih +sirikwan +sirimavo +siring +sirio +siriometer +sirion +sirione +siriono +siripen +siripong +siripu +siripuria +siris +sirisa +sirisori +sirius +siriwat +sirj +sirk +sirkai +sirkar +sirkeer +sirken +sirki +sirky +sirloin +sirloiny +sirmay +sirmian +sirmuellera +sirna +siroc +sirocco +siroccoish +siroccoishly +siroccos +siroco +siroi +sirois +sirola +siromi +sirona +sironvalle +sirota +sirotkin +sirova +sirow +sirpea +sirpertinax +sirple +sirpoon +sirrah +sirree +sirs +sirship +sirtis +sirtran +siruaballi +siruelas +sirup +siruped +siruper +sirupy +sirxin +siryan +sisa +sisaala +sisai +sisaket +sisala +sisamai +sisano +siscowet +sise +sisee +sisel +sisely +sisera +siserara +siserary +siserskite +sisfrog +sish +sisham +sisi +sisiame +sisibipi +sisibna +sisiga +sisigambis +sisile +sisimin +sisimiut +sisina +sisingga +sisisky +sisk +siska +sisley +sismotherapy +sisniega +sisop +sisowath +siss +sissal +sissala +sissano +sisse +sissel +sissela +sisserou +sisseton +sissie +sissies +sissified +sissify +sissignore +sissili +sissiness +sissoko +sissoo +sissu +sissy +sissyish +sissyism +sist +sistan +sistani +sister +sisterbay +sisterhood +sisterin +sistering +sisterize +sisterless +sisterlike +sisterliness +sisterly +sistern +sisters +sistersville +sistle +sisto +sistomensin +sistrum +sistrurus +sisu +sisukin +sisulu +sisutho +siswando +siswati +sisya +sisyaban +sisymbrium +sisyphian +sisyphides +sisyphism +sisyphist +sisyphus +sisyrinchium +sita +sitao +sitar +sitarski +sitatunga +sitch +site +sited +sitee +siteinfo +sitek +sitemapper +sitemu +sitena +sitename +sitenames +siteng +sites +sitesand +sitesweeper +siteupdater +sitfast +sith +sithcund +sithe +sithebe +sithement +sithence +sithens +sithole +siti +sitia +sitient +sitigo +siting +sitio +sitiology +sitiomania +sitiophobia +sitiveni +sitiwet +sitka +sitkan +sitkowski +sitler +sitnah +sitology +sitomania +sitompul +sitophilus +sitophobia +sitophobic +sitosterin +sitosterol +sitotoxism +sitov +sitrah +sits +sitta +sittang +sittee +sitten +sitter +sitters +sittest +sitteth +sittidae +sittin +sittinae +sittine +sitting +sittings +sittringy +situal +situate +situated +situates +situating +situation +situational +situations +situla +situlae +sitult +situp +situpon +situtated +siuci +siuda +siue +sium +siumut +siusan +siusi +siuslaw +siusytapuya +siva +sivaism +sivaist +sivaistic +sivaite +sivaji +sivan +sivandi +sivapithecus +sivas +sivasothy +sivathere +sivatherioid +sivatherium +sivazlian +siver +sivero +sivom +sivukun +sivvens +siwa +siwai +siwan +siwang +siwash +siwu +siwuri +siwusi +sixain +sixer +sixes +sixfoil +sixfooter +sixhaend +sixhynde +sixkillef +sixlakes +sixletterism +sixmile +sixmilerun +sixmonth +sixpack +sixpence +sixpenny +sixpointed +sixscore +sixsome +sixta +sixte +sixteen +sixteener +sixteenfold +sixteenmo +sixteens +sixteenth +sixteenthly +sixteenyear +sixten +sixth +sixtharmy +sixthet +sixthlargest +sixthly +sixths +sixties +sixtieth +sixto +sixtowns +sixtus +sixty +sixtyfold +sixtynine +sixtypenny +siyahu +siyalgiri +siyang +siyarui +siyin +siyu +sizable +sizableness +sizably +sizaki +sizal +sizang +sizar +sizarship +size +sizeable +sized +sizediv +sizeman +sizeof +sizer +sizerock +sizes +sizi +siziness +sizing +sizings +sizto +sizy +sizygia +sizygium +sizz +sizzard +sizzing +sizzled +sizzling +sizzlingly +sjambok +sjankata +sjcc +sjerps +sjgrant +sjiagha +sjide +sjoberg +sjokvist +sjsu +skad +skaddle +skaerseldan +skaff +skaffie +skaftason +skag +skagermark +skagerrak +skagestad +skaggs +skagit +skaillie +skain +skainsmate +skair +skaitbird +skaji +skaju +skal +skala +skalawag +skald +skaldic +skaldship +skalnate +skalski +skamokawa +skance +skanda +skandal +skandhas +skandia +skaneateles +skanee +skanes +skank +skarabea +skaraborgs +skarang +skardu +skaret +skarine +skaro +skarobis +skart +skarzanda +skarzanka +skasely +skat +skate +skateable +skateaway +skated +skaters +skates +skatikas +skatiku +skating +skatist +skatole +skatosine +skatoxyl +skavlon +skaw +skazal +skazala +skazali +skazano +skchip +skean +skeanockle +skeates +sked +skedaddle +skedaddled +skedaddler +skedaddling +skedadle +skedelsky +skedge +skedgewith +skedlock +skee +skeed +skeeg +skeel +skeeling +skeely +skeen +skeena +skeenyie +skeer +skeered +skeery +skees +skeesicks +skeet +skeeter +skeets +skeeve +skeezix +skef +skeffington +skeg +skegger +skeif +skeigh +skeily +skein +skeiner +skeipp +skel +skelder +skelderdrake +skeldrake +skeletal +skeletin +skeletogeny +skeleton +skeletonian +skeletonic +skeletonize +skeletonizer +skeletonless +skeletons +skeletonweed +skeletony +skelf +skelgoose +skelic +skell +skellam +skellat +skeller +skelley +skelloch +skellum +skelly +skellytown +skelp +skelper +skelpin +skelping +skelter +skelton +skeltonian +skeltonic +skeltonical +skeltonics +skemmel +skemp +sken +skendgate +skene +skeo +skeoch +skeough +skep +skepful +skepi +skeppist +skeppund +skeptical +skeptically +skepticism +skepticize +skeptics +sker +skere +skerlak +skerret +skerrick +skerrit +skerritt +skerry +sketch +sketchable +sketched +sketchee +sketcher +sketches +sketchier +sketchiest +sketchily +sketchiness +sketching +sketchingly +sketchist +sketchley +sketchlike +sketchpad +skete +sketiotai +skeuomorph +skeuomorphic +skeuse +skevish +skew +skewback +skewbacked +skewbald +skewed +skewer +skewerer +skewers +skewerwood +skewing +skewings +skewl +skewly +skewness +skews +skewwhiff +skewwise +skewy +skey +skeyting +skiagram +skiagraph +skiagrapher +skiagraphic +skiagraphy +skiameter +skiametry +skiapod +skiapodous +skiascope +skiascopy +skiathos +skiatook +skiba +skibby +skibinsky +skibslast +skice +skiclub +skid +skidded +skidder +skidding +skiddingly +skiddoo +skidi +skidmore +skidpan +skidproof +skids +skidway +skieppe +skiepper +skier +skierniewice +skies +skiff +skiffless +skiffling +skift +skigl +skiied +skiing +skijore +skijorer +skijoring +skikda +skil +skilder +skildfel +skilfish +skilful +skilfully +skilfulness +skill +skillagalee +skillan +skilled +skillen +skillenton +skillessness +skillet +skillfocused +skillful +skillfully +skillfulness +skilligalee +skilling +skillings +skillion +skillman +skills +skilly +skilpot +skilts +skim +skimback +skime +skimmed +skimmer +skimmerton +skimmia +skimming +skimmingly +skimmington +skimmity +skimped +skimpier +skimpiest +skimpily +skimpiness +skimping +skimpingly +skimps +skims +skin +skinbark +skinbound +skinch +skindeep +skinflick +skinflint +skinflintily +skinflinty +skinful +skink +skinker +skinking +skinkle +skinless +skinlike +skinned +skinner +skinners +skinnery +skinney +skinnier +skinniest +skinniness +skinning +skinny +skins +skintight +skinworm +skinyea +skio +skiogram +skiograph +skiophyte +skip +skipa +skipbrain +skipetar +skipfree +skipjackly +skipkennel +skiplot +skipman +skippable +skippack +skipped +skippedst +skippel +skipper +skippered +skippers +skippership +skipperville +skippery +skippet +skipping +skippingly +skippings +skipple +skippund +skippy +skips +skiptail +skipwith +skipworth +skiredj +skirl +skirlcock +skirling +skirmish +skirmished +skirmisher +skirmishers +skirmishes +skirmishing +skirp +skirr +skirreh +skirret +skirt +skirtboard +skirtdance +skirted +skirter +skirting +skirtingly +skirtless +skirtlike +skirts +skirty +skirwhit +skirwort +skis +skism +skitch +skite +skiter +skither +skito +skits +skitswish +skittaget +skittagetan +skitter +skittered +skittering +skittish +skittishly +skittishness +skittled +skittler +skittles +skitty +skittyboot +skitu +skitzys +skiv +skive +skiver +skiverwood +skiving +skivvies +skivvy +skiy +skjonberg +sklad +sklade +sklansky +sklar +sklate +sklater +sklent +skleropelite +sklinter +skluger +sknlp +skoal +skoberne +skobline +skoblov +skodaic +skof +skofro +skogbolite +skoinolon +skokiaan +skokie +skokomish +skolimowski +skolko +skolnik +skolt +skomabo +skomerite +skoo +skoog +skookum +skopets +skopliak +skoptsy +skoree +skoro +skorobogatov +skorohod +skorokhod +skorostyu +skorsky +skosai +skotiaho +skotiau +skout +skov +skovajs +skovoroda +skowhegan +skowron +skoyambe +skpc +skraeling +skraigh +skrapar +skrapinov +skrebels +skriabina +skridlov +skrike +skrimshander +skrinjar +skrobanski +skrobecki +skroeder +skrog +skroo +skrozl +skruber +skrubu +skrupul +skua +skuce +skuchnaya +skuchno +skuhzzee +skuld +skulduggery +skulked +skulker +skulking +skulkingly +skulks +skull +skullbanker +skulled +skullery +skullfish +skullful +skulls +skullsoft +skullvalley +skully +skulp +skun +skunk +skunkbill +skunkbush +skunkdom +skunkery +skunkhead +skunkish +skunklet +skunks +skunktop +skunkweed +skunky +skupshtina +skupstina +skuril +skurried +skurry +skuse +skutnik +skutt +skutterudite +skuue +skvortsov +skwarecki +skwarok +skybal +skyblue +skycap +skycave +skycraft +skyey +skyforest +skyful +skyggedans +skygod +skygusty +skyish +skyjacker +skykomish +skyland +skylark +skylarker +skylarking +skylarks +skyless +skylighted +skylights +skylike +skyline +skylined +skylook +skyman +skyphoi +skyphos +skyplast +skyre +skyrgaliard +skyrocketed +skyrockets +skyrockety +skyros +skysail +skyscape +skyscraper +skyscrapers +skyscraping +skyshine +skytop +skyugle +skywalker +skyward +skywards +skyways +skywise +skyworker +skywrite +skywriter +skywriting +slaa +slab +slabakov +slabaugh +slabbed +slabber +slabberer +slabbery +slabbiness +slabbing +slabby +slabfork +slabman +slabness +slabovolnii +slabs +slabstone +slaby +slack +slackage +slacked +slackened +slackener +slackens +slacker +slackerism +slacking +slackingly +slackly +slackness +slacks +slackware +slad +slade +sladek +slae +slag +slagel +slaggability +slaggable +slagger +slagging +slaggy +slagle +slagless +slaglessness +slagman +slags +slai +slain +slainte +slaister +slaistery +slait +slak +slakeable +slaked +slakeless +slaker +slaking +slaky +slalom +slam +slamet +slammakin +slammed +slammerkin +slamming +slammock +slammocking +slammocky +slamp +slampamp +slampant +slams +slan +slander +slandered +slanderer +slanderers +slanderest +slandereth +slanderful +slanderfully +slandering +slanderingly +slanderously +slanderproof +slanders +slane +slanesville +slang +slanga +slangier +slangiest +slangily +slanginess +slangish +slangishly +slangism +slangkop +slangous +slangster +slanguage +slangular +slangy +slank +slanner +slant +slanted +slanting +slantingly +slantingways +slantly +slants +slantways +slantwise +slap +slapbang +slapdash +slapdashery +slape +slaphappy +slapjack +slapped +slapper +slapping +slaps +slapsticky +slare +slart +slarth +slarty +slash +slashed +slasher +slashes +slashing +slashingly +slashouts +slashy +slaska +slata +slatch +slate +slated +slatedale +slateful +slatehill +slatelike +slatella +slatemaker +slatemaking +slater +slatersville +slaterun +slates +slatespring +slateworks +slateyard +slath +slather +slatify +slatiness +slating +slatington +slatish +slaton +slats +slattach +slatted +slatter +slattern +slatternish +slatternly +slatternness +slattery +slatting +slaty +slatyfork +slaughter +slaughtered +slaughterer +slaughtering +slaughterman +slaughterous +slaughters +slaum +slautterback +slava +slavdom +slave +slaveborn +slaved +slaveholder +slaveholding +slaveland +slaveless +slavelet +slavelike +slaveling +slavemaster +slavemasters +slavemonger +slaveowner +slavepen +slaver +slaverer +slavering +slaveringly +slavery +slaves +slavey +slavi +slavia +slavian +slavic +slavicism +slavicize +slavify +slavik +slavikite +slavim +slavin +slaving +slavishly +slavishness +slavism +slavist +slavistic +slavization +slavize +slavka +slavko +slavocracy +slavocrat +slavocratic +slavonian +slavonianize +slavonically +slavonicize +slavonish +slavonism +slavonize +slavophile +slavophilism +slavophobe +slavophobist +slavova +slavski +slaw +slawa +slawson +slay +slayable +slayden +slayed +slayer +slayers +slayeth +slaying +slays +slayton +slcc +slcs +sldisk +sleaf +sleap +sleathy +sleave +sleaved +sleaze +sleazier +sleaziest +sleazily +sleaziness +sleazy +sleb +sleck +sledded +sledder +sledding +sledful +sledge +sledged +sledgehammer +sledgeless +sledgemeter +sledger +sledges +sledging +sledlike +sleds +sleduiuschey +sleduyshih +sleduyshii +sleduyshyu +slee +sleech +sleechy +sleek +sleeken +sleeker +sleeking +sleekit +sleekly +sleekness +sleeky +sleeman +sleep +sleeped +sleeper +sleepered +sleepers +sleepest +sleepeth +sleepful +sleepfulness +sleepier +sleepiest +sleepify +sleepily +sleepiness +sleeping +sleepingly +sleepland +sleepless +sleeplessly +sleeplike +sleepmarken +sleepong +sleepproof +sleepry +sleeps +sleepwaker +sleepwaking +sleepwalk +sleepwalker +sleepwalking +sleepward +sleepwear +sleepwort +sleepy +sleepyeye +sleepyhead +sleer +sleet +sleeth +sleetiness +sleeting +sleetproof +sleety +sleeve +sleeveband +sleeveboard +sleeved +sleeveen +sleevefish +sleeveful +sleeveless +sleevelet +sleevelike +sleever +sleeves +sleg +sleigh +sleigher +sleighful +sleighing +sleighs +sleight +sleightful +sleighty +slemp +slempers +slendang +slender +slenderer +slenderish +slenderize +slenderized +slenderizing +slenderly +slenderness +slent +slepez +slepian +slepmis +slept +slesvig +slete +sletta +sleu +sleuthdog +sleuthful +sleuthhound +sleuthlike +sleve +slevin +slew +slewed +slewer +slewest +slewing +sley +sleyer +slezack +slezak +slfp +sliammon +slice +sliceable +sliced +slicer +slicers +slices +slich +slicht +slichter +slicing +slicingly +slick +slickedit +slicken +slickens +slickenside +slicker +slickered +slickers +slickery +slickest +slicking +slickly +slickness +slickrock +slicks +slickville +slid +slidable +slidableness +slidably +slidage +slidden +slidder +sliddery +slide +slideable +slideably +slided +slidehead +slidell +slideman +slideproof +slider +sliders +slides +slideth +slideway +sliding +slidingblock +slidingly +slidingness +slidometer +slier +sliest +slifker +slifter +slight +slighted +slighter +slightest +slightily +slightiness +slighting +slightingly +slightish +slightl +slightly +slightmade +slightness +slights +slighty +sligo +slijkerman +sliky +slil +slily +slim +slimane +slime +slimed +slimeman +slimepits +slimer +slimier +slimiest +slimily +sliminess +slimish +slimishness +slimly +slimmed +slimmer +slimmest +slimming +slimmish +slimness +slimpsy +slimsy +sline +sling +slingball +slinge +slinger +slingerlands +slingers +slinging +slings +slingsby +slingsman +slingstone +slingstones +slink +slinkard +slinker +slinkier +slinkiest +slinkily +slinkiness +slinking +slinkingly +slinks +slinkskin +slinkweed +slinky +slinowsky +slip +slipback +slipband +slipboard +slipbody +slipcase +slipcoach +slipcoat +slipcover +slipe +slipgibbet +slipher +sliphorn +sliphouse +slipknot +slipless +slipman +slipover +slippage +slipped +slipper +slippered +slipperier +slipperiest +slipperily +slipperiness +slipperlike +slippermen +slippers +slipperweed +slipperwort +slippery +slipperyback +slipperyrock +slipperyroot +slippeth +slippiness +slipping +slippingly +slipproof +slippy +slips +slipshod +slipshoddy +slipshodness +slipshoe +slipslap +slipslod +slipslop +slipsloppish +slipsloppism +slipsole +slipstep +slipstream +slipstring +sliptopped +slipway +slirt +slish +slishal +slisp +slisz +slit +slitch +slite +sliter +slither +slithered +slithering +slitheroo +slithers +slithery +slithy +slitless +slitlike +slits +slitshell +slitted +slitter +slitting +slitty +slitwise +slive +sliver +sliverer +sliverlike +sliverproof +slivers +sliving +slivovitz +sliznikov +sllv +slmail +slmc +slmi +slmp +slnceto +sloan +sloane +sloanea +sloansville +sloatsburg +slobber +slobberchops +slobberer +slobbers +slobbery +slobby +sloboda +slobodan +slobodchikov +slobode +sloboden +slobodian +slobodjian +slobodrian +slock +slocken +slocomb +slod +slodder +slodge +slodger +sloeberry +sloebush +sloetree +slog +sloganize +slogans +slogged +slogger +slogwood +sloka +sloke +slomalsya +slomer +slommock +slon +slone +slonk +slonosky +sloo +sloom +sloomy +sloop +sloopman +sloosh +slop +slopdash +slope +sloped +slopely +slopeness +sloper +slopers +slopes +slopeways +slopewise +sloping +slopingly +slopingness +slopmaker +slopmaking +slopoke +sloppage +slopped +sloppery +sloppier +sloppiest +sloppily +sloppiness +slopping +sloppy +slops +slopseller +slopselling +slopshop +slopstone +slopsucker +slopwork +slopworker +slopy +slorach +slorp +sloshed +slosher +sloshily +sloshiness +sloshing +sloshy +slossum +slot +slote +sloted +sloth +slothful +slothfully +slothfulness +slothound +sloths +slotnick +slots +slotted +slotter +slottery +slotting +slotwise +slouch +slouched +sloucher +slouches +slouchier +slouchiest +slouchily +slouchiness +slouching +slouchingly +slouchy +slough +sloughed +sloughhouse +sloughiness +sloughy +slour +sloush +slouth +slouy +slov +slovah +slovak +slovakia +slovakian +slovakish +slovaks +slovan +slovene +slovenes +slovenian +slovenija +slovenish +slovenlier +slovenliest +slovenlike +slovenliness +slovenly +slovenry +slovenska +slovenwood +slovincian +slovintzi +slovo +slow +slowaccess +slowbellied +slowbelly +slowdown +slowe +slowed +slower +slowest +slowgoing +slowgold +slowgrowth +slowheaded +slowhearted +slowhound +slowing +slowish +slowly +slowmouthed +slowness +slowotny +slowpoke +slowrie +slows +slowworm +sloyan +sloyd +slozil +slre +slrs +slsurp +slti +sltiu +sltu +slub +slubber +slubberer +slubbering +slubberingly +slubberly +slubbery +slubbing +slubby +sluchae +sluchaem +sluchay +sluck +slud +sludder +sluddery +sludge +sludged +sludger +sludgy +slue +slued +sluer +sluffed +slug +slugabed +sluggard +sluggarding +sluggardize +sluggardly +sluggardness +sluggardry +slugged +slugger +slugging +sluggingly +sluggish +sluggishly +sluggishness +sluggsy +sluggy +sluglike +slugmaster +slugs +slugster +slugwood +sluhi +sluiced +sluicelike +sluicer +sluices +sluiceway +sluicing +sluicy +sluig +sluing +sluis +sluit +slujba +slujby +sluky +slum +slumber +slumbered +slumberer +slumbereth +slumberful +slumbering +slumberingly +slumberings +slumberland +slumberless +slumberous +slumberously +slumberproof +slumbers +slumbersome +slumbery +slumbrous +slumdom +slumgullion +slumgum +slumland +slumlord +slummage +slummed +slummer +slumminess +slumming +slummock +slummocky +slummy +slump +slumped +slumping +slumpproof +slumproof +slumps +slumpwork +slumpy +slums +slumward +slumwise +slunder +slundzh +slung +slungbody +slunge +slunk +slunken +sluntze +slupsk +slurbow +slurp +slurping +slurps +slurred +slurring +slurringly +slurry +slurs +slush +slushal +slushay +slusher +slushily +slushiness +slushy +slusinski +slusser +slut +slutch +slutchy +sluther +sluthood +slutsker +slutskomozyr +slutter +sluttery +sluttikin +sluttish +sluttishly +sluttishness +slutty +sluzbenoh +slve +slyboots +slyer +slyest +slyish +slyly +slyness +slype +slyset +slyter +slyteris +smaaladen +smachivaet +smachnimi +smachrie +smack +smacked +smackee +smacker +smackful +smacking +smackingly +smackover +smacks +smacksey +smacksman +smaik +smail +smaland +smalcaldian +smalcaldic +smale +small +smallage +smallberg +smallbox +smallburrow +smallbury +smallclothes +smallcoal +smalled +smallen +smaller +smallergif +smallest +smallhearted +smallholder +smallholders +smalling +smallmouth +smallmouthed +smallness +smallpoint +smallpox +smalls +smallsample +smallscale +smallsize +smallsword +smalltalk +smalltownboy +smallware +smallwood +smally +smalm +smalt +smalter +smaltine +smaltite +smalts +smaney +smap +smaragd +smaragdine +smaragdite +smaragdus +smarm +smarmy +smarr +smart +smartboard +smartbroker +smartcheck +smartdata +smartdelete +smartdoc +smartdraw +smarted +smarten +smarter +smarterm +smartest +smartfaq +smarting +smartingly +smartish +smartism +smartless +smartly +smartmaze +smartmodem +smartness +smartsaver +smartsetup +smartsuite +smartt +smartups +smartville +smartweed +smarty +smash +smashable +smashage +smashboard +smashed +smasher +smashers +smashery +smashes +smashing +smashingly +smashment +smashup +smatch +smather +smatterer +smattering +smatteringly +smattery +smaug +smaze +smbd +smbmount +smcm +smeagol +smear +smearcase +smeared +smearer +smeariness +smearing +smearless +smears +smeary +smeaton +smecca +smectic +smectis +smectite +smectymnuan +smectymnuus +smeddum +smedema +smedley +smee +smeech +smeek +smeeky +smeenk +smeer +smeeth +smegma +smeinikova +smela +smell +smellable +smellage +smelled +smeller +smelleth +smellfeast +smellful +smellfungi +smellfungus +smellie +smellier +smelliest +smelliness +smelling +smellproof +smells +smellsome +smelly +smels +smelt +smelter +smelterman +smelters +smelterville +smeltery +smelting +smeltman +smelts +smeral +smerdell +smerdon +smerek +smerti +smeshannogo +smesny +smetana +smetanin +smeth +smethe +smethport +smethurst +smets +smeuse +smew +smfs +smich +smicker +smicket +smicksburg +smid +smiddie +smiddum +smidge +smidgen +smidgin +smidlap +smifligate +smifligation +smiggins +smil +smilacaceae +smilacaceous +smilaceae +smilaceous +smilacin +smilacina +smilax +smile +smileable +smileage +smiled +smileful +smilefulness +smileless +smilelessly +smilemaker +smilemaking +smileproof +smiler +smilershell +smiles +smilet +smilevskia +smiley +smileypro +smilgirl +smilie +smiling +smilingly +smilingness +smilodon +smily +smintheus +sminthian +sminthurid +sminthuridae +sminthurus +smirch +smircher +smirchless +smirchy +smiris +smirk +smirked +smirker +smirking +smirkingly +smirkish +smirkle +smirkly +smirky +smirnoff +smirnov +smirnova +smirnovtype +smirtle +smisl +smisla +smit +smita +smitch +smite +smiter +smiters +smitest +smiteth +smith +smitham +smithboro +smithburg +smithcenter +smithcraft +smithdale +smithdeal +smither +smithers +smithery +smithian +smithianism +smithies +smithing +smithite +smithkline +smithlake +smithland +smithmill +smithmills +smithriver +smiths +smithsburg +smithscreek +smithsgrove +smithshire +smithson +smithsonian +smithsonite +smithton +smithtown +smithville +smithwick +smithwork +smithydander +smiting +smitkin +smitley +smitrovich +smits +smitten +smitting +smitty +smoaks +smock +smocker +smockface +smockfaced +smocking +smockless +smocklike +smocks +smog +smogghe +smoggier +smoggiest +smoggy +smogu +smojesh +smokable +smokables +smoke +smokeable +smokebox +smokebush +smoked +smokehouse +smokejack +smokeless +smokelessly +smokelike +smokeproof +smoker +smokerparty +smokers +smokerun +smokery +smokes +smokestacks +smokestone +smoketight +smoketown +smokewood +smokey +smoki +smokie +smokier +smokies +smokiest +smokily +smokiness +smoking +smokish +smoktunovsky +smoky +smokyseeming +smolan +smoldered +smoldering +smolders +smolensk +smolensky +smolik +smolin +smolkin +smollett +smolt +smooch +smoochie +smoochy +smoodge +smoodger +smook +smoooth +smoorich +smoos +smoot +smooth +smoothable +smoothback +smoothbored +smoothcoat +smoothed +smoothen +smoother +smoothers +smoothes +smoothest +smootheth +smoothfaced +smoothie +smoothify +smoothing +smoothingly +smoothish +smoothly +smoothness +smoothpate +smoozeer +smop +smopple +smore +smorgasbord +smorphi +smote +smotest +smother +smotherable +smotheration +smothered +smotherer +smotheriness +smothering +smotheringly +smothers +smothery +smotr +smotri +smotriu +smotter +smouch +smoucher +smoulder +smouldered +smouldering +smous +smouse +smouser +smout +smpt +smriti +smrke +smsu +smtp +smtpd +smuda +smudged +smudgedly +smudgeless +smudgeproof +smudger +smudgily +smudginess +smudging +smug +smugger +smuggery +smuggest +smuggish +smuggishly +smuggishness +smuggle +smuggleable +smuggled +smuggler +smugglers +smugglery +smuggles +smuggling +smugism +smugly +smugness +smuisty +smulders +smur +smurf +smurff +smurfs +smurks +smurr +smurry +smuse +smush +smutch +smutchin +smutchless +smutchy +smutproof +smuts +smutted +smutter +smuttier +smuttiest +smuttily +smuttiness +smyer +smyley +smyrna +smyrnaite +smyrnamills +smyrnean +smyrner +smyrniot +smyrniote +smyslov +smyth +smythe +smytrie +snab +snabb +snabbie +snabble +snabi +snachala +snack +snackle +snackman +snacks +snader +snaff +snaffle +snaffles +snag +snaga +snagbush +snagged +snagger +snagging +snaggled +snaggleteeth +snaggletooth +snaggy +snagit +snagoff +snagrel +snags +snail +snaileater +snailery +snailfish +snailflower +snailish +snailishly +snaillike +snailmail +snails +snaily +snair +snaith +snake +snakebark +snakeberry +snakebite +snaked +snakedriver +snakefish +snakeflower +snakehead +snakehips +snakeholing +snakeleaf +snakeless +snakelet +snakeling +snakeman +snakemouth +snakeneck +snakeology +snakephobia +snakepiece +snakepipe +snakeproof +snaker +snakery +snakes +snakeship +snakeskin +snakeskins +snakestone +snakeweed +snakewise +snakewood +snakeworm +snakewort +snakier +snakiest +snakily +snakiness +snaking +snakish +snaky +snap +snapbag +snapberry +snape +snaper +snaphead +snapholder +snapjack +snapless +snaporaz +snappable +snapped +snapper +snappers +snappier +snappiest +snappily +snappiness +snapping +snappingly +snappish +snappishly +snappishness +snapps +snappy +snaps +snapsack +snapshot +snapshots +snapshotter +snapview +snapweed +snapwood +snapwort +snapy +snare +snared +snareless +snarer +snares +snarf +snarfed +snarfing +snarfnbarf +snaric +snaring +snaringly +snark +snarked +snarks +snarled +snarler +snarleyyow +snarling +snarlingly +snarlish +snarls +snarly +snarr +snary +snaste +snatch +snatchable +snatched +snatcher +snatchers +snatches +snatchily +snatching +snatchingly +snatchproof +snatchy +snath +snathe +snausing +snavel +snavvle +snaw +sncb +sncc +sncf +sndndc +sndnsc +sndp +snead +sneads +sneadsferry +sneak +sneaked +sneaker +sneakernet +sneakers +sneakier +sneakiest +sneakily +sneakiness +sneaking +sneakingly +sneakingness +sneakish +sneakishly +sneakishness +sneaks +sneaksby +sneaksman +sneakthief +sneaky +sneakymail +sneap +sneath +sneathe +sneb +sneck +sneckdraw +sneckdrawing +sneckdrawn +snecker +snecket +snecky +sned +snedden +sneddon +snedecor +snedeker +snedrig +snee +sneed +sneedville +sneer +sneered +sneerer +sneerful +sneerfulness +sneering +sneeringly +sneerless +sneers +sneery +sneesh +sneeshing +sneest +sneesty +sneeze +sneezed +sneezeless +sneezeproof +sneezer +sneezes +sneezeweed +sneezewood +sneezewort +sneezey +sneezing +sneezy +snegoff +snehal +snejok +snelgrove +snelling +snellville +snelly +snemovna +snerd +snerp +snert +snes +snew +snezana +snfndc +sniadeckia +snib +snibble +snibbled +snibbler +snibel +snicher +snickdraw +snickdrawing +snicked +snicker +snickering +snickeringly +snickers +snickersnee +snicket +snickey +snicking +snickle +snickowski +sniddle +snide +snidely +snideness +snider +sniedovich +sniff +sniffed +sniffer +sniffers +sniffily +sniffiness +sniffing +sniffingly +sniffish +sniffishness +sniffle +sniffled +sniffler +sniffling +sniffs +sniffy +snift +snifty +snig +sniggerer +sniggering +sniggle +sniggler +sniggoringly +snijders +snimal +snimki +snip +snipebill +sniped +snipefish +snipelike +sniper +sniperscope +snipes +snipets +sniping +snipish +snipjack +snipnose +snipocracy +snipped +snipper +snipperty +snippet +snippetiness +snippets +snippety +snippier +snippiest +snippiness +snipping +snippish +snips +snipsnap +sniptious +snipy +snirl +snirt +snirtle +snitch +snitched +snitcher +snitching +snite +snithe +snithy +snittle +snitz +sniveled +sniveler +sniveling +snivelled +snivelling +snively +snivitz +snivy +snmp +snob +snobber +snobbess +snobbing +snobbishly +snobbishness +snobbism +snobby +snobdom +snobling +snobocracy +snobocrat +snobographer +snobography +snobol +snobologist +snobonomer +snobscat +snocher +snock +snocker +snod +snoden +snodgrass +snodgress +snodly +snoek +snoeking +snog +snoga +snohomish +snoke +snonowas +snood +snooded +snooding +snook +snooker +snookered +snookie +snoop +snooped +snooper +snooperscope +snoopier +snoopiest +snooping +snoopington +snoops +snoopy +snoose +snoot +snootier +snootiest +snootily +snootiness +snooty +snoove +snooz +snooze +snoozed +snoozer +snooziness +snoozing +snoozle +snoozy +snop +snoqualmie +snoquamish +snore +snored +snoreless +snorer +snores +snoring +snoringly +snork +snorkels +snorker +snorre +snorted +snorter +snorting +snortingly +snortle +snorts +snorty +snot +snotter +snottier +snottiest +snottily +snottiness +snottyfaced +snouch +snout +snouted +snouter +snoutish +snoutless +snoutlike +snouts +snouty +snova +snover +snovos +snow +snowball +snowballing +snowballs +snowbank +snowbell +snowberg +snowberry +snowbird +snowblind +snowblink +snowboard +snowbound +snowbourn +snowboy +snowbreak +snowbush +snowcamp +snowcap +snowcraft +snowden +snowdonian +snowdrift +snowdrifts +snowdrop +snowe +snowed +snowflakes +snowflight +snowflower +snowfowl +snowhammer +snowhill +snowhite +snowhouse +snowie +snowier +snowiest +snowily +snowiness +snowing +snowish +snowk +snowl +snowlake +snowland +snowless +snowlike +snowman +snowmane +snowmanship +snowmass +snowmen +snowplow +snowproof +snows +snowscape +snowshade +snowshed +snowshine +snowshoe +snowshoed +snowshoeing +snowshoer +snowshoes +snowslide +snowslides +snowslip +snowsuit +snowville +snowwhite +snowworm +snowy +snozzle +snubbable +snubbed +snubbee +snubber +snubbier +snubbiest +snubbiness +snubbing +snubbingly +snubbish +snubbishly +snubbishness +snubby +snubproof +snubs +snuck +snudge +snuff +snuffbox +snuffboxer +snuffcolored +snuffdishes +snuffed +snuffers +snuffeth +snuffiness +snuffing +snuffingly +snuffish +snuffled +snuffler +snuffles +snuffless +snuffliness +snuffling +snufflingly +snuffman +snuffs +snuffy +snug +snugged +snugger +snuggery +snuggest +snuggish +snuggle +snuggled +snuggles +snuggling +snuggs +snugify +snugly +snugness +snugs +snum +snup +snupper +snur +snurl +snurly +snurp +snurt +snuzzle +snvtdnmn +snybklyn +snybuf +snyder +snydersburg +snydersville +snying +snymor +snythe +soai +soak +soakage +soakaway +soaked +soaken +soaker +soaking +soakingly +soakman +soaks +soaky +soally +soam +soames +soandso +soap +soapbark +soapberry +soapbox +soapboxer +soapbubbly +soapbush +soaped +soaper +soapery +soapfish +soapier +soapiest +soapily +soapiness +soaping +soaplake +soaplees +soapless +soaplike +soapmaker +soapmaking +soapmonger +soaprock +soaproot +soaps +soapsuddy +soapsuds +soapsudsy +soapweed +soapwood +soapwort +soar +soara +soarability +soarable +soarb +soarc +soard +soared +soarer +soares +soaring +soaringly +soars +soary +soas +soba +sobane +sobat +sobbed +sobber +sobbing +sobbingly +sobby +sobchuk +sobczak +sobczuk +sobeaux +sobeck +sobei +sobeit +sobel +sobelman +sober +sobered +soberer +soberest +soberin +sobering +soberingly +soberize +soberlike +soberly +soberminded +soberness +sobers +sobersault +sobersided +sobersides +soberwise +sobful +sobgeq +sobgtr +sobi +sobiesiak +sobinski +sobiraeshsya +sobkow +soble +sobler +sobo +sobolak +soboles +sobolev +sobolevskii +sobolewski +soboliferous +soboloff +sobon +soboy +soboyo +sobproof +sobralia +sobralite +sobralsya +sobranje +sobranyie +sobrevest +sobriety +sobrinho +sobru +sobryanski +sobs +socage +socager +socaire +socalled +socan +socas +soccer +soccerist +soccerite +soce +sochi +sochiapan +sochile +socho +sochoh +sochovka +socht +sociability +sociable +sociableness +sociably +social +socialcircle +sociales +socialiist +socialism +socialist +socialista +socialistic +socialists +socialite +sociality +socializable +socialize +socialized +socializer +socializes +socializing +socially +socialness +sociation +sociative +societal +societally +societarian +societary +societies +societified +societism +societist +societology +society +societyhill +societyish +societyless +societys +socii +socinian +socinianism +socinianize +socinus +sociobiology +sociocentric +sociocracy +sociocrat +sociocratic +sociodrama +sociogenesis +sociogenetic +sociogeny +sociography +sociolatry +sociolegal +sociologian +sociologic +sociological +sociologism +sociologist +sociologists +sociologize +sociologizer +sociology +sociomedical +sociometric +socionomic +socionomics +socionomy +sociopath +sociophagous +sociostatic +socius +sock +sockaddr +sockd +sockdolager +socked +socker +socket +socketed +socketful +socketless +sockets +socketspy +socketwatch +socking +sockless +socklessness +sockmaker +sockmaking +socko +socks +socksify +sockts +socky +socle +soclose +socman +socmanry +soco +socoh +socorro +socotra +socotran +socotri +socotrine +socrat +socratean +socrates +socratic +socratical +socratically +socraticism +socratism +socratist +socratize +soda +sodaclase +sodaic +sodaless +sodalist +sodalite +sodalithite +sodalities +sodality +sodamide +sodankyla +sodano +sodapop +sodasprings +sodbuster +sodded +sodden +soddenly +soddenness +sodding +soddite +soddo +soddus +soddy +sodeko +sodemann +soderblom +sodering +soderkakar +soderling +sodhi +sodi +sodia +sodic +sodio +sodioaurous +sodiocitrate +sodiohydric +sodium +sodless +sodoku +sodom +sodoma +sodomic +sodomist +sodomite +sodomites +sodomitess +sodomitic +sodomitical +sodomitish +sodomy +sods +sodus +soduscenter +soduspoint +sodwork +sody +soeda +soeder +soeharto +soekoe +soeltoft +soemita +soenda +soeneland +soerbom +soeren +soerensen +soeryadi +soeurs +soever +sofa +sofaer +sofala +sofane +sofar +sofas +sofeya +soffel +sofi +sofia +sofian +sofie +sofievka +sofiko +sofio +sofiya +sofronia +sofsongs +soft +softa +softball +softboot +softbrained +softcopier +softcopies +softcopy +softcr +softdesk +softdist +softdump +softec +soften +softened +softener +softening +softens +softer +softest +softfaq +softhead +softheaded +softhearted +softhorn +softice +softie +softies +softintl +softish +softland +softling +softlogic +softly +softmarket +softmode +softner +softness +softpc +softset +softship +softspoken +softstarts +softtack +softvax +softw +softwae +software +softwarefx +softwares +softwareto +softwarily +softwary +softway +softweirilee +softy +soga +sogal +sogap +sogdian +sogdianese +sogdianian +sogdoite +soger +sogeri +soget +soggarth +soggendalite +soggier +soggiest +soggily +sogginess +sogging +sogh +soghai +soghaua +sogilitan +sogn +sogo +sogoba +sogodas +sogokiri +sohail +sohal +sohale +sohayla +sohe +sohl +sohlect +sohn +sohni +sohnker +sohns +soho +sohota +sohsentrizm +sohsh +sohur +soibada +soidisant +soient +soiesette +soigne +soil +soilage +soiled +soiliness +soiling +soilla +soilless +soilproof +soils +soilure +soily +soin +soir +soirie +soit +soixantine +soja +sojerseymsc +soji +sojie +sojin +sojka +sojkowski +sojol +sojourn +sojourned +sojourner +sojourners +sojourneth +sojourney +sojourning +sojournment +sojourns +soka +sokaka +sokatscheff +soke +sokeman +sokemanemot +sokemanry +soken +sokhok +sokic +sokid +sokile +sokili +sokirik +soklyon +sokna +soko +sokode +sokoki +sokol +sokoloff +sokolonepi +sokolova +sokolowska +sokolowski +sokoro +sokorok +sokoto +sokotri +sokouraba +sokte +sokuan +sokulk +sokutai +sokya +sokyrko +sola +solace +solaced +solaceful +solacement +solaceproof +solacer +solacing +solacious +solaciously +solakov +solala +solamba +solan +solanabeach +solanaceae +solanaceous +solanal +solanales +solander +solaneine +solaneous +solange +solanidine +solanine +solano +solans +solanum +solar +solari +solarian +solariia +solaris +solarism +solarist +solaristic +solaristics +solarium +solarization +solarize +solarometer +solarwinds +solarz +solarzano +solate +solath +solatia +solation +solatium +solay +solbelli +solbourne +sold +soldadera +soldado +soldan +soldanel +soldanella +soldanelle +soldani +soldanrie +soldat +soldaten +soldati +soldera +soldered +solderer +soldering +solderless +soldi +soldier +soldierbird +soldierbush +soldierdom +soldieress +soldierfish +soldierhood +soldiering +soldierize +soldierlike +soldierly +soldierpond +soldierproof +soldiers +soldiership +soldierwise +soldierwood +soldo +solduz +sole +solea +soleas +solebury +solecist +solecistic +solecistical +solecize +solecizer +soled +soledad +soleh +solehua +soleidae +soleiform +soleil +soleless +solely +solemn +solemncholy +solemnify +solemnities +solemnitude +solemnity +solemnize +solemnized +solemnizer +solemnizing +solemnly +solemnment +solemnness +solen +solenacean +solenaceous +soleness +solenette +solenial +solenidae +solenite +solenitis +solenium +solenoconch +solenoconcha +solenocyte +solenodon +solenodont +solenogaster +solenoglyph +solenoglypha +solenoid +solenoidal +solenoidally +solenopsis +solenostele +solenostelic +solenostomid +solenostomus +solent +solentine +solenzo +solepiece +soleplate +soleprint +soler +solera +soles +soleus +solevu +soleyn +solfa +solfataric +solfeggio +solferino +solgohachia +solheim +soli +soliative +solicit +solicitant +solicited +solicitee +soliciter +soliciting +solicitors +solicitous +solicitously +solicitress +solicitrix +solicits +solid +solidago +solidaric +solidarily +solidarism +solidarist +solidaristic +solidarities +solidarize +solidary +solidate +solidation +solider +soliders +solidi +solidifiable +solidified +solidifier +solidifies +solidiform +solidifying +solidish +solidism +solidist +solidistic +solidity +solidly +solidness +solids +solidstate +solidum +solidungula +solidungular +solifidian +solifluction +soliform +solifugae +solifuge +solifugean +solifugid +solifugous +soligo +soliloquies +soliloquist +soliloquium +soliloquize +soliloquized +soliloquizer +solilunar +soliman +solimo +soling +solio +soliped +solipedal +solipedous +solipsismal +solipsist +solipsistic +solis +solist +solita +solitaire +solitaires +solitarian +solitaries +solitarily +solitariness +solitary +solitidal +solitude +solitudes +solitudinize +solitudinous +solivagant +solivagous +solkoff +solla +sollar +sollecito +sollee +solleret +solley +sollman +sollozzo +sollten +solly +sollya +solman +solmizate +solmization +solnes +solnzem +solo +solod +solodi +solodization +solodize +solodko +solodva +sologne +soloist +solola +soloman +solomen +solomin +solomina +solomon +solomonian +solomonic +solomonical +solomonitic +solomonov +solomons +solomos +solonchak +solonetz +solonetzic +solonian +solonic +solonist +solonitsin +solonmills +solonsprings +solor +solorese +solorzano +solos +soloth +solothurn +solotink +solotnik +soloto +soloviev +soloway +solpl +solpugid +solpugida +solpugidea +solpugides +solsberry +solsidan +solski +solstice +solsticion +solstitia +solstitial +solstitially +solstitium +solsuite +solsville +soltan +soltanabad +solter +solti +soltys +solu +solubility +solubilize +solubleness +solubly +soluing +solukhumbu +solum +solus +solution +solutional +solutioner +solutionist +solutions +solutize +solutizer +solutrean +solv +solvability +solvable +solvableness +solvang +solvation +solve +solved +solveig +solvejg +solvement +solvency +solvend +solvent +solvently +solventproof +solvents +solver +solvers +solves +solving +solvolysis +solvolytic +solvolyze +solvsbergite +solway +solwe +soly +solyma +solymaean +soma +somacule +somage +somahai +somalia +somalian +somaliland +somalinya +somalis +somalo +somanente +somani +somanya +somaplasm +somarriba +somaschian +somasodu +somasthenia +somasundaram +somata +somateria +somatic +somatical +somatically +somatics +somatism +somatist +somatization +somatochrome +somatocyst +somatocystic +somatoderm +somatogenic +somatognosis +somatologic +somatologist +somatology +somatome +somatomic +somatophyte +somatophytic +somatoplasm +somatopleure +somatoscopic +somatotonia +somatotonic +somatotropic +somatotype +somatotyper +somatotypy +somatous +somatu +somaza +somba +sombat +sombe +somberish +somberly +somberness +somboon +sombra +sombrerite +sombrero +sombreroed +sombreros +sombrous +sombrously +sombrousness +somchart +somchit +some +somebodies +somebody +somebodyll +somebodys +someday +somedays +somedeal +somegate +somegoro +somehow +somekhi +somels +somename +someone +someonell +someones +somepart +somepath +someplace +somer +somera +somerdale +somers +somerset +somersetian +somerson +somerspoint +somerss +somersville +somersworth +somerton +somerville +somervillite +somes +somesh +someshwar +someshwarrao +somesthesia +somesthesis +somesthetic +something +sometime +sometimes +someway +someways +somewhat +somewhatly +somewhatness +somewhen +somewhence +somewhere +somewheres +somewhile +somewhiles +somewhither +somewhy +somewise +somhlolo +somis +somisetty +somital +somite +somitic +somjai +somkid +somkuan +somlay +somma +sommaite +sommands +sommar +sommars +sommer +sommerdorf +sommerfeld +sommers +sommerville +somnambulant +somnambular +somnambulary +somnambulate +somnambule +somnambulic +somnambulism +somnambulist +somnambulize +somnambulous +somnath +somnial +somniative +somnifacient +somniferous +somniferum +somnific +somnifuge +somnify +somniloquent +somniloquism +somniloquist +somniloquize +somniloquous +somniloquy +somniosus +somnipathist +somnipathy +somnivolency +somnivolent +somno +somnolence +somnolency +somnolently +somnolescent +somnolism +somnolize +somnopathy +somnorific +somnus +somo +somogy +somonauk +somone +somono +somorika +somoza +sompay +sompne +sompner +sompong +sompop +somppi +somputer +somra +somrai +somray +somre +somrei +soms +somsak +somski +somthing +somville +somvorachit +somwadina +sona +sonable +sonagli +sonahaa +sonai +sonajew +sonald +sonance +sonancy +sonantal +sonantic +sonantina +sonantized +sonar +sonatina +sonation +sonbol +sonchus +sond +sonda +sondation +sonde +sondeli +sondelius +sonder +sonderborg +sonderbund +sonderclass +sondergaard +sondergotter +sondern +sondes +sondheim +sondheimer +sondra +sondwari +sondylomorum +sone +soneri +sonetserif +sonezaki +song +songa +songai +songbird +songbirds +songbu +songcraft +songe +songea +songfest +songfully +songfulness +songhai +songhay +songhua +songish +songkhla +songkhram +songkrod +songland +songle +songless +songlessly +songlessness +songlet +songlike +songman +songnim +songo +songoi +songola +songomeno +songoora +songs +songster +songstress +songtag +songu +songum +songwa +songwe +songworthy +songwright +songwriter +songy +songye +sonha +sonhing +sonhood +sonia +sonic +sonier +soniferous +sonification +soninke +soninkebozo +soniou +sonique +sonja +sonjo +sonk +sonkkila +sonkur +sonless +sonlike +sonlikeness +sonly +sonnan +sonne +sonneberga +sonnenberg +sonnenkoenig +sonnenschein +sonneratia +sonnetary +sonneteer +sonneteeress +sonnetic +sonneting +sonnetish +sonnetist +sonnetize +sonnetlike +sonnets +sonnetwise +sonneveld +sonni +sonnie +sonnikins +sonnim +sonnnie +sonno +sonntag +sonny +sono +sonobuoy +sonoda +sonoe +sonoita +sonometer +sonora +sonoran +sonorant +sonorants +sonoranw +sonores +sonorescence +sonorescent +sonoric +sonoriferous +sonorific +sonorophone +sonorosity +sonorously +sonorousness +sonoy +sonpari +sonquist +sonrai +sonrhai +sons +sonseeahray +sonserai +sonship +sonsogon +sonsonate +sonsorol +sonsy +sont +sontag +sonthal +sony +sonya +sonyea +sonyo +soobin +soobschestva +soobshu +soochow +sood +soodle +soodly +soodoh +sooey +sook +sookdeo +sooke +sookey +sooky +sool +sooley +sooloo +sooloos +soomana +soon +soonce +soonde +sooner +soonest +soong +soonish +soonly +soooo +soopurchunk +soorah +soorawn +soord +soorkee +soot +sooter +sooterkin +sooth +soothe +soothed +soother +sootherer +soothes +soothful +soothill +soothing +soothingly +soothingness +soothless +soothsayer +soothsayers +soothsaying +soothysay +sootier +sootiest +sootily +sootiness +sootiyo +sootless +sootlike +sootproof +sooty +sootylike +soow +soozee +sopa +sopaporn +sopater +sopchoppy +sope +soper +soperton +sopese +sopfomo +soph +sopha +sophereth +sopheric +sopherim +sophey +sophi +sophia +sophian +sophias +sophic +sophical +sophically +sophie +sophiologic +sophiology +sophist +sophister +sophistic +sophistical +sophisticant +sophisticism +sophistress +sophistry +sophocles +sophomores +sophomorical +sophonts +sophora +sophoria +sophos +sophronia +sophronize +sophrosyne +sophy +sopi +sopite +sopition +sopo +sopoboro +sopocnovskij +sopor +soporiferous +soporific +soporifical +soporose +soporous +soppeng +sopper +soppiness +sopping +soppy +soprani +sopranino +sopranist +sopvoma +soqotra +soqotri +soquel +soraaa +sorabe +sorabian +soradi +sorage +soragorum +sorak +soral +soranhoff +sorani +sorano +sorapong +sorarrain +sorathi +sorathia +sorau +sorawolio +sorayama +sorbaria +sorbas +sorbate +sorbefacient +sorbello +sorbent +sorbet +sorbian +sorbic +sorbier +sorbile +sorbin +sorbinose +sorbish +sorbite +sorbitic +sorbitize +sorbitol +sorbonic +sorbonical +sorbonist +sorbonne +sorbose +sorboside +sorbus +sorc +sorcer +sorcerer +sorcerers +sorceress +sorceries +sorcering +sorcerous +sorcerously +sorcery +sorcha +sorchin +sorci +sorciers +sorcio +sorda +sordaria +sordariaceae +sordawalite +sordellina +sordello +sordes +sordet +sordi +sordid +sordidity +sordidly +sordidness +sordine +sordino +sordjano +sordo +sordor +sordos +sore +soreanu +soredia +soredial +sorediate +sorediferous +sorediform +soredioid +soredium +soree +sorefalcon +sorefoot +sorehawk +sorehead +soreheaded +soreheadedly +sorehearted +sorehon +sorek +sorel +sorely +sorema +sorembuti +soren +sorendidori +soreness +sorensen +sorento +sorer +sores +sorest +sorex +sorga +sorgbarn +sorge +sorgho +sorghum +sorgo +sorgum +sori +soria +soriani +soriano +soricid +soricidae +soricident +soricinae +soricine +soricoid +soricoidea +sorido +soriel +soriferous +soriharengan +sorili +sorimin +sorin +sorite +sorites +soritical +soriyali +sork +sorkin +sorko +sorn +sornare +sornari +sornay +sorner +sorning +soroako +soroban +sorogama +sorogo +sorokino +sorol +sorombeo +soromfai +soromundi +sorong +soroptimist +sororal +sororate +sororial +sororially +sororicidal +sororicide +sororize +sorose +sorosis +sorosphere +sorosporella +sorosporium +sorouba +sorpasso +sorr +sorra +sorrel +sorrell +sorrells +sorrels +sorren +sorrentino +sorrento +sorribas +sorrier +sorriest +sorrily +sorriness +sorroa +sorrov +sorrow +sorrowed +sorrower +sorroweth +sorrowful +sorrowfully +sorrowing +sorrowingly +sorrowless +sorrowproof +sorrows +sorrowy +sorrry +sorry +sorryhearted +sorryish +sorsele +sorsogon +sorsogonon +sort +sortable +sortably +sortal +sortance +sortation +sorted +sorter +sorters +sortes +sortgrid +sortieren +sortiert +sorties +sortilege +sortileger +sortilegic +sortilegious +sortilegus +sortilegy +sortiment +sorting +sortition +sortly +sortof +sortpics +sortrondelag +sorts +sortto +sorty +soruba +sorum +sorung +sorus +sorva +sorvino +sory +sorya +sosa +sosanna +sosdian +sose +sosh +soshed +soshnick +sosi +sosia +sosialis +sosigenes +sosipater +soskuchilsya +soso +sosoish +sospita +soss +sossaman +sossina +sossle +sosso +sostenuto +sosthene +sosthenes +sostoyanie +sostrbrg +sostrum +sosu +sosyvin +sota +sotadean +sotadic +sotai +sotang +sotatipo +soteapan +sotelo +soter +soteres +soterial +soteriologic +soteriology +sotero +sotfware +sotgio +sotheby +sothern +sothiac +sothiacal +sothic +sothis +sotho +sothotswana +sotie +sotik +sotipura +sotirhos +sotiriadis +sotiris +sotirog +sotlar +sotnia +sotnik +soto +sotocon +sotol +sotos +sotouboua +sotres +sotrm +sots +sotsialnom +sotsoft +sottage +sottanee +sotted +sotter +sottish +sottishly +sottishness +sotto +sotware +souad +souanke +souari +souba +soubeyran +soubier +soubirous +soubise +soubre +soubrette +soubrettish +soucar +souchak +souchet +souchong +souchy +soucie +soucy +soud +soudagur +soudan +souder +soudersburg +souderton +soudhwari +souei +souet +souffleed +soufriere +sougb +sougher +soughing +sought +sougoule +souhegan +souheil +souk +soul +soulack +soulani +soulcake +soule +souled +soulede +soules +souletin +souleymane +soulfully +soulfulness +soulical +soulier +soulish +soulless +soullessly +soullessness +soulliere +soullike +soulmass +souls +soulsaving +soulsbyville +soulslider +soulstirring +soultans +soulward +souly +soum +soumana +soumansite +soumare +soumarque +soumis +soumitra +soumo +soumray +soun +souncards +sound +soundable +soundage +soundalike +soundara +soundbeach +soundblaster +soundboard +soundcard +soundcards +sounded +soundeffect +sounder +soundest +soundeth +soundex +soundfont +soundful +soundheaded +soundhearted +soundheim +sounding +soundingly +soundingness +soundings +soundless +soundlessly +soundlike +soundlovers +soundly +soundman +soundminded +soundness +soundproofed +sounds +soundstudio +soundsupport +soundsystem +soundtr +soundtrack +soundvq +soundx +soungor +sounrai +soup +soupbone +soupcon +souped +souper +soupgate +souphalack +souple +soupless +souplex +souplike +soups +soupspoon +soupy +sour +sourashtra +sourbelly +sourbread +sourbush +sourcake +source +sourcecode +sourced +sourcefile +sourceful +sourceless +sourcer +sources +sourceware +sourcing +sourcrout +sourdeline +sourdet +sourdine +sourdough +soured +souredness +souren +sourer +soures +sourest +sourhearted +souring +souris +sourish +sourishly +sourishness +sourisseau +sourjack +sourlake +sourling +sourly +sourness +sourock +sourou +sourour +sourpuss +sours +sourses +soursop +sourtop +sourweed +soury +sous +sousa +sousaphone +sousaphonist +souse +souser +souslik +sousou +soussa +soussanin +sousse +soussou +sousuke +sout +soutendijk +souter +souterrain +south +southacworth +southafrica +southafrican +southamana +southamboy +southard +southaven +southbarre +southbay +southbeloit +southbend +southberlin +southberwick +southborough +southboston +southbound +southbranch +southbridge +southbristol +southbritain +southbury +southbutler +southbyron +southcairo +southcanaan +southcarver +southcasco +southcenter +southcentral +southchatham +southchina +southcleelum +southcolby +southcolton +southcottian +southdakota +southdakotan +southdayton +southdennis +southdown +southeast +southeaster +southeaston +southelgin +southenglish +souther +southerd +southerland +southerly +southermost +southern +southerner +southerners +southernism +southernize +southernly +southernmost +southernness +southernwood +southers +southfield +southfields +southfork +southgate +southgibson +southgrafton +southhadley +southharwich +southhaven +southheart +southheights +southhero +southhill +southhiram +southholland +southhouston +southing +southington +southkent +southkorea +southkorean +southlander +southlebanon +southlee +southlima +southlyme +southlyon +southmayd +southmilford +southmills +southmont +southmost +southness +southnewbury +southold +southon +southorange +southorleans +southotselic +southparis +southpekin +southplains +southpoint +southpole +southpomfret +southport +southprairie +southrange +southriver +southron +southronie +southrons +southroxana +southrutland +southryegate +southsalem +southschroon +southshore +southside +southsolon +southsutton +southumbrian +southunion +southvienna +southvietnam +southview +southwales +southwalpole +southward +southwardly +southwards +southwayne +southwebster +southwell +southwest +southwester +southwestern +southwhitley +southwick +southwindham +southwindsor +southwood +southworth +souto +souvenir +souvenirs +souverain +souvir +souwester +souza +souze +sova +sovagovic +sovak +soverapa +sovereign +sovereigness +sovereignly +sovereigns +sovet +sovetskaja +sovetskaya +sovetskiye +sovic +soviet +sovietdom +sovietic +sovietism +sovietist +sovietize +soviets +sovietskii +sovietstyle +sovietunion +sovite +sovkhose +sovok +sovran +sovranty +sovratil +sovsem +sovyet +sowa +sowable +sowad +sowan +sowanda +sowans +sowar +sowards +sowarry +sowback +sowbacked +sowbane +sowbread +sowdones +sowed +sowedst +soweidan +sowel +sowens +sower +sowerberry +sowest +soweth +soweto +soweys +sowfoot +sowie +sowinetz +sowing +sowins +sowl +sowle +sowlike +sowlth +sown +sowry +sowse +sowt +sowte +sowtware +soxen +soxer +soxhlet +soyaltepec +soybeans +soyburgers +soyeh +soygazi +soyka +soykin +soyland +soyod +soyombo +soyon +soyong +soyot +soyster +soyuz +soyuza +sozin +sozolic +sozzle +sozzly +spaaaaaam +spaak +space +spaceband +spacebar +spaceborne +spaceboy +spacecadet +spacecombat +spacecraft +spaced +spacedout +spaceful +spacehog +spacek +spaceless +spacely +spaceman +spaceport +spaceports +spacer +spacers +spaces +spacesaving +spaceship +spaceships +spacesuit +spacesuits +spacetime +spacewar +spacey +spacial +spaciness +spacing +spacings +spaciosity +spacious +spaciously +spaciousness +spack +spacy +spad +spada +spadaro +spaddle +spade +spadebone +spaded +spadefish +spadefoot +spadeful +spadelike +spademan +spader +spades +spadesman +spadewise +spadework +spadger +spadiceous +spadices +spadiciform +spadicose +spadilla +spadille +spading +spadix +spadone +spadonic +spadonism +spadrone +spadroon +spae +spaebook +spaecraft +spaedom +spaeman +spaer +spaeth +spaewife +spaewoman +spaework +spaewright +spafford +spagetti +spaggiari +spaghetti +spagnuoli +spagyric +spagyrical +spagyrically +spagyrist +spahee +spahi +spahis +spaid +spaik +spain +spairge +spak +spake +spakest +spalacidae +spalacine +spalatin +spalax +spald +spalder +spale +spaleny +spalinger +spalke +spall +spallation +spaller +spallin +spalling +spallone +spalpeen +spalt +spam +spamalot +spamex +span +spanaway +spanc +spancel +spandle +spandy +spane +spanelli +spanelly +spanemia +spanemy +spang +spangdahlem +spanghew +spangled +spangler +spanglet +spanglish +spangly +spangolite +spaniard +spaniardize +spaniardo +spaniel +spaniellike +spaniels +spanielship +spaning +spaniol +spaniolate +spanioli +spaniolize +spanipelagic +spanish +spanishburg +spanishfork +spanishize +spanishly +spank +spanked +spanker +spankily +spanking +spankingly +spanks +spanky +spanless +spann +spannbauer +spanned +spannel +spanner +spannerman +spanners +spannew +spanning +spano +spanopnoea +spanpiece +spans +spanswick +spantoon +spanule +spanworm +spanyol +spanza +sparable +sparacio +sparada +sparadrap +sparagrass +sparagus +sparassis +sparassodont +sparaxis +sparc +sparch +sparcompiler +sparcstation +sparcworks +spare +spareable +spared +spareless +sparely +spareness +sparer +sparerib +spares +sparesome +sparest +spareth +sparganium +sparganosis +sparganum +sparger +spargosis +sparhawk +sparid +sparidae +sparing +sparingly +sparinglyand +sparingness +spark +sparkback +sparke +sparked +sparker +sparkes +sparkie +sparkill +sparkiness +sparking +sparkish +sparkishly +sparkishness +sparkleberry +sparkled +sparkler +sparkless +sparklessly +sparklet +sparklike +sparkliness +sparkling +sparklingly +sparklite +sparkly +sparkproof +sparks +sparksman +sparkyfs +sparland +sparlike +sparm +sparmannia +sparnacian +sparoid +sparpiece +sparpoll +sparr +sparred +sparrer +sparring +sparringly +sparrow +sparrowbill +sparrowbrush +sparrowbush +sparrowcide +sparrowdom +sparrowgrass +sparrowish +sparrowless +sparrowlike +sparrows +sparrowtail +sparrowwort +sparrowy +sparry +sparse +sparsedly +sparsely +sparseness +sparser +sparsest +sparsile +sparsim +sparsioplast +sparsity +spart +sparta +spartacan +spartacide +spartacism +spartacist +spartaco +spartacus +spartan +spartanburg +spartanhood +spartanic +spartanism +spartanize +spartanlike +spartanly +spartans +spartansburg +sparteine +spartenburg +sparterie +sparth +spartiate +spartina +spartium +spartle +sparus +sparv +sparver +spary +spasibo +spasm +spasmatic +spasmatical +spasmed +spasmic +spasmodic +spasmodical +spasmodism +spasmodist +spasmolytic +spasmophilia +spasmophilic +spasmotin +spasmotoxin +spasmous +spasms +spaso +spasojevic +spastically +spasticity +spat +spatalamancy +spatangida +spatangina +spatangoid +spatangoida +spatangoidea +spatangus +spatchcock +spates +spatha +spathaceous +spathal +spathe +spathed +spatheful +spathic +spathiflorae +spathilae +spathilla +spathose +spathous +spathulate +spathyema +spatial +spatiality +spatialize +spatially +spatiate +spatiation +spatilomancy +spatio +spatling +spats +spatted +spatter +spatterdash +spattered +spattering +spatteringly +spatterproof +spatters +spatterwork +spatting +spattle +spattlehoe +spatulamancy +spatular +spatulate +spatulation +spatule +spatuliform +spatulose +spatz +spaugh +spaull +spave +spaver +spavie +spavied +spaviet +spavinaw +spavindy +spavined +spawar +spawn +spawneater +spawned +spawner +spawning +spawns +spawny +spayad +spayard +spaying +spaz +spccaltos +spcification +spdcc +speacker +speak +speakable +speakably +speakee +speaker +speakeress +speakerphone +speakers +speakership +speakest +speaketh +speakhouse +speakies +speaking +speakingly +speakingness +speakings +speakless +speaklessly +speaks +speal +spealbone +spean +spear +spearcast +spearchucker +speare +speared +spearer +spearfish +spearflower +spearing +spearman +spearmans +spearmanship +spearmen +spearpoint +spearproof +spears +spearsman +spearsville +spearville +spearwood +spearwort +speary +spec +specalizes +specchie +spece +speche +specheryit +special +speciala +specialcase +specialchars +specialfont +specialisee +specialism +specialist +specialistic +specialists +specialite +specialities +speciality +specialize +specialized +specializer +specializes +specializing +specially +specialness +specials +specialties +specialty +specialuse +speciation +species +speciesno +speciestaler +specifed +specifiable +specific +specifical +specifically +specificate +specificity +specificize +specificly +specificness +specifics +specificto +specified +specifier +specifiers +specifies +specifist +specifiying +specify +specifying +specillum +specimans +specimen +specimenize +specimens +speciology +speciosity +specious +speciously +speciousness +speck +specked +speckedness +speckfall +speckiness +specking +specklebelly +speckled +speckledbill +speckledness +speckles +speckless +specklessly +speckling +speckly +speckproof +specks +specksioneer +specky +specmark +specs +specsheet +spect +spectace +spectacle +spectacled +spectacles +spectacular +spectateur +spectatordom +spectatorial +spectators +spectatory +spectatress +spectatrix +specter +spectered +specterlike +specters +spectra +spectralab +spectralism +spectrality +spectrally +spectralness +spectre +spectrograms +spectrology +spectrometry +spectrophone +spectrous +spectrum +spectrums +spectry +specula +specularia +specularly +speculate +speculated +speculates +speculating +speculation +speculations +speculatist +speculative +speculator +speculators +speculatory +speculatrix +speculist +speculum +specus +sped +spedi +speech +speecha +speechc +speechcraft +speecher +speeches +speechful +speechified +speechifier +speechify +speechifying +speeching +speechless +speechlessly +speechlore +speechmaker +speechmaking +speechment +speechs +speed +speedaway +speedballads +speedboating +speedboatman +speeddisk +speeded +speeder +speeders +speedful +speedfully +speedfulness +speedier +speediest +speedily +speediness +speeding +speedingly +speedkit +speedless +speedmaster +speedometer +speeds +speedsoft +speedster +speedup +speedups +speedway +speedy +speedynet +speel +speelken +speelless +speelmanns +speen +speer +speering +speerity +speers +spegetty +spehr +speicher +speidel +speidler +speight +speights +speiser +speiskobalt +speiss +spejewski +spejl +spekboom +speke +spekefaw +speken +spektr +spela +spelaean +spelder +spelding +speldring +speleologist +speleology +spelimeyer +speling +spelk +spell +spellable +spellacy +spellbind +spellbinder +spellbinding +spellchecker +spellcraft +spelldown +spelled +speller +spellerberg +spellers +spellful +spellhist +spellin +spelling +spellingdown +spellingly +spellings +spellman +spellmann +spellmonger +spellname +spellproof +spells +spellword +spellwork +spelt +spelter +spelterman +speltoid +speltz +speluncar +speluncean +spelunk +spelunker +spelvin +spence +spencean +spencer +spencerism +spencerite +spencerport +spencertown +spencerville +spend +spendable +spender +spenders +spendest +spendeth +spendful +spendible +spending +spendings +spendless +spends +spendthrift +spendthrifty +spener +spenerism +speng +spengler +spense +spenser +spenserian +spensor +spensser +spent +speonk +speos +speotyto +sperable +speranza +sperate +sperber +sperblomn +sperdakos +spergula +spergularia +sperity +sperket +sperling +sperm +sperma +spermaceti +spermaduct +spermalist +spermaphyta +spermaphyte +spermaphytic +spermarium +spermary +spermashion +spermatazoa +spermatheca +spermathecal +spermatic +spermatid +spermatin +spermation +spermatism +spermatist +spermatitis +spermatium +spermative +spermatize +spermatocele +spermatocyst +spermatocyte +spermatogeny +spermatoid +spermatova +spermatovum +spermatoxin +spermatozoa +spermatozoal +spermatozoan +spermatozoic +spermatozoid +spermatozoon +spermaturia +spermic +spermicide +spermidine +spermiducal +spermiduct +spermigerous +spermine +spermism +spermist +spermoblast +spermocarp +spermocenter +spermoderm +spermoduct +spermogenous +spermogone +spermogonium +spermogonous +spermologer +spermologist +spermology +spermolysis +spermolytic +spermophile +spermophilus +spermophore +spermophyta +spermophyte +spermophytic +spermosphere +spermotheca +spermotoxin +spermous +spermoviduct +spermy +spero +speronara +speronaro +sperone +sperry +sperrylite +sperryville +spessartite +spessot +spet +spetch +spetrophoby +spetsialnost +spetsom +spettigue +speuchan +spever +spew +spewed +spewer +spewiness +spewing +spews +spewy +spex +spey +speyer +speypc +spezia +spezic +speziell +spezzaferri +sphacel +sphacelaria +sphacelate +sphacelated +sphacelation +sphacelia +sphacelial +sphacelism +sphaceloma +sphacelous +sphacelus +sphaeralcea +sphaerella +sphaeriaceae +sphaeriales +sphaeridia +sphaeridial +sphaeridium +sphaeriidae +sphaerite +sphaerium +sphaeroblast +sphaerobolus +sphaerolite +sphaerolitic +sphaeroma +sphaeromidae +sphaeropsis +sphaerosome +sphaerospore +sphaerotheca +sphaerotilus +sphagion +sphagnaceae +sphagnaceous +sphagnales +sphagnology +sphagnous +sphakiot +sphargis +sphcount +sphecid +sphecidae +sphecina +sphecoidea +spheges +sphegid +sphegidae +sphegoidea +sphendone +sphene +sphenethmoid +sphenic +sphenion +sphenisci +spheniscidae +spheniscine +spheniscus +sphenodon +sphenodont +sphenodontia +sphenogram +sphenography +sphenoid +sphenoidal +sphenoiditis +sphenolith +sphenomalar +sphenophorus +sphenopteris +sphenotic +sphenotribe +sphenotripsy +spherable +spheral +spherality +spheraster +spheration +sphere +sphered +sphereless +spheres +spherical +sphericality +spherically +sphericist +sphericity +sphericle +spherics +spheriform +spherify +sphering +spheroconic +spherograph +spheroidally +spheroidic +spheroidical +spheroidism +spheroidity +spheroidize +spheromere +spherometer +spherula +spherular +spherulate +spherulite +spherulitic +spherulitize +sphery +spheterize +sphex +sphexide +sphincter +sphincteral +sphincterate +sphincterial +sphincteric +sphindid +sphindidae +sphindus +sphingal +sphinges +sphingid +sphingidae +sphingiform +sphingine +sphingoid +sphingometer +sphingosine +sphingurinae +sphingurus +sphinx +sphinxes +sphinxian +sphinxlike +sphixe +sphoeroides +sphragide +sphragistic +sphragistics +sphygmia +sphygmic +sphygmodic +sphygmogram +sphygmograph +sphygmoid +sphygmology +sphygmometer +sphygmophone +sphygmoscope +sphygmus +sphyraena +sphyraenid +sphyraenidae +sphyraenoid +sphyrapicus +sphyrna +sphyrnidae +spial +spica +spical +spicant +spicaria +spicate +spicated +spiccato +spice +spiceable +spiceberry +spicecake +spiced +spiceful +spicehouse +spiceland +spiceless +spicelike +spicer +spicery +spices +spicewood +spicier +spiciest +spiciferous +spiciform +spicigerous +spicilege +spicilegium +spicily +spiciness +spicing +spick +spickard +spicket +spickle +spicknel +spicoli +spicose +spicosity +spicous +spicousness +spicula +spiculae +spicular +spiculate +spiculated +spiculation +spicule +spiculiform +spiculofiber +spiculose +spiculous +spiculum +spider +spiderbaby +spiderdisk +spidered +spiderflower +spidering +spiderish +spiderless +spiderlike +spiderling +spiderly +spiderman +spiders +spiderweb +spiderwebs +spiderwork +spidery +spidger +spied +spiedler +spiegeleisen +spiegelgass +spiegelman +spieker +spiel +spielberg +spieler +spielst +spielvogel +spier +spiers +spies +spiesser +spifee +spiff +spiffed +spiffily +spiffiness +spiffing +spiffy +spiflicate +spiflicated +spiflication +spifmo +spig +spigelia +spigeliaceae +spigelian +spiggot +spiggoty +spignet +spigot +spike +spikebill +spikebit +spiked +spikedness +spikefish +spikehorn +spikelet +spikelike +spikenard +spiker +spikes +spiketail +spiketop +spikeweed +spikewise +spikey +spikily +spikiness +spiking +spiky +spilanthes +spilchak +spile +spilehole +spiler +spilett +spileworm +spilikin +spiling +spilite +spilitic +spill +spillage +spillane +spilled +spiller +spillet +spilling +spillovers +spillproof +spills +spillville +spillway +spilly +spilogale +spiloma +spilosite +spils +spilt +spilth +spilus +spin +spina +spinacene +spinaceous +spinach +spinachlike +spinacia +spinae +spinage +spinal +spinales +spinalis +spinally +spinate +spinball +spindale +spinder +spindlage +spindle +spindleage +spindled +spindleful +spindlehead +spindlelegs +spindlelike +spindler +spindletail +spindlewise +spindlewood +spindleworm +spindlier +spindliest +spindliness +spindling +spindly +spindola +spindrift +spine +spinebill +spinebone +spined +spinedits +spinel +spineless +spinelessly +spinelet +spinelike +spinell +spinelle +spinelli +spiner +spiners +spines +spinescence +spinescent +spinet +spinetail +spinetti +spinflip +spingel +spingola +spinibulbar +spinicarpous +spinidentate +spinier +spiniest +spiniferous +spinifex +spiniform +spinifugal +spinigerous +spinigrade +spininess +spinipetal +spinitis +spink +spinks +spinman +spinnable +spinnell +spinner +spinners +spinnerstown +spinnerular +spinnerule +spinnery +spinney +spinning +spinningly +spinobulbar +spinocarpous +spinoglenoid +spinoid +spinoneural +spinose +spinosely +spinoseness +spinosity +spinotectal +spinous +spinousness +spinout +spinozism +spinozist +spinozistic +spinrad +spinrite +spins +spinsterdom +spinsterhood +spinsterial +spinsterish +spinsterism +spinsterlike +spinsterly +spinsterous +spinstership +spinstress +spintext +spintherism +spintho +spinulate +spinulation +spinule +spinulescent +spinuliform +spinulosa +spinulose +spinulosely +spinulous +spiny +spione +spionid +spionidae +spioniformia +spira +spiracle +spiracula +spiracular +spiraculate +spiraculum +spiraea +spiraeaceae +spiral +spirale +spiraled +spiraliform +spiraling +spiralism +spirality +spiralize +spiralled +spiralling +spirally +spiraloid +spirals +spiraltail +spiralwise +spiran +spirant +spirantal +spiranthes +spiranthic +spiranthy +spirantic +spirantize +spirants +spiraster +spirate +spirated +spiration +spirea +spired +spiregrass +spireless +spirelet +spireme +spirepole +spires +spireward +spirewise +spiricle +spiridakis +spiridon +spiridonia +spiridonov +spiridonovic +spirifer +spirifera +spiriferacea +spiriferid +spiriferidae +spiriferoid +spiriferous +spiriform +spirignath +spirilla +spirillaceae +spirillar +spirillosis +spirillum +spiring +spirit +spiritally +spiritdom +spirited +spiritedly +spiritedness +spiriter +spiritful +spiritfully +spirithood +spiriting +spiritism +spiritist +spiritistic +spiritize +spiritlake +spiritland +spiritleaf +spiritless +spiritlessly +spiritlike +spiritmonger +spiritoso +spiritous +spiritrompe +spirits +spiritsome +spiritu +spiritual +spiritualism +spiritualist +spirituality +spiritualize +spiritually +spirituals +spiritualty +spirituel +spirituosity +spirituous +spirituously +spiritus +spiritweed +spiritwood +spirity +spirivalve +spirket +spirketing +spirling +spirmonedes +spirochaeta +spirochaetal +spirochaete +spirochetal +spirochete +spirochetic +spirodela +spirogram +spirograph +spirographin +spirographis +spirogyra +spiroid +spirometer +spirometric +spirometry +spironema +spiropentane +spirophyton +spirorbis +spiros +spiroscope +spirosoma +spirous +spirt +spirtle +spirula +spirulate +spiry +spisak +spise +spissated +spissitude +spisula +spit +spitaels +spital +spitball +spitballer +spitbox +spitchcock +spite +spited +spitefully +spitefulness +spiteless +spiteproof +spites +spitfire +spitful +spithamai +spithame +spiti +spiting +spitish +spitler +spitpoison +spits +spitsbergen +spitscocked +spitstick +spitted +spittel +spitten +spitter +spitting +spittle +spittlefork +spittlestaff +spittoon +spitz +spitzenburg +spitzer +spitzers +spitzkop +spitznagel +spiv +spivery +spivey +spivy +spizella +spizjennim +spizzenergi +spjoetvoll +splachnaceae +splachnoid +splachnum +splacknuck +splainin +splairge +splanchnic +splash +splashboard +splashdown +splashed +splasher +splashes +splashier +splashiest +splashiness +splashing +splashingly +splashproof +splat +splatch +splatcher +splatchy +splathering +splatter +splatterdash +splatterdock +splattered +splatterer +splatters +splatterwork +splayed +splayer +splayfoot +splayfooted +splaymouth +splaymouthed +spleen +spleenful +spleenfully +spleenish +spleenishly +spleenless +spleeny +spleet +spleetnew +splenadenoma +splenalgia +splenalgic +splenalgy +splenatrophy +splenauxe +splenculus +splendacious +splendent +splendently +splender +splendescent +splendid +splendidly +splendidness +splendor +splendora +splendored +splendorous +splendour +splendrous +splenectama +splenectasis +splenectomy +splenectopia +splenectopy +splenelcosis +splenemia +spleneolus +splenetical +splenetive +splenial +splenic +splenical +splenicterus +spleniform +splenitis +splenitive +splenium +splenius +splenization +splenoblast +splenocele +splenocolic +splenocyte +splenodynia +splenography +splenohemia +splenoid +splenology +splenolymph +splenolysin +splenolysis +splenoma +splenomegaly +splenoncus +splenopathy +splenopexia +splenopexis +splenopexy +splenoptosia +splenoptosis +splenotomy +splenotoxin +splenulus +splenunculus +splet +spletni +spleuchan +splevin +splice +spliceable +spliced +splicer +splicers +splices +splicing +splicings +splifs +splin +splinder +splines +splineway +splintage +splinter +splinterd +splintered +splintering +splinterless +splinternew +splinters +splintwood +splinty +split +splitbeak +splitfinger +splitfruit +splitit +splitmouth +splitnew +splitp +splitplot +splits +splitsaw +splitscreen +splitt +splittail +splitted +splitten +splitter +splitters +splitting +splitvt +splitworm +splodge +splodgy +sploit +sploitable +splore +splosh +splotchier +splotchiest +splotchily +splotchiness +splother +splunge +splurged +splurgily +splurging +splurgy +splurt +spluther +splutterer +splutters +spngdhlm +spoach +spock +spocks +spode +spodiosite +spodium +spodogenic +spodogenous +spodomancy +spodomantic +spodumene +spoe +spoffish +spoffle +spofford +spoffy +spogel +spohn +spoil +spoilable +spoilation +spoiled +spoiler +spoilers +spoilest +spoileth +spoilfive +spoilful +spoiling +spoilless +spoilment +spoils +spoilsman +spoilsmonger +spoilsport +spoilt +spokan +spokane +spoke +spoked +spokeless +spoken +spokes +spokeshave +spokesmammal +spokesman +spokester +spokeswoman +spokeswomen +spokewise +spoky +spolar +spole +spolenski +spoletini +spolia +spoliarium +spoliary +spoliate +spoliation +spoliator +spoliatory +spolium +spomen +sponagle +sponchia +spondaic +spondaical +spondaize +spondean +spondee +spondiac +spondiaceae +spondias +spondulics +spondyl +spondylalgia +spondylic +spondylid +spondylidae +spondylioid +spondylitic +spondylitis +spondylium +spondylizema +spondylocace +spondyloid +spondylosis +spondylotomy +spondylous +spondylus +sponer +spong +sponge +spongecake +sponged +spongeful +spongeless +spongelet +spongelike +spongeous +spongeproof +sponger +spongers +sponges +spongewood +spongiae +spongian +spongicolous +spongida +spongier +spongiest +spongiferous +spongiform +spongiidae +spongilla +spongillid +spongillidae +spongilline +spongily +spongin +sponginblast +sponginess +sponging +spongingly +spongioblast +spongiocyte +spongiolin +spongiopilin +spongioplasm +spongiose +spongiosity +spongiozoa +spongiozoon +spongoblast +spongoid +spongology +spongophore +spongospora +spongy +sponsal +sponsalia +sponsibility +sponsible +sponsing +sponsion +sponsional +sponson +sponsor +sponsored +sponsorial +sponsoring +sponsors +sponsorship +sponspeck +spontaieous +spontaneous +spontoon +spoof +spoofed +spoofeduin +spoofer +spoofery +spoofing +spoofish +spoofit +spoofs +spooge +spooj +spook +spookdom +spookery +spookier +spookiest +spookily +spookiness +spookish +spookism +spookist +spookologist +spookology +spooks +spookshow +spooky +spool +spooled +spooler +spoolers +spoolful +spooling +spoollike +spools +spoolwood +spoom +spoon +spoonbill +spoondrift +spooned +spooner +spoonerism +spoonerisms +spooneyism +spooneyly +spooneyness +spoonflower +spoonful +spoonfuls +spoonhutch +spoonily +spooniness +spooning +spoonism +spoonless +spoonlike +spoonmaker +spoonmaking +spoonmeat +spoons +spoonways +spoonwood +spoony +spoonyism +spoor +spoorer +spoot +spor +sporabola +sporaceous +sporades +sporadial +sporadic +sporadical +sporadically +sporadicity +sporadism +sporal +sporange +sporangia +sporangial +sporangidium +sporangiform +sporangigia +sporangioid +sporangiola +sporangiole +sporangiolum +sporangite +sporangites +sporangium +sporation +sporaw +spore +spored +sporeformer +sporeforming +sporeling +spores +sporicide +sporid +sporidesm +sporidia +sporidial +sporidiole +sporidiolum +sporidium +sporiferous +sporing +sporiparity +sporiparous +sporoblast +sporobolus +sporocarp +sporocarpium +sporochnus +sporocyst +sporocystic +sporocystid +sporocyte +sporodochia +sporodochium +sporoduct +sporogenesis +sporogenic +sporogenous +sporogeny +sporogone +sporogonial +sporogonic +sporogonium +sporogony +sporoid +sporologist +sporomycosis +sporont +sporophore +sporophoric +sporophorous +sporophydium +sporophyll +sporophyllum +sporophyte +sporophytic +sporoplasm +sporosac +sporostegium +sporostrote +sporotrichum +sporous +sporozoa +sporozoal +sporozoan +sporozoic +sporozoite +sporozoon +sporran +sport +sportability +sportable +sportance +sportcard +sported +sporter +sportful +sportfully +sportfulness +sportier +sportiest +sportily +sportiness +sporting +sportingly +sportive +sportively +sportiveness +sportless +sportling +sportly +sportom +sports +sportscast +sportscaster +sportser +sportsman +sportsmanly +sportsome +sportster +sportswoman +sportswomen +sportula +sportulae +sportulary +sportule +sporular +sporulate +sporulation +sporule +sporuloid +sposato +sposh +sposhy +sposito +sposob +spot +spota +spotless +spotlessly +spotlessness +spotlight +spotlighter +spotlights +spotlike +spotrump +spots +spotsman +spotspark +spotswood +spotsylvania +spottable +spotted +spottedly +spottedness +spotteldy +spotter +spotters +spottier +spottiest +spottily +spottiness +spotting +spottiswoode +spottle +spotts +spottsville +spottswood +spoucher +spousage +spousal +spousally +spousals +spouse +spousehood +spouseless +spouses +spousy +spouted +spouter +spoutiness +spouting +spoutless +spoutlike +spoutman +spouts +spoutspring +spouty +spowama +spowart +sppf +sprache +sprachle +sprack +sprackish +sprackle +sprackly +sprackness +sprad +spraddle +spradin +spradlin +sprag +sprager +spragg +spragger +spraggins +spraggly +spraggs +sprague +spragueville +spraich +spraint +spraints +sprakers +sprang +sprangle +sprangly +sprank +spranklin +sprat +spratly +spratt +spratter +spratty +sprauchle +sprawl +sprawled +sprawler +sprawling +sprawlingly +sprawls +sprawly +spray +sprayberry +sprayboard +sprayed +sprayer +sprayey +sprayful +sprayfully +spraying +sprayless +spraylike +sprayproof +sprays +spread +spreadation +spreadboard +spreadeagled +spreaded +spreader +spreaders +spreadest +spreadeth +spreadhead +spreading +spreadingly +spreadings +spreadover +spreads +spreadsheet +spready +spreaghery +spreath +spreckle +spreda +sprees +spreeuw +sprekelia +spreng +sprengel +sprent +sprerris +spret +sprevak +sprew +sprewl +spridhogue +spried +sprier +spriest +sprig +sprigg +sprigged +sprigger +spriggins +spriggs +spriggy +sprightful +sprightfully +sprightlier +sprightliest +sprightlily +sprighty +sprigings +spriglet +sprigs +sprigtail +spring +springal +springald +springarbor +springbok +springboks +springboro +springbranch +springbrook +springbuck +springchurch +springcity +springcreek +springdale +springenwerk +springer +springerle +springers +springerton +springeth +springfield +springfinger +springfish +springford +springful +springgap +springgarden +springglen +springgreen +springgrove +springhaas +springhalt +springhead +springhill +springhope +springhouse +springier +springiest +springily +springiness +springing +springingly +springlake +springle +springless +springlet +springlick +springlike +springly +springmaker +springmaking +springmills +springmount +springnet +springpark +springport +springrun +springs +springson +springsteen +springthorpe +springtide +springtime +springtown +springtrap +springvale +springvalley +springview +springville +springwater +springwood +springworm +springwort +springwurzel +springy +sprink +sprinkle +sprinkled +sprinkler +sprinklered +sprinklers +sprinkles +sprinkleth +sprinkling +sprinrad +sprint +sprinted +sprinter +sprinters +sprinting +sprints +sprit +sprite +spritehood +sprites +spritsail +sprittail +sprittie +spritty +spritzed +spritzing +sproat +sprocket +sprod +sprogoe +sprogue +sproil +sprong +sprose +sprosi +sprosil +sprott +sprotte +sprottle +sproule +sprout +sproutage +sprouted +sprouter +sproutful +sprouting +sproutland +sproutling +sprouts +sprowsy +sprt +spruance +spruce +sprucecreek +spruced +sprucehead +sprucely +spruceness +sprucepine +sprucer +sprucery +sprucest +sprucify +sprucing +spruell +spruer +sprug +spruiker +spruill +spruit +sprules +sprung +sprunger +sprunny +sprunt +spruntly +spry +spryer +spryest +spryly +spryness +spss +spstu +spudded +spudder +spudding +spuddle +spuddy +spudler +spudsy +spue +spued +spuffle +spug +spuilyie +spuilzie +spuke +spumed +spumescence +spumescent +spumiferous +spumiform +spuming +spumone +spumose +spumous +spumy +spun +spunch +spung +spunge +spungen +spunkie +spunkier +spunkiest +spunkily +spunkiness +spunkless +spunky +spunny +spuntelis +spur +spurflower +spurgall +spurgeon +spurger +spurgewort +spuriae +spuriosity +spurious +spuriously +spuriousness +spurised +spurius +spurl +spurless +spurlet +spurlike +spurlin +spurling +spurlock +spurluous +spurmaker +spurmoney +spurned +spurner +spurning +spurnpoint +spurns +spurnwater +spurproof +spurr +spurred +spurrer +spurrial +spurrier +spurring +spurrings +spurrite +spurry +spurs +spurt +spurted +spurter +spurting +spurtive +spurtively +spurtle +spurts +spurway +spurwing +spurwinged +spurwort +sput +sputa +sputative +sputter +sputtered +sputterer +sputtering +sputteringly +sputtery +sputum +sputumary +sputumose +sputumous +spyboat +spybreak +spyder +spydom +spyer +spyfault +spyhole +spying +spyism +spyproof +spyros +spyship +spytower +sqafix +sqaverw +sqcc +sqeezer +sqib +sqiggle +sqlanywhere +sqlbase +sqlinst +sqlpassthru +sqlqrymode +sqlserver +sqoleq +sqrt +squab +squabash +squabasher +squabbed +squabbish +squabbled +squabbler +squabbles +squabbling +squabblingly +squabbly +squabby +squacco +squad +squaddy +squadrate +squadrism +squadrone +squadroned +squadrong +squadrons +squads +squaggs +squail +squailer +squalene +squali +squalida +squalidae +squalidity +squalidly +squalidness +squaliform +squaller +squallery +squalling +squallish +squalls +squally +squalm +squalodon +squalodont +squaloid +squaloidei +squalor +squalus +squam +squama +squamaceous +squamae +squamata +squamate +squamated +squamatine +squamation +squame +squamella +squamellate +squameous +squamiferous +squamiform +squamify +squamigerous +squamipennes +squamipinnes +squamish +squamoid +squamosa +squamosal +squamose +squamosely +squamoseness +squamosis +squamosity +squamously +squamousness +squamscot +squamula +squamulae +squamulate +squamulation +squamule +squamuliform +squamulose +squander +squanderer +squandering +squank +squantum +squarable +squard +square +squareage +squarecap +squared +squaredly +squareface +squarehead +squarelike +squarely +squareman +squaremouth +squareness +squarer +squares +squarest +squaretail +squarewise +squaring +squarish +squarishly +squark +squarrose +squarrosely +squarrous +squarrulose +squarson +squarsonry +squary +squash +squashed +squashedbug +squasher +squashier +squashiest +squashily +squashiness +squashing +squat +squatarola +squatarole +squatina +squatinid +squatinidae +squatinoid +squatinoidei +squatly +squatment +squatmore +squatness +squats +squattage +squatted +squatterdom +squatters +squattily +squattiness +squatting +squattingly +squattish +squattocracy +squatty +squatwise +squawberry +squawdom +squawfish +squawflower +squawked +squawker +squawkie +squawking +squawkingly +squawks +squawky +squawlake +squawmish +squawtits +squawvalley +squawweed +squaxon +squdge +squdgy +squeaked +squeaker +squeakery +squeakier +squeakiest +squeakily +squeakiness +squeaking +squeakingly +squeaklet +squeakproof +squeaks +squeakyish +squeald +squealed +squealer +squealing +squeals +squeam +squeamious +squeamishly +squeamous +squeamy +squeasy +squedunk +squeege +squeegeed +squeegeeing +squeezable +squeezably +squeeze +squeezed +squeezeman +squeezer +squeezers +squeezes +squeezing +squeezingly +squeezum +squeezy +squelcher +squelchily +squelchiness +squelching +squelchingly +squelchy +squench +squencher +squenchy +squerzin +squeteague +squib +squibber +squibbery +squibbish +squibbs +squiblet +squibling +squibs +squichy +squid +squiddle +squidge +squidgereen +squidgy +squier +squiffed +squiffer +squiffy +squiggle +squiggled +squiggling +squiggly +squilgee +squilgeer +squilla +squillagee +squillery +squillian +squillid +squillidae +squilloid +squilloidea +squimmidge +squin +squinance +squinancy +squinch +squinny +squinsy +squint +squinted +squinter +squinting +squintingly +squintly +squintness +squinty +squirage +squiralty +squirearch +squirearchal +squirearchy +squired +squiredom +squireen +squireless +squirelet +squirelike +squireling +squirely +squireocracy +squires +squireship +squiress +squiret +squirewise +squiring +squirish +squirism +squirk +squirm +squirmed +squirmier +squirmiest +squirminess +squirming +squirmingly +squirms +squirmy +squirr +squirrel +squirreled +squirrelfish +squirrelian +squirreline +squirreling +squirrelish +squirrelled +squirrellike +squirrelling +squirrelly +squirrels +squirreltail +squirrely +squirt +squirted +squirter +squirtiness +squirting +squirtingly +squirtish +squirty +squish +squished +squishing +squit +squitch +squitchy +squito +squitter +squizzato +squliq +squonk +squoze +squush +squushy +sqwarcx +sqwish +sraddha +sradri +srair +sramana +sranan +srarhna +srav +sravni +srazu +srba +srbija +srcasm +srcs +srecu +sredi +sredstvom +sreedhar +sreehari +sreela +srem +sremnong +srfsubic +srfyoko +srichoomsin +sridaran +sridhar +sriedi +srif +srihari +srikakulam +srikantan +srikrishna +srinagar +srinagaria +srinath +srinivas +srinivasa +srinivasan +sripatimakul +sriranjani +srisai +srisalai +srisomsak +srithammerat +sriv +srivastava +srivilai +sriyani +srlv +srmjpeg +sroczynski +srok +srsp +srtt +srubu +sruti +ssahamale +ssbarcode +sscanf +sscnet +ssdd +ssdf +ssdh +ssdp +ssdpa +ssec +ssert +ssga +sshh +sshhh +ssia +ssion +ssleay +ssort +sspo +ssrc +sssd +ssss +sssscissors +sssss +ssssss +sssssss +ssssssss +sstep +ssthresh +sstor +ssuga +ssurf +ssus +ssvs +ssyx +staab +staak +staakt +staalsen +staats +staatsburg +staatsrat +stab +stabbed +stabber +stabbing +stabbingly +stabile +stabiles +stabilify +stabiliment +stabiliser +stabilist +stabilitate +stabilities +stability +stabilizator +stabilize +stabilized +stabilizer +stabilizers +stabilizes +stabilizing +stable +stableboy +stableboys +stabled +stableful +stablein +stablekeeper +stablelike +stableness +stabler +stables +stablest +stablestand +stabletop +stableward +stablewards +stabling +stablish +stablished +stablisheth +stablishment +stably +staboy +stabproof +stabs +stabulate +stabulation +stabwort +stacatto +staccato +stacco +stace +stacee +stacey +stach +stacher +stachowiak +stachydrin +stachydrine +stachyose +stachys +stachyurus +staci +stacia +stacie +stack +stackage +stacked +stacken +stackencloud +stacker +stackerlee +stackers +stackfreed +stackful +stackgarth +stackhousia +stacking +stackless +stackman +stackpole +stacks +stacksize +stackstand +stackup +stackyard +stacquet +stacte +stactometer +stacy +stacyville +stad +stadbauer +stadda +staddle +staddling +stade +stadelmeier +staden +stader +stadholder +stadhouse +stadia +stadic +stadimeter +stadiometer +stadion +stadium +stadlen +stadler +stado +stadt +stadtfest +stadtmueller +staefel +staehle +staelin +staerker +stafani +stafeta +stafette +staff +staffan +staffed +staffeld +staffelite +staffer +staffers +staffing +staffless +staffman +stafford +staffs +stag +stagbush +stage +stageability +stageable +stageably +stagecoaches +stagecraft +staged +stagedancing +stagedom +stagehand +stagehands +stagehouse +stageland +stagelike +stageman +stageplay +stager +stagers +stagery +stages +stagese +stagewise +stageworthy +stagewright +stagg +staggard +staggart +staggarth +stagger +staggerbush +staggered +staggerer +staggereth +staggering +staggeringly +staggers +staggerweed +staggerwort +staggery +staggie +staggs +staggy +staghead +staghorn +staghound +staghunt +staghunter +staghunting +stagiary +stagily +staginess +staging +stagirite +stagiritic +staglike +stagmier +stagmometer +stagnance +stagnancy +stagnantly +stagnantness +stagnated +stagnating +stagnation +stagnatory +stagnature +stagnicolous +stagnize +stagnum +stagonospora +stags +stagskin +stagworm +stah +stahinsher +stahl +stahlhelm +stahlhelmer +stahlhelmist +stahlian +stahlianism +stahlism +stahlstown +stahly +stahr +staia +staiano +staidly +staidness +staier +stain +stainability +stainable +stainably +stainback +stained +stainer +staines +stainful +stainierite +staining +stainless +stainlessly +stainproof +stains +stainton +staio +stair +stairbeak +stairbuilder +staircase +staircases +staired +stairhead +stairless +stairlike +stairs +stairstep +stairway +stairways +stairwise +stairwork +stairy +staith +staithman +staiver +stake +staked +stakehead +stakeholder +stakemaster +staker +stakerope +stakes +stakhanovism +stakhanovite +staking +stal +stalactic +stalactical +stalactiform +stalactital +stalactited +stalactitic +stalag +stalagamite +stalagma +stalagmite +stalagmitic +stalagtite +stalakdama +stalburg +stale +staled +stalely +stalemated +stalemating +staleness +staler +stalest +staley +stalhein +stali +stalin +staling +stalingrad +stalinism +stalinist +stalinite +stalinska +stalk +stalkable +stalked +stalker +stalkily +stalkiness +stalking +stalkingly +stalkless +stalklet +stalklike +stalko +stalks +stalky +stall +stallabrass +stallage +stallar +stallard +stallboard +stallcup +stalled +stallenger +staller +stallership +stalling +stallings +stallion +stallionize +stallions +stallman +stallment +stallone +stalls +stalmaster +stalter +stalwartism +stalwartize +stalwartly +stalwartness +stam +stamatis +stambaugh +stamberger +stambha +stamboliski +stamboul +stambouli +stamboulie +stambouline +stamened +stamens +stamford +stamin +stamina +staminal +stamineal +stamineous +staminode +staminodium +staminody +stammel +stammer +stammered +stammerer +stammerers +stammering +stammeringly +stammers +stammerwort +stamnos +stamos +stamp +stampable +stampage +stampe +stamped +stampedable +stampede +stampeded +stampeder +stampedes +stampeding +stampedingly +stampee +stamper +stampers +stampery +stampfl +stamphead +stampian +stamping +stample +stampless +stampley +stampman +stamps +stampsman +stampweed +stan +stanaford +stanberry +stance +stances +stanchable +stanched +stanchel +stancheled +stancher +stanchest +stanchfield +stanchless +stanchly +stanchness +stancic +stanciu +stanczak +stand +standage +standalone +standard +standardbred +standardcity +standardised +standardize +standardized +standardizer +standardizes +standardly +standards +standardwise +standart +standback +standbybys +standee +standel +standelwelks +standelwort +standen +stander +standerat +standergrass +standerwort +standest +standeth +standfast +standford +standiferd +standiford +standin +standing +standings +standish +standlee +standler +standoffish +standout +standpat +standpatism +standpatter +standpipe +standpoint +standpoints +standpost +standrd +standrin +stands +standstill +stane +stanechat +stanek +stanely +stanesh +stanet +stanfield +stanford +stanfords +stang +stanger +stangeria +stangertz +stangl +stanhopea +stanieff +staniland +stanine +stanislas +stanislaus +stanislav +stanislaw +stanislawa +stanitsin +stanjen +stank +stanke +stankie +stanknowski +stankova +stankovich +stanlaw +stanley +stanleys +stanleytown +stanly +stann +stannane +stannard +stannary +stannate +stannator +stannel +stanner +stannery +stannes +stannide +stannie +stanniferous +stannite +stanno +stannotype +stannoxyl +stannum +stannyl +stanotte +stanrds +stansbury +stansby +stansell +stansfield +stantley +stanton +stantonsburg +stantonville +stantonys +stantz +stanulis +stanville +stanwood +stanwyck +stanwyk +stanzaed +stanzaic +stanzaical +stanzaically +stanzas +stanze +stap +stapanek +stapedectomy +stapedial +stapediform +stapedius +stapelia +stapenhorst +stapers +stapes +staph +staphgp +staphisagria +staphyle +staphylea +staphyledema +staphylic +staphyline +staphylinic +staphylinid +staphylinus +staphylion +staphylitis +staphyloma +staphyloncus +staphylosis +staphylotome +staphylotomy +staple +stapled +staplehurst +stapler +staples +staplewise +stapley +stapling +stapp +staquet +star +starace +starbase +starblind +starbloom +starboard +starbolins +starbright +starbuck +starbuckle +starbulletin +starbursts +starch +starchaser +starchboard +starched +starchedly +starchedness +starcher +starches +starchflower +starchily +starchiness +starchless +starchlike +starchly +starchmaker +starchmaking +starchman +starchness +starchroot +starchworks +starchwort +starchy +starcic +starcity +starcke +starcraft +stardates +stardock +stardogg +stardust +stare +stared +staree +starek +starenios +starer +stares +starets +starface +starfighter +starfish +starfleet +starflower +starford +starfreq +starfruit +starful +stargazed +stargazer +stargazers +stargazing +starger +stargrove +staright +starina +staring +staringly +starjunction +stark +starkauskas +starkblind +starkcity +starke +starkebaum +starkeeper +starken +starkes +starkiller +starkly +starkness +starks +starksboro +starkville +starkweather +starky +starla +starlab +starlake +starlene +starless +starlessly +starlessness +starlet +starletta +starlight +starlighted +starlights +starlike +starlin +starling +starlit +starlite +starliters +starlitten +starloff +starma +starman +starmaster +starmer +starmonger +starn +starnel +starnes +starnie +starnose +staroffice +staromodnaia +starost +starosta +starosty +starowicz +starowieyski +starprairie +starr +starragetta +starred +starrelt +starrett +starrier +starriest +starrigger +starrily +starriness +starring +starringly +starrling +starrucca +starry +stars +starscape +starsdps +starseed +starshake +starshine +starship +starships +starshoot +starshot +starstone +starstroke +starstruck +start +startannery +started +startend +starter +starters +startest +startex +startful +startfulness +starthroat +startiing +starting +startingly +startingno +startish +startle +startled +startler +startles +startling +startlingly +startlish +startly +startor +startrail +startrek +starts +startsand +startspan +startup +startups +startx +starty +staruiu +starvation +starveacre +starved +starvedly +starveling +starver +starves +starving +starvy +starward +starwars +starwise +starworld +starworm +starwort +stary +starza +starzman +stas +stasa +stasaski +stascha +stases +stash +stasha +stashed +stashie +stasia +stasiak +stasidion +stasimetric +stasimon +stasimorphy +stasio +stasiphobia +stasney +stason +stassfurtite +stassino +stastny +stasyszyn +stat +statable +statal +statan +statans +statant +statcat +statcoulomb +statd +state +statecenter +statecode +statecollege +statecraft +stated +statedly +statefarm +stateful +statefully +statefulness +statehood +statehouse +stateira +stateless +statelet +statelich +statelier +stateliest +statelily +stateline +stateliness +stately +statement +statements +statemonger +staten +statenisland +statenville +stateof +stateowned +statep +statepark +statequake +stateroad +staters +states +statesboro +statesboy +stateside +statesider +statesin +statesmanese +statesmanly +statesmonger +stateson +statesville +stateswoman +stateway +statfarad +statham +stathis +stathmoi +stathmos +stathopoulou +static +statical +statically +statice +staticky +staticproof +statics +statile +stating +station +stational +stationarily +stationary +stationed +stationer +stationery +stationing +stationman +stations +statis +statiscope +statism +statist +statistic +statistical +statisticize +statistics +statistology +statit +statitistic +stative +statler +statmaker +stato +statoblast +statocracy +statocyst +statolatry +statolith +statolithic +statometer +staton +statorhab +statoscope +statospore +statpac +stats +stattsmills +statuaries +statuarism +statuarist +statue +statuecraft +statued +statueless +statuelike +statues +statuesque +statuesquely +stature +statured +status +statusbar +statusdict +statuses +statutable +statutably +statutary +statute +statutes +statutorily +statutory +statuvolent +statuvolic +statvolt +staucher +stauk +staumer +staun +staunchable +staunchest +staunchly +staunchness +staup +staupitz +stauracin +stauraxonia +stauraxonial +staurion +staurolatry +staurolite +staurolitic +staurology +stauropegial +stauropegion +stauroscope +stauroscopic +staurotide +stauter +stavanger +stave +staveable +staved +staveless +staver +stavers +staverwort +staves +stavesacre +stavewise +stavewood +stavig +staving +staviska +stavos +stavrite +stavro +stavropolis +stavros +staw +stawell +stawn +staxis +stay +stayable +stayathome +stayed +stayer +stayeth +staying +staylace +stayle +stayless +staylessness +staymaker +staymaking +staynil +stayon +stays +staysail +stayship +stayton +stayun +stazak +stbenets +stby +stcdwc +stchi +stchley +stclair +stcolumbans +stctest +stdaux +stdavids +stdc +stddmp +stderr +stdin +stdio +stdnumeric +stdout +stdprn +stds +stead +steadfast +steadfastly +steadied +steadier +steadies +steadiest +steadily +steadiment +steadiness +steading +steadman +steads +steady +steadying +steadyingly +steadyish +steadystate +steak +steaks +steal +stealability +stealable +stealage +steale +stealed +stealer +stealers +stealeth +stealh +stealin +stealing +stealingly +steals +stealth +stealthed +stealthful +stealthfully +stealthier +stealthiest +stealthily +stealthiness +stealthless +stealthlike +stealthwise +stealthy +stealy +steam +steamboat +steamboating +steamboatman +steamboats +steamburg +steamcar +steamed +steamer +steamerful +steamerless +steamerload +steamers +steamily +steaminess +steaming +steamless +steamlike +steampipe +steamproof +steamroller +steams +steamship +steamships +steamtight +stean +steaning +steapsin +steariform +stearin +stearns +stearone +stearoptene +stearrhea +stearyl +steatin +steatite +steatitic +steatocele +steatocyst +steatogenous +steatolysis +steatolytic +steatoma +steatomatous +steatopathic +steatopyga +steatopygia +steatopygic +steatopygous +steatornis +steatorrhea +steatosis +stebbens +stebbings +stebbins +stech +stechados +steckel +steckler +steckley +steckling +steddle +stedfast +stedfastly +stedfastness +stedinger +stedl +stedley +stedman +stedtfeld +steece +steed +steedan +steede +steedless +steedlike +steedman +steek +steekkan +steekkannen +steel +steelboy +steele +steelecity +steeled +steeler +steelers +steeleville +steelhead +steelhearted +steelier +steeliest +steelify +steeliness +steeling +steelless +steellike +steelmaker +steelmaking +steelman +steelplate +steelproof +steelrolling +steels +steelsmith +steelton +steelville +steelware +steelwork +steelworker +steelworks +steely +steelyard +steen +steenboc +steenbock +steenbok +steenboks +steenburg +steenburgen +steene +steenie +steenking +steenkirk +steens +steenth +steep +steepdown +steeped +steepening +steeper +steepest +steepfalls +steepgrass +steeping +steepish +steepled +steeplejack +steepleless +steeplelike +steeples +steepletop +steeply +steepness +steeps +steepweed +steepwort +steepy +steer +steerability +steerable +steerage +steerageway +steere +steered +steerer +steerforth +steering +steeringly +steerling +steerman +steermanship +steermate +steers +steersman +steersmen +steerswoman +steet +steevely +steever +steeves +steeving +stef +stefa +stefan +stefanac +stefane +stefanelli +stefani +stefania +stefanie +stefanini +stefano +stefanos +stefanov +stefanowski +stefant +steff +steffa +steffan +steffane +steffano +steffen +steffens +steffenville +steffes +steffey +steffi +steffie +stefford +steffy +steg +stegall +steganogram +steganopod +steganopodan +steganopodes +steganos +steger +stegers +stegg +stegger +stegman +stegmueller +stegnosis +stegnotic +stego +stegocarpous +stegodon +stegodont +stegodontine +stegomus +stegomyia +stegosaur +stegosauria +stegosaurian +stegosauroid +stehekin +stehli +steid +steiermark +steiert +steigel +steiger +steigh +steiher +steimaroua +steimarova +steina +steinach +steinar +steinart +steinauer +steinbach +steinbacher +steinbaum +steinbeck +steinberg +steinberger +steinbok +steinboks +steinbrecher +steinbring +steinbrueck +steindorf +steindorff +steinerian +steinert +steinfeld +steinful +steingrimur +steinhart +steinhatchee +steinhauer +steinhorst +steinhurst +steinke +steinkirk +steinkraus +steinmann +steinmetz +steinmueller +steinrueck +steinrule +steins +steip +steironema +stejskal +stekan +stekelenburg +steklasa +stekol +stela +stelae +stelai +stelar +stelcner +stele +stelio +stelios +stelita +stelizabeth +stell +stella +stellafane +stellan +stellar +stellaria +stellary +stellate +stellated +stellately +stellature +steller +stelleridean +stellerine +stelliferous +stelliform +stellify +stelling +stellini +stellionate +stelliscript +stellitano +stellite +stellrecht +stellular +stellularly +stellulate +stellwag +stelography +stem +stema +stemhead +stemless +stemlet +stemlike +stemma +stemmata +stemmatiform +stemmatous +stemmed +stemmen +stemmer +stemmery +stemming +stemmler +stemmy +stemona +stemonaceae +stemonaceous +stemple +stempost +stems +stemson +stemwards +stemware +sten +stenar +stenborg +stench +stenchel +stenches +stenchful +stenching +stenchion +stenchy +stenciled +stenciler +stenciling +stencilled +stencilling +stencilmaker +stencils +stend +stendal +stender +stenerson +steng +stengah +stengel +stenger +stenholm +steni +stenion +stennes +stennett +stenning +steno +stenobathic +stenobenthic +stenobregma +stenocardia +stenocardiac +stenocarpus +stenocephaly +stenochoria +stenochrome +stenochromy +stenocranial +stenofiber +stenog +stenogastric +stenogastry +stenoglossa +stenograph +stenographic +stenohaline +stenometer +stenopaic +stenophile +stenophragma +stenosed +stenosis +stenosphere +stenostomia +stenotaphrum +stenothermal +stenothorax +stenotic +stenotypic +stenotypist +stenotypy +stenson +stensrud +stent +stenter +stenterer +stenton +stentor +stentorian +stentorianly +stentorine +stentorious +stentoronic +stentrel +steny +step +stepan +stepanek +stepanov +stepanova +stepanowicz +stepaunt +stepbairn +stepboundary +stepbrother +stepbrothers +stepchildren +stepchuk +stepdame +stepdaughter +stepfather +stepfatherly +stepgrandson +steph +stepha +stephan +stephana +stephanas +stephane +stephani +stephania +stephanial +stephanian +stephanic +stephanie +stephanion +stephanite +stephannie +stephano +stephanome +stephanos +stephans +stephanurus +stephany +stephen +stephenie +stephens +stephensburg +stephenscity +stephenson +stephensport +stephentown +stephenville +stephi +stephie +stephine +stepin +stepladder +stepler +stepless +steplike +stepminnie +stepmotherly +stepmothers +stepnephew +stepniece +stepp +stepparent +steppat +stepped +steppedup +steppeland +steppenwolf +stepper +steppes +steppeth +stepping +steppling +steprock +steps +stepsire +stepsister +stepstone +stepstrategy +stept +steptable +steptimer +steptoe +stepuhu +stepuncle +stepway +stepwise +steraming +steranka +stercobilin +stercolin +stercophagic +stercoral +stercoranism +stercoranist +stercorarius +stercorary +stercorate +stercoration +stercorean +stercoremia +stercoreous +stercorist +stercorite +stercorol +stercorous +stercovorous +sterculia +sterculiad +stercyk +sterczyk +stere +stereagnosis +sterelmintha +stereo +stereobate +stereobatic +stereocamera +stereochemic +stereochrome +stereochromy +stereognosis +stereogram +stereograms +stereograph +stereoisomer +stereology +stereomatrix +stereome +stereomer +stereomeric +stereomerism +stereometer +stereometric +stereometry +stereoneural +stereophonic +stereophony +stereoplasm +stereoplasma +stereopsis +stereopticon +stereos +stereoscope +stereoscopic +stereoskopia +stereostatic +stereotactic +stereotaxis +stereotomic +stereotomist +stereotomy +stereotropic +stereotype +stereotyped +stereotyper +stereotypery +stereotypes +stereotypic +stereotyping +stereotypist +stereotypy +sterescu +stereum +stergios +stergo +steri +sterian +steric +sterically +sterics +steride +sterigma +sterigmata +sterigmatic +steril +sterile +sterilely +sterileness +sterilisable +sterility +sterilizable +sterilize +sterilized +sterilizer +sterilizes +sterilizing +sterin +sterk +sterke +sterland +sterler +sterlet +sterlin +sterling +sterlingcity +sterlingly +sterlingness +sterlington +stern +sterna +sternad +sternage +sternalis +sternberg +sternberga +sternbergite +sterncastle +sterndale +sterne +sterneber +sternebra +sternebrae +sternebral +sterned +sterner +sternhagen +sternhill +sternikova +sterninae +sternite +sternitic +sternly +sternman +sternmost +sternness +sternocostal +sternofacial +sternohyoid +sternomancy +sternonuchal +sternothere +sternotherus +sternotribe +sternpost +sternroyd +sterns +sternson +sternums +sternutation +sternutative +sternutator +sternutatory +sternward +sternway +sternways +sternwood +sternworks +stero +steroids +sterol +sterope +sterpin +sterrett +sterrinck +sterroll +stert +stertor +stertorious +stertorous +stertorously +sterve +stesha +steshenko +stesichorean +steski +stest +stet +stetch +stethograph +stethometer +stethometric +stethometry +stethophone +stethoscope +stethoscopic +stethoscopy +stethospasm +stetner +stetson +stetsonville +stett +stetted +stetter +stettin +stetting +stettler +stettner +stetz +steubenville +steuer +steuwe +stevan +stevana +stevanovic +steve +stevedorage +stevedores +stevedoring +steveedberg +stevel +steven +stevena +stevenin +stevens +stevensburg +stevensen +stevenson +stevensonian +stevenspoint +stevenstech +stevensville +stevers +stevia +stevie +stevinson +stevo +stew +stewable +steward +stewardess +stewardly +stewardry +stewards +stewardship +stewardson +stewars +stewart +stewartia +stewartry +stewartstown +stewartville +stewarty +stewed +stewpan +stewpond +stewpot +stews +stewwart +stewy +stey +steyn +steyne +steyner +steyrer +stgeorge +sthe +sthelena +sthenelos +sthenia +sthenic +sthenochire +stiarkos +stib +stibbler +stibblerig +stiberg +stibethyl +stibial +stibialism +stibiate +stibiated +stibic +stibiconite +stibine +stibious +stibium +stibnite +stibonium +sticcado +stich +sticharion +sticheron +stichic +stichically +stichid +stichidium +stichomancy +stichometric +stichometry +stichomythic +stichomythy +stick +stickability +stickable +stickadore +stickadove +stickage +stickball +sticked +stickel +sticken +sticker +stickers +sticketh +stickfast +stickful +stickier +stickiest +stickily +stickiness +sticking +stickit +stickits +stickland +stickleaf +stickler +stickless +sticklike +stickling +stickly +stickney +sticks +stickseed +stickslip +sticktail +stickum +stickup +stickwater +stickweed +stickwick +stickwork +sticky +stickybates +stickybear +sticta +stictaceae +stictidaceae +stictiform +stictis +stid +stidder +stiddy +stidham +stied +stief +stiefel +stieken +stieltjes +stiener +stieng +stiengchrau +stiepl +stier +stiers +sties +stife +stiff +stiffbacked +stiffened +stiffener +stiffening +stiffens +stiffer +stiffest +stiffhearted +stiffish +stiffleg +stifflike +stiffly +stiffneck +stiffnecked +stiffness +stiffrump +stiffs +stifftail +stiffy +stifle +stifled +stifledly +stifler +stifles +stifling +stiflingly +stig +stigand +stigers +stigler +stigliano +stiglitz +stigmai +stigmal +stigmaria +stigmarian +stigmarioid +stigmas +stigmasterol +stigmata +stigmatal +stigmatic +stigmatical +stigmatiform +stigmatism +stigmatist +stigmatize +stigmatized +stigmatizer +stigmatizing +stigmatoid +stigmatose +stigme +stigmeology +stigmonose +stigonomancy +stikine +stilbaceae +stilbella +stilbene +stilbestrol +stilbite +stilboestrol +stilbum +stile +stileman +stiles +stilesville +stilet +stiletto +stilettoes +stilettolike +stilettos +stilgar +stilinsky +still +stillage +stillatory +stillborn +stillcurrent +stilled +stiller +stillest +stilleth +stillhouse +stillhunt +stillicide +stillicidium +stillicidum +stillier +stilliest +stilliform +stilling +stillingia +stillion +stillish +stillman +stillmore +stillness +stillon +stillpond +stillriver +stillroom +stills +stillstand +stillunusual +stillwater +stillwell +stilly +stilophora +stiltbird +stilted +stiltedly +stiltedness +stilter +stiltify +stiltiness +stiltish +stiltlike +stilton +stilts +stiltskin +stilty +stilwell +stilya +stim +stime +stimler +stimme +stimpart +stimpert +stimpson +stimson +stimulable +stimulance +stimulancy +stimulants +stimulate +stimulated +stimulater +stimulates +stimulating +stimulation +stimulations +stimulative +stimulator +stimulatress +stimulatrix +stimuli +stimulus +stimy +stin +stina +stine +stinehart +stinesville +sting +stingaree +stingareeing +stingbull +stinge +stinger +stingeth +stingfish +stingier +stingiest +stingily +stinginess +stinging +stingingly +stingingness +stingless +stingo +stingproof +stingray +stings +stingtail +stingy +stink +stinkard +stinkardly +stinkball +stinkberry +stinkbird +stinkbug +stinkbush +stinkdamp +stinker +stinkers +stinketh +stinkfinger +stinkhorn +stinking +stinkingly +stinkingness +stinks +stinkstone +stinkweed +stinkwood +stinkwort +stinner +stinnett +stinson +stinsonbeach +stinsonlake +stint +stinted +stintedly +stintedness +stinter +stintingly +stintless +stinton +stints +stinty +stinziani +stion +stionic +stipa +stipe +stiped +stipel +stipellate +stipend +stipendial +stipendiary +stipendiate +stipendium +stipendless +stipends +stipes +stipiform +stipitate +stipitiform +stipiture +stipiturus +stippen +stippled +stippler +stippling +stipply +stipula +stipulable +stipulaceous +stipulae +stipular +stipulary +stipulate +stipulated +stipulates +stipulating +stipulation +stipulations +stipulator +stipulatory +stipule +stipuled +stipuliform +stir +stirabout +stirfried +stirjanov +stirk +stirless +stirlessly +stirlessness +stirling +stirlingcity +stirner +stirp +stirps +stirra +stirrable +stirrage +stirrat +stirred +stirrer +stirrers +stirreth +stirrett +stirring +stirringly +stirrings +stirrup +stirrupless +stirruplike +stirrups +stirrupwise +stirs +stirzaker +stitch +stitchbird +stitchdown +stitched +stitcher +stitchery +stitches +stitching +stitchlike +stitchwhile +stitchwork +stitchwort +stite +stites +stith +stithy +stitt +stitting +stittville +stitzer +stiva +stive +stiver +stivolt +stivy +stix +stizolobium +stjames +stjernswaerd +stjohn +stjohns +stkate +stketcher +stlawrence +stlouis +stma +stmarys +stmarysca +stmarytx +stmichael +stoa +stoach +stoat +stoater +stoatgobbler +stoats +stob +stobbe +stobbeleer +stobrawa +stocah +stoccado +stoccata +stochastic +stochastical +stochastics +stock +stockaded +stockades +stockading +stockannet +stockard +stockbow +stockbreeder +stockbridge +stockbroking +stockburn +stockcar +stockcontrol +stockdale +stocked +stockel +stocken +stocker +stockers +stockertown +stockett +stockfather +stockfield +stockfish +stockholders +stockholding +stockholm +stockholms +stockhouse +stockier +stockiest +stockily +stockiness +stockinet +stocking +stockinger +stockingless +stockings +stockish +stockishly +stockishness +stockjobber +stockjobbery +stockjobbing +stockjudging +stockkeeper +stockkeeping +stockland +stockless +stocklike +stockmaker +stockmaking +stockman +stockmann +stockmen +stockowner +stockpile +stockpiled +stockpiling +stockport +stockpot +stockproof +stockrider +stockriding +stocks +stockstone +stocktaker +stocktaking +stockton +stockville +stockwell +stockwork +stockwright +stocky +stockyard +stod +stodart +stoddard +stodden +stodge +stodger +stodgery +stodgier +stodgiest +stodgily +stodginess +stodgy +stodinni +stoechas +stoeckel +stoeket +stoeng +stoep +stoermer +stoessel +stof +stofel +stoff +stoffels +stog +stoga +stogie +stogies +stogumber +stogy +stohr +stoiber +stoica +stoical +stoically +stoicalness +stoicharion +stoichiology +stoichkov +stoicism +stoicks +stoifi +stoila +stoit +stojan +stojkovic +stokavci +stokavian +stokavski +stoked +stokehold +stokehole +stoker +stokerless +stokes +stokesdale +stokesia +stokesite +stoking +stokker +stokoe +stokoski +stokowski +stol +stola +stolae +stolaf +stolarsky +stolberg +stole +stoled +stolelike +stolen +stolenly +stolenness +stolenwise +stoler +stoles +stoleti +stolewise +stolfo +stolher +stolidity +stolidly +stolidness +stoline +stolist +stolkjaerre +stoll +stollen +stoller +stollings +stolls +stolon +stolonate +stolonlike +stolper +stols +stoltz +stolwijk +stolyp +stolz +stolzenberg +stolzite +stom +stoma +stomacace +stomach +stomachable +stomachache +stomachal +stomached +stomacher +stomaches +stomachful +stomachfully +stomachic +stomaching +stomachless +stomachs +stomachy +stomapod +stomapoda +stomapodous +stomata +stomatal +stomatalgia +stomate +stomatic +stomatitic +stomatitis +stomatocace +stomatoda +stomatodaeal +stomatodaeum +stomatode +stomatodeum +stomatodynia +stomatograph +stomatolalia +stomatologic +stomatology +stomatomenia +stomatomy +stomatopathy +stomatophora +stomatopod +stomatopoda +stomatoscope +stomatoscopy +stomatose +stomatotomy +stomatous +stomium +stomm +stomodaea +stomodaeal +stomodaeum +stomoisia +stomoxys +stomp +stomped +stomper +ston +stona +stonable +stond +stone +stoneable +stonebird +stonebiter +stoneblind +stoneboat +stoneboro +stonebow +stonebrash +stonebreak +stonebridge +stonebrood +stonecast +stonechat +stonecity +stonecolored +stonecraft +stonecreek +stonecutter +stonecutters +stonecutting +stoned +stonedamp +stonee +stonefish +stonefolk +stonefort +stonega +stonegale +stonegall +stoneham +stonehand +stoneharbor +stonehatch +stonehead +stonehearted +stonehenge +stonehill +stonehouse +stonekeep +stonekiller +stonelake +stonelayer +stonelaying +stoneless +stonelike +stoneman +stonemason +stonemasonry +stonemasons +stonen +stonepecker +stoner +stoneridge +stoneroot +stonerowe +stones +stoneseed +stoneshot +stonesmatch +stonesmich +stonesmitch +stonesmith +stonest +stonestorm +stoneville +stonewall +stonewaller +stonewally +stoneweed +stonewise +stonewood +stonework +stoneworker +stoney +stoneyard +stoneyfork +stong +stonhope +stonied +stonier +stoniest +stonifiable +stonify +stonily +stoniness +stoning +stonington +stonish +stonishment +stonker +stonos +stonton +stony +stonybottom +stonybrook +stonycreek +stonyford +stonyhearted +stonypoint +stonyridge +stonyrun +stood +stooded +stooden +stoodest +stoodley +stoof +stooged +stooges +stooging +stook +stooke +stooker +stookie +stool +stoolball +stoolie +stoollike +stools +stoon +stoond +stoop +stooped +stooper +stoopeth +stoopgallant +stoopid +stooping +stoopingly +stoops +stoors +stoory +stoot +stoothing +stop +stopa +stopback +stopblock +stopboard +stopcock +stopcocks +stope +stoped +stoper +stophound +stoping +stopless +stoplessness +stoplight +stoploss +stoppa +stoppability +stoppable +stoppably +stoppage +stopped +stopper +stopperless +stoppers +stoppeth +stoppeur +stoppidge +stopping +stoppingrule +stoppit +stopple +stops +stopwatch +stopwater +stopwork +stora +storable +storace +storage +storages +storax +storch +storchal +storck +storden +store +storecloset +stored +storeen +storefront +storefronts +storehouse +storehouses +storekeeper +storekeeping +storeman +storer +storeria +storeroom +stores +storeship +storesman +storey +storeys +storgaard +storge +storia +storiate +storiation +storied +storier +stories +storiette +storify +storing +storingen +storiologist +storiology +stork +storken +storkish +storklike +storkling +storks +storkwise +storm +stormable +stormberg +stormbird +stormbringer +stormcock +stormcrow +stormed +stormer +stormful +stormfully +stormfulness +stormi +stormie +stormier +stormiest +stormily +storminess +storming +stormingly +stormish +stormlake +stormless +stormlike +stormproof +storms +stormtrooper +stormvarsel +stormville +stormward +stormwind +stormwindows +stormwise +stormy +storrie +storstrom +storthing +storting +stortinget +story +storybook +storycity +storyless +storymaker +storymonger +storytelling +storywise +storywork +stosb +stosd +stosh +stoss +stossel +stosston +stot +stote +stotesley +stotheby +stothman +stotinka +stotinki +stotland +stott +stotter +stotterel +stotts +stottscity +stottville +stotz +stouder +stough +stoughton +stoun +stound +stoundmeal +stoup +stoupful +stour +stouring +stourliness +stourness +stoury +stoush +stout +stouten +stouter +stoutest +stouth +stouthearted +stoutish +stoutland +stoutly +stoutness +stoutsmills +stoutsville +stoutt +stoutwood +stouty +stovall +stove +stovebrush +stoveful +stovehouse +stoveless +stovemaker +stovemaking +stoveman +stoven +stovepipe +stover +stoves +stovewood +stovin +stovitz +stowable +stowaway +stowbord +stowbordman +stowce +stowdown +stowe +stowed +stowell +stower +stowing +stownlins +stowwood +stoy +stoyan +stoyanov +stoychev +stoycho +stoyles +stoystown +stpaul +stpcb +stra +straaten +strabane +strabel +strabism +strabismal +strabismally +strabismical +strabometer +strabometry +strabotome +strabotomy +strachan +strachocki +strachwitz +strack +strackea +strackholder +strackling +stract +straczynski +strad +strada +straddleback +straddlebug +straddled +straddler +straddles +straddleways +straddlewise +straddling +straddlingly +strade +strader +stradine +stradiot +stradivari +stradivarius +stradl +stradld +stradlings +stradner +strae +straetz +strafed +strafer +straffer +strafford +straffordian +strafing +strag +straggled +straggler +stragglers +straggles +straggling +stragglingly +straggly +stragular +stragulum +strahl +strahm +straight +straighted +straightedge +straighten +straightened +straightener +straightens +straighter +straightest +straighthate +straighthead +straightish +straightly +straightness +straighttail +straightup +straightway +straightways +straightwise +straik +strain +strainable +strainably +strained +strainedly +strainedness +strainer +strainerman +strainers +straining +strainingly +strainless +strainlessly +strainproof +strains +strainslip +straint +strait +straiten +straitened +straiteneth +straitest +straitiff +straitjacket +straitlaced +straitlacing +straitly +straitness +straits +straitsman +straitwork +strakarios +strake +straked +strakencz +straker +strakes +strakosh +straky +stralsund +stram +stramash +stramazon +stramineous +strammel +strammer +stramonium +stramony +stramp +strand +strandage +strandasysla +strandberg +strandburg +stranded +strander +stranding +strandless +strandlund +strandmark +strandquist +strands +strandvagen +strandward +strang +strange +strangecreek +strangeland +strangeling +strangelove +strangely +strangeness +stranger +strangerdom +strangerhood +strangerlike +strangers +strangership +strangerwise +stranges +strangest +strangeways +strangle +strangleable +strangled +stranglehold +stranglement +strangler +stranglers +strangles +strangletare +strangleweed +strangling +stranglingly +stranglings +strangulable +strangulated +strangullion +strangurious +strangury +straniera +stranks +strannemar +stranner +strannii +strany +strap +straphang +straphanger +straphead +strapless +straplike +strappable +strappado +strappan +strapped +strapper +strapping +strapple +straps +strapwork +strapwort +strasberg +strasbourg +strasburg +strashimirov +strashno +strass +strassberg +strassemusik +strasser +strassman +strassmeier +strassoff +straszak +strata +stratagems +stratal +stratameter +stratas +stratege +strategetic +strategetics +strategi +strategian +strategic +strategical +strategics +strategies +strategists +strategize +strategos +strategy +stratford +stratfordian +strath +strathairn +strathallan +stratham +strathclyde +strathcona +strathmere +strathmore +straths +strathspey +strati +stratic +straticulate +stratified +stratifies +stratiform +stratifying +stratigraphy +stratiotes +stratlin +stratman +stratocracy +stratocrat +stratocratic +stratography +stratonic +stratonical +stratoplane +stratos +stratose +stratous +stratten +stratton +strattonia +stratum +stratums +stratus +straub +strauber +strauberry +strauch +straucht +strauchten +straughn +straume +straus +strause +strauss +strausstown +strautman +stravage +strave +stravinsky +straw +strawa +strawb +strawbail +strawberries +strawberry +strawbill +strawboard +strawbreadth +strawcolored +strawczynski +strawderman +strawed +strawen +strawer +strawfork +strawheads +strawless +strawlike +strawman +strawmote +strawn +straws +strawsmall +strawsmear +strawstack +strawstacker +strawwalker +strawwork +strawworm +strawy +strawyard +stray +strayaway +strayed +strayer +strayhorn +straying +strayling +strays +strazimir +stre +streahte +streak +streaked +streakedly +streakedness +streaker +streakily +streakiness +streaking +streaklike +streaks +streakwise +streaky +stream +streambeds +streamed +streamer +streamers +streamflow +streamful +streamhead +streaminess +streaming +streamingly +streamless +streamlet +streamlike +streamline +streamlined +streamliner +streamlines +streamling +streamlining +streams +streamward +streamway +streamwood +streamworks +streamwort +streamy +streater +streatfield +streator +strebel +streck +streckly +stree +streeet +streek +streel +streeler +streen +streep +street +streetage +streetball +streetcars +streeter +streeters +streetful +streetgirl +streetgrass +streetjive +streetless +streetlet +streetlight +streetlights +streetlike +streetman +streetname +streetnumber +streets +streetsboro +streetside +streetwalker +streetwalkin +streetward +streetway +streetwise +strega +strehlow +streibel +streicher +streight +streisand +streit +streite +streix +streke +strelec +strelitz +strelitzi +strelitzia +streller +strelsa +streltzi +stremma +stren +streng +strengaru +strengite +strength +strengthed +strengthen +strengthened +strengthener +strengthens +strengthful +strengthily +strengthless +strengths +strengthy +strengts +strenio +strent +strenth +strenua +strenuity +strenuosity +strenuously +strep +strepen +strepent +strepera +streperous +strephonade +strepitant +strepitantly +strepitation +strepitous +strepor +strepsiceros +strepsinema +strepsiptera +strepsis +strepsitene +streptaster +streptococci +streptolysin +streptomyces +streptomycin +streptoneura +streptothrix +stress +stressed +stresser +stresses +stressful +stressfully +stressing +stressless +stresstest +stret +stretch +stretchable +stretchberry +stretched +stretchedst +stretcher +stretcherman +stretchers +stretches +stretchest +stretcheth +stretchiness +stretching +stretchneck +stretchproof +stretchy +stretman +strett +strette +stretti +stretto +streuli +strew +strewage +strewed +strewer +strewing +strewment +strewn +strews +strey +streyne +stria +striae +striaght +strial +striano +striaria +striariaceae +striatal +striated +striating +striation +striatum +striature +stribling +strich +striche +strick +stricken +strickenly +strickenness +stricker +strickland +strickle +strickler +strickless +stricklyn +strict +strictest +striction +strictish +strictly +strictness +strictured +strictures +strid +stridden +striddle +stride +strideleg +stridelegs +stridence +stridency +strident +stridently +strider +strides +strideways +stridhan +stridhana +stridhanum +striding +stridingly +stridling +stridlins +stridor +stridulant +stridulate +stridulating +stridulation +stridulator +stridulatory +stridulent +stridulous +stridulously +striebeck +strieng +strietzel +strife +strifeful +strifeless +strifemaker +strifemaking +strifemonger +strifeproof +strifes +striffen +strig +striga +strigae +strigal +strigate +striges +striggle +stright +strigidae +strigiformes +strigil +strigilate +strigilation +strigilator +strigiles +strigilis +strigillose +strigilous +striginae +strigine +strigose +strigous +strigovite +strigula +strigulaceae +strigulose +strijanov +strik +strike +strikeboat +strikeless +strikeout +striker +strikers +strikes +strikeslip +striketh +striking +strikingly +strikingness +strimpell +strin +strind +string +stringbean +stringboard +stringcourse +stringed +stringencies +stringency +stringene +stringently +stringer +stringers +stringettes +stringfellow +stringful +stringhalt +stringhalted +stringier +stringiest +stringiness +stringing +stringless +stringlike +stringmaker +stringmaking +stringman +stringpiece +strings +stringsman +stringtown +stringways +stringwood +stringybark +strinkle +striola +striolae +striolate +striolated +striolet +strip +stripe +striped +stripeless +striper +stripes +striping +striplet +stripling +strippage +stripped +stripper +strippers +stripping +strippit +strippler +strippling +striproad +strips +stripsearch +stript +stripteaser +strit +stritton +stritzel +strive +strived +striven +striver +strives +striveth +striving +strivingly +strivings +strix +strizhenova +strljic +strnew +stroam +strobed +strobel +strober +strobes +strobic +strobila +strobilae +strobilate +strobilation +strobile +strobili +strobiliform +strobiline +strobiloid +strobilus +stroboscope +stroboscopy +strobotron +stroch +strock +strockle +stroddle +strode +stroebel +stroebling +stroeby +stroebye +stroemberg +stroemer +stroeve +strogoff +stroh +stroheim +strohm +strohmeier +strohmeyer +stroil +stroili +stroish +stroka +stroke +stroked +stroker +strokers +strokes +strokesman +stroking +stroky +strolch +strold +stroll +strolld +strolled +stroller +strolling +strolls +strom +stroma +stromal +stromata +stromateidae +stromateoid +stromatic +stromatiform +stromatology +stromatopora +stromatous +stromb +strombidae +strombiform +strombite +stromboid +stromboli +strombolian +strombus +strome +stromeyerite +stromgrenia +stromme +stromming +stromsburg +stronach +strone +strong +strongback +strongbark +strongbow +strongbox +strongcity +stronge +stronger +strongest +strongfully +stronghand +stronghead +strongheaded +stronghurst +strongish +stronglike +strongly +stronglyest +strongman +strongminded +strongmixing +strongmy +strongness +strongwilled +strongylate +strongyle +strongylid +strongylidae +strongyloid +strongylon +strongylosis +strongylus +stronski +strontia +strontian +strontianite +strontic +strontion +strontitic +stroobantia +stroock +stroogo +strook +strooken +stroot +strophaic +strophanhin +strophanthus +stropharia +strophic +strophical +strophically +strophiolate +strophiole +strophoid +strophomena +strophomenid +strophosis +strophotaxis +strophulus +stropp +stropped +stropper +stroppings +stroth +strother +strothers +strotz +stroud +strouding +stroudsburg +strounge +stroup +stroupe +stroustrup +strout +strove +strow +strowd +strowed +strown +stroy +stroyer +stroygood +strpos +strt +strtext +struan +strub +strubbly +strube +struberg +struble +strucak +strucchelli +struchkova +struck +strucken +struct +structural +structurally +structure +structured +structurely +structurer +structures +structuring +structurist +strudel +strudom +strudwick +strue +strueby +strugatskia +struggle +struggled +struggler +struggles +struggling +strugglingly +struldbrug +strum +struma +strumae +strumatic +strumectomy +strumella +strumica +strumiferous +strumiform +strumiprivic +strumitis +strummed +strummer +strumose +strumous +strumousness +strumpet +strumpetlike +strumpetry +strumstrum +strumulose +strung +strunk +strunt +strut +struth +struthers +struthian +struthiform +struthio +struthioid +struthiones +struthious +struthonine +struts +strutt +strutted +strutter +strutting +struttingly +struv +struve +struveana +struvite +struwe +struycken +struzynski +strych +strychnia +strychnic +strychnin +strychninic +strychninism +strychninize +strychnize +strychnol +strychnos +stryker +strymon +stryver +stsci +ststcian +stthomas +sttng +stty +stuart +stuartia +stuartsdraft +stub +stubachite +stubb +stubbed +stubbedness +stubber +stubbier +stubbiest +stubbiness +stubbins +stubble +stubbleberry +stubbled +stubblefield +stubbleward +stubbly +stubborn +stubborness +stubbornly +stubbornness +stubboy +stubbs +stubby +stubchen +stuber +stubert +stubouts +stuboy +stubroutine +stubrunner +stubs +stuccoed +stuccoer +stuccoes +stuccoing +stuccos +stuccowork +stuccoworker +stuccoyer +stuck +stuckey +stuckling +stuckup +stucky +stuctured +stud +studbook +studd +studded +studden +studder +studdie +studding +studdle +studds +stude +student +studenthood +studentized +studentless +studentlike +studentry +students +studentship +studer +studerite +studfish +studflower +studhorse +studia +studiable +studied +studiedly +studiedness +studier +studies +studieth +studio +studiomax +studios +studiously +studiousness +studite +studium +studley +studlycaps +studs +studwork +study +studying +studyof +stue +stuecklen +stuelpnagel +stuer +stuerme +stuewe +stuff +stuffed +stuffender +stuffer +stuffier +stuffiest +stuffily +stuffiness +stuffing +stuffit +stuffs +stuffy +stuffynosed +stug +stuggy +stuhbrooteen +stuhdleekaps +stuhr +stuiver +stuka +stukalov +stukonisawa +stull +stuller +stulm +stultified +stultifier +stultifying +stultiloquy +stultioquy +stultloquent +stults +stultz +stum +stumble +stumblebum +stumbled +stumbler +stumbles +stumbleth +stumblin +stumbling +stumblingly +stumbly +stumer +stummer +stummy +stump +stumpcreek +stumped +stumper +stumpf +stumpily +stumpiness +stumping +stumpish +stumpless +stumplike +stumpling +stumpnose +stumps +stumptown +stumpwise +stumpypoint +stun +stunde +stundism +stundist +stung +stunkard +stunned +stunner +stunning +stunningly +stunpoll +stunsail +stunsle +stunt +stunted +stuntedly +stuntedness +stunter +stuntiness +stuntman +stuntness +stunts +stunty +stupa +stupak +stupe +stupefacient +stupefactive +stupefied +stupefier +stupefying +stupend +stupendly +stupendous +stupendously +stupent +stupeous +stupex +stuph +stupid +stupider +stupidest +stupidhead +stupidish +stupidities +stupidity +stupidly +stupidness +stuples +stupnick +stupor +stuporific +stuporose +stuporous +stupose +stupp +stuprate +stupration +stuprum +stupulose +stur +sturak +sturdied +sturdier +sturdiest +sturdily +sturdiness +sturdivant +sturdy +sture +sturgeon +sturgeonbay +sturgeonlake +sturges +sturgess +sturgis +sturia +sturine +sturiones +sturionine +sturk +sturkie +sturmfuller +sturmian +sturnella +sturnidae +sturniform +sturninae +sturnine +sturnoid +sturnus +sturrock +sturt +sturtan +sturtevant +sturtin +sturtion +sturtite +sturz +stuss +stut +stute +stutenroth +stuter +stutt +stutter +stutterer +stuttering +stutteringly +stuttgart +stutts +stuttter +stutz +stutzen +stuyck +stvari +stwike +stwtv +styan +stybba +styca +styceric +stycerin +stycerinol +stychinsky +stychomythia +stye +styful +styfziekte +stygial +stying +stylar +stylaster +stylate +style +stylebook +stylebooks +stylecode +styled +styledom +styleless +stylelike +styler +stylers +styles +stylet +stylewort +stylidiaceae +stylidium +styliferous +styliform +styline +styling +stylish +stylishly +stylishness +stylist +stylistic +stylistical +stylistics +stylite +stylitic +stylitism +stylization +stylize +stylized +stylizer +stylizing +stylo +stylobate +stylochus +styloglossal +styloglossus +stylograph +stylographic +stylography +stylohyal +stylohyoid +styloid +stylolite +stylolitic +stylomastoid +stylometer +stylomyloid +stylonurus +stylonychia +stylopid +stylopidae +stylopized +stylopod +stylopodium +stylops +stylosanthes +stylospore +stylosporous +stylostegium +stylotypite +stylus +styluses +stymie +stymied +stymieing +stymphalian +stymphalid +stymphalides +stymying +styne +styphelia +styphnate +styphnic +stypsis +styptic +styptical +stypticity +stypticness +styracaceae +styracaceous +styracin +styrax +styria +styrian +styrofoam +styrogallol +styrol +styrolene +styrone +styryl +styrylic +stythe +styver +styward +styx +styxian +suabau +suability +suable +suably +suabo +suad +suade +suaeda +suafa +suah +suaharo +suahaw +suahili +suai +suain +suakin +sualocin +suamico +suang +suanitian +suanpan +suant +suantly +suao +suapure +suarez +suarmin +suaru +suasible +suasion +suasionist +suasive +suasively +suasiveness +suasory +suat +suau +suavastika +suavely +suaveness +suaveolent +suaver +suavest +suavify +suaviloquent +suavity +suba +subabbot +subabdominal +subability +subabsolute +subacademic +subaccount +subacetate +subacid +subacidity +subacidly +subacidness +subacidulous +subacrid +subacrodrome +subacromial +subact +subaction +subacuminate +subacute +subacutely +subadditive +subadjacent +subadjutor +subadult +subaduncate +subaerate +subaeration +subaerial +subaerially +subaetheric +subaffluent +subage +subagency +subagent +subaggregate +subah +subahdar +subahdary +subahship +subaid +subakhmimic +subalary +subalate +subalgebra +subalkaline +suballiance +subalmoner +subalpine +subaltern +subalternant +subalternate +subalternity +subamara +subanal +subandean +subanen +subangled +subangular +subangulate +subangulated +subanon +subantarctic +subantique +subanun +subapical +subapostolic +subapparent +subappressed +subapterous +subaquatic +subaquean +subaqueous +subarachnoid +subarashii +subarboreal +subarch +subarchitect +subarctic +subarcuate +subarcuated +subarcuation +subarea +subareolar +subareolet +subarian +subarishii +subarmor +subarouse +subarrhation +subartesian +subarticle +subarytenoid +subascending +subasinghe +subassembly +subastral +subatom +subatomic +subattenuate +subattorney +subaud +subaudible +subaudition +subauditor +subauditur +subaural +subauricular +subautomatic +subaverage +subaxillar +subaxillary +subb +subba +subbaiah +subbailie +subbailiff +subbailiwick +subballast +subband +subbank +subbasal +subbasaltic +subbase +subbasement +subbass +subbeadle +subbeau +subbed +subbias +subbifid +subbing +subboreal +subbotin +subbotina +subbourdon +subbranch +subbranched +subbranchial +subbreed +subbrigade +subbrigadier +subbroker +subbromid +subbromide +subbronchial +subbureau +subcaecal +subcalcarine +subcaliber +subcallosal +subcandid +subcantor +subcapsular +subcaptain +subcaption +subcarbide +subcarbonate +subcardinal +subcarinate +subcase +subcash +subcashier +subcasino +subcast +subcaste +subcategory +subcaudal +subcaudate +subcause +subcavate +subcavity +subcelestial +subcell +subcellar +subcenter +subcentral +subcentrally +subchairman +subchamberer +subchancel +subchannel +subchannels +subchanter +subchapter +subchaser +subchela +subchelate +subcheliform +subchief +subchloride +subchondral +subchordal +subchorioid +subchorionic +subchoroid +subchoroidal +subcingulum +subcircuit +subcircular +subcision +subcity +subclaim +subclan +subclass +subclasses +subclassify +subclause +subclavate +subclavia +subclavian +subclavius +subclerk +subclimate +subclimax +subclinical +subclover +subcoastal +subcollector +subcolumnar +subcommand +subcommander +subcommended +subcommit +subcommittee +subcompact +subcompany +subcomponent +subconcave +subconical +subconnate +subconnect +subconnivent +subconscious +subconstable +subconsul +subcontained +subcontest +subcontinent +subcontinual +subcontinued +subcontract +subcontracts +subcontrary +subcontrol +subconvex +subconvolute +subcool +subcoracoid +subcordate +subcordiform +subcorneous +subcortex +subcortical +subcorymbose +subcosta +subcostal +subcostalis +subcouncil +subcranial +subcreative +subcreek +subcrenate +subcrepitant +subcrest +subcriminal +subcript +subcrossing +subcrureal +subcrureus +subcrust +subcrustal +subcubical +subcuboidal +subcultrate +subcultural +subculture +subcultures +subcurate +subcurator +subcurrent +subcutaneous +subcuticular +subcutis +subcyaneous +subcyanide +subcycle +subcycles +subcylindric +subd +subdatary +subdate +subdeacon +subdeaconate +subdeaconess +subdeaconry +subdealer +subdean +subdeanery +subdeb +subdebutante +subdecanal +subdecimal +subdecuple +subdeducible +subdelegate +subdelirium +subdeltaic +subdeltoid +subdeltoidal +subdentate +subdentated +subdented +subdeposit +subdepot +subdepressed +subdeputy +subdermal +subdesigns +subdevil +subdiaconal +subdiaconate +subdial +subdialect +subdialectal +subdialects +subdiapason +subdiapente +subdichotomy +subdie +subdilated +subdir +subdirector +subdirectory +subdiscoidal +subdistich +subdistrict +subdistricts +subdititious +subdivecious +subdiversify +subdividable +subdivide +subdivided +subdivider +subdivides +subdividing +subdivine +subdivisible +subdivision +subdivisions +subdivisive +subdoctor +subdolent +subdolous +subdolously +subdomain +subdomains +subdominant +subdorsal +subdorsally +subdouble +subdrain +subdrainage +subdrill +subdruid +subduable +subduably +subdual +subduce +subduct +subduction +subdue +subdued +subduedly +subduedness +subduedst +subduement +subduer +subdues +subdueth +subduing +subduingly +subduple +subduplicate +subdural +subdurally +subecho +subedit +subeditor +subeditorial +subeffective +subelection +subelectron +subelement +subelliptic +subelongate +subendorse +subendymal +subenfeoff +subengineer +subentire +subentitle +subentries +subentry +subepidermal +subepoch +subequal +subequality +subequally +subequivalve +suber +suberane +suberate +suberect +subereous +suberic +suberiferous +suberiform +suberin +suberinize +suberites +suberitidae +suberization +suberize +suberone +suberose +suberous +subescheator +subessential +subet +subetheric +subexaminer +subexcite +subexecutor +subexternal +subf +subface +subfacies +subfaction +subfactor +subfactorial +subfactory +subfalcate +subfalcial +subfalciform +subfamily +subfascial +subfebrile +subferryman +subfestive +subfeu +subfeudation +subfeudatory +subfibrous +subfief +subfield +subfields +subfigure +subfigures +subfile +subfiles +subfissure +subfix +subflavor +subflexuose +subfloor +subflooring +subflora +subflush +subfluvial +subfocal +subfoliar +subforeman +subform +subformation +subfossil +subfossorial +subfraction +subframe +subfreshman +subfrontal +subfulgent +subfumose +subfusc +subfuscous +subfusiform +subfusk +subg +subgalea +subgallate +subganger +subgape +subgaussian +subgeneric +subgenerical +subgenital +subgenius +subgenre +subgens +subgenual +subgenus +subgeometric +subget +subgit +subglabrous +subglacial +subglacially +subglenoid +subglobose +subglobosely +subglobular +subglobulose +subglossal +subglossitis +subglottic +subgoal +subgoals +subgod +subgoverness +subgovernor +subgrade +subgranular +subgraph +subgraphs +subgrin +subgroup +subgroups +subgular +subgum +subgwely +subgyre +subgyrus +subh +subhalid +subhalide +subhall +subharmonic +subhash +subhashini +subhastation +subhatchery +subhead +subheader +subheading +subheadings +subhealth +subhedral +subhepatic +subherd +subhero +subhexagonal +subhirsute +subhooked +subhouse +subhra +subhuman +subhumid +subhyaline +subhyaloid +subhymenial +subhymenium +subhyoid +subhyoidean +subhysteria +subi +subia +subiaco +subic +subick +subicle +subicteric +subicular +subiculum +subidar +subidea +subideal +subimaginal +subimago +subimbricate +subimposed +subimpressed +subincident +subincise +subincision +subindex +subindicate +subindices +subinduce +subinfer +subinfeud +subinfeudate +subinform +subinguinal +subinitial +subinoculate +subinsert +subinsertion +subinspector +subintent +subintention +subinternal +subinterval +subintervals +subintroduce +subinvoluted +subiodide +subir +subirrigate +subissati +subitane +subitaneous +subitem +subito +subiya +subj +subjacency +subjacent +subjacently +subjack +subjargon +subjbox +subject +subjectable +subjectdom +subjected +subjectedly +subjecthood +subjectible +subjectify +subjectile +subjecting +subjection +subjectional +subjectist +subjective +subjectively +subjectivism +subjectivist +subjectivize +subjectless +subjectlike +subjectness +subjects +subjectship +subjee +subjes +subjicible +subjoin +subjoinder +subjoint +subjudge +subjudiciary +subjugable +subjugal +subjugate +subjugated +subjugates +subjugating +subjugation +subjugator +subjugular +subjunct +subjunction +subjunior +subkey +subking +subkingdom +subl +sublabel +sublabels +sublabial +sublaciniate +sublanate +sublanguage +sublanguages +sublapsarian +sublapsary +sublaryngeal +sublate +sublateral +sublation +sublative +sublattices +sublayer +sublayers +subleader +sublease +subleased +subleasing +sublecturer +sublessee +sublessor +sublet +sublethal +sublett +sublettable +sublette +subletter +subletting +sublevate +sublevation +sublevel +sublibrarian +sublicense +sublicensee +sublid +subligation +sublighted +sublimable +sublimant +sublimate +sublimated +sublimating +sublimation +sublimations +sublimator +sublimatory +sublime +sublimed +sublimely +sublimeness +sublimer +subliminal +subliminally +subliming +sublimish +sublimity +sublimize +sublinear +sublineation +sublingua +sublinguae +sublingual +sublinguate +sublist +sublists +sublittoral +sublobular +sublong +subloral +subloreal +sublot +sublumbar +sublunar +sublunary +sublunate +sublustrous +subluxate +subluxation +submaid +submain +submammary +subman +submanager +submania +submanic +submanor +submarginal +submarginate +submargined +submarine +submariner +submariners +submarines +submarining +submarinism +submarinist +submarshal +submaster +submatrix +submaxilla +submaxillary +submaximal +submeaning +submedial +submedian +submediant +submediation +submediocre +submeeting +submember +submeningeal +submental +submentum +submenu +submepp +submerge +submerged +submergement +submergence +submerges +submergible +submerging +submerse +submersed +submersing +submersion +submetallic +submeter +submetering +submicron +submiliary +submind +subminimal +subminister +submiss +submissible +submission +submissions +submissive +submissively +submissly +submissness +submit +submits +submittance +submitted +submitter +submitters +submitting +submittingly +submitwolf +submode +submodel +submodels +submodes +submodule +submodules +submolecule +submonish +submonition +submontagne +submontane +submontanely +submorphous +submortgage +submotive +submountain +submucosa +submucosal +submucous +submucronate +submultiple +submundane +submuriate +submuscular +submytilacea +subnarcotic +subnasal +subnascent +subnatural +subnect +subnervian +subness +subnet +subnets +subnetting +subnetwork +subnetworks +subneural +subnex +subnitrate +subnitrated +subniveal +subnivean +subnode +subnodes +subnor +subnormal +subnormality +subnotation +subnote +subnsd +subnubilar +subnucleus +subnude +subnumber +subnuvolar +suboblique +subobscure +subobscurely +subobtuse +suboccipital +subocean +suboceanic +suboctave +suboctile +suboctuple +subocular +suboff +suboffice +subofficer +subofficial +subolive +subopaque +subopercle +subopercular +suboperculum +subopposite +suboptic +suboptimal +suboptimally +suboptimum +subor +suboral +suborbicular +suborbital +suborbitar +suborbitary +subordain +suborder +subordinacy +subordinal +subordinary +subordinate +subordinated +subordinates +suborganic +suborn +subornation +subornative +suborned +suborner +suboscines +suboval +subovate +subovated +suboverseer +subovoid +suboxidation +suboxide +subp +subpackage +subpagoda +subpallial +subpalmate +subpan +subpanation +subpanel +subparagraph +subparallel +subparameter +subpart +subpartition +subparts +subparty +subpass +subpassage +subpastor +subpatron +subpattern +subpavement +subpectinate +subpectoral +subpeduncle +subpellucid +subpeltate +subpeltated +subpena +subperiod +subpermanent +subpetiolar +subpetiolate +subphases +subphosphate +subphratry +subphrenic +subphylar +subphylum +subpial +subpilose +subpimp +subpiston +subplacenta +subplant +subplat +subpleural +subplinth +subplot +subplow +subpoenaed +subpoenaing +subpoenal +subpolar +subpolygonal +subpool +subpools +subpopular +subport +subpotency +subpotent +subpre +subpreceptor +subpredicate +subprefect +subpress +subprimary +subprincipal +subprior +subprioress +subproblem +subproblems +subprocess +subprocesses +subproctor +subproduct +subprofessor +subprogram +subprograms +subproject +subproof +subproofs +subprotector +subprovince +subprovinces +subpubescent +subpubic +subpulmonary +subpunch +subpurchaser +subpurlin +subputation +subpyramidal +subpyriform +subquadrate +subquality +subquery +subquestion +subqueues +subquintuple +subra +subrace +subradial +subradiance +subradiate +subradical +subradius +subradular +subrahmaniam +subrahmanyam +subrailway +subramaniam +subramanian +subramanyam +subrameal +subramose +subramous +subrange +subranges +subrational +subreader +subreason +subrebellion +subrector +subreference +subregent +subregion +subregional +subregions +subregister +subregular +subreguli +subregulus +subrelation +subreligion +subreniform +subrent +subrepand +subrepent +subreport +subreptary +subreption +subreputable +subresin +subresults +subretinal +subrhombic +subrhomboid +subrictal +subrident +subridently +subrigid +subrision +subrisive +subrisory +subrogate +subroot +subrostral +subround +subroutine +subroutines +subroutining +subrule +subruler +subs +subsacral +subsaharan +subsale +subsaline +subsalt +subsample +subsamples +subsampling +subsara +subsartorial +subsatiric +subsatirical +subsaturated +subscapular +subscapulary +subschedule +subschema +subschemas +subscheme +subschool +subscience +subscleral +subsclerotic +subscribable +subscribe +subscribed +subscriber +subscribers +subscribes +subscribing +subscript +subscripted +subscripting +subscription +subscriptive +subscripts +subscripture +subscrive +subscriver +subsea +subsecive +subsecretary +subsect +subsection +subsections +subsecurity +subsecute +subsecutive +subsegment +subsegments +subsemifusa +subsemitone +subsensation +subsensible +subsensual +subsensuous +subsept +subseptuple +subsequence +subsequences +subsequency +subsequent +subsequently +subseries +subserosa +subserous +subserrate +subserve +subserviate +subservience +subserviency +subservient +subsessile +subset +subsets +subsetting +subsewer +subsextuple +subshaft +subshell +subsheriff +subship +subshire +subshrub +subshrubby +subside +subsided +subsidence +subsidency +subsident +subsider +subsides +subsidiarie +subsidiaries +subsidiarily +subsidiary +subsidies +subsiding +subsidist +subsidizable +subsidize +subsidized +subsidizer +subsidizes +subsidizing +subsilicate +subsilicic +subsill +subsimious +subsimple +subsinuous +subsist +subsisted +subsistence +subsistency +subsistent +subsisting +subsistingly +subsists +subsizar +subsizarship +subslot +subslots +subsmile +subsneer +subsocial +subsoil +subsoiler +subsolar +subsolid +subsonic +subsorter +subsovereign +subspace +subspaces +subspatulate +subspecialty +subspecies +subspecific +subsphere +subspherical +subspinous +subspiral +subsquadron +subsquent +subst +substage +substages +substance +substances +substanch +substandard +substanially +substant +substantial +substantiate +substantify +substantious +substantival +substantize +substation +substations +substernal +substitute +substituted +substituter +substitutes +substituting +substitution +substitutive +substock +substoreroom +substory +substr +substract +substraction +substrata +substratal +substrates +substrati +substrative +substrator +substratose +substratum +substratums +substriate +substring +substrings +substruct +substruction +substructure +substylar +substyle +subsulfid +subsulfide +subsulphate +subsulphid +subsulphide +subsult +subsultive +subsultorily +subsultory +subsultus +subsumable +subsumed +subsumes +subsumption +subsumptive +subsurety +subsurface +subsyndicate +subsynod +subsynodical +subsystem +subsystems +subtack +subtacksman +subtangent +subtarget +subtartarean +subtask +subtasking +subtasks +subtectal +subteen +subtegminal +subtemperate +subtenancy +subtenant +subtend +subtense +subtenure +subtepid +subterfluent +subterfluous +subterhuman +subterjacent +subtermarine +subterminal +subterpose +subterrane +subterraneal +subterranean +subterranity +subterrene +subterritory +subtertian +subtext +subthalamic +subthalamus +subthoracic +subthrill +subtiaba +subtil +subtile +subtilely +subtileness +subtilie +subtilin +subtilism +subtilist +subtility +subtilize +subtilizer +subtill +subtillage +subtilly +subtilty +subtitle +subtitled +subtitles +subtitling +subtitular +subtle +subtleness +subtler +subtlest +subtleties +subtlety +subtlist +subtly +subtone +subtonic +subtorrid +subtotal +subtotalled +subtotalling +subtotals +subtotem +subtower +subtract +subtracted +subtracting +subtraction +subtractions +subtractive +subtractor +subtractors +subtracts +subtrahend +subtrahends +subtread +subtreasurer +subtreasury +subtree +subtrees +subtrench +subtribal +subtribe +subtribual +subtrifid +subtrigonal +subtrihedral +subtrist +subtrochlear +subtropic +subtropical +subtropics +subtrousers +subtrude +subtruncate +subtrunk +subtuberant +subtunic +subtunnel +subturbary +subtutor +subtwined +subtype +subtypes +subtypical +subu +subulate +subulated +subulicorn +subulicornia +subuliform +subultimate +subum +subumbellate +subumbonal +subumbral +subumbrella +subumbrellar +subuncinate +subunequal +subungual +subunguial +subungulata +subungulate +subunit +subunits +subuniverse +suburb +suburban +suburbandom +suburbanhood +suburbanism +suburbanite +suburbanity +suburbanize +suburbanized +suburbanly +suburbed +suburbican +suburbicary +suburbs +suburethral +suburia +subursine +subvaginal +subvaluation +subvarietal +subvarieties +subvariety +subvassal +subvassalage +subvein +subvendee +subvene +subvention +subventioned +subventive +subventral +subvermiform +subversal +subverse +subversed +subversion +subversions +subversive +subversively +subversivism +subvert +subvertebral +subverted +subverter +subvertible +subvertical +subverting +subverts +subvesicular +subvestment +subvicar +subvicarship +subvillain +subvirate +subvirile +subvisible +subvitalized +subvitreous +subvocal +subvola +subw +subwarden +subwater +subway +subways +subwealthy +subweight +subwink +subworker +subworkman +subzonal +subzone +subzygomatic +succ +succade +succasunna +succedanea +succedaneous +succedaneum +succeded +succedent +succeed +succeedable +succeeded +succeeder +succeedest +succeeding +succeedingly +succeeds +succent +succentor +succesful +succesfull +succesfully +succesive +success +successes +successfu +successful +successfully +succession +successional +successions +successive +successively +successivity +successless +successor +successoral +successors +successory +succi +succin +succinamate +succinamic +succinamide +succinanil +succinate +succinct +succinctly +succinctness +succinctory +succincture +succinic +succinimide +succinite +succinous +succinyl +succisa +succise +succivorous +succor +succorable +succorer +succorful +succorless +succorrhea +succors +succory +succotash +succoth +succoths +succour +succoured +succourer +succourful +succourless +succous +succsussor +succub +succuba +succubae +succube +succubine +succubous +succula +succulence +succulency +succulent +succulently +succulents +succulous +succumbed +succumbence +succumbency +succumbent +succumber +succumbing +succumbs +succursal +succuss +succussation +succussatory +succussion +succussive +suce +suceava +sucessfully +such +sucha +suchandsuch +suchanecki +sucharski +suchart +suchartboot +suchathites +suches +sucheston +suchet +suchevcky +suchima +suchindran +suchine +suchira +suchkow +suchlike +suchness +suchocki +suchos +suchwise +sucia +sucio +suciu +sucivilized +suck +suckable +suckabob +suckage +suckauhock +sucked +sucken +suckener +sucker +suckerel +suckerfish +suckerlike +suckers +suckfish +suckhole +sucking +suckle +suckled +suckler +suckless +suckling +sucklings +sucks +suckstone +suclat +sucramine +sucrate +sucre +sucres +sucroacid +sucrose +suction +suctional +suctoria +suctorial +suctorian +suctorious +sucumbios +sucupira +sucuri +sucuriu +sucuruju +sucusari +suda +sudadero +sudair +sudakevich +sudakov +sudamen +sudamina +sudaminal +sudan +sudancentral +sudanese +sudani +sudanian +sudanic +sudarium +sudary +sudate +sudation +sudatorium +sudatory +sudbey +sudburian +sudburite +sudbury +sudd +suddarth +suddely +sudden +suddenly +suddenness +suddenty +sudder +sudderth +suddle +suddy +sude +suden +sudesh +sudest +sudesval +sudhakar +sudharmono +sudic +sudie +sudiform +sudith +sudkivu +sudlersville +sudloy +sudman +sudo +sudoral +sudoresis +sudoric +sudoriferous +sudorific +sudoriparous +sudorous +sudouest +sudow +sudra +sudsing +sudsman +sudsy +sueanne +suecism +sued +suede +suedo +suehmeridi +suei +sueli +suellen +suen +suena +sueno +suenson +suer +suerre +suerte +sues +suess +suessiones +suet +suety +sueur +sueve +suevi +suevia +suevian +suevic +sueyoshi +suez +sufa +sufcak +sufeism +suff +suffage +suffect +suffection +suffer +sufferable +sufferably +sufferance +suffered +sufferer +sufferers +sufferest +suffereth +suffering +sufferingly +sufferings +suffern +suffers +suffete +suffice +sufficeable +sufficed +sufficer +suffices +sufficeth +sufficiency +sufficient +sufficiently +sufficing +sufficingly +suffiction +suffield +suffix +suffixal +suffixation +suffixed +suffixer +suffixes +suffixing +suffixion +suffixment +sufflaminate +sufflate +sufflation +sufflue +suffocate +suffocated +suffocates +suffocating +suffocation +suffocative +suffoccate +suffolk +suffragan +suffraganal +suffraganate +suffragancy +suffragatory +suffragial +suffragism +suffragist +suffragistic +suffragitis +suffrago +suffrance +suffrican +suffrutex +suffruticose +suffruticous +suffumigate +suffusable +suffused +suffusedly +suffuses +suffusing +suffusion +suffusive +sufi +sufiism +sufiistic +sufis +sufism +sufistic +sufrai +suga +sugal +sugali +sugamo +sugan +sugandi +suganga +sugar +sugara +sugarbaby +sugarberry +sugarbird +sugarbroad +sugarbush +sugarcandy +sugarcane +sugarcity +sugarcoat +sugarcreek +sugared +sugaree +sugarelly +sugarer +sugargrove +sugarhouse +sugariness +sugaring +sugarings +sugarland +sugarless +sugarlike +sugarloaf +sugarman +sugarplum +sugarplums +sugarpuss +sugarrun +sugars +sugarsweet +sugartown +sugartree +sugarvalley +sugarworks +sugary +sugata +sugath +sugaurd +sugawara +sugbuanon +sugbuhanon +sugcestun +sugent +sugescent +sugestions +sugford +suggest +suggestable +suggested +suggester +suggestibly +suggesting +suggestingly +suggestion +suggestions +suggestively +suggestivity +suggestment +suggestress +suggests +suggestum +suggillate +suggillation +suggs +sugh +sughu +sugi +sugihara +sugiura +sugpiak +sugrue +sugu +suguard +suguaro +sugudi +sugur +sugurti +sugut +suha +suhadoi +suhaid +suhaj +suharly +suhas +suhbaatar +suhl +suhov +suhuaro +suhx +suich +suicidal +suicidalism +suicidally +suicidalwise +suicide +suicides +suicidical +suicidism +suicidist +suid +suidae +suidian +suie +suiei +suiform +suigenetic +suiicen +suiicien +suilline +suimate +suina +suine +suing +suingam +suingly +suint +suiogoth +suiogothic +suiones +suipo +suis +suisha +suisimilar +suisse +suist +suisuncity +suit +suitability +suitable +suitableness +suitably +suitcases +suite +suited +suiters +suites +suithold +suiting +suitoress +suitors +suitorship +suits +suitt +suitwearers +suity +sujata +sujau +suji +sujit +suka +sukamara +sukang +sukaraja +sukarno +sukey +sukhamoy +sukhatme +sukhendu +sukhothai +sukhovey +sukhwant +suki +sukigogodala +sukinan +sukiyaki +sukkenye +sukkiims +sukowa +sukrand +suksawat +suku +sukubatong +sukulumbwe +sukuma +sukur +sukurum +sula +sulaba +sulabesi +sulafat +sulaib +sulaiman +sulak +sulaka +sulaliwan +sulamanya +sulamitis +sulamu +sulataliabo +sulatycki +sulawan +sulawesi +sulaymaniya +sulaymaniyah +sulbasutra +sulcal +sulcalize +sulcar +sulcate +sulcated +sulcation +sulciform +sulcular +sulculate +sulculus +sulcus +suld +sule +sulea +suleika +suleiman +suleimaniye +suleimanu +sulewski +suleyman +sulfa +sulfacid +sulfadiazine +sulfamate +sulfamerazin +sulfamic +sulfamidate +sulfamide +sulfamidic +sulfamine +sulfaminic +sulfamyl +sulfanilic +sulfarsenide +sulfarsenite +sulfatase +sulfated +sulfates +sulfatic +sulfating +sulfatize +sulfato +sulfazide +sulfhydrate +sulfhydric +sulfhydryl +sulfides +sulfindylic +sulfion +sulfionide +sulfoacid +sulfoamide +sulfobenzide +sulfobenzoic +sulfoborite +sulfocyan +sulfocyanide +sulfohalite +sulfohydrate +sulfoleic +sulfolysis +sulfonamic +sulfonate +sulfonation +sulfonator +sulfonic +sulfonium +sulfonyl +sulforicinic +sulfourea +sulfovinate +sulfovinic +sulfoxide +sulfoxism +sulfoxylate +sulfoxylic +sulfur +sulfurage +sulfuran +sulfurate +sulfuration +sulfurator +sulfurea +sulfureous +sulfureously +sulfuret +sulfurize +sulfurosyl +sulfury +sulfuryl +sulidae +sulides +suliote +sulivian +sulk +sulka +sulked +sulker +sulkier +sulkies +sulkiest +sulkily +sulkiness +sulking +sulks +sulky +sulkylike +sull +sulla +sullage +sullan +sullavan +sullen +sullenly +sullenness +sulliable +sullied +sulligent +sullivan +sullivancity +sullivans +sullom +sullow +sullying +sullz +sulo +sulochana +sulochanh +sulod +sulogs +sulpha +sulphacid +sulphamate +sulphamic +sulphamidate +sulphamide +sulphamidic +sulphamine +sulphaminic +sulphamino +sulphamyl +sulphanilate +sulphanilic +sulpharsenic +sulphatase +sulphate +sulphated +sulphates +sulphatic +sulphation +sulphatize +sulphato +sulphazide +sulphazotize +sulphethylic +sulphidation +sulphide +sulphidic +sulphidize +sulphimide +sulphinate +sulphine +sulphinic +sulphinide +sulphinyl +sulphitation +sulphite +sulphitic +sulpho +sulphoacetic +sulphoamid +sulphoamide +sulphoborite +sulphocyan +sulphocyanic +sulphofy +sulphogallic +sulphogel +sulphohalite +sulphohaloid +sulpholeate +sulpholeic +sulpholipin +sulpholysis +sulphonal +sulphonalism +sulphonamic +sulphonamide +sulphonamido +sulphonamine +sulphonate +sulphonated +sulphonation +sulphonator +sulphone +sulphonic +sulphonium +sulphonyl +sulphosol +sulphotannic +sulphotoluic +sulphourea +sulphovinate +sulphovinic +sulphoxide +sulphoxism +sulphoxylate +sulphoxylic +sulphur +sulphurage +sulphuran +sulphurate +sulphuration +sulphurator +sulphurbluff +sulphurea +sulphurean +sulphured +sulphureity +sulphureous +sulphuret +sulphureted +sulphuric +sulphurity +sulphurize +sulphurless +sulphurlike +sulphurosyl +sulphurous +sulphurously +sulphurproof +sulphurrock +sulphurweed +sulphurwort +sulphury +sulphuryl +sulphydrate +sulphydric +sulphydryl +sulpician +sulpicio +sultam +sultan +sultana +sultanaship +sultane +sultanesque +sultaness +sultanian +sultanic +sultanin +sultanism +sultanist +sultanize +sultanlike +sultanov +sultanry +sultans +sultanship +sultewan +sultone +sultrier +sultriest +sultrily +sultriness +sultry +sulu +suluan +suluborneo +sulud +suluk +sulung +sulvanite +sulvasutra +sulywap +suma +sumach +sumadel +sumahenkro +sumak +sumambu +sumambuq +sumambutagal +sumare +sumariup +sumarti +sumas +sumass +sumatera +sumatra +sumatran +sumau +sumava +sumba +sumbanese +sumbawa +sumbitch +sumbox +sumbul +sumbulic +sumbwa +sumchu +sumdum +sumei +sumenep +sumerco +sumerduck +sumeri +sumerine +sumerology +sumex +sumexaim +sumi +sumiana +sumida +sumie +sumin +sumire +sumiton +sumku +sumless +sumlessness +summa +summability +summable +summach +summage +summands +summar +summaries +summarily +summariness +summarised +summarist +summarize +summarized +summarizer +summarizes +summarizing +summary +summated +summational +summations +summative +summatory +summed +summer +summerall +summerbee +summerbird +summercastle +summerdale +summerer +summerfield +summerhead +summerhill +summerhouse +summeriness +summering +summerings +summerish +summerite +summerize +summerlake +summerland +summerlay +summerlee +summerless +summerlike +summerlin +summerliness +summerling +summerlong +summerly +summerplace +summerproof +summers +summerset +summershade +summersville +summertide +summertime +summerton +summertown +summertree +summerville +summerward +summerwood +summery +summing +summist +summit +summital +summitcity +summithill +summitlake +summitless +summitpoint +summitville +summity +summon +summonable +summoned +summoner +summoners +summoning +summoningly +summons +summonses +summula +summulist +summut +sumner +sumneytown +sumo +sumohai +sumoo +sumoun +sump +sumpage +sumper +sumph +sumphish +sumphishly +sumphishness +sumphy +sumpit +sumpitan +sumple +sumpman +sumpo +sumpsimus +sumpter +sumption +sumptuary +sumptuosity +sumptuously +sumrall +sums +sumterville +sumtotal +sumtsu +sumu +sumwari +sumy +suna +sunad +sunal +sunamganj +sunapee +sunapo +sunatori +sunb +sunbane +sunbar +sunbathe +sunbathed +sunbather +sunbathing +sunbb +sunbeam +sunbeamed +sunbeams +sunbeamy +sunberry +sunbird +sunblink +sunbonneted +sunbow +sunbreak +sunbright +sunburg +sunburn +sunburned +sunburning +sunburnproof +sunburntness +sunburst +sunbury +sunc +sunchariot +suncherchor +sunchyme +suncity +suncook +suncup +sund +sunda +sundae +sundance +sundanese +sundanesian +sundang +sundar +sundaram +sundaresan +sundargarh +sundargh +sundari +sundas +sunday +sundayfied +sundayish +sundayism +sundaylike +sundayness +sundayproof +sundays +sundberg +sundbery +sundei +sundek +sunder +sunderable +sunderance +sundered +sunderer +sunderhauf +sunderland +sunderment +sunderwise +sundevil +sundi +sundiag +sundic +sundik +sundin +sundmania +sundog +sundogs +sundowner +sundowners +sundowning +sundquist +sundra +sundri +sundries +sundriesman +sundrily +sundriness +sundrops +sundry +sundryman +sundstein +sundstram +sundstrom +sundt +sune +suned +sunee +sunet +sunf +sunfall +sunfast +sunfield +sunfisher +sunfishery +sunflowers +sung +sungai +sungaipenuh +sungairaya +sungam +sungaru +sungate +sungchiang +sungei +sungeo +sunggari +sungguar +sungha +sungkai +sunglade +sunglass +sunglasses +sunglo +sunglow +sungnam +sungor +sungu +suni +sunic +sunil +sunita +sunjpg +sunk +sunkees +sunken +sunket +sunkhla +sunkland +sunko +sunlab +sunlamp +sunland +sunlandpark +sunlands +sunless +sunlessly +sunlessness +sunlet +sunley +sunlight +sunlighted +sunlike +sunman +sunn +sunna +sunned +sunni +sunniah +sunnie +sunnier +sunniest +sunnily +sunniness +sunning +sunnism +sunnite +sunnud +sunny +sunnybrook +sunnyhearted +sunnyside +sunnysouth +sunnyvale +sunol +sunopi +sunos +sunprairie +sunproof +sunquake +sunquest +sunray +sunrise +sunrisebeach +sunrises +sunrising +sunriver +sunroom +suns +sunsailers +sunscald +sunset +sunsetbeach +sunsets +sunsetting +sunsetty +sunshine +sunshineless +sunshining +sunsmit +sunsmitten +sunsoft +sunspot +sunspots +sunspotted +sunspottery +sunspotty +sunsquall +sunstone +sunstools +sunstricken +sunstroke +sunstruck +sunstrum +sunt +suntai +suntan +suntools +sunu +sunugin +sunup +sunuwar +sunvalley +sunwah +sunwar +sunward +sunwards +sunwari +sunwarmed +sunway +sunways +sunweed +sunwise +sunycentral +sunyct +sunyhscsyr +sunyie +sunyit +sunyjcc +sunysb +suoi +suomela +suomi +suomic +suominen +suomo +suor +suoy +supa +supai +supan +supaplex +supari +supaset +supat +supawn +supdup +supe +supellex +super +supera +superabhor +superability +superable +superably +superabound +superabsurd +superaccrue +superacetate +superacid +superactive +superacute +superadd +superadorn +superaerial +superagency +superalbal +superaltar +superaltern +superanal +superangelic +superanimal +superannuity +superapology +superaqueous +superarbiter +superarctic +superarduous +superassume +superauditor +superaural +superaverage +superavit +superaward +superb +superbbs +superbe +superbeast +superbeing +superbelief +superbeloved +superbenefit +superbenign +superbias +superbious +superbity +superblessed +superblock +superblunder +superbness +superbold +superborrow +superbrain +superbrave +superbrute +superbuild +superbusy +supercabinet +supercalc +supercandid +supercanine +supercanopy +supercapable +supercaption +supercargo +supercarpal +supercausal +supercaution +superceded +superceding +supercensure +supercentral +supercharge +supercharged +supercharger +superchatter +supercherie +superciliary +supercilium +supercivil +superclaim +superclass +supercloth +supercold +supercombing +supercomplex +supercontest +supercontrol +supercool +supercooled +supercordial +supercow +supercredit +supercrime +supercritic +supercrowned +supercrust +supercube +supercurious +supercycle +supercynical +superdainty +superdanger +superdebt +superdeficit +superdeity +superdemand +superdemonic +superdensity +superdeposit +superdialer +superdir +superdivine +superdoctor +superdose +superdubious +superdural +superdying +superearthly +supereconomy +superedify +superego +superegos +superelastic +superelated +supereminent +superendorse +superendow +superengrave +superepic +superepoch +supererogant +supererogate +superether +superethical +superevident +superexalt +superexceed +superexcited +superexert +superexist +superexpand +superexport +superextend +superextol +superextreme +superfamily +superfarm +superfat +superfee +superfervent +superfetate +superficial +superficiary +superficies +superfidel +superfinance +superfine +superfinical +superfinish +superfinite +superfissure +superfit +superfix +superfleet +superflexion +superfluence +superfluent +superfluid +superfluity +superfluous +superflux +superfolly +superformal +superfriends +superfrontal +superfulfill +superfuse +superfusible +superfusion +supergaiety +supergallant +supergene +supergeneric +supergenual +supergiant +superglacial +superglottal +superglue +supergoddess +supergovern +supergrant +supergratify +supergroup +supergroups +supergun +superhearty +superheat +superheater +superheresy +superhero +superheroic +superhet +superhighway +superhive +superhuman +superhumanly +superhumeral +superideal +superieur +superieure +superimpend +superimply +superimpose +superimposed +superimposes +superinduce +superinduct +superinfer +superinfuse +superinsist +superintend +superintense +superior +superioress +superiority +superiorly +superiorness +superiors +superiorship +superius +superjacent +superjpeg +superjpg +superkarts +superlabial +superlation +superlatives +superlenient +superlie +superlight +superline +superlocal +superlogical +superloyal +superlucky +supermag +supermail +supermalate +superman +supermanhood +supermanism +supermanly +supermannish +supermans +supermarine +supermarket +supermarkets +supermax +supermaxilla +supermedial +supermen +supermental +supermicro +supermini +superminis +supermishap +supermixture +supermodest +supermoisten +supermolten +supermoral +supermorose +supermuscan +supermystery +supernacular +supernaculum +supernal +supernalize +supernally +supernation +supernatural +supernature +supernaut +supernormal +supernotable +supernova +supernovas +supernumeral +superobese +superobject +superoctave +superocular +superodorsal +superomedial +superoptimal +superorbital +superordain +superorder +superordinal +superorganic +superoutput +superoxalate +superoxide +superpassage +superpatient +superperfect +superperson +superphysica +superpious +superplease +superplus +superpolite +superpolitic +superpose +superposed +superposes +superposing +superpower +superpowered +superpraise +superprecise +superprint +superproduce +superpure +superqualify +superquote +superradical +superrealism +superrealist +superrefine +superrefined +superreform +superregal +superrenal +superreward +superroyal +supersacral +supersacred +supersafe +supersaint +supersaintly +supersalient +supersalt +supersanity +supersatisfy +superscandal +superscape +superscribe +superscribed +superscript +superscripts +superscrive +superseaman +supersearch +supersecret +supersecular +supersecure +supersedable +supersedeas +superseded +supersedence +superseder +supersedes +superseding +supersedure +superselect +supersensory +supersensual +superseptal +superserious +superservice +supersession +supersessive +superset +supersets +supersevere +supersilent +supersistent +supersize +supersmart +supersocial +supersoil +supersolar +supersolemn +supersolicit +supersolid +supersonant +supersonic +supersonics +superspecies +superspinous +superstage +superstamp +superstar +superstate +superstation +superstition +superstoical +superstor +superstrain +superstrata +superstratum +superstrict +superstrong +superstruct +superstudio +superstuff +superstylish +supersubsist +supersubtle +supersulcus +supersuperb +supersupreme +supersweet +supersystem +supertare +supertax +supertempt +supertension +superterrene +supertonic +supertoolz +supertotal +supertower +supertragic +supertrain +supertramp +supertreason +supertrivial +supertuchun +supertunic +supertx +supertzar +superugly +superunfit +superunit +superunity +superurgent +superuser +supervalue +supervast +supervened +supervenient +supervening +supervention +supervga +supervisal +supervisance +supervise +supervised +supervises +supervising +supervision +supervisive +supervisor +supervisors +supervisual +supervisure +supervital +supervive +supervixen +supervolute +superwager +superwealthy +superweening +superwise +superwoman +superworldly +superwrought +superyacht +superzap +superzealous +superzip +suphan +suphanaburi +suphanburi +suphansa +suphavadee +supi +supia +supide +supinate +supination +supinator +supinely +supineness +suplee +suply +suport +supose +supp +supped +suppedaneum +suppeditate +supper +suppering +supperless +suppers +suppertime +supperwards +suppes +supping +suppire +supplace +supplant +supplanted +supplanter +supplanting +supplantment +supplants +supple +supplejack +supplely +supplement +supplemental +supplemented +supplementer +supplements +suppleness +suppletion +suppletive +suppletively +suppletorily +suppletory +suppliable +supplial +suppliance +suppliancy +suppliant +suppliantly +suppliants +supplicancy +supplicant +supplicantly +supplicants +supplicat +supplicated +supplicating +supplication +supplicative +supplicator +supplicatory +supplicavit +supplice +supplied +supplieda +supplier +suppliers +supplies +supplieth +suppling +supply +supplying +suppo +support +supportable +supportably +supportance +supported +supporter +supporters +supportful +supporting +supportingly +supportive +supportively +supportless +supportoff +supporton +supportress +supports +supposably +supposal +suppose +supposed +supposedly +supposer +supposes +supposing +suppositions +suppositious +suppositive +suppository +suppositum +suppost +suppport +suppported +suppresion +suppress +suppressal +suppressed +suppressedly +suppressen +suppresser +suppresses +suppressing +suppressive +suppressor +suppressors +supprise +suppurant +suppurate +suppurated +suppurating +suppuration +suppurative +suppuratory +supputation +suppute +suprabuccal +supracaecal +supracargo +supracaudal +suprachoroid +supraciliary +supraclusion +supracostal +supracoxal +supracranial +supradental +supradorsal +supradural +supraexpress +suprafine +suprafoliar +supraglacial +supraglenoid +supraglottic +suprahepatic +suprahuman +suprahyoid +suprailiac +suprailium +suprajural +supralabial +supralateral +supralegal +supraliminal +supralineal +supralinear +supralocal +supralocally +supraloral +supralunar +supralunary +supramammary +supramarine +supramastoid +supramaxilla +supramaximal +suprameatal +supramedial +supramental +supramoral +supramortal +supramundane +supranasal +supranatural +supranature +supranee +supranervian +supraneural +supranormal +supranuclear +supraocular +supraoptimal +supraoral +supraorbital +supraorbitar +suprapedal +supraprotest +suprapubian +suprapubic +suprapygal +suprarenal +suprarenalin +suprarenine +suprarimal +suprascapula +suprascript +suprasensual +supraseptal +suprasolar +supraspinal +supraspinate +supraspinous +suprastate +suprasternal +suprastigmal +suprasubtle +supravaginal +supraversion +supravital +supraworld +suprema +supremacies +supremacist +suprematism +supreme +supremely +supremeness +supremities +supremity +supremo +supressed +suprick +suprino +suprise +suprised +suprising +suprisingly +supriya +supship +supshipnn +supshipnrlns +suquamish +suquh +sura +surabaya +surabhai +surachart +suraddition +suradej +suragate +suragerka +suragerkan +surah +surahi +surak +sural +suram +suranal +surangular +surani +surara +surarctic +surat +surati +suratthani +surazski +surbase +surbased +surbasement +surbate +surbated +surbater +surbed +surber +surcharged +surcharger +surcharging +surchi +surcingle +surcoat +surcote +surcrue +surcubamba +surculi +surculose +surculous +surculus +surd +surdation +surdeline +surdent +surdimutism +surdity +surdomute +sure +surecontact +surefire +surefooted +surei +surely +surendra +sureness +surer +sures +suresh +surest +surestore +sureties +suretiship +surette +surety +suretyship +surexpl +surf +surface +surfaced +surfacedly +surfaceless +surfacely +surfaceman +surfaceness +surfacer +surfaces +surfacewater +surfacing +surfacy +surfbird +surfboard +surfboarder +surfboarding +surfboat +surfboatman +surfbot +surfed +surfeiter +surfeiting +surfer +surfers +surficial +surfing +surfle +surflike +surfman +surfmanship +surfrappe +surfside +surfuse +surfusion +surfy +surge +surged +surgeful +surgeless +surgent +surgeoncy +surgeoness +surgeonfish +surgeonless +surgeons +surgeonship +surgeproof +surgere +surgeries +surgerize +surgery +surges +surgical +surgically +surginess +surging +surgoen +surguch +surguja +surgujia +surgury +surgy +suri +suria +suriana +surianaceae +suricata +suricate +suriga +surigao +surigaonon +surikov +surin +surinaams +surinam +suriname +surinamer +surinamese +surinamine +surinder +suring +surira +suriya +surkhandarya +surkhet +surlier +surliest +surlily +surliness +surly +surma +surman +surmark +surmaster +surmisable +surmisal +surmisant +surmised +surmisedly +surmiser +surmises +surmising +surmisings +surmountable +surmountal +surmounted +surmounter +surmounting +surmounts +surmullet +surname +surnamed +surnamer +surnames +surnaming +surnap +surnay +surnominal +suroi +surov +surowaniec +surpassable +surpassed +surpasser +surpasses +surpassing +surpassingly +surpeopled +surplice +surpliced +surplicewise +surplician +surplusage +surplused +surpluses +surprint +surprisable +surprisal +surprise +surprised +surprisedly +surprisement +surpriser +surprises +surprising +surprisingly +surquedry +surquidry +surquidy +surra +surray +surreal +surrealism +surrealist +surrealistic +surreau +surrebound +surrebut +surrebuttal +surrebutter +surrection +surrejoin +surrejoinder +surrenal +surrency +surrender +surrendered +surrenderee +surrenderer +surrendering +surrenderor +surrenders +surreption +surreverence +surreys +surridge +surroca +surrogacy +surrogate +surrogated +surrogates +surrogating +surrogation +surrosion +surround +surrounded +surroundedly +surrounder +surrounding +surroundings +surrounds +surry +sursal +sursilvan +sursolid +sursurunga +surt +surtees +surturbrand +suru +surubo +surubu +surui +surumarani +suruviri +surveillance +survene +survey +surveyable +surveyage +surveyal +surveyance +surveyed +surveying +surveyor +surveyors +surveyorship +surveys +surveysi +survfit +surviellance +survigrous +survila +survivable +survival +survivalism +survivalist +survivals +survivance +survivancy +survive +survived +surviver +survives +surviving +survivng +survivor +survivoress +survivors +survivorship +survo +survreg +surya +suryana +suryoyo +susa +susah +susan +susana +susanchite +susanchites +susanetta +susank +susann +susanna +susannah +susanne +susannite +susanta +susanto +susanville +susarla +susasna +susc +suscept +susceptible +susceptibly +susception +susceptive +susceptivity +susceptor +suschitsky +suscipiency +suscipient +suscitate +suscitation +suse +suseela +susette +sushama +sushen +sushi +sushil +susi +susian +susianian +susick +susie +susiet +susil +susilva +susiua +suska +suslik +suslin +susman +suso +susoo +susotoxin +suspect +suspectable +suspected +suspecter +suspectful +suspectible +suspecting +suspectless +suspector +suspects +suspend +suspended +suspender +suspenders +suspendible +suspendies +suspending +suspends +suspensation +suspense +suspenseful +suspensely +suspenses +suspensible +suspension +suspensions +suspensive +suspensively +suspensoid +suspensorial +suspensories +suspensorium +suspensory +suspicion +suspicional +suspicionful +suspicions +suspicious +suspiciously +suspiration +suspiratious +suspirative +suspire +suspirious +suspiscious +susqu +susquehanna +sussanah +susscussor +sussenguth +sussex +sussexite +sussexman +sussie +sussman +sussmans +sussultatory +sussultorial +sustain +sustainable +sustained +sustainer +sustainers +sustaining +sustainingly +sustainment +sustains +sustanedly +sustem +sustenance +sustentacula +sustentation +sustentative +sustentator +sustention +sustentive +sustentor +susu +susuga +susuhunan +susuidae +susurr +susurrant +susurrate +susurration +susurringly +susurrous +susurrus +susuyalunka +susy +sutaio +sutan +sutarwala +sutcase +sutch +sutcliff +sutcliffe +suter +sutera +suterbery +sutersville +suth +suther +sutherland +sutherlandia +sutherlin +suthers +suthu +suti +sutijitr +sutile +sutini +sutler +sutlerage +sutleress +sutlership +sutlery +suto +sutor +sutorial +sutorian +sutorious +sutorius +sutphen +sutra +sutro +sutrojan +suttapitaka +suttee +sutteeism +sutten +sutter +suttercreek +sutterfield +sutterlin +suttin +suttle +sutton +suttonsbay +sutu +sutural +suturally +suturation +suture +sutured +sutures +suturing +sutven +sutyi +suuicien +suum +suundi +suva +suvanee +suvanto +suvar +suvm +suvorov +suwa +suwaira +suwala +suwalki +suwanatat +suwanawongse +suwanee +suwannakhet +suwannee +suwarro +suwawa +suwawabunda +suwayda +suwayf +suways +suwe +suwin +suwot +suxanne +suxx +suxxx +suya +suyama +suydam +suykens +suyung +suzan +suzana +suzane +suzann +suzanna +suzanne +suzansky +suzdalev +suzee +suzeraine +suzerainship +suzerainties +suzett +suzette +suzhou +suzi +suzie +suzman +suzon +suzuki +suzy +svadba +svalbard +svalesen +svalit +svan +svanetia +svanetian +svanish +svante +svantesson +svantovit +svarabhakti +svarabhaktic +svarloka +svashenko +svatopluk +svatsky +svax +svay +svdisk +svea +svealand +svechah +svedeniy +svein +svellovidov +svelmoe +svelta +sven +svend +svengali +svenneby +svensk +svenson +svenssen +svensson +sverchkov +sverdlin +sverdlov +sverdrup +sveren +sverov +sveshnikov +svetambara +svete +svetilsya +svetitsa +svetlana +svetlov +svetozar +svetsana +svevo +svga +svgas +sviatonosite +sviaz +svid +svidetelya +svilans +svilen +svjetlana +svlp +svoboda +svobodovna +svoego +svoem +svoey +svoi +svoim +svoiu +svojtka +svoy +svoyu +svpctx +swabbed +swabber +swabberly +swabbie +swabbing +swabble +swabian +swaby +swack +swacken +swackhammer +swacking +swact +swad +swaddle +swaddlebill +swaddled +swaddler +swaddling +swaddy +swade +swaden +swadesh +swadeshi +swadeshism +swaef +swafford +swag +swaga +swagbellied +swagbelly +swaged +swager +swaggart +swagged +swagger +swaggered +swaggerer +swaggering +swaggeringly +swaggie +swagging +swaggy +swaging +swaglike +swagman +swags +swagsman +swagup +swahilese +swahilian +swahilize +swails +swaimous +swaine +swainish +swainishness +swains +swainsboro +swainship +swainsona +swaird +swaka +swakopmund +swale +swaledale +swaler +swales +swalescliffe +swaling +swalingly +swallet +swallo +swallow +swallowable +swallowed +swallower +swalloweth +swallowing +swallowlike +swallowling +swallowpipe +swallows +swallowwort +swam +swami +swamis +swamp +swampable +swampberry +swampbranch +swamped +swamper +swampier +swampiest +swampiness +swamping +swampish +swampishness +swampland +swamps +swampscott +swampside +swampweed +swampwood +swamy +swan +swana +swandi +swandown +swanee +swanepoel +swanepoet +swanflower +swang +swangrat +swangy +swanherd +swanhood +swanick +swanimote +swank +swanker +swankier +swankiest +swankily +swankiness +swanking +swanlake +swanmark +swanmarker +swanmarking +swann +swannanoa +swanneck +swannecked +swanner +swannery +swannish +swanny +swanquarter +swanriver +swans +swansboro +swansdown +swansea +swansisland +swanskin +swanson +swanston +swanstrom +swantevit +swanton +swanvalley +swanville +swanweed +swanwick +swanwort +swap +swape +swapexec +swapinfo +swapload +swapo +swapoff +swapon +swapped +swapper +swapping +swapptr +swaps +swara +swaraj +swarajism +swarajist +swarbie +sward +swardy +sware +swarest +swarf +swarfer +swarm +swarmed +swarmer +swarming +swarms +swarmy +swarry +swartback +swarth +swarthier +swarthiest +swarthily +swarthiness +swarthness +swarthy +swartish +swartliness +swartly +swartness +swartrutter +swartrutting +swartswood +swarty +swartz +swartzbois +swartzcreek +swartzia +swartzman +swartzoppen +swarve +swasey +swash +swashbuckle +swashbuckler +swasher +swashing +swashway +swashwork +swashy +swastikaed +swat +swatchel +swatcher +swatchway +swath +swathable +swathband +swatheable +swathed +swather +swathing +swathy +swati +swatow +swatted +swatter +swattle +swavek +swaver +sway +swayable +swayamsevak +swayback +swaybacked +swayed +swayer +swayful +swaying +swayingly +swayle +swayless +swayne +swayze +swayzee +swazey +swazi +swchief +swdn +sweacity +sweal +sweamish +swear +swearer +swearers +sweareth +swearing +swearingen +swearingly +swears +swearword +sweat +sweatbox +sweated +sweaters +sweatful +sweath +sweatier +sweatiest +sweatily +sweatiness +sweating +sweatless +sweatproof +sweats +sweatshop +sweatt +sweatweed +sweaty +swede +swedeborg +sweden +swedenborg +swedes +swedesboro +swedesburg +swedge +swedish +swedlow +sweeden +sweek +sweeney +sweeny +sweep +sweepable +sweepage +sweepback +sweepboard +sweepdom +sweeper +sweeperess +sweepers +sweepforward +sweeping +sweepingly +sweepingness +sweepings +sweeplist +sweeps +sweepstakes +sweepwasher +sweepy +sweer +sweered +sweet +sweetback +sweetberry +sweetbox +sweetbread +sweetbreads +sweetbriar +sweetbrier +sweetbriery +sweetchuck +sweetened +sweetener +sweeteners +sweetening +sweetenings +sweetens +sweeter +sweetest +sweetfish +sweetful +sweetgrass +sweethearted +sweethearts +sweethome +sweetie +sweeting +sweetishly +sweetishness +sweetland +sweetleaf +sweetless +sweetley +sweetlike +sweetling +sweetly +sweetmaker +sweetman +sweetmeat +sweetmouthed +sweetnam +sweetness +sweetroot +sweets +sweetscented +sweetser +sweetshop +sweetsleepy +sweetsome +sweetsop +sweetsprings +sweetvalley +sweetwater +sweetweed +sweetwood +sweetwort +sweety +swego +swelchie +sweldund +swell +swellage +swelldom +swelldoodle +swelled +sweller +swellfish +swellheaded +swelling +swellings +swellish +swellishness +swellmobsman +swellness +swells +swelltoad +swelly +swelp +sweltered +sweltering +swelteringly +swelth +sweltrier +sweltriest +sweltry +swelty +swemmer +swenga +swengel +swensen +swep +swepsonville +swepston +swept +sweptback +sweptwing +swerd +swerdlow +swertia +swertings +swerve +swerved +swerveless +swerver +swerves +swervily +swerving +sweta +swetka +swetlana +swett +sweyd +swhat +swiat +swiatkowski +swicegood +swick +swickard +swidden +swiderski +swidge +swietenia +swift +swiften +swifter +swiftest +swiftfoot +swiftian +swiftlet +swiftlike +swiftly +swiftness +swifton +swiftown +swifts +swiftwater +swifty +swig +swigged +swigger +swiggle +swile +swill +swillbowl +swiller +swilling +swilltub +swim +swiming +swimmable +swimmer +swimmeret +swimmers +swimmest +swimmeth +swimmily +swimmin +swimminess +swimming +swimmingly +swimmingness +swimmist +swimmy +swims +swimy +swina +swinamer +swinburne +swinburnian +swindle +swindleable +swindled +swindledom +swindler +swindlership +swindlery +swindling +swindlingly +swindon +swindone +swine +swinebread +swinecote +swinehead +swineherd +swinehood +swinehull +swinelike +swinely +swinepipe +swinery +swinestone +swinesty +swiney +swinford +swing +swingback +swingdevil +swingdingle +swinge +swingeing +swinger +swingers +swingin +swinging +swingingly +swingism +swingle +swinglebar +swingler +swingletail +swingletree +swings +swingstock +swingtree +swinish +swinishly +swinishness +swink +swinkels +swinks +swinney +swinomish +swinoujscie +swinson +swinton +swinwood +swipe +swiped +swiper +swipes +swiping +swiple +swipper +swipy +swird +swire +swirl +swirled +swirling +swirlingly +swirls +swirring +swished +swisher +swishing +swishingly +swiss +swissair +swissarmy +swissess +swisshome +swissing +swissvale +swit +switch +switchar +switchback +switchbacked +switchbacker +switchbacks +switchblades +switchboard +switchboards +switched +switchel +switcher +switchers +switches +switching +switchings +switchkeeper +switchlike +switchmen +switchy +switchyard +swith +swithe +swithen +swither +swithin +switolski +switzcity +switzer +switzeress +switzerland +switzler +swivel +swiveled +swiveleye +swiveleyed +swiveling +swivelled +swivellike +swivelling +swivet +swivetty +swiz +swizzler +swizzling +swob +swobbed +swobbing +swofford +swoger +swoiden +swollen +swollenly +swollenness +swom +swonken +swoon +swooned +swooning +swooningly +swoony +swoope +swooped +swooper +swooping +swoops +swoosh +swooshed +swoosie +swop +swope +swopped +swopping +sword +swordbayonet +swordbill +swordcraft +sworder +swordfishery +swordfishing +swordgrass +swordick +swording +swordless +swordlet +swordlike +swordmaker +swordmaking +swordman +swordmanship +swordplayer +swordproof +swords +swordscreek +swordshaped +swordsman +swordsmen +swordsmith +swordster +swordstick +swordswoman +swordweed +swore +sworn +swose +swosh +swot +swotter +swounds +swow +swraaa +swreg +swri +swung +swungen +swure +swyer +syagush +syal +syan +syangja +syava +sybaris +sybarism +sybarist +sybarital +sybaritan +sybaritic +sybaritical +sybaritish +sybaritism +sybase +sybertsville +sybex +sybil +sybila +sybilla +sybille +sybotic +sybotism +sybyl +sybylla +sycamine +sycamore +sycamores +syce +sycee +sychar +sychem +sycock +sycoma +sycomancy +sycomore +sycomores +sycon +syconaria +syconarian +syconate +sycones +syconid +syconidae +syconium +syconoid +syconus +sycophancies +sycophancy +sycophantish +sycophantism +sycophantize +sycophantry +sycosiform +sycosis +sydel +sydelle +sydes +sydjylland +sydne +sydneian +sydney +sydneyite +sydnor +sydor +sydoryk +sydow +syed +syemu +syene +syenere +syenitic +syenodiorite +syenogabbro +syer +syertenyer +syev +syftn +sygate +syiagha +syke +sykes +sykeston +sykesville +sylable +sylacauga +sylevine +sylherria +sylhet +sylhetti +sylid +sylistically +sylk +syllab +syllabarium +syllabary +syllabatim +syllabation +syllabe +syllabical +syllabically +syllabicate +syllabicated +syllabicness +syllabified +syllabifying +syllabism +syllabize +syllabled +syllables +syllabuses +syllepsis +sylleptic +sylleptical +syllidae +syllidian +syllis +sylloge +syllogisms +syllogist +syllogistics +syllogize +syllogizer +sylmar +sylph +sylphic +sylphid +sylphidine +sylphish +sylphize +sylphlike +sylphon +sylphy +sylt +sylva +sylvae +sylvage +sylvain +sylvaine +sylvan +sylvanbeach +sylvanesque +sylvangrove +sylvania +sylvanite +sylvanitic +sylvanity +sylvanize +sylvanly +sylvanols +sylvanry +sylvanus +sylvate +sylvatic +sylvester +sylvestral +sylvestre +sylvestrene +sylvestrian +sylvestrine +sylvia +sylvian +sylvic +sylvicolidae +sylvicoline +sylvie +sylviidae +sylviinae +sylviine +sylvine +sylvinite +sylvio +sylvite +sylvus +symantec +symbasic +symbasical +symbasically +symbasis +symbion +symbiont +symbiontic +symbiosis +symbiot +symbiote +symbiotic +symbiotics +symbiotism +symblepharon +symbol +symbolater +symbolatrous +symbolatry +symbolic +symbolical +symbolically +symbolicly +symbolics +symbolism +symbolist +symbolistic +symbolize +symbolized +symbolizer +symbolizes +symbolizing +symbolobject +symbological +symbologist +symbology +symbololatry +symbolology +symbolry +symbols +symbouleutic +symbranch +symbranchia +symbranchoid +symbranchous +symdeb +symen +symington +symlinks +symmachy +symmedian +symmelia +symmelian +symmelus +symmetalism +symmetral +symmetric +symmetrical +symmetries +symmetrist +symmetrize +symmetrized +symmetroid +symmetry +symmorphic +symmorphism +symms +symo +symon +symonds +symons +sympad +sympathetic +sympathies +sympathism +sympathist +sympathize +sympathized +sympathizer +sympathizers +sympathizes +sympathizing +sympathy +sympatric +sympatry +sympetalae +sympetalous +symphalangus +symphathy +symphenomena +symphile +symphilic +symphilism +symphilous +symphily +symphogenous +symphonetic +symphonia +symphonic +symphonica +symphonie +symphonies +symphonion +symphonious +symphonist +symphonize +symphonizing +symphonous +symphony +symphrase +symphyla +symphylan +symphyllous +symphylous +symphynote +symphyseal +symphysial +symphysian +symphysic +symphysion +symphysis +symphysotomy +symphysy +symphyta +symphytic +symphytism +symphytize +symphytum +symplasm +symplegades +symplesite +symplocaceae +symplocarpus +symploce +symplocos +sympode +sympodia +sympodial +sympodially +sympodium +sympolity +sympom +symposiac +symposiacal +symposial +symposiarch +symposiast +symposiastic +symposion +symposisia +symposisiums +symposium +symposiums +sympson +symptom +symptomatic +symptomatics +symptomatize +symptomical +symptomize +symptomless +symptoms +symptosis +syms +symsonia +symtab +symtomology +syna +synacme +synacmic +synacmy +synactic +synadelphite +synaeresis +synagogal +synagogian +synagogical +synagogism +synagogist +synagogue +synagogues +synalgia +synalgic +synallactic +synaloepha +synange +synangia +synangial +synangic +synangium +synanthema +synantherous +synanthesis +synanthetic +synanthic +synanthous +synanthrose +synanthy +synaphea +synapses +synapsida +synapsidan +synapsis +synaptai +synaptase +synapte +synaptene +synaptera +synapterous +synaptical +synaptically +synapticula +synapticulae +synapticular +synapticulum +synaptychus +synar +synarchical +synarchism +synarchy +synarmogoid +synarquism +synartesis +synartete +synartetic +synarthrodia +synarthrosis +synascidiae +synascidian +synastry +synaxar +synaxarion +synaxarist +synaxarium +synaxary +synaxis +synbp +sync +syncarida +syncarp +syncarpia +syncarpium +syncarpous +syncarpy +syncedit +syncephalic +syncephalus +syncerebral +syncerebrum +synch +synching +synchitic +synchondoses +synchonizing +synchoresis +synchretism +synchro +synchroflash +synchromesh +synchronal +synchrone +synchronet +synchronic +synchronical +synchronize +synchronized +synchronizer +synchronizes +synchronous +synchroscope +synchysis +synchytrium +syncladous +synclastic +synclinal +synclinally +syncline +synclinical +synclinore +synclinorial +synclinorian +synclinorium +synclitic +syncliticism +synclitism +syncoelom +syncopal +syncopated +syncopating +syncopation +syncopator +syncope +syncopic +syncopism +syncopist +syncopize +syncracy +syncraniate +syncranteric +syncrasy +syncretic +syncretical +syncreticism +syncretion +syncretism +syncretist +syncretistic +syncretize +syncrisis +syncronizer +syncronizers +syncrypta +syncryptic +synctape +syncytia +syncytial +syncytioma +syncytiomata +syncytium +syndactyl +syndactylia +syndactylic +syndactylism +syndactylous +syndactyly +syndectomy +synder +synderesis +syndesis +syndesmitis +syndesmology +syndesmoma +syndesmon +syndesmosis +syndesmotic +syndesmotomy +syndetic +syndetical +syndetically +syndical +syndicalism +syndicalist +syndicalize +syndicate +syndicated +syndicateer +syndicates +syndicating +syndication +syndicator +syndicship +syndoc +syndrome +syndromes +syndromic +syndyasmian +syndyoceras +syne +synecdoche +synecdochic +synecdochism +synechia +synechiology +synechology +synechotomy +synechthran +synechthry +synecology +synectic +synecticity +synedra +synedral +synedria +synedrial +synedrian +synedrion +synedrium +synedrous +syneidesis +synema +synemmenon +synentognath +syneresis +synergastic +synergetic +synergia +synergic +synergically +synergid +synergidae +synergidal +synergism +synergisms +synergist +synergize +synergy +synerize +synesis +synesthesia +synesthetic +synethnic +synful +syngamic +syngamous +syngamy +syngenesia +syngenesian +syngenesious +syngenesis +syngenetic +syngenic +syngenism +syngenite +syngnatha +syngnathi +syngnathid +syngnathidae +syngnathoid +syngnathous +syngnathus +syngraph +synir +synizesis +synkaryon +synkinesia +synkinesis +synkinetic +synne +synness +synneurosis +synneusis +synochoid +synochus +synocreate +synodal +synodalian +synodalist +synodally +synodical +synodically +synodinou +synodist +synodite +synodontid +synodontidae +synodontoid +synodsman +synodus +synoecete +synoeciosis +synoecious +synoeciously +synoecism +synoecize +synoecy +synoicous +synomosy +synonomous +synonomously +synonym +synonymatic +synonymic +synonymical +synonymicon +synonymics +synonymies +synonymist +synonymity +synonymize +synonymously +synonyms +synopsis +synopsize +synopsized +synopsizing +synopsy +synoptical +synoptically +synoptist +synoptistic +synorchidism +synorchism +synosteology +synosteosis +synostose +synostosis +synostotic +synostotical +synousiacs +synovectomy +synovia +synovial +synovially +synoviparous +synovitic +synovitis +synpelmous +syns +synsacral +synsacrum +synsepalous +synspermous +synsporous +syntactially +syntactical +syntactician +syntactics +syntagma +syntan +syntasis +syntatical +syntax +syntaxes +syntaxis +syntaxist +syntechnic +syntectic +syntectical +syntelome +synteng +syntenosis +synteresis +synterm +syntexis +synthamycin +syntheme +synthermal +synthesis +synthesising +synthesism +synthesist +synthesize +synthesized +synthesizer +synthesizers +synthesizes +synthesizing +synthete +synthetic +synthetical +syntheticism +synthetics +synthetism +synthetist +synthetize +synthetizer +synthol +synthroni +synthronoi +synthronos +synthronus +syntomia +syntomy +syntone +syntonic +syntonical +syntonically +syntonin +syntonize +syntonizer +syntonous +syntony +syntripsis +syntrope +syntrophic +syntropic +syntropical +syntropy +syntyche +syntype +syntypic +syntypicism +synura +synusia +synusiast +syodicon +syosset +syphax +sypher +syphilide +syphilis +syphilitic +syphilize +syphiloderm +syphilogeny +syphiloid +syphilology +syphiloma +syphilophobe +syphilosis +syphilous +syphoning +syposz +syra +syracusan +syracuse +syre +syres +syrett +syrette +syrgeon +syria +syriac +syriacism +syriacist +syriack +syriamaachah +syrian +syrianic +syrianism +syrianize +syrians +syriarch +syriasm +syrien +syringa +syringe +syringeal +syringeful +syringes +syringin +syringitis +syringium +syringocoele +syringotome +syringotomy +syrinxes +syriologist +syrischen +syrius +syrma +syrmia +syrmian +syrnium +syrolebanese +syrphian +syrphid +syrphidae +syrringed +syrringing +syrt +syrtic +syrtis +syruped +syruper +syruplike +syryenian +syryoyo +sysadfmin +sysadmin +sysadmins +sysbench +sysbin +syscall +syscom +syscons +syse +sysex +sysfrog +sysgen +sysid +sysin +sysinfo +sysinstall +sysint +sysiwyg +syskey +syski +sysla +syslar +syslevel +syslog +syslogd +sysman +sysmangr +sysmon +sysop +sysoped +sysopka +sysops +sysout +sysprog +sysr +sysreg +sysreq +syssarcosis +syssel +sysselman +sysselmann +syssiderite +syssitia +syssition +syssupport +syst +systaltic +systasis +systat +systatic +syste +system +systemalso +systemare +systematic +systematical +systematics +systematism +systematist +systematize +systematized +systematizer +systematizes +systeme +systemed +systemic +systemically +systemist +systemizable +systemize +systemized +systemizer +systemizing +systemless +systemlevel +systemm +systemproof +systems +systemsis +systemsz +systemwise +systest +systewm +systilius +systim +systolated +systole +systolic +systyle +systylous +sysutils +sysv +sysvile +sysytem +sytsem +syuba +syverton +syyed +syzanne +syzygetic +syzygial +syzygium +szabadsag +szabo +szabuniewicz +szaby +szaibelyite +szakall +szaleje +szamosi +szaplonczay +szapolawska +szarabajka +szaran +szarasfoldon +szasz +szatrowski +szczecin +szczescie +szczesny +szeakbagili +szechuan +szef +szekely +szekler +szemes +szenes +szerelembol +szeto +szheval +szibo +szicki +sziget +szigethy +szigetti +sziklay +szikora +sziladi +szirtes +szivem +szkarlat +szlachta +szlasa +szmidt +szmigiel +szmytowna +sznitman +szocke +szolnok +szopelka +szopinski +szot +szpakowski +szpilfogel +szpirglas +sztein +szuchi +szumibor +szuminski +szura +szurmiej +szymanski +szymon +szynal +szypulski +taaake +taabwa +taadjio +taagepera +taai +taakeslottet +taal +taalbond +taam +taan +taanach +taang +taaon +taar +taarawakan +taareyo +taarnet +taataal +taawo +taba +tabaa +tabacin +tabacosis +tabacum +tabago +tabai +tabaja +tabajari +tabakov +tabakowitsch +tabalba +tabalong +tabangkwari +tabanid +tabanidae +tabaniform +tabanuco +tabanus +tabaq +tabar +tabard +tabarded +tabare +tabaret +tabarie +tabaru +tabas +tabasaran +tabasarantsy +tabasco +tabasheer +tabashir +tabatha +tabaxir +tabbaoth +tabbard +tabbarea +tabbath +tabbatha +tabbed +tabber +tabbert +tabbi +tabbie +tabbies +tabbinet +tabbitha +tabbs +tabby +tabclear +tabdivide +tabeal +tabeba +tabebuia +tabeel +tabefaction +tabefy +tabelbala +tabele +tabella +tabellaria +tabellion +tabepi +taber +taberah +taberdar +taberg +tabering +taberna +tabernacle +tabernacler +tabernacles +tabernacular +tabernariae +tabernash +tabernero +tabes +tabescence +tabescent +tabeshaw +tabet +tabetic +tabetiform +tabetless +tabexport +tabi +tabiate +tabic +tabid +tabidly +tabidness +tabific +tabifical +tabilong +tabina +tabinet +tabiona +tabios +tabira +tabit +tabita +tabiteuea +tabitha +tabitude +tabl +tabla +tablada +tablas +tablature +tablazo +table +tableaus +tablecloths +tableclothy +tablecolumns +tabled +tablefellow +tableful +tablegrove +tableheading +tablehopped +tablehopping +tableid +tableity +tablelands +tableless +tablelike +tablemaid +tablemaker +tablemaking +tableman +tablemate +tablemount +tableng +tablenumber +tabler +tablerock +tables +tablespoons +tablet +tabletary +tabletext +tabletop +tabletopl +tablets +tabletype +tableware +tablewise +tablex +tablian +tablier +tabligbo +tabling +tablinum +tabloid +taboada +tabocal +tabog +tabojan +tabone +taboo +tabooism +tabooist +taboos +taboot +taboparesis +taboparetic +tabophobia +tabor +tabora +taborcity +tabord +taborder +taborer +taboret +tabori +taborin +taborite +taborko +taboro +tabosa +tabou +taboulamo +tabouli +tabour +tabourer +tabouret +tabourin +tabourine +tabourno +taboyan +tabret +tabrets +tabri +tabriak +tabrimon +tabriz +tabroda +tabs +tabset +tabstop +tabtim +tabuaeran +tabuid +tabuk +tabukam +tabukan +tabukang +tabula +tabulable +tabulago +tabulahan +tabulare +tabularium +tabularize +tabularizing +tabularly +tabulary +tabulata +tabulated +tabulates +tabulating +tabulation +tabulations +tabulator +tabulators +tabulatory +tabule +tabuliform +tabuloba +tabun +tabut +tabuyan +tabuyo +tabwa +tabywana +tacac +tacacs +tacahout +tacamahac +tacana +tacanan +tacaneco +tacca +taccaceae +taccaceous +taccada +tacet +tacey +tach +tacha +tachardia +tachardiinae +tache +tacheless +tachelhit +tacheography +tacheometer +tacheometric +tacheometry +taches +tacheture +tachhydrite +tachi +tachibana +tachihara +tachilhit +tachina +tachinaria +tachinarian +tachinidae +tachiol +tachira +tachisme +tachky +tachmonite +tacho +tachogram +tachograph +tachometers +tachometry +tachon +tachoni +tachoscope +tachycardia +tachycardiac +tachygen +tachygenesis +tachygenetic +tachygenic +tachyglossal +tachyglossus +tachygraph +tachygrapher +tachygraphic +tachygraphy +tachyhydrite +tachyiatry +tachylalia +tachylite +tachylyte +tachylytic +tachymeter +tachymetric +tachymetry +tachyphagia +tachyphasia +tachyphemia +tachyphrasia +tachyphrenia +tachypnea +tachyscope +tachyseism +tachysterol +tachysystole +tachytomy +tachytype +tacitean +tacitly +tacitness +taciturn +taciturnist +taciturnity +taciturnly +tacitus +tacked +tacker +tacket +tackety +tackey +tackier +tackiest +tackiness +tacking +tackingly +tackle +tackleberry +tackled +tackleless +tackleman +tackler +tackles +tackless +tackling +tacklings +tackproof +tacks +tacksbury +tacksman +tacloban +taclocus +tacmahack +tacna +tacnode +taco +tacom +tacoma +taconian +taconic +taconite +tacos +tacso +tacsonia +tact +tactable +tactfully +tactfulness +tactical +tactically +tactics +tactilist +tactility +tactilogical +taction +tactite +tactive +tactless +tactlessly +tactlessness +tactometer +tactor +tactosol +tactualist +tactuality +tactually +tactus +tacuacine +tacuarembo +taculli +tacy +tada +tadamori +tadanori +tadao +tadashi +tadavi +tadayuki +taddio +tade +tadek +tadeo +tadeusz +tadevich +tadge +tadger +tadghaq +tadianan +tadic +tadija +tadikamalla +tadio +tadjik +tadjikistan +tadjio +tadjoura +tadlock +tadman +tadmor +tado +tadousac +tadpoledom +tadpolehood +tadpolelike +tadpoles +tadpolism +tadrusz +tadvi +tady +tadyawan +tadzhik +tadzik +taea +taechew +taeger +taegu +tael +taen +taena +taenia +taeniacidal +taeniacide +taeniada +taeniafuge +taenial +taenian +taeniasis +taeniata +taeniate +taenicide +taenidia +taenidium +taeniform +taenifuge +taeniiform +taeniodonta +taeniodontia +taenioglossa +taenioid +taeniosome +taeniosomi +taeniosomous +taenite +taenkte +taennin +taetsia +taeuber +taeve +tafas +tafawa +tafea +taffarel +taffel +tafferel +taffety +taffey +taffle +taffrail +taffy +taffylike +taffymaker +taffymaking +taffywise +tafi +tafia +tafida +tafilah +tafinagh +tafire +tafler +tafres +taftazani +tafton +taftsville +taftville +tafuna +tafur +tafuri +tafwiz +taga +tagab +tagabawa +tagabili +tagabilis +tagabo +tagailap +tagakaolo +tagakaulu +tagakawanan +tagal +tagala +tagalagad +tagale +tagalisa +tagalize +tagalo +tagalog +tagant +tagara +tagaro +tagasaste +tagashira +tagassu +tagassuidae +tagatose +tagau +tagaur +tagaytay +tagba +tagbana +tagbanua +tagbanwa +tagbari +tagbilaran +tagbo +tagboard +tagbu +tagbwali +tage +tagebuch +tagen +tageszeiten +taget +tagetes +tagetol +tagetone +tagfield +tagfiles +tagg +taggal +taggart +tagged +taggen +tagger +taggert +taggi +tagging +taggle +taggy +taghdansh +taghizadeh +taghlik +tagilite +taginambur +tagish +tagkhul +taglet +tagliacotian +taglike +taglines +taglock +tagmeme +tagmemics +tago +tagoe +tagoi +tagol +tagore +tagota +tagouna +tagoy +tagpochu +tagrag +tagraggery +tagria +tagro +tags +tagsore +tagtail +tagua +taguan +taguchi +tagul +tagula +tagulandang +tagus +tagvi +tagwana +tagwerk +taha +tahaggart +tahajjud +tahami +tahamont +tahan +tahanites +tahapanes +tahari +taharuddin +tahath +taheen +taheri +tahi +tahil +tahin +tahir +tahiti +tahitian +tahitic +tahkhana +tahlequah +tahltan +tahltankaska +tahnee +tahoe +tahoecity +tahoeraa +tahoevista +tahoka +taholah +tahoua +tahpanhes +tahpenes +tahr +tahrea +tahseeldar +tahsil +tahsildar +taht +tahtimhodshi +tahua +tahuamanu +tahuata +tahuerh +tahulandang +tahup +tahur +tahuya +tahylandang +taiaha +taiak +taib +taiban +taibano +taich +taichi +taichiang +taichou +taichung +taieleme +taif +taifasy +taifer +taiga +taigi +taigle +taiglesome +taihlong +taihoa +taihsi +taija +taiji +taijyal +taik +taikaku +taikat +taikhana +taikung +tail +tailage +tailangi +tailband +tailboard +tailbox +tailcoat +tailed +tailender +tailer +tailet +tailevu +tailfan +tailfirst +tailflower +tailforemost +tailgated +tailgater +tailgating +tailge +tailhead +tailing +tailings +taille +tailless +taillessly +taillessness +taillie +taillight +taillike +tailoi +tailor +tailorage +tailorbird +tailorcraft +tailordom +tailored +tailoress +tailorhood +tailoring +tailorism +tailorize +tailorless +tailorlike +tailorly +tailorman +tailors +tailorship +tailorwise +tailory +tailpiece +tailpin +tailpipe +tailrace +tails +tailsheet +tailsman +tailstock +tailte +tailward +tailwards +tailwise +taily +tailzee +tailzie +taimani +taimen +taimoro +taimouri +taimuri +taimyrite +tain +taina +tainan +tainbour +tainda +taindaware +taine +taino +tainsy +taintable +tainted +taintless +taintlessly +taintment +taintor +taintproof +tainture +taintworm +tainui +taiof +taior +taipan +taipe +taipei +taipi +taiping +taipo +tair +tairge +tairger +tairi +tairn +tairora +tais +taisaka +taisch +taise +taishan +taisho +taishun +taissezvous +taissle +taistrel +taistril +tait +taita +taitung +taiu +taiver +taivers +taivert +taivoan +taiwaeno +taiwan +taiwana +taiwanese +taiwanhemp +taiwano +taiyal +taiyen +taiyeve +taiyo +taiyuan +taiz +taizhou +taizz +tajada +tajbakhsh +tajik +tajiki +tajikistan +tajiks +tajikstan +tajio +tajkat +tajko +tajpuri +tajuasohn +tajuason +tajumulco +tajuoso +tajuosohn +tajura +taka +takaaki +takable +takacs +takada +takagi +takahashi +takahiro +takaichvili +takaicvili +takaki +takako +takakura +takala +takalar +takale +takalubi +takam +takama +takamaka +takamanda +takamaru +takamine +takana +takane +takankar +takankari +takanoon +takao +takapan +takar +takarada +takaraya +takari +takarubi +takase +takash +takashi +takashima +takasi +takat +takata +takaya +takayama +takayuki +takbanuao +takchto +take +takeaki +takebakha +takedown +takedownable +takefman +takeful +takehiko +takei +takejo +takelma +takemail +takemi +taken +takengon +takeoff +takeout +takeover +takeovers +taker +takers +takes +takeshi +takeshita +takest +takestan +takestani +taketh +taketime +taketodo +taketomi +taketoshi +takeuchi +takev +takevatan +takeyuki +takhaar +takhar +takhtadjy +takhu +taki +takia +takic +takie +takih +takiji +takilman +takim +takimpo +takin +taking +takingly +takingness +takings +takis +takistani +takitaki +takitumu +takiyanagi +takizawa +taklimakan +tako +takoe +takom +takonan +takopulan +takoradi +takosis +takoy +takpa +takpasyeeri +takshi +taksin +takt +taku +takua +takudh +takum +takuma +takumi +takuna +takutuupper +takuu +takuy +takuzo +takwale +taky +takyr +tala +talabon +talackine +talada +talae +talagrand +talahib +talahundra +talai +talaing +talaje +talak +talal +talala +talalgia +talalla +talamanca +talamancan +talamantes +talamini +talang +talangit +talankai +talansi +talantang +talanton +talao +talapoin +talar +talara +talari +talaria +talarian +talarians +talaric +talas +talasea +talassa +talau +talaud +talavia +talay +talayot +talberg +talbert +talbot +talbott +talbotton +talbotype +talby +talcahuano +talcer +talcher +talcked +talcking +talcky +talclike +talco +talcoid +talcose +talcott +talcous +talcum +tald +taldo +tale +talebearer +talebearing +talebook +talecarrier +talecarrying +taled +taleful +talegallinae +talegallus +talemaster +talemonger +talene +taleng +talensi +talent +talented +talentless +talents +talepyet +taler +tales +talesh +talesman +taleteller +taletelling +talevi +talfrey +tali +talia +taliabo +taliabu +taliacotian +taliaferio +taliaferro +taliage +taliang +taliation +talib +talieng +taliera +taligrade +talihina +talineau +talinga +talinum +talion +talionic +talipat +taliped +talipedic +talipes +talipomanus +talipot +talis +talisay +talise +talisferro +talish +talisheek +talishi +talisi +talisman +talismanical +talismanist +talismans +talite +talitha +talitol +talk +talkability +talkable +talkathon +talkative +talkatively +talkd +talked +talker +talkers +talkest +talketh +talkfest +talkful +talkier +talkiest +talkin +talkiness +talking +talkingrock +talks +talkworks +talkworthy +tall +talla +talladega +tallage +tallageable +tallahassee +tallant +tallapoosa +tallassee +tallau +tallbear +tallboy +tallchief +tallega +tallegalane +tallensi +taller +tallero +talles +tallest +tallet +tallett +tallevast +talleycavey +talli +tallia +talliable +talliage +talliar +talliate +tallichet +tallie +tallied +tallier +tallies +tallinn +tallis +tallish +tallit +tallith +tallmadge +tallman +tallness +talloel +tallon +tallote +tallou +tallow +tallowberry +tallower +tallowiness +tallowing +tallowish +tallowlike +tallowmaker +tallowmaking +tallowman +tallowroot +tallowweed +tallowwood +tallowy +talltimbers +tallula +tallulah +tallumpanuae +tallwood +tally +tallyhos +tallying +tallyman +tallymanship +tallywag +tallywalka +tallywoman +talma +talmadge +talmage +talmai +talman +talmann +talmo +talmon +talmont +talmor +talmouse +talmudic +talmudical +talmudism +talmudist +talmudistic +talmudize +talni +talo +taloc +talocrural +talodi +talofibular +taloga +taloka +taloma +talon +talondo +taloned +talonic +talonid +talons +taloscaphoid +talose +talosians +talotibial +talpa +talpacoti +talpatate +talpetate +talpicide +talpid +talpidae +talpiform +talpify +talpine +talpoid +talsorian +talthib +talthybius +talton +taluche +taluhet +taluk +taluka +talukdar +talukdari +talukder +taluki +talus +talut +taluti +taluto +talwalker +talwar +talwood +talya +talyah +talyev +talysh +talyshin +tama +tamability +tamable +tamableness +tamably +tamaceae +tamachek +tamachhang +tamachhange +tamacoare +tamagarast +tamagario +tamagotchi +tamah +tamaha +tamahaq +tamahmerah +tamaja +tamajeq +tamako +tamakwa +tamal +tamalsan +tamalu +taman +tamana +tamanac +tamanaca +tamanaco +tamandu +tamandua +tamang +tamangs +tamanik +tamanoas +tamanoir +tamanowus +tamanrasset +tamanu +tamanyik +tamaqua +tamar +tamara +tamarah +tamaraite +tamaran +tamarao +tamaraw +tamare +tamarelli +tamari +tamaria +tamarian +tamarians +tamaricaceae +tamarin +tamarindus +tamarisk +tamariwa +tamarix +tamaroa +tamaroff +tamarra +tamas +tamasese +tamasha +tamashek +tamashekin +tamasheq +tamasi +tamassee +tamassy +tamasungor +tamaulipas +tamaulipecan +tamaya +tamazight +tamazulapam +tamazunchale +tamba +tambac +tambacounda +tambaggo +tambahoaka +tambala +tambang +tambanua +tambanuo +tambanuva +tambanwas +tambaro +tambarona +tambaroora +tambas +tambatu +tambe +tambee +tambenua +tamber +tamberlani +tamberma +tambio +tamblyn +tambo +tambogo +tamboka +tamboki +tamboo +tambookie +tambopata +tambor +tambotalo +tambouki +tambour +tamboura +tambourer +tambouret +tambourgi +tambourin +tambourinade +tambourist +tambours +tambov +tambreet +tambrey +tambual +tambuka +tambuki +tambul +tambunan +tambunum +tambunwas +tambuoki +tambura +tamburan +tamburello +tamburi +tamburro +tame +tamea +tameable +tamed +tamehearted +tamein +tameko +tameless +tamelessly +tamelessness +tamely +tameness +tamenund +tamer +tamera +tamerlani +tamerlanism +tames +tamest +tamezret +tamhane +tami +tamian +tamias +tamidine +tamie +tamiko +tamil +tamili +tamilian +tamilic +tamilkannada +tamilkodagu +tamilouw +tamim +tamiment +taminambor +taming +tamiroff +tamiroft +tamis +tamise +tamkhungnyuo +tamlu +tamlung +tamlyn +tamma +tammanial +tammanize +tammanyism +tammanyite +tammanyize +tammara +tammaro +tammas +tammi +tammie +tammock +tamms +tammuz +tammy +tammyfaye +tamnim +tamok +tamolan +tamonea +tamongobo +tamot +tamoyo +tampa +tampala +tampan +tampang +tampasok +tampassuk +tampasuk +tampele +tamper +tampere +tampered +tamperer +tampering +tamperproof +tampers +tampias +tampico +tampin +tamping +tampion +tampioned +tamplima +tampole +tampolem +tampolense +tamponade +tamponage +tamponment +tampoon +tamprusi +tampuan +tampulma +tampur +tamqrah +tamra +tamrazian +tamriko +tamruat +tams +tamsangmu +tamsen +tamsie +tamsin +tamtam +tamu +tamudes +tamul +tamulian +tamulic +tamun +tamura +tamus +tamworth +tamzine +tana +tanacetin +tanacetone +tanacetum +tanacetyl +tanach +tanacross +tanaghai +tanagra +tanagraean +tanagridae +tanagrine +tanagroid +tanah +tanahmerah +tanahu +tanahun +tanaidacea +tanaina +tanainaahtna +tanaist +tanak +tanaka +tanaks +tanala +tanalana +tanalincha +tanalli +tanamerah +tanan +tanana +tananarive +tananaupper +tanang +tanara +tanaru +tanaslamt +tanassfarwat +tanawangko +tanaypaete +tanbark +tanbur +tanca +tancel +tanchak +tanchangya +tanchelmian +tanchoir +tancordo +tancred +tancrid +tancuyut +tanda +tandan +tandanke +tandard +tandberg +tande +tandek +tandemer +tandemist +tandemize +tandemwise +tandi +tandia +tandie +tandino +tandiono +tandjile +tandle +tando +tandon +tandour +tandra +tandubas +tandy +tane +taneda +taneja +tanekaha +tanema +tanenbaum +tanete +tanetz +taneytown +taneyville +tanferna +tanfoglio +tang +tanga +tangail +tangalan +tangale +tangalewaja +tangaloa +tangalung +tangambili +tangamma +tangan +tangantangan +tanganyika +tangao +tangara +tangarare +tangaridae +tangaroa +tangaroan +tangbago +tangchangya +tange +tangeban +tanged +tangee +tangeite +tangelo +tangelos +tangence +tangency +tangent +tangental +tangentally +tangentially +tangently +tangents +tanger +tangerine +tangfish +tangga +tanggal +tanggaraq +tanggaromi +tanggu +tanggum +tangham +tanghan +tanghin +tanghinia +tanghinin +tangi +tangibile +tangibility +tangible +tangibleness +tangibly +tangic +tangie +tangier +tangilin +tangina +tangipahoa +tangka +tangkhul +tangkou +tanglad +tanglagan +tanglao +tanglapui +tangle +tangleberry +tangled +tanglefish +tanglefoot +tanglement +tangleproof +tangler +tangleroot +tangles +tanglesome +tangless +tanglewrack +tangling +tanglingly +tangly +tango +tangoa +tangoed +tangoing +tangos +tangram +tangrea +tangren +tangs +tangsa +tangsarr +tangshewi +tangshuri +tangsir +tangu +tanguat +tanguay +tangub +tangue +tanguieta +tanguile +tangum +tangun +tangut +tangy +tanha +tanhouse +tanhumeth +tanhya +tani +tania +tanica +tanie +tanier +taniguchi +tanima +tanimate +tanimbar +tanimbili +tanimoto +tanimuca +tanina +tanio +tanir +tanist +tanistic +tanistry +tanistship +tanita +tanitansy +tanite +tanitic +taniwel +tanizi +tanja +tanjib +tanjong +tanjung +tanjungselor +tank +tanka +tankage +tankah +tankarana +tankard +tankay +tanked +tanker +tankerabogus +tankers +tankert +tankette +tankful +tankfuls +tankiri +tankle +tankless +tanklike +tankmaker +tankmaking +tankman +tankminder +tankodrome +tankpe +tankri +tankroom +tanks +tankstan +tankstelle +tankstoppers +tankwise +tanky +tanling +tanna +tannable +tannage +tannaic +tannaim +tannaitic +tannaki +tannalbin +tannase +tannate +tanned +tannekwe +tannen +tannenbaum +tanner +tanneran +tanneries +tanners +tannersville +tannery +tannest +tanney +tannic +tannide +tanniere +tanniferous +tannined +tanning +tanninlike +tannocaffeic +tannogallate +tannogallic +tannogelatin +tannogen +tannoid +tannometer +tannutuva +tanny +tannyl +tano +tanoa +tanoan +tanong +tanoriki +tanosy +tanproof +tanquam +tanquelinian +tanquen +tanrec +tans +tansen +tansey +tansies +tansley +tanstaafl +tanstuff +tansy +tant +tanta +tantadlin +tantafflin +tantalate +tantalean +tantalian +tantalic +tantalite +tantalize +tantalized +tantalizer +tantalizing +tantalus +tantam +tantan +tantara +tantarabobus +tantarara +tantawy +tante +tanti +tantine +tantivy +tantle +tantony +tantoo +tantra +tantric +tantrik +tantrism +tantrist +tantrums +tantum +tantzu +tanudan +tanugi +tanumafili +tanura +tanwood +tanworks +tanya +tanyag +tanyard +tanyimbu +tanyoan +tanyong +tanystomata +tanystome +tanz +tanzania +tanzanian +tanze +tanzeb +tanzevali +tanzhusar +tanzib +tanzine +tanzmusik +tanzy +taobato +taodrovic +taoi +taoih +taoism +taoistic +taoists +taoka +taokas +taokat +taolende +taonurus +taopi +taori +taorikaiy +taorikei +taoriso +taos +taosuamato +taosuame +taosuamoto +taosug +taotai +taoujjout +taounate +taourirt +taoy +taoyin +taoytong +taoyuan +tapachula +tapachulteca +tapacolo +tapacua +tapaculo +tapacura +tapadamteng +tapadera +tapadero +tapah +tapajo +tapajos +tapak +tapaktuan +tapalo +tapamaker +tapamaking +tapanahonij +tapanco +tapango +tapangu +tapani +tapanta +tapas +tapasvi +tapatios +tapayu +tapaz +tape +tapeats +tapeba +tapecopy +taped +tapedeck +tapedit +tapedrives +tapeless +tapelike +tapeline +tapemaker +tapemaking +tapeman +tapemarks +tapemove +tapen +taperbearer +tapered +taperer +tapering +taperingly +taperly +tapermaker +tapermaking +taperness +tapers +taperwise +tapes +tapesium +tapessi +tapestried +tapestries +tapestring +tapestry +tapestrying +tapestrylike +tapet +tapetal +tapete +tapeti +tapetless +tapetum +tapework +tapeworm +taphath +taphephobia +taphole +taphouse +taphria +taphrina +taphrinaceae +tapi +tapia +tapiche +tapiero +tapiete +tapijulapane +taping +tapings +tapino +tapinoma +tapinophobia +tapinophoby +tapinosis +tapio +tapioca +tapirape +tapiras +tapiridae +tapiridian +tapirine +tapiro +tapiroid +tapirus +tapism +tapist +tapitn +taplash +taplejung +taplen +taplet +tapley +tapleyism +taplin +taplinger +taplow +tapmost +tapner +tapnet +tapoa +tapoc +tapoco +tapoko +taporetinal +taposa +tapoun +tapp +tappable +tappableness +tappah +tappahannock +tappall +tappan +tappaul +tapped +tappen +tappenden +tapper +tapperer +tappers +tappert +tappertitian +tappietoorie +tapping +tapplication +tappoon +tappuah +taprobane +taproom +taprooms +taproot +taprooted +taproots +taps +tapsell +tapshin +tapshinawa +tapster +tapsterlike +tapsterly +tapstress +tapu +tapuh +tapuhoe +tapuia +tapul +tapuya +tapuyan +tapuyo +taqua +taquechel +tara +taraba +tarabooka +tarabulus +taracahitic +taracua +taradiddle +taraf +tarafdar +tarage +tarah +tarahumar +tarahumara +tarahumaran +tarahumare +tarahumari +tarai +taraika +tarairi +tarak +tarakan +tarakanova +tarakihi +tarakiri +taraktogenos +taralah +tarald +tarali +taralp +taram +tarama +taramaca +taramaminna +taramellite +taramembe +taran +taranaki +taranchi +tarand +tarandean +tarandian +tarang +tarangan +tarangelo +taranov +tarant +tarantass +tarantella +tarantin +tarantism +tarantist +taranto +tarantula +tarantulae +tarantular +tarantulary +tarantulas +tarantulated +tarantulid +tarantulidae +tarantulism +tarantulite +tarantulous +tarao +taraon +tarapaca +tarapatch +taraph +tarapin +tarapon +taras +tarasag +tarasc +tarascan +taraschuk +tarasco +tarasconi +tarasewicz +taraskin +tarasov +tarasova +tarass +tarassis +tarata +taratah +taratantara +taratara +tarathit +taratuta +tarau +tarauaca +taravaia +tarawa +tarawasi +taraxacerin +taraxacin +taraxacum +tarazed +tarbadillo +tarbes +tarbet +tarboard +tarbogan +tarboggin +tarboosh +tarbooshed +tarboro +tarbox +tarboy +tarbrush +tarbuck +tarbush +tarbuttite +tarcasan +tarcher +tarcisio +tarck +tardenoisian +tardier +tardiest +tardif +tardiff +tardigrada +tardigrade +tardigradous +tardily +tardiness +tardioli +tardis +tarditude +tardive +tardle +tardroy +tardy +tare +tarea +tarefa +tarefitch +tarek +taremp +taren +tareng +tarentala +tarente +tarentine +tarentism +tarentola +tarentum +tarepatch +tares +tarf +tarfa +tarfia +tarflower +targe +targeman +targer +target +targeted +targeteer +targeting +targetlike +targetman +targets +targetted +targhee +targhini +targi +targon +targosky +targum +targumic +targumical +targumist +targumistic +targumize +tarheel +tarheeler +tarhood +tarhunah +tari +taria +tariana +tarianan +tariang +tariano +tarie +tariffable +tariffism +tariffist +tariffite +tariffize +tariffless +tariffs +tariffville +tarifit +tarifzeiten +tarija +tarik +tarika +tarimuki +tarin +tariq +tariqat +tariri +tariric +taririnic +tarish +tariya +tarjan +tarjetas +tarka +tarkalani +tarkani +tarkanian +tarkashi +tarkeean +tarkhan +tarkin +tarkington +tarkio +tarkovskij +tarkowski +tarks +tarkwa +tarlac +tarlamis +tarlatan +tarlataned +tarle +tarlenheim +tarletan +tarleton +tarlike +tarloff +tarlow +tarltonize +tarma +tarmac +tarmacadam +tarmajuni +tarman +tarmin +tarmined +tarmo +tarmy +tarn +tarnai +tarnal +tarnally +tarnation +tarnish +tarnishable +tarnished +tarnisher +tarnishing +tarnishment +tarnishproof +tarnlike +tarnobrzeg +tarnow +tarnside +taro +tarobi +taroc +tarocco +tarof +taroh +tarok +taroko +tarom +taron +tarone +taronta +taropatch +tarot +taroudannt +tarp +tarpan +tarpeia +tarpeian +tarpeja +tarpelites +tarpey +tarpia +tarpley +tarpolin +tarpot +tarps +tarpum +tarquin +tarquinio +tarquinish +tarr +tarra +tarrack +tarradiddle +tarradiddler +tarrafal +tarragon +tarragona +tarragoo +tarrah +tarrant +tarras +tarrass +tarrateen +tarratine +tarred +tarrer +tarri +tarriance +tarrie +tarried +tarrier +tarriest +tarrieth +tarrify +tarrily +tarriness +tarrington +tarrish +tarro +tarrock +tarron +tarrow +tarrs +tarry +tarrying +tarryingly +tarryingness +tars +tarsadenitis +tarsal +tarsale +tarsalgia +tarse +tarsectomy +tarsectopia +tarses +tarshish +tarsi +tarsia +tarsier +tarsiidae +tarsioid +tarsipedidae +tarsipedinae +tarsipes +tarsis +tarsitis +tarsius +tarski +tarsky +tarso +tarsoclasis +tarsomalacia +tarsome +tarsonemid +tarsonemidae +tarsonemus +tarsophyma +tarsoplasia +tarsoplasty +tarsoptosis +tarsorrhaphy +tarsotarsal +tarsotibal +tarsotomy +tarsus +tarsuya +tart +tartagal +tartago +tartak +tartan +tartana +tartane +tartar +tartaran +tartarated +tartarean +tartareous +tartaret +tartarian +tartaric +tartarin +tartarish +tartarism +tartarize +tartarized +tartarlike +tartarly +tartarology +tartarous +tartarproof +tartars +tartarum +tartarus +tarte +tartemorion +tarten +tarter +tartfufe +tartish +tartishly +tartle +tartlet +tartly +tartness +tartramate +tartramic +tartramide +tartrate +tartrated +tartrazine +tartrazinic +tartro +tartronate +tartronic +tartronyl +tartrous +tartryl +tartrylic +tarts +tartu +tartufe +tartufery +tartuffish +tartufian +tartufish +tartufishly +tartufism +tartus +tartwoman +taru +taruma +tarumari +tarumi +taruna +tarunggare +tarus +tarusa +taruw +tarva +tarve +tarver +tarvia +tarweed +tarwhine +tarwood +tarworks +tarya +taryard +taryba +taryn +taryna +tarzan +tarzana +tarzanish +tasa +tasaday +tasajo +tasanh +tasawan +tascal +tascher +tascherau +taschereau +tasco +tase +tasemboko +taseometer +tasey +tash +tasha +tashas +tasheriff +tashie +tashigang +tashilheet +tashio +tashkent +tashkurghan +tashlik +tashman +tashnagist +tashnakist +tashom +tashon +tashreef +tashrif +tashtego +tasi +tasia +tasian +tasiko +tasimeter +tasimetric +tasimetry +tasing +tasiriki +task +taskage +taskaiu +taskbar +taskbox +tasked +tasker +taskforce +tasking +taskit +taskless +tasklike +tasklist +taskmasters +taskmistress +tasks +tasksetter +tasksetting +tasktool +taskview +taskwork +taslet +tasley +taslins +taslitz +tasm +tasman +tasmanian +tasmanite +tasmate +tasmed +tasmin +tasnady +tasnim +tasomi +taspatch +tassago +tassah +tassal +tassard +tasse +tasseled +tasseler +tasselet +tasselfish +tasseling +tassell +tassellus +tasselmaker +tasselmaking +tassels +tassely +tasser +tasset +tassi +tassie +tasso +tassoo +tassos +tassy +tastable +tastableness +tastably +taste +tasteable +tasteably +tastebuds +tasted +tasteful +tastefully +tastefulness +tastekin +tasteless +tastelessly +tastemongers +tasten +taster +tasters +tastes +tasteth +tastier +tastiest +tastily +tastiness +tasting +tastingly +tastings +tasty +tasu +tasuk +tasupi +taswell +tata +tataer +tataltepec +tatamy +tatana +tatanaq +tatangsurja +tatar +tatara +tataria +tatarian +tataric +tatarization +tatarize +tatary +tatau +tataupa +tatawin +tatbeb +tatchy +tate +tategami +tateh +tatemichi +tateo +tates +tateville +tath +tatham +tati +tatian +tatiana +tatiania +tatianist +tatic +tatics +tatie +tatilde +tatinek +tatjana +tatler +tatlock +tatnai +tatog +tatoga +tatooed +tatos +tatou +tatouay +tatpurusha +tatro +tatry +tats +tatsanottine +tatsdocn +tatsewalem +tatsienlu +tatsman +tatsu +tatsuo +tatsuya +tatta +tattaglia +tattare +tatted +tattenbaum +tatter +tattered +tatteredly +tatteredness +tattering +tatterly +tatters +tattersalls +tatterwallop +tattery +tatther +tattied +tatting +tattled +tattlement +tattlers +tattlery +tattling +tattlingly +tattoo +tattooage +tattooed +tattooer +tattooing +tattooist +tattooment +tattoos +tattva +tatu +tatui +tatukira +tatum +tatums +taturu +tatusia +tatusiidae +tatutapuyo +tatuyo +tatyana +tauacuera +tauade +tauata +taub +taube +tauber +tauberg +taubman +taubuid +taucher +tauchnitz +taucon +taufaahau +taught +taughton +taugi +taui +tauira +tauiundrau +taujjut +taukkenun +taukkunen +taul +taula +tauli +taulil +taulilbutam +taulipang +taum +taumako +taumarunui +taun +tauna +taung +taungoo +taungthu +taungyo +taunita +taunivm +taunt +taunted +taunter +taunting +tauntingly +tauntingness +taunton +tauntonia +tauntress +taunts +taup +taupe +taupo +taupota +taupotawedau +taupou +taupulega +taur +taura +tauranga +taurap +taurat +taurawa +taurean +taurepan +tauri +taurian +tauric +tauricide +tauricornous +taurid +tauridian +tauriferous +tauriform +taurine +taurinensis +taurini +tauris +taurite +tauro +taurobolium +tauroboly +taurocholate +taurocholic +taurocol +taurocolla +tauroctonus +taurodont +tauroesque +taurolatry +tauromachian +tauromachic +tauromachy +tauromorphic +taurophile +taurophobe +tauropolos +taurotragus +taurus +tauryl +tauscher +tause +tausese +taushiro +tausog +tausug +tausworthe +taut +tautaug +tauted +tautegorical +tautegory +tauten +tautenburg +tautirite +tautit +tautly +tautness +tautochrone +tautog +tautologic +tautological +tautologies +tautologism +tautologist +tautologize +tautologizer +tautologous +tautomer +tautomeral +tautomeric +tautomerism +tautomerize +tautomery +tautometer +tautometric +tautonym +tautonymic +tautonymy +tautoousian +tautoousious +tautophonic +tautophony +tautopodic +tautopody +tautotype +tautourea +tautousian +tautousious +tautozonal +tautu +tauu +tauya +tauzin +tava +tavalavola +tavana +tavara +tavare +tavares +tavaroli +tavas +tavast +tavastia +tavastian +tavdin +tave +taveak +tavell +taver +taverner +tavernier +tavernize +tavernless +tavernlike +tavernly +tavernous +tavernry +taverns +tavernwards +tavers +tavert +taveta +tavghi +tavgi +tavhatsindi +tavi +taviak +tavis +tavistock +tavistockite +tavola +tavolatite +tavora +tavoya +tavoyan +tavrat +tavrida +tavridaad +tavuki +tavula +tavy +tavytera +tawa +tawaelia +tawakoni +tawala +tawallammat +tawallammet +tawan +tawana +tawang +tawanxte +tawara +tawarafa +tawari +tawascity +tawau +tawauna +tawbuid +tawdered +tawdrier +tawdriest +tawdrily +tawdriness +taweesak +tawer +tawery +tawetavoy +tawfik +tawgi +tawie +tawini +tawira +tawit +tawitawi +tawite +tawka +tawkee +tawkin +tawn +tawney +tawnier +tawniest +tawnily +tawniness +tawnle +tawny +tawnya +taworta +tawortaaero +tawoyan +tawpi +tawpie +tawr +taws +tawse +tawsha +tawtie +tawzar +taxability +taxable +taxableness +taxably +taxaceae +taxaceous +taxameter +taxan +taxaspidean +taxation +taxational +taxative +taxatively +taxator +taxeater +taxeating +taxed +taxell +taxeme +taxemic +taxeopod +taxeopoda +taxeopodous +taxeopody +taxer +taxes +taxgatherer +taxgathering +taxi +taxiable +taxiarch +taxiauto +taxibus +taxicabs +taxicoach +taxidea +taxidermal +taxidermic +taxidermist +taxidermize +taxidermy +taxied +taxiing +taxila +taximan +taximeter +taximetered +taxine +taxing +taxingly +taxinomic +taxinomist +taxinomy +taxiplane +taxir +taxis +taxista +taxite +taxitic +taxkorgan +taxless +taxlessly +taxlessness +taxmainite +taxman +taxodiaceae +taxodium +taxodont +taxology +taxometer +taxon +taxonomer +taxonomical +taxonomist +taxonomy +taxor +taxpaid +taxpayers +taxpaying +taxus +taxwax +taxwensite +taxy +taya +tayabas +tayaku +tayal +tayan +tayando +tayaoshan +tayari +tayart +tayassu +tayassuidae +tayato +tayback +tayeb +tayeh +tayek +tayer +taygeta +tayhay +tayi +taying +tayir +taylor +taylorism +taylorite +taylorize +taylorized +taylorridge +taylors +taylorsfalls +taylorstown +taylorsville +tayloru +taylorville +taymyr +taymyra +tayna +tayninh +tayo +tayok +taypong +tayra +tayrona +taysaam +tayside +tayste +tayt +taytay +taza +tazaki +tazara +taze +tazewell +tazia +tazio +taztay +tazza +tbatchmove +tbav +tbilisi +tbitbtn +tbitmap +tblend +tblobfield +tblretry +tblsiz +tboli +tbontb +tcaccis +tcaiti +tcalendar +tcaller +tcanvas +tcawi +tcengui +tcfgfm +tcgould +tchade +tchaga +tchai +tchaikovsky +tchaikowsky +tchaine +tchamba +tchamboenne +tchambuli +tchang +tchangid +tchangui +tchaoudjo +tcharik +tchartfx +tchast +tche +tcheckbox +tchede +tcheirek +tcheka +tcheke +tcheky +tchen +tchenko +tchepone +tchere +tcherina +tcherkess +tchernoff +tchernov +tchervonets +tchervonetz +tchetnitsi +tchevi +tchi +tchibanga +tchick +tchien +tchikai +tchingalee +tchir +tchistyakov +tchjan +tchkhikvadze +tchokossi +tchollire +tcholo +tchorny +tchoukova +tchouvok +tchu +tchula +tchuraev +tchwi +tclasses +tconfig +tconsole +tcpcontrol +tcpdump +tcphdr +tcpip +tcpleds +tcplog +tcpman +tcpnetview +tcpprobe +tcprus +tcpserver +tcpspy +tcra +tcsh +tcursor +tcustommemo +tdama +tdataset +tdbcheckbox +tdbcombobox +tdbgrid +tdesigns +tdhack +teaberries +teaberry +teaboard +teabox +teaboy +teabrook +teac +teacake +teach +teachability +teachable +teachably +teache +teacher +teacherage +teacherdom +teacheress +teacherhood +teacherless +teacherlike +teacherly +teachers +teachership +teachery +teaches +teachest +teacheth +teachey +teaching +teachingly +teachings +teachless +teachmaciicx +teachman +teachment +teachpro +teachtext +teachy +teacup +teacupful +teacupfuls +teacups +tead +teadish +teaer +teaey +teagarden +teagardeny +teagle +teague +teagueland +teaguelander +teaish +teaism +teak +teal +teale +tealeafy +tealery +tealess +teallite +tealor +team +teamaker +teamaking +teaman +teamed +teameo +teamer +teaming +teamland +teamless +teamman +teams +teamsman +teamwise +teamwork +tean +teanal +teaneck +teannaki +teanu +teap +teaparty +teapotful +teapots +teapottykin +teapoy +tear +tearable +tearableness +tearably +tearage +tearcat +teardown +teardrop +teardrops +teared +tearer +teareth +tearfully +tearfulness +tearier +teariest +tearing +tearle +tearless +tearlessly +tearlessness +tearlet +tearlike +tearline +tearoom +tearpit +tearproof +tears +tearsheet +tearstain +teart +tearthroat +tearthumb +teary +teas +teasable +teasableness +teasably +teasdale +tease +teaseable +teaseably +teased +teasehole +teaseler +teaseller +teasellike +teaselwort +teasement +teaser +teases +teashop +teasiness +teasing +teasingly +teasle +teasler +teasley +teaspoon +teaspoonfuls +teaspoons +teasy +teatao +teataster +teated +teatfish +teathe +teather +teatime +teatlike +teatling +teatman +teatrale +teats +teaty +teave +teaware +teays +teaze +teazer +teazie +teazle +tebah +tebakang +tebaliah +tebbara +tebbe +tebbet +tebbetts +tebe +tebeldia +tebele +tebera +teberan +tebessa +tebet +tebeth +tebia +tebilian +tebilung +tebinka +tebja +tebje +tebo +tebou +tebruroro +tebu +teburoro +tebya +teca +tecali +tecate +tecdoc +tech +teche +techfacts +techfax +techical +techie +techies +techily +techiness +teching +techinician +techmenu +techmick +technica +technical +technicalism +technicalist +technicality +technicalize +technically +technician +technicians +technicism +technicist +technicology +technicolor +technicon +technics +technik +techniphone +technique +techniquer +techniques +technism +technist +technlogies +techno +technocausis +technocracy +technography +technohead +technohim +technolabel +technolithic +technologgy +technologic +technologies +technologist +technologue +technology +technonerd +technonomic +technonomy +technophobes +technosoft +technotoys +technotronic +techny +techo +techous +techref +techs +techspeak +techstep +techtalk +techu +techy +teck +tecklenburg +tecla +tecnet +tecnoctonia +tecnology +teco +tecoatl +tecolote +tecoma +tecomin +tecominoacan +tecon +tecopa +tecos +tecpanec +tecr +tectal +tectibranch +tectiform +tectita +tectiteco +tectocephaly +tectological +tectology +tectona +tectonic +tectonics +tector +tectorial +tectorium +tectosages +tectosphere +tectospinal +tectrices +tectricial +tectum +tecuma +tecumseh +tecuna +tecza +teda +tedd +tedda +tedde +tedder +teddi +teddie +teddy +teder +tedescan +tedesco +tedge +tedi +tedia +tediosity +tedious +tediously +tediousness +tediousome +tedisome +tedium +tedong +tedra +tedrick +tedrow +teds +teduray +teecnospos +teed +teedle +teedsgrove +teegra +teekoh +teel +teeler +teeling +teem +teemed +teemer +teemful +teemfulness +teeming +teemingly +teemingness +teemless +teems +teen +teena +teenage +teenaged +teenager +teenagers +teenet +teenie +teenier +teeniest +teens +teensa +teenty +teeny +teeo +teepee +teer +teerdhala +teere +teerer +tees +teesdale +teese +teest +teeswater +teetaller +teetan +teeteewie +teeterboard +teeterer +teetertail +teeth +teethache +teethbrush +teethes +teethful +teethily +teethless +teethlike +teethridge +teethy +teeting +teetot +teetotaler +teetotalism +teetotalist +teetotaller +teetotally +teetotum +teetotumism +teetotumize +teetotumwise +teetwo +teety +teetzmann +teevee +teewhaap +tefane +tefaro +tefe +teff +teffe +tefft +teforce +tegal +tegali +tegate +tegbo +tege +tegean +tegekali +tegele +tegelhusets +tegesie +tegeticula +teghe +tegina +tegmen +tegmental +tegmentum +tegmina +tegminal +tegmine +tegnar +tegosoft +tegri +tegua +tegucigalpa +tegue +teguexin +teguima +tegula +tegular +tegularly +tegulated +tegumen +tegument +tegumental +tegumentary +tegumentum +tegurium +tehachapi +tehama +tehanni +tehaphnehes +tehchi +tehee +teheran +tehid +tehinnah +tehit +tehiya +tehno +tehnu +tehoru +tehran +tehrani +tehrathum +tehri +tehseel +tehseeldar +tehsil +tehsildar +tehuacana +tehuantepec +tehueco +tehuelche +tehuelchean +tehuelet +tehung +tehwei +teian +teicher +teichman +teichmann +teichopsia +teiglech +teiichi +teiidae +teil +teimuri +teimurtash +teind +teindable +teinder +teinland +teinoscope +teintinger +teioid +teiresias +teirtza +teiss +teissier +teisummdanab +teita +teitelbaum +teitelboim +teitelman +teixeira +teixera +teizang +teizo +tejada +tejani +tejas +teje +tejera +tejon +teju +tejuca +teka +tekamah +teke +tekeim +tekel +tekela +tekele +tekere +tekeza +tekh +tekiah +tekintsi +tekirdag +tekke +tekken +tekkintzi +tekmessa +tekno +teknonymous +teknonymy +teknorage +teknowledge +teko +tekoa +tekoah +tekoite +tekoites +tekonsha +teku +tekurarere +tekut +tekutameso +tekya +tela +telaa +telabib +telacoustic +telah +telaim +telakucha +telamon +telang +telangiosis +telangire +telanthera +telar +telarc +telarian +telary +telassar +telautogram +telautograph +telautomatic +telchar +telchines +telchinic +telco +telcontar +telcos +tele +telebit +telecast +telecasted +telecaster +telecasting +telechemic +telecki +telecode +telecom +telecommando +telecoms +teledendrion +teledendrite +teledendron +teledisk +teledu +telefair +telefol +telefolmin +telefomin +telefon +telefonen +telefoni +telega +telegard +telegen +telegenic +telegin +telegina +telegn +telegnosis +telegnostic +telegonic +telegonous +telegony +telegram +telegrammic +telegrams +telegraph +telegraphed +telegraphee +telegrapheme +telegrapher +telegraphers +telegraphese +telegraphic +telegraphing +telegraphist +telegraphone +telegraphs +telegu +telei +teleia +teleianthous +teleiosis +teleki +telekinetic +telekinetics +telekoson +telelectric +telem +telemachus +telemark +telemarketer +telemate +telembi +telemechanic +telemetric +telemetrical +telemetrist +telemetry +telemotor +telen +telencephal +telenergic +telenergy +telenet +teleneurite +teleneuron +telenget +telengiscope +telengut +telenomus +telent +teleocephali +teleoceras +teleodont +teleologic +teleological +teleologism +teleologist +teleometer +teleoperate +teleoperated +teleophobia +teleophore +teleophyte +teleoptile +teleorganic +teleorman +teleosaur +teleosaurian +teleosaurus +teleostean +teleostei +teleosteous +teleostomate +teleostome +teleostomi +teleostomian +teleostomous +teleotrocha +teleozoic +teleozoon +telepath +telepathic +telepathist +telepathize +telepathy +telepatic +telepheme +telephone +telephoned +telephoner +telephoners +telephones +telephonical +telephoning +telephonist +telephote +telephoto +telephotos +telephus +telepicture +teleplasm +teleplasmic +teleplastic +telepok +teleport +teleporting +teleportpro +telepost +teleran +telerat +teleray +telergic +telergical +telergically +telergy +teles +telescope +telescoped +telescopes +telescopic +telescopical +telescoping +telescopist +telescopium +telescopy +telescriptor +teleseism +teleseismic +teleseme +telesia +telesis +telesm +telesmeter +telesoft +telesomatic +telesterion +telesthesia +telesthetic +telestial +telestic +telestich +telesto +teleszynski +teletactile +teletactor +teletape +teletex +teletext +teletherapy +teletraffic +teletype +teletyper +teletypes +teletyping +teleut +teleuto +teleutoform +teleutosorus +teleutospore +televideo +teleview +televiewer +televised +televises +televising +television +televisional +televisions +televisor +televisors +televisual +televocal +televox +telewriter +telex +telez +telfairia +telfairic +telfan +telfer +telferage +telferner +telford +telfordize +telgi +telgu +telharesha +telharmonic +telharmonium +telharmony +telharsa +teli +telial +telic +telical +telically +telichkina +telidis +teliferous +telimele +telinga +teliosorus +teliospore +teliosporic +teliostage +telire +telium +telix +teljeur +telke +tell +tella +tellable +tellach +tellcity +tellee +tellefsen +tellegen +tellem +teller +tellering +tellers +tellership +tellervo +tellest +telleth +telletxea +tellez +telligraph +tellima +tellin +tellina +tellinacea +tellinacean +tellinaceous +telling +tellingly +tellinidae +tellinoid +tello +tells +tellsome +tellt +telltalely +telltruth +tellup +tellural +tellurate +telluret +tellureted +tellurethyl +telluretted +tellurhydric +tellurian +telluric +telluride +tellurion +tellurism +tellurist +tellurite +tellurize +telluronium +tellurous +telly +tellyvision +telma +telmachio +telmatology +telmelah +telnet +telnetable +telnetd +teloblast +teloblastic +telocentric +telodendrion +telodendron +telodynamic +telogia +telokinesis +telolecithal +telolemma +telom +telome +telomic +telomitic +telonism +teloogoo +telopea +telophase +telophragma +telopsis +teloptic +telos +telosynapsis +telosynaptic +telotremata +telotroch +telotrocha +telotrochal +telotrochous +telotrophic +telotype +telpath +telpher +telpherage +telpherman +telpherway +telson +telsonic +telstar +telszynski +telt +telte +telu +telugu +telugukui +teluk +telukbetung +telurgy +teluti +telyn +tema +temacha +temacin +temageri +temaine +temainian +temalacatl +teman +temane +temani +temanite +temanites +temarek +temaru +temba +tembagla +tembe +tembekua +tembeling +tembenua +tembi +tembis +temblor +tembo +tembogia +tembu +tembung +tembura +temburong +temchin +teme +temecula +temein +temen +temeni +temenja +temenos +temer +temerarious +temeritous +temerous +temerously +temerousness +temerson +temessy +temi +temiak +temiar +temido +temila +temin +teminabuan +temir +temirgoj +temirova +temiskaming +temm +temne +temoaya +temogun +temongoh +temoq +temoral +temotu +temouchent +temp +tempasok +tempasuk +tempe +tempean +tempel +temper +temperable +temperably +temperality +temperament +temperaments +temperance +temperate +temperately +temperative +temperatura +temperature +temperatures +tempered +temperedly +temperedness +temperence +temperer +tempering +temperish +temperize +temperless +temperley +tempers +tempersome +tempertemper +tempery +tempest +tempestical +tempestive +tempestively +tempestivity +tempests +tempestuous +tempesty +tempete +tempfile +tempi +tempiese +templar +templardom +templarism +templarlike +templary +template +templater +templates +temple +templecity +templed +templeful +templeless +templelike +templeman +temples +templet +templeton +templetonia +templeville +templeward +templey +templize +tempo +tempora +temporal +temporale +temporalism +temporalist +temporality +temporalize +temporally +temporalness +temporals +temporalty +temporaneous +temporaries +temporarily +temporary +temporaryuse +temporator +temporize +temporized +temporizer +temporizing +temporoalar +temporohyoid +temporomalar +tempos +tempre +tempreg +temprely +temps +tempt +temptability +temptable +temptation +temptational +temptations +temptatious +temptatory +tempted +tempter +tempters +tempteth +tempting +temptingly +temptingness +temptress +tempts +tempura +tempyo +temse +temser +temu +temuan +temulence +temulency +temulent +temulentive +temulently +tena +tenability +tenableness +tenably +tenace +tenacious +tenaciously +tenaculum +tenado +tenafly +tenaha +tenai +tenaille +tenaillon +tenaktak +tenanciere +tenancies +tenancity +tenancy +tenango +tenantable +tenanter +tenantism +tenantless +tenantlike +tenantries +tenantry +tenants +tenantship +tenasserim +tenau +tenberry +tenbrook +tenby +tencer +tench +tencho +tenchweed +tencteri +tend +tenda +tendance +tendanke +tendant +tende +tended +tendence +tendencies +tendency +tendent +tendential +tendentious +tender +tenderable +tenderably +tenderee +tenderer +tenderfeet +tenderfoots +tenderful +tenderfully +tenderheart +tenderish +tenderize +tenderized +tenderizer +tenderizing +tenderling +tenderly +tenderness +tenderometer +tenders +tendersome +tendeth +tendeyanzi +tendinal +tending +tendingly +tendinitis +tendinous +tendollar +tendomucoid +tendonous +tendons +tendoplasty +tendotome +tendotomy +tendouck +tendour +tendovaginal +tendoy +tendre +tendresse +tendril +tendriled +tendrillar +tendrilly +tendrilous +tendron +tends +tenebra +tenebrae +tenebricose +tenebrific +tenebrio +tenebrionid +tenebrious +tenebriously +tenebrity +tenebrose +tenebrosity +tenebrously +tenebrum +tenectomy +tenedores +teneil +tenement +tenemental +tenementary +tenementer +tenementize +tenements +tenen +tenenbaum +tenenbein +tenendas +tenendum +tenent +teneral +tenere +tenerife +teneriffa +teneriffe +tenesi +tenesmic +tenesmus +tenet +tenete +teneteha +tenetehar +tenetehara +tenets +tenex +tenexen +tenexes +tenfinger +tenfoldness +teng +tengah +tengahtengah +tengara +tengeiento +tengere +tengerite +tengganu +tenggara +tenggaraq +tengger +tenggerese +tenghui +tengima +tengo +tengoh +tengrela +tengroth +tengstrom +tengu +tengwar +tenharem +tenharim +tenharin +teniacidal +teniacide +tenible +tenices +teniente +tenino +tenio +teniola +tenis +tenjo +tenkey +tenline +tenmantale +tenmile +tennant +tennantite +tennassee +tenne +tennent +tenner +tennessean +tennessee +tenney +tennga +tenniel +tennila +tennille +tennis +tennisdom +tennisnet +tennisy +tennstedt +tenny +tennyson +tennysonian +tenochtitlan +tenodesis +tenodynia +tenography +tenojoki +tenology +tenom +tenomyotomy +tenonectomy +tenoner +tenonian +tenonitis +tenonostosis +tenons +tenontagra +tenontitis +tenontodynia +tenontology +tenontophyma +tenontotomy +tenophony +tenophyte +tenoplastic +tenoplasty +tenor +tenorio +tenorist +tenorister +tenorite +tenorless +tenoroon +tenorrhaphy +tenors +tenositis +tenostosis +tenosuture +tenotome +tenotomist +tenotomize +tenotomy +tenpence +tenpenny +tenpin +tenpins +tenpole +tenpounder +tenrec +tenrecidae +tens +tense +tensed +tenseless +tensely +tenseness +tenser +tenses +tensest +tensi +tensibility +tensible +tensibleness +tensibly +tensify +tensile +tensilely +tensileness +tensility +tensimeter +tensing +tensio +tensiometer +tension +tensioning +tensionless +tensions +tensity +tensive +tensleep +tenson +tensors +tenstrike +tensure +tent +tentability +tentable +tentacion +tentacle +tentacled +tentaclelike +tentacles +tentacula +tentacular +tentaculata +tentaculate +tentaculated +tentaculite +tentaculites +tentaculoid +tentaculum +tentage +tentamen +tentation +tentative +tentatively +tented +tenter +tenterbelly +tenterer +tenterhook +tentful +tenth +tenthly +tenthmeter +tenthredinid +tenthredo +tenths +tenthyear +tenti +tentiform +tentigo +tentillum +tenting +tention +tentless +tentlet +tentlike +tentmaker +tentmakers +tentmaking +tentmate +tentorial +tentorium +tents +tenture +tentwards +tentwise +tentwork +tentwort +tenty +tenuate +tenues +tenuicostate +tenuiflorous +tenuifolious +tenuious +tenuiroster +tenuirostral +tenuirostres +tenuis +tenuistriate +tenuity +tenuously +tenuousness +tenure +tenured +tenurial +tenurially +tenwer +tenyeared +tenyer +teocalli +teochew +teochow +teococuilco +teodor +teodora +teodorescu +teodorezyk +teodoro +teodozja +teofil +teola +teomi +teop +teopan +teopisca +teor +teoretical +teosinte +teotihuacan +teotitla +teotitlan +teow +tepa +tepache +tepal +tepanec +tepare +teparii +tepecano +tepefaction +tepefy +tepehua +tepehuan +tepehuane +tepel +tepelene +tepeleu +teper +tepera +tepes +tepetate +tepeth +tepetotutla +tepeuxila +tepexob +tephillah +tephillin +tephramancy +tephrite +tephritic +tephroite +tephrosia +tephrosis +tepidarium +tepidity +tepidly +tepidness +tepinapa +teplie +teplo +tepo +tepoe +tepomporize +teponaxtla +teponaztli +tepor +tepotutla +tepper +teptyar +teqel +tequenica +tequila +tequilajazzz +tequilla +tequistlatec +tequraca +tera +terabyte +terada +teradata +teraesvirta +teraflop +teraglin +teragram +terah +terai +teraina +terakado +terakan +terakeka +terakihi +teramorphous +teran +terangi +terao +terap +teraphim +teraphy +teras +terasaki +teratech +teratical +teratiology +teratism +teratogenous +teratogeny +teratoid +teratologist +teratoma +teratomatous +teratoscopy +teratosis +terawan +terawatt +terawatts +terawia +terayama +terbia +terbic +terc +tercel +tercelet +tercentenary +tercer +terceron +tercet +terchloride +tercia +tercidina +tercine +tercio +terdiurnal +tere +terebate +terebella +terebellid +terebellidae +terebelloid +terebellum +terebene +terebenic +terebenthene +terebic +terebilic +terebinic +terebinth +terebinthial +terebinthian +terebinthic +terebinthina +terebinthine +terebinthus +terebiram +terebra +terebral +terebrant +terebrantia +terebrate +terebration +terebratula +terebratular +terebratulid +terebridae +terebu +teredinidae +teredo +terego +terei +terek +terekeme +terema +terena +terence +terengganu +tereno +terens +terenteva +terentia +terentian +terenzio +terephthalic +terepu +tererro +teres +teresa +terese +teresh +tereshkova +teresian +teresina +teresita +teressa +terete +teretial +teretish +tereu +tereus +tereweng +terez +tereza +terezinha +terfez +terfezia +terfeziaceae +tergal +tergant +tergeminate +tergeminous +tergeste +tergiferous +tergite +tergitic +tergiversant +tergiversate +tergiverse +tergolateral +tergum +terhathum +terhune +teri +teria +teriann +teribe +terik +terikalwasch +terina +terke +terkel +terki +terland +terle +terlesky +terlingua +terlinguaite +terlizzi +terlton +term +terma +termagancy +termagant +termagantish +termagantism +termagantly +termage +termail +termal +terman +termanu +termatic +termcap +termed +termen +termer +termes +termez +termillenary +termin +termina +terminably +terminak +terminal +terminalia +terminalis +terminalized +terminally +terminals +terminant +terminate +terminated +terminates +terminating +termination +terminations +terminative +terminator +terminators +terminatory +termine +terminer +terminfo +terming +terminine +terminism +terminist +terministic +terminize +termino +terminology +terminus +terminuses +termital +termitarium +termitary +termitic +termitid +termitidae +termitophile +termless +termlessly +termlessness +termly +termo +termolecular +termon +termor +terms +termtime +termwise +terna +ternal +ternar +ternardon +ternariant +ternarious +ternatan +ternate +ternately +ternaten +ternateno +ternatenyo +ternatisect +terne +terneplate +ternery +ternet +terneus +terneuzen +terng +ternion +ternize +ternlet +terns +ternstroemia +terofal +teroitich +teroxide +terp +terpadiene +terpane +terpene +terpeneless +terpenes +terphenyl +terpilene +terpin +terpine +terpinene +terpineol +terpinol +terpinolene +terpish +terpnos +terpodion +terpree +terpri +terpsichore +terpss +terpstra +terr +terra +terraalta +terraba +terrabella +terrace +terraced +terraceia +terraceous +terracepark +terracer +terraces +terracette +terracewards +terracewise +terracework +terraciform +terracing +terracotta +terraculture +terradas +terrade +terraefilial +terraefilian +terraform +terraformers +terraforming +terrage +terrain +terrains +terral +terramara +terramare +terran +terrance +terrane +terranean +terranella +terraneous +terranova +terrans +terrapene +terrapin +terraquean +terraqueous +terrar +terrariia +terrariiums +terrarium +terrariums +terratin +terrazzo +terre +terrebonne +terrehaute +terrehill +terrel +terrell +terrella +terremotive +terrence +terrene +terrenely +terreneness +terreno +terreous +terreplein +terrestrial +terrestrials +terrestrious +terret +terreted +terreton +terri +terrian +terribility +terrible +terriblement +terribleness +terribly +terricole +terricoline +terricolous +terrie +terrier +terrierlike +terriers +terries +terrific +terrifical +terrifically +terrificly +terrificness +terrified +terrifiedly +terrifier +terrifies +terrifiest +terrify +terrifying +terrifyingly +terrigenous +terrijo +terril +terrill +terrine +terrio +terris +territelae +territorial +territoriale +territorian +territoried +territories +territorio +territorios +territory +terroba +terroid +terron +terror +terrorful +terrorific +terrorism +terrorist +terroristic +terrorists +terrorize +terrorized +terrorizer +terrorizes +terrorizing +terrorless +terrorproof +terrors +terrorsome +terrorvision +terrugi +terry +terrye +terryville +tersanctus +terschack +terse +tersely +terseness +terser +tersest +tersh +tersina +tersion +tersulphate +tersulphide +tersulphuret +terta +tertenant +tertia +tertial +tertian +tertiana +tertianship +tertiarian +tertiaries +tertiary +tertiate +tertius +terton +tertrinal +tertullus +teru +teruhiro +teruko +teruncius +terus +terutero +terutong +terutoyo +tervalence +tervalency +tervalent +tervariant +tervax +tervee +terwey +terwiliger +terwilligar +terwilliger +terwilliker +teryaiu +terza +terzetto +terzian +terzieff +terzina +terzo +terzon +tesa +tesack +tesander +tesarovitch +tesarz +tesc +tesch +teschemacher +teschenite +teschmacher +tescott +tesei +tesfagaber +tesfamariam +tesfaye +tesh +teshenna +teshina +tesic +tesing +teskere +teskeria +tesla +tesnu +teso +tesoro +tesouro +tess +tessa +tessara +tessarace +tessaradecad +tessaraglot +tessel +tesselated +tessella +tessellar +tessellated +tessellating +tessellation +tessera +tesseract +tesserae +tesseraic +tesseral +tesserants +tesserarian +tesserate +tesserated +tesseratomic +tesseratomy +tessi +tessibel +tessie +tessier +tessieri +tessio +tessler +tessty +tessular +tessy +test +testa +testability +testable +testacea +testacean +testaceology +testaceous +testacy +testagc +testament +testamental +testamentate +testaments +testamentum +testamur +testand +testar +testard +testarossa +testata +testation +testator +testatorship +testatory +testatrices +testatrix +testatum +testbased +testbed +testbedding +teste +tested +testee +tester +testers +testes +testicardine +testicle +testicles +testicond +testiculate +testiculated +testier +testiere +testiest +testificate +testificator +testified +testifiedst +testifier +testifiers +testifies +testifieth +testify +testifying +testily +testimonies +testimonium +testimony +testin +testiness +testing +testingly +testings +testis +testntmvaa +testntmvab +teston +testone +testoon +testor +testosterone +testpro +testretest +testril +tests +testsds +testtools +testudinal +testudinaria +testudinata +testudinate +testudinated +testudineal +testudineous +testudinidae +testudinous +testudo +testy +tesuque +teta +tetalo +tetanic +tetanical +tetanically +tetaniform +tetanigenous +tetanilla +tetanine +tetanism +tetanization +tetanize +tetanoid +tetanolysin +tetanomotor +tetanotoxin +tetany +tetao +tetarcone +tetarconid +tetard +tetartocone +tetartoconid +tetartoid +tetch +tetchie +tetchy +teteatete +tetel +tetela +tetelcingo +teter +teterin +teterrimous +teters +tetete +teth +tethelin +tetherball +tethered +tethering +tethery +tethydan +tethys +teti +tetki +tetley +teto +tetomas +teton +tetonia +tetonvillage +tetouan +tetra +tetraamylose +tetrabasic +tetrabelodon +tetrabiblos +tetraborate +tetraboric +tetrabrach +tetrabranch +tetrabromid +tetrabromide +tetrabromo +tetracerous +tetracerus +tetrachical +tetrachlorid +tetrachloro +tetrachord +tetrachordal +tetrachordon +tetrachoric +tetrachromic +tetracid +tetracoccous +tetracoccus +tetracolic +tetracolon +tetracoral +tetracoralla +tetracosane +tetract +tetractic +tetractinal +tetractine +tetractinose +tetracyclic +tetracycline +tetrad +tetradactyl +tetradactyly +tetradarchy +tetradecane +tetradecapod +tetradecyl +tetradesmus +tetradic +tetradite +tetradrachma +tetradymite +tetradynamia +tetraedron +tetraedrum +tetrafolious +tetragamy +tetragenous +tetraglot +tetraglottic +tetragon +tetragonally +tetragonia +tetragonous +tetragonus +tetragram +tetragyn +tetragynia +tetragynian +tetragynous +tetrahedric +tetrahedrite +tetrahedroid +tetrahedrons +tetrahydrate +tetrahydric +tetrahydride +tetrahydro +tetrahydroxy +tetraiodid +tetraiodide +tetraiodo +tetraketone +tetrakisazo +tetralemma +tetralin +tetrallini +tetralogic +tetralogies +tetralogue +tetralogy +tetramastia +tetramera +tetrameral +tetrameric +tetramerism +tetramerous +tetrameter +tetramethyl +tetramin +tetramine +tetrammine +tetramorph +tetramorphic +tetrander +tetrandria +tetrandrian +tetrandrous +tetrane +tetranet +tetranitrate +tetranitro +tetranuclear +tetranychus +tetrao +tetraodon +tetraodont +tetraonid +tetraonidae +tetraoninae +tetraonine +tetrapanax +tetrapartite +tetraphenol +tetraphony +tetrapla +tetraplegia +tetrapleuron +tetraploid +tetraploidic +tetraploidy +tetraplous +tetrapod +tetrapoda +tetrapodic +tetrapody +tetrapolar +tetrapolis +tetrapolitan +tetrapous +tetrapteran +tetrapteron +tetrapterous +tetraptote +tetrapturus +tetraptych +tetrapylon +tetrapyramid +tetrarch +tetrarchate +tetrarchic +tetrarchy +tetraseme +tetrasemic +tetraskelion +tetrasome +tetrasomic +tetrasomy +tetraspermal +tetraspheric +tetraspore +tetrasporic +tetrasporous +tetraster +tetrastich +tetrastichal +tetrastichic +tetrastichus +tetrastoon +tetrastyle +tetrastylic +tetrastylos +tetrastylous +tetrathecal +tetratheism +tetratheite +tetrathionic +tetratomic +tetratone +tetrault +tetravalence +tetravalency +tetraxial +tetraxon +tetraxonia +tetraxonian +tetraxonid +tetraxonida +tetrazane +tetrazene +tetrazin +tetrazine +tetrazo +tetrazole +tetrazolium +tetrazolyl +tetrazone +tetrazotize +tetrazyl +tetreault +tetremimeral +tetric +tetrical +tetricity +tetricous +tetrigid +tetrigidae +tetriodide +tetris +tetrislike +tetrix +tetrobol +tetrobolon +tetrode +tetrodon +tetrodont +tetrole +tetrolic +tetronic +tetronymal +tetrose +tetroxalate +tetroxide +tetryl +tetrylene +tetsu +tetsuko +tetsumo +tetsuo +tetsuro +tetsuya +tetsuyuki +tetsy +tettenbach +tetter +tetterish +tetterous +tetterwort +tettery +tettigidae +tettigoniid +tettix +tettum +tetua +tetuamia +tetum +tetun +tetung +tetzel +tetzlaff +tetzuro +teucer +teucri +teucrian +teucrin +teucrium +teueia +teufel +teuff +teufit +teugels +teuian +teuk +teulinks +teun +teunissen +teuso +teuth +teutila +teutolatry +teutomania +teutomaniac +teuton +teutondom +teutonesque +teutonia +teutonically +teutonicism +teutonism +teutonist +teutonity +teutonize +teutonomania +teutonophobe +teutophil +teutophile +teutophilism +teutophobe +teutophobia +teutophobism +teutopolis +tevaite +teve +tevere +teversen +tevfel +tevi +tevis +teviss +tevlin +tevorang +tevye +tewa +tewatewa +tewatewan +tewatiwa +tewel +tewer +teweya +tewit +tewitt +tewkesbury +tewksbury +tewly +tewsome +texan +texans +texarkana +texas +texascity +texascreek +texases +texcatepec +texcocan +texereau +texern +texguino +texhacker +texhax +texhoma +texi +texian +texico +texinfo +texistepec +texline +texmaster +texmelucan +texnician +texnique +texno +texola +texon +texpert +text +texta +textarian +textb +textbook +textbookless +textbooks +textbridge +textc +texteditor +texter +textfile +textfiles +textform +textheight +textiferous +textiles +textilist +textlet +textloc +textman +textmode +textonly +textor +textorial +textpad +textrange +textrine +textronix +texts +textscape +textscroller +textstream +textual +textualism +textualist +textuality +textually +textuarist +textuary +texturally +texture +textured +textureless +textures +texturing +textutils +textviewer +teymour +tezcan +tezcatlipoca +tezcucan +tezie +tezkere +tezoatla +tezoatlan +tezuka +tfield +tfields +tfinddialog +tftp +tftpboot +tfuea +tghuade +tgpublish +thaa +thaayoore +thabatseka +thabet +thabo +thack +thacker +thackeray +thackerayan +thackerayana +thackerville +thackless +thackray +thad +thaddaeus +thaddeus +thadeus +thado +thadopao +thadou +thadoubiphei +thae +thahan +thahash +thai +thailand +thailandlaos +thaimalay +thaimaster +thain +thaintook +thair +thais +thakali +thakara +thakari +thaker +thakhek +thakhong +thakor +thakri +thakua +thakur +thakura +thakurate +thakurgaon +thakuri +thal +thalami +thalamic +thalamite +thalamium +thalamocele +thalamocoele +thalamophora +thalamotomy +thalamus +thalarctos +thalassal +thalassian +thalassic +thalassinid +thalassinoid +thalasso +thalassocrat +thalattology +thalbach +thalberg +thalenite +thaler +thales +thalesia +thalesian +thalessa +thali +thalia +thaliacea +thaliacean +thalian +thaliard +thalictrum +thalli +thallic +thalliferous +thalliform +thalline +thallious +thallo +thallochlore +thallodal +thallogen +thallogenic +thallogenous +thalloid +thallome +thallophyta +thallophytic +thallose +thallous +thallus +thalmann +thalmus +thalposis +thalpotic +thalthan +thaltho +thalu +thalwepwe +tham +thamah +thamar +thameng +thameridge +thames +thamesis +thamesside +thami +thamila +thaminyi +thamle +thammarat +thammas +thamnidium +thamnium +thamnophile +thamnophilus +thamnophis +thamudean +thamudene +thamudic +thamuria +thamus +thamyras +than +thana +thanadar +thanage +thanan +thanassis +thanatism +thanatist +thanatogunos +thanatoid +thanatology +thanatometer +thanatophobe +thanatophoby +thanatopsis +thanatos +thanatosis +thanatotic +thanatousia +thandiani +thane +thanedom +thanehood +thaneland +thaneship +thaness +thanessi +thang +thanggal +thangkhulm +thangngen +thanh +thani +thaniel +thank +thanked +thankee +thanker +thankful +thankfully +thankfulness +thanking +thankless +thanklessly +thanks +thanksgiver +thanksgiving +thankworthy +thankyou +thanone +thanos +thanx +thany +thanyarat +thao +thap +thapes +thappy +thapsia +thar +thara +tharad +tharadari +tharaka +tharby +thareli +tharf +tharfcake +thargelion +tharginyah +thari +tharkun +tharm +tharnggalu +tharp +tharparkar +tharrington +tharshish +tharsis +tharsislike +tharu +thasian +thaspium +that +thatback +thatch +thatched +thatcher +thatches +thatching +thatchless +thatchwood +thatchwork +thatchy +thatd +thate +thatexploits +thathas +thatll +thatn +thatness +thatpoor +thats +thatthat +thatvalue +thatyou +thaught +thaumantian +thaumantias +thaumasia +thaumasite +thaumatogeny +thaumatology +thaumatrope +thaumaturge +thaumaturgia +thaumaturgic +thaumaturgy +thaumoscopic +thave +thavung +thaw +thawed +thawer +thawing +thawless +thawn +thaws +thawte +thawville +thawy +thaxter +thaxton +thay +thayden +thayer +thayetmo +thayetmyo +thayne +thayorre +thcy +thdsun +thea +theaccess +theaceae +theaceous +theacrobat +theadora +theah +theanalysis +theandric +theanthropic +theanthropos +theanthropy +thearchic +thearchy +theart +theasum +theat +theater +theatergoer +theatergoing +theaterless +theaterlike +theaters +theaterward +theaterwards +theaterwise +theatine +theatral +theatre +theatres +theatricable +theatrical +theatrically +theatricals +theatrician +theatricism +theatricize +theatrics +theatrize +theatrocracy +theatrograph +theatromania +theatron +theatrophile +theatrophone +theatropolis +theatroscope +theatry +theave +theb +thebaic +thebaid +thebaine +thebais +thebaism +theban +thebat +thebe +theberge +theberkeley +thebesian +thebez +thebirds +thebor +thebs +theca +thecae +thecal +thecamoebae +thecaphore +thecasporal +thecaspore +thecaspored +thecasporous +thecata +thecate +thecharacre +thechief +thechryse +thecia +thecitis +thecity +thecium +thecla +theclan +theclient +thecodont +thecoid +thecoidea +thecophora +thecosomata +thecurrent +theda +thedalles +thedead +thedelphi +thedford +thedisks +thedll +thedoctor +thedoor +thedora +thedraw +thee +theedain +theek +theeker +theel +theelin +theelol +theemim +theen +theend +theer +theerror +theet +theetsee +theezan +thefall +thefile +thefilename +thefirst +theform +theft +theftbote +theftdom +theftless +theftp +theftproof +thefts +theftuous +theftuously +thegeneral +thegether +thegidder +thegither +thegiven +thegn +thegndom +thegnhood +thegnland +thegnlike +thegnly +thegnship +thegnworthy +theh +thehacker +thei +theidapi +theiform +theil +theilade +theileria +theilman +theimer +thein +theine +theinism +theinternet +their +theirn +theirs +theirselves +theirsens +theis +theismann +theissbacher +theistic +theistical +theistically +theives +theize +thekingandi +thekla +thelalgia +thelasar +thelemic +thelemite +thelen +thelephora +thelife +theligonum +thelitis +thelium +thellmann +thelma +thelodus +theloncus +thelonious +theloosen +thelorrhagia +thelphusa +thelphusian +thelphusidae +thelwall +thelyblast +thelyblastic +thelyotokous +thelyotoky +thelyphonus +thelyplasty +thelytocia +thelytoky +thelytonic +them +thema +themachine +themajordomo +themann +themas +themata +thematic +thematical +thematically +thematist +themay +thembu +theme +themed +themeless +themelet +themer +themes +themis +themistian +themistocles +themne +themovement +themse +themsel +themselves +themule +then +thenabouts +thenadays +thenal +thename +thenar +thenardier +thenardite +thence +thenceafter +thenceforth +thencefrom +thenceward +thencurrent +thendara +thenecessary +theng +thengel +thengo +thenhead +thenic +thenine +thenness +thenorc +thenplace +thenraging +thentire +theo +theobald +theobalda +theobroma +theobromic +theobromine +theocentric +theocentrism +theocharakis +theochristic +theocracies +theocrasia +theocrasical +theocrasy +theocrat +theocratic +theocratical +theocratist +theocritan +theocritean +theoden +theodicaea +theodicean +theodicy +theodidact +theodolite +theodolitic +theodopoulos +theodor +theodora +theodore +theodores +theodorescu +theodoric +theodoros +theodorus +theodosia +theodosopulu +theodotian +theodotus +theodrama +theodred +theodulf +theody +theogamy +theognostic +theogonal +theogonic +theogonism +theogonist +theogony +theoharis +theohuman +theokrasia +theoktonic +theoktony +theolatrous +theolatry +theold +theolepsy +theoleptic +theologal +theologaster +theologate +theologeion +theologer +theologi +theologic +theological +theologician +theologics +theologies +theologism +theologist +theologium +theologize +theologizer +theologue +theologus +theomachia +theomachist +theomachy +theomancy +theomania +theomaniac +theomantic +theomastix +theomicrist +theomorphic +theomorphism +theomorphize +theon +theona +theonly +theonomy +theopantism +theopaschist +theopaschite +theopathetic +theopathic +theopathy +theophagic +theophagite +theophagous +theophagy +theophania +theophanic +theophanies +theophanism +theophanous +theophany +theophila +theophile +theophilist +theophilius +theophilos +theophilus +theophobia +theophobist +theophont +theophoric +theophorous +theophrastan +theophylline +theophysical +theopneust +theopneusted +theopneustia +theopneustic +theopneusty +theopolitics +theopolity +theopsychism +theorbist +theorbo +theorematic +theorematist +theoremic +theorems +theoret +theoretical +theoretics +theoria +theoriai +theoric +theorical +theorically +theorician +theoricon +theorics +theories +theoriginal +theorism +theorists +theorization +theorize +theorized +theorizer +theorizers +theorizes +theorizies +theorizing +theorm +theorum +theory +theoryless +theorymonger +theos +theosoph +theosopheme +theosophic +theosophical +theosophies +theosophism +theosophist +theosophize +theosophy +theotechnic +theotechnist +theotechny +theotherapy +theotime +theotokos +theough +theouter +theow +theowdom +theowman +thep +theplains +theprisoner +theprocess +theproducers +ther +thera +theraean +theralite +therapeusis +therapeutae +therapeutic +therapeutics +therapeutism +therapeutist +theraphosa +theraphose +theraphosid +theraphosoid +therapies +therapist +therapists +therapsid +therapsida +therapy +theravada +therblig +there +thereabout +thereabove +thereacross +thereafter +thereagainst +thereamong +thereamongst +thereanent +thereanents +therearound +thereas +thereat +thereaway +thereaways +therebeside +therebesides +therebetween +thereby +thereckly +thered +therefore +therefrom +therehence +therein +thereinafter +thereinto +therell +theremin +therence +thereness +thereof +thereoid +thereologist +thereology +thereon +thereout +thereover +therequested +thereright +theres +theresa +therese +theresia +theresina +theresita +theressa +therethrough +theretill +thereto +theretoward +thereuntil +thereunto +thereup +thereupon +thereva +therevid +therevidae +therewhile +therewith +therewithal +therewithin +theria +theriac +theriaca +theriacal +therial +theriatrics +theriault +theridiid +theridiidae +theridion +therien +therin +therine +theriodic +theriodont +theriodonta +theriodontia +theriolatry +theriomancy +theriomaniac +theriomorph +theriot +theriotheism +theriozoic +therissos +therm +thermae +thermal +thermalgesia +thermality +thermalize +thermalized +thermalizes +thermalizing +thermally +thermals +thermantic +thermatology +thermic +thermically +thermidor +thermidorian +thermion +thermionics +thermistor +thermit +thermite +thermochemic +thermochroic +thermochrosy +thermocline +thermocouple +thermoduric +thermogen +thermogenic +thermogenous +thermogeny +thermogram +thermograph +thermography +thermolabile +thermology +thermolysis +thermolytic +thermolyze +thermometer +thermometers +thermometric +thermometry +thermomotive +thermomotor +thermonastic +thermonasty +thermonous +thermopair +thermoperiod +thermophile +thermophilic +thermophone +thermophore +thermopile +thermoplegia +thermopleion +thermopolis +thermopsis +thermos +thermoscope +thermoscopic +thermoses +thermosiphon +thermosoles +thermostable +thermostat +thermostatic +thermostats +thermotactic +thermotank +thermotaxic +thermotaxis +thermotic +thermotical +thermotics +thermotropic +thermotropy +thermotype +thermotypic +thermotypy +thernoe +therock +therodont +therof +theroid +therolatry +therologic +therological +therologist +therology +theromora +theromores +theromorph +theromorpha +theromorphia +theromorphic +theron +theropod +theropoda +theropodous +therpauve +therrien +thersitean +thersites +thersitical +therstappen +therteen +thesauri +thesauruses +thescreen +these +thesean +theseer +thesens +theserver +theses +theseum +theseus +theshire +thesial +thesicle +thesiger +thesis +thesium +thesmophoria +thesmophoric +thesmothetae +thesmothete +thesmothetes +thesocyte +thespectral +thespesia +thespesius +thespis +thesprotia +thessalia +thessalian +thessalonian +thessalonica +thessalonika +thessaloniki +thessaly +thestandard +thestreen +thesus +thet +thetch +thetext +thetford +thething +thetibetan +thetic +thetical +thetically +thetics +thetin +thetine +thetis +thetombs +theudas +theuga +theui +theun +theurgic +theurgical +theurgically +theurgist +theurgy +theuse +thevalar +thevenard +thevenart +thevenet +thevenin +thevetia +thevetin +thevillage +thew +thewed +thewise +thewless +thewness +thews +thewy +they +theyd +theygot +theyll +theyre +theyve +thia +thiacetic +thiadiazole +thiaka +thialdine +thiamide +thiamine +thiang +thianthrene +thiasi +thiasine +thiasite +thiasoi +thiasos +thiasote +thiasus +thiazine +thiazole +thiazoline +thibadeau +thibault +thibaut +thibeau +thibeault +thibert +thibido +thibodaux +thibodeau +thibodeaux +thibon +thick +thickbrained +thickcoming +thicken +thickened +thickener +thickening +thickens +thicker +thickest +thicket +thicketed +thicketful +thickets +thickety +thickhead +thickheaded +thickleaf +thickline +thicklips +thickly +thickneck +thickness +thicknesses +thicknessing +thickribbed +thickset +thickskin +thickskinned +thickskull +thickskulled +thickwind +thickwit +thida +thie +thief +thiefcraft +thiefdom +thiefland +thiefmaker +thiefmaking +thiefproof +thieftaker +thiefwise +thieken +thiel +thielavia +thiele +thiells +thien +thienone +thiensville +thienyl +thier +thierry +thiery +thies +thiess +thiessen +thieu +thievable +thieve +thieved +thieveless +thiever +thieveries +thievery +thieves +thievingly +thievish +thievishly +thievishness +thifault +thig +thigger +thigging +thigh +thighbone +thighed +thighs +thight +thightness +thigmotactic +thigmotaxis +thigmotropic +thigpen +thilanottine +thilence +thilenth +thilk +thill +thiller +thilly +thimber +thimbleberry +thimbled +thimbleful +thimblefuls +thimblelike +thimblemaker +thimbleman +thimblerig +thimbles +thimbleweed +thimbu +thimbukushu +thimig +thimnathah +thimphu +thin +thinbrained +thine +thing +thingal +thingamabob +thinghood +thingie +thinginess +thingish +thingkoh +thingless +thinglet +thinglike +thingliness +thingly +thingman +thingness +thingol +things +thingsshould +thingstead +thingum +thingumajig +thingumbob +thingummy +thingy +thingz +thinh +think +thinkable +thinkably +thinkabout +thinker +thinkers +thinkest +thinketh +thinkful +thinking +thinkingly +thinkingpart +thinkling +thinko +thinkpad +thinks +thinly +thinned +thinner +thinners +thinnes +thinness +thinnest +thinning +thinocoridae +thinocorus +thinolite +thins +thinskinned +thinwire +thio +thioacetal +thioacetic +thioalcohol +thioaldehyde +thioamide +thioarsenate +thioarsenic +thioarsenite +thiobacillus +thiobacteria +thiocarbamic +thiocarbamyl +thiocarbonic +thiocarbonyl +thiochloride +thiochrome +thiocresol +thiocyanic +thiocyanide +thiocyano +thiocyanogen +thiodiazole +thiofuran +thiofurane +thiofurfuran +thiogycolic +thiohydrate +thioindigo +thioketone +thiol +thiolacetic +thiolactic +thiolic +thionamic +thionate +thionation +thioneine +thionet +thionic +thionine +thionitrite +thionium +thionthiolic +thionurate +thionyl +thionylamine +thiopental +thiophen +thiophene +thiophenic +thiophenol +thiophosgene +thiophthene +thiopyran +thiosinamine +thiospira +thiostannate +thiostannic +thiostannite +thiostannous +thiosulphate +thiothrix +thiotolene +thiotungstic +thiourea +thiourethan +thiourethane +thioxene +thiozone +thiozonide +thip +thir +third +thirdborough +thirdhighest +thirdings +thirdlargest +thirdling +thirdly +thirdness +thirdparty +thirdperson +thirdpower +thirds +thirdsman +thirdworld +thirgyone +thirl +thirlage +thirling +thirlwell +thiro +thirst +thirsted +thirster +thirsteth +thirstful +thirstier +thirstiest +thirstily +thirstiness +thirsting +thirstingly +thirstland +thirstle +thirstless +thirstproof +thirsts +thirsty +thirt +thirteen +thirteener +thirteenfold +thirteens +thirteenth +thirteenthly +thirties +thirtieth +thirty +thirtyfive +thirtyfold +thirtyish +thirtyseven +thirugnanam +thirza +this +thisbe +thisdel +thisfaq +thishow +thisi +thisis +thisisit +thislike +thisll +thisn +thisness +thisquite +thisse +thissen +thissla +thissymbol +thisted +thistle +thistlebird +thistled +thistlelike +thistleproof +thistlery +thistles +thistlewaite +thistlewool +thistlish +thistly +thiswise +thisyear +thither +thitherto +thitherward +thitsiol +thiuram +thivel +thixle +thixolabile +thixotropic +thixotropy +thiz +thlakama +thlantlang +thlaping +thlaro +thlaspi +thlevel +thlinget +thlipsis +thlukfu +thndrbl +thnx +thoai +thob +thocht +thochu +thoday +thoddi +thoeren +thof +thoft +thoftfellow +thogical +thognaath +thoi +thoka +thoke +thokish +tholdiewy +thole +tholeiite +tholen +tholepin +tholi +tholian +tholians +tholl +tholoi +tholos +tholus +thom +thoma +thomaean +thomaidou +thomaier +thomajan +thomalla +thomana +thomas +thomasa +thomasboro +thomasin +thomasina +thomasine +thomasing +thomasite +thomason +thomasoni +thomassin +thomasson +thomaston +thomastown +thomasville +thome +thomeray +thomerson +thomey +thomisid +thomisidae +thomism +thomist +thomistical +thomite +thomlinson +thommy +thomna +thomomys +thompson +thompsons +thompsontown +thoms +thomsen +thomsenolite +thomsett +thomson +thomsonian +thomsonite +thomspon +thomy +thon +thonder +thondracians +thondraki +thondrakians +thone +thonga +thonged +thongho +thongman +thongs +thongy +thonotosassa +thoo +thooid +thoolen +thoom +thor +thora +thoracalgia +thoracaorta +thoracectomy +thoraces +thoracic +thoracica +thoracical +thoraciform +thoracodynia +thoracograph +thoracolysis +thoracomelus +thoracometer +thoracometry +thoracopagus +thoracoscope +thoracoscopy +thoracostei +thoracostomy +thoracotomy +thoral +thoralf +thorascope +thorax +thoraxes +thorbardin +thorbjorn +thorburn +thordsen +thore +thoreau +thoren +thorens +thorensen +thorent +thorg +thoria +thorianite +thoric +thoriferous +thorin +thorina +thorite +thorkelson +thorley +thorman +thormann +thorn +thornback +thornber +thornbill +thornburg +thornbury +thornbush +thorndale +thorndike +thorndon +thorndyke +thorne +thorned +thornen +thornfield +thornhead +thornhill +thorni +thornier +thorniest +thornily +thorniness +thornless +thornlet +thornley +thornlike +thornproof +thorns +thornstone +thorntail +thornton +thorntown +thorntveidt +thornville +thornwall +thornwood +thoro +thorofare +thorogummite +thoron +thorondor +thorough +thoroughbass +thoroughfoot +thoroughly +thoroughness +thoroughpin +thoroughsped +thoroughstem +thoroughwax +thoroughwort +thorp +thorpe +thorsby +thorsden +thorsen +thorslund +thorson +thorsteinn +thort +thorter +thorton +thortveitite +thorvald +thorwald +thos +those +thotcher +thotyiwort +thou +though +thoughout +thought +thoughted +thoughten +thoughtest +thoughtful +thoughtfully +thoughtkin +thoughtless +thoughtlet +thoughtness +thoughts +thoughtsick +thoughtwould +thoughty +thouroughly +thousand +thousandoaks +thousands +thousandth +thouse +thow +thowel +thowless +thowt +thphys +thpiwit +thrace +thraces +thracian +thrack +thraep +thrail +thrain +thraldom +thrall +thrallborn +thralldom +thram +thrammle +thrandruil +thrang +thrangity +thranite +thranitic +thrap +thrapple +thrashed +thrashel +thrasher +thrasherman +thrashes +thrashing +thraso +thrasonic +thrasonical +thrast +thrasymedes +thraupidae +thrave +thraver +thraw +thrawcrook +thrawn +thrawneen +thrax +thread +threadbare +threadbarity +threaded +threaden +threader +threaders +threadfin +threadfish +threadflower +threadfoot +threadiness +threading +threadle +threadless +threadlet +threadlike +threadmaker +threadmaking +threads +threadway +threadweed +threadworm +thready +threap +threaper +threat +threaten +threatenable +threatened +threatener +threatening +threatenings +threatens +threatful +threatfully +threatless +threatproof +threats +threatt +thred +three +threeaddruse +threebridges +threecensus +threeclass +threecol +threed +threeday +threefactor +threefifths +threefinger +threefold +threefolded +threefoldly +threefoot +threeforks +threefourths +threeheaded +threelakes +threeletter +threeling +threemasted +threemilebay +threemode +threeness +threeoaks +threeparty +threepence +threepenny +threepio +threepronged +threerivers +threes +threescore +threesickly +threesome +threesprings +threestage +threestate +threetowered +threeway +threeyear +threlkeld +threne +threnetic +threnetical +threnode +threnodial +threnodian +threnodic +threnodical +threnodist +threnody +threnos +threonin +threose +threpsology +threptic +thresh +threshed +threshel +thresher +thresherman +thresheth +threshhold +threshing +threshold +thresholds +thrett +threw +threwest +thribble +thrice +thricecock +thrid +thridacium +thrift +thriftbox +thriftier +thriftiest +thriftily +thriftiness +thriftless +thriftlessly +thriftlike +thrill +thrilla +thrilled +thriller +thrillers +thrillful +thrillfully +thrilling +thrillingly +thrillproof +thrills +thrillsome +thrilly +thrimble +thrimp +thrinax +thring +thrinter +thrioboly +thrip +thripel +thripidae +thripple +thrive +thrived +thriveless +thriven +thriver +thrives +thriving +thrivingly +thrivingness +thro +throat +throatal +throatband +throated +throatful +throatier +throatiest +throatily +throatiness +throating +throatlash +throatlatch +throatless +throatlet +throatroot +throats +throatstrap +throatwort +throb +throbbed +throbber +throbbing +throbbingly +throbless +throbs +throck +throckmorton +throckton +throdden +throddy +throe +throes +throgmorton +throley +thrombase +thrombin +thrombocyst +thrombocyte +thrombogen +thrombogenic +thromboid +thrombopenia +thrombose +thrombosis +thrombotic +thrombus +thronal +throne +throned +thronedom +throneless +thronelet +thronelike +thrones +throneward +throng +thronged +thronger +throngful +thronging +throngingly +throngs +thronize +throop +thropple +thror +throstle +throstlelike +throttle +throttled +throttler +throttles +throttling +throttlingly +throu +throuch +throucht +through +throughbear +throughbred +throughcome +throughgang +throughgoing +throughgrow +throughknow +throughly +throughout +throughput +throught +throughway +throuper +throve +throw +throwaway +throwdown +throwed +thrower +throwing +thrown +throwoff +throwout +throws +throwster +throwwort +throwy +throxton +thru +thrummed +thrummer +thrummers +thrumming +thrummy +thrumwort +thrushel +thrushlike +thrushy +thrust +thrusted +thruster +thrusters +thrusteth +thrustful +thrusting +thrustings +thrusts +thrutch +thrutchings +thruthvang +thruv +thrymsa +thryonomys +thtop +thua +thuan +thuanga +thuban +thucydidean +thud +thudam +thudd +thudded +thudding +thuddingly +thuds +thuesen +thufir +thug +thuganlitha +thugdom +thuggeeism +thuggery +thuggess +thuggish +thuggism +thugs +thuhnk +thuidium +thuja +thujene +thujin +thujone +thujopsis +thujyl +thukumi +thule +thulia +thulin +thulir +thulishi +thulite +thulleya +thulr +thulu +thulung +thulunge +thuluth +thum +thumb +thumbbird +thumbed +thumber +thumbing +thumbkin +thumble +thumbless +thumblike +thumbmark +thumbnail +thumbnailer +thumbnil +thumbpiece +thumbprint +thumbrope +thumbs +thumbscrew +thumbsplus +thumbstall +thumbstring +thumbtack +thumby +thumbz +thumlungur +thumm +thummim +thump +thumped +thumper +thumping +thumpingly +thumps +thun +thunar +thunberg +thunbergia +thunborg +thundaikanza +thunder +thunderation +thunderball +thunderbird +thunderblast +thunderbold +thunderbolt +thunderbolts +thunderburst +thunderbyte +thundercloud +thundercrack +thundercrypt +thunderdome +thundered +thunderer +thunderers +thundereth +thunderfish +thunderful +thunderguard +thunderhawk +thunderhead +thunderheads +thundering +thunderingly +thunderings +thunderless +thunderlike +thunderlips +thunderously +thunderpeal +thunderplump +thunderproof +thunders +thundersafe +thundersmite +thunderstick +thunderstone +thundertube +thunderwood +thunderworm +thunderwort +thundery +thundrous +thundrously +thung +thunge +thunk +thunking +thunklike +thunks +thunnidae +thunnus +thunor +thunova +thuoc +thuong +thurawal +thurber +thurberia +thurgau +thurgood +thuri +thurible +thuribuler +thuribulum +thurifer +thuriferous +thurificate +thurificati +thurify +thuringia +thuringian +thuringite +thurio +thurl +thurley +thurm +thurman +thurmon +thurmond +thurmont +thurmus +thurnia +thurniaceae +thurrock +thursby +thursday +thursdays +thurse +thurston +thurt +thurtle +thus +thusgate +thushi +thusly +thusnelda +thusness +thussy +thuswaldner +thuswise +thuthuy +thutter +thuy +thuyopsis +thwacker +thwacking +thwackingly +thwackstave +thwackum +thwaite +thwaites +thwaltes +thwart +thwarted +thwartedly +thwarteous +thwarter +thwarting +thwartingly +thwartly +thwartman +thwartness +thwartover +thwarts +thwartsaw +thwartship +thwartships +thwartways +thwartwise +thwing +thwite +thwittle +thwow +thyatira +thyestean +thyestes +thyine +thylacine +thylacitis +thylacoleo +thylacynus +thymacetin +thymallidae +thymallus +thymate +thyme +thymectomize +thymectomy +thymegol +thymelaea +thymelaeales +thymelcosis +thymele +thymelic +thymelical +thymelici +thymene +thymetic +thymic +thymiosis +thymitis +thymocyte +thymogenic +thymol +thymolate +thymolize +thymoma +thymonucleic +thymopathy +thymoprivic +thymoprivous +thymopsyche +thymoquinone +thymotactic +thymotic +thymy +thymyl +thymylic +thynnid +thynnidae +thyolo +thyra +thyraden +thyreogenic +thyreogenous +thyreohyal +thyreohyoid +thyreoid +thyreoidal +thyreoideal +thyreoidean +thyreoiditis +thyreoitis +thyreosis +thyreotomy +thyreotropic +thyridial +thyrididae +thyridium +thyris +thyrocardiac +thyrocele +thyrocolloid +thyrocricoid +thyrogenic +thyroglossal +thyrohyal +thyrohyoid +thyroidea +thyroideal +thyroidean +thyroidism +thyroiditis +thyroidless +thyroidotomy +thyroiodin +thyrolingual +thyroprival +thyroprivia +thyroprivic +thyroprivous +thyroprotein +thyrostraca +thyrostracan +thyrotherapy +thyrotomy +thyrotropic +thyrse +thyrsiform +thyrsoid +thyrsoidal +thyrsus +thys +thysanopter +thysanoptera +thysanoura +thysanouran +thysanourous +thysanura +thysanuran +thysanurian +thysanurous +thysel +thyself +thysen +thyssen +tiaala +tiadje +tiagba +tiago +tiahuanacan +tial +tialo +tiam +tiamat +tian +tiana +tiananmen +tianbao +tiang +tianjin +tiankoura +tianzhu +tiao +tiapi +tiar +tiara +tiaralike +tiare +tiarella +tiaret +tiari +tiassale +tiatinagua +tiba +tibas +tibate +tibati +tibbets +tibbett +tibbetts +tibbie +tibbs +tibbsworth +tibbu +tibby +tibea +tiber +tiberghien +tiberian +tiberias +tiberine +tiberio +tiberius +tibetan +tibetans +tibetoburman +tibetokaren +tibey +tibhath +tibi +tibiad +tibiae +tibial +tibiale +tibias +tibicinist +tibiofemoral +tibiofibula +tibiofibular +tibiotarsal +tibiotarsus +tibni +tibola +tibolah +tibolak +tibolal +tiboli +tibor +tiboran +tibouchina +tibourbou +tibra +tibrow +tibu +tiburon +tiburtine +tical +tically +ticanese +ticca +ticclean +tice +ticement +ticer +tich +tichawa +tichenor +ticherong +tichnor +tichodroma +tichodrome +tichorrhine +tichurong +tichy +ticino +tick +tickbean +tickbird +tickeater +ticked +ticken +ticker +tickerpage +tickers +ticket +ticketer +ticketing +ticketless +ticketmonger +tickets +tickey +tickfaw +tickicide +tickie +ticking +tickle +tickleback +ticklebrain +tickled +ticklely +ticklenburg +tickleness +tickleproof +tickler +tickles +ticklesome +tickless +tickleweed +tickling +ticklingly +ticklishly +ticklishness +ticklist +tickly +tickney +tickproof +ticks +tickseed +tickseeded +ticktack +ticktacker +ticktacktoe +ticktick +tickticktick +ticktock +tickweed +ticky +ticlacayan +ticmanager +tico +ticonderoga +ticoora +ticotin +ticprocessor +tics +tictac +tictactoe +ticul +ticuna +ticunan +ticview +ticzon +tidaa +tidal +tidally +tidatit +tidball +tidbit +tidbits +tidd +tidda +tiddim +tiddle +tiddler +tiddley +tiddling +tiddlywink +tiddlywinks +tiddy +tide +tided +tideful +tidehead +tideless +tidelessness +tidelike +tidelius +tidely +tidemaker +tidemaking +tidemark +tider +tiderace +tides +tidesman +tidesurveyor +tideswell +tidewaiter +tideward +tideway +tidi +tidiable +tidied +tidier +tidiest +tidikelt +tidily +tidiness +tiding +tidingless +tidings +tidioute +tidley +tidmore +tidoeng +tidological +tidology +tidong +tidore +tidung +tidwell +tidy +tidying +tidyism +tidytips +tiebaara +tieback +tiebeam +tiebolt +tied +tiedemann +tiedtke +tiedye +tiedyed +tiefo +tiege +tiegham +tiegs +tielegina +tielier +tiem +tiemaker +tiemaking +tiemannite +tien +tiena +tienchow +tienda +tiendanite +tiene +tieneekruhd +tieng +tieno +tienoscope +tienpa +tienpao +tienpo +tiensuwan +tienyu +tiepin +tier +tierce +tierced +tierceron +tiered +tierer +tieri +tierlike +tiernan +tierney +tierra +tiers +tiersman +tiertza +ties +tiesiding +tietick +tietjen +tieton +tiettina +tieu +tiewig +tiewigged +tifal +tifalmin +tiff +tiffani +tiffanie +tiffany +tiffanyite +tiffcity +tiffi +tiffie +tiffin +tiffish +tiffle +tiffy +tifi +tifinagh +tiflin +tiflis +tifnut +tifo +tifter +tifton +tiga +tigak +tigania +tige +tigella +tigellate +tigelle +tigellinus +tigellum +tigellus +tiger +tigerbird +tigereye +tigerflower +tigerfoot +tigerhearted +tigerhood +tigerish +tigerishly +tigerishness +tigerism +tigerkin +tigerlike +tigerling +tigerly +tigerman +tigernut +tigerproof +tigers +tigert +tigerton +tigerville +tigerwood +tigery +tigg +tigger +tight +tighten +tightened +tightener +tighteners +tightening +tightenings +tightens +tighter +tightest +tightfisted +tightfitting +tightish +tightly +tightness +tightoope +tightrope +tights +tightwad +tightwire +tigi +tigja +tiglaldehyde +tiglic +tiglinic +tiglon +tiglu +tignall +tignere +tignum +tigompinia +tigon +tigong +tigrai +tigranakert +tigranes +tigray +tigre +tigrean +tigresslike +tigrett +tigridia +tigrina +tigrine +tigrinja +tigrinya +tigris +tigroid +tigrolysis +tigrolytic +tigtag +tigua +tigum +tigun +tigurine +tigwa +tihama +tihami +tihanyi +tihohod +tihoru +tihov +tihulale +tiie +tiiiny +tiika +tiina +tiitaal +tijanji +tijeras +tijms +tijuana +tika +tikal +tikali +tikangarh +tikar +tikaram +tikareast +tikari +tike +tikem +tikhak +tikhir +tikhonov +tikhov +tiki +tikitiki +tikk +tikka +tikker +tikkiwal +tiklin +tiko +tikolosh +tikopia +tikor +tikoyo +tiku +tikulu +tikun +tikuna +tikur +tikurumi +tikus +tikuu +tikva +tikvah +tikvath +tila +tilaite +tilak +tilaka +tilapa +tilasite +tilauilau +tilbenny +tilborgh +tilbrook +tilbury +tilda +tilde +tilden +tildi +tildie +tildy +tile +tileback +tiled +tilefish +tilelike +tilemaker +tilemaking +tiler +tileroot +tilery +tiles +tileseed +tilestone +tileways +tilework +tileworks +tilewright +tileyard +tilfellet +tilford +tilghman +tili +tilia +tiliaceae +tiliaceous +tilica +tilikum +tiline +tiling +tilk +till +tillable +tillaea +tillaeastrum +tillage +tillamook +tillandsia +tillane +tillar +tillatoba +tille +tilled +tilleda +tiller +tillering +tillerless +tillerman +tillers +tillery +tillest +tilleth +tilletia +tilletiaceae +tilley +tilli +tillie +tilling +tillinghast +tillio +tillite +tillman +tillmann +tillodont +tillodontia +tillot +tillotter +tills +tillson +tillton +tilly +tilman +tilmon +tilmus +tilney +tilo +tilon +tilpah +tilquiapan +tilsa +tilsit +tilson +tilt +tiltable +tiltboard +tilted +tilter +tilth +tilting +tiltlike +tiltmaker +tiltmaking +tilton +tiltonsville +tilts +tiltup +tilty +tiltyard +tilu +tilung +tilvern +tilyer +tima +timable +timaeus +timai +timakata +timalia +timaliidae +timaliinae +timaliine +timaline +timandra +timani +timap +timar +timarau +timashev +timated +timawa +timazite +timba +timbal +timbale +timbang +timbara +timbe +timber +timbered +timberer +timberhead +timbering +timberjack +timberlake +timberless +timberlike +timberline +timberling +timberman +timbermonger +timbern +timbers +timbersome +timbertuned +timberville +timberwood +timberwork +timberwright +timbery +timberyard +timbira +timblin +timbo +timbou +timbrel +timbreled +timbreler +timbrels +timbrologist +timbrology +timbromania +timbromaniac +timbromanist +timbrophilic +timbrophily +timbuctou +timbuka +timbuktu +timbunki +timchenko +timdel +time +timeable +timebank +timebehavior +timecalcpro +timecard +timecensored +timecrack +timecritical +timed +timeddelay +timedelay +timeevolving +timeextended +timeezy +timeful +timefully +timefulness +timegate +timehonored +timein +timekeep +timekeeper +timekeeping +timekiller +timeleft +timeless +timelessly +timelessness +timelia +timelier +timeliest +timeliidae +timeliine +timelily +timelimit +timeline +timeliness +timeling +timelord +timely +timemark +timene +timenoguy +timeofday +timeous +timeously +timeout +timeouts +timepiece +timepleaser +timeproof +timer +timerelated +timerid +timers +times +timesaver +timesaving +timescale +timeseries +timeserver +timeserving +timeshares +timesharing +timesheet +timeslice +timeslices +timeslicing +timeslip +timeslipped +timeslips +timesroman +timestamp +timestamps +timetable +timetables +timetaker +timetaking +timetested +timetrack +timetrak +timetrp +timeward +timewell +timewise +timewizard +timework +timeworker +timezone +timi +timias +timicin +timide +timidity +timidly +timidness +timigan +timigun +timing +timingir +timings +timingwerte +timis +timish +timist +timite +timj +timken +timkin +timkul +timleck +timler +timm +timmannee +timmer +timmerding +timmerman +timmi +timmie +timmins +timmons +timmonsville +timms +timmy +timna +timnah +timnath +timnathheres +timnathserah +timne +timnite +timo +timocracy +timocratic +timocratical +timofeev +timoforo +timogon +timogun +timol +timon +timoneer +timonian +timonism +timonist +timonize +timor +timoreesch +timoreezen +timorese +timorflores +timorini +timorlembata +timorous +timorously +timorousness +timorousnous +timoshin +timosun +timote +timotean +timotee +timothea +timothean +timotheus +timothy +timotije +timour +timpani +timpanist +timpano +timpia +timpson +timpton +timputs +timresovia +timrous +tims +timsit +timtschenko +timu +timucua +timucuan +timugon +timugun +timuquan +timuquanan +timur +timuri +tina +tinagas +tinam +tinamidae +tinamine +tinamou +tinampipi +tinan +tinangkum +tinangkung +tinata +tinbergen +tincal +tinchel +tinchen +tinchill +tinclad +tinct +tinction +tinctorial +tinctorially +tinctorious +tincture +tinctured +tincturing +tind +tindakon +tindal +tindale +tindall +tindalo +tindama +tindberg +tinden +tinder +tinderbox +tindered +tinderish +tinderlike +tinderous +tindery +tindi +tindiga +tindin +tindle +tindouf +tindrock +tine +tinea +tineal +tinean +tined +tinegrass +tineid +tineidae +tineina +tineine +tineke +tineman +tineoid +tineoidea +tiner +tinetare +tinette +tinety +tineweed +tinf +tinfoil +tinful +ting +tingal +tingalun +tinganeses +tingara +tingau +tingchow +tinged +tingeing +tingent +tinger +tinggalan +tinggalum +tinggian +tingguian +tingi +tingibility +tingible +tingid +tingidae +tingis +tingitid +tingitidae +tingkala +tinglass +tinglayan +tingle +tingled +tinglemodem +tingler +tingles +tingletangle +tingley +tinglier +tingliest +tingling +tinglingly +tinglish +tingloff +tingly +tingo +tingtang +tinguaite +tinguaitic +tingui +tinguian +tinguiboto +tinguy +tingwell +tingwon +tinh +tinhorn +tinhouse +tini +tinian +tinieblas +tinier +tiniest +tinily +tinimbang +tininess +tining +tinitianes +tinjar +tink +tinker +tinkerbell +tinkerbelle +tinkerbird +tinkerdom +tinkered +tinkerer +tinkering +tinkerlike +tinkerly +tinkermdss +tinkers +tinkershire +tinkershue +tinkertrain +tinkerwise +tinkham +tinkle +tinkled +tinkler +tinklerman +tinkles +tinklier +tinkliest +tinkling +tinklingly +tinkly +tinlet +tinleypark +tinlike +tinman +tinn +tinne +tinned +tinnen +tinner +tinners +tinnery +tinnet +tinney +tinni +tinnie +tinnient +tinnier +tinniest +tinnified +tinnily +tinniness +tinning +tinnitus +tinnock +tinny +tino +tinoc +tinoceras +tinombo +tinosa +tinplate +tinputz +tins +tinschmann +tinsel +tinseled +tinseling +tinsellike +tinselly +tinselmaker +tinselmaking +tinselry +tinselweaver +tinselwork +tinsley +tinsman +tinsmith +tinsmithing +tinsmiths +tinsmithy +tinstone +tinstuff +tinsworthy +tinta +tintage +tintah +tintamarre +tintarron +tinted +tintekiya +tinter +tinti +tintie +tintin +tintinabula +tintiness +tinting +tintingly +tintinnabula +tintist +tintless +tintner +tinto +tintometer +tintometric +tintometry +tintor +tints +tinty +tintyper +tinville +tinwald +tinware +tinwoman +tinwork +tinworker +tinworking +tiny +tinycrud +tinymud +tinymuds +tinyssl +tinyweb +tinzenite +tioga +tiogacenter +tiokossi +tiom +tiomar +tion +tiona +tionesta +tiong +tionk +tionontates +tionontati +tions +tioo +tioor +tiou +tiouande +tipa +tipai +tipaza +tipburn +tipcart +tipcat +tipchang +tipe +tipeowo +tipful +tiphaine +tiphani +tiphanie +tiphany +tiphead +tiphia +tiphiidae +tiphsah +tipi +tipindje +tipinini +tipiti +tiple +tiplersville +tipless +tiplet +tipman +tipmost +tiponi +tippable +tippcity +tippecanoe +tipped +tippee +tipper +tippera +tipperah +tippers +tippet +tippett +tippi +tipping +tippins +tippled +tippleman +tippler +tippling +tipply +tippo +tipproof +tipps +tippurah +tippy +tipra +tips +tipsier +tipsiest +tipsifier +tipsify +tipsily +tipsiness +tipstaff +tipster +tipstock +tiptail +tipteerer +tiptilt +tiptoe +tiptoed +tiptoeing +tiptoeingly +tipton +tiptonville +tiptop +tiptopness +tiptopper +tiptoppish +tiptopsome +tipug +tipula +tipularia +tipulid +tipulidae +tipuloid +tipuloidea +tipun +tipup +tipura +tiquie +tiquiria +tira +tirade +tiradentes +tirado +tirahi +tirahutia +tirailleur +tiralee +tiramisu +tiran +tirana +tirane +tirap +tirard +tiras +tirathites +tire +tired +tiredly +tiredness +tiredom +tirehill +tirehouse +tirela +tireless +tirelessly +tirelessness +tirelli +tiremaid +tiremaker +tiremaking +tireman +tirer +tireroom +tires +tiresias +tiresmith +tiresome +tiresomely +tiresomeness +tiresomeweed +tirewoman +tirhakah +tirhanah +tirhari +tirhutia +tiri +tiria +tiriba +tiribi +tirifie +tiriki +tirima +tiring +tiringly +tirio +tiris +tirith +tiriya +tiriyo +tirke +tirl +tirma +tiro +tirocinium +tirol +tirolean +tirolese +tiron +tirones +tironian +tiroon +tirpitz +tirr +tirralirra +tirret +tirribi +tirrivee +tirrlie +tirrwirr +tirshatha +tirson +tirthankara +tirumbae +tirurai +tiruray +tirve +tirwit +tirya +tirza +tirzah +tisa +tisane +tisar +tisbe +tisch +tischhauser +tischler +tischmills +tischu +tisdale +tisdall +tiseo +tisg +tish +tisha +tishbite +tishena +tishiya +tishler +tishomingo +tishri +tisiphone +tiskilwa +tisl +tisman +tisn +tisoro +tissa +tissandier +tissemsilt +tisserand +tissier +tissing +tissot +tissual +tissue +tissued +tissueless +tissuelike +tissues +tissuey +tisswood +tisvel +tiswin +tita +titan +titanaugite +titanesque +titaness +titania +titanian +titanic +titanical +titanically +titanichthys +titaniferous +titanik +titanism +titanite +titanitic +titanlike +titano +titanolater +titanolatry +titanomachia +titanomachy +titanosaur +titanosaurus +titanothere +titanous +titans +titanyl +titao +titar +titawai +titbit +titbitty +tite +titech +titee +titelfm +titer +titeration +titfield +titfish +tith +tithable +tithal +tithania +tithe +tithebook +tithed +titheless +tithemonger +tithepayer +tither +titheright +tithes +tithing +tithingman +tithingpenny +tithonic +tithonicity +tithonium +tithonometer +tithymalus +titi +titia +titianesque +titiang +titianic +titicaca +titien +tities +titillant +titillated +titillater +titillating +titillation +titillative +titillator +titillatory +titin +titina +titinius +titius +titivate +titivation +titivator +titl +titlark +title +titlebar +titleboard +titlebox +titlecol +titled +titledom +titleholder +titleless +titlepage +titleproof +titler +titlerowc +titlerowi +titles +titleship +titlewave +titlez +titlike +titling +titlist +titmal +titman +titmarsh +titmarshian +titmice +titmouse +tito +titograd +titoism +titoist +titok +titoki +titonel +titonka +titorson +titos +titov +titova +titrable +titratable +titration +titre +titrimetric +titrimetry +tits +titter +tittered +titterel +titterer +tittering +titteringly +titterington +titters +tittery +tittie +titties +tittle +tittlebat +tittler +tittles +tittletattle +tittum +tittup +tittupy +titty +tittymouse +titu +titubancy +titubant +titubantly +titubate +titubation +titularity +titularly +titulary +titulation +titule +titulus +titurel +titus +titusville +tiuchiu +tiurin +tiuryagu +tivadai +tivbatu +tiver +tiverton +tiviri +tivoid +tivoli +tivy +tiwa +tiwal +tiwari +tiwaz +tiwi +tiwian +tiwirkum +tiworo +tiya +tiyakul +tiye +tiyez +tiza +tizer +tizeur +tizhe +tizi +tiziana +tizite +tiznit +tizona +tizzies +tizzy +tjaden +tjalku +tjam +tjamoro +tjampalagian +tjanting +tjaru +tjenare +tjendana +tjerait +tjia +tjilaki +tjimba +tjimundo +tjingilu +tjirebon +tjitak +tjitjak +tjoa +tjoestheim +tjokwai +tjon +tjosite +tjossem +tjpingpro +tjuave +tjudun +tjur +tkachenko +tkelly +tkhuma +tknit +tlabel +tlachichilco +tlaco +tlacoapa +tlacoculita +tlacolula +tlacolulita +tlacotepec +tlacoyalco +tlahaping +tlahuica +tlahura +tlakluit +tlaltemplan +tlamelula +tland +tlapallan +tlapanecan +tlapaneco +tlapi +tlas +tlascalan +tlatepusco +tlatsop +tlaxcala +tlaxiaco +tlayucan +tlbp +tlbr +tlbwi +tlbwr +tlemcen +tletle +tlhaping +tlingit +tlink +tlinkit +tlisi +tlocktype +tlokoa +tlokwa +tlongsai +tloome +tloue +tloutle +tlyadaly +tlyanub +tmagourt +tmagurt +tmainform +tmainmenu +tmas +tmema +tmemofield +tmenuitem +tmerk +tmesipteris +tmesis +tmetuchl +tmixer +tmooy +tmpfs +tmpostfix +tmpostit +tmrc +tmrcs +tmrticktime +tmsend +tmtstub +tnls +tnotebook +tnsdrive +tnuctipun +tnxe +toaalta +toabaita +toabaja +toad +toadback +toadd +toadeat +toadeater +toadeating +toader +toadery +toadess +toadfish +toadflax +toadflower +toadhead +toadie +toadied +toadier +toadies +toadish +toadkiller +toadless +toadlet +toadlike +toadlikeness +toadling +toadpipe +toadroot +toads +toadship +toadstone +toadstool +toadwise +toadying +toadyish +toadyism +toadyship +toag +toah +toak +toal +toala +toalapalili +toale +toali +toamasina +toambaita +toano +toaripi +toast +toastable +toasted +toastee +toaster +toasters +toastiness +toasting +toastmasters +toastmastery +toasts +toasty +toat +toatiraa +toatoa +toba +tobacco +tobaccofied +tobaccoism +tobaccoite +tobaccoless +tobaccolike +tobaccoman +tobacconist +tobacconize +tobaccophil +tobaccoroot +tobaccos +tobaccoville +tobaccoweed +tobaccowood +tobaccoy +tobada +tobadonijah +tobaemok +tobago +tobagoan +tobagonian +tobaku +tobamascoy +tobamaskoy +tobanga +tobapilaga +tobaru +tobati +tobe +tobelo +tober +tobey +tobi +tobiah +tobias +tobijah +tobikhar +tobilang +tobilung +tobin +tobine +tobins +tobinsport +tobira +tobit +tobler +tobo +toboggan +tobogganeer +tobogganer +tobogganing +tobogganist +toboi +tobol +tobold +tobor +tobote +toboy +tobruk +tobuan +tobunyuo +toby +tobye +tobyhanna +tobyman +toca +tocalote +tocancipa +tocantins +toccoa +toccopola +tocenga +tocharese +tocharian +tocharic +tocharish +tochen +tocher +tocherless +tochi +tochigi +tochipo +tochno +tochter +tock +toco +tocobaga +tocogenetic +tocogony +tocokinin +tocological +tocologist +tocology +tocome +tocometer +tocopherol +tocororo +tocreate +tocsin +tocusso +toda +todaga +todakota +todaro +today +todayish +todayll +todays +todd +todder +toddick +toddies +toddite +toddled +toddlekins +toddler +toddlers +toddling +toddville +toddy +toddyize +toddyman +tode +todea +todeal +todefine +todela +todev +todga +todhunter +todi +todidae +todini +todloski +todman +todo +todolist +todor +todorov +todorovic +todos +todra +todrah +todrahmonom +todson +todus +todwell +tody +todzhin +toea +toeboard +toecap +toecapped +toecutter +toed +toehold +toeing +toeless +toelike +toellite +toemoetoe +toenail +toenails +toende +toeplate +toeprint +toes +toetoe +toews +tofa +tofalar +tofamna +toff +toffee +toffeeman +toffer +toffing +toffish +tofflers +toffy +toffyman +tofieldia +tofilau +tofile +tofingbe +tofoke +toft +tofte +tofter +toftman +toftstead +toga +togae +togaed +togalike +togane +togar +togarmah +togas +togasaki +togata +togate +togated +togawise +togbo +togda +togdheer +together +togetherhood +togetherness +toggel +toggery +toggle +toggled +togglemouse +toggler +toggles +toggling +toghwede +togive +togless +tognazzi +tognoni +togo +togoan +togobenin +togole +togolese +togonfo +togoy +togoyo +togrul +togt +togue +tohama +tohatchi +tohave +tohei +toher +toheroa +tohgboh +toho +tohome +tohoun +toht +tohu +tohubohu +tohunga +toibin +toichiro +toicho +toignore +toikkanens +toil +toilea +toiled +toiler +toilers +toilet +toileted +toiletries +toilets +toilette +toiletted +toiletware +toilful +toilfully +toilinet +toiling +toilingly +toilless +toillessness +toils +toilsom +toilsomely +toilsomeness +toilworn +toinette +toise +toishan +toishanese +toit +toitish +toitovna +toity +toivola +toje +tojo +tojolabal +tojongan +toka +tokai +tokaimalo +tokain +tokaji +tokaki +tokano +tokareff +tokareva +tokat +tokay +toke +tokeland +tokelau +tokelauan +token +tokened +tokenism +tokenless +tokenname +tokens +tokeshi +tokill +toking +tokio +tokita +tokitin +tokizo +tokkaru +tokko +toko +tokodede +tokology +tokolor +tokoloshe +tokombere +tokondo +tokonoma +tokopat +tokos +tokoyama +tokpave +toksookbay +toksoz +toktoa +tokubei +tokudaa +tokudab +tokunaga +tokunoshima +tokunu +tokura +tokushima +tokwa +tokwasa +tokyo +tola +tolad +tolai +tolaites +tolaki +tolamine +tolamleinyua +tolan +toland +tolane +tolangan +tolar +tolbert +tolbooth +told +toldil +toldo +tole +toledan +toledo +toledoan +tolee +tolen +toler +tolerability +tolerable +tolerablish +tolerably +tolerance +tolerances +tolerancy +tolerant +tolerantism +tolerantly +tolerate +tolerated +tolerates +tolerating +toleration +tolerative +tolerator +tolerism +toles +toletan +toletzka +tolfraedic +tolguacha +tolgyessy +toli +toliara +tolidine +tolidou +toligbe +toliliko +tolima +tolis +tolitai +tolite +tolitoli +toliwiku +tolka +tolkan +tolkien +tolkiens +tolkin +tolko +toll +tollable +tollage +tollaire +tolland +tollbooth +tollboth +tolle +tolled +tollen +toller +tollery +tollesboro +tolleson +tolley +tollgatherer +tolliker +tolling +tollis +tolliver +tollkeeper +tollman +tollmaster +tollpenny +tolls +tolltaker +tolly +tolman +tolna +tolnay +tolo +tolokiwa +tolokoson +tololo +tolomako +tolono +tolosa +toloso +tolou +tolour +tolowa +tolowagalice +tolower +toloweri +tolpan +tolpatch +tolpatchery +tolsester +tolsey +tolson +tolstikhin +tolstoi +tolstoj +tolstoy +tolstoyan +tolstoyism +tolstoyist +tolt +toltec +toltecan +toltecs +tolten +tolter +tolu +tolualdehyde +toluate +tolubeyev +toluca +toluic +toluide +toluidide +toluidine +toluidino +toluido +toluifera +tolunitrile +toluol +toluyl +toluylene +toluylic +tolvo +toly +tolya +tolyl +tolylene +tolypeutes +tolypeutine +toma +tomache +tomacheck +tomachek +tomachoff +tomacic +tomack +tomado +tomage +tomah +tomahawk +tomahawker +tomahawks +tomakomai +tomalak +tomalehu +tomales +tomalley +toman +tomanek +tomani +tomania +tomans +tomar +tomarchio +tomarken +tomarxa +tomas +tomasetti +tomasina +tomasine +tomasini +tomaso +tomasoni +tomasova +tomassetti +tomassi +tomassini +tomasso +tomassone +tomasz +tomaszewska +tomatillo +tomato +tomatoes +tomayko +tomaz +tomazani +tomb +tombac +tombaggo +tombak +tombal +tombali +tomball +tombalu +tombatu +tombaugh +tombe +tombean +tombecka +tombel +tomber +tomberlin +tombes +tombic +tombless +tomblet +tomblike +tombmata +tombo +tombob +tombola +tombolo +tombonuva +tombouctou +tomboy +tomboyful +tomboyish +tomboyishly +tomboyism +tombraider +tombs +tombstone +tombucas +tombul +tombula +tombulu +tomcat +tomcatting +tomchat +tomcod +tome +tomea +tomean +tomedes +tomeful +tomei +tomeileen +tomek +tomel +tomelet +tomelty +toment +tomentose +tomentous +tomentulose +tomentum +tomes +tomesco +tomezyk +tomfool +tomfooleries +tomfoolery +tomfoolish +tomfor +tomi +tomial +tomic +tomick +tomigratems +tomin +tomini +tominian +tomisaki +tomish +tomistoma +tomita +tomium +tomjohn +tomjr +tomkin +tomkins +tomkinscove +tomko +tomkuznets +tomlin +tomlinson +tomman +tommasino +tomme +tommer +tommi +tommie +tomming +tommot +tommy +tommybag +tommycod +tommyrot +tomnoddy +tomnoup +tomo +tomogram +tomographic +tomohon +tomoichi +tomoip +tomoive +tomoko +tomol +tomolillo +tomonari +tomoni +tomono +tomonok +tomopteridae +tomopteris +tomorn +tomorow +tomorrow +tomorrower +tomorrowing +tomorrowness +tomorrows +tomosis +tomoyoshi +tomoyp +tompa +tompakewa +tompaso +tompasobaru +tompg +tompion +tompiper +tompkins +tompon +tompulung +toms +tomsbrook +tomsk +tomski +tomsriver +tomtate +tomtit +tomtitmouse +tomtom +tomu +tomuzhe +tomy +tomyris +tonaki +tonalamatl +tonalea +tonalist +tonalite +tonalities +tonalitive +tonality +tonally +tonant +tonasket +tonation +tonawanda +tonbakai +tonbe +tonbridge +toncray +tonda +tondai +tondano +tondanou +tonder +tondino +tone +toned +toneless +tonelessly +tonelessness +tonelli +toneloc +toneme +toneproof +toner +tones +tonetic +tonetically +tonetician +tonetics +tonetti +toney +tonga +tongan +tonganoxie +tongans +tongareva +tongariki +tongas +tongatapu +tongawn +tongbo +tongchai +tongchan +tonge +tonger +tongian +tongic +tongjiang +tongjin +tongka +tongkang +tongkin +tongman +tongo +tongoa +tongoan +tongoyna +tongpaet +tongpak +tongrian +tongs +tongsa +tongsman +tongtou +tongud +tongue +tonguecraft +tongued +tonguefence +tonguefencer +tongueflower +tongueful +tongueless +tonguelet +tonguelike +tongueman +tongueplay +tongueproof +tonguer +tongues +tongueshot +tonguesman +tonguesore +tonguester +tonguetied +tonguetip +tonguey +tonguiness +tonguing +tongwe +toni +tonia +tonic +tonica +tonically +tonicity +tonicize +tonico +tonicoclonic +tonics +tonie +tonietti +tonify +tonight +tonikan +toning +tonino +tonio +tonish +tonishly +tonishness +tonit +tonite +tonitruant +tonitruone +tonitruous +tonj +tonje +tonjo +tonjon +tonk +tonka +tonkawa +tonkawan +tonkin +tonkinese +tonko +tonkosela +tonkovich +tonle +tonlet +tonna +tonnawannij +tonneau +tonneaued +tonner +tonnes +tonnino +tonnish +tonnishly +tonnishness +tono +tonoclonic +tonogram +tonograph +tonological +tonology +tonometer +tonometric +tonometry +tonopah +tonophant +tonoplast +tonore +tonoscope +tonotactic +tonotaxis +tonous +tonoyama +tons +tonsawang +tonsbergite +tonsea +tonsilectomy +tonsilitic +tonsilitis +tonsillar +tonsillary +tonsillith +tonsillitic +tonsillolith +tonsillotome +tonsillotomy +tonsils +tonsor +tonsorial +tonsurate +tonsure +tonsured +tonsuring +tonsy +tonte +tontemboa +tontemboan +tontine +tontiner +tontitown +tonto +tontobasin +tontogany +tontoli +tonton +tonu +tonus +tony +tonya +tonye +tonyhoop +tonys +tonytop +toob +toodii +toodleloodle +tooele +tooey +toohey +took +tooka +tooken +tooker +tookest +tookey +tookie +tookland +tool +toolaki +tooland +toolanddie +toolbar +toolbars +toolbox +toolboxes +toolbuilder +toolbuilding +tooldesigned +toole +tooled +tooler +toolers +tooley +toolhead +toolholder +toolholding +tooling +toolkit +toolkitpro +toolkits +toolless +toolmaker +toolmaking +toolman +toolmark +toolmarking +toolplate +toolproc +toolroom +tools +toolsammlung +toolset +toolsetter +toolsis +toolslide +toolsoff +toolson +toolsto +toolstock +toolstone +toolto +toolwith +toom +tooma +toomba +toombs +toomer +toomey +toomines +toomly +toomsboro +toomsuba +toon +toona +toone +toones +toons +toonstruck +toonwood +toools +tooooo +toop +tooray +toores +toorie +tooro +toorock +tooroo +toosh +toosl +tooslow +tooter +tooth +toothache +toothaching +toothachy +toothaker +toothbill +toothbrush +toothbrushes +toothbrushy +toothcomb +toothcup +toothdrawer +toothdrawing +toothed +toother +toothflower +toothful +toothill +toothing +toothle +toothless +toothlessly +toothlet +toothleted +toothlike +toothman +toothpaste +toothpicked +toothpicks +toothplate +toothproof +toothsome +toothsomely +toothstick +toothwash +toothwork +toothwort +toothy +tootie +tooting +tootler +tootlish +tootoosie +toototobi +toots +tootsie +tootsy +tooyserkani +toozle +toozoo +topage +topalgia +topanga +topapovitch +toparch +toparchia +toparchical +toparchy +topart +topass +topatopa +topawa +topaz +topaze +topazfels +topazine +topazite +topazolite +topazy +topcap +topcast +topchrome +topcoating +topdown +tope +topectomy +topee +topeewallah +topek +topeka +topendialog +topeng +topepo +toper +toperdom +toperform +toperzer +topesthesia +topete +topflight +topful +topfull +topgun +toph +tophaceous +tophaike +topham +topheavy +tophel +tophet +topheth +tophetic +tophetize +tophus +topi +topia +topiarian +topiarist +topiarius +topiary +topic +topical +topicality +topically +topics +topicsin +topinabee +topinambou +topinish +topkapi +topknot +topknotted +topl +topless +toplevel +toplighted +toplike +topline +toplis +toploading +toploftical +toploftily +toploftiness +toplofty +topmaker +topmaking +topman +topmargin +topmast +topmenu +topmostly +topnotcher +topo +topoalgia +topochemical +topock +topodha +topognosia +topognosis +topograph +topographer +topographic +topographics +topographies +topographist +topographize +topography +topoiyo +topoke +topol +topolatry +topologic +topological +topologies +topologist +topology +toponarcosis +toponas +toponym +toponymal +toponymic +toponymical +toponymics +toponymist +toponymy +topophobia +topophone +topor +toposa +topotactic +topotaxis +topotha +topotype +topotypic +topotypical +topouzoglou +topp +toppart +topped +toppenish +topper +toppiece +topping +toppingly +toppingness +topplan +toppled +toppler +topples +toppling +topply +toppy +toprail +toprings +toprope +tops +topsa +topsail +topsailite +topse +topsecret +topsfield +topsham +topside +topsl +topsman +topsten +topstone +topstwentee +topswarm +topsyturn +toptail +topten +topton +topuni +topura +topview +topware +topwise +toque +toquerville +tora +toradja +torage +torain +toraja +torajasadan +torajiro +toral +toralv +toram +toran +torau +toraz +torbanite +torbanitic +torben +torbernite +torbert +torbi +torbin +torbjorn +torc +torcac +torcel +torch +torchanii +torchat +torchbearer +torchbearing +torched +torcher +torches +torchless +torchlight +torchlighted +torchlike +torchman +torchon +torchweed +torchwood +torchwort +torchy +torcular +torculus +tord +torday +tordi +tordocs +tordrillite +tore +toreador +toreadors +torech +tored +toredirect +torelli +toren +torena +torenia +toreport +torero +toresen +toreturn +toreutic +toreutics +torey +torfaceous +torfel +torgelson +torgerson +torghut +torgl +torgny +torgoch +torgon +torgot +torgov +torgut +torguud +torguut +torhen +torhout +tori +torian +toribo +toric +torie +toriello +tories +toriest +torified +torii +toriko +torilis +torin +torinaga +torine +torinese +toriness +torino +torishima +torit +torkomani +torlakes +torlakian +torlato +torleifsson +torlu +torma +torme +tormen +torment +tormenta +tormentable +tormentation +tormentative +tormented +tormentedly +tormenter +tormenters +tormentful +tormentil +tormentilla +tormenting +tormentingly +tormentive +tormento +tormentor +tormentors +tormentous +tormentress +tormentry +torments +tormentum +tormes +tormina +torminal +torminous +tormodont +torn +tornachile +tornade +tornadic +tornado +tornadoes +tornadoesque +tornadoproof +tornados +tornal +tornaria +tornarian +tornasi +torndo +torne +torner +tornes +tornese +torney +tornillo +tornio +tornit +tornment +tornote +tornqvist +tornus +toro +toroborg +torocik +torocsik +torodi +torok +torolillo +toromona +toromono +torona +toronto +torontonian +tororokombu +toros +torosaurus +torose +torosity +torosso +torotoro +torous +torpe +torpedineer +torpedinidae +torpedinous +torpedoboat +torpedoed +torpedoer +torpedoes +torpedoing +torpedoist +torpedolike +torpedoplane +torpedoproof +torpent +torpescence +torpescent +torpid +torpidity +torpidly +torpidness +torpids +torpify +torpitude +torporific +torporize +torps +torquae +torquate +torquated +torquay +torque +torqued +torques +torquil +torrance +torrano +torray +torre +torrealba +torrebruna +torrefaction +torrefy +torrejon +torrell +torrence +torrens +torrent +torrente +torrentera +torrentes +torrentful +torrential +torrentially +torrentine +torrentless +torrentlike +torrents +torrentuous +torrentwise +torreon +torres +torrey +torreya +torriate +torricelli +torricellian +torridity +torridly +torridness +torridonian +torrie +torrington +torrio +torrubia +torrupan +torry +tors +torsade +torse +torsek +torsel +torshavn +torsi +torsibility +torsigraph +torsile +torsimeter +torsiogram +torsiograph +torsiometer +torsional +torsionally +torsioning +torsionless +torsive +torsk +torso +torsoclusion +torsometer +torsos +torstan +torsten +tort +torta +torte +torteau +torteru +torti +torticollar +torticollis +torticone +tortile +tortility +tortilla +tortille +tortious +tortiously +tortive +tortoise +tortoiselike +tortoises +tortoni +tortonian +tortora +tortosa +tortrat +tortrices +tortricid +tortricidae +tortricina +tortricine +tortricoid +tortricoidea +tortrix +tortuga +tortula +tortulaceae +tortulaceous +tortulous +tortuose +tortuosities +tortuosity +tortuously +tortuousness +torturable +torture +tortured +torturedly +tortureproof +torturer +torturers +tortures +torturesome +torturing +torturingly +torturous +torturously +toru +torula +torulaceous +torulaform +toruliform +torulin +toruloid +torulose +torulosis +torulous +torulus +torun +torunemire +torus +toruses +torvald +torvay +torve +torvid +torvity +torvous +torwali +tory +torydom +toryess +toryfication +toryfy +toryhillite +toryish +toryism +toryistic +toryize +toryship +toryweed +tosa +tosaku +tosaphist +tosaphoth +tosapon +tosave +tosca +toscana +toscani +toscanini +toscanite +toscano +tosch +tosczak +toselli +tosello +tosephta +tosephtas +tosh +toshach +toshakhana +toshe +tosher +toshery +toshev +toshi +toshia +toshiba +toshihiro +toshihisa +toshiki +toshiko +toshinari +toshio +toshiro +toshiyuki +toshly +toshnail +toshow +toshut +toshy +tosi +tosic +tosily +tosio +tosk +toskish +toso +toss +tossed +tossen +tosser +tossertask +tosses +tossicated +tossily +tossing +tossingly +tossings +tossment +tosspot +tossup +tossy +tost +tostada +tostenson +tosticate +tostication +tostin +toston +tosy +tota +totaal +total +totaled +totali +totaling +totalisator +totaliser +totalities +totalitizer +totality +totalization +totalizator +totalize +totalizer +totalizing +totalled +totaller +totallers +totalling +totally +totalness +totals +totaltest +totaly +totanine +totanus +totaquin +totaquina +totaquine +totara +totaro +totchka +toted +totela +toteload +totem +totemically +totemism +totemist +totemistic +totemite +totemization +totemy +toten +toter +toth +tothe +tother +totient +totikum +totila +toting +totino +totipalmatae +totipalmate +totipotence +totipotency +totipotent +totitive +totler +totman +toto +totok +totolapilla +totomachapan +totonac +totonaca +totonacan +totonaco +totonicapa +totonicapan +totonno +totontepec +totora +totore +totoro +totota +totowa +totquot +totrap +totschlag +totsuiko +totted +totten +tottenham +totter +tottered +totterer +tottergrass +tottering +totteringly +totterish +totters +tottery +totti +tottie +totting +tottle +tottlish +tottori +totty +tottyhead +totuava +totum +toture +toty +totyman +totz +totzhe +touaouru +touareg +touat +touba +toubacouta +toubakai +toubib +touboro +toubou +toubouri +toubus +toucan +toucanet +toucanid +touch +touchability +touchable +touchback +touchbell +touchbox +touchdown +touche +touched +touchedness +toucheng +toucher +touches +touchet +toucheth +touchette +touchhole +touchien +touchier +touchiest +touchily +touchiness +touching +touchingly +touchingness +touchless +touchline +touchmenu +touchous +touchpan +touchpiece +touchscreens +touchstone +touchtone +touchtype +touchtypists +touchwood +touchy +toucouleur +toug +tougaloo +tougan +tougas +touggourt +tough +toughen +toughener +tougher +toughest +toughhead +toughhearted +toughish +toughkenamon +toughly +toughness +tought +tougourt +tougue +touho +touhy +toujours +tould +toule +toulepleu +touliatos +toulon +toulousain +toulouse +toulson +toumak +toumanova +toumarkine +toumbulu +toumnah +toumodi +tounatea +toungo +toungoo +tounia +tountemboan +toup +toupee +toupeed +toupet +toupouri +tour +toura +touraco +tourage +tourangeau +tourbillion +toure +toured +tourer +touret +tourette +touring +tourinho +tourism +tourist +touristdom +touristic +touristproof +touristry +tourists +touristship +touristy +tourize +tourka +tourmaline +tourmalinic +tourmalinize +tourmalite +tourn +tournai +tournamental +tournaments +tournant +tournasin +tournay +tourneaux +tournee +tournefortia +tournesol +tourney +tourneyer +tourneys +tourniquet +tournure +tourou +tourrell +tours +tourte +tourville +tous +tousche +touse +touser +tousignant +tousled +tousling +tously +toussaint +toussian +toussiana +tousy +tout +toutain +toutenburg +touter +toutle +toutsin +touw +tova +tovah +tovar +tovaria +tovariaceae +tovariaceous +tovarich +tovarish +tovarishch +tove +toves +tovey +tovoke +towa +towable +towaco +towage +towai +towaij +towal +towan +towanda +towangara +towaoc +toward +towardliness +towardly +towardness +towards +toware +towargarhi +towcock +towd +towe +towed +towei +towel +toweled +towelette +toweling +towell +towelled +towelling +towelry +towels +tower +towercity +towered +towerhill +towerhills +towering +toweringly +towerless +towerlet +towerlike +towerman +towerproof +towers +towerwise +towerwork +towerwort +towery +towetan +towfield +towght +towheaded +towi +towill +towing +towkay +towler +towles +towlike +towline +towmast +town +townbuilders +townclerk +towncreek +towne +towned +townee +towner +towners +townes +townet +townfaring +townfolk +townful +towngate +townhood +townify +towniness +townish +townishly +townishness +townist +townland +townless +townlet +townley +townlike +townling +townly +townman +townname +towns +townsboy +townscape +townsel +townsend +townsendi +townsendia +townsendite +townsfellow +townsfolk +townshend +township +townships +townside +townsite +townsley +townson +townspeople +townsville +townswoman +townville +townward +townwards +townwear +towny +towobola +towoem +towolhi +towpath +towraghondi +towrope +towrow +towser +towsley +towson +towstopiat +towy +towzer +towzle +toxa +toxalbumic +toxalbumin +toxalbumose +toxamin +toxanemia +toxaphene +toxcatl +toxemia +toxemic +toxey +toxic +toxicaemia +toxical +toxically +toxicant +toxicarol +toxication +toxicemia +toxicity +toxicoderma +toxicodermia +toxicogenic +toxicognath +toxicohaemia +toxicohemia +toxicoid +toxicologic +toxicologist +toxicomania +toxicopathic +toxicopathy +toxicophagy +toxicophidia +toxicophobia +toxicosis +toxicum +toxidermic +toxidermitis +toxifer +toxifera +toxiferous +toxigenic +toxihaemia +toxihemia +toxinemia +toxinfection +toxinosis +toxins +toxiphobia +toxiphobiac +toxiphoric +toxitabellae +toxity +toxodon +toxodont +toxodontia +toxogenesis +toxoglossa +toxoglossate +toxoid +toxology +toxolysis +toxon +toxone +toxonosis +toxophil +toxophile +toxophilism +toxophilite +toxophilitic +toxophilous +toxophily +toxophoric +toxophorous +toxosis +toxosozin +toxostoma +toxotae +toxotes +toxotidae +toxylon +toya +toyah +toyahvale +toyama +toyanne +toyboxes +toydom +toyed +toyer +toyeri +toyful +toyfulness +toyhouse +toying +toyingly +toyish +toyishly +toyishness +toyland +toyless +toylike +toymaker +toymaking +toyman +toymonger +toyoda +toyoeri +toyoji +toyon +toyooka +toyota +toys +toyshop +toysome +toytown +toywoman +toywort +toze +tozee +tozer +tozere +tozhe +tozhuma +tozluk +tozoku +tozvi +tozzi +tpack +tpala +tpanel +tpel +tplf +tppc +tprintdialog +tquantiles +tquery +trabacolo +trabal +trabant +trabascolo +trabaud +trabea +trabeae +trabeatae +trabeated +trabeation +trabecula +trabecular +trabeculate +trabeculated +trabecule +trabshawe +trabu +trabucco +trabuch +trabucho +trabzon +trac +tracasserie +tracassin +tracaulon +tracce +trace +traceability +traceably +traceback +traced +tracee +traceless +tracelessly +tracepoints +tracepurcel +tracer +traceried +traceries +traceroute +tracers +traces +tracey +trach +tracheal +trachealgia +trachealis +trachean +trachearia +trachearian +tracheary +tracheata +tracheate +tracheation +trachecheae +trachecheas +tracheid +tracheidal +tracheitis +trachelagra +trachelate +trachelismus +trachelitis +trachelium +trachelology +trachelotomy +trachenchyma +tracheocele +tracheolar +tracheole +tracheopathy +tracheophone +tracheophony +tracheoscopy +tracheostomy +tracheotome +tracheotomy +trachinidae +trachinoid +trachinus +trachitis +trachle +trachodon +trachodont +trachodontid +trachoma +trachomatous +trachonitis +trachsel +trachybasalt +trachycarpus +trachylinae +trachyline +trachyphonia +trachypterus +trachyte +trachytic +trachytoid +traci +tracid +tracie +tracing +tracingly +tracings +track +trackable +trackbarrow +tracked +tracker +trackers +trackhound +tracking +tracklayer +tracklaying +trackless +tracklessly +trackman +trackmanship +trackmaster +tracks +trackscout +trackshifter +tracksick +trackside +trackwalker +trackway +trackwork +trackz +tract +tractability +tractable +tractably +tractarian +tractate +tractation +tractator +tractatule +tractellate +tractellum +tractiferous +tractile +tractility +traction +tractional +tractite +tractive +tractlet +tractor +tractoration +tractorism +tractorist +tractorize +tractors +tractory +tractrix +tracts +tracy +tracycity +tracyton +tracz +traczyk +tradable +tradal +trade +tradecraft +traded +tradeful +tradeless +trademark +trademarks +trademaster +tradeoff +tradeoffs +trader +traders +tradership +trades +tradescantia +tradesfolk +tradespeople +tradesperson +tradeswoman +tradeswomen +tradet +tradewinds +tradiment +trading +tradiobutton +tradite +tradition +traditional +traditionalc +traditionary +traditionate +traditioner +traditionism +traditionist +traditionize +traditions +traditious +traditive +traditor +traditores +traditorship +tradlock +traduce +traduced +traducement +traducent +traducer +traducian +traducianism +traducianist +traducible +traducing +traducingly +traduction +trady +traer +trafalgar +trafaret +traffic +trafficable +traffick +trafficker +traffickers +trafficless +traffics +trafficway +trafflicker +trafflike +trafford +trafic +traficant +tragacanth +tragacantha +tragacanthin +tragal +tragalism +tragasol +tragedia +tragedial +tragedianess +tragedical +tragedienne +tragedies +tragedietta +tragedist +tragedize +tragedy +tragelaph +tragelaphine +tragelaphus +tragi +tragic +tragical +tragicality +tragically +tragicalness +tragicaster +tragicize +tragicly +tragicness +tragicolored +tragicomedy +tragicomical +tragicose +tragopan +tragopogon +tragulidae +tragulina +traguline +traguloid +traguloidea +tragulus +tragus +trah +trahan +traheen +traherne +traic +traiders +traidor +traik +trail +trailblazer +trailblazers +trailcity +trailed +trailer +trailers +trailery +trailhand +trailin +trailiness +trailing +trailingly +trailings +traill +trailless +trailmaker +trailmaking +trailman +trails +trailsman +traily +train +trainable +trainage +trainagraph +trainband +trainbearer +trainbolt +trainboy +trained +trainees +traineeship +trainer +trainers +trainful +training +trainless +trainload +trainmaster +trainor +trains +trainsick +trainster +traintime +trainway +trainy +traipong +traipsed +traipsing +trait +traitless +traitments +traitor +traitorhood +traitorism +traitorize +traitorlike +traitorling +traitorously +traitors +traitorship +traitorwise +traitress +traits +traje +traject +trajectile +trajection +trajectories +trajectory +trajet +trajkovica +trajstman +trakarn +trakay +traken +trakker +traktir +traktircameo +trakulrat +tralatician +tralaticiary +tralatition +tralatitious +tralee +tralineate +tralira +trallian +tralucent +tram +trama +tramal +tramcar +trame +trametes +tramful +tramless +tramline +tramman +trammeled +trammeler +trammelhead +trammeling +trammelingly +trammell +trammelled +trammer +tramming +trammon +tramontane +tramp +trampa +trampage +trampas +trampdom +tramped +tramper +trampess +tramphood +tramping +trampisch +trampish +trampishly +trampism +trample +trampled +trampler +tramples +tramplike +trampling +trampolin +trampoline +trampolines +trampoose +trampot +tramps +tramroad +tramsmith +tramwayman +tramyard +tran +trance +tranced +trancedelic +trancedly +tranceful +trancelike +trancentral +trances +tranchant +tranchefer +tranchet +trancoidal +trancy +traneen +tranella +tranfaglia +tranfer +trang +trangan +trank +tranka +tranker +trankera +trankum +tranky +tranporter +tranquiler +tranquilest +tranquility +tranquilize +tranquilized +tranquilizer +tranquilli +tranquillity +tranquillize +tranquilly +tranquilness +trans +transaction +transactions +transactor +transalpiner +transaminase +transanimate +transannular +transapical +transaquatic +transarctic +transaudient +transbaikal +transbay +transboard +transborder +transcalency +transcalent +transcanyon +transceive +transceivers +transcend +transcended +transcendent +transcender +transcending +transcends +transcension +transchannel +transcoding +transcolate +transcolor +transcreate +transcribble +transcribe +transcribed +transcriber +transcribers +transcribes +transcribing +transcript +transcripti +transcripts +transcron +transcurrent +transdermic +transdesert +transdialect +transdiurnal +transection +transects +transelement +transenna +transeptal +transeptally +transeunt +transfashion +transfeature +transfer +transferably +transferal +transferals +transfered +transference +transferent +transfering +transferred +transferrer +transferrers +transferrin +transferring +transferrins +transferror +transfers +transfigure +transfigured +transfixed +transfixion +transfixture +transfluent +transfluvial +transflux +transfly +transform +transformed +transformer +transformers +transforming +transformism +transformist +transforms +transfrontal +transfuge +transfused +transfuser +transfusible +transfusing +transfusion +transfusive +transgfress +transgogol +transgress +transgressed +transgressor +transhape +transhuman +transhumance +transhumant +transience +transiency +transient +transiently +transients +transigence +transigent +transiliac +transilience +transiliency +transilient +transinsular +transire +transischiac +transistors +transit +transitable +transiter +transition +transitional +transitioned +transitions +transitival +transitively +transitivism +transitivity +transitman +transitorily +transitory +transits +transitus +transjordan +transkei +transl +translade +translatable +translate +translated +translater +translates +translating +translation +translations +translative +translator +translators +translatory +translatress +translatrix +translay +transleithan +transletter +translocate +translocated +translucence +translucency +translucent +translucid +transmac +transmarine +transmedial +transmedian +transmental +transmigrant +transmigrate +transmission +transmissive +transmissory +transmit +transmits +transmittant +transmitted +transmitter +transmitters +transmitting +transmold +transmontane +transmundane +transmural +transmuscle +transmutable +transmutably +transmuted +transmuter +transmuting +transmutive +transmutual +transnat +transnats +transnatural +transnature +transnew +transnormal +transnzoia +transocean +transocular +transomed +transonic +transorbital +transpadane +transpalmar +transpanamic +transparence +transparency +transparent +transparish +transpc +transpeciate +transpeer +transpicuity +transpicuous +transpierce +transpirable +transpired +transpires +transpiring +transplace +transplantar +transplanted +transplantee +transplanter +transplants +transpleural +transpolar +transponder +transponders +transponible +transpontine +transport +transportal +transported +transportee +transporter +transporters +transporting +transportive +transports +transposal +transposed +transposer +transposes +transposing +transpositor +transpour +transprint +transprocess +transprose +transproser +transput +transpyloric +transreal +transrhenane +transsensual +transseptal +transsexual +transshape +transshift +transsoft +transsolid +transstellar +transudate +transudation +transudative +transudatory +transude +transume +transumpt +transumption +transumptive +transuranian +transuranic +transuranium +transuterine +transvaal +transvaaler +transvaalia +transvaalian +transvaluate +transvalue +transvasate +transvase +transvectant +transvection +transvenom +transverbate +transversale +transversan +transversary +transverse +transversely +transverser +transversion +transversive +transversum +transversus +transvert +transverter +transvest +transvestism +transwave +transwritten +transx +transylvania +trant +tranter +trantlum +trantor +tranzschelia +traore +trap +trapa +trapaceae +trapaceous +trapan +trapball +trapdoor +trapdoors +trapes +trapezate +trapeze +trapezia +trapezial +trapezian +trapeziform +trapezing +trapezist +trapezius +trapezoidal +trapezoids +trapezunt +trapfall +traphill +traphole +trapiferous +traplight +traplike +trapmaker +trapmaking +trapp +trappability +trappable +trappe +trappean +trapped +trapper +trapperlike +trappers +trappiness +trapping +trappingly +trappings +trappist +trappistine +trappoid +trappose +trappous +trappy +traprock +traps +trapshoot +trapshooter +trapshooting +trapstick +trapunto +trara +trarza +trasformism +trash +trashcan +trashed +trashery +trashes +trashier +trashiest +trashify +trashily +trashiness +trashing +traship +trashless +trashrack +trashy +trasition +trask +trasker +traskwood +trasmitter +trasmundi +trasparent +trass +trast +trasteverine +trasy +trat +tratra +trau +traub +traubel +trauberg +traubert +traude +traudi +traughber +traugott +traulich +traulism +traum +trauma +traumas +traumata +traumaticin +traumaticine +traumatism +traumatize +traumatized +traumatizing +traumatology +traumatopnea +traumatopyra +traumatosis +traumatropic +traumen +traumstadt +traumulus +traunik +traut +traute +trautman +trautmann +trava +travail +travailed +travailest +travaileth +travailing +travale +travally +travated +trave +travel +travelable +traveldom +traveled +traveler +traveleress +travelerlike +travelers +traveling +travelings +traveljack +travellable +travelled +traveller +travellers +travelleth +travelling +travelog +traveloguer +travels +traveltime +traven +traver +travers +traversa +traversals +traversary +traverse +traversecity +traversed +traversely +traverser +traverses +traversewise +traversework +traversing +traversion +travertin +travestie +travestied +travestier +travesties +travestiment +travesty +travestying +travet +traviata +travin +travis +travois +travolta +travoy +traw +trawlboat +trawler +trawlerman +trawlers +trawling +trawlnet +traxler +traxmaker +traxx +tray +trayan +traycal +traycalc +trayday +trayer +trayful +trayicon +traylike +traylor +traynor +trayplay +trays +traystart +traytext +traytime +traytools +trazozmontes +treacher +treacheries +treacherous +treachery +treacle +treaclelike +treaclewort +treacliness +treacly +treacy +tread +treadboard +treaded +treader +treaders +treadeth +treadgrove +treading +treadler +treads +treadway +treadwell +treadwheel +treason +treasonable +treasonably +treasonful +treasonish +treasonist +treasonless +treasonously +treasonproof +treasurable +treasure +treasured +treasureless +treasurer +treasurers +treasures +treasuress +treasurest +treasuries +treasuring +treasurous +treasury +treasuryship +treat +treatable +treatably +treated +treatee +treater +treaties +treating +treatise +treatiser +treatises +treatment +treatmentof +treatments +treator +treats +treaty +treatyist +treatyite +treatyless +treatystate +treaux +trebaol +trebellian +trebicak +trebitsch +treble +trebled +treblemilk +trebleness +trebletree +trebling +trebloc +trebly +treboal +trebonius +trebucbet +trebuchet +trebucket +trebuetsya +trebuket +trece +trecentist +trecento +trechmannite +trecker +treckschuyt +treculia +treddle +tredecile +tredecimal +tredici +tredille +tredman +tredway +tredwell +tree +treebeard +treebine +treece +treed +treefish +treefitting +treeful +treeg +treegan +treehair +treehood +treeify +treeiness +treeing +treekiller +treekillers +treeless +treelessness +treelet +treelike +treeling +treemaker +treemaking +treeman +treen +treenail +trees +treescape +treeship +treesize +treespeeler +treetops +treetotree +treeward +treewards +treey +tref +treff +trefgordd +trefle +trefoile +trefoiled +trefoillike +trefoilwise +trefry +treft +trefts +tregadyne +tregami +tregarthen +tregenza +tregerg +trego +tregohm +tregorrois +tregua +trehala +trehalase +trehalose +treiber +treichlers +treillage +treinta +treisman +trejan +trek +trekked +trekker +trekkie +trekkies +trekometer +trekpath +treks +trela +trelane +trelawny +trelis +trellised +trellislike +trelliswork +treloar +trem +trema +tremaine +treman +tremandra +trematoda +trematode +trematodea +trematodes +trematoid +tremayne +tremblay +tremble +trembled +tremblement +trembler +trembles +trembleth +trembling +tremblingly +tremblor +trembly +trembo +tremella +tremellaceae +tremellales +tremelliform +tremelline +tremelloid +tremellose +tremeloes +tremembe +tremendous +tremendously +tremens +trementina +tremetol +tremewan +tremie +tremolando +tremolant +tremolist +tremolite +tremolitic +tremolo +tremolos +tremon +tremont +tremontcity +tremonton +tremor +tremorless +tremorlessly +tremors +tremouille +trempealeau +tremulant +tremulate +tremulation +tremulously +tren +trenail +trenaman +trenary +trenbath +trench +trenchancy +trenchang +trenchant +trenchantly +trenchboard +trenchcoats +trenched +trencher +trencherless +trencherlike +trenchers +trencherside +trencherwise +trenches +trenchful +trenchlet +trenchlike +trenchmaster +trenchmore +trenchs +trenchward +trenchwas +trenchwise +trenchwork +trend +trended +trendfree +trendier +trendiest +trendiness +trending +trendle +trendoid +trends +trendsin +trendy +treng +trengganu +trenk +trenkler +trenna +trent +trentadue +trental +trentepohlia +trentine +trentino +trentinoalto +trently +trento +trenton +trentx +trepan +trepanation +trepang +trepanize +trepanned +trepanner +trepanning +trepanningly +trephination +trephine +trephined +trephiner +trephining +trephocyte +trephone +trepid +trepidancy +trepidant +trepidate +trepidatory +trepidity +trepidly +trepidness +treplaying +treplo +trepo +treponema +treport +trepostomata +treron +treronidae +treroninae +tres +tresa +tresaiel +trescha +tresckow +trescony +trese +trespass +trespassage +trespassed +trespasser +trespassers +trespasses +trespassing +trespassory +trespiedras +trespinos +tresrch +tressa +tressed +tresses +tressful +tressilate +tressilation +tressler +tressless +tresslet +tresslike +tresson +tressour +tressure +tressured +tressy +trest +trestini +trestle +trestletree +trestlewise +trestlework +trestling +tret +tretii +tretine +tretow +tretter +treurnicht +treutler +trev +trevally +trever +treves +trevet +trevethan +trevett +treville +trevino +trevis +trevissant +trevithick +trevitt +trevor +trevorton +trevox +trewin +trews +trewsman +trex +trexlertown +trey +treynor +trezevant +trgu +triableness +triace +triacetamide +triacetate +triachenium +triacid +triacontane +triaconter +triact +triactinal +triactine +triad +triadelphia +triadelphous +triadenum +triadic +triadical +triadically +triadie +triadism +triadist +triaene +triaenose +triage +triagonal +trial +trialate +trialism +trialist +triality +trialogue +trials +trialssome +trialversion +triam +triamid +triamide +triamine +triamino +triammonium +triamylose +triana +triander +triandria +triandrian +triandrous +triangle +triangled +triangler +triangles +triangleways +trianglewise +trianglework +triangula +triangular +triangularly +triangulated +triangulator +triangulid +trianguloid +triannual +triannulate +triano +triantelope +trianthous +triantis +triapsal +triapsidal +triarch +triarchate +triarchy +triarctic +triarcuated +triareal +triarii +triarthrus +trias +triaster +triatic +triatoma +triatomicity +triaxial +triaxon +triaxonian +triazane +triazin +triazine +triazo +triazoic +triazole +triazolic +tribade +tribadism +tribady +tribal +tribalism +tribalist +tribally +tribals +tribarred +tribase +tribasic +tribasicity +tribasilar +tribbett +tribble +tribbles +tribe +tribeless +tribelet +tribelike +triberga +tribes +tribesfolk +tribeshill +tribeship +tribespeople +tribeswoman +triblastic +triblet +tribolium +tribometer +tribonema +triborough +tribrac +tribrach +tribrachial +tribrachic +tribracteate +tribromide +tribual +tribually +tribular +tribulation +tribulations +tribuloid +tribulus +tribuna +tribunal +tribunals +tribunate +tribunes +tribuneship +tribunitial +tribunitian +tribunitiary +tribunitive +tribus +tributable +tributaries +tributarily +tributary +tribute +tributer +tributes +tributist +tributorian +tributyrin +tric +trica +tricae +tricalcic +tricalcium +tricameral +tricapsular +tricar +tricarbimide +tricarbon +tricarinate +tricarinated +tricarpous +tricaud +tricaudal +tricaudate +tricci +trice +triced +tricellular +tricenarious +tricenarium +tricenary +tricennial +tricentenary +tricentral +tricephal +tricephalic +tricephalous +tricephalus +triceps +triceratops +triceria +tricerion +tricerium +trichauxis +trichechidae +trichechine +trichechus +trichevron +trichi +trichia +trichiasis +trichilia +trichina +trichinae +trichinal +trichiniasis +trichinize +trichinoid +trichinopoly +trichinosed +trichinosis +trichinotic +trichinous +trichite +trichitic +trichitis +trichiurid +trichiuridae +trichiuroid +trichiurus +trichloride +trichloro +trichobezoar +trichoblast +trichoclasia +trichoclasis +trichocyst +trichocystic +trichode +trichoderma +trichogen +trichogenous +trichogramma +trichogyne +trichogynial +trichogynic +trichoid +tricholaena +trichologist +trichology +tricholoma +trichoma +trichomanes +trichomatose +trichomatous +trichome +trichomic +trichomonad +trichomonas +trichonosus +trichopathic +trichopathy +trichophore +trichophoric +trichophyte +trichophytia +trichophytic +trichophyton +trichoplax +trichopore +trichopter +trichoptera +trichopteran +trichopteron +trichord +trichorrhea +trichosis +trichosporum +trichostasis +trichostema +trichotomic +trichotomism +trichotomist +trichotomize +trichotomous +trichotomy +trichroic +trichroism +trichromat +trichromate +trichromatic +trichromic +trichronous +trichuriasis +trichuris +trichy +tricia +tricing +tricinium +tricipital +tricircular +trick +tricked +tricker +trickeries +trickett +trickful +trickier +trickiest +trickily +trickiness +tricking +trickingly +trickish +trickishly +trickishness +trickle +trickled +trickles +trickless +tricklet +trickleth +tricklike +trickling +tricklingly +trickly +trickment +trickproof +tricks +tricksical +tricksily +tricksiness +tricksome +trickster +trickstering +trickstress +tricksy +tricktheeye +tricktrack +tricky +triclad +tricladida +triclinate +triclinia +triclinial +tricliniarch +tricliniary +triclinic +triclinium +tricoccose +tricoccous +tricolette +tricolic +tricolon +tricolor +tricolored +tricolumnar +tricompound +triconch +triconodon +triconodont +triconodonta +triconodonty +tricophorous +tricord +tricorn +tricornered +tricornute +tricorporal +tricorporate +tricoryphean +tricosane +tricosanone +tricostate +tricosyl +tricosylic +tricot +tricotine +tricouleur +tricountry +tricresol +tricrotic +tricrotism +tricrotous +tricrural +tricurvate +tricuspal +tricuspid +tricuspidal +tricuspidate +tricussate +tricyanide +tricycle +tricyclene +tricycler +tricyclic +tricyclist +tricyrtis +tridacna +tridacnidae +tridactyl +tridactylous +tridaily +triddler +tridecane +tridecene +tridecoic +tridecyl +tridecylene +tridecylic +tridell +trident +tridental +tridentate +tridentated +tridentine +tridentinian +tridepside +tridermic +tridiametral +tridiapason +tridigitate +tridiurnal +tridominium +tridrachm +trids +triduan +triduum +tridymite +tridynamous +tried +trieda +triedly +trieh +trielaidin +triene +trieng +trienniality +triennially +triennium +triens +triental +trientalis +triequal +trier +trierarch +trierarchal +trierarchic +trierarchy +triers +trierucin +tries +triesault +triesen +triesenberg +triest +trieste +trieteric +trieterics +trieth +triethyl +trieu +trif +trifa +trifacial +trifarious +trifasciated +triferous +triffids +trifid +trifilar +trifilli +trifiro +trifistulary +trifle +trifled +trifledom +trifler +trifles +triflet +trifling +triflingly +triflingness +trifloral +triflorate +triflorous +trifocal +trifocals +trifoil +trifold +trifoliate +trifoliated +trifoliolate +trifoliosis +trifolium +trifoly +trifonas +triforial +triforium +triform +triformed +triformin +triformity +triformous +trifoveolate +trifuran +trifurcal +trifurcate +trifurcation +trigami +trigamist +trigamma +trigamous +trigamy +trigby +trigeminal +trigeminous +trigeneric +trigesimal +trigger +triggered +triggerfish +triggering +triggerless +triggers +triggiano +triggs +trigintal +trigla +triglandular +triglid +triglidae +triglochid +triglochin +triglot +trigly +triglyceride +triglyceryl +triglyph +triglyphal +triglyphed +triglyphic +triglyphical +trignac +trigness +trigon +trigona +trigonally +trigone +trigonella +trigonelline +trigoneutic +trigoneutism +trigonia +trigoniaceae +trigoniacean +trigonic +trigonid +trigoniidae +trigonite +trigonitis +trigonodont +trigonoid +trigonometer +trigonon +trigonotype +trigonous +trigonum +trigrammatic +trigrammic +trigrams +trigraph +trigraphic +triguttulate +trigyn +trigynia +trigynian +trigynous +trihalide +trihedron +trihemeral +trihemimer +trihemimeral +trihemimeris +trihemiobol +trihoral +trihourly +trihybrid +trihydrate +trihydrated +trihydric +trihydride +trihydrol +trihydroxy +trijugate +trijugous +trijunction +trikala +trikaya +trike +triker +trikeria +trikerion +triketo +triketone +trikir +trikonis +trilabe +trilabiate +trilamellar +trilaminar +trilaminate +trilarcenous +trilateral +trilaterally +trilaurin +trilby +trilemma +trilinear +trilineate +trilineated +trilingual +trilinguals +trilinguar +trilinolate +trilinoleate +trilinolenin +trilisa +trilit +trilite +triliteral +triliterally +trilith +trilithic +trilithon +trill +trilla +trillachan +trillas +trilled +trillet +trilli +trilliaceae +trilliaceous +trillian +trillibub +trilliin +trilling +trillion +trillionaire +trillionize +trillions +trillionth +trillium +trilln +trillo +trilobate +trilobated +trilobation +trilobe +trilobed +trilobita +trilobites +trilobitic +trilocular +triloculate +triloge +trilogic +trilogical +trilogie +trilogies +trilogist +trilogistic +trilogy +trilophodon +trilophodont +triluminar +triluminous +trim +trimacer +trimacular +trimargarate +trimargarin +trimastigate +trimball +trimberger +trimble +trimbur +trimean +trimellitic +trimembral +trimensual +trimera +trimercuric +trimeresurus +trimeric +trimeride +trimerite +trimerous +trimesic +trimesinic +trimesitic +trimesitinic +trimester +trimestral +trimestrial +trimesyl +trimetalism +trimetallic +trimeter +trimethoxy +trimethyl +trimethylene +trimetric +trimetrical +trimetrogon +trimingham +trimly +trimm +trimmed +trimmer +trimmerback +trimmers +trimmest +trimming +trimmingly +trimmings +trimml +trimness +trimodal +trimodality +trimolecular +trimont +trimonthly +trimoric +trimorph +trimorphic +trimorphism +trimorphous +trimotor +trimotored +trimple +trims +trimscript +trimscripts +trimstone +trimtram +trimuscular +trimyristate +trimyristin +trin +trina +trinacria +trinacrian +trinal +trinality +trinalize +trinary +trinational +trinc +trinchera +trincoll +trincomalee +trindade +trindale +trindle +trine +trinely +trinervate +trinerve +trinerved +trineural +tring +tringa +tringham +tringine +tringle +tringoid +tringus +trinh +trini +trinian +trinidad +trinidadian +trinidadien +trinidado +trinil +trinitaria +trinitario +trinities +trinitrate +trinitration +trinitride +trinitrin +trinitro +trinity +trinityhood +trink +trinkat +trinkerman +trinket +trinketer +trinketry +trinkets +trinkety +trinkgeld +trinkle +trinklement +trinklet +trinkums +trinkut +trinobantes +trinoctial +trinodal +trinode +trinodine +trinol +trinomial +trinomialism +trinomialist +trinomiality +trinomially +trinopticon +trinorantum +trinormial +trinovant +trinovantes +trintigant +trintignant +trintle +trinucleate +trinucleus +trinway +trinzic +trio +triobol +triobolon +trioctile +triocular +triodia +triodion +triodon +triodontes +triodontidae +triodontoid +trioecia +trioecious +trioeciously +trioecism +triolcous +triole +trioleate +triolefin +trioleic +triolein +triolet +triology +triometesem +triometesen +triomphe +trion +trionfo +trionychidae +trionychoid +trionym +trionymal +trionyx +triopidae +triops +trior +triorchis +triorchism +trios +triose +triosteum +triovulate +trioxazine +triozonide +trip +tripal +tripaleolate +tripalmitate +tripalmitin +tripara +tripart +triparted +tripartedly +tripartible +tripartient +tripartitely +tripartition +tripaschal +tripathi +tripedal +tripel +tripelike +tripeman +tripemonger +tripennate +tripenny +tripeptide +triperah +tripersonal +tripery +tripeshop +tripestone +tripet +tripetaloid +tripetalous +tripewife +tripewoman +triphammer +triphane +triphase +triphaser +triphasia +triphasic +triphenyl +triphibian +triphibious +triphony +triphora +triphthong +triphyletic +triphyline +triphylite +triphyllous +triphysite +tripier +tripinnate +tripinnated +tripinnately +tripitaka +triplane +triplaris +triplasian +triplasic +triple +tripleback +tripled +tripledigit +triplefold +triplegia +triplehorn +tripleness +tripler +triples +triplet +tripletail +tripletree +triplets +triplewise +triplexity +triplicate +triplicated +triplicating +triplication +triplicative +triplicature +triplice +triplicist +triplicity +tripliform +triplinerved +tripling +triplite +triploid +triploidic +triploidite +triploidy +triplopia +triplopy +triplum +triplumbic +triply +tripmadam +tripodal +tripodial +tripodian +tripodic +tripodical +tripody +tripoint +tripointed +tripoints +tripolar +tripoli +tripoline +tripolitan +tripolitania +tripolite +tripos +tripotage +tripotassium +tripp +trippant +trippe +tripped +tripper +trippet +trippett +tripping +trippingly +trippingness +trippist +tripple +trippler +tripps +trippy +trips +tripsacum +tripsill +tripsis +tripsome +tripsomely +triptane +tripterous +triptolemus +triptote +triptyque +tripudial +tripudiant +tripudiary +tripudiate +tripudiation +tripudist +tripudium +tripunctal +tripunctate +tripura +tripuri +tripy +tripylaea +tripylaean +tripylarian +tripyrenous +trique +triquet +triquetra +triquetral +triquetric +triquetrous +triquetrum +triquinate +triquinoyl +triradial +triradially +triradiate +triradiated +triradiately +triradiation +triratna +triregnum +trireme +tris +trisagion +trisalt +trisazo +trisceptral +trisect +trisected +trisection +trisector +trisectrix +triseme +trisemic +trisensory +trisepalous +triseptate +triserial +triserially +triseriate +triseriatim +trisetose +trisetum +trish +trisha +trishchenko +trishin +trishna +trisic +trisilane +trisilicane +trisilicate +trisilicic +trisinuate +trisinuated +triska +triskele +triskelion +trisko +trislanders +trismegist +trismegistic +trismic +trismus +trisome +trisomic +trisomy +trisonant +trisotropis +trispast +trispaston +trispermous +trispinose +trisporic +trisporous +trisquare +trissenaar +trist +trista +tristachyous +tristam +tristan +tristania +tristano +tristao +triste +tristearate +tristearin +tristeness +tristesse +tristeza +tristful +tristfully +tristfulness +tristich +tristichic +tristichous +tristigmatic +tristiloquy +tristisonous +tristler +tristram +tristrian +tristylous +trisul +trisula +trisulcate +trisulcated +trisulphate +trisulphide +trisulphone +trisulphonic +trisylabic +trisyllabism +trisyllabity +trit +tritactic +tritagonist +tritangent +tritanope +tritanopia +tritanopic +tritaph +tritele +triteleia +tritely +tritemorion +triteness +triter +triternate +triternately +triterpene +tritest +tritheism +tritheist +tritheistic +tritheite +tritheocracy +trithing +trithionate +trithionic +trithrinax +tritiated +tritical +triticality +tritically +triticalness +triticeous +triticeum +triticin +triticism +triticoid +triticum +tritish +tritocone +tritoconid +tritogeneia +tritolo +tritoma +tritomite +triton +tritonal +tritonality +tritone +tritoness +tritonia +tritonic +tritonidae +tritonoid +tritonous +tritonymph +tritonymphal +tritopatores +tritopine +tritor +tritoral +tritorium +tritos +tritoxide +tritozooid +trits +tritt +trittichan +trittler +tritton +trituberculy +triturable +tritural +triturate +trituration +triturator +triturature +triturium +triturus +trityl +tritylodon +triumf +triumfetta +triump +triumph +triumphance +triumphancy +triumphant +triumphantly +triumphator +triumphed +triumpher +triumphing +triumphs +triumphwise +triumvir +triumviral +triumvirate +triumviri +triumvirs +triumvirship +triunal +triungulin +triunion +triunitarian +triunity +triurid +triuridaceae +triuridales +triuris +trivalence +trivalency +trivalerin +trivalve +trivalvular +trivant +trivantly +trivariant +trivariate +trivedi +triverbal +triverbial +trivers +trivet +trivetwise +trivia +trivial +trivialism +trivialist +trivialities +triviality +trivialize +trivializing +trivially +trivialness +trivirga +trivirgate +trivoli +trivoltine +trivvet +triweekly +trix +trixi +trixie +trixy +triz +trizoic +trizomal +trizonal +trizone +trizonia +trksec +trlesault +trlian +trnst +troad +troas +troat +trob +trobe +trobiawan +trobriand +troca +trocaical +trocar +trocara +trocchi +trocha +trochaic +trochal +trochalopod +trochalopoda +trochanter +trochanteric +trochantin +trochart +trochate +troche +trocheameter +trochee +trocheeize +trochelminth +trochi +trochid +trochidae +trochiferous +trochiform +trochila +trochili +trochilic +trochilics +trochilidae +trochilidine +trochilidist +trochiline +trochilus +trochim +troching +trochiscus +trochite +trochitic +trochius +trochlea +trochlear +trochlearis +trochleary +trochleate +trochleiform +trochoid +trochoidal +trochoidally +trochoides +trochometer +trochophore +trochos +trochosphere +trochozoa +trochozoic +trochozoon +trochu +trochus +trock +troco +troctolite +trod +trodden +trode +troegerite +troekouroff +troesch +troest +troezenian +trofej +troff +troffed +troft +trog +trogen +troger +trogger +troggin +trogleu +troglodytal +troglodyte +troglodytes +troglodytic +troglodytish +troglodytism +trogon +trogones +trogonidae +trogonoid +trogs +trogue +trogyllium +troi +troiades +troiano +troic +troilite +troilus +trois +troisi +troisieme +troissauts +troitskii +troja +trojak +trojan +trojaning +trojans +troke +troker +trol +troll +trolldom +trolleite +troller +trolley +trolleyer +trolleyful +trolleyman +trolleys +trollflower +trollimog +trolling +trollius +trollman +trollol +trollopean +trollopish +trollops +trollopy +trolls +trolly +trom +tromba +trombe +trombetas +trombetes +trombiculid +trombidiasis +trombidiidae +trombidium +trombone +trombonist +trombony +tromelin +tromm +trommel +tromometer +tromometric +tromometry +tromowa +tromp +tromped +trompil +trompillo +tromping +tromple +troms +tron +trona +tronador +tronage +tronc +troncone +troncoso +tronczak +trondheim +trondhjemite +trone +troner +trong +tronje +tronka +trooger +troolie +troop +trooped +trooper +trooperess +troopers +troopfowl +trooping +troops +troopship +troopwise +troostite +troostitic +troot +troover +tropacocaine +tropaeolin +tropaeolum +tropaion +tropal +troparia +troparion +tropary +tropate +trope +tropea +tropeano +tropeic +tropeine +tropen +troper +tropesis +tropez +trophaea +trophaeum +trophal +trophallaxis +trophedema +trophema +trophesial +trophesy +trophi +trophical +trophically +trophicity +trophied +trophies +trophimus +trophis +trophism +trophobiont +trophobiosis +trophobiotic +trophoblast +trophocyte +trophoderm +trophodisc +trophogenic +trophogeny +trophology +trophonema +trophonian +trophopathy +trophophore +trophophyte +trophoplasm +trophoplast +trophosomal +trophosome +trophosperm +trophosphere +trophospore +trophotaxis +trophothylax +trophotropic +trophozoite +trophozooid +trophy +trophyless +trophywort +tropic +tropical +tropicalia +tropicalian +tropicality +tropicalize +tropically +tropics +tropidine +tropine +troping +tropism +tropismatic +tropisms +tropist +tropistic +tropocaine +tropoje +tropologic +tropological +tropologize +tropology +tropometer +tropophil +tropophilous +tropophyte +tropophytic +troposcatter +tropoyl +troptometer +tropyl +troschel +troscom +trose +trosky +trosper +trost +trostera +trotcozy +troth +trothful +trothless +trothlike +trothplight +trotlet +trotline +trotol +trots +trotsky +trotskyite +trott +trotta +trotted +trotter +trotters +trottie +trottier +trotting +trottles +trottoir +trottoired +trottola +trotty +trotwood +trotyl +trotzdem +trou +troubadour +trouble +troubled +troubledance +troubledly +troubledness +troubledst +troublemaker +troublement +troubleproof +troubler +troubles +troubleshoot +troublesome +troublest +troubleth +troubling +troublingly +troublous +troublously +troubly +trouborst +troubridge +trough +troughful +troughing +troughlike +troughs +troughster +trought +troughton +troughway +troughwise +troughy +trounced +trouncer +trouncing +troup +troupand +trouped +trouper +troupial +trouping +troupsburg +trouse +trouserdom +trousered +trouserettes +trouserian +trousering +trouserless +trousers +trousseau +trousseaus +trousseaux +trout +troutbird +troutcreek +troutdale +trouter +troutflower +troutful +troutiness +troutlake +troutless +troutlet +troutlike +troutrun +trouts +troutville +trouty +trouvaille +trouvere +trouveur +trovajoli +trovare +trove +troveless +trover +trow +trowborough +trowbride +trowbridge +trowe +trowel +trowelbeak +troweled +troweler +trowelful +troweling +trowelled +trowelling +trowelman +trowels +trowing +trowman +trowsers +trowth +troxell +troxelville +troy +troya +troyanovsky +troyd +troygrove +troyius +troymills +troynovant +troytown +trpisovsky +trps +trpset +truan +truancies +truand +truandise +truantcy +truantism +truantlike +truantly +truantness +truantry +truants +truantship +trub +trubachev +trubetskaya +trubi +trubitary +truble +trubshaw +trubshawe +trubu +trubus +truc +truce +trucebreaker +truceless +trucemaker +trucemaking +truchon +trucial +trucidation +truck +truckage +truckdriver +trucked +truckee +trucker +truckers +truckful +trucking +truckle +trucklebed +truckled +truckler +trucklike +truckling +trucklingly +truckload +truckman +truckmaster +trucks +truckster +truckway +truculence +truculency +truculental +truculently +truda +truddo +trude +trudel +trudell +trudellite +trudey +trudge +trudged +trudgen +trudger +trudgill +trudging +trudi +trudie +trudy +true +trueborn +truebred +truecolor +trued +truefalse +truehacker +truehearted +trueing +truelike +truelove +trueman +truenames +trueness +truepass +truepenny +truer +trues +truesdale +truesdell +truesmith +truespectra +truest +truett +truetype +truex +truez +trufan +trufant +truff +truffaut +truffer +truffle +truffled +trufflelike +truffler +truffles +trufflesque +trug +truhitte +truing +truish +truismatic +truisms +truistic +truistical +truitt +truj +trujano +trujillo +trujilloalto +truk +truka +trukese +trukhmens +trukhmeny +trukic +trukmen +trula +trull +trullan +truller +trullinger +trullization +trullo +truly +trumai +trumaine +truman +trumann +trumansburg +trumbash +trumbeau +trumble +trumbo +trumbrille +trummel +trummer +trump +trumped +trumper +trumperies +trumperiness +trumpet +trumpetbush +trumpeted +trumpeter +trumpeters +trumpeting +trumpetless +trumpetlike +trumpetry +trumpets +trumpettoned +trumpetweed +trumpetwood +trumpety +trumph +trumpie +trumpless +trumplike +trumps +trun +trunc +truncage +truncal +truncate +truncated +truncatella +truncately +truncater +truncates +truncating +truncation +truncations +truncator +truncature +trunch +trunched +truncheon +truncheoned +truncher +trunchman +trundled +trundlehead +trundler +trundleshot +trundletail +trundling +trundy +trung +trunk +trunkback +trunked +trunkfish +trunkful +trunking +trunkless +trunkmaker +trunknose +trunks +trunkway +trunkwork +trunley +trunnel +trunnion +trunnioned +trunnionless +trunonce +trunov +truong +truongvan +truran +truro +trusan +trusanda +trusault +truscott +trush +trushin +trushkin +trusia +trusion +truss +trussed +trussell +trusser +trussing +trussler +trussmaker +trussmaking +trussville +trusswork +trust +trustability +trustable +trustably +trusted +trustedst +trusteeism +trustees +trusteeship +trusten +truster +trustest +trusteth +trustfully +trustfulness +trustier +trusties +trustiest +trustify +trustihood +trustily +trustiness +trusting +trustingly +trustingness +trustle +trustless +trustlessly +trustman +trustmonger +trusts +trustwoman +trustworthy +trusty +truswell +truth +truthable +truthful +truthfully +truthfulness +truthify +truthiness +truthless +truthlessly +truthlike +truthloving +truths +truthsman +truthteller +truthtelling +truthvalues +truthy +trutination +trutschel +trutta +truttaceous +truus +truvat +truxa +truxillic +truxilline +truxton +truyen +trwind +trwrb +trychanging +tryggvason +trygon +trygonidae +tryhouse +trying +tryingly +tryingness +tryingto +tryla +tryma +tryon +tryout +tryp +trypa +trypan +trypaneid +trypaneidae +trypanocidal +trypanocide +trypanolysin +trypanolysis +trypanolytic +trypanosoma +trypanosomal +trypanosome +trypanosomic +tryparsamide +trypeta +trypetid +trypetidae +tryphena +tryphosa +trypiate +trypodendron +trypograph +trypographic +trypsinize +trypsinogen +tryptase +tryptic +tryptogen +tryptone +tryptonize +tryptophan +trysail +tryst +tryster +trysting +tryt +tryworks +trzcinski +trzeciak +trzeciej +trziste +tsaam +tsaamo +tsaangi +tsaayi +tsadik +tsaga +tsaganeas +tsagu +tsahirisis +tsai +tsaiwa +tsakalis +tsakhur +tsakhury +tsakiroglou +tsakok +tsakonia +tsakonian +tsalagi +tsaldouris +tsalikis +tsalisen +tsama +tsamai +tsamako +tsamangkha +tsamay +tsamba +tsamosan +tsampleshape +tsampoulas +tsan +tsanaga +tsang +tsangas +tsangi +tsangla +tsanglo +tsankov +tsantsa +tsanu +tsanuma +tsao +tsaplev +tsar +tsardom +tsarevitch +tsarina +tsarisen +tsarist +tsaritza +tsarship +tsatlee +tsattine +tsaudangsi +tsaukwe +tsaurasya +tsavedialog +tsaxur +tsaya +tsaye +tsayi +tsca +tscb +tsch +tschaja +tschako +tscharik +tschechowa +tschekowa +tscherkess +tschi +tschiokloe +tschiokwe +tschoell +tschopi +tscrnfrm +tscrollbox +tsechi +tsechien +tsegob +tseheng +tseku +tselina +tseminyu +tsenap +tseng +tsenter +tsenu +tsepang +tsere +tserekwe +tsereteli +tsesevich +tsessebe +tset +tsetse +tsevie +tsexa +tsez +tsezy +tshaahui +tshala +tshalhit +tshali +tshalingpa +tshamberi +tshanik +tsheenya +tshell +tshere +tsherekhwe +tshi +tshidikhwe +tshiga +tshikapa +tshiluba +tshirambo +tshire +tshirts +tshiti +tshivenda +tshogdu +tshogo +tshokwe +tshombe +tshomdjapa +tshopo +tshowtotal +tshukhwe +tshumakwe +tshumkwe +tshuosh +tshuwau +tshwa +tshwana +tshwosh +tsia +tsiakas +tsiang +tsiatis +tsibatabai +tsie +tsien +tsigane +tsigene +tsigonoff +tsihozony +tsikarev +tsilla +tsilmano +tsiltaden +tsimane +tsimihetry +tsimihety +tsimpshean +tsimshian +tsinbok +tsindir +tsine +tsing +tsinga +tsingani +tsingos +tsingtauite +tsiolkovsky +tsiology +tsiracua +tsiri +tsiricua +tsiripa +tsitsikhar +tsitsior +tsitsonsis +tsivili +tsixa +tsiyon +tsjundo +tsobwa +tsochiang +tsoft +tsoghami +tsogo +tsokde +tsoko +tsokos +tsokwambo +tsola +tsolaram +tsole +tsonari +tsoneca +tsonecan +tsong +tsonga +tsongol +tsonos +tsonov +tsontsii +tsontsu +tsoo +tsop +tsoppi +tsorokwe +tsortos +tsotso +tsou +tsouic +tsoungchao +tsounos +tsovatush +tspeedbutton +tspinedit +tsrs +tstatusbar +tstb +tstd +tstf +tstg +tstgw +tsth +tstl +tstringfield +tstrings +tstw +tsuang +tsuba +tsubo +tsuchiya +tsudakhar +tsuga +tsugaru +tsugawa +tsugio +tsugumi +tsui +tsuji +tsuk +tsukasa +tsukio +tsuma +tsumasa +tsumeb +tsumebite +tsumin +tsumura +tsun +tsunamis +tsune +tsunehido +tsuneihiko +tsung +tsunga +tsungtu +tsunlao +tsunoda +tsuntin +tsuou +tsureja +tsureshe +tsuruko +tsurumaru +tsuruta +tsurutaro +tsushima +tsutakawa +tsutoma +tsutomu +tsutsutsi +tsuu +tsuvan +tsuwenki +tsuwo +tsuyoshi +tsuzani +tsvet +tsvetaeva +tsvetana +tsvetarski +tsvi +tswa +tswana +tswaronga +tswene +tsweni +tsyntaxmemo +ttab +ttable +ttabset +ttail +ttao +ttcp +ttest +ttext +ttfn +tthar +tthat +tthe +ttick +ttimer +ttisupport +tttt +ttttt +tttttt +ttttttt +tttttttt +ttwo +ttydefs +ttys +ttysurf +tuajeva +tual +tualati +tualatin +tuam +tuamasaga +tuamea +tuamotu +tuamotuan +tuamotus +tuan +tuanjai +tuaopepe +tuapeka +tuaran +tuareg +tuarn +tuart +tuat +tuatara +tuatera +tuath +tuauru +tuba +tubac +tubacity +tubae +tubage +tubai +tubal +tubalcain +tubaniwai +tubaphone +tubar +tubara +tubarao +tubare +tubas +tubate +tubatoxin +tubatulabal +tubb +tubba +tubbable +tubbal +tubbeck +tubbed +tubber +tubbi +tubbia +tubbie +tubbier +tubbiest +tubbiness +tubbing +tubbish +tubboe +tubbs +tubby +tube +tubeflower +tubeform +tubeful +tubehead +tubehearted +tubeless +tubelet +tubelike +tubemaker +tubemaking +tubeman +tuben +tuber +tuberaceae +tuberaceous +tuberales +tuberation +tubercle +tubercled +tuberclelike +tubercula +tubercular +tubercularia +tubercularly +tuberculate +tuberculated +tubercule +tuberculed +tuberculid +tuberculide +tuberculinic +tuberculize +tuberculoid +tuberculoma +tuberculose +tuberculosed +tuberculosis +tuberculous +tuberculum +tuberiferous +tuberiform +tuberin +tuberization +tuberize +tuberless +tuberlin +tuberoid +tuberose +tuberosity +tuberous +tuberously +tuberousness +tubers +tubert +tubes +tubesmith +tubeta +tubetube +tubework +tubeworks +tubex +tubfish +tubful +tubicen +tubicinate +tubicination +tubicola +tubicolae +tubicolar +tubicolous +tubicorn +tubicornous +tubifacient +tubifer +tubiferous +tubifex +tubificidae +tubiflorales +tubiflorous +tubiform +tubig +tubik +tubilingual +tubin +tubinares +tubinarial +tubinarine +tubing +tubingen +tubingia +tubiparous +tubipora +tubipore +tubiporid +tubiporidae +tubiporoid +tubiporous +tublet +tublike +tubmaker +tubmaking +tubman +tubocurarine +tuboovarial +tuboovarian +tuboro +tuborrhea +tubotympanal +tubovaginal +tuboy +tuboysalog +tubruq +tubs +tubthumping +tubu +tubuai +tubulamo +tubular +tubularia +tubulariae +tubularian +tubularida +tubularidan +tubulariidae +tubularity +tubularly +tubulate +tubulated +tubulation +tubulator +tubulature +tubulet +tubuli +tubulibranch +tubulifera +tubuliferan +tubuliferous +tubulifloral +tubuliform +tubulipora +tubulipore +tubuliporid +tubuliporoid +tubulization +tubulose +tubulous +tubulously +tubulousness +tubulure +tubulus +tuburi +tubwoman +tucana +tucanae +tucandera +tucano +tucanoan +tucapel +tucc +tucci +tuccio +tuchfarber +tuchia +tuchinaua +tuchis +tuchit +tuchmann +tuchter +tuchun +tuchunate +tuchunism +tuchunize +tucino +tuck +tuckahoe +tuckasegee +tucked +tucker +tuckerman +tuckermanity +tuckers +tuckerton +tucket +tuckia +tucking +tuckner +tucks +tuckshop +tucktoo +tucky +tucows +tucson +tucum +tucuma +tucuman +tucumcari +tucuna +tucundiapa +tuda +tudaga +tudahwe +tudel +tudesque +tudo +tudoresque +tudsbury +tudun +tudza +tueiron +tuen +tuensang +tuerck +tuesday +tuesdays +tufa +tufaceous +tufalike +tufan +tuff +tuffaceous +tuffet +tuffi +tuffing +tufford +tufi +tufnel +tuft +tuftaffeta +tufted +tufter +tuftera +tufthunter +tufthunting +tuftily +tufting +tuftlet +tufto +tufts +tufty +tugara +tugari +tugay +tugbarge +tugboat +tugboatman +tugela +tugelev +tugen +tugeri +tugged +tugger +tuggery +tugging +tuggingly +tuggle +tuggy +tughra +tughrik +tughriks +tugless +tuglike +tugman +tugrama +tugrik +tugs +tugu +tugui +tugumawa +tugun +tugurium +tugurt +tugutil +tuhanuku +tuhina +tuhup +tuic +tuik +tuille +tuillette +tuillo +tuilyie +tuinier +tuipelehake +tuis +tuism +tuita +tuitional +tuitionary +tuitive +tujia +tujunga +tuka +tukaimi +tukam +tukana +tukangbesi +tuke +tukey +tukeys +tuki +tukin +tukiumu +tukknife +tukkongo +tukolor +tukombe +tukongo +tukpa +tukra +tukrah +tuku +tukude +tukudede +tukudh +tukuler +tukulor +tukulu +tukum +tukumanfe +tukumanfed +tukun +tukuna +tukur +tukurina +tula +tulagi +tulai +tulalip +tulambatu +tulane +tularaemia +tulare +tularosa +tulasi +tulbaghia +tulcea +tulchan +tulchin +tule +tulehu +tulelake +tulem +tulema +tulesh +tuleta +tulf +tulgey +tuli +tulia +tuliac +tulim +tuling +tulio +tulip +tulipa +tulipflower +tulipiferous +tulipist +tuliplike +tulipomania +tulipomaniac +tulips +tulipwood +tulipy +tulisan +tulishi +tulk +tulkepaia +tull +tullahassee +tullahoma +tulli +tullian +tullibee +tullio +tullius +tullo +tulloch +tullos +tullu +tully +tullytown +tulon +tulostoma +tulp +tulsa +tulsi +tulu +tulun +tulung +tulunlebei +tuluva +tulwar +tuma +tumacacori +tumaco +tumak +tumale +tumanao +tumaniq +tumanov +tumara +tumariya +tumaru +tumasha +tumata +tumatakuru +tumatukuru +tumawo +tumba +tumbak +tumbala +tumbele +tumbes +tumbester +tumble +tumblebug +tumbled +tumbledown +tumbledung +tumbler +tumblerful +tumblerlike +tumblers +tumblerwise +tumbles +tumbleweed +tumbleweeds +tumbling +tumblingly +tumbly +tumboa +tumboka +tumbril +tumbuka +tumbuko +tumbull +tumbunwha +tumbwe +tume +tumefacient +tumefaction +tumefy +tumefying +tumen +tumescence +tumescent +tumid +tumidity +tumidly +tumidness +tumie +tumion +tumleo +tumma +tummala +tummals +tummel +tummer +tummies +tummock +tummok +tummy +tumor +tumored +tumorlike +tumorous +tumors +tumour +tumous +tump +tumpline +tumtum +tumu +tumuaong +tumuenchen +tumuip +tumular +tumulary +tumulate +tumulation +tumuli +tumulose +tumulosity +tumulous +tumult +tumults +tumultuaary +tumultuarily +tumultuary +tumultuate +tumultuation +tumultuous +tumultuously +tumulty +tumulung +tumulus +tumupasa +tumuwaong +tunable +tunableness +tunably +tunafish +tunali +tunas +tunb +tunbellied +tunbelly +tunbridge +tunbumohas +tunc +tunca +tuncay +tuncel +tunceli +tund +tundagslatta +tunder +tundish +tundra +tundras +tundre +tundun +tune +tuneable +tunebo +tuned +tunefs +tunefully +tunefulness +tuneless +tunelessly +tunelessness +tunemaker +tunemaking +tunen +tuner +tuners +tunes +tunesome +tunester +tuneup +tunez +tunful +tung +tunga +tungak +tungan +tungara +tungate +tungawa +tungbo +tungchia +tunggare +tunghsiang +tungi +tungir +tungkal +tungkuan +tungo +tungshih +tungstenic +tungstenite +tungstic +tungstite +tungu +tungurahua +tungus +tungusian +tungusic +tunguska +tungyen +tunhoof +tunia +tunic +tunica +tunican +tunicary +tunicata +tunicate +tunicated +tunicates +tunicin +tunicked +tunicle +tunicless +tunics +tunikey +tuniness +tuning +tunis +tunish +tunisia +tunisian +tunisians +tunist +tunjung +tunjur +tunk +tunka +tunker +tunket +tunkhannock +tunlike +tunmoot +tunna +tunnage +tunnel +tunnelcity +tunneled +tunneler +tunnelers +tunnelhill +tunneling +tunnelist +tunnelite +tunneljump +tunnelled +tunneller +tunnellike +tunnelling +tunnelly +tunnelmaker +tunnelmaking +tunnelman +tunnels +tunnelton +tunnelway +tunner +tunnery +tunni +tunnicliffe +tunnies +tunnit +tunnland +tunnor +tunny +tuno +tunon +tunong +tunu +tunuli +tunuloa +tuny +tunya +tuobo +tuoi +tuok +tuolumne +tuom +tuomo +tuorla +tupacamaru +tupaia +tupaiidae +tupakihi +tupamaros +tupanship +tupara +tupari +tupas +tupaze +tupe +tupek +tupen +tupi +tupian +tupiguarani +tupik +tupimi +tupinaki +tupinamba +tupinaqui +tupinikin +tupitimoake +tuples +tupling +tupman +tupn +tupou +tuppence +tuppenny +tupperian +tupperish +tupperism +tupperize +tupperlake +tupperman +tupperware +tuptim +tupua +tupuna +tupuri +tupus +tuque +tura +turabor +turacin +turacus +turaka +turama +turandot +turanian +turanianism +turanism +turanose +turasoft +turatea +turay +turb +turbaned +turbanesque +turbanette +turbanless +turbanlike +turbans +turbantop +turbanwise +turbary +turbay +turbe +turbeh +turbellaria +turbellarian +turbes +turbescency +turbeville +turbidimeter +turbidimetry +turbidly +turbidness +turbinaceous +turbinage +turbinal +turbinated +turbination +turbine +turbinectomy +turbined +turbinelike +turbinella +turbinelloid +turbiner +turbines +turbinidae +turbiniform +turbinoid +turbinotome +turbinotomy +turbit +turbith +turbitteen +turbo +turbobat +turboblower +turbodynamo +turboedit +turboexciter +turbolift +turbomachine +turbomotor +turbopascal +turbopower +turboprop +turboprops +turbopump +turbosoft +turbosplit +turbostats +turbot +turbotax +turbotlike +turbots +turbotville +turbovision +turbulence +turbulency +turbulently +turbyfill +turchan +turchi +turcian +turcic +turcism +turcize +turco +turcoman +turcophilism +turcopole +turcopolier +turcot +turcotte +turd +turdetan +turdidae +turdiform +turdinae +turdine +turdoid +turdus +ture +tureen +tureenful +turelli +turenne +turere +turf +turfage +turfan +turfdom +turfed +turfen +turfiness +turfing +turfite +turfler +turfless +turflike +turfman +turfs +turfwise +turfy +turgay +turgency +turgent +turgently +turgesce +turgescence +turgescency +turgescent +turgescible +turgidity +turgidly +turgidness +turgidson +turgis +turgite +turgoid +turgor +turgut +turgy +turhan +turi +turibio +turicata +turijene +turin +turing +turio +turion +turismo +turist +turistic +turistik +turiuara +turiwa +turiwara +turjaite +turjite +turjok +turka +turkana +turkdom +turkel +turken +turkery +turkes +turkess +turkewitz +turkey +turkeyback +turkeyberry +turkeybush +turkeycity +turkeycreek +turkeydom +turkeyfoot +turkeyism +turkeylike +turkeys +turki +turkic +turkicize +turkify +turkis +turkish +turkishly +turkishness +turkism +turkize +turkki +turkle +turkler +turklike +turkman +turkmani +turkmanian +turkmen +turkmeni +turkmenia +turkmenian +turkmenistan +turkmenler +turkologist +turkology +turkoman +turkomania +turkomanic +turkomanize +turkomans +turkomen +turkophil +turkophile +turkophilia +turkophilism +turkophobe +turkophobist +turkovic +turkpa +turks +turksen +turku +turkupori +turkwam +turkwel +turleigh +turley +turlock +turlough +turlupin +turlupinade +turm +turma +turman +turment +turmeric +turmit +turmoil +turmoiler +turmoils +turn +turnable +turnagain +turnaround +turnaway +turnback +turnbout +turnbuckle +turnbull +turncap +turncoat +turncoatism +turncock +turndown +turndun +turned +turnel +turnell +turner +turnera +turneraceae +turneraceous +turnercenter +turneresque +turnerfest +turnerian +turnerism +turnerite +turners +turnersburg +turnersfalls +turnersville +turnerville +turnest +turneth +turney +turngate +turnhall +turnhalle +turnices +turnicidae +turnicine +turnier +turning +turningness +turnings +turnip +turniplike +turnips +turnipweed +turnipwise +turnipwood +turnipy +turnix +turnkeys +turnover +turnpiker +turnpin +turnpit +turnplate +turnplow +turnrow +turns +turnscrew +turnsheet +turnskin +turnsole +turnspit +turnstile +turntables +turntail +turnup +turnverein +turnwrest +turnwrist +turoff +turoha +turon +turonian +turoyo +turp +turpan +turpe +turpentinic +turpeth +turpethin +turpid +turpidly +turpin +turps +turquois +turquoise +turr +turrell +turrent +turreted +turrethead +turretlike +turrets +turrialba +turrical +turricle +turricula +turriculae +turricular +turriculate +turriferous +turriform +turrigerous +turrilepas +turrilite +turrilites +turrilitidae +turrin +turritella +turritellid +turritelloid +turrubiarte +turrubul +turse +tursenoi +tursha +tursio +tursiops +turtan +turtle +turtlebloom +turtlecreek +turtledom +turtledove +turtledoves +turtlehead +turtleize +turtlelake +turtlelike +turtlepoint +turtler +turtles +turtlet +turtletown +turtling +turton +turtosa +turtuno +turturro +turu +turuba +turuhide +turuj +turuka +turum +turumasa +turumawa +turumba +turumbu +turuna +turunen +turunggare +turupu +tururi +turus +turutap +turvali +turves +turveydrop +turwar +tury +turyoyo +tusayan +tusberg +tuscaloosa +tuscanism +tuscanize +tuscanlike +tuscarawas +tusche +tuscola +tusculan +tuscumbia +tush +tusha +tushan +tushar +tushed +tushepaw +tusher +tushery +tushingham +tusi +tusia +tusian +tuskahoma +tuskar +tusked +tusker +tuskish +tuskless +tusklike +tusks +tuskwise +tusky +tusovali +tusovatsa +tusovki +tussah +tussal +tusse +tusser +tussey +tussicular +tussilago +tussis +tussive +tussled +tussling +tussock +tussocked +tussocker +tussocky +tussore +tussur +tussy +tustain +tustin +tustine +tusulu +tuszynska +tuta +tutania +tutapi +tutau +tutball +tutchone +tute +tutee +tutela +tutelage +tutelar +tutelary +tutelo +tutenag +tutet +tuteur +tuth +tuthill +tutility +tutin +tutiorism +tutiorist +tutje +tutly +tutman +tutoh +tutoncana +tutong +tutor +tutorage +tutored +tutorer +tutoress +tutorhood +tutorial +tutorially +tutorials +tutoriate +tutoring +tutorism +tutorization +tutorize +tutorkey +tutorless +tutorly +tutors +tutorship +tutory +tutoyer +tutress +tutrice +tutrix +tutrugbu +tuts +tutsan +tutsi +tutsiled +tutsingo +tutster +tutt +tutta +tutte +tutti +tuttiman +tuttle +tutto +tutty +tutuala +tutuba +tutubalin +tutubela +tutuila +tutulus +tutume +tutung +tutunohan +tututepec +tututni +tutwiler +tutwork +tutworker +tutworkman +tuukka +tuulikki +tuum +tuune +tuuno +tuva +tuvaaltai +tuvache +tuvakaragas +tuvalu +tuvaluan +tuvaluans +tuvan +tuvia +tuvin +tuvinian +tuwa +tuwal +tuwali +tuwang +tuwari +tuwat +tuwi +tuwili +tuxa +tuxedopark +tuxedos +tuxford +tuxina +tuxinawa +tuyare +tuyen +tuyenduc +tuyere +tuyl +tuyonduc +tuyuca +tuyuka +tuyuneiri +tuyuneri +tuza +tuzanta +tuzanteco +tuzla +tuzzle +tvalley +tvardovskij +tvedit +tver +tverb +tverinfo +tversky +tvfs +tvga +tvoego +tvoemu +tvoey +tvoi +tvoimi +tvoiom +tvoiu +tvoroyri +tvoy +tvoya +twabo +twaddell +twaddledom +twaddleize +twaddlement +twaddler +twaddlesome +twaddling +twaddlingly +twaddly +twaddy +twae +twaesome +twafauld +twagger +twagner +twain +twainharte +twaite +twal +twala +twale +twalpenny +twalt +twampa +twana +twang +twanger +twanginess +twangle +twangler +twangy +twank +twanker +twanking +twankingly +twankle +twanky +twant +twardowski +twarly +twarog +twas +twasome +twat +twatchel +twatterlight +twattle +twattler +twattling +twattlle +twaunga +tway +twayblade +twazzy +tweag +tweak +tweaked +tweaker +tweakezy +tweaki +tweaking +tweakui +tweaky +tweddell +tweddle +twedell +twee +tweed +tweede +tweeded +tweedie +tweedier +tweediest +tweediness +tweedle +tweedled +tweedledee +tweedledum +tweedling +tweeds +tweeg +tweekers +tweel +tween +tweener +tweeney +tweenlight +tweeny +tweesh +tweesht +tweest +tweet +tweeter +tweety +tweezer +tweezerlike +tweezers +twefap +tweil +twelfhynde +twelfth +twelfthly +twelfthtide +twelve +twelvefold +twelvehynde +twelvemile +twelvemo +twelvemonth +twelvepence +twelvepenny +twelves +twelvescore +twelvetrees +tweneks +twenex +twenexs +tweney +twenties +twentieth +twentiethly +twentor +twenty +twentyeight +twentyfive +twentyfold +twentyfour +twentymo +twentynine +twentyone +twentyqueens +twentyseven +twentysix +twentythree +twentytwo +twere +twerp +twibil +twibilled +twic +twice +twicer +twicet +twich +twicheleska +twichild +twick +twickenham +twidale +twiddled +twiddler +twiddling +twiddly +twifoil +twifold +twifoldly +twig +twigful +twigged +twiggen +twigger +twiggier +twiggiest +twiggy +twigless +twiglet +twiglike +twigs +twigsome +twigwithy +twii +twij +twila +twilight +twilightless +twilightlike +twilights +twilighty +twilit +twilled +twiller +twillie +twilling +twilly +twilt +twin +twinable +twinberry +twinborn +twinbranch +twinbridges +twinbrooks +twincity +twincontrol +twincontrols +twindle +twineable +twinebush +twined +twineless +twinelike +twinemaker +twinemaking +twinengine +twiner +twinexplorer +twinfalls +twinflower +twinfold +twinge +twinged +twinging +twingle +twinhood +twinight +twining +twiningly +twinism +twink +twinkie +twinkle +twinkled +twinkledum +twinkleproof +twinkler +twinkles +twinkless +twinkleton +twinkling +twinklingly +twinkly +twinky +twinlake +twinlakes +twinleaf +twinlike +twinling +twinly +twinmountain +twinned +twinner +twinness +twinning +twinoaks +twinpeaks +twinrocks +twins +twinsburg +twinship +twinsomeness +twinter +twinvalley +twiny +twire +twirk +twirled +twirler +twirligig +twirling +twirls +twiscar +twisel +twisp +twiss +twist +twistable +twisted +twistedly +twistened +twister +twisterer +twisters +twistical +twistily +twistiness +twisting +twistingly +twistiways +twistiwise +twistle +twistless +twists +twit +twitched +twitchel +twitcheling +twitchell +twitcher +twitchet +twitchety +twitchfire +twitchily +twitchiness +twitching +twitchingly +twite +twitfixer +twitlark +twitted +twitten +twitter +twitteration +twitterboned +twittered +twitterer +twittering +twitteringly +twitterings +twitterly +twitters +twittery +twittingly +twitty +twixt +twixtbrain +twizzened +twizzle +twoarmed +twobuttes +twocomponent +twodecker +twodigit +twodot +twodrug +twoedged +twoevent +twoexample +twoface +twofactor +twofifths +twofold +twofoldly +twofoldness +twofoot +twoforone +twogroup +twoharbors +twoheaded +twohill +twoky +twolan +twolevel +twoling +twolocus +twombley +twomey +twoness +twonkie +twonky +twoo +twoparameter +twopence +twopenny +twoperiod +twophase +twopin +tworivers +twos +twosample +twosector +twosex +twosided +twospot +twostage +twostate +twosyllable +twothirds +twotothen +twotreatment +twovariable +twoway +twoyu +twrapmemo +twumwu +twyblade +twyhynde +twyla +twyman +twynham +twyver +txabi +txapacura +txapakura +txedit +txika +txikao +txikia +txiripa +txopi +txtedit +txtfiles +txucarrama +txukuhamai +txunhua +txuwabo +tyagi +tyajelo +tyakov +tyal +tyama +tyamuhi +tyan +tyanet +tyap +tyapi +tyaraity +tyaskin +tyazholaya +tyaziliewicz +tybalt +tybeeisland +tybi +tybie +tyburnian +tyche +tychicus +tychism +tychite +tycho +tychobrahe +tychonian +tychonic +tychopotamic +tycoon +tycoonate +tyda +tyddyn +tydeman +tydie +tyebala +tyebara +tyee +tyefo +tyeforo +tyelibele +tyeliri +tyemeri +tyenga +tyeyaxo +tyffany +tygar +tyghvalley +tyhua +tyigh +tying +tyke +tyken +tykhana +tyking +tyko +tylar +tylarus +tyleberry +tylenchus +tylenol +tyler +tylerhill +tylerism +tylerite +tylerize +tylersburg +tylersport +tylersville +tylerton +tylertown +tylette +tylion +tylo +tyloma +tylopod +tylopoda +tylopodous +tylosaurus +tylose +tylosis +tylosteresis +tylostoma +tylostylar +tylostyle +tylostylote +tylostylus +tylosurus +tylotate +tylote +tylotic +tylotoxea +tylotoxeate +tylotus +tyltyl +tylus +tymbal +tymbalon +tymchuk +tymix +tymnet +tymp +tympan +tympana +tympanal +tympanectomy +tympani +tympanic +tympanichord +tympanicity +tympaniform +tympaning +tympanism +tympanist +tympanites +tympanitic +tympanitis +tympanohyal +tympanon +tympanosis +tympanotomy +tympanuchus +tympanum +tympanums +tympany +tynah +tynan +tynd +tyndal +tyndall +tyndallize +tyndallmeter +tyne +tynepc +tyner +tyneside +tyngsboro +tynka +tynwald +tyoe +tyoo +typal +typamatic +typarchical +type +typeahead +typecast +typecaster +typecasting +typechecking +typed +typedef +typees +typefaces +typeholder +typeless +typematic +typename +typeout +typer +types +typesetter +typesof +typestry +typethe +typetricks +typewriter +typewriters +typewriting +typewrote +typha +typhaceae +typhaceous +typhemia +typhia +typhic +typhinia +typhization +typhlatonia +typhlatony +typhlectasis +typhlectomy +typhlitic +typhlitis +typhlocele +typhlolexia +typhlology +typhlomegaly +typhlomolge +typhlon +typhlopexia +typhlopexy +typhlophile +typhlopid +typhlopidae +typhlops +typhloptosis +typhlosis +typhlosolar +typhlosole +typhlostomy +typhlotomy +typhoean +typhoemia +typhogenic +typhoid +typhoidal +typhoidin +typhoidlike +typholysin +typhomalaria +typhomania +typhonia +typhonian +typhonic +typhoonish +typhoons +typhose +typhosepsis +typhosis +typhotoxine +typhous +typhula +typhus +typica +typical +typicality +typically +typicalness +typicon +typicum +typification +typified +typifier +typifies +typifying +typing +typingmaster +typist +typists +typo +typobar +typocosmy +typograf +typographers +typographia +typographic +typographist +typologic +typological +typologist +typomania +typometry +typonym +typonymal +typonymic +typonymous +typophile +typorama +typos +typoscript +typothere +typotheria +typothetae +typp +typtological +typtologist +typtology +typy +tyra +tyramine +tyrance +tyranness +tyranni +tyrannial +tyrannical +tyrannically +tyrannicidal +tyrannicly +tyrannidae +tyrannides +tyrannies +tyranninae +tyrannine +tyrannism +tyrannize +tyrannized +tyrannizer +tyrannizing +tyranno +tyrannoid +tyrannosaur +tyrannosaurs +tyrannous +tyrannously +tyrannus +tyranny +tyrant +tyrantcraft +tyrantlike +tyrants +tyrantship +tyre +tyree +tyreen +tyrell +tyremesis +tyrian +tyriasis +tyro +tyrocidin +tyrocidine +tyroglyphid +tyroglyphus +tyrol +tyrolean +tyroler +tyrolese +tyrolienne +tyrolite +tyrology +tyroma +tyromancy +tyromatous +tyron +tyronda +tyrone +tyronic +tyronism +tyronza +tyros +tyrosinase +tyrosinuria +tyrosyl +tyrotoxicon +tyrotoxine +tyrr +tyrrell +tyrrhena +tyrrhene +tyrrheni +tyrrhenian +tyrsenoi +tyrtaean +tyrus +tyrwhitt +tysfjord +tyson +tysonite +tysonscorner +tyste +tystie +tyszkiewicz +tyto +tytonidae +tytun +tyty +tyua +tyuk +tyumen +tyumenia +tyurama +tyzack +tzaam +tzaban +tzan +tzaneteas +tzapotec +tzar +tzarina +tzaritza +tzavaras +tzavaris +tzburgesch +tzeburgesch +tzec +tzeitel +tzeleung +tzelniker +tzeltal +tzeltalan +tzendal +tzeng +tzental +tziafetas +tzip +tziscau +tzolkin +tzomet +tzontle +tzotzil +tzou +tzuang +tzung +tzuri +tzutuhil +tzutujil +uaboe +uadzoli +uafcseg +uageo +uaiai +uaiana +uaicana +uaieue +uaikena +uaim +uaimiri +uainana +uaiora +uaiquiare +uaiuai +uakron +ualamo +ualberta +ualr +uams +uamue +uanana +uanano +uang +uanna +uanova +uaraycu +uardai +uarekena +uari +uaripi +uark +uarray +uars +uart +uarts +uase +uasi +uasilau +uasin +uasona +uasp +uaupe +uaura +uayeb +ubach +ubae +ubaghara +ubaldo +ubang +ubangi +ubani +ubbenite +ubbonite +ubde +uberant +uberig +uberman +uberous +uberously +uberousness +ubertino +uberty +ubeteng +ubezhische +ubfly +ubian +ubiaseramuku +ubication +ubiety +ubii +ubili +ubiquarian +ubiquious +ubiquist +ubiquit +ubiquitarian +ubiquitary +ubiquitism +ubiquitist +ubiquitous +ubiquitously +ubir +ubiri +ubly +uboat +uboi +ubon +ubong +ubranch +ubrette +ubuia +ubundu +uburu +ubussu +ubvax +ubvm +ubvmsb +ubvmsc +ubye +ubykh +ubyx +ucal +ucalgary +ucama +ucan +ucar +ucayale +ucayali +ucbarpa +ucbbach +ucbbizet +ucbeast +ucbeh +ucbesvax +ucbji +ucbmike +ucbmonet +ucboz +ucbrenoir +ucbssl +ucbvax +uccba +ucch +ucchi +ucclia +uccp +uccs +uccvm +ucdavis +ucede +uceng +ucgccd +uchar +uchc +uche +uchean +uchee +uchi +uchicago +uchida +uchitivay +uchitsa +uchiyama +ucinapc +ucinda +ucis +uckia +ucla +ucmail +ucna +ucon +uconn +ucop +ucrmath +ucrobt +ucsb +ucsc +ucscc +ucsd +ucselx +ucsf +ucsfcgl +ucsu +uctreda +ucur +udai +udaipur +udal +udalena +udaler +udall +udallas +udaller +udalman +udar +udarenie +udasi +uday +udaya +udayagiri +udayasekaran +udayton +udbc +udder +uddered +udderful +udderless +udderlike +udders +udea +udeac +udecma +udegeis +udekama +udekhe +udel +udell +udenhout +uder +uderi +udet +udfcds +udhetimi +udic +udihe +udin +udine +udiny +udish +udjir +udlam +udma +udmurt +udobno +udobnom +udoc +udoclnx +udolphoish +udom +udometer +udometric +udometry +udomograph +udon +udorn +udpm +udry +uduk +udung +udvaros +udzima +ueac +ueba +uebelohe +ueber +uebergang +ueberhacker +uebernimmt +uecker +ueda +ueen +ueferji +uehara +uehling +ueki +uele +uellanskij +uently +uerech +uerequema +ueta +ueueteotl +uexkull +ueyama +ufaina +ufaufa +uffe +ufff +uffish +uffner +ufia +ufim +ufiom +ufland +ufologist +ufomadu +uforia +ufthak +ufufu +ugana +uganda +ugandan +ugar +ugare +ugari +ugarono +ugarte +ugbala +ugbe +ugbebor +ugbem +ugboshioke +ugboshisale +ugcs +ugeec +ugele +ugen +ugep +uggams +ughbug +ughele +ugie +ugle +ugli +uglier +ugliest +uglification +uglifier +uglify +uglifying +uglily +ugliness +uglisome +ugluk +ugly +ugolin +ugolino +ugoly +ugondo +ugong +ugostili +ugrian +ugric +ugroid +ugsome +ugsomely +ugsomeness +ugsr +ugta +ugtg +ugtt +uguano +uguccioni +ugwa +ugyen +uhamiiyayu +uhcc +uhccux +uhei +uheng +uhhh +uhhhh +uhhhhh +uhhuh +uhlan +uhlen +uhlenbeck +uhler +uhlhorn +uhlig +uhllo +uhlmann +uhmm +uhodil +uhplohd +uhrichsville +uhtensang +uhtsong +uhunduni +uhura +uhuru +uhworth +uiaku +uiatobl +uicbert +uicsl +uicsle +uicvm +uidaho +uids +uige +uighor +uighuir +uighur +uiguir +uigur +uigurian +uiguric +uihub +uilength +uily +uina +uinal +uint +uinta +uintahite +uintaite +uintathere +uintatherium +uintjie +uiobject +uiowa +uirafed +uirina +uisai +uisquebaugh +uitotan +uitspan +uiuc +uiucdcs +uiucuxc +uiucvmd +uive +ujarra +ujas +ujaylat +ujazdowskie +ujeli +ujir +ujjaini +ujohhilang +ujoin +ujsc +ujumuchin +ujung +ujungpandang +ujuwa +ukaan +ukans +ukase +ukazivaiu +ukcc +ukele +ukelele +ukena +ukerewe +ukermark +ukfwo +ukhrul +ukhul +ukhwejo +ukiah +ukie +ukit +ukiyoye +ukkkhhhh +ukko +ukon +ukpe +ukpebayobiri +ukpella +ukpet +ukraina +ukraine +ukrainer +ukrainians +ukueehuen +ukulele +ukuriguma +ukus +ukwali +ukwani +ukwese +ukwuani +ukwuaniaboh +ulaanbaatar +ulai +ulam +ulama +ulan +ulana +ulanbator +ulanova +ulat +ulatrophia +ulau +ulausuain +ulaw +ulawa +ulaxangku +ulcer +ulcerable +ulcerated +ulcerating +ulceration +ulcerative +ulcered +ulcerous +ulcerously +ulcerousness +ulcers +ulcery +ulcha +ulchi +ulcumayo +ulcuscle +ulcuscule +uldeme +ulead +uled +uledi +ulema +uleme +ulemorrhagia +ulen +ulerythema +uleta +uletic +uletters +ulex +ulexine +ulexite +ulgen +ulhas +ulhu +uliase +ulick +ulidia +ulidian +uliginose +uliginous +ulimit +ulingan +ulipe +ulisse +ulisses +ulithi +uliti +ulitis +ulitsa +ulitsu +ulkulu +ulla +ullabella +ullage +ullaged +ullagone +ullalulla +ullatan +uller +ullestad +ulli +ullin +ulling +ullmann +ullmannite +ullmans +ullrich +ulluco +ullungdo +ully +ulmaceae +ulmaceous +ulman +ulmann +ulmanu +ulmaria +ulmer +ulmic +ulmin +ulminic +ulmo +ulmous +ulmus +ulna +ulnad +ulnae +ulnar +ulnare +ulnaria +ulnas +ulnocarpal +ulnocondylar +ulnoradial +uloborid +uloboridae +uloborus +ulocarcinoma +uloid +ulonata +uloncus +ulophocinae +ulopo +ulorrhagia +ulorrhagy +ulorrhea +ulothrix +ulotrichales +ulotrichan +ulotriches +ulotrichi +ulotrichous +ulotrichy +ulowell +ulpath +ulric +ulrica +ulrich +ulrichite +ulrichs +ulrika +ulrikaumeko +ulrike +ulsan +ulsi +ulster +ulstered +ulsterette +ulsterian +ulstering +ulsterite +ulsterman +ulsterpark +ulteriorly +ultima +ultimacy +ultimata +ultimate +ultimately +ultimateness +ultimateurl +ultimation +ultimative +ultimatum +ultimatums +ultimity +ultimo +ultimos +ultimum +ultiple +ultonian +ultra +ultrabac +ultrabasic +ultrabasite +ultracivil +ultracomplex +ultracordial +ultraedit +ultrafast +ultrafeudal +ultrafidian +ultrafilter +ultraformal +ultragallant +ultragaseous +ultragenteel +ultragood +ultragrave +ultraheroic +ultrahigh +ultrahuman +ultraism +ultraist +ultraistic +ultrajectum +ultralenient +ultralexan +ultraliberal +ultralite +ultralogical +ultraloyal +ultramarine +ultramaximal +ultrametric +ultramicron +ultraminute +ultramodern +ultramodest +ultramontane +ultramorose +ultramulish +ultramundane +ultranatural +ultranet +ultranice +ultraobscure +ultraornate +ultrapapist +ultraperfect +ultrapious +ultrapopish +ultraproud +ultraprudent +ultraradical +ultrarapid +ultrared +ultrarefined +ultraselect +ultraservile +ultrasevere +ultrashrewd +ultrasimian +ultrasolemn +ultrasonic +ultrasonics +ultraspartan +ultrastellar +ultrasterile +ultrastrict +ultrasubtle +ultratense +ultraterrene +ultratotal +ultratrivial +ultraugly +ultraurgent +ultravicious +ultraviolent +ultraviolet +ultravirus +ultravisible +ultravox +ultrawealthy +ultrawise +ultrayoung +ultrazealous +ultrix +ultroneous +ultroneously +ulua +ulubongko +ulubukusu +ulubuya +uludadiri +uludamar +ulufaalu +ulugbek +uluhi +ulukisu +ulukwumi +ulul +ulula +ululant +ululate +ululated +ululating +ululation +ululative +ululatory +ululera +ululu +ulumanda +ulumandak +ulumbu +uluna +ulunchun +ulunda +ulunna +ulunnobokan +ulunnobokon +ulunyankole +ulunyankore +uluragooli +ulva +ulvaceae +ulvaceous +ulvales +ulvan +ulver +ulvia +ulyanov +ulych +ulyssean +ulysses +umaip +umairof +umaisha +umakanth +umalasa +umanakaina +umangite +umar +umari +umarin +umarita +umaru +umask +umass +umassd +umathi +umatilla +umaua +umawa +umax +umaxc +umayamnon +umbach +umbar +umbarger +umbc +umbeclad +umbel +umbeled +umbella +umbellales +umbellar +umbellate +umbellated +umbellately +umbellet +umbellic +umbellifer +umbelliferae +umbelliform +umbelloid +umbellula +umbellularia +umbellulate +umbellule +umbellulidae +umbelwort +umber +umbers +umberto +umbethink +umbilectomy +umbilic +umbilically +umbilicar +umbilicaria +umbilicate +umbilicated +umbilication +umbiliciform +umbiliform +umbilroot +umble +umbo +umboi +umbolateral +umbonal +umbonate +umbonated +umbonation +umbone +umbones +umbonial +umbonic +umbonulate +umbonule +umbopa +umbopo +umbracious +umbraculate +umbraculum +umbrae +umbrageous +umbrageously +umbral +umbrally +umbras +umbratile +umbrel +umbrella +umbrellaed +umbrellaless +umbrellalike +umbrellas +umbrellawise +umbrellawort +umbrellos +umbrette +umbria +umbrian +umbriel +umbriferous +umbril +umbrine +umbrose +umbrosity +umbrous +umbu +umbukul +umbule +umbundu +umbutfo +umca +umcs +umda +umdb +umdc +umdd +umdnj +umecka +umed +umeda +umeeda +umeh +umeki +umeko +umer +umera +umerge +umes +umesh +umetsu +umiack +umiacs +umiak +umich +umigw +umiray +umirey +umiri +umist +umix +umkc +umlauf +umload +umma +ummah +ummc +ummed +ummi +ummm +ummmm +ummps +umncs +umnd +umney +umno +umnstat +umon +umoti +umotina +umount +umph +umphres +umpila +umpirage +umpired +umpirer +umpires +umpireship +umpiress +umpiring +umpirism +umpqua +umpteen +umpteenth +umptekite +umptieth +umpty +umquhile +umrisca +umrvmb +umsl +umsmed +umsystem +umtali +umtata +umuahia +umurano +umutina +umvlsi +umwate +unaaha +unabandoned +unabased +unabasedly +unabashable +unabashed +unabashedly +unabatable +unabated +unabatedly +unabating +unabatingly +unabetted +unabhorred +unabiding +unabidingly +unability +unabject +unabjured +unable +unableness +unably +unabolished +unabraded +unabrased +unabridgable +unabridged +unabrogated +unabrupt +unabsent +unabsolute +unabsolvable +unabsolved +unabsorb +unabsorbable +unabsorbed +unabsorbent +unabstract +unabsurd +unabundance +unabundant +unabundantly +unabused +unacademic +unacademical +unaccent +unaccented +unaccept +unacceptable +unacceptably +unacceptance +unacceptant +unaccepted +unaccessible +unaccessibly +unaccessory +unaccidental +unaccidented +unacclimated +unaccord +unaccordable +unaccordance +unaccordant +unaccorded +unaccording +unaccostable +unaccosted +unaccounted +unaccoutered +unaccoutred +unaccredited +unaccrued +unaccumulate +unaccuracy +unaccurate +unaccurately +unaccursed +unaccusable +unaccusably +unaccuse +unaccusing +unaccustom +unaccustomed +unachievable +unachieved +unaching +unacidulated +unacoustic +unacquaint +unacquainted +unacquirable +unacquirably +unacquired +unacquit +unacquitted +unact +unactability +unactable +unacted +unacting +unactinic +unaction +unactivated +unactive +unactively +unactiveness +unactivity +unactorlike +unactual +unactuality +unactually +unactuated +unacute +unacutely +unadapt +unadaptable +unadaptably +unadapted +unadaptedly +unadaptive +unadd +unaddable +unadded +unaddicted +unadditional +unaddress +unaddressed +unadequate +unadequately +unadherence +unadherent +unadherently +unadhesive +unadilla +unadjacent +unadjacently +unadjectived +unadjourned +unadjudged +unadjust +unadjustably +unadjusted +unadjustment +unadmirable +unadmire +unadmired +unadmiring +unadmissible +unadmissibly +unadmission +unadmittable +unadmittably +unadmitted +unadmittedly +unadmitting +unadmonished +unadopt +unadoptable +unadoptably +unadopted +unadoption +unadorable +unadoration +unadored +unadoring +unadorn +unadornable +unadorned +unadornedly +unadornment +unadult +unadulterate +unadulterous +unadvanced +unadvancedly +unadvancing +unadvantaged +unadventured +unadverse +unadversely +unadvertency +unadvertised +unadvisable +unadvisably +unadvised +unadvisedly +unadvocated +unaerated +unaesthetic +unafeard +unafeared +unaffable +unaffably +unaffected +unaffectedly +unaffecting +unaffianced +unaffied +unaffiliated +unaffirmed +unaffixed +unafflicted +unafflicting +unaffliction +unaffordable +unafforded +unaffrighted +unaffronted +unafire +unafloat +unaflow +unafraid +unaged +unaggravated +unaggregated +unaggression +unaggressive +unaghast +unagile +unagility +unaging +unagitated +unagitatedly +unagitation +unagonize +unagrarian +unagreeable +unagreeably +unagreed +unagreeing +unagreement +unagro +unaidable +unaided +unaidedly +unaiding +unailing +unaimed +unaiming +unaired +unaisled +unakhotana +unakin +unakite +unal +unalachtigo +unalarm +unalarmed +unalarming +unalaska +unalaskan +unaldermanly +unale +unalert +unalertly +unalertness +unalias +unalienable +unalienably +unalienated +unalignable +unaligned +unalike +unalimentary +unalist +unalive +unallayable +unallayably +unallayed +unalleged +unalleviably +unalleviated +unalliable +unallied +unalliedly +unalliedness +unallocated +unallotment +unallotted +unallow +unallowable +unallowed +unallowedly +unallowing +unalloyed +unallurable +unallured +unalluring +unalluringly +unalmsed +unalone +unaloud +unalphabeted +unalphabetic +unalterable +unalterably +unalteration +unaltered +unaltering +unalternated +unamassed +unamazed +unamazedly +unambal +unambiguity +unambiguous +unambition +unambitious +unambrosial +unambush +uname +unamenable +unamenably +unamend +unamendable +unamended +unamendedly +unamending +unamendment +unamerced +unami +unamiability +unamiable +unamiably +unamicable +unamicably +unamiss +unamo +unamortized +unample +unamplified +unamply +unamputated +unamusable +unamusably +unamused +unamusement +unamusing +unamusingly +unamusive +unanalogical +unanalogous +unanalytic +unanalytical +unanalyzable +unanalyzed +unanalyzing +unanatomized +unancestored +unancestried +unanchor +unanchored +unanchylosed +unancient +unaneled +unangan +unangany +unangelic +unangelical +unanghan +unangrily +unangry +unangular +unani +unanimalized +unanimate +unanimated +unanimatedly +unanimately +unanimism +unanimist +unanimistic +unanimously +unank +unannealed +unannex +unannexed +unannexedly +unannotated +unannounced +unannoyed +unannoying +unannullable +unannulled +unanointed +unanswerable +unanswerably +unanswered +unanswering +unantiquated +unantique +unantiquity +unanxiety +unanxious +unanxiously +unapart +unapocryphal +unapologetic +unapostolic +unapostrophe +unappalled +unappareled +unapparent +unapparently +unappealable +unappealably +unappealed +unappealing +unappeasable +unappeasably +unappeased +unappeasedly +unappendaged +unappetizing +unapplauded +unapplauding +unapplausive +unappliable +unappliably +unapplianced +unapplicable +unapplicably +unapplied +unapplying +unappoint +unappointed +unapposite +unappositely +unappraised +unapprised +unapprisedly +unapprized +unapproached +unapprovable +unapprovably +unapproved +unapproving +unaproned +unapropos +unapt +unaptitude +unaptly +unaptness +unarbitrary +unarbitrated +unarch +unarchdeacon +unarched +unarduous +unarguable +unarguably +unargued +unarguing +unarisen +unarising +unarj +unark +unarm +unarmed +unarmedly +unarmedness +unarmored +unarmorial +unaromatized +unarousable +unaroused +unarousing +unarraigned +unarranged +unarray +unarrayed +unarrestable +unarrested +unarresting +unarrival +unarrived +unarriving +unarrogance +unarrogant +unarrogating +unarted +unartful +unartfully +unartfulness +unarticled +unarticulate +unartificial +unartistic +unartistical +unartistlike +unary +unascendable +unascended +unashamed +unashamedly +unasinous +unaskable +unasked +unasking +unasleep +unaspersed +unasphalted +unaspirated +unaspiring +unaspiringly +unassailable +unassailably +unassailed +unassailing +unassaulted +unassayed +unassaying +unassembled +unassented +unassenting +unasserted +unassertive +unassessable +unassessed +unassiduous +unassignable +unassignably +unassigned +unassisted +unassisting +unassociable +unassociably +unassociated +unassoiled +unassorted +unassuaged +unassuaging +unassuetude +unassumable +unassumed +unassuming +unassumingly +unassured +unassuredly +unassuring +unasterisk +unastonish +unastonished +unastray +unathirst +unatonable +unatoned +unatoning +unattach +unattachable +unattached +unattackable +unattackably +unattacked +unattainable +unattainably +unattained +unattaining +unattainment +unattaint +unattainted +unattempered +unattempted +unattempting +unattendance +unattendant +unattended +unattentive +unattenuated +unattested +unattire +unattired +unattracted +unattracting +unattractive +unattributed +unattuned +unau +unauctioned +unaudible +unaudibly +unaudienced +unaudited +unaugmented +unauna +unauspicious +unaustere +unauthentic +unauthorised +unauthorish +unauthorize +unauthorized +unautomatic +unautumnal +unavailable +unavailably +unavailed +unavailful +unavailing +unavailingly +unavem +unavengeable +unavenged +unavenging +unavenued +unaveraged +unaverred +unaverted +unavertible +unavertibly +unavian +unavoidable +unavoidably +unavoidal +unavoided +unavoiding +unavouchable +unavouchably +unavouched +unavowable +unavowably +unavowed +unavowedly +unawakable +unawake +unawaked +unawakened +unawakening +unawaking +unawardable +unawardably +unawarded +unaware +unawared +unawaredly +unawareness +unawares +unaway +unawed +unawful +unawfully +unawkward +unawned +unaxled +unazotized +unbacked +unbackward +unbadged +unbaffled +unbaffling +unbag +unbagged +unbailable +unbailed +unbain +unbait +unbaited +unbaized +unbaked +unbalance +unbalanced +unbalancing +unbalconied +unbale +unbalked +unballast +unballasted +unballoted +unbandage +unbandaged +unbanded +unbanished +unbank +unbankable +unbankably +unbanked +unbankrupt +unbannered +unbaptize +unbaptized +unbar +unbarb +unbarbarize +unbarbarous +unbarbed +unbarbered +unbare +unbargained +unbark +unbarking +unbaronet +unbarrable +unbarred +unbarrel +unbarreled +unbarren +unbarrenness +unbarricade +unbarricaded +unbarring +unbase +unbased +unbasedness +unbashful +unbashfully +unbasket +unbaste +unbasted +unbastilled +unbated +unbathed +unbating +unbatted +unbatten +unbatterable +unbattered +unbattling +unbay +unbe +unbeached +unbeaconed +unbeaded +unbear +unbearable +unbearably +unbeard +unbearded +unbearing +unbeast +unbeatable +unbeatably +unbeaten +unbeaued +unbeauteous +unbeautified +unbeautiful +unbeautify +unbeavered +unbeclogged +unbeclouded +unbecome +unbecoming +unbecomingly +unbed +unbedabbled +unbedaggled +unbedashed +unbedaubed +unbedded +unbedecked +unbedewed +unbedimmed +unbedinned +unbedizened +unbedraggled +unbefit +unbefitting +unbefool +unbefriend +unbefriended +unbefringed +unbeget +unbeggar +unbegged +unbegilt +unbeginning +unbegirded +unbegirt +unbegot +unbegotten +unbegottenly +unbegreased +unbegrimed +unbegrudged +unbeguile +unbeguiled +unbeguileful +unbegun +unbehaving +unbeheaded +unbeheld +unbeholdable +unbeholden +unbeholding +unbehoveful +unbehoving +unbeing +unbejuggled +unbeknown +unbelied +unbelief +unbeliefful +unbelievable +unbelievably +unbelieve +unbelieved +unbeliever +unbelievers +unbelieving +unbelivable +unbell +unbellicose +unbelonging +unbeloved +unbelt +unbemoaned +unbemourned +unbench +unbend +unbendable +unbendably +unbended +unbending +unbendingly +unbendsome +unbeneficed +unbeneficent +unbeneficial +unbenefited +unbenefiting +unbenetted +unbenevolent +unbenight +unbenighted +unbenign +unbenignant +unbenignity +unbenignly +unbent +unbenumb +unbenumbed +unbequeathed +unbereaved +unbereft +unberouged +unberth +unberufen +unbeseem +unbeseeming +unbeseemly +unbeset +unbesieged +unbesmeared +unbesmirched +unbesmutted +unbesot +unbesought +unbespeak +unbespoke +unbespoken +unbestarred +unbestowed +unbet +unbeteared +unbethink +unbethought +unbetide +unbetoken +unbetray +unbetrayed +unbetraying +unbetrothed +unbetterable +unbettered +unbeveled +unbewailed +unbewailing +unbewilder +unbewildered +unbewilled +unbewitch +unbewitched +unbewitching +unbewrayed +unbewritten +unbias +unbiasable +unbiased +unbiasedly +unbiasedness +unbiassed +unbibulous +unbickered +unbickering +unbid +unbidable +unbiddable +unbigged +unbigoted +unbilled +unbillet +unbilleted +unbind +unbindable +unbinding +unbinds +unbiological +unbirdlike +unbirdlimed +unbirdly +unbirthday +unbishop +unbishoply +unbit +unbiting +unbitt +unbitted +unbitten +unbitter +unblacked +unblackened +unblade +unblamable +unblamably +unblameable +unblameably +unblamed +unblaming +unblanched +unblanketed +unblasphemed +unblasted +unblazoned +unbleached +unbleaching +unbled +unbleeding +unblemished +unblemishing +unblenched +unblenching +unblendable +unblended +unblent +unbless +unblessed +unblest +unblighted +unblightedly +unblind +unblindfold +unblinking +unblinkingly +unbliss +unblissful +unblistered +unblithe +unblithely +unblock +unblockaded +unblocked +unblocking +unblocks +unblooded +unbloodied +unbloodily +unbloodiness +unbloody +unbloom +unbloomed +unblooming +unblossomed +unblossoming +unblotted +unbloused +unblown +unblued +unbluffed +unbluffing +unblunder +unblundered +unblundering +unblunted +unblurred +unblush +unblushing +unblushingly +unblushlng +unboarded +unboasted +unboastful +unboastfully +unboasting +unboat +unbodied +unbodiliness +unbodily +unboding +unbodkined +unbody +unbodylike +unbog +unboggy +unboiled +unboisterous +unbokel +unbold +unbolden +unboldly +unboldness +unbolled +unbolster +unbolstered +unbolt +unbolted +unbombast +unbondable +unbonded +unbone +unboned +unbonnet +unbonneted +unbonny +unbooked +unbookish +unboot +unbooted +unboraxed +unborder +unbordered +unbored +unboring +unborn +unborne +unborough +unborrowed +unborrowing +unbosom +unbosomer +unbossed +unbotanical +unbothered +unbothering +unbottle +unbottom +unbottomed +unbought +unbound +unboundable +unboundably +unbounded +unboundedly +unboundless +unbounteous +unbountiful +unbow +unbowable +unbowed +unbowel +unboweled +unbowered +unbowing +unbowingness +unbowled +unbowsome +unbox +unboxed +unboy +unboyish +unboylike +unbrace +unbraced +unbracedness +unbracelet +unbraceleted +unbracing +unbracket +unbragged +unbragging +unbraid +unbraided +unbrailed +unbrained +unbran +unbranched +unbranching +unbrand +unbranded +unbrandied +unbrave +unbraved +unbravely +unbraze +unbreachable +unbreached +unbreaded +unbreak +unbreakable +unbreakably +unbreaking +unbreast +unbreath +unbreathable +unbreathed +unbreathing +unbred +unbreech +unbreeched +unbreezy +unbrent +unbrewed +unbribable +unbribably +unbribed +unbribing +unbrick +unbridgeable +unbridged +unbridle +unbridled +unbridledly +unbridling +unbrief +unbriefed +unbriefly +unbright +unbrightened +unbrilliant +unbrimming +unbrined +unbrittle +unbroached +unbroad +unbroidered +unbroiled +unbroke +unbroken +unbrokenly +unbrokenness +unbronzed +unbrooch +unbrooded +unbrookable +unbrookably +unbrothered +unbrotherly +unbrought +unbrown +unbrowned +unbruised +unbrushed +unbrutalize +unbrutalized +unbrute +unbrutelike +unbrutify +unbrutize +unbuckle +unbuckled +unbuckling +unbuckramed +unbud +unbudded +unbudgeable +unbudgeably +unbudged +unbudgeted +unbudging +unbuffed +unbuffered +unbuffeted +unbugged +unbuild +unbuilded +unbuilt +unbulky +unbulled +unbulletined +unbumped +unbumptious +unbunched +unbunching +unbundle +unbundled +unbung +unbungling +unbuoyant +unbuoyed +unburden +unburdened +unburdenment +unburdensome +unburgessed +unburiable +unburial +unburied +unburlesqued +unburly +unburn +unburnable +unburned +unburning +unburnished +unburnt +unburrow +unburrowed +unburst +unburstable +unburthen +unbury +unbush +unbusied +unbusily +unbusiness +unbusk +unbuskin +unbuskined +unbustling +unbusy +unbutchered +unbuttered +unbutton +unbuttoned +unbuttoning +unbuttonment +unbuttons +unbuttressed +unbuxom +unbuxomly +unbuxomness +unbuyable +unbuying +unca +uncabined +uncabled +uncadenced +uncage +uncaged +uncake +uncalcareous +uncalcified +uncalcined +uncalculable +uncalculably +uncalculated +uncalendered +uncalk +uncalked +uncall +uncalled +uncallow +uncallower +uncalm +uncalmed +uncalmly +uncambered +uncamerated +uncanceled +uncancelled +uncandid +uncandidly +uncandidness +uncandied +uncandor +uncaned +uncankered +uncanned +uncannily +uncanniness +uncanny +uncanonic +uncanonical +uncanonize +uncanonized +uncanopied +uncantoned +uncantonized +uncanvassed +uncap +uncapable +uncapably +uncapacious +uncapacitate +uncapped +uncapper +uncapsizable +uncapsized +uncaptained +uncaptioned +uncaptious +uncaptiously +uncaptivate +uncaptivated +uncaptived +uncapturable +uncaptured +uncarbonated +uncarboned +uncarbureted +uncarded +uncardinal +uncardinally +uncaredfor +uncareful +uncarefully +uncaressed +uncargoed +uncaria +uncaring +uncarnate +uncaroled +uncarpeted +uncarried +uncart +uncarted +uncartooned +uncarved +uncas +uncase +uncased +uncasemated +uncask +uncasked +uncasketed +uncasque +uncassock +uncast +uncaste +uncastigated +uncastle +uncastled +uncastrated +uncasual +uncasville +uncatalogued +uncatchable +uncate +uncatechised +uncatechized +uncatholcity +uncatholic +uncatholical +uncatholicly +uncaucusable +uncaught +uncaused +uncauterized +uncautious +uncautiously +uncavalier +uncavalierly +uncave +uncc +unceasable +unceased +unceasing +unceasingly +uncecs +unceded +unceiled +unceilinged +uncelebrated +uncelestial +uncellar +uncement +uncemented +uncementing +uncensorable +uncensored +uncensorious +uncensurable +uncensured +uncensuring +uncensused +uncenter +uncentered +uncentral +uncentrality +uncentrally +uncentred +uncentury +unceremented +unceremonial +uncertain +uncertainly +uncertainty +uncertified +uncertifying +uncertitude +uncessant +uncessantly +uncg +unchafed +unchain +unchainable +unchained +unchair +unchaired +unchalked +unchallenged +unchambered +unchamfered +unchampioned +unchance +unchancellor +unchancy +unchange +unchangeable +unchangeably +unchanged +unchangeful +unchanging +unchangingly +unchanneled +unchannelled +unchanted +unchaperoned +unchaplain +unchapleted +unchapter +unchaptered +uncharacter +uncharge +unchargeable +uncharged +uncharging +uncharily +unchariness +unchariot +uncharitable +uncharitably +uncharity +uncharm +uncharmable +uncharmed +uncharming +uncharnel +uncharred +uncharted +unchartered +unchary +unchased +unchaste +unchastely +unchastened +unchasteness +unchastised +unchastising +unchastity +unchatteled +unchawed +uncheat +uncheated +uncheating +uncheck +uncheckable +unchecked +uncheckered +uncheerable +uncheered +uncheerful +uncheerfully +uncheerily +uncheeriness +uncheering +uncheery +unchemical +unchemically +uncherished +uncherishing +unchested +unchevroned +unchewable +unchewed +unchid +unchidden +unchided +unchiding +unchidingly +unchild +unchildish +unchildishly +unchildlike +unchilled +unchiming +unchinked +unchipped +unchiseled +unchiselled +unchivalric +unchivalrous +unchivalry +unchoicely +unchokable +unchoked +uncholeric +unchoosable +unchopped +unchoral +unchorded +unchosen +unchrisom +unchristen +unchristened +unchronicled +unchs +unchurch +unchurched +unchurchlike +unchurchly +unchurn +unci +uncia +uncial +uncialize +uncially +uncicatrized +unciferous +unciform +unciliated +uncinal +uncinaria +uncinariasis +uncinariatic +uncinata +uncinate +uncinated +uncinatum +uncinch +uncinched +uncinct +uncinctured +uncini +uncinula +uncinus +uncipher +uncir +uncircular +uncirculated +uncirostrate +uncite +uncited +uncitied +uncitizen +uncitizenly +uncity +uncivic +uncivil +uncivilish +uncivility +uncivilize +uncivilized +uncivilly +uncivilness +unclad +unclaimed +unclaiming +unclamorous +unclamp +unclamped +unclarified +unclarifying +unclarity +unclashing +unclasp +unclasped +unclasping +unclassable +unclassably +unclassed +unclassible +unclassical +unclassified +unclassify +unclawed +unclay +unclayed +uncle +unclead +unclean +uncleanable +uncleaned +uncleanlily +uncleanly +uncleanness +uncleansable +uncleanse +uncleansed +unclear +uncleared +unclearing +uncleavable +uncleave +uncledom +uncleft +unclehood +unclement +unclemently +unclench +unclergy +unclergyable +unclerical +unclerically +unclerklike +unclerkly +uncles +uncleship +unclever +uncleverly +uncleverness +unclew +unclick +uncliented +unclify +unclimaxed +unclimb +unclimbable +unclimbably +unclimbed +unclimbing +unclinch +uncling +unclinical +unclip +unclipped +unclipper +uncloak +uncloakable +uncloaked +unclog +unclogged +uncloister +uncloistered +uncloistral +unclosable +unclose +unclosed +uncloseted +unclothe +unclothed +unclothedly +unclothing +unclotted +uncloud +unclouded +uncloudedly +uncloudy +unclout +uncloven +uncloyable +uncloyed +uncloying +unclub +unclubbable +unclubby +unclustered +unclustering +unclutch +unclutchable +unclutched +unclutter +uncluttered +unco +uncoach +uncoachable +uncoached +uncoacted +uncoagulable +uncoagulated +uncoat +uncoated +uncoatedness +uncoaxable +uncoaxed +uncoaxing +uncock +uncocked +uncockneyfy +uncocted +uncodded +uncoddled +uncoded +uncodified +uncoerced +uncoffer +uncoffin +uncoffined +uncoffle +uncogent +uncogged +uncogitable +uncognizable +uncognizant +uncognized +uncoguidism +uncoherent +uncoherently +uncohesive +uncoif +uncoifed +uncoil +uncoiled +uncoin +uncoined +uncoked +uncoking +uncollapsed +uncollar +uncollared +uncollated +uncollected +uncolleged +uncollegian +uncollegiate +uncolloquial +uncolonial +uncolonize +uncolonized +uncolorable +uncolorably +uncolored +uncoloredly +uncoloured +uncolouredly +uncolt +uncoly +uncombable +uncombatable +uncombated +uncombed +uncombinable +uncombinably +uncombine +uncombined +uncombining +uncome +uncomeatable +uncomelily +uncomeliness +uncomely +uncomendable +uncomfort +uncomforted +uncomforting +uncomfy +uncomic +uncommanded +uncommenced +uncommended +uncommented +uncommenting +uncommercial +uncommingled +uncomminuted +uncommitted +uncommitting +uncommixed +uncommodious +uncommon +uncommonable +uncommonly +uncommonness +uncommutable +uncommuted +uncompact +uncompacted +uncompahgre +uncompanied +uncomparable +uncomparably +uncompared +uncompass +uncompassed +uncompassion +uncompatible +uncompatibly +uncompelled +uncompelling +uncompetent +uncompiled +uncomplacent +uncomplained +uncomplaint +uncomplete +uncompleted +uncompletely +uncomplex +uncompliable +uncompliance +uncompliant +uncomplying +uncomposable +uncomposed +uncompounded +uncompressed +uncomprised +uncomprising +uncompulsive +uncompulsory +uncomputable +uncomputably +uncomputed +uncomraded +unconcealed +unconcealing +unconceded +unconceited +unconceived +unconceiving +unconcern +unconcerned +unconcerning +unconcerted +unconcluded +unconcluding +unconclusive +unconcocted +unconcordant +unconcrete +unconcreted +unconcurrent +unconcurring +uncondemned +uncondensed +uncondensing +uncondition +uncondoled +uncondoling +unconducing +unconducive +unconducted +unconductive +unconfected +unconferred +unconfess +unconfessed +unconfessing +unconfided +unconfidence +unconfident +unconfiding +unconfinable +unconfine +unconfined +unconfinedly +unconfining +unconfirm +unconfirmed +unconfirming +unconformed +unconforming +unconformist +unconformity +unconfound +unconfounded +unconfronted +unconfusable +unconfusably +unconfused +unconfusedly +unconfutable +unconfuted +unconfuting +uncongeal +uncongealed +uncongenial +uncongested +uncongruous +unconjoined +unconjugal +unconjugated +unconjured +unconnected +unconned +unconnived +unconniving +unconquered +unconscient +unconscious +unconsecrate +unconsent +unconsented +unconsenting +unconserved +unconserving +unconsidered +unconsigned +unconsistent +unconsolable +unconsolably +unconsoled +unconsoling +unconsonancy +unconsonant +unconsonous +unconspired +unconspiring +unconstancy +unconstant +unconstantly +unconstraint +unconstrued +unconsular +unconsult +unconsulted +unconsulting +unconsumable +unconsumed +unconsuming +unconsummate +uncontacted +uncontagious +uncontained +uncontemned +uncontended +uncontending +uncontent +uncontented +uncontenting +uncontested +uncontinence +uncontinent +uncontinual +uncontinued +uncontinuous +uncontorted +uncontract +uncontracted +uncontrasted +uncontrite +uncontrived +uncontriving +uncontrol +uncontrolled +unconvenable +unconvened +unconvenient +unconversant +unconversion +unconvert +unconverted +unconveyable +unconveyed +unconvicted +unconvicting +unconvince +unconvinced +unconvincing +unconvoluted +unconvoyed +unconvulsed +uncookable +uncooked +uncooled +uncoop +uncooped +uncoopered +uncooping +uncope +uncopiable +uncopied +uncopious +uncoquettish +uncord +uncorded +uncordial +uncordiality +uncordially +uncording +uncore +uncored +uncork +uncorked +uncorker +uncorking +uncorned +uncorner +uncoronated +uncoroneted +uncorporal +uncorpulent +uncorrect +uncorrected +uncorrectly +uncorrelated +uncorrigible +uncorrigibly +uncorroded +uncorrugated +uncorrupt +uncorrupted +uncorrupting +uncorruption +uncorruptive +uncorruptly +uncorseted +uncosseted +uncost +uncostliness +uncostly +uncostumed +uncottoned +uncouch +uncouched +uncouching +uncouffin +uncounseled +uncounselled +uncountable +uncountably +uncounted +uncountess +uncouple +uncoupled +uncoupler +uncoupling +uncourageous +uncoursed +uncourted +uncourteous +uncourting +uncourtlike +uncourtly +uncous +uncousinly +uncouthie +uncouthly +uncouthness +uncouthsome +uncovenant +uncovenanted +uncover +uncoverable +uncovered +uncoveredly +uncovereth +uncovering +uncovers +uncoveted +uncoveting +uncovetingly +uncovetous +uncowed +uncowl +uncoy +uncracked +uncradled +uncraftily +uncraftiness +uncrafty +uncram +uncramp +uncramped +uncranked +uncrannied +uncrated +uncravatted +uncraven +uncraving +uncravingly +uncrazed +uncream +uncreased +uncreatable +uncreate +uncreated +uncreating +uncreation +uncreative +uncreaturely +uncredible +uncredibly +uncreditable +uncreditably +uncredited +uncrediting +uncredulous +uncreeping +uncreolized +uncreosoted +uncrest +uncrested +uncrevassed +uncrib +uncried +uncrime +uncriminal +uncriminally +uncrinkle +uncrinkled +uncrinkling +uncrippled +uncrisp +uncritical +uncritically +uncriticised +uncriticism +uncriticized +uncrochety +uncrook +uncrooked +uncrooking +uncropped +uncropt +uncross +uncrossable +uncrossed +uncrossly +uncrowded +uncrown +uncrowned +uncrowning +uncrucified +uncrudded +uncrude +uncruel +uncrumbled +uncrumple +uncrumpling +uncrushable +uncrushed +uncrusted +uncrying +uncryptor +uncrystaled +uncrystalled +unctad +unction +unctional +unctioneer +unctionless +unctious +unctiousness +unctorium +unctuose +unctuosity +unctuous +unctuously +unctuousness +uncubbed +uncubic +uncuckold +uncuckolded +uncudgelled +uncuffed +uncular +unculled +unculpable +uncultivable +uncultivate +uncultivated +unculturable +unculture +uncultured +uncumber +uncumbered +uncumbrous +uncunning +uncunningly +uncupped +uncurable +uncurably +uncurb +uncurbable +uncurbed +uncurbedly +uncurbing +uncurd +uncurdled +uncurdling +uncured +uncurious +uncuriously +uncurl +uncurled +uncurling +uncurly +uncurrent +uncurrently +uncurried +uncurse +uncursed +uncursing +uncurst +uncurtailed +uncurtain +uncurtained +uncus +uncushioned +uncusped +uncustomable +uncustomary +uncustomed +uncut +uncuth +uncuticulate +uncuttable +uncwil +uncynical +uncynically +uncypress +unda +undabbled +undaggled +undaily +undaintiness +undainty +undallying +undam +undamageable +undamaged +undamaging +undamasked +undammed +undamming +undamn +undamped +undancing +undandiacal +undandled +undangered +undangerous +undared +undaring +undark +undarken +undarkened +undarned +undashed +undatable +undate +undateable +undated +undatedness +undaub +undaubed +undaughter +undaughterly +undauntable +undaunted +undauntedly +undaunting +undawned +undawning +undazed +undazing +undazzle +undazzled +undazzling +undc +unde +undead +undeadened +undeaf +undealable +undealt +undean +undear +undebanava +undebarred +undebased +undebatable +undebated +undebating +undebauched +undecagon +undecane +undecatoic +undecayable +undecayed +undecaying +undeceased +undeceitful +undeceivable +undeceivably +undeceive +undeceived +undeceiver +undeceiving +undecency +undecennary +undecennial +undecent +undecently +undeception +undeceptious +undeceptive +undecidable +undecide +undecided +undecidedly +undeciding +undecimal +undeciman +undecimole +undecipher +undeciphered +undecision +undecisive +undecisively +undeck +undecked +undeclaimed +undeclaiming +undeclarable +undeclare +undeclared +undeclinable +undeclinably +undeclined +undeclining +undecocted +undecoic +undecolic +undecomposed +undecorated +undecorative +undecorous +undecorously +undecoyed +undecreased +undecreasing +undecree +undecreed +undecried +undecyl +undecylenic +undecylic +undedicate +undedicated +undeducible +undeducted +undeeded +undeemed +undeemous +undeemously +undeep +undef +undefaceable +undefaced +undefalcated +undefamed +undefaming +undefaulted +undefaulting +undefeasible +undefeat +undefeatable +undefeated +undefeatedly +undefecated +undefectible +undefective +undefendable +undefendably +undefended +undefending +undefense +undefensed +undefensible +undeferred +undefiant +undeficient +undefied +undefilable +undefiled +undefiledly +undefinable +undefinably +undefine +undefined +undefinedly +undeflected +undeflowered +undeformed +undefrauded +undefrayed +undeft +undegeneracy +undegenerate +undegraded +undegrading +undeground +undeified +undeify +undeistical +undejected +undelated +undelayable +undelayed +undelayedly +undelaying +undelayingly +undelectable +undelectably +undelegated +undelete +undeleted +undeliberate +undelible +undelicious +undelight +undelighted +undelightful +undelighting +undelimited +undelineated +undelivered +undelivery +undeludable +undelude +undeluded +undeluding +undeluged +undelusive +undelusively +undelve +undelved +undelylene +undemanded +undemised +undemocratic +undemolished +undemure +undemurring +unden +undeniable +undeniably +undenied +undeniedly +undenizened +undenoted +undenounced +undenuded +undepartably +undeparted +undeparting +undependable +undependably +undependent +undepending +undepicted +undepleted +undeplored +undeported +undeposable +undeposed +undeposited +undepraved +undeprecated +undepressed +undepressing +undeprivable +undeprived +undepurated +undeputed +under +underabyss +underachieve +underact +underacted +underacting +underaction +underactor +underadmiral +underage +underagency +underagent +underaid +underaim +underair +underanged +underarch +underargue +underarm +underaverage +underback +underbailiff +underbake +underbalance +underballast +underbank +underbar +underbarber +underbarring +underbasal +underbeadle +underbeak +underbeam +underbear +underbearer +underbearing +underbeat +underbeaten +underbed +underbelly +underbid +underbidder +underbill +underbillow +underbishop +underbit +underbite +underbitted +underbitten +underboard +underboated +underbodice +underbody +underboil +underboom +underborn +underborne +underbottom +underbough +underbought +underbound +underbowed +underbowser +underbox +underboy +underbrace +underbraced +underbranch +underbreath +underbred +underbrew +underbridge +underbright +underbrim +underbrush +underbubble +underbud +underbuild +underbuilder +underbuoy +underburn +underburned +underburnt +underbursar +underbury +underbush +underbutler +underbuy +undercanopy +undercanvass +undercap +undercaptain +undercarder +undercarry +undercarter +undercarve +undercarved +undercase +undercasing +undercast +undercause +underceiling +undercellar +underchamber +underchanter +underchap +undercharge +undercharged +underchief +underchime +underchin +underchord +undercircle +undercitizen +underclad +underclass +underclay +underclearer +underclerk +undercliff +underclift +undercloak +undercloth +underclothe +underclothed +underclothes +underclub +underclutch +undercoat +undercoated +undercoater +undercoating +undercolor +undercolored +undercomment +underconsume +undercook +undercool +undercooper +undercorrect +undercount +undercourse +undercover +undercovert +undercrawl +undercreep +undercrest +undercrier +undercroft +undercrop +undercrust +undercry +undercrypt +undercup +undercurl +undercurrent +undercurve +undercut +undercutter +undercutting +underdauber +underdeacon +underdead +underdeck +underdepth +underdevelop +underdevil +underdig +underdip +underdish +underditch +underdive +underdo +underdoctor +underdoer +underdog +underdoing +underdone +underdose +underdot +underdown +underdraft +underdrag +underdrain +underdrainer +underdraught +underdraw +underdrawers +underdrawn +underdress +underdressed +underdrift +underdrive +underdriven +underdry +underdunged +underearth +undereat +undereaten +underedge +underenter +underer +underexcited +underexpose +undereye +underface +underfaction +underfactor +underfaculty +underfall +underfarmer +underfeature +underfed +underfeed +underfeeder +underfeeling +underfeet +underfellow +underfiend +underfill +underfilling +underfinance +underfind +underfire +underfitting +underflame +underflannel +underfleece +underflood +underfloor +underflow +underflowed +underflowing +underflows +underfold +underfolded +underfong +underfoot +underfootage +underfootman +underform +underfortify +underframe +underframing +underfreight +underfringe +underfrock +underfur +underfurnish +underfurrow +undergabble +undergaoler +undergarb +undergarment +undergarnish +undergauge +undergear +undergeneral +undergird +undergirder +undergirding +undergirdle +undergirth +underglaze +undergloom +underglow +undergnaw +undergo +undergod +undergoer +undergoes +undergoing +undergone +undergore +undergos +undergown +undergrad +undergrade +undergrads +undergrass +undergreen +undergrieve +undergroan +underground +undergrounds +undergrove +undergrow +undergrowl +undergrown +undergrowth +undergrub +underguard +undergunner +underhabit +underhammer +underhand +underhanded +underhang +underhanging +underhangman +underhatch +underhead +underheat +underheaven +underhelp +underhew +underhid +underhill +underhint +underhistory +underhive +underhold +underhole +underhonest +underhorse +underhorsed +underhum +underhung +underided +underisive +underissue +underivable +underivative +underived +underivedly +underjacket +underjailer +underjanitor +underjaw +underjawed +underjobbing +underjudge +underjungle +underkeel +underkeeper +underkind +underking +underkingdom +underlaborer +underlaid +underlain +underland +underlap +underlapper +underlash +underlawyer +underlay +underlayer +underlaying +underleaf +underlease +underleather +underlegate +underlessee +underlet +underletter +underlevel +underlever +underlid +underlie +underlielay +underlier +underlies +underlife +underlift +underlight +underliking +underlimbed +underlimit +underline +underlined +underlineman +underlinen +underliner +underlines +underlings +underlining +underlinings +underlip +underlive +underload +underloaded +underlock +underlodging +underloft +underlook +underlooker +underlout +underlunged +underly +underlye +underlying +undermade +undermaid +undermaker +underman +undermanager +undermanned +undermanning +undermark +undermarshal +undermasted +undermaster +undermatch +undermatched +undermate +undermath +undermeal +undermeaning +undermeasure +undermelody +undermiller +undermimic +underminable +undermine +undermined +underminer +undermines +undermining +undermist +undermoated +undermoney +undermoral +undermost +undermotion +undermount +undermusic +undermuslin +undern +undername +undernatural +underneath +underness +undernet +undernote +undernoted +undernourish +undernsong +underntide +underntime +undernurse +underofficer +underogating +underogatory +underopinion +underorb +underorseman +underoxidize +underpacking +underpaid +underpain +underpan +underpants +underpart +underpartner +underpass +underpassion +underpay +underpayment +underpeep +underpeer +underpen +underpeopled +underpick +underpier +underpile +underpin +underpinned +underpinner +underpinning +underpins +underpitch +underpitched +underplain +underplan +underplant +underplate +underplay +underplayed +underplaying +underplays +underplot +underplotter +underplumage +underply +underpoint +underpole +underporch +underporter +underpose +underpot +underpower +underpowered +underpraise +underprefect +underpresser +underprice +underpriest +underprint +underprior +underprize +underproduce +underprompt +underproof +underprop +underpropped +underpropper +underpry +underpuke +underqueen +underquote +underranger +underrate +underrated +underrating +underreach +underread +underreader +underrealize +underrealm +underream +underreamer +underreckon +underregion +underrent +underrented +underrenting +underriddle +underriding +underrigged +underring +underripe +underripened +underriver +underroarer +underroast +underrobe +underrogue +underroll +underroller +underroof +underroom +underroot +underrooted +underrower +underrule +underruler +underrun +underrunning +unders +undersailed +undersally +undersap +undersavior +undersaw +undersawyer +underscale +underscheme +underschool +underscoop +underscore +underscored +underscores +underscoring +underscribe +underscript +underscrub +undersea +underseam +underseaman +undersearch +underseas +underseated +undersect +undersee +underseeded +underseedman +undersell +underseller +underselling +undersense +underservant +underserve +underservice +underset +undersetter +undersetters +undersetting +undersettle +undersettler +undersexton +undershaft +undershapen +undersharp +undersheriff +undershield +undershine +undershining +undershire +undershirt +undershoe +undershoot +undershore +undershorten +undershot +undershrieve +undershrub +undershrubby +undershunter +undershut +underside +undersight +undersighted +undersign +undersigned +undersigner +undersill +undersinging +undersitter +undersize +undersized +underskin +underskirt +undersky +undersleep +undersleeve +underslip +underslope +undersluice +underslung +undersneer +undersociety +undersoil +undersold +undersole +undersong +undersort +undersoul +undersound +undersow +underspar +undersparred +underspecies +underspend +undersphere +underspin +underspinner +undersplice +underspore +underspread +underspring +undersprout +undersquare +understaff +understaffed +understage +understain +understairs +understamp +understan +understand +understander +understands +understate +understated +understating +understay +understeer +understem +understep +understeward +understock +understood +understory +understrain +understrap +understratum +understream +understress +understrew +understride +understrife +understrike +understring +understroke +understrung +understudied +understudies +understudy +understuff +undersuck +undersuit +undersupply +undersupport +undersurface +underswain +underswamp +undersward +underswearer +undersweat +undersweep +underswell +undertakable +undertake +undertaken +undertaker +undertakerly +undertakers +undertakery +undertakes +undertaking +undertakings +undertalk +undertapster +undertaxed +underteacher +underteamed +underteller +undertenancy +undertenant +undertenter +undertenure +undertest +underthane +underthaw +underthief +underthing +underthings +underthink +underthirst +underthought +underthrob +underthrust +undertide +undertided +undertie +undertime +undertimed +undertint +undertitle +undertone +undertoned +undertones +undertook +undertow +undertrader +undertrained +undertread +undertreat +undertribe +undertrick +undertrodden +undertruck +undertrump +undertruss +undertub +undertune +undertunic +underturf +underturn +underturnkey +undertutor +undertwig +undertwo +undertype +undertyrant +underuse +underused +underusher +undervalue +undervalued +undervaluer +undervaluing +undervalve +undervassal +undervaulted +underverse +undervest +undervicar +underviewer +undervillain +undervoice +undervoltage +underwage +underwaist +underwalk +underward +underwarden +underware +underwarmth +underwarp +underwash +underwatch +underwatcher +underwater +underwave +underway +underweapon +underwear +underweft +underweigh +underweight +underwent +underwheel +underwhistle +underwind +underwing +underwit +underwitch +underwitted +underwood +underwooded +underwork +underworker +underworking +underworkman +underworld +underwrap +underwrite +underwriter +underwriters +underwrites +underwriting +underwritten +underwrote +underwrought +underyield +underyoke +underzeal +underzealot +undescended +undescribed +undescried +undescript +undescrying +undesert +undeserted +undeserting +undeserve +undeserved +undeservedly +undeserver +undeserving +undesign +undesignated +undesigned +undesignedly +undesigning +undesirable +undesirably +undesire +undesired +undesiredly +undesiring +undesirous +undesirously +undesisting +undespaired +undespairing +undespatched +undespised +undespising +undespoiled +undespondent +undesponding +undespotic +undestined +undestroyed +undetachable +undetached +undetailed +undetainable +undetained +undetectable +undetected +undetectible +undetermined +undeterred +undeterring +undetested +undetesting +undethroned +undetracting +undeveloped +undeveloping +undeviated +undeviating +undevil +undevious +undeviously +undevisable +undevised +undevoted +undevotion +undevotional +undevoured +undevout +undevoutly +undevoutness +undewed +undewy +undexterous +undextrous +undextrously +undflow +undiademed +undiagnosed +undialed +undialyzed +undiametric +undiamonded +undiapered +undiaphanous +undiatonic +undici +undictated +undid +undidactic +undies +undieted +undifferent +undifficult +undiffident +undiffracted +undiffused +undiffusible +undiffusive +undig +undigenous +undigest +undigestable +undigested +undigestible +undigesting +undigestion +undigged +undight +undighted +undigitated +undignified +undignify +undiked +undilatable +undilated +undilatory +undiligent +undiligently +undilute +undiluted +undilution +undiluvial +undim +undimerous +undimidiate +undiminished +undiminutive +undimmed +undimpled +undina +undine +undined +undinted +undiocesed +undiplomaed +undiplomatic +undipped +undirect +undirected +undirectly +undirectness +undirk +undisabled +undisarmed +undisastrous +undisbanded +undisbarred +undisbursed +undiscarded +undiscerned +undiscerning +undischarged +undiscipled +undiscipline +undisclaimed +undisclosed +undiscolored +undiscordant +undiscording +undiscounted +undiscoursed +undiscovered +undiscreet +undiscreetly +undiscretion +undiscursive +undiscussed +undisdained +undisdaining +undiseased +undisfigured +undisgorged +undisgraced +undisguise +undisguised +undisgusted +undished +undisheveled +undishonored +undisjoined +undisjointed +undisliked +undislocated +undislodged +undismantled +undismay +undismayable +undismayed +undismayedly +undismissed +undismounted +undisobeyed +undisordered +undisorderly +undisowned +undisowning +undisparaged +undisparity +undispatched +undispelled +undispensed +undispensing +undispersed +undispersing +undisplaced +undisplanted +undisplay +undisplayed +undisplaying +undispleased +undispose +undisposed +undisproved +undisproving +undisputable +undisputably +undisputed +undisputedly +undisputing +undisquieted +undisrobed +undisrupted +undissected +undissembled +undissenting +undissevered +undissipated +undissoluble +undissolute +undissolved +undissolving +undissonant +undissuade +undistanced +undistant +undistantly +undistasted +undistend +undistended +undistilled +undistinct +undistinctly +undistorted +undistorting +undistracted +undistrained +undistraught +undistress +undistressed +undistrusted +undisturbed +undisturbing +unditched +undittoed +undiuretic +undiurnal +undivable +undivergent +undiverging +undiverse +undiverted +undivertible +undivertibly +undiverting +undivested +undivestedly +undividable +undividably +undivided +undividedly +undividing +undivinable +undivined +undivinelike +undivinely +undivining +undivisible +undivisive +undivorced +undivorcing +undivulged +undivulging +undizened +undizzied +undo +undoable +undoc +undocint +undock +undocked +undoctor +undoctored +undoctrinal +undoctrined +undocumented +undodged +undoer +undoes +undof +undoffed +undog +undogmatic +undogmatical +undoing +undoingness +undoings +undolled +undolorous +undomed +undomestic +undomiciled +undominated +undominical +undominoed +undon +undonated +undonating +undone +undoneness +undonkey +undonnish +undoomed +undoped +undormant +undose +undosed +undoting +undotted +undouble +undoubled +undoubtable +undoubtably +undoubted +undoubtedly +undoubtful +undoubtfully +undoubting +undoubtingly +undouched +undoughty +undovelike +undoweled +undowered +undowned +undowny +undp +undrab +undraftable +undrafted +undrag +undragoned +undragooned +undrainable +undrained +undramatic +undramatical +undramatized +undrape +undraped +undraperied +undraw +undrawable +undrawn +undreaded +undreadful +undreadfully +undreading +undreamed +undreaming +undreamlike +undreamt +undreamy +undredged +undreggy +undrenched +undress +undressed +undresses +undressing +undri +undried +undrillable +undrilled +undrinkable +undrinkably +undrinking +undripping +undrivable +undriven +undro +undronelike +undrooping +undropped +undropsical +undrossy +undrowned +undrubbed +undrugged +undrunk +undrunken +undry +undryable +undrying +undtvae +undu +undualize +undub +undubbed +undubitable +undubitably +unducal +unduchess +undue +unduelling +undueness +undug +unduke +undulant +undular +undularly +undulatance +undulated +undulately +undulating +undulatingly +undulation +undulative +undulatory +undull +undulled +undullness +unduloid +undulose +undulous +unduly +undumped +unduncelike +undunged +undup +undupable +unduped +unduplicable +unduplicity +undurable +undurably +undust +undusted +unduteous +undutiable +undutiful +undutifully +unduty +undwarfed +undwelt +undwindling +undy +undye +undyeable +undyed +undying +undyingly +undyingness +uneager +uneagerly +uneagerness +uneagled +unearly +unearned +unearnest +unearth +unearthed +unearthing +unearthly +unearths +unease +uneaseful +uneasier +uneasiest +uneasily +uneasiness +uneastern +uneasy +uneatable +uneaten +uneath +uneating +unebbed +unebbing +unebriate +uneccentric +unechoed +unechoing +uneclectic +uneclipsed +uneconomic +uneconomical +unecstatic +unedge +unedged +unedible +unedibleness +unedibly +unedified +unedifying +uneditable +unedited +uneducable +uneducably +uneducate +uneducated +uneducatedly +uneducative +uneduced +uneeda +uneffaceable +uneffaceably +uneffaced +uneffected +uneffectible +uneffective +uneffectless +uneffectual +uneffeminate +uneffete +unefficient +uneffigiated +uneffused +uneffusing +uneffusive +unegoist +unegoistical +unegregious +unejaculated +unejected +unelaborate +unelaborated +unelapsed +unelastic +unelasticity +unelated +unelating +unelbowed +unelderly +unelect +unelectable +unelected +unelective +unelectric +unelectrical +unelectrify +unelectrized +unelectronic +unelegant +unelegantly +unelemental +unelementary +unelevated +unelicited +unelided +unelidible +uneligible +uneligibly +uneliminated +unelongated +uneloped +uneloping +uneloquent +uneloquently +unelucidated +uneluded +unelusive +unemaciated +unembalmed +unembanked +unembased +unembattled +unembayed +unembezzled +unembittered +unemblazoned +unembodied +unembodiment +unembossed +unembowelled +unembowered +unembraced +unembroiled +unembryonic +uneme +unemendable +unemended +unemerged +unemerging +unemigrating +uneminent +uneminently +unemitted +unemiya +unemotional +unemotioned +unempaneled +unemphatic +unemphatical +unempirical +unemploy +unemployable +unemployably +unemployed +unemployment +unempoisoned +unempowered +unempt +unemptiable +unemptied +unempty +unemulative +unemulous +unemulsified +unenabled +unenacted +unenameled +unenamored +unencamped +unenchafed +unenchant +unenchanted +unencircled +unenclosed +unencored +unencouraged +unencroached +unencrypted +unencumber +unencumbered +unencysted +unendable +unendamaged +unendangered +unendeared +unendeavored +unended +unending +unendingly +unendingness +unendorsable +unendorsed +unendowed +unendowing +unendued +unendurable +unendurably +unendured +unenduring +unenduringly +unenergetic +unenergized +unenervated +unenfeebled +unenfiladed +unenforced +unenforcedly +unengaged +unengaging +unengendered +unengineered +unenglish +unengraved +unengraven +unengrossed +unenhanced +unenjoined +unenjoyable +unenjoyed +unenjoying +unenjoyingly +unenkindled +unenlarged +unenlisted +unenlivened +unenlivening +unennobled +unennobling +unenounced +unenquired +unenquiring +unenraged +unenraptured +unenrichable +unenriched +unenriching +unenrobed +unenrolled +unenshrined +unenslave +unenslaved +unensnared +unensouled +unensured +unentailed +unentangle +unentangled +unentangler +unenterable +unentered +unentering +unenterprise +unenthralled +unenthroned +unenthusiasm +unenticed +unenticing +unentire +unentitled +unentombed +unentrance +unentranced +unentrapped +unentreated +unentreating +unentrenched +unentwined +unenumerable +unenumerated +unenveloped +unenvenomed +unenviable +unenviably +unenvied +unenviedly +unenvious +unenviously +unenvironed +unenvying +unenwoven +unep +unepauleted +unephemeral +unepic +unepicurean +unepilogued +unepiscopal +unepistolary +unepitaphed +unepithelial +unepitomized +unequable +unequably +unequal +unequalable +unequaled +unequality +unequalize +unequalized +unequalled +unequally +unequalness +unequated +unequatorial +unequestrian +unequiaxed +unequine +unequipped +unequitable +unequitably +unequivalent +unequivalve +unequivalved +unequivocal +uneradicable +uneradicated +unerasable +unerased +unerasing +unerect +unerected +unermined +uneroded +unerrable +unerrably +unerrancy +unerrant +unerratic +unerring +unerringly +unerringness +unerroneous +unerudite +unerupted +uneruptive +unescaladed +unescalloped +unescapable +unescapably +unescaped +unescheated +uneschewable +uneschewably +uneschewed +unescorted +uneslo +unesoteric +unespied +unespousable +unespoused +unessayed +unessence +unessential +unestablish +unesteemed +unesthetic +unestimable +unestimably +unestimated +unestopped +unestranged +unetched +uneternal +uneternized +unethereal +unethic +unethical +unethically +unethylated +uneugenic +uneulogized +uneuphonic +uneuphonious +unevacuated +unevadable +unevaded +unevaluated +unevanescent +unevangelic +unevaporate +unevaporated +unevasive +uneven +unevenaged +unevenly +unevenness +uneventful +uneventfully +uneverted +unevicted +unevidenced +unevident +unevidential +unevil +unevinced +unevirated +unevitable +unevitably +unevokable +unevoked +unevolved +unexact +unexacted +unexactedly +unexacting +unexactingly +unexactly +unexactness +unexalted +unexaminable +unexamined +unexamining +unexampled +unexcavated +unexceedable +unexceeded +unexcelled +unexcellent +unexcelling +unexceptable +unexcepted +unexcepting +unexceptive +unexcerpted +unexcessive +unexchanged +unexcised +unexcitable +unexcited +unexciting +unexclaiming +unexcludable +unexcluded +unexcluding +unexclusive +unexcoriated +unexcrescent +unexcreted +unexculpable +unexculpably +unexculpated +unexcursive +unexcusable +unexcusably +unexcused +unexcusedly +unexcusing +unexe +unexec +unexecrated +unexecutable +unexecuted +unexecuting +unexemplary +unexempt +unexempted +unexemptible +unexempting +unexercise +unexercised +unexerted +unexhalable +unexhaled +unexhausted +unexhaustion +unexhaustive +unexhibited +unexhorted +unexhumed +unexigent +unexilable +unexiled +unexistence +unexistent +unexisting +unexonerable +unexonerated +unexorable +unexorbitant +unexorcised +unexotic +unexpandable +unexpanded +unexpanding +unexpansive +unexpectable +unexpectant +unexpected +unexpectedly +unexpecteds +unexpecting +unexpedient +unexpedited +unexpelled +unexpendable +unexpended +unexpensive +unexperience +unexperient +unexpert +unexpertly +unexpertness +unexpiable +unexpiated +unexpired +unexpiring +unexplained +unexplaining +unexplicable +unexplicably +unexplicated +unexplicit +unexplicitly +unexploded +unexploited +unexplorable +unexplored +unexplosive +unexportable +unexported +unexporting +unexposable +unexposed +unexpounded +unexpress +unexpressed +unexpressive +unexpressly +unexpugnable +unexpunged +unexpurgated +unextended +unextendedly +unextendible +unextensible +unextenuable +unextenuated +unexternal +unextinct +unextirpated +unextolled +unextortable +unextorted +unextracted +unextradited +unextraneous +unextreme +unextricable +unextricated +unextrinsic +unextruded +unexuberant +unexuded +unexultant +uneye +uneyeable +uneyed +unfabled +unfabling +unfabricated +unfabulous +unfacaded +unface +unfaceable +unfaced +unfaceted +unfacetious +unfacile +unfact +unfactional +unfactious +unfactitious +unfactorable +unfactored +unfactual +unfadable +unfaded +unfading +unfadingly +unfadingness +unfagged +unfagoted +unfailable +unfailably +unfailed +unfailing +unfailingly +unfain +unfaint +unfainting +unfaintly +unfair +unfairly +unfairminded +unfairness +unfairylike +unfaith +unfaithful +unfaithfully +unfaked +unfallacious +unfallen +unfallenness +unfallible +unfallibly +unfalling +unfallowed +unfalse +unfalsified +unfalsity +unfaltering +unfamed +unfamiliar +unfamiliarly +unfanatical +unfanciable +unfancied +unfanciful +unfancy +unfanged +unfanned +unfantastic +unfar +unfarced +unfarcical +unfarewelled +unfarmed +unfarming +unfarrowed +unfarsighted +unfasciated +unfascinate +unfascinated +unfashion +unfashioned +unfast +unfasten +unfastenable +unfastened +unfastener +unfastening +unfastidious +unfasting +unfather +unfathered +unfatherlike +unfatherly +unfathomable +unfathomably +unfathomed +unfatigue +unfatigued +unfatiguing +unfattable +unfatted +unfatten +unfauceted +unfaulty +unfavorable +unfavorably +unfavored +unfavoring +unfavorite +unfawning +unfealty +unfeared +unfearful +unfearfully +unfearing +unfearingly +unfeary +unfeasable +unfeasably +unfeasible +unfeasibly +unfeasted +unfeather +unfeathered +unfeatured +unfecund +unfecundated +unfed +unfederal +unfederated +unfeeble +unfeed +unfeedable +unfeeding +unfeeing +unfeelable +unfeeling +unfeelingly +unfeignable +unfeignably +unfeigned +unfeignedly +unfeigning +unfeigningly +unfele +unfelicitous +unfeline +unfellable +unfelled +unfellied +unfellow +unfellowed +unfellowlike +unfellowly +unfelon +unfelonious +unfelony +unfelt +unfelted +unfemale +unfeminine +unfemininely +unfemininity +unfeminist +unfeminize +unfence +unfenced +unfendered +unfeoffed +unfermented +unfermenting +unfernlike +unferocious +unferreted +unferried +unfertile +unfertility +unfertilized +unfervent +unfervid +unfester +unfestered +unfestival +unfestive +unfestively +unfestooned +unfetchable +unfetched +unfeted +unfetter +unfettered +unfettled +unfeudal +unfeudalize +unfeudalized +unfeued +unfevered +unfeverish +unfew +unfibbed +unfibbing +unfiber +unfibered +unfibrous +unfickle +unfictitious +unficyp +unfidelity +unfidgeting +unfielded +unfiend +unfiendlike +unfierce +unfiery +unfight +unfightable +unfighting +unfigurable +unfigurative +unfigured +unfilched +unfile +unfiled +unfilial +unfilially +unfilialness +unfill +unfillable +unfilled +unfilleted +unfilling +unfilm +unfilmed +unfiltered +unfiltrated +unfinable +unfinancial +unfine +unfined +unfinessed +unfingered +unfinical +unfinish +unfinishable +unfinished +unfinishedly +unfinite +unfired +unfireproof +unfiring +unfirm +unfirmly +unfirmness +unfiscal +unfishable +unfished +unfishing +unfishlike +unfissile +unfistulous +unfit +unfitly +unfitness +unfittable +unfitted +unfittedness +unfitten +unfitting +unfittingly +unfitty +unfix +unfixable +unfixated +unfixed +unfixedness +unfixing +unfixity +unflag +unflagged +unflagging +unflaggingly +unflagitious +unflagrant +unflaky +unflamboyant +unflaming +unflammable +unflanged +unflank +unflanked +unflappable +unflapping +unflashing +unflat +unflated +unflattened +unflattered +unflattering +unflaunted +unflavored +unflawed +unflayed +unflead +unflecked +unfledge +unfledged +unfleece +unfleeced +unfleeing +unfleeting +unflesh +unfleshed +unfleshly +unfleshy +unfletched +unflexed +unflexible +unflexibly +unflickering +unflighty +unflinching +unflintify +unflippant +unflitched +unfloatable +unfloating +unflock +unfloggable +unflogged +unflooded +unfloor +unfloored +unflorid +unflossy +unflounced +unfloured +unflourished +unflouted +unflower +unflowered +unflowing +unflown +unfluent +unfluid +unfluked +unflunked +unflurried +unflush +unflushed +unflustered +unfluted +unfluttered +unfluttering +unfluvial +unfluxile +unflying +unfoaled +unfoaming +unfocused +unfoggy +unfoilable +unfoiled +unfoisted +unfold +unfoldable +unfolded +unfolder +unfolding +unfoldment +unfolds +unfoldure +unfoliaged +unfoliated +unfollowable +unfollowed +unfollowing +unfomented +unfond +unfondled +unfondness +unfoodful +unfool +unfoolable +unfooled +unfooling +unfoolish +unfooted +unfootsore +unfoppish +unforaged +unforbade +unforbearing +unforbid +unforbidden +unforbidding +unforceable +unforced +unforcedly +unforcedness +unforceful +unforcible +unforcibly +unfordable +unforded +unforeboded +unforeboding +unforecasted +unforegone +unforeign +unforeknown +unforensic +unforesee +unforeseeing +unforeseen +unforeseenly +unforest +unforested +unforetold +unforewarned +unforfeit +unforfeited +unforgeable +unforged +unforget +unforgetful +unforgetting +unforgivable +unforgivably +unforgiven +unforgiver +unforgiving +unforgone +unforgot +unforgotten +unfork +unforked +unforkedness +unforlorn +unform +unformal +unformality +unformalized +unformally +unformalness +unformative +unformatted +unformed +unformidable +unformulable +unformulated +unforsaken +unforsaking +unforsook +unforsworn +unforthright +unfortified +unfortify +unfortuitous +unfortunate +unfortunates +unfortune +unforward +unforwarded +unfossilized +unfostered +unfought +unfoughten +unfoul +unfoulable +unfouled +unfound +unfounded +unfoundedly +unfoundered +unfountained +unfowllike +unfoxy +unfpa +unfractured +unfragrance +unfragrant +unfragrantly +unfrail +unframable +unframably +unframe +unframed +unfranchised +unfrank +unfrankable +unfranked +unfrankly +unfrankness +unfraternal +unfraudulent +unfraught +unfrayed +unfreckled +unfree +unfreed +unfreedom +unfreehold +unfreely +unfreeman +unfreeness +unfreezable +unfreeze +unfreezes +unfreezing +unfreighted +unfrenzied +unfrequency +unfrequent +unfrequented +unfrequently +unfret +unfretful +unfretting +unfriable +unfriarlike +unfricative +unfrictioned +unfried +unfriend +unfriended +unfriending +unfriendlike +unfriendlily +unfriendly +unfriendship +unfrighted +unfrightened +unfrightful +unfrigid +unfrill +unfrilled +unfringe +unfringed +unfrisky +unfrivolous +unfrizz +unfrizzled +unfrizzy +unfrock +unfrocked +unfroglike +unfrolicsome +unfronted +unfrost +unfrosted +unfrosty +unfrounced +unfroward +unfrowardly +unfrowning +unfroze +unfrozen +unfructed +unfructified +unfructify +unfructuous +unfrugal +unfrugally +unfrugalness +unfruitful +unfruitfully +unfruity +unfrustrable +unfrustrably +unfrustrated +unfrutuosity +unfuddled +unfueled +unfulfill +unfulfilled +unfulfilling +unfull +unfulled +unfully +unfulminated +unfulsome +unfumbled +unfumbling +unfumed +unfumigated +unfunctional +unfunded +unfunnily +unfunniness +unfunny +unfur +unfurbelowed +unfurbished +unfurcate +unfurious +unfurl +unfurlable +unfurled +unfurnish +unfurnished +unfurnitured +unfurred +unfurrow +unfurrowable +unfurrowed +unfused +unfusible +unfusibly +unfussed +unfussing +unfussy +unfutile +unfuturistic +unga +ungabled +ungag +ungaged +ungagged +ungain +ungainable +ungained +ungainful +ungainfully +ungaining +ungainlike +ungainliness +ungainly +ungainness +ungainsaid +ungainsaying +ungainsome +ungainsomely +ungaite +ungallant +ungallantly +ungalling +ungalvanized +ungamboling +ungamelike +unganged +ungangrened +ungar +ungarbed +ungarbled +ungardened +ungargled +ungarinjin +ungarinyin +ungarland +ungarlanded +ungarment +ungarmented +ungarnered +ungarnish +ungarnished +ungaro +ungarrisoned +ungarter +ungartered +ungashed +ungassed +ungastric +ungathered +ungaudy +ungauged +ungauntlet +ungauntleted +ungazetted +ungazing +ungear +ungeared +ungeheuer +ungelded +ungelt +ungeminated +ungene +ungenerable +ungeneral +ungeneraled +ungenerate +ungenerated +ungenerative +ungeneric +ungenerical +ungenerosity +ungenerous +ungenerously +ungenial +ungeniality +ungenially +ungenialness +ungenitured +ungenius +ungenteel +ungenteelly +ungentile +ungentility +ungentilize +ungentle +ungentled +ungentleman +ungentleness +ungently +ungenuine +ungenuinely +ungeodetical +ungeographic +ungeological +ungeometric +unger +ungerer +ungermann +ungerminated +ungermlike +ungerontic +ungesting +ungesturing +unget +ungettable +unghostlike +unghostly +ungiant +ungibbet +ungiddy +ungie +ungifted +ungiftedness +ungild +ungilded +ungill +ungilt +ungin +ungingled +unginned +ungird +ungirded +ungirdle +ungirdled +ungirlish +ungirt +ungirth +ungirthed +ungive +ungiveable +ungiven +ungiving +ungka +unglaciated +unglad +ungladden +ungladdened +ungladly +ungladness +ungladsome +unglamorous +unglandular +unglassed +unglaze +unglazed +ungleaned +unglee +ungleeful +unglimpsed +unglistening +unglittering +ungloating +unglobe +unglobular +ungloom +ungloomed +ungloomy +unglorified +unglorify +unglorifying +unglorious +ungloriously +unglory +unglosed +ungloss +unglossaried +unglossed +unglossily +unglossiness +unglossy +unglove +ungloved +unglowing +unglozed +unglue +unglued +unglutinate +unglutted +ungluttonous +ungnarred +ungnaw +ungnawn +ungnostic +ungo +ungoaded +ungoatlike +ungod +ungoddess +ungodlike +ungodlily +ungodliness +ungodly +ungol +ungold +ungolden +ungoliant +ungom +ungomap +ungone +ungood +ungoodliness +ungoodly +ungored +ungorge +ungorged +ungorgeous +ungorri +ungospel +ungospelized +ungospelled +ungospellike +ungossiping +ungot +ungothic +ungotten +ungouged +ungouty +ungovernable +ungovernably +ungoverned +ungoverning +ungown +ungowned +ungrace +ungraced +ungraceful +ungracefully +ungracious +ungraciously +ungradated +ungraded +ungradual +ungradually +ungraduated +ungraduating +ungraft +ungrafted +ungrain +ungrainable +ungrained +ungrammar +ungrammared +ungrammatic +ungrand +ungrantable +ungranted +ungranulated +ungraphic +ungrapple +ungrappled +ungrappler +ungrasp +ungraspable +ungrasped +ungrasping +ungrassed +ungrassy +ungrated +ungrateful +ungratefully +ungratified +ungratifying +ungrating +ungrave +ungraved +ungraveled +ungravelly +ungravely +ungraven +ungrayed +ungrazed +ungreased +ungreat +ungreatly +ungreatness +ungreeable +ungreedy +ungreen +ungreenable +ungreened +ungreeted +ungregarious +ungrieve +ungrieved +ungrieving +ungrike +ungrilled +ungrimed +ungrindable +ungrip +ungripe +ungrizzled +ungroaning +ungroined +ungroomed +ungrooved +ungropeable +ungross +ungrotesque +unground +ungroundable +ungroundably +ungrounded +ungroundedly +ungroupable +ungrouped +ungrow +ungrowing +ungrown +ungrubbed +ungrudged +ungrudging +ungrudgingly +ungruesome +ungruff +ungrumbling +ungryloike +ungu +ungual +unguaranteed +unguard +unguardable +unguarded +unguardedly +ungueal +unguent +unguentaria +unguentarium +unguentary +unguentous +unguentum +unguerdoned +ungues +unguessable +unguessed +unguical +unguicorn +unguicular +unguiculata +unguiculate +unguiculated +unguidable +unguidably +unguided +unguidedly +unguiferous +unguiform +unguiled +unguileful +unguilefully +unguiltily +unguiltiness +unguilty +unguinal +unguinous +unguirostral +unguis +unguja +ungula +ungulae +ungular +ungulata +ungulate +ungulated +unguled +unguligrade +ungull +ungulous +ungulp +ungum +ungummed +ungushing +ungutted +unguttural +unguyed +unguzzled +ungwana +ungwe +ungymnastic +ungypsylike +ungyve +ungyved +unhabit +unhabitable +unhabited +unhabitual +unhabitually +unhabituate +unhabituated +unhacked +unhackled +unhackneyed +unhad +unhaft +unhafted +unhaggled +unhaggling +unhailable +unhailed +unhair +unhaired +unhairer +unhairily +unhairiness +unhairing +unhairy +unhallooed +unhallow +unhallowed +unhaloed +unhalsed +unhalted +unhalter +unhaltered +unhalting +unhalved +unhammered +unhamper +unhampered +unhan +unhand +unhandcuff +unhandcuffed +unhandily +unhandiness +unhandled +unhandseled +unhandsome +unhandsomely +unhandy +unhang +unhanged +unhap +unhappen +unhappier +unhappiest +unhappily +unhappiness +unhappy +unharangued +unharassed +unharbor +unharbored +unhard +unharden +unhardenable +unhardened +unhardihood +unhardily +unhardiness +unhardness +unhardy +unharked +unharmable +unharmed +unharmful +unharmfully +unharming +unharmonic +unharmonical +unharmonious +unharmonize +unharmonized +unharmony +unharness +unharnessed +unharped +unharried +unharrowed +unharsh +unharvested +unhash +unhashed +unhasp +unhasped +unhaste +unhasted +unhastened +unhastily +unhastiness +unhasting +unhasty +unhat +unhatchable +unhatched +unhatcheled +unhate +unhated +unhateful +unhating +unhatingly +unhatted +unhauled +unhaunt +unhaunted +unhave +unhawked +unhayed +unhazarded +unhazarding +unhazardous +unhazed +unhcr +unhead +unheaded +unheader +unheady +unheal +unhealable +unhealably +unhealed +unhealing +unhealth +unhealthful +unhealthier +unhealthiest +unhealthily +unhealthsome +unhealthy +unheaped +unhearable +unheard +unhearing +unhearsed +unheart +unhearten +unheartsome +unhearty +unheatable +unheated +unheathen +unheaved +unheaven +unheavenly +unheavily +unheaviness +unheavy +unhectored +unhedge +unhedged +unheed +unheeded +unheededly +unheedful +unheedfully +unheeding +unheedingly +unheedy +unheeled +unheelpieced +unhefted +unheightened +unheired +unheld +unhele +unheler +unhelm +unhelmed +unhelmet +unhelmeted +unhelpable +unhelped +unhelpful +unhelpfully +unhelping +unhelved +unhemmed +unheppen +unheralded +unheraldic +unherd +unherded +unhereditary +unheretical +unheritable +unhermetic +unhero +unheroic +unheroical +unheroically +unheroism +unheroize +unherolike +unhesitant +unhesitating +unheuristic +unhewable +unhewed +unhewn +unhex +unhid +unhidable +unhidably +unhidated +unhidden +unhide +unhidebound +unhideous +unhider +unhieratic +unhigh +unhilarious +unhinderable +unhinderably +unhindered +unhindering +unhinge +unhinged +unhingement +unhinging +unhinted +unhipped +unhired +unhissed +unhistoric +unhistorical +unhistory +unhistrionic +unhit +unhitch +unhitched +unhittable +unhive +unhoard +unhoarded +unhoarding +unhoary +unhoaxed +unhobble +unhocked +unhoed +unhogged +unhoist +unhoisted +unhold +unholiday +unholier +unholiest +unholily +unholiness +unhollow +unhollowed +unholy +unhome +unhomelike +unhomeliness +unhomely +unhomish +unhomologous +unhoned +unhonest +unhonestly +unhoneyed +unhonied +unhonorable +unhonorably +unhonored +unhonoured +unhood +unhooded +unhoodwink +unhoodwinked +unhoofed +unhook +unhooked +unhoop +unhooped +unhooper +unhooted +unhoped +unhopedly +unhopedness +unhopeful +unhopefully +unhoping +unhopingly +unhopped +unhoppled +unhorizoned +unhorizontal +unhorned +unhorny +unhoroscopic +unhorse +unhorsed +unhorsing +unhose +unhosed +unhospitable +unhospitably +unhostile +unhostilely +unhostility +unhot +unhoundlike +unhouse +unhoused +unhouseled +unhouselike +unhuddle +unhugged +unhull +unhulled +unhuman +unhumanize +unhumanized +unhumanly +unhumanness +unhumble +unhumbled +unhumbleness +unhumbly +unhumbugged +unhumid +unhumiliated +unhumored +unhumorous +unhumorously +unhumoured +unhun +unhung +unhuntable +unhunted +unhurdled +unhurled +unhurried +unhurriedly +unhurrying +unhurryingly +unhurt +unhurted +unhurtful +unhurtfully +unhurting +unhusbanded +unhusbandly +unhushable +unhushed +unhushing +unhusk +unhusked +unhustled +unhustling +unhutched +unhuzzaed +unhydraulic +unhydrolyzed +unhygenic +unhygienic +unhymeneal +unhymned +unhyphenated +unhyphened +unhypnotic +unhypnotize +unhysterical +uniake +uniambic +uniambically +uniangulate +uniarticular +uniat +uniate +uniaxal +uniaxally +uniaxially +unibasal +unibe +unibi +unibielefeld +unibio +unibivalent +unible +unibracteate +unibus +unic +unicalcarate +unicameral +unicamerate +unicapsular +unicarinate +unicarinated +unicast +unice +uniced +unicef +unicell +unicellate +unicelled +unicellular +unicentral +unices +unichord +unician +uniciliate +unicism +unicist +unicity +uniclinal +unicode +unicoi +unicolor +unicolorate +unicolored +unicolorous +uniconstant +unicorn +unicorneal +unicornic +unicornlike +unicornous +unicorns +unicornuted +unicos +unicostate +unicron +unicum +unicursal +unicursality +unicursally +unicuspid +unicuspidate +unicycle +unicyclist +unidactyl +unidactyle +unidactylous +unidad +unidata +unideaed +unideal +unidealism +unidealist +unidealistic +unidealized +unidentate +unidentated +unidentified +unidextral +unidigitate +unidiomatic +unidir +unidirect +unidirected +unidirection +unidle +unidleness +unidly +unido +unidolatrous +unidolized +unidortmund +unidyllic +unie +unierlangen +unietti +uniface +unifaced +unifacial +unifactor +unifactorial +unifarious +unifiable +unific +unification +unifications +unificator +unified +unifiedly +unifiedness +unifier +unifiers +unifies +unifil +unifilar +unifloral +uniflorate +uniflorous +uniflow +uniflowered +unifocal +unifoliar +unifoliate +unifoliolate +unifolium +uniform +uniformal +uniformalize +uniformally +uniformation +uniformed +uniformist +uniformities +uniformity +uniformize +uniformless +uniformly +uniformness +uniforms +unifreiburg +unify +unifying +unigenesis +unigenetic +unigenist +unigenistic +unigenital +unigeniture +unigenous +uniglandular +uniglobular +unignitable +unignited +unignitible +unignorant +unignored +unigravida +uniguttulate +unihamburg +uniimog +unijocular +unijugate +unijugous +unikarlsruhe +unikoeln +unilabiate +unilabiated +unilamellar +unilamellate +unilaminar +unilaminate +unilateral +unilaterally +unilinear +unilingual +unilist +uniliteral +unilludedly +unillumed +unillumined +unillusioned +unillusory +unilobal +unilobar +unilobate +unilobe +unilobed +unilobular +unilocular +uniloculate +unilog +unimacular +unimaged +unimaginable +unimaginably +unimaginary +unimagine +unimagined +unimail +unimak +unimanual +unimbanked +unimbezzled +unimbibed +unimbibing +unimbittered +unimbodied +unimboldened +unimbordered +unimbosomed +unimbowed +unimbowered +unimbroiled +unimbrowned +unimbrued +unimbued +unimedial +unimelb +unimitable +unimitably +unimitated +unimitating +unimitative +unimmaculate +unimmanent +unimmediate +unimmerged +unimmergible +unimmersed +unimmolated +unimmortal +unimmovable +unimmured +unimodality +unimolecular +unimpair +unimpairable +unimpaired +unimpartable +unimparted +unimpartial +unimpatient +unimpawned +unimpeached +unimpearled +unimped +unimpeded +unimpededly +unimpedible +unimpedness +unimpelled +unimperative +unimperial +unimperious +unimpinging +unimplanted +unimplicable +unimplicate +unimplicated +unimplicit +unimplicitly +unimplied +unimplorable +unimplored +unimpoisoned +unimportance +unimportant +unimported +unimporting +unimportuned +unimposed +unimposedly +unimposing +unimpostrous +unimpounded +unimpowered +unimprecated +unimpregnate +unimpressed +unimpressive +unimprinted +unimprison +unimprisoned +unimprovable +unimprovably +unimproved +unimprovedly +unimproving +unimprovised +unimpugnable +unimpugned +unimpulsive +unimpurpled +unimputable +unimputed +unimucronate +unimultiplex +unimuscular +uninabiling +unincantoned +unincarnate +unincarnated +unincensed +uninchoative +unincidental +unincised +unincisive +unincited +uninclinable +uninclined +uninclining +uninclosed +unincludable +unincluded +uninclusive +unincreased +unincreasing +unincubated +uninculcated +unincumbered +unindebted +unindebtedly +unindentable +unindented +unindentured +unindexed +unindicable +unindicated +unindicative +unindictable +unindicted +unindigent +unindignant +unindividual +unindorsed +uninduced +uninductive +unindulged +unindulgent +unindurated +unindustrial +uninebriated +uninervate +uninerved +uninfallible +uninfatuated +uninfectable +uninfected +uninfectious +uninfeft +uninferred +uninfested +uninfinite +uninfixed +uninflamed +uninflated +uninflected +uninflicted +uninfluenced +uninfolded +uninformed +uninforming +uninfracted +uninfringed +uninfuriated +uninfused +uningenious +uningenuity +uningenuous +uningested +uningrafted +uningrained +uninhabited +uninhaled +uninherited +uninhibited +uninhibitive +uninhumed +uninimical +uniniquitous +uninitialed +uninitialled +uninitiate +uninitiated +uninitiation +uninjectable +uninjected +uninjurable +uninjured +uninjuring +uninjurious +uninked +uninlaid +uninn +uninnate +uninnocence +uninnocent +uninnocently +uninnocuous +uninnovating +uninoculable +uninoculated +uninodal +uninquired +uninquiring +uninsane +uninsatiable +uninscribed +uninserted +uninshrined +uninsinuated +uninsistent +uninsolvent +uninspected +uninspirable +uninspired +uninspiring +uninspirited +uninstal +uninstall +uninstalled +uninstaller +uninstalling +uninstanced +uninstated +uninstigated +uninstilled +uninstituted +uninstructed +uninsular +uninsulate +uninsulated +uninsultable +uninsulted +uninsulting +uninsurable +uninsured +unintegrated +unintended +unintendedly +unintensive +unintent +unintently +unintentness +uninterested +uninterlaced +uninterleave +uninterlined +unintermixed +uninterposed +uninterred +uninterwoven +uninthroned +unintialized +unintimate +unintimated +unintitled +unintombed +unintoned +unintrenched +unintricate +unintrigued +unintriguing +unintroduced +unintroitive +unintruded +unintruding +unintrusive +unintrusted +unintuitive +unintwined +uninuclear +uninucleate +uninucleated +uninundated +uninured +uninurned +uninvadable +uninvaded +uninveighing +uninveigled +uninvented +uninventful +uninventive +uninverted +uninvested +uninvidious +uninvincible +uninvite +uninvited +uninvitedly +uninviting +uninvoiced +uninvoked +uninvolved +uninweaved +uninwoven +uninwrapped +uninwreathed +unio +uniocular +unioid +uniola +unioldenburg +union +unionbridge +unioncenter +unionchurch +unioncity +uniondale +unioned +unionfurnace +uniongrove +unionhall +unionhill +unionic +unionid +unionidae +unioniform +unionism +unionist +unionistic +unionists +unionization +unionize +unionized +unionizer +unionizers +unionizes +unionizing +unionlake +unionlevel +unionmills +unionoid +unionpier +unionpoint +unionport +unions +unionsithole +unionsprings +unionstar +uniontown +unionville +uniopolis +unios +unioval +uniovular +uniovulate +unip +unipaderborn +unipara +uniparental +uniparient +uniparous +unipartite +unipassau +uniped +unipeltate +uniperiodic +unipersonal +unipetalous +uniphase +uniphaser +uniphonous +uniplanar +uniplicate +unipod +unipolarity +uniporous +unipotence +unipotent +unipotential +unipress +uniprocessor +unipulse +uniq +uniquantic +unique +uniqueid +uniquely +uniqueness +uniques +uniquity +unir +uniradial +uniradiate +uniradiated +uniradical +uniramose +uniramous +unirascible +unireme +unirenic +unirhyme +uniridescent +unironed +unironical +unirradiated +unirrigated +unirritable +unirritant +unirritated +unirritating +unisb +unisched +unisepalous +uniseptate +uniserial +uniserially +uniseriate +uniseriately +uniserrate +uniserrulate +unisexed +unisexers +unisexual +unisexuality +unisexually +unisilicate +unisoil +unisolable +unisolate +unisolated +unisolver +unisomeric +unisomorphic +unison +unisonal +unisonally +unisonance +unisonant +unisonous +unisotropic +unisparker +unispell +unispiculate +unispinose +unispiral +unissuable +unissued +unistuttgart +unistylist +unisulcate +unisys +unit +unita +unitage +unitalicized +unitar +unitarian +unitarianism +unitarianize +unitarily +unitariness +unitarism +unitarist +unitas +unite +uniteability +uniteable +uniteably +united +unitedly +unitedness +unitemized +uniter +unites +unities +uniting +unitingly +unition +unitism +unitistic +unitive +unitively +unitiveness +unitize +unitized +unitizing +unitking +unitooth +unitrivalent +unitrope +units +unitt +unitthat +unitude +unity +unityhouse +unityville +uniungulate +univ +univacs +univalence +univalency +univalvate +univalve +univalves +univalvular +univariant +univbe +univer +univera +univeral +univerbal +universal +universale +universalia +universalian +universalism +universalist +universality +universalize +universally +universals +universe +universeful +universelles +universes +universita +universitary +universitas +universite +universities +universitize +university +universitys +universology +univied +univnorthco +univocacy +univocal +univocalized +univocally +univocity +univoltine +univorous +uniwa +unix +unixb +unixbased +unixctour +unixen +unixes +unixhaters +unixism +unixlike +unixman +unixoid +unixpca +unixpcb +unixpcc +unixpcd +unixpce +unixpcf +unixpcg +unixpch +unixs +unixsupport +unixtime +unixtounix +unixware +unjacketed +unjaded +unjagged +unjailed +unjam +unjapanned +unjarred +unjarring +unjaundiced +unjaunty +unjealous +unjealoused +unjellied +unjesting +unjesuited +unjesuitical +unjewel +unjeweled +unjewelled +unjewish +unjilted +unjocose +unjocund +unjogged +unjogging +unjoin +unjoinable +unjoint +unjointed +unjointured +unjoking +unjokingly +unjolly +unjolted +unjostled +unjovial +unjovially +unjoyed +unjoyful +unjoyfully +unjoyfulness +unjoyous +unjoyously +unjoyousness +unjudgable +unjudge +unjudged +unjudgelike +unjudging +unjudicable +unjudicial +unjudicially +unjudicious +unjugged +unjuggled +unjuiced +unjuicy +unjumbled +unjumpable +unjust +unjustice +unjustified +unjustify +unjustled +unjustly +unjustness +unjuvenile +unkaiserlike +unkamed +unked +unkeeled +unkefer +unkel +unkelbach +unkembed +unkempt +unkemptly +unkemptness +unken +unkenned +unkennedness +unkennel +unkenneled +unkenning +unkensome +unkept +unkerchiefed +unket +unkey +unkeyed +unkia +unkicked +unkid +unkill +unkillable +unkilled +unkilling +unkilned +unkin +unkind +unkindled +unkindlily +unkindliness +unkindling +unkindly +unkindness +unkindred +unkindredly +unking +unkingdom +unkinged +unkinger +unkinglike +unkingly +unkink +unkinlike +unkirk +unkiss +unkissed +unkist +unkle +unkles +unknave +unkneaded +unkneeling +unknelled +unknew +unknight +unknighted +unknightlike +unknightly +unknit +unknittable +unknitted +unknitting +unknocked +unknocking +unknot +unknotted +unknotty +unknow +unknowable +unknowably +unknowen +unknowing +unknowingly +unknowlable +unknown +unknownly +unknownness +unknowns +unknownst +unkodaked +unkoshered +unlabeled +unlabelled +unlabialize +unlabiate +unlaborable +unlabored +unlaboring +unlaborious +unlace +unlaced +unlacerated +unlacing +unlackeyed +unlacquered +unlade +unladen +unladled +unladyfied +unladylike +unlagging +unlaid +unlame +unlamed +unlamented +unlampooned +unlanced +unland +unlanded +unlandmarked +unlanguaged +unlanguid +unlanterned +unlap +unlapped +unlapsed +unlapsing +unlarded +unlarge +unlash +unlashed +unlasher +unlassoed +unlasting +unlatch +unlatched +unlath +unlathed +unlathered +unlatinized +unlatticed +unlaudable +unlaudably +unlauded +unlaugh +unlaughing +unlaunched +unlaundered +unlaureled +unlaved +unlaving +unlavish +unlavished +unlaw +unlawed +unlawful +unlawfully +unlawfulness +unlawlearned +unlawlike +unlawly +unlawyered +unlawyerlike +unlay +unlayable +unleached +unlead +unleaded +unleaderly +unleaf +unleafed +unleagued +unleaguer +unleakable +unleaky +unleal +unlean +unleared +unlearn +unlearnable +unlearned +unlearnedly +unlearning +unlearnt +unleasable +unleased +unleash +unleashed +unleashes +unleashing +unleathered +unleave +unleaved +unleavenable +unleavened +unlectured +unled +unleft +unlegacied +unlegal +unlegalized +unlegally +unlegalness +unlegate +unleisured +unleisurely +unlenient +unlensed +unlent +unless +unlessened +unlessoned +unlet +unlettable +unletted +unlettered +unletteredly +unlettering +unletterlike +unlevel +unleveled +unlevelly +unlevelness +unlevied +unlevigated +unliability +unliable +unlibeled +unliberal +unliberated +unlibidinous +unlicensed +unlicentious +unlichened +unlickable +unlicked +unlid +unlidded +unlie +unlifelike +unliftable +unlifted +unlifting +unligable +unligatured +unlight +unlighted +unlightedly +unlightened +unlignified +unlikable +unlikably +unlike +unlikeable +unlikeably +unliked +unlikelier +unlikeliest +unlikelihood +unlikeliness +unlikely +unliken +unlikeness +unliking +unlimb +unlimber +unlime +unlimed +unlimit +unlimitable +unlimitably +unlimited +unlimitedly +unlimitless +unlimitted +unlimned +unlimp +unline +unlineal +unlined +unlingering +unlink +unlinked +unlinking +unlinks +unlionlike +unliquefied +unliquid +unliquidated +unliquored +unlisping +unlist +unlisted +unlistened +unlistening +unlisty +unlit +unliteral +unliterally +unliterary +unliterate +unlitigated +unlitten +unlittered +unliturgical +unliturgize +unlivable +unlivably +unlive +unliveable +unliveably +unliveliness +unlively +unliveried +unlivery +unliving +unlizardlike +unload +unloaded +unloaden +unloader +unloading +unloads +unloafing +unloanably +unloaned +unloaning +unloath +unloathed +unloathful +unloathly +unloathsome +unlobed +unlocal +unlocalize +unlocalized +unlocally +unlocated +unlock +unlockable +unlocked +unlocker +unlocking +unlocks +unlocktable +unlocomotive +unlodge +unlodged +unlofty +unlogged +unlogic +unlogical +unlogically +unlonely +unlook +unlooked +unloop +unlooped +unloosable +unloosably +unloose +unloosed +unloosen +unloosening +unloosing +unlooted +unlopped +unloquacious +unlord +unlorded +unlordly +unlosable +unlost +unlotted +unlousy +unlovable +unlovably +unlove +unloveable +unloveably +unloved +unlovelily +unloveliness +unlovely +unloverlike +unloverly +unloving +unlovingly +unlovingness +unlowered +unlowly +unloyal +unloyally +unloyalty +unlubricated +unlucent +unlucid +unluck +unluckful +unluckier +unluckiest +unluckily +unluckiness +unlucky +unlucrative +unludicrous +unluffed +unlugged +unlugubrious +unluminous +unlumped +unlunar +unlured +unlust +unlustily +unlustiness +unlustrous +unlusty +unlute +unluted +unluxated +unluxuriant +unluxurious +unlv +unlying +unlyrical +unlyrically +unlzexe +unma +unmacerated +unmachinable +unmackly +unmad +unmadded +unmaddened +unmade +unmagic +unmagical +unmagnetic +unmagnetical +unmagnetized +unmagnified +unmagnify +unmaid +unmaidenlike +unmaidenly +unmail +unmailable +unmailed +unmaimable +unmaimed +unmaintained +unmajestic +unmakable +unmake +unmaker +unmaking +unmalevolent +unmalicious +unmalignant +unmaligned +unmalleable +unmalled +unmaltable +unmalted +unmammalian +unmammonized +unman +unmanacle +unmanacled +unmanagable +unmanageable +unmanageably +unmanaged +unmancipated +unmandated +unmanducated +unmaned +unmaneged +unmanful +unmanfully +unmangled +unmaniable +unmaniac +unmaniacal +unmanicured +unmanifest +unmanifested +unmanlike +unmanlily +unmanliness +unmanly +unmanned +unmanneds +unmanner +unmannered +unmanneredly +unmannerly +unmanning +unmannish +unmanored +unmantle +unmantled +unmanumitted +unmanurable +unmanured +unmappable +unmapped +unmarbled +unmarch +unmarching +unmarginal +unmarginated +unmarine +unmaritime +unmarkable +unmarked +unmarketable +unmarketed +unmarled +unmarred +unmarriable +unmarried +unmarring +unmarry +unmarrying +unmarshaled +unmartial +unmartian +unmartyr +unmartyred +unmarvelous +unmasculine +unmashed +unmask +unmasked +unmasker +unmasking +unmasquerade +unmassacred +unmassed +unmast +unmaster +unmasterable +unmastered +unmasterful +unmasticable +unmasticated +unmatchable +unmatchably +unmatched +unmate +unmated +unmaterial +unmateriate +unmaternal +unmating +unmatronlike +unmatted +unmature +unmatured +unmaturely +unmatureness +unmaturing +unmaturity +unmauled +unmaze +unmc +unme +unmeaning +unmeaningly +unmeant +unmeasurable +unmeasurably +unmeasured +unmeasuredly +unmeated +unmechanic +unmechanical +unmechanize +unmechanized +unmedaled +unmedalled +unmeddle +unmeddled +unmeddlesome +unmeddling +unmeddlingly +unmediaeval +unmediated +unmediatized +unmedicable +unmedical +unmedicated +unmedicative +unmedicinal +unmeditated +unmeditative +unmedullated +unmeek +unmeekly +unmeekness +unmeet +unmeetable +unmeetly +unmeetness +unmelancholy +unmeliorated +unmellow +unmellowed +unmelodic +unmelodious +unmelodized +unmeltable +unmeltably +unmelted +unmeltedness +unmelting +unmember +unmemoired +unmemorable +unmemoried +unmemorized +unmenaced +unmenacing +unmendable +unmendably +unmendacious +unmended +unmenial +unmenseful +unmensurable +unmental +unmentioned +unmercantile +unmercenary +unmercerized +unmerchantly +unmerciful +unmercifully +unmercurial +unmerge +unmerged +unmeridional +unmerited +unmeritedly +unmeriting +unmerry +unmesh +unmesmeric +unmesmerize +unmesmerized +unmet +unmetaled +unmetalized +unmetalled +unmetallic +unmetaphysic +unmeted +unmetered +unmethodical +unmethodized +unmethylated +unmeticulous +unmetric +unmetrical +unmetrically +unmettle +unmew +unmewed +unmg +unmicaceous +unmicrobic +unmidwifed +unmighty +unmigrating +unmildewed +unmilitant +unmilitarily +unmilitary +unmilked +unmilled +unmillinered +unmilted +unmimicked +unminable +unminced +unmincing +unmind +unminded +unmindful +unmindfully +unminding +unmined +unmingle +unmingleable +unmingled +unmingling +unminimized +unminished +unminister +unministered +unminted +unminuted +unmiracled +unmiraculous +unmired +unmirrored +unmirthful +unmirthfully +unmiry +unmiscible +unmiserly +unmisgiving +unmisguided +unmisled +unmissable +unmissed +unmissionary +unmist +unmistakable +unmistakably +unmistakedly +unmistaken +unmistressed +unmistrusted +unmiter +unmitigable +unmitigated +unmitigative +unmittened +unmix +unmixable +unmixed +unmixedly +unmixedness +unmoaned +unmoated +unmobbed +unmobilized +unmocked +unmocking +unmockingly +unmodel +unmodeled +unmodelled +unmoderate +unmoderately +unmoderating +unmodern +unmodernity +unmodernize +unmodernized +unmodest +unmodifiable +unmodifiably +unmodified +unmodish +unmodulated +unmogip +unmoiled +unmoist +unmoisten +unmold +unmoldable +unmolded +unmoldered +unmoldering +unmoldy +unmolested +unmolestedly +unmolesting +unmollified +unmollifying +unmolten +unmomentary +unmomentous +unmonarch +unmonastic +unmonetary +unmoneyed +unmonistic +unmonitored +unmonkish +unmonkly +unmonopolize +unmonotonous +unmonumented +unmoor +unmoored +unmooted +unmopped +unmoral +unmoralist +unmorality +unmoralize +unmoralized +unmoralizing +unmorally +unmoralness +unmorbid +unmordanted +unmoribund +unmorose +unmortal +unmortared +unmortgage +unmortgaged +unmortified +unmortise +unmortised +unmossed +unmothered +unmotherly +unmotionable +unmotivated +unmotived +unmotorable +unmotorized +unmottled +unmounded +unmount +unmountable +unmounted +unmounting +unmourned +unmournful +unmourning +unmouthable +unmouthed +unmovability +unmovable +unmovably +unmoveable +unmoved +unmovedly +unmoving +unmovingly +unmovingness +unmowed +unmown +unmozify +unmucilaged +unmudded +unmuddied +unmuddle +unmuddled +unmuddy +unmuffle +unmuffled +unmulcted +unmulish +unmulled +unmullioned +unmultiplied +unmultiply +unmummied +unmummify +unmunched +unmundane +unmundified +unmunificent +unmunitioned +unmurmured +unmurmuring +unmurmurous +unmuscled +unmuscular +unmusical +unmusicality +unmusically +unmusicianly +unmusked +unmussed +unmusted +unmusterable +unmustered +unmutated +unmutation +unmuted +unmutilated +unmutinous +unmuttered +unmutual +unmutualized +unmuzzle +unmuzzled +unmuzzling +unmvax +unmyelinated +unmysterious +unmystery +unmystical +unmysticize +unmystified +unmythical +unnabbed +unnagged +unnagging +unnail +unnailed +unnaked +unnamability +unnamable +unnamably +unname +unnameable +unnameably +unnamed +unnapkined +unnapped +unnarcotic +unnarrated +unnarrow +unnation +unnational +unnative +unnatural +unnaturalism +unnaturalist +unnaturality +unnaturalize +unnaturally +unnature +unnautical +unnavigable +unnavigably +unnavigated +unneaped +unnearable +unneared +unnearly +unnearness +unneat +unneatly +unneatness +unnebulous +unneccesary +unneccessary +unnecessary +unnecessity +unneeded +unneedful +unneedfully +unneedy +unnefarious +unnegated +unneglected +unnegligent +unnegotiable +unnegotiably +unnegotiated +unnegro +unneighbored +unneighborly +unnephritic +unnepnapok +unnerve +unnerved +unnerves +unnerving +unnervous +unnest +unnestle +unnestled +unneth +unnethe +unnethes +unnethis +unnetted +unnettled +unneurotic +unneutral +unneutrally +unnew +unnewly +unnewness +unni +unnibbed +unnibbied +unnice +unnicely +unniceness +unniched +unnicked +unnickeled +unnickelled +unnicknamed +unniggard +unniggardly +unnigh +unnimbed +unnimble +unnimbleness +unnimbly +unnipped +unnithan +unnobility +unnoble +unnobleness +unnobly +unnoised +unnomadic +unnominated +unnoosed +unnormal +unnormalized +unnorthern +unnose +unnosed +unnotable +unnotched +unnoted +unnoteworthy +unnoticeable +unnoticeably +unnoticed +unnoticing +unnotified +unnotify +unnoting +unnourished +unnourishing +unnovel +unnovercal +unnucleated +unnullified +unnumber +unnumberable +unnumberably +unnumbered +unnumerical +unnumerous +unnurtured +unnutritious +unnutritive +unnuzzled +unnymphlike +unoared +unobdurate +unobedience +unobedient +unobediently +unobese +unobeyed +unobeying +unobjected +unobjective +unobligated +unobligatory +unobliged +unobliging +unobligingly +unoblivious +unobnoxious +unobscene +unobscure +unobscured +unobsequious +unobservable +unobservance +unobservant +unobserved +unobservedly +unobserving +unobsessed +unobsolete +unobstinate +unobstruct +unobstructed +unobstruent +unobtainable +unobtainably +unobtained +unobtruded +unobtruding +unobtrusive +unobtunded +unobumbrated +unobverted +unobviated +unobvious +unoc +unoccasional +unoccasioned +unoccidental +unoccluded +unoccupancy +unoccupation +unoccupied +unoccupiedly +unoccurring +unoceanic +unocular +unode +unodious +unoecumenic +unoffendable +unoffended +unoffendedly +unoffender +unoffending +unoffensive +unoffered +unoffical +unofficed +unofficered +unofficial +unofficially +unofficinal +unofficious +unoffset +unoften +unogled +unoil +unoiled +unoiling +unoily +unold +unoma +unomaha +unomened +unominous +unomitted +unomnipotent +unomniscient +unona +unonerous +unopaque +unoped +unopen +unopenable +unopened +unopening +unopenly +unopenness +unoperably +unoperated +unoperatic +unoperating +unoperative +unoperculate +unopined +unopportune +unopposable +unopposed +unopposedly +unopposite +unoppressed +unoppressive +unoppugned +unoptimized +unopulence +unopulent +unoratorial +unoratorical +unorbed +unorbital +unordain +unordainable +unordained +unorder +unorderable +unordered +unordering +unorderly +unordinarily +unordinary +unordinate +unordinately +unordnanced +unorganic +unorganical +unorganized +unoriental +unoriented +unoriginal +unoriginally +unoriginate +unoriginated +unorn +unornamental +unornamented +unornate +unornly +unorphaned +unorthodox +unorthodoxly +unorthodoxy +unosculated +unossified +unostensible +unoutgrown +unoutlawed +unoutraged +unoutspoken +unoutworn +unovercome +unoverdone +unoverdrawn +unoverhauled +unoverleaped +unoverlooked +unoverpaid +unoverruled +unovert +unovertaken +unoverthrown +unovervalued +unowed +unowing +unown +unowned +unoxidable +unoxidated +unoxidizable +unoxidized +unoxygenated +unoxygenized +unpacable +unpaced +unpacifiable +unpacific +unpacified +unpacifiedly +unpacifist +unpack +unpacked +unpacker +unpackers +unpacking +unpacks +unpadded +unpadlocked +unpagan +unpaganize +unpaged +unpaginal +unpaid +unpained +unpainful +unpaining +unpaint +unpaintable +unpaintably +unpainted +unpaintedly +unpaired +unpak +unpalatable +unpalatably +unpalatal +unpalatial +unpale +unpaled +unpalisaded +unpalisadoed +unpalled +unpalliable +unpalliated +unpalpable +unpalped +unpalsied +unpampered +unpanel +unpaneled +unpanelled +unpanged +unpanniered +unpanoplied +unpanting +unpapal +unpapaverous +unpaper +unpapered +unparaded +unparadise +unparadox +unparagoned +unparallel +unparalleled +unparalyzed +unparcel +unparceled +unparceling +unparcelled +unparcelling +unparch +unparched +unparching +unpardon +unpardonable +unpardonably +unpardoned +unpardoning +unpared +unparented +unparfit +unpargeted +unpariotic +unpark +unparked +unparking +unparodied +unparrel +unparriable +unparried +unparroted +unparrying +unparsed +unparser +unparsonic +unparsonical +unpartable +unpartably +unpartaken +unpartaking +unparted +unpartial +unpartiality +unpartially +unparticular +unpartisan +unpartizan +unpartnered +unpartook +unparty +unpass +unpassable +unpassably +unpassed +unpassing +unpassionate +unpassioned +unpassive +unpaste +unpasted +unpasting +unpastor +unpastoral +unpastured +unpatched +unpatent +unpatentable +unpatented +unpaternal +unpathed +unpathetic +unpathwayed +unpatient +unpatiently +unpatrician +unpatriotic +unpatriotism +unpatristic +unpatrolled +unpatronized +unpatted +unpatterned +unpaunch +unpaunched +unpauperized +unpausing +unpausingly +unpave +unpaved +unpavilioned +unpaving +unpawed +unpawn +unpawned +unpayable +unpayably +unpaying +unpayment +unpeace +unpeaceable +unpeaceably +unpeaceful +unpeacefully +unpealed +unpearled +unpebbled +unpeccable +unpecked +unpedantic +unpeddled +unpedestal +unpedigreed +unpeel +unpeelable +unpeeled +unpeerable +unpeered +unpeg +unpejorative +unpelagic +unpelted +unpen +unpenal +unpenalized +unpenanced +unpenciled +unpencilled +unpenetrable +unpenetrated +unpenitent +unpenitently +unpenned +unpennied +unpennoned +unpensioned +unpensioning +unpent +unpenurious +unpeople +unpeopled +unpeopling +unperceived +unperceptive +unperch +unperched +unpercipient +unpercolated +unpercussed +unperfect +unperfected +unperfectly +unperfidious +unperflated +unperforate +unperforated +unperformed +unperforming +unperfumed +unperilous +unperiodic +unperiodical +unperishable +unperishably +unperished +unperishing +unperjured +unpermanency +unpermanent +unpermeable +unpermeated +unpermissive +unpermit +unpermits +unpermitted +unpermitting +unpermixed +unpernicious +unperplex +unperplexed +unperplexing +unpersecuted +unpersonable +unpersonal +unpersonify +unperspiring +unpersuaded +unpersuasion +unpersuasive +unpertaining +unpertinent +unperturbed +unperuked +unperused +unpervaded +unperverse +unpervert +unperverted +unpervious +unpestered +unpetal +unpetitioned +unpetrified +unpetrify +unpetulant +unpharasaic +unphased +unphenomenal +unphilosophy +unphlegmatic +unphonetic +unphrasable +unphrased +unphysical +unphysically +unphysicked +unpicaresque +unpick +unpickable +unpicked +unpicketed +unpickled +unpictorial +unpicturable +unpictured +unpiece +unpieced +unpierceable +unpierced +unpiercing +unpiety +unpigmented +unpile +unpiled +unpilfered +unpillaged +unpillared +unpilled +unpilloried +unpillowed +unpiloted +unpimpled +unpin +unpinched +unpining +unpinion +unpinioned +unpinked +unpinned +unpinning +unpious +unpiped +unpiqued +unpirated +unpisted +unpitched +unpiteous +unpiteously +unpitiable +unpitiably +unpitied +unpitiedly +unpitiedness +unpitiful +unpitifully +unpitted +unpitying +unpityingly +unplacable +unplacably +unplacated +unplace +unplaced +unplacid +unplagued +unplaid +unplain +unplained +unplainly +unplainness +unplait +unplaited +unplan +unplaned +unplanished +unplank +unplanked +unplanned +unplannedly +unplant +unplantable +unplanted +unplantlike +unplashed +unplaster +unplastered +unplastic +unplat +unplated +unplatted +unplausible +unplausibly +unplayable +unplayed +unplayful +unplaying +unpleached +unpleadable +unpleaded +unpleading +unpleasable +unpleasant +unpleasantly +unpleasantry +unpleased +unpleasing +unpleasingly +unpleasure +unpleat +unpleated +unplebeian +unpledged +unplenished +unplenteous +unplentiful +unplesantly +unpliable +unpliably +unpliancy +unpliant +unpliantly +unplied +unplighted +unplodding +unplotted +unplotting +unplough +unploughed +unplow +unplowed +unplucked +unplug +unplugged +unplugging +unplumb +unplumbed +unplume +unplumed +unplummeted +unplump +unplundered +unplunge +unplunged +unpoached +unpocket +unpocketed +unpodded +unpoetic +unpoetical +unpoetically +unpoeticized +unpoetize +unpoetized +unpoignard +unpointed +unpointing +unpoise +unpoised +unpoison +unpoisonable +unpoisoned +unpoisonous +unpolarized +unpoled +unpolemical +unpoliced +unpolicied +unpolish +unpolishable +unpolished +unpolite +unpolitely +unpoliteness +unpolitic +unpolitical +unpoliticly +unpollarded +unpolled +unpollutable +unpolluted +unpollutedly +unpolluting +unpompous +unpondered +unpontifical +unpooled +unpope +unpopular +unpopularity +unpopularize +unpopularly +unpopulate +unpopulated +unpopulous +unporous +unportable +unportended +unportentous +unportioned +unportly +unportraited +unportrayed +unportuous +unposed +unposing +unpositive +unpossessed +unpossessing +unpossible +unpossibly +unposted +unpostered +unposthumous +unpostmarked +unpostponed +unpostulated +unpot +unpotted +unpouched +unpoulticed +unpounced +unpounded +unpoured +unpowdered +unpower +unpowerful +unpractical +unpractice +unpracticed +unpraisable +unpraise +unpraised +unpraiseful +unpranked +unpray +unprayable +unprayed +unprayerful +unpraying +unpreach +unpreached +unpreaching +unprecarious +unpreceded +unprecious +unprecise +unprecisely +unprecluded +unprecocious +unpredacious +unpredicable +unpredicated +unpredict +unpredicted +unpredicting +unpreened +unprefaced +unpreferable +unpreferred +unprefigured +unprefined +unprefixed +unpregnant +unprejudged +unprejudice +unprejudiced +unprelatic +unprelatical +unpreluded +unpremature +unprenticed +unprepare +unprepared +unpreparedly +unpreparing +unpresaged +unpresageful +unpresaging +unprescient +unprescinded +unprescribed +unpresented +unpreserved +unpresiding +unpressed +unpresumable +unpresumed +unpresuming +unpretended +unpretending +unprettiness +unpretty +unprevailing +unprevalent +unprevented +unpreventive +unpriceably +unpriced +unpricked +unprickled +unprickly +unpriest +unpriestlike +unpriestly +unpriggish +unprim +unprime +unprimed +unprimitive +unprimmed +unprince +unprincelike +unprincely +unprincess +unprincipal +unprinciple +unprincipled +unprint +unprintable +unprintably +unprinted +unpriority +unprismatic +unprison +unprisonable +unprisoned +unprivate +unprivileged +unprizable +unprized +unprobated +unprobed +unprobity +unprocessed +unproclaimed +unprocreant +unprocreated +unproctored +unprocurable +unprocure +unprocured +unproded +unproduced +unproducible +unproducibly +unproductive +unprofanable +unprofane +unprofaned +unprofessed +unprofessing +unproffered +unproficient +unprofit +unprofitable +unprofitably +unprofited +unprofiting +unprofound +unprofuse +unprofusely +unprogressed +unprohibited +unprojected +unprojecting +unprolific +unprolix +unprologued +unprolonged +unpromise +unpromised +unpromising +unpromotable +unpromoted +unprompted +unpromptly +unpronounce +unpronounced +unproofread +unprop +unpropagated +unpropelled +unpropense +unproper +unproperly +unproperness +unpropertied +unprophesied +unprophetic +unpropitious +unproportion +unproposed +unproposing +unpropounded +unpropped +unpropriety +unprorogued +unprosaic +unproscribed +unprosecuted +unproselyte +unproselyted +unprosodic +unprospected +unprospered +unprosperity +unprosperous +unprostitute +unprostrated +unprotect +unprotected +unprotective +unprotector +unprotestant +unprotested +unprotesting +unprotruded +unprotruding +unprotrusive +unproud +unprovable +unprovably +unproved +unprovedness +unproven +unproverbial +unprovidable +unprovide +unprovided +unprovidedly +unprovident +unprovincial +unproving +unprovision +unprovokable +unprovoke +unprovoked +unprovokedly +unprovoking +unproximity +unprudence +unprudent +unprudently +unpruned +unprying +unpsychic +unpublic +unpublicity +unpublished +unpucker +unpuckered +unpuddled +unpuffed +unpuffing +unpugilistic +unpugnacious +unpulled +unpulleyed +unpulped +unpulverable +unpulverize +unpulverized +unpulvinate +unpulvinated +unpumicated +unpummeled +unpummelled +unpumpable +unpumped +unpunched +unpunctated +unpunctual +unpunctually +unpunctuated +unpunishable +unpunishably +unpunished +unpunishedly +unpunishing +unpurchased +unpure +unpurely +unpureness +unpurgeable +unpurged +unpurifiable +unpurified +unpurifying +unpuritan +unpurled +unpurloined +unpurpled +unpurported +unpurposed +unpurposely +unpurposing +unpurse +unpursed +unpursuable +unpursued +unpursuing +unpurveyed +unpushed +unput +unputrefied +unputrid +unputtied +unpuzzle +unquadded +unquaffed +unquailed +unquailing +unquailingly +unquakerlike +unquakerly +unquaking +unqualified +unqualify +unqualifying +unqualitied +unquality +unquantified +unquarreled +unquarreling +unquarrelled +unquarried +unquartered +unquashed +unquayed +unqueen +unqueened +unqueening +unqueenlike +unqueenly +unquellable +unquelled +unquenchable +unquenchably +unquenched +unqueried +unquested +unquestioned +unquibbled +unquibbling +unquick +unquickened +unquickly +unquiescence +unquiescent +unquiet +unquietable +unquieted +unquieting +unquietly +unquietness +unquietude +unquilleted +unquilted +unquit +unquittable +unquitted +unquivered +unquivering +unquizzable +unquizzed +unquotable +unquote +unquoted +unrabbeted +unrabbinical +unraced +unrack +unracked +unracking +unradiated +unradical +unradicalize +unraffled +unraftered +unraided +unrailed +unrailroaded +unrailwayed +unrainy +unraised +unrake +unraked +unraking +unrallied +unram +unrambling +unramified +unrammed +unramped +unranched +unrancid +unrancored +unrandom +unrank +unranked +unransacked +unransomable +unransomed +unrapacious +unraped +unraptured +unrar +unrare +unrarefied +unrash +unrasped +unratable +unrated +unratified +unrational +unrattled +unravaged +unravel +unravelable +unraveled +unraveler +unraveling +unravellable +unravelled +unraveller +unravelling +unravelment +unravels +unraving +unravished +unravishing +unray +unrayed +unrazed +unrazored +unreachable +unreachably +unreached +unreactive +unread +unreadable +unreadably +unreadily +unreadiness +unready +unreal +unrealism +unrealist +unrealistic +unrealities +unreality +unrealizable +unrealize +unrealized +unrealizing +unreally +unrealmed +unrealness +unreaped +unreared +unreason +unreasonable +unreasonably +unreasoned +unreasoning +unreassuring +unreave +unreaving +unrebated +unrebel +unrebellious +unrebuffable +unrebuffably +unrebuilt +unrebukable +unrebukably +unrebuked +unrebuttable +unrebutted +unrecallable +unrecallably +unrecalled +unrecalling +unrecantable +unrecanted +unrecaptured +unreceding +unreceipted +unreceivable +unreceived +unreceiving +unrecent +unreceptant +unreceptive +unreciprocal +unrecited +unrecked +unrecking +unreckon +unreckonable +unreckoned +unreclaimed +unreclaiming +unreclined +unreclining +unrecoded +unrecognized +unrecoined +unreconciled +unrecondite +unreconfuted +unrecordable +unrecorded +unrecording +unrecounted +unrecovered +unrecreant +unrecreated +unrecreating +unrecruited +unrectified +unrecumbent +unrecurrent +unrecurring +unrecusant +unred +unredacted +unredeemable +unredeemably +unredeemed +unredeemedly +unredeeming +unredressed +unreduceable +unreduced +unreducible +unreducibly +unreduct +unreefed +unreel +unreelable +unreeled +unreeling +unreeve +unreeving +unreferenced +unreferred +unrefilled +unrefine +unrefined +unrefinedly +unrefinement +unrefining +unrefitted +unreflected +unreflecting +unreflective +unreformable +unreformed +unreforming +unrefracted +unrefracting +unrefrained +unrefraining +unrefreshed +unrefreshful +unrefreshing +unrefulgent +unrefunded +unrefunding +unrefusable +unrefusably +unrefused +unrefusing +unrefusingly +unrefutable +unrefuted +unrefuting +unreg +unregainable +unregained +unregal +unregaled +unregality +unregally +unregard +unregardable +unregardant +unregarded +unregardedly +unregardful +unregeneracy +unregenerate +unregimented +unregist +unregistered +unregistred +unregressive +unregretful +unregretted +unregretting +unregular +unregulated +unregulative +unrehearsed +unrehearsing +unreigning +unreimbodied +unrein +unreined +unreinstated +unreiterable +unreiterated +unrejectable +unrejoiced +unrejoicing +unrelapsing +unrelated +unrelating +unrelational +unrelative +unrelatively +unrelaxable +unrelaxed +unrelaxing +unrelaxingly +unreleasable +unreleased +unreleasing +unrelegated +unrelentance +unrelented +unrelenting +unrelentor +unrelevant +unreliable +unreliably +unreliance +unrelievable +unrelieved +unrelievedly +unreligion +unreligioned +unreligious +unrelishable +unrelished +unrelishing +unreluctant +unremaining +unremanded +unremarkable +unremarked +unremarried +unremediable +unremedied +unremember +unremembered +unreminded +unremissible +unremittable +unremitted +unremittedly +unremittent +unremitting +unremorseful +unremote +unremotely +unremounted +unremovable +unremovably +unremoved +unrenderable +unrendered +unrenewable +unrenewed +unrenounced +unrenouncing +unrenovated +unrenowned +unrenownedly +unrent +unrentable +unrented +unrepaid +unrepair +unrepairable +unrepaired +unrepartable +unreparted +unrepealable +unrepealably +unrepealed +unrepeatable +unrepeated +unrepellable +unrepelled +unrepellent +unrepent +unrepentable +unrepentance +unrepentant +unrepented +unrepenting +unrepetitive +unrepined +unrepining +unrepiningly +unrepiqued +unreplaced +unreplevined +unrepliable +unrepliably +unreplied +unreplying +unreportable +unreported +unreportedly +unrepose +unreposed +unreposeful +unreposing +unrepressed +unreprieved +unreprinted +unreproached +unreprobated +unreprovable +unreprovably +unreproved +unreprovedly +unreproving +unrepublican +unrepudiable +unrepudiated +unrepugnant +unrepulsable +unrepulsed +unrepulsing +unrepulsive +unreputable +unreputed +unrequested +unrequired +unrequisite +unrequitable +unrequital +unrequited +unrequitedly +unrequiter +unrequiting +unrescinded +unrescued +unresemblant +unresembling +unresented +unresentful +unresenting +unreserve +unreserved +unreservedly +unresifted +unresigned +unresistable +unresistably +unresistance +unresistant +unresisted +unresistedly +unresistible +unresistibly +unresisting +unresolute +unresolvable +unresolve +unresolved +unresolvedly +unresolving +unresonant +unresounded +unresounding +unrespect +unrespected +unrespectful +unrespective +unrespirable +unrespired +unrespited +unresponding +unresponsive +unrest +unrestable +unrested +unrestful +unrestfully +unresting +unrestingly +unrestorable +unrestored +unrestrained +unrestraint +unrestricted +unresty +unresultive +unresumed +unresumptive +unretainable +unretained +unretaliated +unretardable +unretarded +unretentive +unreticent +unretinued +unretired +unretiring +unretorted +unretouched +unretracted +unretreating +unretrenched +unretrieved +unretted +unreturnable +unreturnably +unreturned +unreturning +unrevealable +unrevealed +unrevealing +unrevenged +unrevengeful +unrevenging +unrevenue +unrevenued +unrevered +unreverence +unreverenced +unreverend +unreverendly +unreverent +unreverently +unreversable +unreversed +unreversible +unreverted +unrevertible +unreverting +unrevested +unrevetted +unreviewable +unreviewed +unreviled +unrevised +unrevivable +unrevived +unrevocable +unrevocably +unrevoked +unrevolted +unrevolting +unrevolved +unrevolving +unrewardable +unrewarded +unrewardedly +unrewarding +unreworded +unrhetorical +unrhyme +unrhymed +unrhythmic +unrhythmical +unribbed +unribboned +unrich +unriched +unricht +unricked +unrid +unridable +unridably +unridden +unriddle +unriddleable +unriddled +unriddler +unriddling +unride +unridely +unridered +unridged +unridiculed +unridiculous +unrife +unriffled +unrifled +unrifted +unrig +unrigged +unrigging +unright +unrightable +unrighted +unrighteous +unrightful +unrightfully +unrightly +unrightwise +unrigid +unrigorous +unrimpled +unrind +unring +unringable +unringed +unringing +unrinsed +unrioted +unrioting +unriotous +unrip +unripe +unriped +unripely +unripened +unripeness +unripening +unrippable +unripped +unripping +unrippled +unrippling +unripplingly +unrisd +unrisen +unrising +unriskable +unrisked +unrisky +unritual +unrivalable +unrivaled +unrivaledly +unrivalled +unrived +unriven +unrivet +unriveted +unriveting +unroaded +unroadworthy +unroaming +unroast +unroasted +unrobbed +unrobe +unrobed +unrobust +unrocked +unrococo +unrodded +unroiled +unroll +unrollable +unrolled +unroller +unrolling +unrollment +unrolls +unromantic +unromantical +unroof +unroofed +unroofing +unroomy +unroost +unroosted +unroosting +unroot +unrooted +unrooting +unrope +unroped +unrosed +unrosined +unrostrated +unrotated +unrotating +unroted +unrotted +unrotten +unrotund +unrouged +unrough +unroughened +unround +unrounded +unrounding +unrousable +unroused +unroutable +unrouted +unrove +unroved +unroving +unrow +unrowed +unroweled +unroyal +unroyalist +unroyalized +unroyally +unroyalness +unrra +unrubbed +unrubbish +unrubified +unrubrical +unrubricated +unruddered +unruddled +unrueful +unruffable +unruffed +unruffle +unruffled +unruffling +unrugged +unruh +unruinable +unruinated +unruined +unrulable +unrule +unruled +unruledly +unruledness +unruleful +unrulier +unruliest +unrulily +unruliness +unruly +unruminated +unruminating +unrummaged +unrumored +unrumple +unrumpled +unrun +unrung +unruptured +unrural +unrushed +unrussian +unrust +unrusted +unrustic +unrusticated +unrustling +unruth +unrvax +unrwa +unsabbatical +unsabered +unsabled +unsabred +unsaccharic +unsacerdotal +unsack +unsacked +unsacred +unsacredly +unsacrificed +unsad +unsadden +unsaddened +unsaddle +unsaddled +unsaddling +unsafe +unsafely +unsafeness +unsafety +unsagacious +unsage +unsagging +unsaid +unsailable +unsailed +unsailorlike +unsaint +unsainted +unsaintlike +unsaintly +unsalability +unsalable +unsalably +unsalaried +unsaline +unsalivated +unsallying +unsalmonlike +unsalt +unsaltable +unsaltatory +unsalted +unsalubrious +unsalutary +unsaluted +unsaluting +unsalvable +unsalvaged +unsalved +unsampled +unsanctified +unsanctify +unsanction +unsanctioned +unsanctitude +unsanctity +unsandaled +unsanded +unsane +unsanguinary +unsanguine +unsanguinely +unsanitary +unsanitated +unsanitation +unsanity +unsaponified +unsapped +unsappy +unsarcastic +unsardonic +unsartorial +unsash +unsashed +unsatable +unsatanic +unsated +unsatedly +unsatedness +unsatiable +unsatiably +unsatiate +unsatiated +unsatiating +unsatin +unsatire +unsatirical +unsatirize +unsatirized +unsatisfied +unsatisfying +unsaturable +unsaturated +unsaturation +unsatyrlike +unsauced +unsaurian +unsavable +unsaveable +unsaved +unsaving +unsavored +unsavoredly +unsavorily +unsavoriness +unsavory +unsavoury +unsawed +unsawn +unsay +unsayability +unsayable +unsaying +unscabbard +unscabbarded +unscabbed +unscaffolded +unscalable +unscalably +unscale +unscaled +unscaledness +unscalloped +unscaly +unscamped +unscandalize +unscandalous +unscannable +unscanned +unscanted +unscanty +unscarb +unscarce +unscared +unscarfed +unscarified +unscarred +unscathed +unscathedly +unscattered +unscenic +unscent +unscented +unscepter +unsceptered +unsceptical +unsceptre +unsceptred +unscheduled +unschematic +unscholar +unscholarly +unscholastic +unschool +unschooled +unschooledly +unscienced +unscientific +unscioned +unscissored +unscoffed +unscoffing +unscolded +unsconced +unscooped +unscorched +unscored +unscorified +unscoring +unscorned +unscornful +unscornfully +unscotch +unscotched +unscottify +unscoured +unscourged +unscowling +unscramble +unscrambled +unscrambling +unscraped +unscratched +unscratching +unscrawled +unscreen +unscreenable +unscreenably +unscreened +unscrew +unscrewable +unscrewed +unscrewing +unscribal +unscribbled +unscribed +unscrimped +unscriptural +unscrubbed +unscrupled +unscrupulous +unscrutable +unsculptural +unsculptured +unscummed +unseafaring +unseal +unsealable +unsealed +unsealer +unsealing +unseam +unseamanlike +unseamanship +unseamed +unseaming +unsearchable +unsearchably +unsearched +unsearching +unseared +unseason +unseasonable +unseasonably +unseasoned +unseat +unseated +unseaworthy +unseceding +unsecluded +unseclusive +unseconded +unsecrecy +unsecret +unsecreted +unsecreting +unsecretly +unsecretness +unsectarian +unsectional +unsecular +unsecularize +unsecure +unsecured +unsecuredly +unsecurely +unsecureness +unsecurity +unsedate +unsedentary +unseditious +unseduce +unseduced +unseducible +unseductive +unsedulous +unsee +unseeable +unseeded +unseeing +unseeingly +unseeking +unseeming +unseemingly +unseemlily +unseemliness +unseemly +unseen +unseethed +unsegmented +unsegmentic +unsegregable +unsegregated +unseignorial +unseismic +unseizable +unseized +unseldom +unselect +unselected +unselecting +unselective +unself +unselfish +unselfishly +unselflike +unselfness +unselling +unsenatorial +unsenescent +unsense +unsensed +unsensible +unsensibly +unsensitive +unsensitize +unsensitized +unsensory +unsensual +unsensualize +unsensually +unsensuous +unsent +unsentenced +unsentient +unsentineled +unseparable +unseparably +unseparate +unseparated +unseptate +unseptated +unsepulcher +unsepulchral +unsepulchre +unsepulchred +unsepultured +unsequenced +unsequential +unseraphical +unserdeutsch +unsere +unserenaded +unserene +unserflike +unserious +unserrated +unserried +unservable +unserved +unservile +unsessile +unset +unsetenv +unseth +unsetting +unsettle +unsettleable +unsettled +unsettlement +unsettling +unsetup +unseverable +unsevere +unsevered +unseveredly +unsew +unsewed +unsewered +unsewing +unsewn +unsex +unsexed +unsexing +unsexlike +unsexual +unshackle +unshackled +unshackling +unshade +unshaded +unshadow +unshadowable +unshadowed +unshadowing +unshady +unshafted +unshakable +unshakably +unshakeable +unshakeably +unshaken +unshakenly +unshakenness +unshaking +unshaled +unshamable +unshamably +unshameable +unshameably +unshamed +unshamefaced +unshameful +unshamefully +unshammed +unshanked +unshapable +unshape +unshapeable +unshaped +unshapedness +unshapely +unshapen +unshapenly +unshapenness +unsharable +unshared +unsharedness +unsharing +unsharp +unsharped +unsharpen +unsharpened +unsharpening +unsharping +unshattered +unshavable +unshaveable +unshaved +unshavedly +unshavedness +unshaven +unshavenly +unshavenness +unshawl +unsheaf +unsheared +unsheathe +unsheathed +unsheathing +unshed +unsheet +unsheeted +unsheeting +unshell +unshelled +unshelling +unsheltered +unsheltering +unshelve +unshepherded +unsheriff +unshewed +unshieldable +unshielded +unshielding +unshiftable +unshifted +unshiftiness +unshifting +unshifty +unshimmering +unshingled +unshining +unship +unshiplike +unshipment +unshipped +unshipping +unshipshape +unshirking +unshirted +unshivered +unshivering +unshockable +unshocked +unshod +unshodden +unshoe +unshoed +unshoeing +unshoi +unshop +unshore +unshored +unshorn +unshort +unshortened +unshot +unshotted +unshoulder +unshouted +unshouting +unshoved +unshoveled +unshowable +unshowed +unshown +unshowy +unshredded +unshrew +unshrewd +unshrewish +unshrill +unshrine +unshrined +unshrinement +unshrink +unshrinkable +unshrinker +unshrinking +unshrived +unshriveled +unshrivelled +unshriven +unshroud +unshrouded +unshrubbed +unshrugging +unshrunk +unshrunken +unshuddering +unshuffle +unshuffled +unshunnable +unshunned +unshunted +unshut +unshutter +unshuttered +unshy +unshyly +unshyness +unsi +unsibilant +unsiccated +unsick +unsickened +unsicker +unsickerly +unsickerness +unsickled +unsickly +unsided +unsiding +unsiege +unsifted +unsighing +unsight +unsightable +unsighted +unsighting +unsightless +unsightly +unsigmatic +unsignable +unsignaled +unsignalized +unsignalled +unsignatured +unsigned +unsigneted +unsignified +unsignifying +unsilenced +unsilent +unsilentious +unsilently +unsilicified +unsilly +unsilvered +unsimilar +unsimilarity +unsimilarly +unsimple +unsimplicity +unsimplified +unsimplify +unsimulated +unsin +unsincere +unsincerely +unsincerity +unsinew +unsinewed +unsinewing +unsinewy +unsinful +unsinfully +unsinfulness +unsing +unsingable +unsinged +unsingle +unsingled +unsingleness +unsingular +unsinister +unsinkable +unsinking +unsinnable +unsinning +unsiphon +unsipped +unsister +unsistered +unsisterly +unsizable +unsizeable +unsized +unskaithd +unskeptical +unsketchable +unsketched +unskewed +unskewered +unskilful +unskilfully +unskilled +unskilledly +unskillful +unskillfully +unskimmed +unskin +unskinned +unskirted +unslack +unslacked +unslackened +unslackening +unslacking +unslagged +unslain +unslakable +unslakeable +unslaked +unslammed +unslandered +unslanderous +unslapped +unslashed +unslate +unslated +unslating +unslave +unslayable +unsleaved +unsleek +unsleepably +unsleeping +unsleepingly +unsleepy +unsleeve +unsleeved +unslender +unslept +unsliced +unsliding +unslighted +unsling +unslip +unslipped +unslippery +unslipping +unslit +unslockened +unsloped +unslopped +unslot +unslothful +unslothfully +unslotted +unsloughed +unsloughing +unslow +unsluggish +unsluice +unsluiced +unslumbering +unslumberous +unslumbrous +unslung +unslurred +unsly +unsmacked +unsmart +unsmartly +unsmartness +unsmeared +unsmelled +unsmelling +unsmelted +unsmiled +unsmiling +unsmilingly +unsmirched +unsmirking +unsmitten +unsmokable +unsmokeable +unsmoked +unsmokified +unsmoking +unsmoky +unsmooth +unsmoothed +unsmoothly +unsmoothness +unsmote +unsmothered +unsmudged +unsmuggled +unsmutched +unsmutted +unsmutty +unsnaffled +unsnagged +unsnaggled +unsnaky +unsnap +unsnapped +unsnapping +unsnare +unsnared +unsnarl +unsnatch +unsnatched +unsneck +unsneering +unsnib +unsnipped +unsnobbish +unsnoring +unsnouted +unsnow +unsnubbable +unsnubbed +unsnuffed +unsoaked +unsoaped +unsoarable +unsober +unsoberly +unsoberness +unsobriety +unsociable +unsociably +unsocial +unsocialism +unsociality +unsocialized +unsocially +unsocialness +unsocket +unsodden +unsoeld +unsoft +unsoftened +unsoftening +unsoggy +unsoil +unsoiled +unsoiledness +unsolaced +unsolacing +unsolar +unsold +unsolder +unsoldered +unsoldering +unsoldier +unsoldiered +unsoldierly +unsole +unsoled +unsolemn +unsolemness +unsolemnize +unsolemnized +unsolemnly +unsolicited +unsolicitous +unsolid +unsolidarity +unsolidified +unsolidity +unsolidly +unsolidness +unsolitary +unsolubility +unsoluble +unsolvable +unsolvably +unsolved +unsomatic +unsomber +unsombre +unsome +unson +unsonable +unsonant +unsonlike +unsonneted +unsonorous +unsonsy +unsoothable +unsoothed +unsoothfast +unsoothing +unsooty +unsophomoric +unsordid +unsore +unsorrowed +unsorrowing +unsorry +unsort +unsortable +unsorted +unsorting +unsotted +unsought +unsoul +unsoulful +unsoulfully +unsoulish +unsound +unsoundable +unsounded +unsounding +unsoundly +unsoundness +unsour +unsoured +unsoused +unsovereign +unsowed +unsown +unsoy +unsp +unspaced +unspacious +unspaded +unspan +unspangled +unspanked +unspanned +unspar +unsparable +unspared +unsparing +unsparingly +unsparkling +unsparred +unsparse +unspatial +unspatiality +unspattered +unspawned +unspayed +unspeak +unspeakable +unspeakably +unspeaking +unspeared +unspecific +unspecified +unspecious +unspecked +unspeckled +unspectacled +unsped +unspeed +unspeedy +unspeered +unspell +unspellable +unspelled +unspelt +unspendable +unspending +unspent +unspewed +unsphere +unsphered +unsphering +unspiable +unspiced +unspicy +unspied +unspike +unspillable +unspin +unspiral +unspired +unspirit +unspirited +unspiritedly +unspiriting +unspiritual +unspissated +unspit +unspited +unspiteful +unspitted +unsplashed +unsplattered +unsplayed +unspleened +unspleenish +unsplendid +unspliced +unsplinted +unsplintered +unsplit +unspoil +unspoilable +unspoilably +unspoiled +unspoken +unspokenly +unsponged +unspongy +unsponsored +unspookish +unsported +unsportful +unsporting +unsportive +unspot +unspottable +unspotted +unspottedly +unspoused +unspouselike +unspouted +unsprained +unsprayed +unspread +unsprightly +unspring +unspringing +unspringlike +unsprinkled +unsprouted +unsproutful +unsprouting +unspruced +unsprung +unspun +unspurned +unspurred +unspying +unsquandered +unsquarable +unsquare +unsquared +unsquashed +unsqueamish +unsqueezable +unsqueezed +unsquelched +unsquinting +unsquire +unsquired +unsquirelike +unsquirted +unstabbed +unstability +unstable +unstabled +unstableness +unstablished +unstably +unstack +unstacked +unstacker +unstaffed +unstaged +unstaggered +unstaggering +unstagnating +unstagy +unstaid +unstaidly +unstaidness +unstain +unstainable +unstained +unstainedly +unstaled +unstalked +unstalled +unstammering +unstamped +unstampeded +unstanch +unstanchable +unstandard +unstanzaic +unstar +unstarch +unstarched +unstarlike +unstarred +unstarted +unstarting +unstartled +unstarved +unstatable +unstate +unstateable +unstated +unstately +unstatic +unstating +unstation +unstationary +unstationed +unstatistic +unstatued +unstatuesque +unstatutable +unstatutably +unstaunch +unstaunched +unstavable +unstaveable +unstaved +unstayable +unstayed +unstayedness +unstaying +unsteadfast +unsteadied +unsteadier +unsteadily +unsteadiness +unsteady +unsteadying +unstealthy +unsteamed +unsteaming +unsteck +unstecked +unsteel +unsteeled +unsteep +unsteeped +unsteepled +unsteered +unstemmable +unstemmed +unstentorian +unstep +unsterbiche +unsterbliche +unsterile +unsterilized +unstern +unstewed +unstick +unsticking +unsticky +unstiffen +unstiffened +unstifled +unstill +unstilled +unstillness +unstilted +unstimulated +unsting +unstinged +unstinging +unstinted +unstintedly +unstinting +unstintingly +unstippled +unstipulated +unstirrable +unstirred +unstirring +unstitch +unstitched +unstitching +unstock +unstocked +unstocking +unstockinged +unstoic +unstoical +unstoically +unstoicize +unstoked +unstoken +unstolen +unstonable +unstone +unstoned +unstoniness +unstony +unstooping +unstop +unstoppable +unstopped +unstopper +unstoppered +unstopping +unstopple +unstore +unstored +unstoried +unstormed +unstormy +unstout +unstoved +unstow +unstowed +unstraddled +unstrafed +unstraight +unstrain +unstrained +unstraitened +unstrand +unstranded +unstrange +unstrangered +unstrangled +unstrap +unstrapped +unstrapping +unstrategic +unstratified +unstraying +unstreaked +unstrength +unstrengthen +unstrenuous +unstressed +unstressedly +unstretch +unstretched +unstrewed +unstrewn +unstriated +unstricken +unstrictured +unstridulous +unstrike +unstriking +unstring +unstringed +unstringing +unstrip +unstriped +unstripped +unstriving +unstroked +unstrong +unstruck +unstructural +unstructured +unstruggling +unstrung +unstubbed +unstubborn +unstuccoed +unstuck +unstudded +unstudied +unstudious +unstuff +unstuffed +unstuffing +unstultified +unstumbling +unstung +unstunned +unstunted +unstupefied +unstupid +unstuttered +unstuttering +unsty +unstyled +unstylish +unstylishly +unsubdivided +unsubduable +unsubduably +unsubducted +unsubdued +unsubduedly +unsubject +unsubjected +unsubjection +unsubjective +unsubjugate +unsubjugated +unsublimable +unsublimated +unsublimed +unsubmerged +unsubmerging +unsubmission +unsubmissive +unsubmitted +unsubmitting +unsuborned +unsubpoenaed +unsubscribed +unsubsided +unsubsidiary +unsubsiding +unsubsidized +unsubstanced +unsubtle +unsubtleness +unsubtlety +unsubtly +unsubtracted +unsubversive +unsubverted +unsubvertive +unsucceeded +unsucceeding +unsuccess +unsuccessful +unsuccessive +unsuccinct +unsuccorable +unsuccored +unsucculent +unsuccumbing +unsucked +unsuckled +unsued +unsufferable +unsufferably +unsuffered +unsuffering +unsufficed +unsufficient +unsufficing +unsufflated +unsuffocate +unsuffocated +unsuffused +unsugared +unsugary +unsuggested +unsuggestive +unsuit +unsuitable +unsuitably +unsuited +unsuiting +unsuiy +unsulky +unsullen +unsulliable +unsullied +unsulliedly +unsultry +unsummable +unsummarized +unsummed +unsummered +unsummerlike +unsummerly +unsummonable +unsummoned +unsumptuary +unsumptuous +unsun +unsunburned +unsundered +unsung +unsunk +unsunken +unsunned +unsunny +unsuperable +unsuperior +unsuperseded +unsupervised +unsupped +unsupplanted +unsupple +unsuppled +unsuppliable +unsupplied +unsupported +unsupporting +unsupposable +unsupposed +unsuppressed +unsuppurated +unsupreme +unsurcharge +unsurcharged +unsure +unsurfaced +unsurfeited +unsurfeiting +unsurgical +unsurging +unsurmised +unsurmising +unsurmounted +unsurnamed +unsurp +unsurpassed +unsurpation +unsurplice +unsurpliced +unsurprised +unsurprising +unsurrounded +unsurveyable +unsurveyed +unsurvived +unsurviving +unsusceptive +unsuspected +unsuspectful +unsuspecting +unsuspective +unsuspended +unsuspicion +unsuspicious +unsustained +unsustaining +unsutured +unsvax +unswabbed +unswaddle +unswaddled +unswaddling +unswallowed +unswanlike +unswapped +unswarming +unswathable +unswathe +unswathed +unswathing +unswayable +unswayed +unswayedness +unswaying +unswear +unswearing +unsweat +unsweated +unsweating +unsweepable +unsweet +unsweeten +unsweetened +unsweetly +unsweetness +unswell +unswelled +unswelling +unsweltered +unswept +unswervable +unswerved +unswerving +unswervingly +unswilled +unswing +unswingled +unswitched +unswivel +unswizzling +unswollen +unswooning +unsworn +unswung +unsye +unsyllabic +unsyllabled +unsymbolic +unsymbolical +unsymbolized +unsymmetric +unsymmetry +unsympathy +unsyncopated +unsyndicated +unsynonymous +unsynthetic +unsyringed +unsystematic +untabled +untabulated +untack +untacked +untacking +untackle +untackled +untactful +untactfully +untag +untagged +untailed +untailorlike +untailorly +untaint +untaintable +untainted +untaintedly +untainting +untakable +untakeable +untaken +untaking +untalented +untalkative +untalked +untalking +untall +untallied +untallowed +untamable +untame +untamed +untamedly +untamedness +untamely +untameness +untampered +untangential +untangible +untangibly +untangle +untangled +untangling +untanned +untantalized +untap +untaped +untapered +untapering +untapestried +untappable +untapped +untar +untarai +untarnished +untarred +untarried +untarrying +untartarized +untasked +untasseled +untastable +untaste +untasteable +untasted +untasteful +untastefully +untasting +untasty +untattered +untattooed +untaught +untaughtness +untaunted +untaut +untawdry +untawed +untax +untaxable +untaxed +untaxing +untccs +unteach +unteachable +unteachably +unteaching +unteam +unteamed +unteaming +untearable +unteased +unteasled +untechnical +untedded +untedious +unteem +unteeming +unteethed +untell +untellable +untellably +untelling +untemper +untemperate +untempered +untempering +untempested +untempled +untemporal +untemporary +untemptable +untemptably +untempted +untemptible +untemptibly +untempting +untemptingly +untenability +untenable +untenably +untenacious +untenacity +untenant +untenantable +untenanted +untended +untender +untendered +untenderly +untenderness +untenible +untenibly +untense +untent +untented +untentered +untenty +unter +unterkirchen +unterminable +unterminably +unterminated +unterofficer +unterraced +unterrible +unterribly +unterrific +unterrified +unterrifying +unterrorized +unterstuetzt +unterstuezt +unterwelt +untestable +untested +untestifying +untether +untethered +untethering +untewed +untextual +untg +untgz +unthank +unthanked +unthankful +unthankfully +unthanking +unthatch +unthatched +unthaw +unthawed +unthawing +untheatric +untheatrical +untheistic +unthematic +untheologize +untheoretic +unthick +unthicken +unthickened +unthievish +unthink +unthinkable +unthinkably +unthinker +unthinking +unthinkingly +unthinned +unthinning +unthirsting +unthirsty +unthistle +untholeable +untholeably +unthorn +unthorny +unthorough +unthought +unthoughted +unthoughtful +unthrall +unthralled +unthrashed +unthread +unthreadable +unthreaded +unthreading +unthreatened +unthreshed +unthrid +unthridden +unthrift +unthriftily +unthriftlike +unthrifty +unthrilled +unthrilling +unthriven +unthriving +unthrivingly +unthrob +unthrone +unthroned +unthronged +unthroning +unthrottled +unthrowable +unthrown +unthrushlike +unthrust +unthumbed +unthumped +unthundered +unthwacked +unthwarted +untiaraed +untib +unticketed +untickled +untidal +untidier +untidiest +untidily +untidiness +untidy +untie +untied +untieing +unties +untight +untighten +untightness +until +untile +untiled +untill +untillable +untilled +untilling +untilt +untilted +untilting +untimbered +untimed +untimedness +untimeliness +untimely +untimeous +untimeously +untimesome +untimorous +untin +untinct +untinctured +untine +untinged +untinkered +untinned +untinseled +untinted +untippable +untipped +untippled +untipt +untirability +untirable +untire +untired +untiredly +untiring +untiringly +untissued +untithable +untithed +untitled +untittering +untitular +untm +unto +untoadying +untoasted +untogaed +untoggle +untoggler +untoiled +untoileted +untoiling +untold +untolerable +untolerably +untolerated +untomb +untombed +untonality +untone +untoned +untongued +untonsured +untooled +untooth +untoothed +untoothsome +untop +untopped +untopping +untormented +untorn +untorpedoed +untorpid +untorrid +untortuous +untorture +untortured +untossed +untotaled +untotalled +untottering +untouch +untouchable +untouchables +untouchably +untouched +untouching +untough +untoured +untouristed +untoward +untowardly +untowardness +untowered +untown +untownlike +untrace +untraceable +untraceably +untraced +untracer +untraceried +untracked +untractable +untractably +untractarian +untractible +untradeable +untraded +untrading +untraduced +untrafficked +untragic +untragical +untrailed +untrain +untrainable +untrained +untrainedly +untraitored +untraitorous +untrammed +untrammeled +untramped +untrampled +untrance +untranquil +untransacted +untransfixed +untransfused +untransient +untransitive +untransitory +untranslated +untransmuted +untranspired +untransposed +untrappable +untrapped +untrashed +untravelable +untraveled +untraveling +untravelling +untraversed +untravestied +untread +untreadable +untreading +untreasure +untreasured +untreatable +untreatably +untreated +untreed +untrekked +untrellised +untrembling +untremendous +untremulous +untrenched +untrepanned +untrespassed +untress +untressed +untriable +untrial +untribal +untributary +untriced +untrickable +untricked +untried +untrifling +untrig +untrill +untrim +untrimmable +untrimmed +untripe +untrippable +untripped +untripping +untrite +untriturated +untriumphant +untriumphed +untrochaic +untrod +untrodden +untrolled +untrophied +untropical +untrotted +untroublable +untrouble +untroubled +untroubledly +untrounced +untrowed +untruant +untruck +untruckled +untruckling +untrue +untrueness +untruism +untruly +untrumped +untrumpeted +untrumping +untrundled +untrunked +untruss +untrussed +untrusser +untrussing +untrust +untrustably +untrusted +untrustful +untrustiness +untrusting +untrusty +untruth +untruther +untruthful +untruthfully +untrying +unts +untso +untubbed +untuck +untucked +untuckered +untucking +untufted +untugged +untumbled +untumefied +untumid +untumultuous +untunable +untunably +untune +untuneable +untuneably +untuned +untuneful +untunefully +untuning +untunneled +untupped +unturbaned +unturbid +unturbulent +unturf +unturfed +unturgid +unturn +unturnable +unturned +unturning +unturreted +untusked +untutelar +untutored +untutoredly +untwilled +untwinable +untwine +untwineable +untwined +untwining +untwinkling +untwinned +untwirl +untwirled +untwirling +untwist +untwisted +untwister +untwisting +untwitched +untying +untypical +untypically +untyrannic +untyrannical +untyrantlike +untz +untza +unua +unubiquitous +unugly +unulcerated +unultra +unumpired +ununanimity +ununanimous +ununderstood +unundertaken +unundulatory +unungun +ununifiable +ununified +ununiform +ununiformed +ununiformity +ununiformly +ununitable +ununitably +ununited +ununiting +ununiversity +unupbraiding +unupdated +unupright +unuprightly +unupset +unupsettable +unurban +unurbane +unurged +unurgent +unurging +unurn +unurned +unurum +unurumguay +unusability +unusable +unusableness +unusably +unuse +unused +unusedness +unuseful +unusefully +unusefulness +unushered +unusual +unusuality +unusually +unusualness +unusurious +unusurped +unusurping +unutilizable +unutterable +unutterably +unuttered +unuxorial +unuxorious +unvacant +unvaccinated +unvailable +unvain +unvaleted +unvaliant +unvalid +unvalidated +unvalidating +unvalidity +unvalidly +unvalidness +unvalorous +unvaluable +unvaluably +unvalue +unvalued +unvamped +unvanishing +unvanquished +unvantaged +unvaporized +unvariable +unvariably +unvariant +unvaried +unvariedly +unvariegated +unvarnished +unvarying +unvaryingly +unvascular +unvassal +unvatted +unvaulted +unvaulting +unvaunted +unvaunting +unvauntingly +unveering +unveil +unveiled +unveiledly +unveiledness +unveiler +unveiling +unveilment +unveils +unveined +unvelvety +unvendable +unvended +unvendible +unveneered +unvenerable +unvenerated +unvenereal +unvenged +unveniable +unvenial +unvenom +unvenomed +unvenomous +unventable +unvented +unventilated +unventured +unventurous +unvenued +unveracious +unveracity +unverbalized +unverdant +unverdured +unveridical +unverifiable +unverifiably +unverified +unveritable +unverity +unverminous +unvernicular +unversatile +unversed +unversedly +unversedness +unversified +unvertical +unvessel +unvesseled +unvest +unvested +unvetoed +unvexed +unviable +unvibrated +unvibrating +unvicar +unvicarious +unvice +unvicious +unvictimized +unvictorious +unvictualed +unvictualled +unvie +unviewable +unviewed +unvigilance +unvigilant +unvigorous +unvigorously +unvilified +unvillaged +unvindicated +unvindictive +unvinous +unvintaged +unviolable +unviolated +unviolenced +unviolent +unviolined +unvirgin +unvirginal +unvirginlike +unvirile +unvirility +unvirtue +unvirtuous +unvirtuously +unvirulent +unvisible +unvisibly +unvision +unvisionary +unvisioned +unvisitable +unvisited +unvisor +unvisored +unvisualized +unvital +unvitalized +unvitalness +unvitiated +unvitiatedly +unvitrified +unvivacious +unvivid +unvivified +unvizard +unvizarded +unvocal +unvocalized +unvociferous +unvoice +unvoiced +unvoiceful +unvoicing +unvoidable +unvoided +unvolatile +unvolatilize +unvolcanic +unvolitioned +unvoluminous +unvoluntary +unvoluptuous +unvomited +unvoracious +unvote +unvoted +unvoting +unvouched +unvouchedly +unvouchsafed +unvowed +unvoweled +unvoyageable +unvoyaging +unvulcanized +unvulgar +unvulgarize +unvulgarized +unvulgarly +unvulnerable +unwadable +unwadded +unwadeable +unwaded +unwading +unwafted +unwaged +unwagered +unwaggable +unwaggably +unwagged +unwailed +unwailing +unwainscoted +unwaited +unwaiting +unwaked +unwakeful +unwakened +unwakening +unwaking +unwalkable +unwalked +unwalking +unwall +unwalled +unwallet +unwallowed +unwan +unwandered +unwandering +unwaning +unwanted +unwanton +unwarbled +unware +unwarely +unwareness +unwarily +unwariness +unwarlike +unwarm +unwarmable +unwarmed +unwarming +unwarn +unwarned +unwarnedly +unwarnedness +unwarnished +unwarp +unwarpable +unwarped +unwarping +unwarrant +unwarranted +unwary +unwashable +unwashed +unwashedness +unwashen +unwassailing +unwastable +unwasted +unwasteful +unwastefully +unwasting +unwastingly +unwatchable +unwatched +unwatchful +unwatchfully +unwatching +unwater +unwatered +unwaterlike +unwatery +unwattled +unwaved +unwaverable +unwavered +unwavering +unwaveringly +unwaving +unwax +unwaxed +unwayed +unwayward +unweaken +unweakened +unweal +unwealthy +unweaned +unweapon +unweaponed +unwearable +unweariable +unweariably +unwearied +unweariedly +unwearily +unweariness +unwearing +unwearisome +unweary +unwearying +unwearyingly +unweathered +unweatherly +unweave +unweaving +unweb +unwebbed +unwebbing +unwed +unwedded +unweddedly +unweddedness +unwedge +unwedgeable +unwedged +unweeded +unweel +unweelness +unweened +unweeping +unweeting +unweetingly +unweft +unweighable +unweighed +unweighing +unweight +unweighted +unweighty +unwelcome +unwelcomed +unwelcomely +unweld +unweldable +unwelded +unwell +unwellness +unwelted +unwept +unwestern +unwet +unwettable +unwetted +unwheedled +unwheel +unwheeled +unwhelmed +unwhelped +unwhetted +unwhig +unwhiglike +unwhimsical +unwhining +unwhip +unwhipped +unwhirled +unwhisked +unwhiskered +unwhispered +unwhispering +unwhistled +unwhite +unwhited +unwhitened +unwholesome +unwidened +unwidowed +unwield +unwieldable +unwieldily +unwieldiness +unwieldly +unwieldy +unwifed +unwifelike +unwifely +unwig +unwigged +unwild +unwilily +unwiliness +unwill +unwilled +unwillful +unwillfully +unwilling +unwillingly +unwilted +unwilting +unwily +unwin +unwincing +unwincingly +unwind +unwindable +unwinder +unwinders +unwinding +unwindingly +unwindowed +unwinds +unwindy +unwingable +unwinged +unwinking +unwinkingly +unwinnable +unwinning +unwinnowed +unwinsome +unwinter +unwintry +unwiped +unwire +unwired +unwisdom +unwise +unwisely +unwiseness +unwiser +unwisest +unwish +unwished +unwishful +unwishing +unwist +unwistful +unwitch +unwitched +unwithdrawn +unwitherable +unwithered +unwithering +unwithheld +unwithholden +unwithstood +unwitless +unwitnessed +unwitted +unwittily +unwitting +unwittingly +unwitty +unwive +unwived +unwoeful +unwoful +unwoman +unwomanish +unwomanize +unwomanized +unwomanlike +unwomanly +unwomb +unwon +unwonder +unwonderful +unwondering +unwonted +unwontedly +unwontedness +unwooded +unwooed +unwoof +unwooly +unwordable +unwordably +unwordily +unwordy +unwork +unworkable +unworkably +unworked +unworkedness +unworker +unworking +unworkmanly +unworld +unworldly +unwormed +unwormy +unworn +unworried +unworriedly +unworshiped +unworshipful +unworshiping +unworshipped +unworth +unworthier +unworthiest +unworthily +unworthiness +unworthy +unwotting +unwound +unwoundable +unwounded +unwoven +unwp +unwrangling +unwrap +unwrapped +unwrapper +unwrapping +unwraps +unwrathful +unwrathfully +unwreaked +unwreathe +unwreathed +unwreathing +unwrecked +unwrench +unwrenched +unwrested +unwrestedly +unwresting +unwrestled +unwretched +unwriggled +unwrinkle +unwrinkled +unwrit +unwritable +unwrite +unwriteable +unwriting +unwritten +unwronged +unwrongful +unwrought +unwrung +unxlb +unxorer +unyama +unyeada +unyeaned +unyearned +unyearning +unyielded +unyielding +unyieldingly +unyoke +unyoked +unyoking +unyoung +unyouthful +unyouthfully +unza +unze +unzealous +unzealously +unzen +unzephyrlike +unzip +unziparj +unzipped +unzipping +unzone +unzoned +unzurna +uofo +uofs +uoknor +uold +uollamo +uolt +uomo +uomon +uopdated +uopt +uoregon +uoth +upadhyaya +upag +upaisle +upaithric +upale +upalley +upalong +upanishadic +upanishads +upapurana +uparch +uparching +uparise +uparm +uparna +uparrow +upas +upata +upattic +upavenue +upbank +upbar +upbay +upbear +upbearer +upbelch +upbelt +upbend +upbid +upbind +upblacken +upblast +upblaze +upblow +upboil +upbolster +upbolt +upboost +upborne +upbotch +upboulevard +upbound +upbrace +upbraid +upbraided +upbraider +upbraideth +upbraiding +upbraidingly +upbray +upbreak +upbred +upbreed +upbreeze +upbrighten +upbrim +upbringing +upbristle +upbroken +upbrook +upbrought +upbrow +upbubble +upbuild +upbuilder +upbulging +upbuoy +upbuoyance +upburn +upburst +upbuy +upcall +upcanal +upcanyon +upcarry +upcase +upcast +upcatch +upcaught +upchamber +upchannel +upchariot +upcheck +upchimney +upchoke +upchuck +upchurch +upcity +upclimb +upclose +upcloser +upcoast +upcock +upcoil +upcolumn +upcoming +upconjure +upcountry +upcourse +upcover +upcrane +upcrawl +upcreek +upcreep +upcrop +upcrowd +upcry +upcurl +upcurrent +upcurve +upcurved +upcushion +upcut +updart +updatable +update +updateable +updatecenter +updated +updatedb +updatedexe +updater +updates +updating +updeck +updelve +updike +updive +updm +updo +updome +updownupdown +updrag +updraw +updrink +updry +updt +updyke +upeat +upeb +upella +upen +upended +upendra +upenn +upenskoy +upeygan +upfeed +upfield +upfill +upfingered +upflame +upflare +upflash +upflee +upflicker +upfling +upfloat +upflood +upflow +upflower +upflung +upfly +upfold +upfollow +upframe +upfurl +upgale +upgang +upgape +upgather +upgaze +upget +upgird +upgirt +upgive +upglean +upglide +upgo +upgorge +upgrade +upgraded +upgrader +upgrades +upgrading +upgrave +upgren +upgrow +upgrowth +upgully +upgush +upham +uphand +uphang +upharbor +upharrow +upharsin +uphasp +uphaz +upheal +upheap +uphearted +upheavalist +upheavals +upheave +upheaven +upheld +uphelm +uphelya +upher +uphill +uphillward +uphoard +uphoist +uphold +upholden +upholder +upholders +upholdest +upholdeth +upholding +upholds +upholstered +upholsterer +upholsteress +upholsteries +upholstering +upholsterous +upholsters +upholstress +uphung +uphurl +upialabituri +upisland +upjerk +upjet +upjohn +upkindle +upknell +upknit +upla +upladder +uplaid +uplake +uplander +uplandish +uplands +uplane +uplay +uplead +upleap +upleg +uplg +uplick +uplift +upliftable +uplifted +upliftedly +upliftedness +uplifter +uplifting +upliftingly +upliftitis +upliftment +uplight +uplimb +uplimber +upline +uplink +uplinking +uplinks +upload +uploaded +uploader +uploading +uploadpriv +uploads +uploadz +uplock +uplong +uplook +uplooker +uploom +uploop +uplying +upmaking +upmast +upmc +upmix +upmost +upmount +upmountain +upmove +upness +upon +upoto +uppal +uppard +upped +uppent +upper +uppercase +upperch +upperco +uppercutting +upperdarby +upperer +upperest +upperfalls +upperglade +upperhandism +upperhill +upperjay +upperlake +upperman +uppermore +uppermost +uppers +uppertendom +uppertract +uppertygart +upperville +uppervolta +uppile +upping +uppington +uppish +uppishly +uppishness +uppity +uppland +upplough +upplow +uppluck +uppman +uppoint +uppoise +uppop +uppour +uppowoc +upprick +upprop +uppsala +uppuff +uppull +uppush +upquiver +upraisal +upraised +upraiser +upraising +upreach +uprear +uprein +uprend +uprender +uprest +uprestore +uprid +upridge +upright +uprighteous +uprighting +uprightish +uprightly +uprightness +uprights +uprip +uprisal +uprisement +uprisen +upriser +uprising +uprisings +uprist +uprive +uproad +uproar +uproariness +uproariously +uprona +uproom +uprootal +uprooted +uprooter +uprooting +uproots +uprose +uprouse +uproute +uprun +uprush +upsaddle +upsala +upscalators +upscale +upscrew +upscuddle +upsd +upseal +upseek +upseize +upsend +upset +upsetment +upsets +upsettable +upsettal +upsetted +upsetter +upsetting +upsettingly +upsey +upshaft +upshaw +upshear +upsheath +upshoot +upshore +upshot +upshots +upshoulder +upshove +upshut +upside +upsidedown +upsides +upsighted +upsiloid +upsilonism +upsit +upsitten +upsitting +upslant +upslip +upslope +upsmite +upsnatch +upsoak +upsoar +upsolve +upson +upspeak +upspear +upspeed +upspew +upspin +upspire +upsplash +upspout +upspread +upspring +upsprinkle +upsprout +upspurt +upstaff +upstage +upstaged +upstaging +upstairs +upstamp +upstander +upstanding +upstare +upstartism +upstartle +upstartness +upstaunch +upstay +upsteal +upsteam +upstem +upstep +upstick +upstir +upstomivia +upstraight +upstream +upstreamward +upstreet +upstretch +upstrike +upstrive +upstroke +upstruggle +upsuck +upsun +upsup +upsurged +upsurgence +upsurging +upswallow +upswarm +upsway +upsweep +upswell +upswept +upswinging +upswung +uptable +uptaker +uptear +uptemper +uptend +upthread +upthrow +upthrust +upthunder +uptide +uptie +uptight +uptill +uptilt +uptime +uptimes +upto +uptodate +upton +uptorn +uptospec +uptoss +uptower +uptowner +uptrace +uptrack +uptrail +uptrain +uptree +uptrill +uptrunk +uptruss +uptube +uptuck +upturned +upturning +upturns +uptwined +uptwist +upupa +upupidae +upupoid +upurui +upusa +upvalley +upvomit +upwaft +upwall +upward +upwardly +upwardness +upwards +upwarp +upwax +upway +upways +upwell +upwelling +upwent +upwheel +upwhelm +upwhir +upwhirl +upwith +upwork +upwound +upwrap +upwreathe +upwrench +upwring +upwrought +upyard +upyoke +urach +urachal +urachus +urada +uradhopur +uradi +uraemic +uraeus +uragoga +urak +urakhaakhush +urakin +ural +urali +uralian +uralic +uraline +uralite +uralitic +uralitize +uralium +urals +uraly +urama +uramido +uramil +uramilic +uramino +uramot +uran +uranalysis +uranate +uraneff +urang +urania +uranian +uranic +uranicentric +uranidine +uraniferous +uraniid +uraniidae +uranin +uranine +uraninite +uranion +uranism +uranist +uranite +uranitic +uranocircite +uranographer +uranographic +uranography +uranogrraphy +uranolatry +uranolite +uranological +uranology +uranometria +uranometry +uranophane +uranoplastic +uranoplasty +uranoplegia +uranorrhaphy +uranoschisis +uranoschism +uranoscope +uranoscopia +uranoscopic +uranoscopus +uranoscopy +uranospinite +uranothorite +uranotil +uranous +uranus +uranylic +urao +uraon +urapmin +urare +urari +urarica +uraricuera +urarina +urarinas +urartaean +urartic +urase +urat +urataemia +urate +uratemia +uratic +uratoma +uratosis +uraturia +uravan +uraxaaxusha +uray +uraz +urazine +urazole +urbacity +urbainite +urban +urbana +urbane +urbanely +urbaneness +urbanik +urbanism +urbanist +urbanites +urbanity +urbanization +urbanize +urbanized +urbanizing +urbanna +urbano +urbanowich +urbansky +urbany +urbareg +urbarial +urberville +urbian +urbic +urbick +urbicolae +urbicolous +urbielewicz +urbification +urbify +urbinate +urbini +urbshas +urceiform +urceolar +urceolate +urceole +urceoli +urceolina +urceolus +urceus +urchin +urchiness +urchinlike +urchinly +urchins +urda +urde +urdee +urdell +urdu +ureal +ureameter +ureametry +urease +urecal +urecel +urechitin +urechitoxin +uredema +uredinales +uredine +uredineae +uredineal +uredineous +uredinia +uredinial +urediniopsis +uredinium +uredinoid +uredinology +uredinous +uredo +uredosorus +uredospore +uredosporic +uredosporous +uredostage +ureic +ureid +ureide +ureido +ureka +uremarked +uremic +uremo +uren +urena +ureng +urent +ureometer +ureometry +ureparapara +urequema +ures +uresis +uretal +ureter +ureteral +ureteralgia +ureterectomy +ureteric +ureteritis +ureterocele +ureterogram +ureterograph +ureterolith +ureterolysis +ureterostoma +ureterostomy +ureterotomy +urethan +urethra +urethrae +urethragraph +urethral +urethralgia +urethrameter +urethras +urethrascope +urethratome +urethrectomy +urethrism +urethritic +urethritis +urethrocele +urethrogram +urethrograph +urethrometer +urethrophyma +urethrorrhea +urethroscope +urethroscopy +urethrospasm +urethrostomy +urethrotome +urethrotomic +urethrotomy +urethylan +uretic +urette +ureylene +urfa +urfc +urfirnis +urganzeff +urge +urged +urgel +urgence +urgencies +urgency +urgent +urgently +urgentness +urger +urges +urgghh +urgh +urginea +urging +urgingly +urgings +urgl +urgonian +urheen +urhixidur +urhobo +uria +uriah +urial +urian +uriankhai +urias +uribe +uric +uricacidemia +uricaciduria +uricaemia +uricaemic +uricemia +uricemic +urich +uricolysis +uricolytic +uridrosis +uriel +uriela +uriend +urigina +uriginau +urii +urijah +urim +urimo +urinaemia +urinalist +urinalysis +urinant +urinarium +urinary +urinate +urinated +urinates +urinating +urination +urinative +urinator +urine +urinemia +uriniferous +uriniparous +urinogenital +urinogenous +urinologist +urinology +urinomancy +urinometer +urinometric +urinometry +urinoscopic +urinoscopist +urinoscopy +urinose +urinosexual +urinous +urinousness +urio +uripiv +uriri +uris +urita +urite +urituyacu +uriya +urizza +urizzi +urkarax +urlar +urled +urlgub +urli +urling +urls +urluch +urman +urmi +urmia +urmiamaragha +urmiy +urmuri +urna +urnae +urnal +urnes +urnflower +urnful +urning +urningism +urnism +urnlike +urnmaker +urns +urobenzoic +urobilin +urobilinemia +urobilinogen +urobilinuria +urocanic +urocco +urocele +urocerata +urocerid +uroceridae +urochloralic +urochord +urochorda +urochordal +urochordate +urochrome +urochromogen +urocoptidae +urocoptis +urocyanogen +urocyon +urocyst +urocystic +urocystis +urocystitis +urodaeum +urodela +urodelan +urodele +urodelous +urodialysis +urodynia +uroedema +uroerythrin +urogaster +urogastric +urogenic +urogenital +urogenitary +urogenous +uroglaucin +uroglena +urogram +urography +urohematin +urohima +urohyal +uroki +urolagnia +urolator +uroleucic +uroleucinic +urolith +urolithiasis +urolithic +urolithology +urologic +urological +urologist +urology +urolutein +urolytic +uromancy +uromantia +uromantist +uromastix +uromelanin +uromelus +uromere +uromeric +urometer +uromyces +uromycladium +uronephrosis +uronic +uronology +uropatagium +uropeltidae +urophanic +urophanous +urophein +urophlyctis +urophthisis +uroplania +uropod +uropodal +uropodous +uropoetic +uropoiesis +uropoietic +uroporphyrin +uropsile +uropsilus +uroptysis +uropygi +uropygial +uropygium +uropyloric +urorosein +urorrhagia +urorrhea +urorubin +urosacral +uroschesis +uroscopic +uroscopist +uroscopy +urosepsis +uroseptic +urosis +urosomatic +urosome +urosomite +urosomitic +urostea +urostealith +urostegal +urostege +urostegite +urosteon +urosternite +urosthene +urosthenic +urostylar +urostyle +urotoxia +urotoxic +urotoxicity +urotoxin +urotoxy +urow +uroxanate +uroxanic +uroxanthin +uroxin +urquhart +urraca +urradhus +urrhodin +urrhodinic +urrighel +urroz +urrslaw +urrti +urrutia +ursa +ursal +ursala +ursaline +ursel +ursianu +ursicidal +ursicide +ursid +ursidae +ursiform +ursigram +ursina +ursine +ursitti +urskeks +urso +ursoid +ursola +ursolic +urson +ursone +ursuk +ursula +ursulina +ursuline +ursus +urth +urtica +urticaceae +urticaceous +urticales +urticant +urticaria +urticarial +urticarious +urticastrum +urticate +urticating +urtication +urticose +urtite +urtsun +urtwa +urua +uruak +uruangnirin +uruava +uruba +urubamba +urubu +urubukaapor +urubutapuya +urucena +uruchipaya +urucu +urucuiana +urucuri +urudu +urueta +urueuuauuau +urueuwauwau +uruewawau +uruguay +uruguayan +uruisg +urukhai +uruks +urukuena +urukuyana +urumchi +urumqi +urunday +urundi +urunumacan +urunyaruanda +urupa +urupaya +ururagwe +ururi +urus +urusgani +urushi +urushic +urushinic +urushiol +urushiye +urushubi +urutani +uruund +uruwa +urva +urvile +urville +urwin +urwitz +uryankhai +uryens +urzi +usaban +usability +usable +usableness +usably +usacec +usafa +usafacademy +usafacdm +usage +usager +usages +usaisd +usak +usakova +usally +usamba +usambara +usan +usance +usar +usara +usarec +usari +usaron +usart +usarufa +usasac +usasafety +usascii +usation +usbaki +usbeki +uscacsc +uscanada +uschi +usclere +uscolo +uscommerce +uscwm +useable +useaddress +useback +useby +used +usedcar +usedly +usedness +usednt +usedwith +usee +useful +usefull +usefullish +usefully +usefulness +usehis +usehold +useit +usel +useless +uselessly +uselessness +uselink +usen +usenet +usenets +usenetter +usenetters +usenix +usent +useof +user +useragent +userality +userbase +userbde +userdata +useredit +userfriendly +userid +userinfo +userip +userlist +username +usernames +usernetw +useroriented +users +usersout +usersthat +usersupplied +uservisible +uservx +userwin +userwith +uses +usesiteoff +usesiteon +usest +useth +usethe +usfca +usfk +usfp +usgs +ushabti +ushabtiu +ushak +ushakov +ushaku +ushaped +ushas +usheen +usheida +usherance +usherdom +ushered +usherer +usheress +usherette +usherian +ushering +usherism +usherless +ushers +ushership +ushew +ushi +ushio +ushioda +ushli +ushnuiye +ushoi +ushojo +ushu +ushut +usiai +usila +usilele +usine +using +usinga +usingan +usings +usino +usint +usipetes +usipi +usirampia +usitate +usitative +usiu +uskara +uskera +uskok +usku +uskuar +uslovno +usluer +usma +usman +usmexico +usna +usnail +usnato +usnea +usneaceae +usneaceous +usneoid +usnf +usnic +usninic +usno +usokun +usouthal +uspantec +uspanteca +uspanteco +uspension +uspfogu +usplit +usporeno +usque +usquebaugh +usrc +usrclnx +usrobotic +usrobotics +usrouter +usrstats +usself +ussels +usselven +usseri +ussery +ussexcali +ussing +ussingite +ussuri +ustack +ustarana +ustatistics +ustavtm +uster +ustilago +ustinov +ustinya +ustion +ustorious +ustulate +ustulation +ustulina +ustyuzhanin +usuable +usual +usualism +usually +usualness +usualy +usuary +usucapient +usucapion +usucapionary +usucapt +usucaptable +usucaption +usucaptor +usufruct +usufructuary +usuhs +usuhsb +usui +usulutan +usumbura +usun +usure +usurer +usurerlike +usuress +usuries +usuriously +usuriousness +usurp +usurpative +usurpatively +usurpatory +usurpature +usurped +usurpedly +usurper +usurpership +usurping +usurpingly +usurpment +usurpor +usurpress +usurufa +usury +ususally +usward +uswards +uswest +uswrsd +usyk +usyslnx +utabi +utadnx +utah +utaha +utahan +utahite +utahsbr +utai +utaka +utalo +utam +utang +utanga +utange +utara +utaradit +utarl +utas +utastro +utch +utchy +utcs +utdallas +utees +utensils +utepark +uteralgia +uterectomy +uteri +uterious +uteritis +utero +uterocele +uterogram +uterography +uterolith +uterology +uteromania +uterometer +uteroovarian +uteropelvic +uteropexia +uteropexy +uteroplasty +uterosacral +uteroscope +uterotomy +uterotonic +uterotubal +uterovaginal +uteroventral +uterovesical +uterus +uteshaesh +utesouthern +utest +utexas +utfangethef +utfangthef +utfangthief +uthai +uthen +uther +uthscsa +utica +utick +utida +util +utila +utilitarian +utilite +utiliteez +utilites +utilitie +utilities +utilitizes +utility +utilizable +utilization +utilizations +utilize +utilized +utilizer +utilizes +utilizing +utilla +utils +utilyzing +utilz +utinam +utkali +utlilized +utmem +utmost +utmostness +utmp +utnetw +utnoor +utoaztecan +utobl +utokyo +utoledo +utonkon +utopia +utopian +utopianism +utopianist +utopianize +utopianizer +utopians +utopiast +utopism +utopist +utopistic +utopographer +utoronto +utpal +utpala +utput +utra +utraquism +utraquist +utraquistic +utricle +utricul +utricular +utricularia +utriculate +utriculiform +utriculitis +utriculoid +utriculose +utriculus +utriform +utrike +utrillo +utrubi +utrum +utsa +utsally +utse +utser +utseu +utsjoki +utsuk +utsukushiku +utsumi +utsun +uttam +uttar +uttara +uttaradit +uttari +utter +utterability +utterable +utterance +utterances +utterancy +uttered +utterer +uttereth +uttering +utterless +utterly +uttermost +utterness +utters +utterson +utts +utua +utuado +utugwang +utulsa +utum +utuma +utupua +utur +uturesoft +uturuncu +uturupa +uucico +uucode +uucp +uucpgate +uucpnet +uucponly +uucppublic +uudeco +uudecode +uudecoded +uudeview +uuecoder +uuencode +uuencoded +uuencodes +uuhost +uuhum +uuhumgigi +uulogin +uuma +uunet +uunko +uupc +uurobot +uuseal +uusimaa +uutllnx +uuuu +uuuuu +uuuuuh +uuuuuu +uuuuuuu +uuuuuuuu +uvaarpa +uvacs +uvaee +uvajal +uval +uvalda +uvalde +uvalha +uvanite +uvarovite +uvate +uvazhil +uvbie +uvcc +uvea +uveal +uvean +uveitic +uveitis +uvella +uveous +uvga +uvhria +uvic +uvid +uvidel +uvidimsya +uvidish +uviol +uvira +uvitic +uvitinic +uvito +uvitonic +uvol +uvrou +uvula +uvulae +uvular +uvularia +uvularly +uvulas +uvulitis +uvuloptosis +uvulotome +uvulotomy +uvver +uvwie +uwampa +uwasa +uwassi +uwaterloo +uwau +uwavm +uwchland +uwec +uwenpantai +uwepauwano +uwet +uwex +uweynat +uwgb +uwimana +uwlax +uwosh +uwplatt +uwrf +uwsa +uwsp +uwstout +uwsuper +uwyo +uxbridge +uxorial +uxoriality +uxorially +uxoricidal +uxoricide +uxorious +uxoriously +uxoriousness +uyanga +uyar +uyghuri +uygur +uyobe +uytterlinden +uzai +uzair +uzairue +uzaki +uzal +uzam +uzan +uzara +uzarin +uzaron +uzbak +uzbeg +uzbegs +uzbek +uzbeki +uzbekistan +uzbekistania +uzbin +uzekwe +uzemchin +uzhe +uzhil +uzhin +uzice +uzieka +uzisun +uzlam +uznal +uznay +uznayu +uzza +uzzah +uzzensherah +uzzi +uzzia +uzziah +uzziel +uzzielites +vaadoo +vaagmer +vaagri +vaal +vaalite +vaalpens +vaaneroki +vaaofonoti +vaasa +vaazin +vaca +vacabond +vacacocha +vacamwe +vacancies +vacancy +vacant +vacantly +vacantness +vacantry +vacanza +vacanze +vacaris +vacarri +vacarro +vacatable +vacated +vacates +vacating +vacation +vacational +vacationed +vacationer +vacationers +vacationing +vacationist +vacationless +vacations +vacatur +vacaville +vaccaria +vaccaro +vaccary +vaccenic +vaccicide +vaccigenous +vaccina +vaccinable +vaccinal +vaccinated +vaccinating +vaccination +vaccinator +vaccinatory +vaccine +vaccinee +vaccinella +vaccinia +vacciniaceae +vaccinial +vaccinifer +vacciniform +vacciniola +vaccinist +vaccinium +vaccinogenic +vaccinoid +vacek +vacey +vach +vache +vachel +vachellia +vachement +vacher +vacherie +vachette +vachkov +vachon +vacillancy +vacillant +vacillated +vacillating +vacillation +vacillator +vacillatory +vaclav +vacoa +vacona +vacoom +vacoua +vacouf +vacual +vacuate +vacuation +vacuefy +vacuist +vacuities +vacuity +vaculik +vacuolar +vacuolary +vacuolated +vacuolation +vacuome +vacuometer +vacuously +vacuousness +vacuua +vacuum +vacuuma +vacuumed +vacuuming +vacuumize +vacuumvax +vada +vadaga +vadagu +vadala +vadari +vadas +vadasz +vadding +vadell +vader +vadeyev +vadi +vadie +vadik +vadim +vadime +vadimonium +vadimony +vading +vadis +vadito +vadium +vadiya +vadodari +vadose +vaduva +vaduz +vadval +vady +vaea +vaedda +vaes +vaessen +vaetere +vafaie +vafsi +vagabond +vagabonda +vagabondage +vagabondager +vagabondia +vagabondish +vagabondism +vagabondize +vagabondizer +vagabondo +vagabondry +vagabonds +vagadi +vagal +vagala +vagari +vagarian +vagaries +vagarious +vagariously +vagarish +vagarisome +vagarist +vagaristic +vagarity +vagary +vagas +vagdi +vage +vaged +vageri +vagh +vaghri +vaghua +vagi +vagiform +vagile +vagily +vagina +vaginae +vaginal +vaginaless +vaginalitis +vaginant +vaginas +vaginate +vaginated +vaginectomy +vaginervose +vaginicola +vaginicoline +vaginicolous +vaginiferous +vaginismus +vaginitis +vaginocele +vaginodynia +vaginolabial +vaginometer +vaginopexy +vaginoplasty +vaginoscope +vaginoscopy +vaginosis +vaginotome +vaginotomy +vaginovulvar +vaginula +vaginulate +vaginule +vagitus +vagla +vagnera +vagnic +vagnucci +vagnuzzi +vago +vagogram +vagolysis +vagotomize +vagotomy +vagotonia +vagotonic +vagotropic +vagotropism +vagra +vagrance +vagrancies +vagrancy +vagrantism +vagrantize +vagrantlike +vagrantly +vagrantness +vagrate +vagrom +vagts +vagua +vague +vaguelis +vaguely +vagueness +vaguer +vaguest +vaguish +vaguity +vagulous +vagus +vahary +vahdat +vahe +vahid +vahine +vahini +vahitu +vahl +vahr +vaid +vaiden +vaidic +vaidou +vaidyanathan +vaijayanti +vaikenu +vaikino +vaikono +vail +vailable +vailala +vaile +vailion +vaillancourt +vaillant +vails +vailsgate +vain +vainful +vainglory +vainly +vainness +vaino +vainu +vainubappu +vaipei +vaiphei +vair +vairagi +vairavan +vaire +vairy +vais +vaisala +vaishnava +vaishnavism +vaisigano +vaitupu +vaivode +vajda +vajentic +vajezatha +vajieng +vajos +vajra +vajrasana +vakaga +vakam +vakas +vakass +vakavaloyi +vakhan +vakhtang +vakia +vakil +vakili +vakkaliga +vaks +vaksekt +vaksn +vakuise +vakulinchuk +vakuta +vakweli +vakwengo +vala +valach +valadao +valadares +valadez +valadier +valaikorn +valais +valaisien +valance +valanced +valanche +valandil +valar +valardy +valaree +valaria +valarie +valassi +valatie +valbel +valbellite +valberg +valborg +valcke +valcour +valcourt +valcross +vald +valda +valdaj +valdane +valdelle +valdemar +valderrama +valders +valdes +valdese +valdesta +valdez +valdimir +valdin +valdine +valdis +valdivia +valdman +valdon +valdosta +vale +valeda +valeika +valen +valence +valences +valencia +valencian +valenciana +valencianite +valenciennes +valencies +valency +valene +valenka +valens +valenta +valente +valenti +valentia +valentic +valentide +valentik +valentin +valentina +valentine +valentines +valentini +valentinian +valentinite +valentino +valentova +valenty +valenza +valenziano +valenzuela +valera +valeral +valeramide +valerate +valeri +valeria +valerian +valeriana +valerianales +valerianate +valerianella +valeriano +valeric +valerie +valerien +valerin +valerio +valerion +valerius +valeriy +valero +valerone +valery +valerye +valeryl +valerylene +vales +valeska +valet +valeta +valetage +valetdom +valethood +valetism +valetry +valets +valetti +valetudinary +valeward +valewska +valgoid +valgus +valhall +valhalla +vali +valia +valiance +valiancy +valiant +valiantest +valiantly +valiantness +valicelli +valid +valida +validate +validated +validates +validating +validation +validator +validators +validatory +validimirov +validities +validity +validly +validness +valiente +valientes +valier +valiev +valigia +valin +valina +valinda +valiquette +valise +valiseful +valiship +valium +valiveti +valjean +valk +valkama +valking +valko +valkus +valkyr +valkyra +valkyria +valkyrian +valkyrie +valkyries +vall +valladon +vallalonga +vallance +vallancy +vallar +vallardy +vallarine +vallarino +vallarta +vallary +vallate +vallated +vallation +valle +vallecito +vallecitos +vallecula +vallecular +valleculate +valledupar +vallee +vallejo +vallens +vallentyne +valles +vallesmines +vallet +valletta +valletti +vallevarite +valley +valleybend +valleycenter +valleychapel +valleycity +valleyfalls +valleyfarms +valleyford +valleyforge +valleyfork +valleyful +valleygrove +valleyhead +valleyhome +valleyite +valleylee +valleylet +valleylike +valleymills +valleypark +valleys +valleyspring +valleystream +valleyview +valleyward +valleywise +vallgren +valli +valliani +valliant +vallicula +vallicular +vallidom +vallie +vallier +valliere +vallieres +vallin +vallipuram +vallis +vallisneria +vallo +vallombreuse +vallombrosan +vallon +vallone +vallonia +vallota +vallozzi +valls +vallum +vally +valma +valman +valmeyer +valmid +valmiki +valmont +valmorin +valmy +valois +valona +valongi +valonia +valoniaceae +valoniaceous +valor +valora +valorization +valorize +valorous +valorously +valorousness +valour +valparaiso +valpay +valpei +valpeihukua +valpetre +valproc +valrico +valry +valsa +valsaceae +valsalvan +valsami +valse +valsin +valsoid +valspeak +valt +valtasaari +valter +valtr +valturra +valtyr +valuable +valuableness +valuables +valuably +valuation +valuational +valuations +valuator +value +valueadded +valued +valueless +valuer +valuers +values +valuesinto +valuest +valuga +valuing +valusescu +valuta +valuva +valuwa +valva +valval +valvasori +valvata +valvate +valvatidae +valve +valved +valvel +valveless +valvelet +valvelike +valveman +valverde +valvert +valves +valvi +valviferous +valviform +valvotomy +valvula +valvular +valvulate +valvule +valvulitis +valvulotome +valvulotomy +valy +valyermo +valyl +valylene +vamaa +vamale +vambeng +vambrace +vambraced +vamembreme +vamemora +vamfont +vami +vammazsa +vamoose +vamoosed +vamoosing +vamose +vamosed +vamosing +vamp +vampa +vamped +vamper +vamphorn +vampilov +vampire +vampireproof +vampiric +vampirish +vampirism +vampirize +vamplate +vampproof +vampyrella +vampyres +vampyrum +vana +vanaad +vanadate +vanadiate +vanadic +vanadiferous +vanadinite +vanadis +vanadous +vanadyl +vanaheim +vanaire +vanalstyne +vanaltena +vanaman +vanambere +vanapa +vanaprastha +vanasse +vanavara +vanbrugh +vanburen +vance +vanceboro +vanceburg +vancleve +vancourier +vancourt +vancouver +vancouveria +vanda +vandaele +vandagriff +vandal +vandalia +vandalic +vandalish +vandalism +vandalistic +vandalize +vandalized +vandalizes +vandalizing +vandalroot +vandals +vandamm +vande +vandebilt +vandehulst +vandekamp +vandeleur +vandemere +vandemonian +vandenberg +vandenborre +vandenbos +vandenburgh +vandenheede +vandenheuvel +vandenhoeck +vander +vanderbilt +vanderboom +vanderbrouck +vanderburg +vandergeest +vandergelder +vandergriff +vandergrift +vandergroat +vanderhelm +vanderheyden +vanderhoefen +vanderhoeven +vanderhof +vanderhooft +vanderlaan +vanderlinden +vanderlyn +vandermeulen +vandermolen +vanderpol +vanderpool +vanders +vanderveen +vanderveer +vandervelde +vandervoort +vanderwel +vandeuvres +vandevalk +vandeven +vandever +vandewater +vandewouw +vandi +vandiemenian +vandis +vandiver +vando +vandommele +vandoorne +vandrake +vandreuil +vandring +vandusen +vanduser +vandyke +vandyne +vane +vanecek +vanechi +vaneck +vaned +vaneev +vanel +vaneless +vanelike +vanellus +vanentino +vaner +vanes +vaness +vanessa +vanessi +vanessian +vanetten +vanfos +vanfoss +vang +vanga +vangastel +vangee +vangeli +vangelis +vangent +vangie +vanglo +vango +vanguardist +vangueria +vangunu +vanherk +vanhorn +vanhorne +vanhouten +vania +vaniah +vanicek +vanikolo +vanikoro +vanilla +vanillal +vanillate +vanille +vanillery +vanillic +vanillin +vanillinic +vanillism +vanilloes +vanillon +vanilloyl +vanillyl +vanimo +vanin +vanina +vanino +vanir +vanish +vanished +vanisher +vanishes +vanisheth +vanishing +vanishingly +vanishment +vanist +vanita +vanitied +vanities +vanity +vanja +vanjari +vanjarrah +vankata +vanke +vankieu +vankooten +vanlaar +vanlear +vanleer +vanliew +vanlop +vanlue +vanman +vanmeer +vanmeter +vanmost +vanna +vannai +vanndale +vanne +vanneau +vanneman +vanner +vannerman +vannet +vannetais +vannevar +vannevars +vanni +vannic +vannie +vanning +vannoote +vannuchhi +vannuys +vanny +vano +vanoni +vanorin +vanpatten +vanpelt +vanport +vanquishable +vanquished +vanquisher +vanquishes +vanquishing +vanquishment +vanryzin +vans +vansant +vanseeler +vansire +vanstone +vanstory +vanta +vantage +vantageless +vantassell +vantbrace +vantbrass +vantine +vantyat +vanua +vanuaaku +vanuatu +vanuatuan +vanuatubanks +vanumami +vanvleck +vanvleet +vanvoorhis +vanward +vanwert +vanwormhoudt +vanwychen +vanwyck +vanya +vanzant +vanzella +vapidiana +vapidism +vapidities +vapidity +vapidly +vapidness +vapographic +vapography +vapor +vaporability +vaporable +vaporarium +vaporary +vaporate +vaporation +vapored +vaporer +vaporescence +vaporescent +vaporetto +vaporiferous +vaporific +vaporiform +vaporimeter +vaporing +vaporingly +vaporish +vaporishness +vaporium +vaporizable +vaporization +vaporize +vaporized +vaporizer +vaporizers +vaporizing +vaporless +vaporlike +vaporograph +vaporose +vaporoseness +vaporosity +vaporously +vaporousness +vapors +vaportight +vaporware +vapory +vapour +vapours +vapulary +vapulate +vapulation +vapulatory +vaquero +vaqueros +vara +varactor +varadhan +varadi +varady +varagine +varahan +varaita +varaiya +varan +varanasi +varanger +varangi +varangian +varanid +varanidae +varano +varanoid +varanus +varchar +varco +varconi +varda +vardak +vardaman +vardapet +vardeman +varden +vardi +vardy +vare +varea +varec +vareheaded +varela +varelli +varennes +varens +varese +vareuse +varexp +varga +vargas +vargo +vargueno +varhadi +varhelyi +vari +varia +variability +variable +variableness +variables +variably +variadic +variag +variagles +variags +variance +variances +variancesome +variancy +variant +variantly +variants +variates +variation +variational +variationist +variations +variatious +variative +variatively +variator +varical +varicated +varication +varicella +varicellar +varicellate +varicelloid +varicellous +varices +variciform +varick +varicocele +varicoid +varicolored +varicolorous +varicoloured +varicose +varicosed +varicoseness +varicosis +varicosity +varicotomy +varicula +varied +variedly +variegated +variegating +variegation +variegator +varier +varies +varietal +varietally +varieties +varietism +varietist +variety +variform +variformed +variformity +variformly +varihio +varina +varing +varini +varinia +variocoupler +variocuopler +variogram +variola +variolar +variolaria +variolate +variolation +variole +variolic +varioliform +variolite +variolitic +varioloid +variolous +variometer +variorum +variotinted +various +variously +variousness +variscite +varisi +varisse +varix +varjak +varjan +varkel +varkey +varkonyi +varlet +varletaille +varletess +varletry +varletto +varley +varli +varloff +varma +varmali +varmazis +varment +varmint +varminter +varmlands +varna +varname +varnames +varnashrama +varnell +varner +varnese +varney +varni +varnie +varnished +varnisher +varnishes +varnishing +varnishlike +varnishment +varnishy +varno +varnpliktige +varnsingite +varnville +varolian +varopoulos +varrange +varrat +varrick +varro +varronia +varronian +vars +varsava +varsavia +varsha +varsi +varsiter +varsities +varsovian +varsoviana +varstab +varsu +vartan +vartanesian +vartashen +vartavo +vartuhi +varughese +varuna +varus +varvara +varve +varved +varville +vary +varying +varyingly +varyings +varysburg +vasa +vasal +vasan +vasana +vasant +vasarhelyi +vasaryova +vasarypva +vasava +vasavi +vasbia +vasco +vasconcellos +vascons +vascular +vascularity +vascularize +vascularly +vasculated +vasculature +vasculiform +vasculitis +vasculomotor +vasculose +vasculum +vase +vasectomies +vasectomize +vaseduva +vaseful +vasek +vaselet +vaselike +vaseline +vasemaker +vasemaking +vaserfirer +vases +vasewise +vasework +vash +vashe +vashegyite +vasheto +vashishtha +vashni +vashon +vashti +vasicek +vasicentric +vasicine +vasicular +vasifactive +vasiferous +vasiform +vasil +vasilaky +vasile +vasilek +vasilenko +vasilescu +vasilev +vasilevskis +vasili +vasiliadis +vasilieva +vasilievsky +vasiliki +vasilinka +vasilissis +vasiliy +vasilopoulos +vasily +vasilyev +vasishta +vaskia +vaslav +vasliy +vaslui +vasocorona +vasodentinal +vasodentine +vasodilatin +vasodilating +vasodilation +vasodilator +vasofactive +vasoganglion +vasoligation +vasoligature +vasomotion +vasomotor +vasomotorial +vasomotoric +vasomotory +vasoneurosis +vasoparesis +vasopressin +vasopressor +vasopuncture +vasoreflex +vasorontu +vasorrhaphy +vasosection +vasospasm +vasospastic +vasostomy +vasotomy +vasotonic +vasotribe +vasotripsy +vasotrophic +vasova +vasovagal +vasquine +vass +vassalage +vassalboro +vassaldom +vassaless +vassalic +vassalism +vassality +vassalize +vassalless +vassalry +vassalship +vassar +vasselev +vasseur +vasshe +vassil +vassili +vassiliou +vassilis +vassily +vasska +vasso +vassos +vast +vastate +vastation +vaster +vastest +vastianedda +vastidity +vastily +vastine +vastiness +vastis +vastitas +vastitude +vastity +vastly +vastmanlands +vastness +vasto +vasty +vasu +vasudeva +vasuii +vasundhara +vasvirag +vasya +vasyugan +vaszary +vata +vatanen +vateria +vaters +vatful +vatic +vatically +vatican +vaticana +vaticanal +vaticancity +vaticanic +vaticanical +vaticanism +vaticanist +vaticanize +vaticide +vaticinal +vaticinant +vaticinate +vaticination +vaticinator +vaticinatory +vaticinatrix +vatier +vatmaker +vatmaking +vatman +vato +vatoa +vatori +vatrata +vats +vatted +vatteluttu +vatter +vattier +vatting +vatu +vaturanga +vatutin +vatza +vauban +vaucelles +vaucheria +vaucluse +vaud +vaudemont +vaudevillian +vaudevillist +vaudism +vaudrey +vaudy +vaugant +vaugh +vaughan +vaughn +vaughnsville +vaugnerite +vault +vaulted +vaultedly +vaulter +vaulting +vaultlike +vaults +vaulty +vaunt +vauntage +vaunted +vaunter +vauntery +vaunteth +vauntful +vauntiness +vaunting +vauntingly +vauntmure +vaunty +vaup +vaupe +vaupel +vaupes +vauquelinite +vaurien +vautier +vaux +vauxcelles +vauxhall +vauxhallian +vauxite +vauzous +vavasor +vavasory +vavasour +vavau +vaverka +vavilov +vavitch +vavoua +vavra +vavrek +vavroch +vavuniya +vaward +vawter +vaxa +vaxb +vaxc +vaxcdb +vaxd +vaxdockan +vaxectomy +vaxeln +vaxen +vaxf +vaxg +vaxhardware +vaxism +vaxlinker +vaxm +vaxmate +vaxmfg +vaxmud +vaxocentrism +vaxpac +vaxuum +vaxz +vaya +vayas +vayda +vayrynen +vayu +vayuchepang +vazama +vazcaro +vazeo +vazhno +vazimba +vazquez +vazzoler +vbalance +vbar +vbasic +vbbs +vbounded +vboxed +vbviewer +vbxs +vcache +vcapi +vchera +vclassed +vcpapproved +vcpi +vcref +vdeutwiss +vdiff +vdisk +veadar +veale +vealer +vealiness +veallike +veals +vealskin +vealy +veazie +vebbed +veber +veblen +vecchio +veces +vechera +vecherini +vecherinki +vecherkom +vecherom +veck +vecps +vectigal +vection +vectis +vectitation +vectograph +vectographic +vector +vectored +vectorially +vectorized +vectorizing +vectors +vectorvalued +vectory +vectra +vecture +veda +vedado +vedaic +vedaism +vedalia +vedana +vedanga +vedans +vedanta +vedantic +vedantism +vedantist +vedas +vedda +veddah +vedder +veddha +veddoid +vedet +vedette +vedic +vedika +vediovis +vedism +vedist +vedjakin +vedret +vedro +veduis +veeb +veeblefester +veeblefetzer +veeda +veedell +veeder +veedersburg +veedif +veegrep +veen +veena +veenstra +veep +veer +veerable +veerasamy +veered +veerie +veeries +veering +veeringly +veers +veevers +vega +vegabaja +vegas +vegasite +vegeculture +vegelius +vegetability +vegetable +vegetableman +vegetables +vegetablize +vegetably +vegetal +vegetalcule +vegetality +vegetant +vegetarians +vegetated +vegetates +vegetating +vegetation +vegetational +vegetative +vegetatively +vegete +vegeteness +vegetism +vegetive +vegetivorous +vegetoalkali +vegetoanimal +veggedout +veggies +vegitous +veguer +veguita +veguos +vehara +vehees +vehemence +vehemency +vehement +vehemently +vehes +vehhansli +vehicle +vehicles +vehicularly +vehiculary +vehiculate +vehiculation +vehiculatory +vehil +vehling +vehmic +vehnkougna +vehrenberg +veiao +veidt +veigel +veigle +veil +veiled +veiledly +veiledness +veiler +veiling +veilless +veillette +veilleux +veillike +veilmaker +veilmaking +veils +veiltail +veily +vein +veinage +veinal +veinbanding +veined +veiner +veinery +veininess +veining +veinless +veinlet +veinous +veins +veinstone +veinstuff +veinule +veinulet +veinwise +veinwork +veiny +veiphei +veir +veit +veitch +veite +vejar +vejjajiva +vejlby +vejle +vejnax +vejnovic +vejoces +vejos +vejovis +vejoz +vekma +veksler +vekuii +vela +velaga +velal +velamen +velamentous +velamentum +velandrey +velano +velara +velarde +velardenite +velaric +velarium +velarize +velary +velas +velasco +velascos +velasquez +velate +velated +velation +velatura +velayat +velazco +velazquez +velchanos +velcro +velcroed +veld +velda +veldcraft +velde +velden +veldman +veldschoen +veldtschoen +vele +veled +velella +velellidous +velemir +velero +veles +veleta +velez +velho +velhocuiaba +velic +velicate +veliche +velichko +velichkov +velie +veliferous +veliform +veligal +veliger +veligerous +velika +veliki +velikog +velikov +velimir +veling +velinski +veliperi +velitation +velites +veljko +velko +velkovska +vell +vella +vellala +vellamo +velle +velleda +velleity +velleman +vellicate +vellicating +vellication +vellicative +vellinch +vellino +vellon +vellore +vellosine +vellozia +velloziaceae +vellu +vellum +vellumy +velluto +velly +velma +velo +velocchio +veloce +velociman +velocimeter +velocious +velociously +velocipedal +velocipede +velocipedean +velocipedic +velocities +velocitous +velocity +velodrome +velometer +veloria +veloso +velour +veloute +veloutine +velov +veloz +velpen +velryba +velsher +velt +velte +veltre +velum +velumen +velure +velutina +velutinous +velva +velveeta +velveret +velvet +velvetbreast +velveted +velveteen +velveteened +velvetiness +velveting +velvetleaf +velvetlike +velvetry +velvetseed +velvetweed +velvetwork +vely +velzen +vemgo +vempati +vena +venable +venables +venaco +venada +venality +venalization +venalize +venally +venalness +venango +venantes +venantini +venanzite +venatic +venatical +venatically +venation +venational +venator +venatorial +venatorious +venatory +vencola +venda +vendace +vendados +vendaval +vendean +vendee +vendell +vender +vendette +vendettist +vendeuil +vendibility +vendibleness +vendibly +vendicate +vendice +vendidad +vending +venditate +venditation +vendition +venditor +vendor +vendors +vendredi +vendue +vened +venedocia +venedotian +venedy +veneer +veneerer +veneering +venefical +veneficious +veneficness +veneficous +veneice +venema +venemous +venenate +venenation +venene +veneniferous +venenific +venenous +venenousness +venepuncture +venera +venerability +venerable +venerably +veneracea +veneracean +veneraceous +veneral +veneralia +venerance +venerant +venerated +venerating +veneration +venerational +venerative +veneratively +venerator +venere +venerealness +venereology +venerer +veneres +venerial +veneridae +veneriform +veneroni +venery +venesect +venesection +venesector +venesia +veness +veneta +venetes +veneti +venetia +venetian +venetianed +venetic +venezia +venezianti +venezolanas +venezolano +venezuela +venezuelan +veng +vengai +venganza +vengeable +vengeance +vengeant +vengefully +vengefulness +vengeously +venger +vengi +vengo +vengoo +venguswamy +veniable +veniality +venially +venialness +venice +venicecenter +venie +venier +venin +veniplex +venipuncture +venire +venireman +veniremen +venison +venisonlike +venisuture +venita +venite +venix +venizelist +venjohn +venkat +venkataraman +venkman +venlig +venlo +venne +venneker +vennel +venner +vennera +vennes +venning +vennos +venoatrial +venohr +venom +venomed +venomer +venomization +venomize +venomly +venomness +venomous +venomously +venomousness +venomproof +venomsome +venomy +venora +venosal +venose +venosinal +venosity +venostasis +venous +venously +venousness +venstre +vent +venta +ventafax +ventage +ventail +ventantonio +ventax +ventaxians +vented +venter +ventersdorp +venthole +ventidius +ventiduct +ventifact +ventil +ventilable +ventilagin +ventilated +ventilates +ventilating +ventilation +ventilative +ventilator +ventilators +ventilatory +ventimiglia +venting +ventless +ventnor +ventnorcity +vento +ventometer +venton +ventose +ventoseness +ventosity +ventpeg +ventpiece +ventrad +ventral +ventrally +ventralmost +ventralward +ventre +ventres +ventress +ventric +ventricle +ventricles +ventricornu +ventricose +ventricosity +ventricous +ventricular +ventriculite +ventriculose +ventriculous +ventriculus +ventriduct +ventriloqual +ventriloque +ventriloquy +ventrimesal +ventrimeson +ventrine +ventripotent +ventroaxial +ventrocaudal +ventrodorsad +ventrodorsal +ventromedial +ventromedian +ventromesal +ventromesial +ventromyel +ventrone +ventroptosia +ventroptosis +ventroscopy +ventrose +ventrosity +ventrotomy +vents +ventsel +ventspils +ventuari +ventucci +ventura +venturcom +venture +ventured +venturelli +venturer +venturers +ventures +venturia +venturine +venturing +venturings +venturini +venturous +venturously +venu +venucci +venue +venula +venular +venule +venulose +venus +venusia +venust +venustiano +venuta +venutian +venville +venzey +venzon +veps +vepse +vepsian +vepsish +vera +verace +veraciously +veracities +veracity +veracruz +veradale +veradis +veraguas +verandaed +verandah +verandas +verani +verano +verapaz +verardi +verascope +veratral +veratralbine +veratrate +veratria +veratric +veratridine +veratrine +veratrinize +veratrize +veratroidine +veratrole +veratroyl +veratrum +veratryl +veraverbeke +verb +verbaandert +verbage +verbalism +verbalist +verbality +verbalize +verbalized +verbalizer +verbalizes +verbalizing +verbally +verbank +verbarian +verbarium +verbasco +verbascose +verbascum +verbate +verbatim +verbdoubled +verbeck +verbed +verbena +verbenaceae +verbenaceous +verbenalike +verbenalin +verbenarius +verbenate +verbene +verbenol +verbenone +verberate +verberation +verberative +verbesina +verbex +verbicide +verbiculture +verbid +verbiest +verbify +verbigerate +verbile +verbindung +verbit +verbless +verbolatry +verbomania +verbomaniac +verbomotor +verbon +verbose +verbosely +verboseness +verboten +verbous +verbrugge +verbs +verby +vercammen +verch +verchoff +verchok +verchy +vercoe +verd +verda +verdancy +verdantly +verdantness +verdayne +verde +verdea +verdean +verdel +verdelho +verden +verderer +verderership +verdes +verdet +verdi +verdiani +verdict +verdier +verdigre +verdigris +verdigrisy +verdin +verdine +verdinelli +verditer +verditure +verdon +verdonselli +verdooren +verdoux +verdoy +verdugo +verdugocity +verdugoship +verdun +verdunville +verdure +verdured +verdureless +verdurin +verdurous +vere +vereammen +vereberg +verebes +verecund +verecundity +verecundness +vereen +vereheres +verein +verejones +verek +verena +verene +veres +veretennikov +veretillum +vereza +vergangen +vergano +vergara +vergas +verge +vergeboard +verged +vergence +vergency +vergennes +vergent +vergentness +verger +vergeress +vergerism +vergerless +vergership +vergerus +vergery +verges +verghese +vergi +vergiform +vergilianism +verging +verginita +verglas +vergobret +vergueiro +verguers +verhelle +verheyden +verheyen +verhoeven +verhofstadt +verhotz +verhovskii +verhovskim +verhovskiy +verhovsky +veri +veribest +veridical +veridicality +veridically +veridicous +veridity +veriee +verier +veriest +verifiable +verifiably +verificate +verificati +verification +verificative +verificator +verificatory +verified +verifier +verifiers +verifies +verifiziert +verify +verifying +verile +verily +verina +verinder +verine +verion +verisign +verisimilar +verisimility +verism +verist +veristic +verita +veritability +veritable +veritably +veritas +verite +verites +verities +veritism +veritist +veritistic +verity +verjuice +verkhovnyy +verkhovsk +verkina +verkroost +verla +verlac +verlet +verley +verlier +verloc +verloren +verlot +verlyn +verma +vermeesch +vermelha +vermeologist +vermeology +vermes +vermessen +vermetid +vermetidae +vermette +vermetus +vermeulen +vermian +vermicelli +vermicidal +vermicide +vermicious +vermicle +vermicular +vermicularia +vermicularly +vermiculate +vermiculated +vermicule +vermiculose +vermiculous +vermiform +vermiformia +vermiformis +vermiformity +vermiformous +vermifugal +vermifuge +vermifugous +vermigerous +vermigrade +vermilingues +vermilinguia +vermilion +vermilionize +vermillion +vermillot +vermilyea +vermin +verminal +verminate +vermination +verminer +verminicidal +verminicide +verminlike +verminly +verminosis +verminous +verminously +verminproof +verminy +vermiparous +vermis +vermivorous +vermix +vermont +vermonter +vermontese +vermontville +vermorel +vern +verna +vernac +vernacle +vernacularly +vernaculars +vernaculate +vernadskij +vernality +vernalize +vernally +vernant +vernation +vernaudon +vernay +vernaya +verndale +verne +vernel +verner +vernette +verney +verni +vernice +vernicose +vernile +vernility +vernin +vernine +vernition +verno +vernon +vernoncenter +vernonhill +vernonhills +vernonia +vernonieae +vernonin +vernor +vernorvinge +vernos +vernulyea +vernunft +vernur +verobeach +verolengo +veron +verona +veronabeach +veronal +veronalism +veroneeka +veronese +veronesi +veronica +veronicella +veronika +veronike +veronique +verou +verpa +verplanck +verrall +verre +verreau +verree +verrel +verrell +verrenneau +verreth +verria +verriculate +verriculated +verricule +verrier +verriere +verrilli +verros +verruca +verrucano +verrucaria +verrucarioid +verrucated +verruciform +verrucose +verrucosis +verrucosity +verrucous +verruculose +verruga +vers +versa +versability +versable +versableness +versace +versailles +versal +versant +versate +versatel +versatile +versatilely +versatility +versation +versative +verschieben +verschiedene +verschnitzen +verschuer +verse +versecraft +versed +verseless +verselet +versemaker +versemaking +verseman +versemanship +versemonger +versemongery +versenden +verser +verses +versesmith +verset +versette +verseward +versewright +vershire +versi +versia +versicle +versicler +versicolor +versicolored +versicular +versicule +versifiable +versifiaster +versificator +versified +versifier +versiform +versify +versifying +versik +versiloquy +versine +versing +versini +version +versional +versioner +versioning +versionist +versionize +versions +versionsof +versipel +versity +versiu +verslist +verso +versois +versor +verst +versta +verstand +versteeg +verstegen +verstraete +versual +versuchen +versus +versyp +vert +verte +vertebraless +vertebrally +vertebraria +vertebrarium +vertebras +vertebrata +vertebrated +vertebrates +vertebration +vertebre +vertebriform +vertes +vertex +vertexes +vertibility +vertible +vertibleness +vertical +verticalism +verticality +vertically +verticalness +verticals +verticil +verticillary +verticillate +verticillium +verticillus +verticity +vertiginate +vertigines +vertiginous +vertigo +vertilabrum +vertilinear +vertimeter +vertisoft +vertolli +vertrees +vertumnus +veruca +verulamian +veruled +verumontanum +veruni +veruntreute +veruschka +verushka +vervain +vervainlike +verve +vervecine +verveer +vervel +verveled +vervelle +vervenia +vervet +verville +verwaltung +verwendet +verwey +very +verynasty +verytas +verzilli +vesa +vesalainen +vesale +vesalian +vesania +vesanic +vesbite +veselee +veseli +veselii +veselko +veselya +vesermyan +vesey +veshtire +vesi +vesicae +vesical +vesicant +vesicate +vesicated +vesicating +vesication +vesicatory +vesicle +vesicocele +vesicoclysis +vesicopubic +vesicorectal +vesicospinal +vesicotomy +vesicularia +vesicularly +vesiculary +vesiculase +vesiculata +vesiculatae +vesiculate +vesiculation +vesicule +vesiculiform +vesiculitis +vesiculose +vesiculotomy +vesiculous +vesiculus +veskit +veskovec +veslemoy +vesna +vesota +vespa +vespacide +vespal +vesperal +vesperian +vespering +vespermann +vespers +vespertide +vespertilian +vespertilio +vespertinal +vespertine +vespery +vespiary +vespid +vespidae +vespiform +vespina +vespine +vespoid +vespoidea +vespucci +vessel +vesseled +vesselful +vessels +vessignon +vest +vesta +vestaburg +vestagder +vestalia +vestalship +vestas +vested +vestee +vestel +vester +vesterdal +vestfold +vestgronland +vestiarian +vestiarium +vestiary +vestibula +vestibular +vestibulary +vestibulate +vestibuled +vestibulum +vestige +vestiges +vestigial +vestigially +vestigian +vestigiary +vestigium +vestiment +vestimental +vestimentary +vesting +vestini +vestinian +vestiture +vestlet +vestly +vestment +vestmental +vestmented +vestments +vestral +vestrical +vestries +vestrify +vestry +vestrydom +vestryhood +vestryish +vestryism +vestryize +vestryman +vestrymanly +vestrymen +vests +vestuary +vestural +vesture +vesturer +vestures +vesuvian +vesuvianite +vesuviate +vesuvite +vesuvius +veszeli +veszelyes +veszelyite +veszprem +veta +vetan +vetanda +vetchling +vetchy +veteng +veteran +veterancy +veteraness +veteraniya +veteranize +veterans +veterinaries +veterinary +vetil +vetitive +vetivene +vetivenol +vetiver +vetiveria +vetivert +vetkousie +veto +vetoed +vetoer +vetoes +vetoing +vetoism +vetoist +vetoistic +vetoistical +vetrach +vetrano +vetrie +vetrina +vetro +vetted +vettenranta +vetter +vetterlund +vettese +vettri +vettura +vetturino +vettuvan +vetumboso +vetust +vetusty +vetweng +veuglaire +veure +veuve +vevay +veverka +vewwy +vexable +vexation +vexations +vexatiously +vexatory +vexed +vexedly +vexedness +vexer +vexes +vexful +vexil +vexillar +vexillarious +vexillary +vexillate +vexillation +vexillum +vexing +vexingly +vexingness +vexler +vexley +vext +veyden +veyrat +vezeau +vezina +vezinet +vezo +vfast +vfat +vfossil +vfreq +vfstab +vftu +vgacap +vgafil +vgap +vgapin +vgaplanets +vgetty +vgiicx +vgrep +vgrind +vhen +vhll +vhlls +viabilities +viability +viable +viably +viacheslav +viacrypt +viaducts +viaggiatory +viaggio +viagram +viagraph +viai +viajaca +vial +vialful +vialmaker +vialmaking +vialogue +vials +viameter +vian +viana +viand +viander +viands +viano +viaont +viarisio +viasheslav +viasta +viasyn +viatic +viatica +viatical +viaticum +viatometer +viator +viatorial +viatorially +viau +vibart +vibbentrop +vibe +vibeke +vibert +vibes +vibetoite +vibex +vibgyor +vibilia +vibix +viborg +vibracular +vibraculoid +vibraculum +vibrance +vibrancy +vibrantly +vibraphone +vibrata +vibrated +vibratile +vibratility +vibrating +vibratingly +vibration +vibrational +vibrations +vibratiuncle +vibrative +vibrator +vibratory +vibratos +vibrio +vibrioid +vibrion +vibrionic +vibrissa +vibrissae +vibrissal +vibrograph +vibromassage +vibrometer +vibromotive +vibronic +vibrophone +vibroscope +vibroscopic +vibulnan +viburnic +viburnin +vicar +vicarage +vicarate +vicaress +vicarial +vicarian +vicarianism +vicariate +vicariously +vicarly +vicars +vicarship +viccholi +vicco +viccol +viccola +vice +vicearxava +vicecomes +vicecomital +vicegeral +vicegerency +vicegerent +vicek +viceless +vicelike +vicenary +vicennial +vicens +vicente +vicenza +vicenzina +viceregal +viceregally +viceregent +vicereine +viceroyal +viceroyalty +viceroydom +viceroyship +vices +vicesimal +vicety +viceversa +viceversally +vich +vichada +vicheara +vicholi +vicholo +vichy +vichyite +vichyssoise +vici +vicia +vicianin +vicianose +vicilin +vicinage +vicine +vicinism +vicinities +vicinity +viciosity +vicious +viciously +viciousness +vicissitous +vicissitudes +vick +vicka +vickers +vickery +vicki +vickie +vicksburg +vicky +vicmans +vico +vicoajaccio +vicoite +vicomte +vicontiel +vicsun +victal +victim +victimhood +victimizable +victimize +victimized +victimizer +victimizers +victimizes +victimizing +victims +victless +victor +victordom +victorfish +victoria +victorian +victorianism +victorianize +victorianly +victorians +victoriate +victoriatus +victories +victorine +victorious +victoriously +victorium +victorjara +victoro +victorovich +victorplatt +victors +victorville +victory +victoryless +victorymills +victress +victrix +victrola +victual +victualage +victualed +victualer +victualing +victualled +victualless +victualling +victualry +victuals +vicuna +vicuong +vicxin +vida +vidal +vidalek +vidalia +vidalin +vidarte +vidaverri +vidclock +vidcontrol +vidder +vidders +viddhal +viddibbs +viddui +videa +videc +videl +videlicet +videndum +video +videocards +videocraft +videodrivers +videodrome +videodrones +videogame +videogenic +videoin +videokatalog +videomode +videophone +videos +videosnap +videotape +videotaped +videotapes +videotex +videotrax +vidette +vidfun +vidia +vidian +vidin +vidiri +vidjeli +vidmar +vidmer +vidno +vidocq +vidom +vidon +vidonia +vidonov +vidor +vidov +vidovic +vidovik +vidri +vidriales +vidry +vids +vidu +vidua +viduage +vidual +vidually +viduate +viduated +viduation +viduinae +viduine +viduity +vidunda +viduous +viduya +vidya +vidzeme +viebok +vied +viedma +viegas +vieger +viehweg +vieil +vieira +vieiro +viejo +viel +viele +vieles +vielle +vielleicht +viena +viene +vieng +vienna +viennese +viens +vientiane +vieques +vier +viera +vieras +vierde +vieregge +vierling +viertel +viertelein +vies +vietminh +vietmuong +vietnam +vietnamchina +vietnamese +vietnamlaos +vietzslau +vieux +vieuxfort +vieve +view +viewable +viewably +viewed +viewer +viewers +viewfinder +viewiness +viewing +viewless +viewlessly +viewly +viewpoint +viewpoints +viewprn +views +viewsafe +viewsome +viewster +viewtown +viewworthy +viewx +viewy +vifda +viga +vigan +vigas +vigderhous +vigdis +vige +vigeant +vigeland +vigentennial +vigesimal +vigesimation +vigia +vigil +vigilance +vigilancy +vigilant +vigilantes +vigilantist +vigilantly +vigilantness +vigilate +vigilation +vigils +vigneron +vignetted +vignetter +vignettes +vignetting +vignettist +vignin +vignola +vignoli +vignon +vigo +vigoda +vigonia +vigor +vigorist +vigorless +vigorous +vigorously +vigorousness +vigors +vigovroux +vigran +vigro +vigue +vigye +vigzar +vihara +viharo +vihear +vihodit +vihodnie +vihodnih +vihrog +vihuela +vihur +vihuri +viidet +viii +viipuri +viitaniemi +vijai +vijao +vijay +vijayalaks +vijn +vijya +vika +vikachal +vikas +vikhlin +viki +viking +vikingism +vikinglike +vikings +vikingship +vikki +vikky +vikram +viktor +viktoria +viktorovic +vikulin +vikuril +vikzar +vila +vilaca +vilaiwan +vilallonga +vilar +vilas +vilasini +vilay +vilayet +vilayil +vilbert +vilcea +vilches +vilcu +vilda +vilde +vildo +vile +vilehearted +vilela +vilely +vileness +viler +vilest +vileu +vilhan +vilhelm +vilhelmina +vilho +vili +viliam +viliazhchai +viliborg +vilicate +vilification +vilified +vilifier +vilifies +vilifying +vilifyingly +vilipend +vilipendency +vilipender +vilis +vility +vilizi +viljev +vill +villa +villaca +villadom +villaette +villafane +village +villageful +villagehood +villageless +villagelet +villagelevel +villagelike +villagemills +villageous +villager +villageress +villagers +villagery +villages +villaget +villageward +villagey +villaggio +villagism +villagomez +villagra +villagrande +villagrove +villain +villainage +villaindom +villainess +villainies +villainist +villainously +villainproof +villains +villainy +villakin +villal +villalba +villaless +villalike +villalonga +villalpando +villamaria +villamont +villanage +villanella +villanelle +villanette +villano +villanous +villanously +villanova +villanovan +villanueva +villanus +villany +villapark +villar +villard +villarica +villaridge +villarreal +villas +villate +villatic +villatios +villaune +villaviciosa +villcabamba +ville +villechaize +villeda +villefort +villefranche +villegas +villeinage +villeiness +villeinhold +villella +villenage +villeneuve +villeplatte +villepontoux +villere +villeret +villers +villette +villi +villian +villiaumite +villiaze +villiers +villiferous +villified +villiform +villify +villigera +villino +villisca +villitis +villoid +villon +villoresi +villose +villosity +villous +villously +villus +vilma +vilmansen +vilmorin +vilnius +vilo +vilok +vilonia +vilozny +vilya +vilyujsk +vimal +vimana +vimen +vimereati +vimful +vimi +viminal +vimineous +vims +vimtim +vimukthi +vina +vinaceous +vinaconic +vinage +vinagron +vinaigre +vinaigrette +vinaigretted +vinaigrier +vinaigrous +vinal +vinalhaven +vinalia +vinard +vinas +vinasse +vinata +vinay +vinayak +vinca +vince +vincennes +vincent +vincenta +vincente +vincenti +vincentian +vincentina +vincentis +vincentown +vincenzi +vincenzo +vincetoxicum +vincetoxin +vinchina +vinci +vincibility +vincible +vincibleness +vincibly +vinck +vincke +vinco +vincture +vincular +vinculate +vinculation +vinculum +vindelici +vindemial +vindemiate +vindemiation +vindemiatory +vindemiatrix +vindex +vindhyan +vindicable +vindicably +vindicated +vindicating +vindication +vindicative +vindicator +vindicatory +vindicatress +vindictive +vindictively +vinding +vindobona +vindow +vindresser +vine +vinea +vineal +vineatic +vineburg +vined +vinedressers +vinefretter +vinegar +vinegarbend +vinegarer +vinegarette +vinegarish +vinegarist +vinegarroon +vinegarweed +vinegary +vinegerone +vinegrove +vinegrower +vinegrub +vineity +vineland +vineless +vinelet +vinelike +vinemont +vinenet +viner +vinery +vines +vinestalk +vinet +vinette +vinewise +viney +vineyard +vineyarder +vineyarding +vineyardist +vineyards +vinfield +ving +vinge +vingelli +vingerhoed +vinges +vingolf +vingranovski +vingtun +vinh +vinhatico +vini +vinic +vinicio +vinicius +vinicultural +viniculture +vinifera +viniferous +vinification +vinificator +vining +vinita +vinitius +vinland +vinmavis +vinnell +vinnette +vinni +vinnie +vinny +vino +vinoacetous +vinod +vinods +vinogrades +vinolence +vinolent +vinologist +vinology +vinometer +vinomethylic +vinose +vinosity +vinous +vinously +vinousness +vinquish +vinson +vint +vinta +vintage +vintagebox +vintager +vintaging +vintem +vintener +vinter +vinterland +vintlite +vintneress +vintnership +vintnery +vinton +vintondale +vintress +vintry +viny +vinyl +vinylbenzene +vinylene +vinylic +vinylidene +vinza +viol +viola +violability +violable +violableness +violably +violaceae +violacean +violaceous +violaceously +violal +violales +violanin +violante +violate +violated +violater +violates +violating +violation +violational +violations +violative +violator +violators +violatory +violature +violaumayer +viole +violence +violent +violently +violentness +violents +violenza +violer +violescent +violet +violeta +violethill +violetish +violetlike +violets +violetta +violette +violetwise +violety +violey +violina +violine +violinette +violinist +violinistic +violinists +violinlike +violinmaker +violinmaking +violins +violist +viollaz +violmaker +violmaking +violon +violoncello +violoncellos +violone +violotta +viols +violuric +viorel +viosterol +viotia +viotti +vipadali +vipal +viper +vipera +viperan +viperess +viperfish +viperian +viperid +viperidae +viperiform +viperina +viperinae +viperine +viperish +viperishly +viperlike +viperling +viperoid +viperoidea +viperous +viperously +viperousness +vipers +vipery +vipi +vipil +viplounge +vipolitic +vipresident +viprut +vipw +viqar +viqueen +vira +virac +viragin +viraginian +viraginity +viraginous +virago +viragoes +viragoish +viragolike +viragos +viragoship +viral +virales +virani +virant +virbius +virchick +virden +virdin +virdon +vire +viree +virelay +viremia +viremic +virender +virent +vireo +vireonine +vireos +virescence +virescent +virey +virga +virgal +virgan +virgate +virgated +virgater +virgation +virge +virgenes +virgie +virgil +virgilia +virgilina +virgilio +virgilism +virgin +virgina +virginal +virginale +virginalist +virginality +virginally +virginals +virgineous +virginhead +virginia +virginiacity +virginid +virginie +virginio +virginitis +virginity +virginium +virginlike +virginly +virgins +virginship +virginville +virgo +virgoe +virgola +virgula +virgular +virgularia +virgularian +virgulate +virgultum +viri +virial +viriato +viricide +virid +viridene +viridescence +viridescent +viridian +viridigenous +viridine +viridite +viridity +virific +virify +virii +viril +virile +virilely +virileness +virilescence +virilescent +virilify +viriliously +virilism +virilist +virility +virion +viripotent +viritrate +virk +virl +virlojeux +virma +virna +virole +viroled +virological +virologist +virology +viron +viroqua +virose +virosis +virous +virtanen +virtility +virton +virtser +virtu +virtua +virtual +virtualism +virtualist +virtuality +virtualize +virtually +virtue +virtued +virtuefy +virtueless +virtueproof +virtues +virtuless +virtuosa +virtuose +virtuosic +virtuosities +virtuosos +virtuosoship +virtuous +virtuouslike +virtuously +virtuousness +virtuozno +virtus +virucidal +virucide +viruela +viruhalt +virulence +virulency +virulent +virulented +virulently +virulentness +viruliferous +virus +virusafe +virusbuster +viruscidal +viruscide +virusemic +viruses +virusscan +virvali +viryal +visa +visable +visaed +visage +visaged +visagraph +visaing +visakorn +visalia +visarga +visaroff +visas +visavis +visaya +visayak +visayan +visayas +visbor +viscacha +viscera +visceral +visceralgia +viscerally +viscerate +visceration +visceromotor +viscerotomy +viscerotonia +viscerotonic +viscerous +vischer +viscid +viscidity +viscidize +viscidly +viscidness +viscidulous +viscin +visclosky +viscoidal +viscolize +viscometry +viscontal +visconti +viscoscope +viscose +viscosimeter +viscosimetry +viscosities +viscountcy +viscountess +viscounts +viscountship +viscounty +viscously +viscousness +viscus +viscuso +visdata +vise +vised +viseman +visentin +viseu +vish +vishavan +vishinsky +vishli +vishliut +vishnavite +vishnuism +vishnuite +vishnuvite +visholi +vishu +vishwa +vishwak +vishwanath +visibilities +visibility +visibilize +visible +visibleness +visibly +visicalc +visie +visigoth +visigothic +visik +visilay +visile +vising +visio +vision +visional +visionally +visionaries +visionarily +visionary +visioned +visioneer +visioner +visionic +visionist +visionize +visionless +visionlike +visionmonger +visionproof +visions +visist +visit +visita +visitable +visitandine +visitant +visitation +visitational +visitations +visitative +visitator +visitatorial +visite +visited +visitee +visiter +visitest +visiteth +visiting +visitment +visitor +visitoress +visitorial +visitors +visitorship +visitress +visitrix +visits +visive +vislal +visne +visock +visockis +vison +visor +visored +visorless +visorlike +visors +vispro +vispy +visser +vist +vista +vistaed +vistal +vistaless +vistamente +vistas +visto +vistula +vistulian +visuactive +visual +visualage +visualist +visuality +visualize +visualized +visualizer +visualizes +visualizing +visually +visualroute +visuals +visualtopic +visualwiter +visuometer +visuopsychic +visuosensory +visvanatha +vita +vitacco +vitaceae +vitaglass +vitaglian +vitai +vitaille +vital +vitalarkhava +vitale +vitali +vitaliano +vitalic +vitalijus +vitalik +vitalism +vitalist +vitalistic +vitalities +vitality +vitaliy +vitalization +vitalize +vitalized +vitalizer +vitalizing +vitalizingly +vitallium +vitally +vitalness +vitals +vitalsigns +vitaly +vitam +vitamer +vitameric +vitamin +vitamines +vitaminic +vitaminize +vitaminology +vitamins +vitapath +vitapathy +vitaphone +vitas +vitascope +vitascopic +vitasti +vitativeness +vite +vitebmogilev +vitellarian +vitellarium +vitellary +vitelleschi +vitelli +vitellicle +vitellin +vitelline +vitellogene +vitellose +vitellus +viterbite +viteu +vitez +vith +vithala +vithayasai +vithit +viti +vitia +vitiable +vitiated +vitiating +vitiation +vitiator +viticetum +viticulose +viticultural +viticulture +viticulturer +vitiferous +vitiliginous +vitiligo +vitiligoidea +vitiosity +vitis +vitium +vitja +vito +vitochemic +vitochemical +vitola +vitold +vitoon +vitor +vitoria +vitra +vitrage +vitrail +vitrailed +vitrailist +vitrain +vitraux +vitray +vitre +vitreal +vitrean +vitreform +vitrella +vitremyte +vitreosity +vitreouslike +vitreously +vitreousness +vitrescence +vitrescency +vitrescent +vitrescible +vitreum +vitric +vitrics +vitrifaction +vitrifacture +vitrifiable +vitrified +vitriform +vitrifying +vitrina +vitrine +vitrinoid +vitriolate +vitriolation +vitrioline +vitriolize +vitriolizer +vitrite +vitrobasalt +vitrophyre +vitrophyric +vitrotype +vitrous +vitruvian +vitruvianism +vitruvius +vitse +vitskhin +vitt +vitta +vittate +vitthya +vitti +vitto +vittoni +vittore +vittori +vittoria +vittorina +vittorini +vittorio +vitu +vitucci +vitular +vituline +vituperable +vituperance +vituperate +vituperated +vituperating +vituperation +vituperative +vituperator +vituperatory +vituperious +vitus +vitya +viuva +viva +vivacious +vivaciously +vivaldi +vivan +vivandiere +vivariia +vivariiums +vivarin +vivarium +vivary +vivas +vivat +vivax +vive +vivean +viveca +vivek +viveka +vively +vivency +vivent +viver +vivere +viveros +viverridae +viverriform +viverrinae +viverrine +vivers +vives +vivi +vivia +vivian +viviana +viviane +vivianite +vivianna +vivianne +vivid +vividialysis +vividity +vividly +vividness +vivie +vivien +viviene +vivienne +vivier +vivific +vivificate +vivification +vivificative +vivificator +vivified +vivifier +vivifying +vivigana +vivigani +viviparism +viviparity +viviparous +viviparously +vivipary +viviperfuse +vivir +vivisect +vivisection +vivisective +vivisector +viviyan +vivyan +vivyanne +viwivakeu +viwuluaua +vixenish +vixenishly +vixenishness +vixenlike +vixenly +vixie +vixlin +viyda +viydet +vizard +vizarded +vizardless +vizardlike +vizardmonger +vizcaya +vizier +vizierate +viziercraft +vizierial +viziership +vizik +vizion +vizir +vizircraft +viziting +vizivaushego +vizivayut +vizor +vizvary +vizzini +vlaams +vlaamsch +vlach +vlachopoulos +vlachos +vlachs +vlad +vladek +vladimir +vladimiro +vladimirov +vladimirskii +vladislav +vladislava +vladislavpgp +vladisvyat +vladivostok +vladmir +vlado +vlady +vladyslav +vlaenderen +vlahos +vlajnoy +vlarisio +vlasov +vlastik +vlatko +vlax +vlbi +vlci +vldldptr +vleck +vlei +vlek +vliets +vlissigen +vlissingen +vlit +vljublennych +vlom +vlomax +vlore +vlsi +vlsif +vlsis +vlsms +vltava +vlum +vmazalsya +vmbackup +vmchange +vmcord +vmdisk +vmidi +vmintegral +vmodem +vmon +vmsa +vmsc +vmsd +vmsize +vmsupport +vmtecmex +vmtp +vmxa +vnachale +vnet +vnimania +vnsp +vnutrennih +voadmin +voar +vobiscum +vobschem +vobshem +voca +vocability +vocably +vocabulaire +vocabular +vocabularied +vocabularies +vocabulary +vocabularys +vocabulation +vocabulist +vocal +vocalion +vocalise +vocalism +vocalist +vocalistic +vocality +vocalizable +vocalization +vocalize +vocalized +vocalizer +vocalizes +vocalizing +vocaller +vocally +vocalness +vocals +vocation +vocational +vocationally +vocations +vocative +vocatively +vocazione +voce +voces +vochysiaceae +vocicultural +vociferance +vociferant +vociferate +vociferated +vociferating +vociferation +vociferative +vociferator +vociferize +vociferosity +vociferously +vocification +vocimotor +vocoder +vocular +vocule +voda +vodai +vodere +vodian +vodicka +vodilam +vodjaschemu +vodka +vodkha +vodki +vodku +vodolazsky +voduc +voegelein +voegelin +voegelins +voegeln +voelcker +voelker +voeller +voelund +voelz +voenkomata +voennim +voerhoeve +voet +voeten +voetian +vogan +vogeding +vogedins +vogel +vogelkop +vogeloed +vogelsang +vogen +vogesite +vogl +vogler +voglia +voglis +voglite +vogon +vogons +vogt +vogtia +vogtsvendsen +vogue +voguey +voguish +vogul +voguly +vohkone +vohs +voice +voicebased +voiced +voiceful +voicefulness +voiceless +voicelessly +voicelet +voicelike +voicemail +voicenet +voiceover +voicer +voicers +voices +voicing +void +voidable +voidableness +voidance +voide +voided +voidee +voider +voiding +voidless +voidly +voidness +voids +voight +voile +voinitskaya +voinitsky +voiotia +voir +voisin +voit +voitel +voiturette +voiturier +voivode +voivodeship +voix +vojinovic +vojislav +vojni +vojta +vojvodina +vojvodine +vokeo +vokes +voko +vokrug +volable +volage +voland +volans +volant +volantly +volapuk +volapuker +volapukism +volapukist +volar +volata +volatic +volatile +volatilely +volatileness +volatiles +volatilities +volatility +volatilize +volatilized +volatilizer +volatilizing +volation +volational +volauvent +volbea +volborg +volborthite +volcae +volcan +volcanalia +volcanian +volcanic +volcanically +volcanicity +volcanist +volcanite +volcanity +volcanize +volcano +volcanoes +volcanoism +volcanology +volcanos +volcanus +volcheck +volchegursky +voldai +volder +voldseth +voldstad +voldtekt +vole +volemitol +volency +volent +volently +volery +voles +volet +voleur +volfe +volga +volgaic +volger +volgograd +volhynite +voli +volin +volipresence +volipresent +volitant +volitate +volitation +volitational +volitiency +volitient +volition +volitional +volitionally +volitionary +volitionate +volitionless +volitive +volitorial +volk +volkanskaya +volke +volker +volkie +volkman +volkmana +volkmann +volkmar +volkmer +volkoff +volkonskaya +volkov +volkskammer +volkslectuur +volksraad +volksunie +voll +vollaerts +volley +volleyball +volleyballs +volleyed +volleyer +volleying +volleyingly +volleys +vollmer +vollrath +volman +volmut +volnath +volner +volney +volo +volodarsky +volodia +volodin +volodya +volof +vologod +volok +volonghi +volonoff +volonte +volos +voloshina +volost +volow +volpe +volpi +volpinari +volplane +volplanist +vols +volsci +volscian +volsella +volsellum +volshana +volski +volsky +volstag +volsteadism +volt +volta +voltabandama +voltage +voltages +voltagraphy +voltairian +voltairish +voltairism +voltaism +voltaite +voltal +voltameter +voltametric +voltammeter +voltan +voltaplast +voltatype +volteface +voltigeur +voltinism +voltivity +voltize +volts +voltzite +volubilate +volubility +voluble +volubleness +volubly +volucrine +volume +volumed +volumes +volumescope +volumeter +volumetrical +volumetry +volumette +voluminal +voluminosity +voluminous +voluminously +volumist +volumnius +volumometer +volumometry +voluntariate +voluntarily +voluntarist +voluntarity +voluntary +voluntaryism +voluntaryist +voluntative +volunteer +volunteered +volunteering +volunteerism +volunteerly +volunteers +voluntown +volupt +voluptary +voluptas +voluptua +voluptuarian +voluptuaries +voluptuary +voluptuate +voluptuosity +voluptuously +volupty +voluspa +voluta +volutate +volutation +volute +voluted +volutidae +volutiform +volutin +volution +volutoid +volva +volvate +volvelle +volvemos +volvent +volver +volverton +volvo +volvocaceae +volvocaceous +volvulus +volz +vomer +vomerine +vomeronasal +vomica +vomicine +vomit +vomitable +vomited +vomiter +vomiteth +vomiting +vomitingly +vomition +vomitive +vomitiveness +vomito +vomitorium +vomitory +vomits +vomiture +vomiturition +vomitus +vomitwort +vomni +vona +vonavona +voncannon +vonck +vondel +vondell +vonderhaar +vonderlinn +vonderscher +vonderweidt +vondis +vondohlen +vondsira +voneck +vonetta +vongba +vongvichit +vonic +vonjy +vonk +vonkluck +vonkoro +vonkutu +vonlehmden +vonlude +vonn +vonna +vonni +vonnie +vonny +vonore +vonormy +vonsenite +vonsprang +vonun +voobsche +voobschem +voobshe +voodo +voodoo +voodooism +voodooist +voodooistic +voodoolights +voodoos +voom +voor +vooren +voorhees +voorhoeve +voorhout +voorlooper +voorstad +voort +voortrekker +vopalensky +vophsi +vopni +vopo +voprosi +voptnt +voqtwaq +vora +voracious +voraciously +voraginous +vorago +vorant +vorarlberg +vorbeck +vore +vorhand +voringer +vorld +vorlon +vorlooper +vorn +vornwall +vorobev +vorobyov +vorondil +vorondreo +voronin +voronoi +voronov +voronveliya +voroval +vorovstvo +vorpal +vorreaux +vorska +vorstellen +vorstellung +vorster +vortex +vortexes +vortical +vortically +vorticel +vorticella +vorticellid +vorticial +vorticiform +vorticism +vorticist +vorticose +vorticosely +vorticular +vorticularly +vortiginous +vortumnus +voru +vorzon +vosberg +vosburg +vosdek +vose +vosges +vosgian +voshaar +voskov +voskovec +vosky +vospalenie +vosper +voss +vossburg +vossen +vostochnii +vostochniy +vostok +vosu +vosup +vosuqi +vota +votable +votal +votally +votaress +votaries +votarist +votation +votaw +vote +voted +voteen +voteless +votem +voter +voters +votes +votiak +votian +votic +voting +votish +votive +votively +votiveness +votja +votograph +votometer +votre +votress +votrian +votyak +vouaousi +vouch +vouchable +vouchee +voucher +voucheress +vouchers +vouches +vouching +vouchment +vouchsafe +vouchsafed +vouchsafing +voudrais +vouge +vougeot +vougy +voulalt +voules +vouli +vous +voussoir +voute +voutere +voutsinas +vouyouklaki +vova +vovo +vovodeo +vowak +vowed +vowedst +vowel +vowelinitial +vowelish +vowelism +vowelist +vowelization +vowelize +vowelless +vowelletter +vowellike +vowels +vowely +vower +vowess +vowest +voweth +vowinckel +vowing +vowless +vowmaker +vowmaking +vows +voxel +voxlib +voxphone +voxpop +voyadjis +voyage +voyageable +voyaged +voyager +voyagers +voyages +voyageur +voyaging +voyagings +voyagis +voyaje +voyance +voyda +voyeur +voyeurism +voyeuristic +voyna +voytek +vozduh +vozel +vozmojnocti +vozniknut +vozny +vozvratom +vparil +vperedi +vphd +vpns +vpolne +vprochem +vrabel +vrabie +vracham +vradmin +vraic +vraicker +vraicking +vrain +vrakatas +vramdir +vrancea +vrangelya +vranitzky +vratima +vrbaite +vrbetic +vrbsky +vrcholu +vrci +vrdoltak +vredenburgh +vredevoe +vree +vregbody +vregmain +vregsubj +vregsum +vremena +vremeni +vremya +vreni +vreugdenhil +vrfy +vriddhi +vries +vrinda +vrml +vrmouse +vrode +vronsky +vroom +vrother +vrouw +vrouwerff +vrsion +vrudhula +vsafe +vsal +vseek +vsegda +vsego +vseh +vsem +vsemi +vsemu +vsetaki +vsevolod +vsey +vsgo +vshare +vshvro +vsio +vsiu +vsplil +vspominaya +vspomni +vspomnil +vstal +vstavit +vstby +vsyakaya +vsyakie +vsyakih +vsyakoe +vsyakoy +vsyakuy +vsys +vtest +vtisnutsya +vtms +vtoc +vtopus +vtorom +vtregman +vtserf +vtune +vtunix +vucanovich +vuchkov +vucinich +vucom +vucoms +vueprint +vuggy +vuhoan +vuignier +vuikaba +vuillemin +vuite +vujisic +vujistic +vujovic +vukotic +vukovich +vulaa +vulaga +vulava +vulcan +vulcanalia +vulcanalial +vulcanalian +vulcanian +vulcanic +vulcanicity +vulcanism +vulcanist +vulcanite +vulcanizable +vulcanizate +vulcanize +vulcanized +vulcanizer +vulcanizing +vulcanology +vulcans +vulgare +vulgarian +vulgarish +vulgarism +vulgarist +vulgarities +vulgarity +vulgarize +vulgarized +vulgarizer +vulgarizing +vulgarlike +vulgarly +vulgarness +vulgarwise +vulgate +vulgus +vulkov +vuln +vulner +vulnerable +vulnerably +vulnerary +vulnerate +vulneration +vulnerative +vulnerose +vulnific +vulnose +vulpecula +vulpecular +vulpeculid +vulpes +vulpic +vulpicidal +vulpicide +vulpicidism +vulpinae +vulpinism +vulpinite +vulsella +vulsellum +vulsinite +vultan +vultur +vulture +vulturelike +vultures +vulturewise +vulturidae +vulturinae +vulturine +vulturish +vulturism +vulturn +vulturous +vulum +vulung +vulva +vulvae +vulval +vulvar +vulvas +vulvate +vulviform +vulvitis +vulvocrural +vulvouterine +vulvovaginal +vumba +vumbu +vunadidir +vunapope +vunapu +vuncannon +vunch +vundla +vundtia +vung +vungunya +vunjo +vunk +vunmarama +vunum +vunun +vunung +vuolo +vuong +vuosalmi +vuosi +vupuran +vuquoc +vuras +vure +vureas +vurich +vusani +vute +vuteen +vutere +vvelzer +vvidu +vvsplayer +vvvv +vvvvhost +vvvvv +vvvvvv +vvvvvvv +vvvvvvvv +vwang +vwela +vwezhi +vwin +vxdwriter +vxfs +vyacheslav +vyas +vyborniy +vydra +vying +vyingly +vyky +vylder +vynalez +vyner +vyola +vyper +vypress +vyrnwy +vyrus +vyse +vysheslavia +vyskocil +vysotsky +vyss +vyssi +vyssotsky +vyto +vyza +vzroslyak +vzyal +vzyali +vzyatki +waac +waag +waal +waali +waals +waama +waamwang +waana +waanjama +waanyi +waapa +waar +waasi +waat +waata +waavu +waaz +wabag +waban +wabasha +wabasso +wabbaseka +wabber +wabbit +wabble +wabbled +wabbling +wabbly +wabby +wabe +wabena +wabeno +wabi +wabid +wabit +wabl +wabo +waboni +wabster +wabuda +wabui +wabula +wabuma +wabunga +wacago +wacara +waccabuc +wace +wacehmaker +wachaga +wachapreague +wachelko +wachenheimer +wacheski +wachi +wachmann +wachna +wachter +wachtmeister +wachtstetter +wachuset +waci +wacigbe +wacipaire +wacissa +wack +wacken +wacker +wackerhagen +wackerly +wackernagel +wackers +wackier +wackiest +wackily +wackiness +wacky +waclaw +waco +waconia +wacs +wactlar +wada +wadable +wadaginam +wadaginamb +wadaginan +wadai +wadalei +wadamkong +wadapilaut +wadaria +wadasinghe +wadau +wadd +waddar +waddaulah +waddayen +wadded +waddell +wadden +waddent +wadder +waddick +wadding +waddington +waddle +waddled +waddler +waddlesome +waddling +waddlingly +waddly +waddy +waddya +waddywood +wade +wadeable +wadeck +waded +wadega +wadegiles +wadema +wadena +wader +waders +wades +wadesboro +wadestown +wadesville +wadeye +wadhams +wadibu +wadies +wading +wadingly +wadingriver +wadiri +wadis +wadiwadi +wadiyara +wadiyari +wadjari +wadjeri +wadkins +wadley +wadlike +wadlington +wadlow +wadmaker +wadmaking +wadmal +wadman +wadmeal +wadna +wadner +wadset +wadsetter +wadsworth +wady +wadzoli +waechter +waeckeri +waeckerli +waeg +waegeneer +waelder +waelulu +waengatu +waenoot +waer +waesala +waesama +waescher +waesome +waespe +waesuck +waeyen +wafanga +wafd +wafdist +wafer +waferer +waferish +wafermaker +wafermaking +wafers +waferwoman +waferwork +wafery +waff +waffa +waffle +waffled +waffles +wafflike +waffling +waffly +waflib +waft +waftage +wafter +wafting +wafture +wafty +waga +wagadi +wagana +waganda +waganga +waganging +wagap +wagarabai +wagaria +wagarindem +wagarville +wagau +wagaun +wagawaga +wagbeard +wagdi +wage +waged +wagedom +wagelabor +wagelak +wageless +wagelessness +wageman +wagenboom +wagener +wagenheim +wagenhiem +wageprice +wager +wagerer +wagering +wagers +wages +wagesman +wagework +wageworker +wageworking +wagga +waggable +waggably +wagged +waggel +waggener +waggenheim +wagger +waggery +wagget +waggett +waggie +wagging +waggish +waggishly +waggishness +waggled +waggling +wagglingly +waggly +waggner +waggon +waggoner +waggumbura +waggy +waghari +wagholi +waghorne +waghray +wagi +wagifa +wagiman +wagimuda +waging +wagle +waglike +wagling +waglund +wagner +wagneresque +wagnerian +wagneriana +wagnerianism +wagnerism +wagnerist +wagnerite +wagnerize +wagnor +wagogo +wagoma +wagon +wagonable +wagonage +wagoner +wagoness +wagonette +wagonful +wagonheim +wagonload +wagonmaker +wagonmaking +wagonman +wagonmaster +wagonmound +wagonry +wagons +wagonsmith +wagontown +wagonway +wagonwayman +wagonwork +wagonwright +wagoodoogoo +wagow +wagram +wags +wagsod +wagsome +wagstaff +wagstaffe +wagtail +waguha +wagumi +wagupmeri +wagwag +wagwants +wagweno +wagwit +waha +wahab +wahabi +wahabiism +wahabit +wahabitism +wahahe +wahai +wahakaim +wahau +wahba +wahe +waheeda +wahehe +waherama +wahgi +wahh +wahiawa +wahibo +wahima +wahine +wahke +wahkiacus +wahkon +wahl +wahlberg +wahlbom +wahlenbergia +wahlgren +wahlstrom +wahlund +wahmiri +waho +wahono +wahoo +wahpekute +wahpeton +wahre +wahrenberger +wahrendorf +wahrer +wahua +wahyara +waia +waiala +waialua +waiampi +waianae +waiapu +waiata +waibling +waibronbano +waibronwai +waibuk +waibula +waic +waica +waichi +waicuri +waicurian +waid +waida +waidina +waidjelu +waidjewa +waidler +waidner +waidoro +waiema +waif +waifoi +waifs +waigal +waigala +waigali +waigan +waigel +waigeli +waigeo +waigh +waigiu +waiguli +waiheke +waihemo +waiilatpuan +waijara +waik +waika +waikabubak +waikala +waikato +waikhara +waikino +waikisu +waikly +waikness +waikohu +wail +wailaki +wailapa +wailbri +wailed +wailegi +wailemi +wailer +wailful +wailfully +wailic +wailing +wailingly +wails +wailsome +wailu +wailuku +waily +waima +waimaa +waimaha +waimairi +waimaja +waimanalo +waimarino +waimate +waimea +waimiri +waimoa +wain +waina +wainage +wainanana +wainap +wainbote +wainer +waines +wainful +wainio +wainman +wainright +wainrope +wainscoat +wainscoted +wainscoting +wainscott +wainscotted +wainscotting +wainungomo +wainwright +wainyi +wainzo +waioli +waipa +waipahu +waipawa +waipiro +waipu +waipukurau +wairarapa +wairch +waird +wairepo +wairewa +wairoa +wairsh +wais +waisamu +waisara +waise +waisman +waissman +waist +waistband +waistcloth +waistcoated +waistcoateer +waistcoating +waistcoats +waisted +waister +waisting +waistless +waists +wait +waitaki +waitangi +waited +waitepark +waiter +waiterage +waiterdom +waiterhood +waitering +waiterlike +waiters +waitership +waites +waiteth +waiteville +waiting +waitingly +waitingtime +waitman +waitomo +waitotara +waitress +waitresses +waitresss +waits +waitsburg +waitsfield +waitss +waitz +waivatua +waived +waiver +waiverable +waivers +waivery +waives +waiving +waivod +waiwai +waiwode +waja +wajakes +wajamli +wajan +wajana +wajang +wajao +wajapi +wajaru +wajewa +wajir +wajnberg +wajo +wajoli +waka +wakabayashi +wakakabic +wakako +wakal +wakamba +wakan +wakande +wakane +wakao +wakari +wakarusa +wakasa +wakashan +wakashiba +wakasihu +wakatobi +wakawaka +wakayama +wakching +wakde +wake +wakeby +waked +wakeel +wakeeney +wakefield +wakeforest +wakeful +wakefully +wakefulness +wakeham +wakeless +wakely +wakeman +waken +wakenda +wakened +wakener +wakeneth +wakening +waker +wakerife +wakes +wakesleep +waketh +waketime +wakf +wakhan +wakhani +wakhi +wakhigi +wakiadi +wakif +wakiki +wakim +wakimoto +wakin +wakindiga +waking +wakingly +wakita +wakitaneri +wakiup +wakka +wakken +wakler +wakombe +wakon +wakona +wakonda +wakore +wakorumba +wakove +wakpala +waks +waksberg +waktu +wakua +wakue +wakulla +wakut +wakwafi +waky +wala +walach +walachian +walad +walaf +walaha +walahee +walak +walamaloo +walamo +walandano +walane +walang +walapai +walari +walarishe +walas +walawa +walbeck +walbeg +walberg +walbiri +walborn +walbridge +walbrook +walbrzych +walburg +walburn +walcamp +walchia +walchli +walcozt +walczewski +wald +walda +waldau +waldeck +waldemar +waldemor +walden +waldenburg +waldenses +waldensian +walder +waldflute +waldgrave +waldgravine +waldheim +waldheimia +waldhorn +waldick +waldie +waldis +waldman +waldmeister +waldmuller +waldo +waldoboro +waldon +waldow +waldport +waldran +waldridge +waldrip +waldron +walds +waldsteinia +waldwick +waled +walend +walenska +walepiece +waler +wales +walesa +walescenter +walese +waleska +waletzky +walewort +walford +walge +walhalla +walhonding +wali +walia +walian +walid +walikale +walimi +waling +walinskia +walio +waliperi +walisi +walk +walkable +walkabout +walkaway +walkd +walked +walkedst +walken +walker +walkers +walkersville +walkerton +walkertown +walkervalley +walkerville +walkest +walketh +walkies +walkin +walking +walkingstick +walkins +walkist +walkley +walkmill +walkmiller +walkowiak +walkrife +walks +walkside +walksman +walkthrough +walkthroughs +walktube +walktubes +walkup +walkure +walkway +walkways +walkyrie +wall +walla +wallaba +wallabies +wallace +wallaceton +wallach +wallachia +wallachian +wallaert +wallaga +wallah +wallamo +walland +wallaroo +wallas +wallawalla +wallaya +wallback +wallbanger +wallbank +wallbird +wallblake +wallburg +walle +walled +walledlake +wallen +wallenbergia +wallenger +wallenquist +wallenstein +waller +wallerian +walles +wallet +walletful +wallets +walley +walleye +walleyed +walleyworld +wallflower +wallflowers +wallful +wallgren +wallhick +wallia +wallie +walling +wallingford +wallinscreek +wallis +wallise +wallisian +wallisien +wallisville +walliw +wallkill +walllake +wallless +wallman +wallo +wallock +walloee +wallon +wallonia +wallonian +wallonie +walloon +walloonie +walloonlake +wallop +walloper +walloping +wallow +wallowa +wallowed +wallower +wallowing +wallowish +wallowishly +wallows +wallpaper +wallpapering +wallpapers +wallpiece +walls +wallsburg +wallsend +wallside +wallsten +wallula +wallwise +wallwork +wallwort +wally +wallyworld +walmajarri +walmajiri +walmatjari +walmatjarri +walmatjiri +walmer +walmor +walmsley +walnut +walnutbottom +walnutcove +walnutcreek +walnutgrove +walnuthill +walnutport +walnutridge +walnuts +walnutshade +walo +waloff +waloht +walomwe +walpapi +walpiri +walpole +walpolean +walpoling +walpurga +walpurgis +walpurgite +walrand +walraven +walrod +walrond +walrus +walruses +walrustitty +walsea +walsenburg +walser +walsh +walshe +walshville +walsin +walsingham +walster +walston +walstonburg +walt +walta +waltari +waltdisney +walter +walterboro +walterian +walters +waltersburg +walterstein +walterville +walth +walthall +walthef +walther +walthill +walti +walting +waltis +walton +waltonian +waltonville +waltraut +waltz +waltzed +waltzer +waltzes +waltzing +waltzlike +waltzy +walurigi +walvis +walworth +waly +walya +walycoat +walz +wama +wamai +wamais +wamar +wamara +wamariri +wamas +wamayi +wamba +wambach +wambais +wambera +wambisa +wamble +wambley +wambliness +wambling +wamblingly +wambly +wambon +wambsganz +wambuba +wambugu +wambutti +wambutu +wamdiu +wame +wamefou +wamego +wamel +wameling +wamesa +wamia +wammikin +wamoang +wamola +wamoma +wamora +wamozart +wamp +wampanoag +wampar +wampee +wampit +wample +wampler +wampsville +wampum +wampumpeag +wampur +wampus +wamrmeit +wamsak +wamsutter +wamus +wamwan +wana +wanadi +wanai +wanakena +wanam +wanamaker +wanambre +wanami +wanamingo +wanana +wanang +wanap +wanapum +wanaque +wanatah +wanawo +wanblee +wanchancy +wanchek +wanchese +wanching +wancho +wanchuk +wanci +wand +wanda +wandabong +wandala +wandamen +wandaran +wandarang +wandel +wander +wanderable +wandered +wanderer +wanderers +wanderest +wandereth +wandering +wanderingly +wanderings +wanderjahr +wanderlust +wanderluster +wanderly +wanderoo +wanders +wandery +wanderyear +wandflower +wandi +wandia +wandie +wandis +wandji +wandjuk +wandl +wandle +wandlike +wandlimb +wando +wandomi +wandoo +wandorobo +wandrous +wands +wandscher +wandsman +wandy +wandya +waneatta +wanechi +waneci +waned +waneless +wanely +wanenis +wanes +waneta +wanetsi +wanette +wang +wanga +wangai +wangala +wangan +wanganui +wangara +wangata +wangateur +wangay +wangchuck +wangday +wangenheim +wanggamadu +wanggo +wanggoh +wanggom +wanghee +wangk +wangka +wangkatja +wangki +wangkumara +wangled +wangler +wangling +wango +wangom +wangoni +wangrace +wangtooth +wangurri +wanham +wanhope +wanhorn +wani +waniabu +wanibe +wanibuchi +wanica +wanids +wanigan +wanigela +waning +waninnawa +wanion +wanisko +wanja +wanji +wank +wanka +wankapin +wankers +wanki +wankiness +wanking +wankle +wankliness +wankly +wankometer +wanks +wanky +wanle +wanless +wanley +wanly +wanman +wann +wanna +wannabe +wannabee +wannabees +wannaska +wannell +wanner +wanness +wannest +wannish +wanny +wano +wanoni +wanrufe +wans +wansbeek +wansonsy +wansum +want +wantage +wantagh +wantakia +wanted +wanter +wanteth +wantful +wanthill +wanthrift +wanting +wantingly +wantingness +wantji +wantless +wantlessness +wanto +wantoat +wanton +wantoner +wantonlike +wantonly +wantonness +wantree +wants +wantwit +wanty +wanua +wanukaka +wanuma +wanwipha +wanwordy +wanworth +wany +wanya +wanyakyusa +wanyamwezi +wanyasa +wanyaturu +wanyo +wanyoro +wanzeck +wanzer +waodani +waola +waorani +wapa +wapacut +wapakoneta +wapan +wapanucka +wapatoo +wapatu +wapcaplet +wape +wapei +wapeipalei +wapella +wapello +wapentake +wapi +wapishana +wapishanan +wapisiana +wapitxa +wapitxana +wapoga +wapogoro +wapokomo +wapon +wapp +wappapello +wappato +wappenschaw +wapper +wapping +wappo +wapscallion +wapwallopen +wara +warabal +warabi +warabori +waraga +warakagoda +waram +warant +warao +warapiche +warapu +warasai +warat +waratah +warawara +waray +waraya +warayan +waraywaray +warba +warbah +warbeck +warbird +warbled +warblelike +warbler +warblerlike +warbles +warblet +warbling +warblingly +warbly +warbonnet +warbranch +warbreeds +warbuckle +warbucks +warburger +warburton +warch +warck +warcraft +warcross +warcry +ward +warda +wardable +wardage +wardapet +warday +warde +warded +wardei +wardell +warden +wardency +wardenry +wardens +wardenship +wardensville +warder +warderer +wardership +wardesdoor +wardfrom +wardha +wardholding +wardialer +warding +wardite +wardjn +wardle +wardless +wardlike +wardmaid +wardman +wardmote +wardo +wardress +wardrobe +wardrober +wardrobes +wardrop +wards +wardsboro +wardship +wardsmaid +wardsman +wardswoman +wardtown +warduji +wardville +wardwite +wardwoman +ware +waregga +wareham +wareho +warehou +warehouse +warehouseage +warehoused +warehouseful +warehousemen +warehouser +warehouses +warehousing +wareke +warekena +wareless +warema +waremaker +waremaking +wareman +warembori +warenbori +wareneck +warengo +wareroom +wares +waresboro +wareshoals +waretown +warez +wareznet +warf +warfare +warfarer +warfarin +warfaring +warfel +warfield +warfordsburg +warforge +warftpd +warful +warga +wargames +wargaming +wargarindem +wargasm +wargla +wargnier +wargs +warhammer +warhead +warhit +warhol +warhorse +wari +waria +wariadai +wariaga +warialau +wariapano +warier +wariest +warihio +warikiana +warikyana +warilau +warilow +warily +warinduced +wariness +waringin +warioba +waris +warish +warison +warja +warjawa +warji +wark +warkamoowee +warkaybipim +warke +warkentin +warki +warkimbe +warkman +warl +warlang +warlen +warless +warlessly +warlike +warlikely +warlikeness +warlock +warlocks +warlord +warlords +warlpiri +warluck +warly +warm +warmable +warman +warmblooded +warmed +warmedly +warmer +warmers +warmest +warmeth +warmful +warmhouse +warming +warmington +warminster +warmly +warmness +warmnu +warmongering +warmouth +warms +warmsprings +warmth +warmthless +warmus +warmuth +warn +warncke +warndarang +warne +warnecke +warned +warneke +warnel +warner +warnerrobins +warners +warnerville +warnicki +warning +warningly +warningproof +warnings +warnish +warnman +warnock +warnoth +warns +warnt +waro +waromge +waropen +warori +warowaro +warp +warpable +warpage +warpamp +warpath +warpcalc +warpcenter +warpcron +warped +warpedmpeg +warper +warpglobe +warping +warple +warplike +warpnote +warpok +warpradio +warproof +warps +warptuner +warpu +warpware +warpwise +warpzip +warra +warrabri +warracres +warragal +warrambool +warramunga +warran +warrand +warrandice +warrant +warrantable +warrantably +warranted +warrantee +warranter +warranties +warranting +warrantise +warrantless +warrantor +warrants +warranty +warratau +warrau +warre +warred +warree +warrelated +warrellow +warren +warrencenter +warrendale +warrender +warrener +warrenlike +warrens +warrensburg +warrensville +warrenton +warrenville +warrer +warreth +warri +warrick +warrigal +warrin +warriner +warring +warrington +warrior +warrioress +warriorhood +warriorism +warriorlike +warriormine +warriors +warriorship +warriorsmark +warriorwise +warroad +warrok +wars +warsa +warsanbin +warsaw +warschauer +warschitz +warse +warsel +warshaw +warshawsky +warship +warships +warshof +warsle +warsler +warst +warszawa +wartan +wartburg +warte +warted +wartern +wartezeiten +wartflower +warth +wartha +warthen +warthog +wartier +wartiest +wartime +wartless +wartlet +wartlike +wartman +wartproof +wartrace +warts +warttenberg +wartung +wartweed +wartwort +warty +wartyback +waru +warua +warumungic +warumungu +warun +waruna +warundi +warup +waruwaru +warve +warwards +warwhoop +warwick +warwicke +warwickite +warwind +warwolf +warworn +wary +wasa +wasabi +wasagara +wasan +wasandawi +wasango +wasanye +wasapea +wasare +wasat +wasatch +wasaw +wascal +wascawwy +waschatko +waschuk +wasco +wascott +wascowishram +wase +waseca +waseda +wasegua +wasel +wasembo +wasepnau +wasera +waseta +wasey +wash +washabaugh +washability +washable +washableness +washaki +washaway +washbasket +washbourne +washbrew +washbrook +washburn +washburne +washcloth +washday +washdc +washdeva +washdish +washdown +washed +washen +washer +washerless +washerman +washermen +washers +washerwife +washerwoman +washerwomen +washery +washeryman +washes +washest +washhand +washhouse +washier +washiest +washin +washiness +washing +washings +washington +washingtonia +washingtons +washita +washkuk +washland +washmaid +washman +washndc +washo +washoan +washoe +washoff +washougal +washpot +washproof +washrag +washroad +washroom +washshed +washstand +washta +washtail +washtray +washtrough +washtub +washtucna +washvax +washway +washwoman +washwomen +washwork +wasi +wasida +wasilah +wasilei +wasior +wasir +wasiri +wasit +wasitova +wasiveri +wasiweri +waskia +waskish +waskom +wasley +wasmeier +wasn +wasner +wasnt +wasoga +wasoi +wasola +wasona +wasp +waspen +wasphood +waspier +waspiest +waspily +waspishly +waspishness +wasplike +waspling +waspnesting +wasps +waspuk +waspy +wass +wassa +wassaic +wassail +wassailer +wassailous +wassailry +wassel +wassell +wasser +wasserman +wassie +wassily +wassim +wassisi +wassmann +wasson +wassu +wassulunka +wassup +wast +wasta +wastable +waste +wasteboard +wasted +wasteful +wastefully +wastefulness +wastel +wasteland +wastelbread +wasteless +wasteman +wastement +wasteness +wastepaper +wasteproof +waster +wasterful +wasterfully +wasters +wastes +wasteth +wastethrift +wastewater +wastewhacker +wasteword +wasteyard +wasting +wastingly +wastingness +wastland +wastrife +wasty +wasu +wasuai +wasukuma +wasulu +wasusu +waswahili +wasylenko +wasylyk +wata +watabala +wataga +watai +watakaia +watakataui +watala +watalu +wataluma +watam +watan +watanabe +watanka +watap +watapor +watara +watase +watauga +watcgl +watch +watchable +watchboat +watchcase +watchcat +watchcry +watchdog +watched +watchell +watchen +watcher +watchers +watches +watcheth +watchett +watchfree +watchful +watchfully +watchfulness +watchhouse +watching +watchingly +watchings +watchkeeper +watchless +watchmaker +watchmaking +watchman +watchmanly +watchmanship +watchmate +watchmen +watchment +watchorn +watchout +watchpoints +watchtower +watchwise +watchwoman +watchwood +watchword +watchwords +watchwork +watcom +watdragon +wateeka +wategroup +water +waterage +waterbailage +waterbed +waterbelly +waterberg +waterboard +waterbok +waterborne +waterboro +waterbosh +waterbrain +waterbuck +waterbucks +waterbury +waterchat +watercolor +watercooled +watercourse +watercraft +watercress +watercup +watercycle +waterdeficit +waterdoe +waterdrinker +waterdrop +watered +wateredst +waterer +waterest +watereth +waterfall +waterfalls +waterfield +waterfinder +waterflood +waterflow +waterford +waterfowl +watergate +waterglass +waterhead +waterhole +waterhorse +waterhouse +waterie +waterily +wateriness +watering +wateringly +wateringman +waterings +waterish +waterishly +waterishness +waterlander +waterlandian +waterleaf +waterleave +waterless +waterlessly +waterlike +waterlilies +waterlilly +waterlily +waterline +waterlog +waterlogged +waterlogger +waterlogging +waterloo +watermain +waterman +watermanship +watermark +watermarked +watermaster +watermelon +watermelons +watermill +watermonger +waternaux +waterphone +waterport +waterpot +waterpots +waterpower +waterproof +waterproofer +waterquake +waters +waterscape +watersharing +watershed +watershoot +watersider +waterskin +watersmeet +waterson +watersports +waterspout +waterspouts +watersprings +waterstead +waterston +watersurplus +watertight +watertightal +watertown +watervalley +waterview +waterville +watervliet +waterward +waterwards +waterways +waterweed +waterwheel +waterwise +waterwoman +waterwood +waterwork +waterworker +waterworks +waterworm +waterworn +waterwort +watery +watfiv +watford +watfordcity +wath +watha +wathena +wathey +wathstead +wati +watie +watifa +watiwa +watjari +watkin +watkins +watkinsglen +watkinson +watkinsville +watlain +watling +watmath +watmore +watmsg +watney +watom +watonga +watrous +watsa +watseka +watson +watsonia +watsontown +watsonville +watsun +watt +wattanapanif +wattape +wattcp +wattereus +watterlow +watters +watterson +wattier +wattis +wattle +wattlebird +wattled +wattles +wattless +wattlework +wattling +wattman +wattmeter +watton +watts +wattsbardam +wattsberg +wattsburg +wattsville +watty +watu +watubela +watulai +watusi +watut +watyi +watznauer +waubay +wauble +waubun +wauch +waucheul +wauchle +wauchope +waucht +wauchula +waucoma +wauconda +waudeim +waudem +wauf +waugh +waughy +waukau +waukee +waukegan +wauken +waukesha +waukit +waukomis +waukon +waukrife +waul +waumle +wauna +waunakee +waunana +wauner +wauneta +wauns +waup +waupaca +waupe +waupun +waur +waura +wauregan +waurika +wausa +wausau +wausaukee +wauseon +wautoma +wauve +wauzeka +wavable +wavably +wavclean +wavconv +wave +waveconvert +waved +waveforms +wavefronts +waveguides +wavelab +waveland +wavelengths +waveless +wavelessly +wavelessness +wavelike +wavellite +wavemark +wavement +wavemeter +waveproof +waver +waverable +wavered +waverer +wavereth +wavering +waveringly +waveringness +waverley +waverly +waverlyhall +waverous +wavers +wavertree +wavery +waves +wavesample +waveson +wavesurgeon +wavetable +wavetree +waveward +wavewise +wavey +wavget +wavicle +wavier +waviest +wavily +wavin +waviness +waving +wavingly +wavira +wavpcm +wavplay +wavre +wavrec +wavs +wavy +wawa +wawah +wawaka +wawan +wawarsing +wawaskeesh +wawel +wawerka +wawiai +wawick +wawilag +wawina +wawjayga +wawl +wawoi +wawol +wawonii +waxahachie +waxberry +waxbill +waxbird +waxbush +waxchandler +waxchandlery +waxed +waxen +waxer +waxers +waxes +waxeth +waxflatter +waxflower +waxhaw +waxhearted +waxie +waxier +waxiest +waxily +waxiness +waxing +waxingly +waxlike +waxmaker +waxmaking +waxman +waxweed +waxwing +waxworker +waxworking +waxworks +waya +wayaka +wayamli +wayampi +wayan +wayana +wayanatrio +wayang +wayao +wayapi +wayaricuri +wayback +wayberry +waybird +waybook +wayborn +waybread +waybright +waybung +waycha +waycott +waycross +wayen +wayfare +wayfarer +wayfaring +wayfaringly +wayfellow +waygal +waygang +waygate +waygoing +waygone +waygoose +wayhouse +waying +waylaid +wayland +waylay +waylayer +waylaying +wayleave +wayler +wayless +wayling +waylla +waylon +waymaker +wayman +waymark +waymarks +waymart +waymate +waymire +wayne +waynecity +waynesboro +waynesburg +waynesfield +waynesville +waynetown +waynoka +wayoli +wayoro +waypost +ways +wayside +waysider +waysliding +waythorn +wayto +waytowich +wayu +wayuru +wayward +waywarden +waywardly +waywardness +waywiser +waywode +waywodeship +wayword +wayworn +waywort +wayzata +wayzgoos +wayzgoose +waza +wazaizara +wazan +wazang +wazed +wazir +waziri +waziristan +wazirstan +wazoo +wbtrace +wcarchive +wcide +wciu +wcle +wcslc +wcupa +wdconfig +wdcont +wdeut +wdows +wdumpevt +wead +weagle +weak +weakbrained +weaken +weakened +weakener +weakeneth +weakening +weakens +weaker +weakest +weakfish +weakhanded +weakhearted +weakish +weakishly +weakishness +weakley +weaklier +weakliest +weakliness +weakling +weaklings +weakly +weakminded +weakmouthed +weakness +weaknesses +weaky +wealch +weald +wealden +wealdsman +wealso +wealth +wealthier +wealthiest +wealthily +wealthiness +wealthless +wealthmaker +wealthmaking +wealthmonger +wealths +wealthy +weam +weanable +weaned +weanedness +weanel +weaner +weaning +weanling +weanoc +weanyer +weapemeoc +weapon +weaponed +weaponeer +weaponless +weaponmaker +weaponmaking +weaponproof +weapons +weaponshaw +weaponshow +weaponsmith +weaponsmithy +wear +wearability +wearable +weare +wearer +weareth +weariable +wearied +weariedly +weariedness +wearier +weariest +wearieth +weariful +wearifully +wearifulness +weariless +wearilessly +wearily +weariness +wearing +wearingly +wearinng +wearish +wearishly +wearishness +wearisome +wearisomely +wearnes +wearpc +wearproof +wears +weary +wearying +wearyingly +wearyworld +weasand +wease +weasel +weaselfish +weaseling +weasellike +weaselly +weasels +weaselship +weaselskin +weaselsnout +weaselwise +weaser +weasisi +weason +weather +weatherall +weatherboard +weatherbreak +weatherby +weathercock +weathercocks +weathercocky +weathered +weatherer +weatherfish +weatherfolks +weatherford +weatherglass +weathergleam +weatherhead +weathering +weatherly +weathermaker +weatherman +weathermen +weathermost +weatherology +weathers +weathersbee +weatherspoon +weathertight +weathervane +weatherward +weatherwax +weatherwise +weatherworn +weathery +weatogue +weaubleau +weavable +weave +weaveable +weaved +weavement +weaver +weaverbird +weaveress +weavers +weaverville +weaves +weavest +weaving +weazen +weazened +weazeny +webanimetor +webb +webbandit +webbcity +webbed +webber +webbersfalls +webberville +webbing +webbrowser +webbville +webby +webcal +webcam +webcollector +webcompass +webconnect +webconvert +webcreator +webcruizer +webdown +webedit +webeditor +webel +weber +weberian +webeye +webfeet +webferret +webflixpro +webfoot +webfooted +webfooter +webgenie +webgrabber +webgraphics +webimage +webiste +webless +webley +weblike +weblinkz +webmaker +webmaking +webmaster +webmirror +webmoney +webmotion +webnavigator +webo +weboverdrive +webpad +webpage +webpallet +webpromote +webrazor +webroot +webs +webscripter +webseeker +webserver +webshots +website +websleuth +websnake +webson +webster +webstercity +websterian +websterite +websters +websterville +webstyle +websurveyor +webtransite +webtree +webtrend +webtrends +webutil +webvcr +webwhack +webwhacker +webwilly +webwolf +webwork +webworks +webworm +webworn +webx +webzip +wechbaugh +wechsler +wecht +weck +wecker +weckwerth +weda +wedana +wedani +wedau +wedaun +wedawan +wedbed +wedbedrip +wedded +weddedly +weddedness +weddell +wedder +wedderburn +wedding +weddinger +weddings +weddle +weddo +wede +wedebo +wedebye +wedekind +wedel +wedeln +wedge +wedgeable +wedgebill +wedged +wedgefield +wedgeless +wedgelike +wedger +wedges +wedgeshaped +wedgewise +wedgeworth +wedgie +wedging +wedgitude +wedgwood +wedgy +wedi +wedin +wedjit +wedlock +wednesday +wednesdays +wedowee +wedron +weds +wedseday +wedset +weebl +weeble +weech +weed +weeda +weedable +weedage +weedeater +weeded +weeder +weedery +weedful +weedhook +weedier +weediest +weediness +weeding +weedingtime +weedish +weedkiller +weedless +weedlike +weedling +weedmark +weedow +weedproof +weeds +weedsport +weedville +weeg +weejun +week +weekday +weekdays +weekend +weekender +weekenders +weekending +weekends +weekley +weeklies +weekling +weeklong +weekly +weeknight +weeks +weeksbury +weeksmills +weekwam +weel +weela +weelfard +weelfaured +weemba +weemen +weems +ween +weena +weendigo +weeness +weenie +weenies +weening +weenix +weenong +weeny +weep +weepable +weeped +weeper +weepered +weepest +weepeth +weepful +weepier +weepiest +weeping +weepingly +weepingwater +weeps +weepy +weer +weerahandi +weesatche +weese +weesh +weeshy +weest +weet +weetbird +weetless +weetweet +weever +weevil +weeviled +weevillike +weevilly +weevilproof +weevils +weevily +weewow +weeze +wefers +wefsen +weft +weftage +wefted +wefty +wega +wegal +wegam +wegele +wegener +wegenerian +weger +wegge +wegman +wegner +wegotism +wegrostek +wegrowicz +wehe +wehrlite +wehrly +wehrung +weib +weibull +weibust +weibyeite +weichselwood +weicker +weide +weiden +weidenborner +weidenfeller +weiderman +weidinger +weidler +weidman +weidyenye +weier +weierstrass +weigang +weigel +weigela +weigelite +weigh +weighable +weighage +weighbar +weighbauk +weighbridge +weighed +weigher +weighership +weigheth +weighhouse +weighin +weighing +weighings +weighman +weighment +weighs +weighshaft +weight +weightchaser +weighted +weightedly +weightedness +weightier +weightiest +weightily +weightiness +weighting +weightings +weightless +weightlessly +weightman +weightometer +weights +weighty +weih +weihbach +weihs +weikert +weil +weila +weilin +weim +weima +weimann +weimar +weinbender +weinberg +weinberger +weincheck +weiner +weinert +weingarten +weingott +weining +weinkauf +weinmann +weinmannia +weinrich +weinstadt +weinstoc +weinstock +weintraub +weinzieri +weip +weiping +weippe +weir +weirangle +weird +weirdcomix +weirder +weirdest +weirdful +weirdish +weirdless +weirdlike +weirdliness +weirdly +weirdness +weirdos +weirdsome +weirdward +weirdwoman +weirich +weiring +weirsdale +weirton +weirwood +weis +weisbachite +weisberg +weiscoff +weisef +weisell +weisenberg +weiser +weism +weisman +weismannian +weismannism +weismuller +weiss +weissbach +weissberg +weisse +weisser +weissert +weisses +weissite +weissman +weissmuller +weissner +weissnichtwo +weist +weit +weitek +weitere +weiteren +weitspekan +weitz +weitzel +weiwuer +weixi +weizsacker +wejack +weka +wekau +wekeen +weki +welaka +welam +welaung +welbeck +welby +welch +welchberger +welche +welcher +welches +welchjames +welchman +welchscreek +welcome +welcomed +welcomeless +welcomely +welcomeness +welcomer +welcomers +welcomes +welcoming +welcomingly +weld +welda +weldability +weldable +weldcave +welded +welden +welder +welders +welding +weldless +weldment +weldon +weldona +weldor +welds +wele +welea +weleetka +welega +weleki +welemur +welenmelon +welf +welfare +welfaring +welfarism +welfic +welford +welham +weli +weliki +welitsch +welk +welker +welkin +welkinlike +well +wella +welladvised +wellaffected +wellaga +wellamo +welland +wellard +wellarmed +wellat +wellaway +wellbehaved +wellbeloved +wellborn +wellbred +wellchosen +wellcomposed +wellcurb +welldefined +welldesigned +welldevised +welldoing +welldrawn +welldressed +welled +welleducated +wellega +wellequipped +wellfavored +wellfavoured +wellfed +wellfleet +wellford +wellformed +wellfounded +wellgred +wellgroomed +wellgrounded +wellhammer +wellhead +wellheeled +wellhole +welling +wellington +wellingtonia +wellish +wellknit +wellknown +welllaid +wellll +wellmade +wellmaker +wellmaking +wellman +wellmeaning +wellmeant +wellmer +wellnatured +wellnear +wellner +wellness +wellnigh +wello +wellpinit +wellpleasing +wellprovided +wellring +wells +wellsboro +wellsbridge +wellsburg +wellsian +wellside +wellsish +wellsite +wellspent +wellspring +wellsprings +wellsriver +wellstannery +wellstead +wellstocked +wellston +wellstone +wellstrand +wellsville +welltasted +wellthumbed +welltimed +wellton +welltrodden +wellweighed +wellwisher +wellwooded +wellworn +wellwritten +welly +wellyard +welmers +welniak +welo +welqite +wels +welsch +welsford +welsh +welsher +welshery +welshism +welshland +welshlike +welshman +welshness +welshry +welshwoman +welshy +welsium +welsle +welt +welted +welten +welter +welterweight +welting +welton +welty +welwitschia +welz +wemadeit +wemale +wemasin +wemba +wembere +wembi +wembley +weme +wemegbe +wemil +wemin +wemless +wemmick +wemo +wemotaci +wempe +wemper +wems +wenatchee +wences +wench +wenchang +wenchen +wencher +wenches +wenchi +wenching +wenchless +wenchlike +wenchow +wenchowese +wenck +wencke +wend +wenda +wendall +wende +wended +wendel +wendelberger +wendeline +wendell +wendelldepot +wenden +wenders +wendet +wendi +wendic +wendice +wendie +wendin +wending +wendish +wendland +wendling +wendorf +wendover +wends +wendt +wendy +wendye +wene +weneed +wenetsi +wenfa +wenfu +wenger +wengraf +wengren +wengrof +wengsoni +wenham +wenhsiang +wenjenn +wenk +wenli +wenlock +wenlockian +wenman +wenn +wennebergite +wennemann +wenner +wennerstrom +wennish +wenny +wenona +wenonah +wenrohronon +wens +wenshan +wensley +wensleydale +went +wenta +wentest +wentletrap +wentwhistle +wentworth +wentzel +wentzville +wenxi +wenya +wenyon +wenzel +wenzhou +weogufka +weott +wepf +wepner +weppa +wepper +weppler +wept +wera +weraaa +werafuta +weranos +werba +werbel +werchan +werchikwar +werchowinci +werchter +werdandi +werden +werdenberg +werders +werdin +werdoge +were +werebear +werecalf +werefolk +werefox +weregild +werehyena +werejaguar +werekena +wereleopard +weren +werent +weresteve +weretai +weretiger +werewolf +werewolfish +werewolfism +werewolves +werf +werff +wergeld +wergil +wergild +weri +weriagar +werick +werikena +werinama +weringh +weringia +werkeister +werkmeister +werle +werlemen +werling +wermatang +wermuth +wernecke +werner +wernerian +wernerism +wernerite +wernersville +werni +wernicke +wernik +weron +werowance +werra +wersch +wersh +wert +wertet +werth +wertham +wertheimer +wertherian +wertherism +wertmuller +werton +werts +wertz +werugha +wervel +werwolf +wery +wesby +wesco +wescott +wese +wesenberg +wesener +wesi +weskan +weskit +weslaco +weslake +wesley +wesleyan +wesleyanism +wesleyism +wesleys +wesling +wesoloski +wesolowski +wesolowsky +wess +wessel +wesselhoeft +wesselink +wessell +wesselman +wesselow +wessels +wesselton +wessely +wessenberg +wessexman +wessin +wessington +wessler +wessman +wesson +west +westalton +westaugusta +westaway +westbabylon +westbaldwin +westbam +westbamm +westbend +westberlin +westbethel +westblocton +westboro +westborough +westbowdoin +westboxford +westboylston +westbranch +westbrook +westbrooklyn +westburke +westbury +westbuxton +westby +westcamp +westcampton +westcentral +westchatham +westchazy +westchester +westchicago +westcliffe +westcoast +westcolumbia +westconcord +westcopake +westcornwall +westcott +westcourt +westcovina +westcreek +westdale +westdanby +westdanville +westdecatur +westdennis +westdover +weste +westeaton +westedmeston +westelkton +westen +westend +westenfield +westenra +wester +westerberg +westerfield +westergren +westerhazy +westering +westerlies +westerliness +westerlo +westerlund +westermeier +westermeyer +westermost +western +westerner +westerners +westerngrove +westerngurma +westernhagen +westernism +westernize +westernized +westernizing +westernly +westernport +westerns +westernstyle +westernville +westerplatte +westervelt +westerville +westerwards +westex +westexeter +westfairlee +westfalite +westfall +westfalls +westfalmouth +westfargo +westfinley +westfir +westfold +westford +westfork +westforks +westfulton +westgarth +westgate +westglacier +westgranby +westgreen +westgreene +westgroton +westgrove +westhalifax +westham +westhamlin +westhampton +westharrison +westhartford +westhartland +westharwich +westhatfield +westheimer +westhelena +westhickory +westhoek +westhoff +westhope +westhurley +westhus +westine +westing +westinghouse +westislip +westjordan +westkill +westkingston +westlake +westland +westlander +westlandways +westlebanon +westley +westleyden +westliberty +westlinn +westman +westmarches +westmeath +westmedford +westmemphis +westmifflin +westmilford +westmilton +westmineral +westminot +westminster +westmonroe +westmont +westmore +westmoreland +westmorland +westmost +westness +westnewbury +westnewfield +westnewton +westnewyork +westnyack +westoff +westolive +weston +westoneonta +westonsmills +westossipee +westover +westpaducah +westparis +westpark +westpawlet +westperu +westphal +westphalia +westphalian +westplains +westpoint +westpoland +westport +westralian +westredding +westridge +westriver +westroad +westrockport +westroff +westrum +westrupert +westrush +westrutland +westsalem +westsandlake +westsayville +westshokan +westside +westsimsbury +westsouth +westsuffield +westsullivan +westsumner +westsunbury +westswanzey +westthornton +westtisbury +westtopsham +westtown +westtremont +westunion +westunity +westupton +westvalley +westvanlear +westview +westville +westvirginia +westward +westwardly +westwardmost +westwards +westwareham +westwarwick +westwego +westwillow +westwinfield +westwood +westwouth +westy +westyork +weta +wetamut +wetan +wetar +wetawit +wetback +wetbird +wetch +wetched +wetchet +wete +wetere +wether +wetherbee +wetherby +wethered +wetherhog +wetherill +wetherly +wethersfield +wetherteg +wetlands +wetly +wetman +wetmore +wetness +wetoki +wetprasert +wets +wetsock +wettability +wettable +wetted +wetteland +wetter +wettest +wetting +wettish +wetu +wetumka +wetumpka +wetware +wetzel +wetzler +weve +wevens +wever +wevertown +wevet +wewahitchka +wewak +wewaw +wewela +wewenoc +wewewa +wewill +wewjewa +wewoka +wexe +wexel +wexes +wexford +wexler +wexponential +wextech +wexter +weyand +weyanoke +weyauwega +weyden +weyderhaus +weyerhaeuser +weyerhause +weyers +weyerscave +weyewa +weygelmann +weyher +weyler +weylin +weyman +weymontachie +weymouth +weyoko +weyr +weyringer +weyto +wezen +wezn +wezoraj +wftpd +wftu +wget +wghtptsn +whaaat +whabby +whack +whacked +whacker +whackett +whackier +whackiest +whacking +whacko +whacks +whacky +whaddaya +whaddayou +whafabout +whah +whait +whakatane +whalan +whale +whaleback +whalebacker +whalebird +whaleboat +whalebone +whaleboned +whaled +whaledom +whalehead +whalelike +whaleman +whalemen +whalen +whaler +whaleroad +whalers +whalery +whales +whaleship +whaley +whaleysville +whalin +whaling +whalish +whallonsburg +whally +whalm +whalp +whaly +whamble +whame +whammed +whammer +whammies +whammle +whammo +whammy +whamp +whampee +whample +whan +whana +whand +whang +whangable +whangam +whangarei +whangaroa +whangdoodle +whanged +whangee +whanghee +whanging +whank +whap +whapper +whappet +whapuka +whapukee +whapuku +whar +whare +whareer +wharfage +wharfhead +wharfholder +wharfing +wharfinger +wharfland +wharfless +wharfman +wharfmaster +wharfrae +wharfs +wharfside +wharl +wharncliffe +wharp +wharry +whart +wharve +whase +whasle +what +whata +whatabouts +whatahmean +whatbarb +whatcha +whatcheer +whatcolor +whatd +whately +whatever +whatis +whatisoff +whatison +whatkin +whatley +whatlike +whatll +whatmark +whatna +whatness +whatnot +whatre +whatreck +whats +whatshisname +whatsnew +whatsnews +whatso +whatsoeer +whatsoever +whatsomever +whatta +whatte +whatten +whau +whauk +whaup +whaur +whauve +whcih +wheal +whealworm +whealy +wheam +wheat +wheatbird +wheatcroft +wheatear +wheateared +wheaten +wheatfield +wheatgrower +wheaties +wheatin +wheatland +wheatless +wheatley +wheatlike +wheaton +wheatridge +wheatstalk +wheatstone +wheatworm +wheaty +whecn +whedder +wheedle +wheedled +wheedler +wheedlesome +wheedling +wheedlingly +wheeel +wheel +wheelage +wheelband +wheelbarrow +wheelbase +wheelbird +wheelbox +wheelchair +wheeldom +wheeled +wheeler +wheelers +wheelersburg +wheelery +wheelhorse +wheeling +wheelingly +wheelings +wheelless +wheellike +wheelmaker +wheelmaking +wheelman +wheelock +wheelrace +wheelroad +wheels +wheelsman +wheelsmith +wheelspin +wheelswarf +wheelway +wheelwise +wheelwork +wheelworld +wheelwright +wheely +wheem +wheen +wheencat +wheenge +wheep +wheeple +wheer +wheerikins +wheesht +wheetle +wheezed +wheezer +wheezier +wheeziest +wheezily +wheeziness +wheezing +wheezingly +wheezle +wheft +whein +whekau +wheke +wheki +whelan +whelked +whelker +whelklike +whelky +whell +whelm +whelngo +whelp +whelpdale +whelphood +whelpish +whelpless +whelpley +whelpling +whelps +whelve +whemmel +whemple +when +whenabouts +whenas +whence +whenceeer +whenceforth +whencesoeer +whencesoever +whencever +whene +wheneer +whenever +wheni +whenness +whenone +whenso +whensoever +whensomever +whent +whenthe +wheras +where +whereabout +whereabouts +whereafter +whereanent +whereas +whereat +whereaway +whereby +whered +whereer +wherefor +wherefore +wherefrom +wherein +whereinto +whereis +whereisit +whereness +whereof +whereon +whereout +whereover +wherere +wheres +whereso +wheresoeer +wheresoever +wheresomever +wherethrough +wheretill +whereto +wheretoever +whereunder +whereuntil +whereunto +whereup +whereupon +wherever +wherewith +wherewithal +wherret +wherries +wherrit +wherry +wherryman +whet +whether +whetile +whetrock +whetston +whetstone +whetstones +whetted +whetter +whetzel +whew +whewellite +whewer +whewl +whewt +whey +wheybeard +wheyey +wheyeyness +wheyface +wheyfaced +wheyish +wheyishness +wheylike +wheyness +whiba +which +whichever +whichis +whichsoever +whichway +whichways +whick +whicken +whicker +whid +whidah +whidd +whidden +whidder +whif +whiff +whiffen +whiffenpoof +whiffer +whiffet +whiffle +whiffler +whifflery +whiffletree +whiffling +whifflingly +whiffy +whift +whigfield +whiggamore +whiggarchy +whiggery +whiggess +whiggify +whiggish +whiggishly +whiggishness +whiggism +whigham +whiglet +whigling +whigmaleerie +whigs +whigship +whikerby +while +whiled +whileen +whileman +whilere +whiles +whileuwait +whiley +whilie +whiling +whilk +whilkut +whill +whillaballoo +whillaloo +whilley +whillilew +whilly +whillywha +whilock +whilom +whils +whilst +whilter +whim +whimberry +whimble +whimbrel +whimling +whimmy +whimpered +whimperer +whimpering +whimperingly +whimpers +whims +whimseys +whimsical +whimsicality +whimsically +whimsied +whimsies +whimstone +whimsy +whimwham +whin +whinas +whinberry +whinchacker +whinchat +whincheck +whincow +whindle +whine +whined +whiner +whines +whinestone +whiney +whing +whinge +whinger +whinier +whiniest +whininess +whining +whiningly +whinnel +whinner +whinnery +whinnied +whinnies +whinnock +whinnom +whinny +whinnying +whinstone +whiny +whinyard +whip +whipbelly +whipbird +whipcat +whipcord +whipcordy +whipcrack +whipcracker +whipcraft +whipgraft +whipholt +whipjack +whipking +whiplash +whiplike +whipmaker +whipmaking +whipman +whipmanship +whipmaster +whipoorwill +whipp +whippa +whippable +whipparee +whipped +whipper +whippers +whippertail +whippet +whippeter +whippiness +whipping +whippingly +whippings +whipple +whippletree +whippleville +whippoorwill +whippost +whippowill +whipps +whippy +whips +whipsawyer +whipship +whipsnade +whipsocket +whipstaff +whipstalk +whipstall +whipster +whipstick +whipstitch +whipstock +whipt +whiptail +whiptree +whipwise +whipworm +whir +whirken +whirl +whirlabout +whirlblast +whirlbone +whirlbrain +whirled +whirler +whirleth +whirley +whirlgig +whirlicane +whirlimagig +whirling +whirlingly +whirlmagee +whirlpook +whirlpool +whirlpools +whirlpuff +whirls +whirlwig +whirlwind +whirlwindish +whirlwinds +whirlwindy +whirly +whirlybird +whirlygigum +whirr +whirred +whirret +whirrey +whirring +whirroo +whirrs +whirry +whirs +whirtle +whisenhunt +whisked +whisker +whiskerage +whiskerando +whiskered +whiskerer +whiskerette +whiskerless +whiskerlike +whiskers +whiskery +whisket +whiskey +whiskeys +whiskeytown +whiskful +whiskied +whiskies +whiskified +whiskin +whisking +whiskingly +whisks +whisky +whiskyfied +whiskylike +whisler +whisp +whisper +whisperable +whisperation +whispered +whisperer +whisperers +whisperhood +whispering +whisperingly +whisperings +whisperless +whisperous +whisperously +whisperproof +whispers +whispery +whissky +whissle +whisson +whist +whister +whisterpoop +whistle +whistlebelly +whistled +whistlefish +whistlelike +whistler +whistlerian +whistlerism +whistlers +whistles +whistlewing +whistlewood +whistlike +whistling +whistlingly +whistly +whistness +whistonian +whit +whitacre +whitaker +whitakers +whitburn +whitby +whitchurch +white +whiteacre +whiteback +whitebait +whitebark +whitebeard +whitebelly +whitebill +whitebird +whiteblaze +whiteblow +whitebluff +whitebottle +whiteboy +whiteboyism +whitebread +whitebronze +whitecap +whitecapper +whitecaps +whitecastle +whitechapel +whitecity +whiteclay +whitecloud +whitecoat +whitecollar +whitecomb +whitecorn +whitecottage +whitecup +whited +whitedeer +whitedowns +whiteearth +whiteedged +whitefield +whitefish +whitefisher +whitefishery +whitefoot +whitefootism +whiteford +whitegarbed +whitehall +whitehand +whitehanded +whitehass +whitehaven +whitehawse +whitehead +whiteheart +whitehearted +whiteheath +whitehot +whitehouse +whitehurst +whitelake +whiteland +whitelaw +whiteley +whitelike +whitelivered +whitell +whitelock +whitely +whiteman +whitemanafb +whitemarsh +whitemills +whitened +whitener +whiteners +whiteness +whitening +whitenose +whitens +whiteoak +whiteout +whiteowl +whitepageoff +whitepageon +whitepaper +whitepigeon +whitepine +whiteplains +whitepost +whitepot +whiter +whiterider +whiteriver +whiterock +whiterocks +whiteroot +whiterump +whites +whitesalmon +whitesands +whitesark +whitesboro +whitesburg +whitescity +whitescreek +whiteseam +whiteshank +whiteside +whiteskins +whitesmith +whitesmiths +whitespace +whitespaces +whitesprings +whitest +whitestone +whitestown +whitesville +whiteswan +whitethorn +whitethroat +whitetip +whitetop +whitetower +whitevein +whiteville +whitewall +whitewards +whiteware +whitewashed +whitewasher +whitewashing +whitewater +whiteweed +whitewing +whitewood +whiteworm +whitewort +whitewright +whitey +whitfield +whitfill +whitfinch +whitfoot +whitford +whith +whitharral +whither +whitherso +whitherto +whitherward +whiting +whitingham +whitinsville +whitish +whitishness +whitlash +whitleather +whitley +whitleycity +whitleyism +whitleyville +whitling +whitlock +whitlow +whitlowwort +whitman +whitmanese +whitmanesque +whitmanism +whitmanize +whitmarsh +whitmer +whitmire +whitmonday +whitmore +whitmorelake +whitney +whitneyite +whitneypoint +whitneyville +whitrack +whitrow +whits +whitsands +whitsell +whitsett +whitson +whitster +whitsun +whitsunday +whitsuntide +whitt +whittaker +whittam +whittaw +whittell +whittemora +whittemore +whitten +whittener +whitter +whitterick +whittier +whittingham +whittinghill +whittington +whittle +whittled +whittler +whittles +whittling +whitton +whittret +whittrick +whitty +whitwam +whitwell +whitworth +whity +whize +whizgig +whizz +whizzed +whizzer +whizzerman +whizzes +whizziness +whizzingly +whizzle +whizzo +whizzy +whoa +whoah +whod +whodunit +whoever +whohoho +whoi +whois +whole +wholeearth +wholelot +wholeness +wholes +wholesale +wholesaled +wholesalely +wholesaler +wholesalers +wholesaling +wholesome +wholesomely +wholesouled +wholewise +wholism +wholl +wholly +whom +whomble +whomever +whomp +whomso +whomsoever +whon +whone +whoo +whoof +whookam +whooped +whoopee +whooper +whoopi +whooping +whoopingly +whooplike +whoops +whoosh +whooshing +whoosis +whoosisite +whopped +whopper +whopping +whorage +whore +whored +whoredom +whoredoms +whorehouse +whorelike +whoremaster +whoremastery +whoremonger +whoremongers +whoremonging +whores +whoreship +whoreson +whorf +whoring +whorish +whorishly +whorishness +whorl +whorled +whorlflower +whorls +whorly +whorlywort +whort +whortin +whortle +whortleberry +whos +whose +whosen +whosesoever +whosever +whoso +whosock +whosoever +whosomever +whosumdever +whout +whow +whowrotewhat +whud +whuff +whuffle +whulk +whulter +whummle +whump +whun +whunstane +whurlitzer +whush +whuskie +whussle +whute +whuther +whutter +whuttering +whuz +whybrow +whyever +whyfor +whynemah +whyness +whyo +whys +whyte +wiagas +wiakei +wiaki +wiang +wiaoe +wiari +wiat +wiazemsky +wibaux +wibble +wibblewabble +wiberg +wibni +wiborg +wicander +wice +wich +wichebay +wichern +wichers +wichert +wichita +wichitafalls +wichman +wichmann +wichniarz +wichowsky +wicht +wichterle +wichtisite +wichtje +wickatunk +wickawee +wickchester +wicked +wickedish +wickedlike +wickedly +wickedness +wickelter +wicken +wickenburg +wickens +wicker +wickerby +wickerman +wickerware +wickerwork +wickerworked +wickerworker +wickes +wicketkeep +wicketkeeper +wickett +wicketwork +wickfield +wickham +wickhaven +wicki +wickie +wicking +wickiup +wickland +wickless +wickliffe +wicklow +wickrema +wicks +wickup +wickwire +wicky +wicomico +wiconisco +wicopy +widbin +widdendream +widder +widdershins +widdicombe +widdifow +widdis +widdle +widdoes +widdowson +widdy +wide +wideawake +wideband +widecreek +widegab +widehearted +widekum +widely +wideman +widemouthed +widened +widener +wideness +widening +widens +wider +widerberg +widescreen +widespread +widespreadly +widest +widewasting +wideweb +widewhere +widework +widfara +widget +widgets +widiculed +widikum +widish +widl +widmark +widnoon +widom +widorn +widow +widowaction +widowed +widower +widowered +widowerhood +widowers +widowership +widowery +widowhood +widowish +widowlike +widowly +widowman +widows +widowy +width +widthless +widths +widthway +widthways +widu +widuch +wieacker +wieand +wiebe +wiebren +wiebull +wiecek +wiecher +wieck +wiecker +wied +wiedau +wiedelmeyer +wieder +wiederhold +wiedersehens +wiedlin +wiedman +wiegand +wiehagen +wieked +wieland +wielard +wield +wieldable +wielded +wielder +wieldiness +wielding +wields +wieldy +wiele +wielgorska +wielkopolski +wieman +wiemer +wien +wienczyclaw +wiener +wienerlevy +wienert +wienerwurst +wienie +wieninline +wienlight +wiens +wierangle +wiercioch +wierd +wierdo +wiere +wiergate +wiering +wierman +wierzba +wierzejewski +wiesbaden +wiese +wiesenboden +wieser +wiesinger +wiesje +wieslaw +wieslawa +wiesmeier +wiest +wieth +wietse +wietze +wife +wifecarl +wifedom +wifehood +wifeism +wifekin +wifeless +wifelessness +wifelet +wifelike +wifeling +wifelkin +wifely +wifeship +wifeward +wiffingham +wifie +wifiekie +wifish +wifock +wifrido +wifstrand +wiga +wigan +wigdom +wigeon +wigert +wigful +wigged +wiggen +wigger +wiggery +wiggin +wiggins +wigginton +wiggish +wiggishness +wiggism +wiggle +wiggled +wiggler +wiggles +wigglier +wiggliest +wiggling +wiggs +wiggy +wigham +wighor +wight +wightly +wightness +wights +wiginton +wigle +wigless +wiglet +wiglike +wigmaker +wigmaking +wignall +wigner +wigotzky +wigs +wigstaff +wigtail +wigton +wigwag +wigwagged +wigwagger +wigwagging +wigwam +wihtout +wiiiiiithh +wiiiill +wiikite +wiila +wiindzabaali +wiisu +wijeratne +wijetunge +wijk +wijsman +wikalkan +wike +wikeno +wikhwe +wikieup +wikivill +wikkerink +wikkonasshae +wiklund +wikmungkan +wikmunkan +wiknantjara +wikngandjara +wikngatara +wikngathana +wikngathara +wikngatharra +wikngenchera +wikstad +wikstroemia +wiktorczyk +wikwe +wilaisak +wilaya +wilayah +wilayas +wilayat +wilbar +wilber +wilberforce +wilbert +wilbraham +wilbur +wilburite +wilburn +wilburton +wilby +wilcke +wilcock +wilcoe +wilcove +wilcox +wilcoxon +wilcoxons +wilcoxontype +wilczewski +wild +wilda +wildbolz +wildbore +wildcard +wildcarded +wildcarding +wildcards +wildcat +wildcats +wildcatted +wildcatting +wildchar +wildchild +wilde +wildebeest +wildebeeste +wilded +wildeliebe +wildeman +wildenauer +wildenhain +wilder +wilderedly +wildering +wilderland +wilderman +wilderment +wilderness +wildersville +wildest +wildflower +wildflowers +wildfowl +wildgeese +wildgen +wildgrave +wildgruber +wildhagen +wildhorse +wildie +wilding +wildish +wildishly +wildishness +wildlike +wildling +wildly +wildman +wildmen +wildness +wildomar +wildorado +wildrose +wildsome +wildstar +wildsville +wildt +wildwind +wildwood +wiled +wileen +wileful +wileless +wilemon +wilenius +wilensky +wileproof +wiles +wiley +wileyford +wileyville +wilf +wilfong +wilford +wilfred +wilfredo +wilfrid +wilfrida +wilfried +wilfully +wilga +wilgers +wilgosh +wilhelm +wilhelmenia +wilhelmi +wilhelmina +wilhelmine +wilhelmson +wilhelmus +wilhems +wilhoit +wilhoite +wilie +wilier +wiliest +wilily +wiliness +wiling +wiljakali +wilk +wilka +wilke +wilkeite +wilken +wilkening +wilkens +wilker +wilkerson +wilkes +wilkesbarre +wilkesboro +wilkeson +wilkesville +wilkett +wilkey +wilkie +wilkin +wilkings +wilkins +wilkinsburg +wilkinson +wilko +wilks +wilkslawley +wilkss +will +willa +willabella +willable +willacoochee +willafane +willaim +willamette +willamina +willard +willards +willat +willaumez +willawa +willbe +willblank +willble +willcock +willcocks +willcox +wille +willebrandt +willed +willedness +willeke +willekes +willem +willemain +willemien +willemite +willems +willemsen +willemstad +willen +willenbring +willer +willernie +willers +willes +willet +willeth +willets +willett +willetta +willette +willey +willeyer +willful +willfully +willfulness +willgo +willhoff +willi +william +williams +williamsbay +williamsburg +williamsite +williamson +williamsonia +williamsport +williamston +williamstown +williamswell +williard +willibald +willie +willier +willies +williford +willim +willimantic +willing +willingboro +willingdon +willingham +willinghood +willingly +willingness +willis +willisburg +willison +williston +willisville +williswharf +williton +willits +williwaw +willlearn +willlis +willmaker +willmaking +willman +willmar +willmore +willmott +willness +willock +willoughby +willow +willowbiter +willowbranch +willowcity +willowcreek +willowed +willower +willowgrove +willowhill +willowish +willowisland +willowlake +willowlike +willowriver +willows +willowshade +willowsky +willowspring +willowstreet +willowtalk +willowware +willowweed +willowwood +willowworm +willowwort +willpower +willremain +willrich +willrun +willsboro +willseyville +willshire +willson +willspoint +willugbaeya +willuse +willy +willyard +willyart +willyer +willyt +willywaw +wilm +wilma +wilmar +wilmer +wilmerding +wilmette +wilmington +wilmink +wilmont +wilmore +wilmot +wilmotflat +wilmouse +wilmouth +wilner +wilock +wilona +wilone +wilow +wilpaterson +wilsall +wilsdorf +wilsen +wilsey +wilseyville +wilsie +wilsome +wilsomely +wilsomeness +wilson +wilsonburg +wilsoncreek +wilsondale +wilsons +wilsonsmills +wilsonville +wilt +wilted +wilter +wilting +wilton +wiltproof +wiltrud +wilts +wiltse +wiltshire +wiltz +wily +wilyagali +wimauma +wimberley +wimberry +wimble +wimbledon +wimblelike +wimbley +wimbrel +wimbum +wimbush +wime +wimick +wimmer +wimmermann +wimp +wimpish +wimple +wimpled +wimpleless +wimplelike +wimples +wimpling +wimpole +wimps +wimpy +wims +wimsey +wina +winace +winalyzer +winamac +winamp +winampa +winans +winantugimpu +winarj +winasteroids +winbench +winberry +winboard +winboost +winbowl +winburne +winbzzzz +wincam +wincast +wincdp +wince +winced +wincelberg +wincenty +wincer +winces +wincey +winceyette +winch +winchanger +wincheckit +winched +winchell +winchendon +wincher +winchester +winchime +winching +winchman +wincing +wincingly +winckel +wincomm +winconfig +wincott +wincraps +wincrt +winctl +wincycler +wind +windable +windac +windage +windah +windal +windbagged +windbaggery +windball +windber +windberry +windbibber +windblown +windbore +windbound +windbracing +windbreaker +windbroach +windburn +windcave +windclothes +windcuffer +winddog +winde +windeatt +windeck +winded +windedly +windedness +windel +winder +windermere +windermost +winders +windesheimer +windesi +windessi +windfallen +windfanner +windfirm +windfish +windflaw +windflower +windfola +windgall +windgalled +windgap +windgauge +windham +windheim +windhoek +windhole +windhover +windier +windiest +windigo +windily +windiness +winding +windingly +windingness +windisch +windish +windjammer +windjamming +windlass +windlasser +windle +windler +windles +windless +windlessly +windlessness +windlestrae +windlestraw +windlike +windlin +windling +windmiles +windmill +windmills +windmilly +windock +windom +windore +window +windowed +windowedit +windowful +windowing +windowless +windowlet +windowlight +windowlike +windowmaker +windowmaking +windowman +windownload +windowns +windowpeeper +windowrock +windows +windowsdos +windowseat +windowshut +windowsnt +windowstate +windowtile +windowward +windowwards +windowwise +windowy +windoz +windoze +windpipe +windplayer +windproof +windraft +windrider +windridge +windring +windroad +windroot +windros +windross +windrow +windrower +windrush +winds +windscreen +windshield +windshock +windsock +windsor +windsorite +windsorlocks +windstorms +windstream +windsucker +windswept +windt +windthorst +windtight +windtunnel +windupe +winduwinda +windward +windwardly +windwardmost +windwardness +windwards +windway +windwayward +windy +windyville +wine +wineball +wineberry +winebibber +winebibbers +winebibbery +winebibbing +wineconner +wined +winedit +winedt +winefat +wineglass +wineglasses +wineglassful +winegrower +winegrowing +winehouse +wineless +winelike +wineliza +winemay +winemiller +winepot +winepress +winepresses +winer +wineries +winers +wines +winesap +winesburg +wineshop +winesop +winetaster +winetasting +winetree +winevat +winexec +winfall +winfax +winfield +winfile +winfingerd +winfish +winfossil +winfred +winfree +winfrey +winfried +winful +wing +wingable +wingar +wingard +wingate +wingbeat +wingcut +wingdale +wingdate +winge +winged +wingedly +wingedness +wingei +winger +wingett +wingettrun +wingfield +wingfish +wingfoot +winghanded +wingina +winging +wingle +wingless +winglessness +winglet +winglike +wingmanship +wingmaster +wingo +wingolfia +wingover +wingpiece +wingpost +wingreen +wingroov +wingroove +wingrove +wings +wingseed +wingspread +wingstem +wingtip +wingwood +wingy +winhack +winhacker +winhelp +winhex +wini +winicki +winier +winiest +winifred +winifrede +winigan +winigc +winimage +wininblack +wining +winish +winitood +winiv +winjammer +winje +winjiwinji +wink +winked +winkel +winkelman +winker +winkered +winketh +winkey +winkie +winkiel +winking +winkingly +winkle +winklehawk +winklehole +winklemaier +winkler +winklerin +winklet +winks +winlock +winlog +winlogo +winlow +winly +winmill +winmin +winmodem +winn +winna +winnable +winnabow +winnage +winnah +winnard +winnc +winne +winneba +winnebago +winneconne +winnecowet +winnel +winnelstrae +winnemucca +winner +winners +winneth +winnetoon +winnetou +winnett +winnetta +winnfield +winni +winnie +winniford +winnifred +winniger +winning +winninger +winningest +winningham +winningly +winningness +winnings +winnington +winninish +winnipeg +winnisquam +winnitude +winnle +winnonish +winnote +winnowed +winnower +winnoweth +winnowill +winnowing +winnowingly +winnsboro +winnt +winnuke +winnukez +winny +winograde +winogradowa +winoki +winona +winonah +winonalake +winos +winpac +winpack +winpatch +winpgp +winplan +winplay +winpop +winpopup +winprice +winproxy +winqoole +winrace +winrar +winreg +winrescue +winrich +winroute +winrow +wins +winsberg +winsborrow +winsbury +winscope +winscreens +winsettings +winshade +winship +winside +winsky +winsley +winslow +winsock +winsockets +winsockyes +winsomely +winsomeness +winson +winsorized +winspeech +winsplit +winsports +winstanley +winstead +winsted +winston +winstone +winstonsalem +winstonville +wint +wintar +wintel +wintelnet +winter +winteraceae +winterage +winterbeach +winterberg +winterberry +winterbloom +winterbottom +winterbourne +winterdemons +winterdykes +wintered +winterer +winterfeed +wintergarden +wintergreen +winterhain +winterharbor +winterhaven +winterhouse +wintering +winterish +winterishly +winterize +winterized +winterizing +winterkill +winterless +winterlike +winterliness +winterling +winterly +winterpark +winterport +winterproof +winters +winterset +wintersole +wintersome +winterstein +winterthur +wintertide +winterville +winterward +winterwards +winterweed +wintery +winther +winthorpe +wintle +wintlv +wintnc +wintoday +winton +wintour +wintrier +wintriest +wintrify +wintrily +wintriness +wintrish +wintrop +wintrous +wintry +wintryingham +wintu +wintun +wintune +wintypes +winvn +winweather +winwhatwhere +winwood +winword +winx +winxfiles +winye +winze +winzeman +winzip +wionczek +wiota +wipawadee +wipe +wiped +wipeout +wiper +wipers +wipes +wipeth +wipim +wiping +wipm +wipo +wippel +wippen +wips +wipsini +wipstock +wira +wirable +wiradhuric +wirafe +wirafed +wiram +wirble +wird +wire +wirebar +wirebird +wired +wiredancer +wiredancing +wiredraw +wiredrawer +wiredrawn +wirehair +wirehaired +wirehead +wireheads +wireless +wirelessly +wirelessness +wirelike +wiremaker +wiremaking +wiremonger +wiremu +wiren +wirephoto +wirepull +wirepuller +wirepulling +wirer +wires +wireservice +wiresmith +wirespun +wiretail +wiretapped +wiretappers +wiretaps +wireton +wireway +wireweed +wirework +wireworker +wireworking +wireworks +wireworm +wirff +wirh +wiri +wirier +wiriest +wirily +wirina +wiriness +wiring +wirl +wirling +wirofe +wiros +wirowai +wirr +wirra +wirrah +wirrasthru +wirsing +wirski +wirt +wirth +wirths +wirtz +wiru +wiry +wisa +wisacky +wisc +wiscasset +wischnewski +wischrewski +wisconsin +wisconsinite +wisdom +wisdomful +wisdomless +wisdomproof +wisdoms +wisdomship +wise +wiseacred +wiseacredom +wiseacreish +wiseacreism +wisebot +wisecracker +wisecrackery +wisecracking +wisecracks +wised +wisehead +wisehearted +wiseheimer +wiselike +wiseling +wisely +wiseman +wisen +wiseness +wisent +wiser +wiseriver +wisest +wiseweed +wisewoman +wish +wisha +wishable +wishart +wished +wishedly +wishek +wisher +wishers +wishes +wishewan +wishfully +wishfulness +wishing +wishingcap +wishingly +wishkan +wishless +wishly +wishmay +wishness +wishoskan +wishram +wisht +wishtonwish +wishwash +wishywashy +wisibada +wisiedo +wisigothic +wisket +wisking +wiskinky +wislak +wismar +wismoth +wisner +wisniewski +wisp +wisped +wispier +wispiest +wispish +wisplike +wisps +wispy +wisql +wiss +wisse +wissel +wisseman +wissia +wissinger +wissler +wist +wistaria +wiste +wistened +wister +wisteria +wistfully +wistfulness +wistit +wistiti +wistle +wistless +wistlessness +wistonwish +witaly +witan +witbooi +witch +witchbells +witchcraft +witchcrafts +witchdoctor +witched +witchedly +witchen +witcheries +witchering +witchery +witches +witchet +witchetty +witchhood +witching +witchingly +witchleaf +witchlike +witchlord +witchlow +witchman +witchmonger +witchuck +witchweed +witchwife +witchwoman +witchwood +witchwork +witchy +witcracker +witcraft +witczak +wite +witek +witeless +witenagemot +witenagemote +witenie +witepenny +witess +witful +with +withal +witham +withamite +withams +withania +withboth +withcolor +withdaw +withdraught +withdraw +withdrawable +withdrawal +withdrawals +withdrawer +withdrawest +withdraweth +withdrawing +withdrawment +withdrawn +withdraws +withdrew +withe +withed +withee +withen +wither +witherband +witherbee +withered +witheredly +witheredness +witherer +withereth +withergloom +withering +witheringham +witheringly +witherite +witherly +withernam +withers +withershins +withersoever +witherspoon +withertip +witherwards +witherweight +withery +withewood +withey +withheld +withheldest +withhold +withholdable +withholdal +withholden +withholder +withholders +withholdeth +withholding +withholdings +withholdment +withholds +within +withindoors +withinside +withinsides +withinward +withinwards +withit +withmultiple +withness +witholden +without +withoutany +withoutdoors +withouten +withoutforth +withoutside +withoutwards +withrow +withs +withsave +withstand +withstander +withstanding +withstands +withstay +withstood +withstrain +withthe +withthese +withvine +withwind +withypot +withywind +witjar +witkins +witkowski +witless +witlessly +witlessness +witlet +witling +witloof +witmer +witmonger +witness +witnessable +witnessdom +witnessed +witnesser +witnesses +witnesseth +witnessing +witney +witneyer +witold +witoto +witotoan +wits +witsend +witsenhausen +witship +witsnapper +witt +wittal +wittawer +witte +witteboom +witted +witten +wittenberg +wittenmark +wittensville +witter +wittering +witthaver +witticaster +wittich +wittichenite +witticism +witticize +wittier +wittiest +wittified +wittik +wittily +wittiness +witting +wittingly +wittiyadow +wittkowski +wittman +wittmann +wittol +wittolly +wittssprings +wittwer +witty +witu +witumki +witwall +witworm +witzchoura +witzdorf +witzel +witzman +witzmann +wivan +wived +wivell +wiver +wivern +wives +wiving +wiwi +wixom +wixted +wiyagwa +wiyap +wiyat +wiyau +wiyaw +wiyeh +wiyot +wiza +wizard +wizardess +wizardism +wizardlike +wizardliness +wizardly +wizardry +wizards +wizardship +wizardsvale +wizeewig +wizen +wizened +wizenedness +wizgunoff +wizier +wizkid +wizmane +wizzard +wizzen +wizzy +wkday +wkend +wking +wladilena +wladimir +wladislaw +wladyslaw +wldflckn +wlepo +wloclawek +wlodek +wlodzimierz +wloka +wlopo +wluwehawlo +wmich +wmms +wmpaint +wmpl +wnat +wnysamis +woad +woader +woadman +woadwaxen +woady +woak +woald +woan +wobaru +wobbegong +wobble +wobbled +wobbler +wobblier +wobbliest +wobbliness +wobbling +wobblingly +wobbly +wobbrock +wobe +wobot +wobster +woburn +wocheinite +wochinz +wochua +woda +wodaabe +wodak +wodamo +wodan +wodani +woddie +wode +woden +wodenism +wodge +wodgy +woditschka +wodiwodi +wodo +wodoslawsky +woebegonish +woeful +woefully +woefulness +woehlerite +woelffel +woes +woesome +woessner +woevine +woeworn +woffler +wofford +woft +woga +wogadj +wogait +wogamus +wogamusin +wogeman +wogeo +wogga +wogiet +wogriboli +wogu +wogulian +wohl +wohlbold +wohlbruck +wohlfeiler +wohrz +wohsimi +woibe +woinsky +woisika +wojciech +wojcik +wojdylo +wojewodztwa +wojewodztwo +wojnar +wojo +wojokeso +wojtecki +wojtek +wojtyla +wokam +wokas +woke +woken +wokiare +wokked +wokkos +woko +wokoma +wokowi +wolaitta +wolane +wolani +wolasi +wolaytta +wolbach +wolbert +wolchek +wolcott +wolcottville +wolczanski +wolde +woldetsadik +woldetzki +woldlike +woldoh +woldsman +woldy +woleai +woleain +wolean +woleian +woleuntem +wolf +wolfachite +wolfbayou +wolfberry +wolfcoal +wolfcreek +wolfdale +wolfdom +wolfe +wolfeboro +wolfecity +wolfen +wolfenbarger +wolfenden +wolfenstein +wolfer +wolfert +wolff +wolffberg +wolffia +wolffian +wolffianism +wolffish +wolfforth +wolfgang +wolfhood +wolfhound +wolfian +wolfiana +wolfie +wolfing +wolfingham +wolfishly +wolfishness +wolfisland +wolfit +wolfkin +wolflake +wolfless +wolflike +wolfling +wolfman +wolford +wolfowitz +wolfpen +wolfpoint +wolfram +wolframate +wolframic +wolframine +wolframinium +wolframite +wolfrider +wolfriders +wolfrum +wolfrun +wolfs +wolfsbane +wolfsbergite +wolfsen +wolfsheim +wolfskin +wolfson +wolfstone +wolfsummit +wolftown +wolfward +wolfwards +wolgers +wolheim +wolins +wolinski +wolio +wolk +wolkonska +wolkow +woll +wollaminya +wollamo +wollaston +wollastonite +wolle +wollega +wollejko +wollenberger +wollo +wollomai +wollongong +wollop +wollt +wolmeri +wolodyjowski +wolof +woloshin +woloshko +wolowicz +wolowidnyk +wolpe +wolper +wolpert +wolsey +wolska +wolski +wolsky +wolt +wolter +wolters +woltikoff +woltjer +woltman +woltz +wolveboon +wolver +wolverine +wolveroach +wolverstone +wolverton +wolves +wolynetz +wolzow +woma +womack +woman +womanbody +womandom +womanfolk +womanfully +womanhead +womanhearted +womanhouse +womanish +womanishly +womanishness +womanism +womanist +womanity +womanization +womanize +womanized +womanizer +womanizing +womankind +womanless +womanlike +womanliness +womanly +womanmuckle +womanness +womanpost +womanproof +womans +womanship +womanways +womanwise +womb +wombat +wombed +womble +womboko +wombs +wombstone +womby +wome +womelsdorf +women +womenara +womenfolk +womenfolks +womenkind +womens +womera +wommer +wommerah +wommerala +womsak +wonacott +wonalancet +wonan +wonda +wonder +wonderberry +wonderbright +wondercraft +wondered +wonderer +wonderful +wonderfully +wondering +wonderingly +wonderlake +wonderless +wonderment +wondermonger +wonderously +wonders +wondersmith +wondersome +wonderstrong +wonderstruck +wonderwall +wonderwell +wonderwork +wonderworthy +wondrous +wondrously +wondrousness +wone +wonegan +wonewoc +wong +wonga +wongamardu +wongamusin +wongara +wongen +wongkee +wongkumara +wongo +wongshy +wongsky +wongyai +woni +wonie +woning +wonk +wonka +wonked +wonky +wonna +wonnacott +wonned +wonner +wonnie +wonning +wonnot +wono +wonoi +wonomulyo +wonsan +wont +wonted +wontedly +wontedness +wonti +wonting +wontner +wonton +wooable +wood +woodacre +woodagate +woodall +woodbark +woodbin +woodbind +woodbine +woodbined +woodbound +woodbourne +woodbridge +woodburn +woodbury +woodburytype +woodbush +woodcarvers +woodcarving +woodchat +woodchopper +woodchuck +woodchucks +woodcockize +woodcocks +woodcracker +woodcraft +woodcrafter +woodcrafty +woodcroft +woodcutter +woodcutters +woodcutting +wooddale +wooded +woodel +woodell +woodels +wooden +woodenbong +woodendite +woodenhead +woodenheaded +woodenly +woodenness +woodenshoe +woodenware +woodenweary +woodeny +woodfish +woodford +woodgate +woodgeld +woodgrub +woodhack +woodhacker +woodhall +woodhole +woodhope +woodhorse +woodhouse +woodhull +woodhung +woodie +woodier +woodiest +woodine +woodiness +wooding +woodinville +woodish +woodjobber +woodkern +woodknacker +woodlake +woodland +woodlander +woodlandpark +woodlands +woodlark +woodlawn +woodleaf +woodleigh +woodless +woodlessness +woodlet +woodley +woodlief +woodlike +woodline +woodlocked +woodlots +woodly +woodlyn +woodman +woodmancraft +woodmanship +woodmen +woodmere +woodmonger +woodmote +woodness +woodnote +woodpecker +woodpeckers +woodpenny +woodpile +woodprint +woodranger +woodreeve +woodrick +woodridge +woodriver +woodrock +woodroof +woodroofe +woodroofffff +woodrow +woodrowel +woodruff +woods +woodsboro +woodscross +woodsere +woodsey +woodsfield +woodshole +woodshop +woodsia +woodsier +woodsiest +woodsilver +woodskin +woodsman +woodsmen +woodson +woodspite +woodstock +woodston +woodstone +woodstown +woodsville +woodsy +woodthorpe +woodville +woodvine +woodwall +woodward +woodwardia +woodwards +woodwardship +woodware +woodwax +woodwaxen +woodwind +woodwinds +woodwise +woodwood +woodworker +woodworking +woodworm +woodworth +woodwose +woodwright +woody +woodycreek +woodyer +wooed +wooer +woof +woofed +woofell +woofer +woofers +wooff +woofing +woofpool +woofs +woofy +woohoo +wooi +wooing +wooingly +wook +wookie +wool +wooland +woolcott +woold +woolder +woolding +wooldridge +wooled +woolen +woolenet +woolenize +wooler +woolert +woolery +wooley +woolf +woolfell +woolfolk +woolford +woolgar +woolgatherer +woolgrower +woolgrowing +woolhead +wooliness +woolkott +woollam +woollcott +woollen +woolley +woollier +woollies +woolliest +woollike +woolliness +woollum +woolly +woollyhead +woollyish +woolman +woolpack +woolpress +woolrich +woolridge +wools +woolsack +woolsey +woolshearer +woolshearing +woolshears +woolshed +woolskin +woolson +woolsorter +woolsorting +woolsower +woolstock +woolsy +woolulose +woolwa +woolwasher +woolweed +woolwheel +woolwich +woolwinder +woolwine +woolwork +woolworker +woolworking +wooly +woom +woomer +woomera +woomerang +woon +woons +woonsocket +woorali +woorari +woordbook +woos +woosh +wooster +woosung +wooteelit +wooten +wootes +woothi +wooton +wootton +wootz +woozier +wooziest +woozily +wooziness +woozle +woozy +wopkeimin +wopper +woppish +wops +woqooyi +worble +worcester +word +wordable +wordably +wordage +wordb +wordbased +wordbook +wordbuilding +wordc +wordcatcher +wordcraft +worde +worded +worden +worder +wordes +wordexpress +wordfence +wordfile +wordfill +wordg +wordier +wordiest +wordily +wordiness +wording +wordish +wordishly +wordishness +wordj +wordk +wordle +wordless +wordlessly +wordlessness +wordlike +wordlist +wordlists +wordlorist +wordmaker +wordmaking +wordman +wordmanship +wordmonger +wordmongery +wordoriented +wordpad +wordperfect +wordplay +words +wordshop +wordsman +wordsmanship +wordsmith +wordspite +wordstar +wordster +wordtris +wordware +wordwrapping +wordy +wore +worell +worf +worfs +worg +woria +woriasi +woriies +worimi +worin +woringer +work +workability +workable +workableness +workably +workai +workalike +workand +workaround +workarounds +workaway +workbag +workbasket +workbench +workbenches +workbook +workbooks +workbox +workbrittle +workday +worked +worker +workers +worketh +workfellow +workfile +workfolk +workfolks +workforce +workgirl +workgroup +workgroups +workhand +workhorses +workhouse +workhoused +workin +working +workingaxis +workinglife +workingly +workingman +workingmen +workings +workingwoman +workingwomen +workingwonan +workless +worklessness +workloom +workman +workmanlike +workmanly +workmanship +workmaster +workmate +workmen +workmistress +workout +workpad +workpan +workpeople +workplace +workroom +works +worksheet +worksheets +workship +workshop +workshops +worksome +workspace +workstand +workstation +workstations +worktime +worku +workways +workweek +workwise +workwith +workwoman +workwomanly +worky +workyard +worland +world +worldbeater +worldblazer +worldcon +worldcraft +worlded +worldfamous +worldful +worldish +worldless +worldlet +worldlier +worldliest +worldlike +worldlily +worldliness +worldling +worldly +worldlywise +worldmaker +worldmaking +worldproof +worldquake +worlds +worldward +worldwards +worldway +worldwide +worldy +worley +worliezk +worll +worlock +worm +wormald +wormboy +wormeaten +wormed +wormer +wormhole +wormholed +wormholes +wormhood +wormian +wormier +wormiest +wormil +worming +wormless +wormlike +wormling +wormold +wormproof +wormroot +worms +wormseed +wormship +wormtongue +wormweed +wormwood +worn +worng +wornil +wornness +woro +worobey +woroner +woronicz +woronoco +woronov +worora +wororan +woroszczuk +worpell +worpen +worral +worrall +worriable +worricow +worried +worriedly +worriedness +worrier +worriers +worries +worriless +worriment +worrisomely +worrit +worriter +worry +worrying +worryingly +worryproof +worrywart +worrywort +worse +worsement +worsened +worseness +worsening +worser +worserment +worset +worship +worshipable +worshiped +worshiper +worshipers +worshipfully +worshiping +worshipingly +worshipless +worshipped +worshipper +worshippers +worshippeth +worshipping +worships +worshipworth +worsley +worst +worsted +wort +worth +wortham +worthful +worthfulness +worthier +worthies +worthiest +worthily +worthiness +worthing +worthington +worthless +worthlessly +worths +worthship +worthville +worthward +worthwhile +worthy +wortman +worton +worugl +worx +worz +wosbird +wosera +woses +wosimi +woskia +wosper +wostrikoff +woswori +wotapuri +wotara +wote +woteki +wotho +wots +wottagai +wottawa +wotten +wotter +wottest +wotteth +wotton +wotu +wouassi +woubit +wouch +woudlnt +wouf +wough +woughly +woulbe +would +woulda +wouldbe +wouldest +wouldlike +wouldn +wouldnt +wouldst +wouldve +woulgar +woumans +woun +wounaan +wound +woundability +woundable +wounded +woundedknee +woundedly +woundedst +wounder +woundeth +woundily +wounding +woundingly +woundless +wounds +woundwort +woundworth +woundy +wount +wourali +wourari +wouri +wournil +woute +wovan +wove +wovea +woven +wovik +wovoka +wowa +wowbanger +wowdy +wowi +wowo +wowonii +wowser +wowserdom +wowserian +wowserish +wowserism +wowsery +wowt +woxall +woya +woyaway +woyczynski +woytowicz +wozi +woziewicz +wozniak +wpafb +wpamptr +wpfolder +wplay +wpmdss +wpms +wpsarco +wptools +wracher +wracker +wrackful +wracking +wraf +wraggle +wrainbolt +wrainstaff +wrainstave +wrair +wraith +wraithe +wraithlike +wraiths +wraithy +wraitly +wrallins +wramp +wran +wrang +wrangel +wrangled +wrangler +wranglership +wranglesome +wrangling +wranglingly +wrannock +wranny +wrap +wraparound +wraparounds +wrapdbgrid +wrapp +wrappage +wrapped +wrapper +wrapperer +wrappering +wrappers +wrapping +wrappings +wraprascal +wraps +wrapt +wrasse +wrasslin +wrastle +wrastler +wrath +wrathful +wrathfully +wrathfulness +wrathily +wrathiness +wrathlike +wraths +wrathy +wratislavia +wraw +wrawl +wrawler +wraxle +wray +wreak +wreakful +wreaking +wreakless +wreaks +wreat +wreath +wreathage +wreathed +wreathen +wreather +wreathes +wreathing +wreathingly +wreathless +wreathlet +wreathlike +wreathmaker +wreathmaking +wreaths +wreathwise +wreathwork +wreathwort +wreathy +wreck +wreckage +wrecked +wrecker +wreckers +wreckfish +wreckful +wrecking +wrecks +wrecky +wredpyd +wregg +wrelpo +wren +wrench +wrenched +wrencher +wrenches +wrenching +wrenchingly +wrenlet +wrenlike +wrenn +wrennie +wrens +wrenshall +wrentail +wrentham +wrest +wrestable +wrester +wresting +wrestingly +wrestle +wrestled +wrestler +wrestlerlike +wrestles +wrestling +wrestlings +wretched +wretchedly +wretchedness +wretches +wretchless +wretchlessly +wretchock +wretman +wricht +wrick +wride +wried +wrier +wriest +wrig +wrigge +wriggled +wriggler +wriggles +wrigglesome +wriggling +wrigglingly +wriggly +wright +wrightcity +wrightfisher +wrightine +wrightpat +wrights +wrightsboro +wrightstown +wrightsville +wrightwood +wrigley +wring +wringbolt +wringed +wringer +wringing +wringman +wrings +wringstaff +wrinkle +wrinkleable +wrinkled +wrinkledness +wrinkledy +wrinkleful +wrinkleless +wrinkleproof +wrinkles +wrinklet +wrinklier +wrinkliest +wrinkling +wrinkly +wrist +wristbone +wristed +wrister +wristfall +wristikin +wristlet +wristlock +wristpad +wristpads +wristphone +wrists +wristwatches +wristwork +writ +writability +writable +writation +writative +write +writeability +writeable +writean +writee +writehotkeys +writeln +writemsg +writen +writenotch +writeonce +writeonly +writer +writeress +writerling +writers +writership +writes +writest +writeth +writeups +writh +writhe +writhed +writhedly +writhedness +writhen +writheneck +writher +writhes +writhing +writhingly +writhy +writing +writinger +writings +writmaker +writmaking +writproof +writs +writte +written +writtenin +writtenonly +writter +wrive +wrixon +wrizzled +wrobel +wroblewski +wrocht +wroclaw +wroke +wroken +wroking +wrong +wrongdoing +wronged +wronger +wrongeth +wrongfile +wrongfully +wrongfulness +wronghead +wrongheaded +wronghearted +wronging +wrongish +wrongless +wronglessly +wrongly +wrongness +wrongous +wrongously +wrongousness +wrongs +wrongwise +wrossle +wrote +wroth +wrotham +wrothful +wrothfully +wrothily +wrothiness +wrothly +wrothsome +wrothy +wrought +wroughtest +wroughtiron +wrox +wroxton +wrruqbrg +wrtten +wrubel +wrung +wrungness +wrybill +wryly +wrymouth +wryneck +wryness +wrytail +wsadata +wsadmin +wsastartup +wsbackup +wsewolod +wshndc +wsle +wsmr +wspd +wspolny +wsrod +wssfill +wssu +wted +wtmp +wuacc +wuarchive +wuasinkishu +wubahamer +wubble +wubomei +wucfua +wuchereria +wuddie +wudge +wuding +wudir +wudu +wuenschen +wueppelmann +wuest +wuftpd +wugate +wugg +wugga +wuhg +wujalwujal +wukan +wukari +wukingfu +wula +wulaki +wulamba +wulanga +wule +wulf +wulfenite +wulfert +wulff +wulfgar +wulfsberg +wulfstan +wuli +wulima +wulk +wull +wulla +wullawins +wullcat +wullie +wulliwa +wulu +wumble +wumboko +wumbu +wumbuko +wumbvu +wuming +wumman +wummel +wumnabal +wumvu +wuna +wunai +wunambal +wunambalic +wunambullu +wunavai +wunci +wuncimbe +wunda +wunderbar +wundtian +wundu +wundulako +wungee +wungu +wunna +wunner +wunschkind +wunsome +wunungmurra +wurangung +wurbo +wureidbug +wuri +wurigelebut +wurkum +wurley +wurlitz +wurlitzer +wurm +wurmal +wurmand +wurmian +wuro +wurrus +wurset +wurst +wurtsboro +wurtsmith +wurtz +wurtzilite +wurtzite +wurzburg +wurzburger +wurzel +wusah +wush +wushi +wusi +wusikerepua +wusp +wuss +wusser +wust +wusta +wustl +wusuli +wute +wuther +wutheridge +wuthering +wuting +wutung +wuumu +wuvulu +wuvuluaua +wuya +wuyangpu +wuzhou +wuzlam +wuzu +wuzzer +wuzzle +wuzzy +wvnet +wvnvaxa +wvnvaxb +wwaccc +wwfan +wwhen +wwii +wwiiera +wwmon +wword +wwpack +wwprt +wwwboard +wwwroot +wwww +wwwww +wwwwww +wwwwwww +wwwwwwww +wyaconda +wyalusing +wyandanch +wyandot +wyanet +wyano +wyant +wyarno +wyatt +wyazenkin +wyble +wyche +wycherly +wychlade +wychwood +wyckoff +wycliffian +wycliffism +wycliffist +wycliffite +wyco +wycoff +wycombe +wyde +wyden +wyeland +wyemills +wyenn +wyethia +wyeville +wyex +wyffeis +wygant +wyke +wykeham +wykehamical +wykehamist +wykenham +wykoff +wylbur +wyldeck +wyle +wyler +wylie +wyliecoat +wyllie +wylliesburg +wylma +wylo +wylodine +wyman +wymard +wymark +wymer +wymiss +wymore +wymote +wynand +wynantskill +wyncote +wynd +wyndham +wyndhom +wyndmere +wyne +wynes +wyngarde +wynken +wynkernel +wynn +wynnburg +wynne +wynnegate +wynnewood +wynnie +wynny +wynona +wynonna +wynot +wynter +wynters +wynton +wynyard +wyocena +wyola +wyoming +wyomingite +wype +wyplosz +wyrley +wyrok +wyrstiuk +wyse +wysiwyg +wysocki +wyson +wysox +wyss +wytek +wytenburg +wytheville +wytopitlock +wyve +wyver +wyvern +wyverne +wyzniewski +xaayo +xabier +xadani +xagsun +xagua +xaignabouri +xaise +xait +xajdak +xakriaba +xakuchi +xalpan +xamang +xamatari +xambioa +xamir +xamka +xamta +xamtanga +xamu +xana +xanagui +xanaguia +xananwa +xander +xanders +xandor +xandros +xandrov +xang +xanga +xanica +xanorphica +xanth +xanthaline +xanthamic +xanthamide +xanthane +xanthate +xanthation +xanthe +xanthein +xanthelasma +xanthelasmic +xanthene +xanthi +xanthian +xanthic +xanthide +xanthidium +xanthin +xanthine +xanthinuria +xanthione +xanthippe +xanthisma +xanthite +xanthium +xanthiuria +xanthoceras +xanthochroi +xanthochroia +xanthochroic +xanthochroid +xanthocone +xanthoconite +xanthoderm +xanthoderma +xanthodont +xanthogen +xanthogenate +xanthogenic +xanthoma +xanthomata +xanthomatous +xanthometer +xanthomonas +xanthone +xanthophane +xanthophore +xanthophose +xanthophyll +xanthopia +xanthopicrin +xanthopous +xanthopsia +xanthopsin +xanthopterin +xanthorrhiza +xanthorrhoea +xanthosis +xanthosoma +xanthotic +xanthoura +xanthous +xanthoxalis +xanthoxenite +xanthoxylin +xanthuria +xanthydrol +xanthyl +xanti +xantippe +xanto +xanty +xaos +xappleresdir +xappwnix +xappwwin +xaput +xara +xaracii +xaracuu +xaragure +xarbuk +xaroxa +xarque +xarua +xasa +xasonke +xatia +xatyrskij +xauen +xavante +xaverian +xavier +xaviera +xavierano +xayaraj +xayo +xbar +xbase +xbasej +xbead +xbodyrow +xceedzip +xcell +xclass +xcode +xcol +xcom +xconfig +xcopy +xcoral +xctl +xcynical +xdead +xdel +xdesk +xdfcopy +xdir +xdoclaws +xdocpcweek +xdocref +xdos +xebec +xebectec +xebero +xedi +xeen +xegwe +xegwi +xekwi +xema +xena +xenacanthine +xenacanthini +xenacoj +xenagogue +xenagogy +xenarchi +xenarthra +xenarthral +xenarthrous +xened +xenelasia +xenelasy +xenia +xenial +xenian +xenicidae +xenicus +xenium +xenix +xenna +xenobiosis +xenoblast +xenocratean +xenocratic +xenocryst +xenodochium +xenofex +xenogamous +xenogamy +xenogenesis +xenogenetic +xenogenic +xenogenous +xenogeny +xenolite +xenolith +xenolithic +xenomania +xenomaniac +xenomi +xenomorpha +xenomorphic +xenon +xenoparasite +xenopeltid +xenopeltidae +xenophanean +xenophile +xenophilism +xenophobe +xenophobian +xenophobism +xenophoby +xenophonic +xenophontean +xenophontian +xenophontic +xenophontine +xenophora +xenophoran +xenophoridae +xenophya +xenopodid +xenopodidae +xenopodoid +xenopsylla +xenopteran +xenopteri +xenopterygii +xenopus +xenorhynchus +xenos +xenosaurid +xenosauridae +xenosauroid +xenosaurus +xenoscide +xenotech +xenotime +xenpnt +xentrybox +xenurus +xenyl +xenylamine +xerafin +xeransis +xeranthemum +xerantic +xerarch +xerasia +xere +xerente +xeres +xereu +xereuyana +xerewyana +xeric +xerically +xeriff +xerocline +xeroderma +xerodermatic +xerodermia +xerodermic +xerogel +xerographic +xeroma +xeromata +xeromenia +xeromorph +xeromorphic +xeromorphous +xeromorphy +xeromyron +xeromyrum +xeronate +xeronic +xerophagia +xerophagy +xerophil +xerophile +xerophilous +xerophily +xerophobous +xerophthalmy +xerophyllum +xerophyte +xerophytic +xerophytism +xeroprinting +xerosere +xerosis +xerostoma +xerostomia +xerotes +xerotherm +xerothermic +xerotic +xerotocia +xerotripsis +xerox +xeroxed +xeroxifs +xeroxs +xerus +xesibe +xeta +xevsur +xextern +xeyes +xfanrusf +xfed +xfer +xferlog +xferpro +xfile +xfolder +xfree +xftnsqsh +xgedit +xgroups +xhale +xhamradio +xheadbox +xheadcol +xheadrow +xhmeia +xhoja +xhosa +xhost +xhouse +xhrdarvi +xhrdasus +xhrddocs +xhrdidc +xhrdmisc +xhrdtest +xhrdusr +xiaerba +xiamen +xiang +xiangkhoang +xiangtan +xiangxi +xianning +xianyou +xiao +xiaofeng +xiaoguang +xiaojing +xiaomei +xiaoping +xibba +xibe +xibita +xibitaoan +xibitaona +xibo +xica +xicak +xicaque +xichang +xico +xicotepec +xidkala +xifan +xihuila +xiii +xikrin +xilin +xilings +xiluleke +ximenia +ximinez +xina +xinalug +xinca +xinetd +xing +xingan +xingang +xinghua +xingiang +xingmpeg +xingning +xingtech +xingu +xinh +xinit +xinjiang +xinu +xipaia +xipe +xiphias +xiphiid +xiphiidae +xiphiiform +xiphioid +xiphiplastra +xiphisterna +xiphisternal +xiphisternum +xiphisura +xiphisuran +xiphiura +xiphius +xiphocostal +xiphodon +xiphodynia +xiphoid +xiphoidal +xiphoidian +xiphopagic +xiphopagous +xiphopagus +xiphosterna +xiphosternum +xiphosura +xiphosuran +xiphosure +xiphosuridae +xiphosurous +xiphosurus +xiphuous +xiphura +xiphydria +xiphydriid +xiphydriidae +xipina +xipinawa +xiraxara +xiri +xiria +xiriana +xirikwa +xiriwai +xironga +xirradiated +xishuanbanna +xishuang +xistence +xists +xitibo +xitlcatl +xitswa +xity +xivaro +xizang +xkbdisable +xkblayout +xkbmodel +xkboptions +xkbrules +xkhfm +xlat +xlib +xlock +xlogic +xlsoft +xmas +xmen +xmodem +xmodmap +xmssupport +xnest +xnet +xnone +xoana +xoanon +xoco +xoff +xokleng +xoko +xong +xonga +xoom +xopa +xorb +xorchio +xored +xorer +xori +xoring +xorl +xorosh +xorw +xosa +xose +xotite +xoton +xoxo +xpertrak +xpichumor +xpicracing +xpicweapon +xpire +xploader +xplorer +xpmbld +xpmbuilder +xpos +xpress +xranlib +xray +xrdb +xref +xren +xres +xrikwa +xross +xsen +xserver +xservers +xsession +xset +xspawn +xspawncan +xtailbox +xtcharts +xtcwplay +xtelab +xtension +xtensions +xterm +xtra +xtradrive +xtremely +xtrkcad +xueqian +xuja +xukru +xukuru +xuncax +xunhua +xunzal +xunzax +xuong +xuptime +xurel +xurima +xuriwai +xussr +xvarshi +xvax +xview +xvii +xviii +xvxvii +xwedagbe +xwelagbe +xwindows +xwing +xwlagbe +xwolf +xwpe +xxencoded +xxii +xxiii +xxxabi +xxxabr +xxxabu +xxxada +xxxadj +xxxafe +xxxafu +xxxagt +xxxahi +xxxakp +xxxald +xxxanv +xxxany +xxxass +xxxati +xxxatt +xxxava +xxxavi +xxxbaa +xxxbak +xxxbal +xxxbam +xxxban +xxxbas +xxxbba +xxxbbi +xxxbbo +xxxbci +xxxbdm +xxxbdo +xxxbdu +xxxbec +xxxbet +xxxbev +xxxbij +xxxbik +xxxbio +xxxbis +xxxbkd +xxxbkm +xxxbky +xxxblh +xxxblw +xxxbog +xxxboi +xxxbom +xxxbra +xxxbre +xxxbri +xxxbro +xxxbsi +xxxbss +xxxbta +xxxbtk +xxxbtt +xxxbuc +xxxbud +xxxbue +xxxbuj +xxxbur +xxxbus +xxxbwt +xxxbya +xxxbza +xxxbzy +xxxbzz +xxxcca +xxxcha +xxxchb +xxxchk +xxxckl +xxxdab +xxxdaf +xxxdaj +xxxdau +xxxdav +xxxdgc +xxxdid +xxxdie +xxxdmo +xxxdoh +xxxdos +xxxdot +xxxdum +xxxdur +xxxdyo +xxxdyu +xxxebr +xxxeot +xxxetu +xxxflb +xxxfle +xxxfli +xxxflj +xxxflk +xxxfuc +xxxful +xxxfur +xxxgaa +xxxgac +xxxgad +xxxgau +xxxgbr +xxxgde +xxxgdf +xxxgdu +xxxggu +xxxgir +xxxgiz +xxxgoa +xxxgod +xxxgol +xxxgrb +xxxgud +xxxgur +xxxgus +xxxgwa +xxxgwe +xxxgwn +xxxgya +xxxh +xxxhag +xxxhay +xxxhia +xxxhig +xxxhts +xxxhua +xxxhwa +xxxhwo +xxxibl +xxxifb +xxxify +xxxigb +xxxilk +xxxirk +xxxita +xxxitb +xxxivc +xxxivv +xxxiyo +xxxjen +xxxjer +xxxjib +xxxkaf +xxxkak +xxxkam +xxxkan +xxxkat +xxxkau +xxxkbu +xxxkde +xxxkdj +xxxkdu +xxxkea +xxxken +xxxkhd +xxxkhh +xxxkib +xxxkiu +xxxkjo +xxxkka +xxxklg +xxxkni +xxxkos +xxxkot +xxxkpe +xxxkrb +xxxkrg +xxxkrt +xxxkru +xxxkrz +xxxksb +xxxkss +xxxktc +xxxkug +xxxkus +xxxkut +xxxkwz +xxxkya +xxxkye +xxxkzc +xxxkzv +xxxkzy +xxxlar +xxxled +xxxlef +xxxlig +xxxlim +xxxliu +xxxlnu +xxxlog +xxxloh +xxxlom +xxxlor +xxxlot +xxxluk +xxxluo +xxxmaf +xxxmak +xxxmar +xxxmas +xxxmba +xxxmbb +xxxmbd +xxxmbe +xxxmbi +xxxmbo +xxxmbs +xxxmbt +xxxmby +xxxmdo +xxxmei +xxxmen +xxxmer +xxxmfl +xxxmge +xxxmgi +xxxmgo +xxxmhd +xxxmkn +xxxmku +xxxmmb +xxxmni +xxxmnill +xxxmoa +xxxmor +xxxmsa +xxxmsh +xxxmsk +xxxmta +xxxmud +xxxmue +xxxmuj +xxxmul +xxxmum +xxxmun +xxxmur +xxxmus +xxxmuy +xxxmyb +xxxmzk +xxxmzw +xxxmzy +xxxncu +xxxndb +xxxndd +xxxndi +xxxndo +xxxndu +xxxneb +xxxnet +xxxnfr +xxxnge +xxxngo +xxxngu +xxxnhb +xxxnin +xxxnko +xxxnku +xxxnla +xxxnmi +xxxnup +xxxnze +xxxogb +xxxogo +xxxoku +xxxold +xxxotr +xxxoub +xxxpan +xxxpar +xxxpil +xxxpol +xxxras +xxxrdi +xxxrib +xxxrim +xxxrin +xxxsan +xxxsay +xxxsbl +xxxsbr +xxxseg +xxxshd +xxxshh +xxxshu +xxxshw +xxxsil +xxxsml +xxxsnh +xxxsnl +xxxsnn +xxxspa +xxxspp +xxxsua +xxxsuc +xxxsud +xxxsur +xxxsus +xxxswa +xxxtag +xxxtam +xxxtbk +xxxtbl +xxxtbw +xxxtch +xxxteu +xxxthe +xxxtik +xxxtir +xxxtiv +xxxtma +xxxtoq +xxxtsg +xxxtso +xxxttb +xxxtur +xxxtuv +xxxudl +xxxudu +xxxuiv +xxxuru +xxxuss +xxxute +xxxvag +xxxvem +xxxviii +xxxvut +xxxwag +xxxwan +xxxwdi +xxxwid +xxxwme +xxxx +xxxxun +xxxxuu +xxxxx +xxxxxx +xxxxxxx +xxxxxxxx +xxxxxxxxxxx +xxxyam +xxxyed +xxxyor +xxxyre +xxxzag +xxxzan +xyla +xylan +xylaria +xylariaceae +xylate +xyleborus +xylem +xylenol +xylenyl +xyletic +xylia +xylic +xylidic +xylidine +xylina +xylindein +xylinid +xylite +xylitol +xylitone +xylobalsamum +xylocarp +xylocarpous +xylocopa +xylocopid +xylocopidae +xylogen +xyloglyphy +xylograph +xylographer +xylographic +xylography +xyloid +xyloidin +xylol +xylology +xyloma +xylomancy +xylometer +xylon +xylonic +xylonite +xylonitrile +xylophaga +xylophagan +xylophage +xylophagid +xylophagidae +xylophagous +xylophagus +xylophilous +xylophonic +xylophonist +xylopia +xyloplastic +xyloquinone +xylorcin +xylorcinol +xylose +xyloside +xylosma +xylostroma +xylostromata +xylotile +xylotomist +xylotomous +xylotomy +xylotrya +xyloyl +xylyl +xylylene +xylylic +xyphoid +xyplan +xyrichthys +xyrid +xyridaceae +xyridaceous +xyridales +xyris +xyst +xyster +xysti +xystos +xystum +xystus +xyzzy +xzibit +xzoom +yaaa +yaaaaaa +yaaaaaaa +yaacov +yaaga +yaako +yaakov +yaaku +yaakua +yaamba +yaan +yaangele +yaayuwee +yaba +yabaa +yabaana +yaban +yabarana +yabassi +yabber +yabbi +yabble +yabby +yabe +yabeka +yabekanga +yabekolo +yabem +yaben +yabi +yabim +yabimbukawac +yabio +yabiyufa +yablans +yablon +yablonowitz +yabob +yabohen +yabong +yabu +yabucoa +yabuh +yabus +yabuti +yabuuti +yabyang +yacabobich +yacal +yacan +yacanelli +yacc +yacca +yacey +yach +yacham +yachan +yachats +yache +yachnitski +yacht +yachtdom +yachter +yachting +yachtist +yachtman +yachtmanship +yachtswoman +yachty +yachuco +yachumi +yachvili +yackel +yackey +yacno +yaco +yacolt +yaconelli +yaconnelli +yacoua +yacouba +yacov +yacuma +yadava +yade +yadena +yadi +yadin +yadkinville +yadolah +yadollahi +yadothoos +yadre +yadrenko +yaeger +yaer +yaeyama +yaff +yaffa +yaffe +yaffi +yaffingale +yaffle +yaffri +yafi +yafran +yaga +yagala +yagallo +yaganon +yagar +yagaria +yagas +yagaw +yagawak +yagba +yage +yager +yagger +yaghan +yaghjian +yaghlane +yaghourt +yaghus +yaghwatadaxa +yagi +yaglom +yagnob +yagnobi +yagomi +yagoua +yagourundi +yagua +yaguarundi +yaguasyacu +yaguaza +yagwa +yagwoia +yaha +yahadian +yahan +yahang +yahaoui +yahgan +yahganan +yahi +yahoo +yahoodom +yahooish +yahooism +yahow +yahrzeit +yahua +yahuanahua +yahudic +yahuma +yahuna +yahup +yahuskin +yahweh +yahwism +yahwist +yahwistic +yahya +yahyapour +yaik +yaikole +yair +yaird +yaisu +yaitepec +yaiwe +yaje +yajeine +yajenine +yajima +yajna +yajnavalkya +yajnopavita +yaju +yaka +yakada +yakai +yakala +yakalag +yakalak +yakalo +yakamik +yakamul +yakan +yakatan +yakattalo +yakha +yakhain +yakhaing +yakhdan +yakhontovia +yakiba +yakibchuk +yakim +yakima +yakimov +yakimovich +yakin +yakina +yakka +yakkha +yakkhaba +yakman +yaknge +yako +yakoko +yakoma +yakona +yakonan +yakoro +yakov +yakovchenko +yakovlev +yakowitz +yakpa +yakpwa +yakuba +yakubovich +yakubu +yakurr +yakushev +yakusu +yakut +yakutat +yakutia +yakutischen +yakuza +yakwa +yakyudan +yala +yalach +yalaha +yalahatan +yalalag +yalalov +yalanjic +yalapmunxte +yalata +yalayu +yalb +yalcin +yaldiyeho +yale +yaleba +yalekosarek +yalena +yalensian +yalevm +yalevmx +yali +yaliambi +yalikoka +yalima +yalimar +yalimo +yalinipsan +yalla +yallaer +yallara +yallof +yallow +yalmbau +yalonda +yalta +yalu +yalunka +yalunke +yalutorov +yaly +yama +yamacraw +yamada +yamagami +yamagani +yamagata +yamaguchi +yamaha +yamai +yamakawa +yamalele +yamalka +yamalonenets +yamaltu +yamamadi +yamamai +yamamoto +yamamura +yamana +yamanai +yamanashi +yamanawa +yamaoka +yamap +yamasaki +yamashita +yamaskite +yamassee +yamata +yamato +yamatos +yamauchi +yamazaki +yamazoe +yamba +yambasa +yambassa +yambe +yambes +yambeta +yambetta +yambio +yambiyambi +yambo +yamdena +yamegi +yamel +yamen +yameo +yamethin +yamey +yamhill +yami +yamiaca +yamil +yamilke +yamin +yamina +yaminahua +yaminawa +yaminihua +yamma +yammadji +yammer +yammering +yamna +yamongeri +yamongiri +yamoussoukro +yamp +yampa +yamph +yamphe +yamphu +yampl +yams +yamshik +yamstchik +yamulka +yamuna +yamur +yana +yanaba +yanacancha +yanadi +yanagawa +yanagida +yanagimoto +yanahuanca +yanaigua +yanam +yanamam +yanan +yanar +yanas +yanayacu +yanbe +yanbu +yanbye +yance +yancey +yanceyville +yanchenko +yanchi +yancopin +yancy +yandang +yandapo +yandell +yander +yanderika +yandirika +yandis +yanesha +yanetust +yanetut +yanez +yang +yanga +yangale +yangaro +yangba +yangben +yangbye +yangchok +yangel +yangele +yangere +yanggangdo +yanghuang +yanglam +yangman +yangmanic +yango +yangon +yangonda +yangoro +yangoru +yangs +yangtao +yangtse +yangtsepakha +yangtze +yangulam +yangye +yanim +yank +yankasia +yanked +yankee +yankeedom +yankeefy +yankeeism +yankeeist +yankeeize +yankeeland +yankeeness +yankees +yankeetown +yankel +yankele +yanking +yankov +yankovski +yankovsky +yankowan +yanks +yanktonai +yanky +yann +yannatos +yanne +yannessa +yannick +yannigan +yannis +yano +yanoam +yanoama +yanoma +yanomam +yanomame +yanomami +yanomamo +yanomay +yanosik +yanouske +yanphu +yanqui +yanrakinot +yans +yanshin +yansi +yanta +yantaryov +yantho +yantic +yantis +yanula +yanyula +yanyuwa +yanyuwan +yanzi +yaokandja +yaoort +yaosakor +yaounde +yaoure +yaourti +yapa +yapanani +yapat +yapen +yapese +yaphank +yaphet +yaply +yapman +yapness +yapo +yapoa +yapock +yapok +yapoma +yapp +yapped +yapper +yappin +yappiness +yapping +yappingly +yappish +yappy +yapreri +yaps +yapsi +yapster +yapunda +yaqai +yaqay +yaqoub +yaqub +yaquerana +yaquina +yara +yarabawa +yaracuy +yarahmadza +yarak +yaran +yarawata +yarawe +yarawi +yaray +yarb +yarber +yarble +yarbo +yarborough +yarbrough +yard +yardang +yardarm +yardbird +yardbirds +yarde +yarder +yardful +yarding +yardkeep +yardland +yardley +yardly +yardman +yardmaster +yards +yardsman +yardsticks +yardwand +yardy +yare +yareba +yareban +yareena +yaren +yareni +yareta +yari +yariba +yarilo +yark +yarkand +yarkandi +yarke +yarker +yarkhun +yarkon +yarl +yarlanda +yarlungzanbo +yarly +yarm +yarmalke +yarmouthport +yarmuk +yarmulkes +yarn +yarnall +yarnango +yarnell +yarnen +yarner +yarns +yarnwindle +yarona +yaros +yarosh +yarovize +yarpha +yarr +yarra +yarralumla +yarraman +yarran +yarringle +yarrow +yars +yarson +yarsun +yarth +yarthen +yaru +yarukula +yaruma +yarura +yaruran +yaruro +yaruru +yarus +yarusyacan +yaruwinga +yarwhelp +yarwhip +yasa +yasar +yaser +yasgua +yasha +yashi +yashik +yashika +yashikira +yashima +yashiro +yashmac +yashmak +yasht +yashuk +yashvin +yasin +yasing +yasmeen +yasmin +yasmine +yasna +yasosuke +yasothon +yasoukou +yasrib +yassa +yassing +yassuku +yasu +yasuaki +yasufzai +yasug +yasuhiro +yasuko +yasuku +yasuna +yasunori +yasuoka +yasutake +yasyin +yata +yatacban +yatagan +yataghan +yatalite +yate +yatenga +yates +yatesboro +yatescenter +yatescity +yatesgrundy +yatesville +yati +yatigan +yatish +yatlerot +yato +yatron +yats +yatseche +yatsee +yatskiv +yatsugatake +yatter +yatvyag +yatye +yatzachi +yatzy +yauagepa +yauan +yauaperi +yauapery +yauarana +yauco +yaud +yaughan +yaugiba +yaul +yaulapiti +yauld +yauma +yaun +yaunde +yaundefang +yaung +yaunk +yauo +yaup +yaupon +yauq +yaur +yaurawa +yaure +yauri +yautefa +yautepec +yautia +yauyos +yava +yavapai +yavar +yavesia +yavita +yavitero +yavuz +yawa +yawalapiti +yawan +yawanawa +yawar +yawarete +yawemba +yawenian +yaweyuha +yawgin +yawiyuha +yawkey +yawl +yawler +yawlsman +yawmeter +yawned +yawner +yawney +yawnful +yawnfully +yawnily +yawniness +yawning +yawningly +yawnproof +yawnups +yawny +yawotataxa +yawp +yawper +yawroot +yaws +yawweed +yawy +yawyen +yaxche +yaxkin +yaya +yayeyama +yayuna +yazd +yazdani +yazdegerdian +yazdi +yazgulam +yazgulyam +yazhi +yazidi +yazoo +yazoocity +yazori +yazva +ybanag +ybas +ybase +ybegay +ybodyrow +ybroken +ycas +ycie +ycleped +yclept +ycol +ydata +yday +yeacov +yeaddiss +yeager +yeagertown +yeah +yeal +yealing +yeamans +yean +yeanling +yeaoman +year +yeara +yearbird +yeard +yearday +yeardley +yearend +yearful +yearling +yearlong +yearly +yearn +yearned +yearnful +yearnfully +yearnfulness +yearning +yearnings +yearnling +yearns +yearock +yearold +yearround +years +yearsley +yearth +yeartoyear +yearwood +yeas +yeasayer +yeastier +yeastiest +yeastily +yeastiness +yeasting +yeastlike +yeasts +yeat +yeates +yeather +yeatman +yeaton +yebamasa +yeci +yeck +yecuana +yecuatla +yede +yedema +yedidia +yedima +yedina +yedji +yeeah +yeech +yeee +yeei +yeel +yeelaman +yees +yefime +yefremov +yega +yegg +yeggman +yeghuye +yegorka +yegorova +yegua +yeguita +yehen +yehette +yehjen +yehoram +yehpa +yehuda +yehudi +yeidji +yeild +yeilded +yeirnie +yeisowo +yeithi +yeji +yekatrina +yekaulang +yekhee +yekora +yekuana +yela +yelawa +yelburton +yeld +yeldrin +yeldrock +yele +yelejong +yelena +yeleped +yelesolomons +yeletnye +yeli +yelinda +yelk +yell +yelland +yelle +yelled +yeller +yelling +yello +yelloch +yellow +yellowammer +yellowback +yellowbelly +yellowberry +yellowbill +yellowbird +yellowcake +yellowcrown +yellowcup +yellowed +yellowedged +yellower +yellowest +yelloweyed +yellowfin +yellowfish +yellowhammer +yellowhead +yellowing +yellowish +yellowjacket +yellowleg +yellowlegs +yellowly +yellowness +yellowpine +yellowroot +yellowrump +yellows +yellowseed +yellowshank +yellowshanks +yellowshins +yellowspring +yellowstone +yellowtail +yellowthorn +yellowthroat +yellowtop +yellowware +yellowweed +yellowwood +yellowwort +yellowy +yellville +yelm +yelmek +yelmer +yelogu +yelp +yelped +yelper +yelping +yelps +yelstin +yelt +yeltsin +yelvington +yelwa +yema +yemassee +yemba +yembana +yembanwe +yembe +yembo +yemchidi +yemen +yemeni +yemenic +yemenis +yemenite +yemma +yemsa +yenadi +yenagoa +yendall +yendam +yendang +yender +yendi +yenets +yengee +yengeese +yengen +yengi +yengisar +yengixar +yengono +yengoru +yeni +yeniche +yenilmez +yenimu +yenisei +yeniseian +yenisey +yenite +yenna +yenned +yenning +yenor +yenta +yente +yentl +yentnite +yenusi +yeomaness +yeomanette +yeomanhood +yeomanlike +yeomanly +yeomans +yeomanwise +yeomen +yeorling +yeowoman +yepa +yepes +yepocapa +yerakai +yeral +yerani +yerava +yeraver +yerawa +yerb +yerba +yercum +yerd +yere +yerekai +yeremenko +yeretuar +yerga +yergam +yergum +yergyuch +yergyudzh +yerigan +yerington +yerk +yerkes +yerkula +yermo +yermolai +yern +yerneni +yerotei +yerth +yeru +yerukala +yerukla +yerukula +yerwa +yesakov +yese +yesenin +yeses +yesesaveta +yeshibah +yeshurun +yesil +yesir +yeskwa +yesno +yeso +yesorno +yesoum +yess +yessanmayo +yessed +yessel +yessing +yessir +yesso +yesss +yessss +yest +yester +yesteran +yesterday +yesterdays +yestereve +yestereven +yestermorn +yestern +yesternight +yesternoon +yesterweek +yesteryear +yestreday +yestreen +yesty +yeta +yetapa +yeth +yether +yeti +yetlin +yetplete +yetsou +yetta +yettem +yettie +yetty +yeuk +yeukieness +yeuky +yeung +yeux +yevanic +yeven +yevette +yevgeny +yevgheni +yevgraf +yevstigneyev +yevteyeva +yevtushenko +yewa +yewenayongsu +yewu +yexal +yeya +yeye +yeyi +yezd +yezdi +yezidi +yezidis +yezo +yezum +yezzy +ygapo +ygiene +ygor +ygua +yheadcol +yheadrow +yhtils +yhuata +yhwh +yian +yibab +yibwa +yichira +yida +yidana +yidda +yiddisher +yiddishism +yiddishist +yidga +yidgha +yidinich +yidinit +yield +yieldable +yieldance +yielded +yielden +yielder +yieldeth +yielding +yieldingly +yieldingness +yields +yieldy +yifin +yiftach +yifti +yigh +yigha +yigletu +yihban +yihudi +yiive +yijia +yikhon +yikirgaulit +yikpabongo +yildirim +yildun +yiligele +yilin +yill +yillaro +yilparitja +yilt +yimas +yimbe +yimbun +yimchunger +yimchungre +yimchungru +yimenu +yimijir +yimlamai +yimtim +yina +yinbaw +yince +yinchia +yinchun +yindi +yindjibarndi +yindu +ying +yinga +yingjiang +yingui +yinibu +yining +yinmya +yinnet +yinst +yintale +yintalet +yinyang +yinzebi +yipe +yipounou +yipped +yippee +yippie +yipping +yippore +yippy +yiptem +yipunu +yira +yird +yiren +yirk +yirm +yirmilik +yirn +yirr +yirrkala +yirrol +yirth +yiru +yisangou +yisangu +yisrael +yite +yitzhak +yivoumbou +yiwom +yixing +yiyang +ykcowrebbaj +yktnpoe +ylaine +ylangylang +ylanos +ylem +ylppo +ylvisaker +ymax +ymir +ymodem +ymodemg +ynambu +yndgaard +ynes +ynez +yngve +yngver +yngwie +yniguez +yntema +ynubu +yoabou +yoabu +yoakum +yoana +yoangen +yoanggeng +yoari +yoba +yobi +yocco +yochabel +yochel +yochmowitz +yock +yockel +yocoboue +yoda +yodanis +yodchai +yodchart +yodel +yodeled +yodeler +yodeling +yodelist +yodelled +yodeller +yodelling +yodh +yodha +yoel +yoelson +yofo +yofuaha +yogad +yogasana +yogendra +yogesh +yogeswaran +yogh +yogi +yogic +yogin +yogis +yogism +yogist +yogli +yogoite +yogur +yogyakarta +yohai +yohanan +yohanna +yohe +yohimbe +yohimbi +yohimbine +yohimbinize +yohng +yohoraa +yohowre +yoichi +yoick +yoicks +yoidik +yoit +yoiumiyal +yojan +yojana +yojimbo +yojuane +yoka +yokadouma +yokan +yokanaan +yokari +yoke +yokeable +yokeableness +yokeage +yoked +yokefellow +yokeldom +yokeless +yokeley +yokelish +yokelism +yokelry +yokemate +yokemating +yoker +yokes +yokewise +yokewood +yoking +yokkaichi +yoknsd +yoko +yokoboue +yokono +yokoo +yokoono +yokota +yokouboue +yokoyama +yoku +yokubo +yokuchi +yokula +yoky +yola +yolanda +yolande +yolane +yolanta +yolanthe +yolden +yoldia +yoldring +yole +yoletir +yoliape +yoliapi +yolked +yolkiness +yolkless +yolks +yolky +yolngumatha +yolo +yolox +yoloxochitl +yolyn +yombe +yomer +yomnawdm +yomou +yomud +yomut +yomuts +yonaguni +yonake +yonathan +yonbish +yoncalla +yoncopin +yonder +yonekawa +yonemoto +yoneyama +yong +yongchun +yonggom +yongjing +yongkom +yongli +yongo +yongolei +yongom +yongsan +yongsn +yongyasha +yoni +yonik +yonk +yonkalla +yonkers +yonner +yonoi +yonside +yont +yooba +yoobeedee +yooessjee +yoohoo +yooi +yooietis +yook +yoombe +yoon +yooniks +yoop +yooshyang +yoosnet +yootha +yoowalak +yooznet +yoram +yorbalinda +yord +yorda +yordanoff +yore +yoretime +yorgo +yori +yorick +yorii +yoritake +york +yorkbeach +yorke +yorker +yorkers +yorkharbor +yorkhaven +yorkish +yorkist +yorklyn +yorknewsalem +yorkshire +yorkshireism +yorkshireman +yorksprings +yorku +yorkville +yoro +yoron +yoru +yoruba +yoruban +yorubatype +yosef +yosehei +yosematsu +yosemite +yoseph +yosfits +yosh +yoshi +yoshiaki +yoshida +yoshifusa +yoshihiro +yoshihisa +yoshikawa +yoshikazu +yoshiki +yoshiko +yoshima +yoshimitsu +yoshimura +yoshinaga +yoshinara +yoshio +yoshioka +yoshiyama +yoshiyuki +yoshizaki +yoshkarola +yoshkarolin +yosi +yosihiko +yosio +yoskum +yosondua +yoss +yossef +yossi +yossif +yost +yosuf +yosuke +yotacism +yotacize +yotafa +yotam +yote +yothers +yoto +yotubo +yotz +youadd +youanne +youcef +youd +youden +youdendrift +youdith +youe +youel +youff +yougafsa +youji +youknowwhat +youl +youle +youll +youlou +youmay +younan +younes +young +youngamerica +youngberry +youngblood +younge +younger +youngest +youngharris +younghearted +younglet +youngling +younglove +youngly +youngman +youngness +youngs +youngsters +youngstown +youngsville +youngtown +youngun +youngwood +younker +younkin +yount +yountis +yountville +youon +youp +your +youra +yourdelphi +youre +yourfavorite +yourfunction +youri +yourn +yourney +yours +yoursel +yourself +yourselves +yourtris +yourvideo +yous +yousaf +youse +yousef +yousefpour +yousri +youssef +youssou +youssouf +yousuf +youth +youthanasia +youthen +youthes +youthful +youthfullity +youthfully +youthfulness +youthhead +youthheid +youthhood +youthily +youthless +youthlike +youthrough +youths +youthsome +youthtide +youthwort +youthy +youuuuu +youve +youward +youwards +youwen +youwill +youze +yovai +yoven +yovonnda +yovor +yowell +yoweri +yowie +yowiye +yowl +yowlachie +yowler +yowley +yowling +yowlring +yowt +yoyce +yoyo +yoyoma +yoyos +yoza +yozgat +ypbind +ypelaar +yperite +yponomeuta +yponomeutid +ypos +yppasswd +yppasswdd +ypserv +ypsiliform +ypsiloid +ypupdated +ypurinan +yquem +yrch +yreb +yreka +yrepo +yrewe +yrigoyen +yrjo +yrold +yrsa +yrth +ysabel +ysaye +ysmim +ystep +ytterbia +ytterbic +ytterbous +ytto +yttria +yttrialite +yttric +yttriferous +yttrious +yttrocerite +yttrocrasite +yttrogummite +yuaga +yuan +yuana +yuanga +yuangchin +yuanjiang +yuantzu +yuapi +yuapin +yuat +yuatmaramba +yuatwaibuk +yuba +yubacity +yubanakor +yuberi +yuca +yucaipa +yucata +yucatan +yucatec +yucatecan +yucateco +yuccavalley +yuce +yuchau +yuchi +yuchiang +yuck +yuckel +yucker +yuckle +yucky +yucpa +yucuan +yucuane +yucuhiti +yucun +yucuna +yucuquimi +yudel +yudelson +yudga +yudhia +yudi +yudik +yudin +yudko +yudy +yuechi +yueh +yuek +yueli +yuen +yuendumu +yuengling +yueping +yueyang +yuft +yuga +yugada +yugoslavia +yugoslavian +yugoslavic +yugoslavs +yugu +yugulda +yugumbe +yugumbir +yugur +yuhana +yuhanna +yuhn +yuhuan +yuichi +yuill +yuin +yuinkuric +yuit +yujakov +yuji +yujiro +yukaghir +yukagir +yukala +yukan +yukata +yukian +yukie +yukihiko +yukinaga +yukinobu +yukio +yukishiro +yukka +yukked +yukkel +yukking +yuko +yukon +yukpa +yuksel +yukthanan +yukthanand +yuku +yukuben +yukubenkuteb +yukulta +yukuna +yukuo +yukutare +yula +yulan +yulbaridja +yule +yuleblock +yuledelena +yulee +yuletide +yulin +yulngo +yulparitja +yulu +yulubinga +yuma +yuman +yumbar +yumbo +yumbri +yumbrimlabri +yumi +yumiko +yuminahua +yummier +yummiest +yummy +yumurtaci +yuna +yunasoft +yunca +yuncan +yunck +yundt +yundum +yung +yungan +yungay +yungcheng +yungchun +yungchuun +yunggor +yungnan +yungpei +yungshun +yungur +yungurroba +yungwe +yunioshi +yunlin +yunnan +yunnanese +yunnantibet +yuno +yunosuke +yunupingu +yunus +yupa +yupik +yupna +yuqui +yura +yuracare +yuracarean +yurach +yurak +yurchuk +yuri +yurii +yuriko +yuriskii +yuriti +yurititapuia +yuriy +yurka +yurmaty +yuro +yurok +yurokwiyot +yurt +yurta +yuru +yurucare +yurucarean +yurucari +yurujure +yuruk +yuruna +yurupari +yurupary +yuruti +yury +yusaku +yusdrum +yusheng +yushiang +yushkevic +yushkevich +yusiff +yusifu +yusof +yussuf +yustaga +yuste +yusuf +yusufs +yusufzai +yusuke +yuta +yutaka +yutan +yutati +yutna +yutsis +yutu +yuulngu +yuval +yuwaitri +yuwana +yuwathida +yuya +yuylin +yuzlik +yuzluk +yuzo +yvan +yveline +yves +yvet +yvette +yvetter +yvidel +yvolde +yvon +yvonne +yvonneck +ywam +yydyne +yyyes +yyyy +yyyyy +yyyyyy +yyyyyyy +yyyyyyyy +yzerman +zaachila +zaakosa +zaanaim +zaanan +zaanannim +zaar +zaavan +zabad +zabaean +zabaglione +zabaism +zaban +zabana +zabarma +zabbai +zabbud +zabczynski +zabdi +zabdiel +zabek +zabell +zaberma +zabernsee +zabeta +zabey +zabian +zabil +zabili +zabism +zabitsa +zabivay +zabka +zabladowski +zabokrzycki +zabol +zabolel +zabolo +zabor +zabou +zabra +zabransky +zabre +zabrina +zabriskie +zabti +zabtie +zabud +zabudkin +zabulon +zaby +zacapa +zacapoaxtla +zacata +zacate +zacatec +zacatecas +zacateco +zacatepec +zacatla +zacaton +zacaya +zaccai +zaccardi +zaccari +zacchaeus +zacchur +zacconi +zaccur +zach +zacha +zacharakis +zachariah +zacharias +zacharious +zacher +zachette +zachi +zachia +zachow +zachrisson +zachun +zachwatowicz +zack +zacks +zacualpan +zadar +zadeh +zadek +zadkiel +zadok +zadokite +zadorozny +zadow +zadruga +zaduski +zaebal +zaebali +zaebalsya +zaebno +zaebut +zaehle +zafar +zafarano +zafarullah +zafer +zaferious +zaffar +zaffer +zafree +zagaba +zagai +zagaoua +zagaran +zagari +zagawa +zagged +zaghawa +zaghvana +zaghwan +zagloba +zaglossus +zagna +zagne +zagonkatab +zagorsek +zagorski +zagrodney +zagundzi +zaha +zaham +zahao +zahara +zaharia +zaharychuk +zahau +zahchin +zaheva +zahid +zahir +zahirul +zahl +zahn +zahodil +zahra +zahrani +zahringia +zahuatla +zaia +zaiatz +zaibatsu +zaibatus +zaichkowsky +zaid +zaida +zaide +zaidi +zaihua +zaikaku +zailani +zaimi +zain +zainab +zainal +zaino +zair +zairezambia +zairian +zairians +zaitha +zaitsa +zaity +zaius +zaiwa +zajac +zajaczkowska +zajaczkowski +zajicek +zakai +zakara +zakariya +zakarow +zakataly +zake +zakee +zakharov +zakho +zakin +zakinthos +zakir +zakis +zakkai +zakkeu +zaklohpakap +zakluchennih +zakrili +zakrilsya +zakroy +zaksa +zakshi +zala +zaladava +zalambdodont +zalameda +zalamo +zalaph +zalata +zaldivar +zale +zalee +zalene +zaleska +zaleski +zalhus +zalil +zalingei +zalisere +zalit +zalite +zaliwski +zall +zalla +zalma +zalman +zalmie +zalmon +zalmonah +zalmunna +zalokar +zaloker +zalophus +zaloris +zaloshoff +zalovil +zalovili +zalzale +zama +zamaglias +zaman +zamang +zamarra +zamarro +zamay +zambal +zambales +zambelli +zambesia +zambezi +zambezia +zambezian +zambia +zambian +zamble +zambo +zamboanga +zamboanguen +zambomba +zamboni +zamboorak +zambrano +zame +zamenhof +zamenis +zamenyali +zamfarawa +zamia +zamiaceae +zamicrus +zamiel +zaminchipe +zamindar +zamindari +zaminder +zamir +zammie +zammis +zamora +zamorin +zamoro +zamorra +zamosc +zamoshnikov +zamouse +zampino +zamprogno +zamucoan +zamuto +zamyatin +zamzummims +zana +zanaga +zanaki +zanakis +zanclidae +zanclodon +zande +zanden +zandenzakara +zander +zanders +zandi +zandmole +zandow +zandra +zandt +zane +zanella +zanes +zanesfield +zanesville +zanet +zaneta +zanetta +zanette +zanetti +zanfield +zanfrello +zang +zanga +zangi +zangnte +zangon +zangram +zangskari +zangwal +zani +zaniah +zanier +zanies +zaniest +zanikal +zanily +zanimatcya +zaniness +zanino +zaniza +zanjan +zanna +zanni +zanniat +zannichellia +zano +zanoah +zanofil +zanoli +zanoni +zanonia +zanovo +zant +zante +zantedeschia +zantewood +zanthorrhiza +zanthoxylum +zanti +zantiguila +zantiot +zantiote +zantiris +zanu +zanuck +zanupf +zanus +zany +zanyish +zanyism +zanyship +zanzalian +zanze +zanzibari +zanzibaris +zaore +zaorski +zaoua +zapa +zapach +zapakovannie +zapara +zaparan +zaparil +zaparo +zaparoan +zapas +zapasiewicz +zapata +zapater +zapatero +zapatista +zapf +zaphara +zaphetic +zaphod +zaphon +zaphrentid +zaphrentidae +zaphrentis +zaphrentoid +zapien +zapisal +zapishi +zapisnoy +zapodidae +zapodinae +zaporogian +zaporogue +zapota +zapotec +zapotecan +zapoteco +zapp +zappa +zappala +zappas +zapped +zapping +zappings +zapt +zaptiah +zaptieh +zaptoeca +zapupe +zapus +zaqqoom +zaqqum +zaque +zara +zarabanda +zarabaon +zaradan +zaraga +zaragoza +zarah +zaramo +zaranda +zaranee +zaranj +zaranoff +zaranska +zarate +zarathustra +zaratite +zarbarma +zarco +zardoz +zardushti +zareah +zareathites +zareba +zarebski +zared +zareeba +zarella +zarema +zaremba +zaren +zarephath +zareschi +zaretan +zarethshahar +zaretsky +zaretskyi +zarf +zargari +zargham +zarhites +zari +zaria +zarimba +zariski +zariwa +zark +zarkel +zarkman +zarko +zarkov +zarla +zarlenga +zarma +zarnich +zarniwoop +zarnoch +zaroff +zarp +zarphatic +zarqa +zarrah +zarrella +zarrin +zarrop +zartanah +zarthan +zarzis +zarzuela +zasada +zashel +zashli +zaskar +zaslow +zasshi +zastryali +zasu +zasunul +zatem +zati +zatknu +zatkovic +zato +zatoichi +zatopek +zatorchal +zattare +zatthu +zattiany +zattiero +zattoukalova +zattu +zatuchni +zatyanetsa +zatylny +zauhar +zauner +zaurak +zauschneria +zavadiuk +zavala +zavalil +zavalitsa +zavalla +zavan +zaven +zavialova +zavijava +zavtra +zavyazivay +zawa +zawadka +zawistowska +zawiyah +zawr +zaya +zayas +zayat +zayd +zaydan +zayed +zayein +zayid +zayin +zayner +zaynullin +zayoli +zayse +zaysinya +zaysse +zaza +zazagorani +zazao +zazing +zazracnica +zazu +zazulak +zbek +zbib +zbignew +zbigniew +zbikowski +zbuda +zbuf +zcalc +zcat +zdal +zdanek +zdemo +zdenek +zdenka +zdenko +zdep +zdnet +zdorovie +zdorovo +zdravstvuy +zdzislaw +zeadler +zeal +zealand +zealander +zealful +zealless +zeallessness +zealotes +zealotic +zealotical +zealotism +zealotist +zealotry +zealots +zealous +zealously +zealousness +zealousy +zealproof +zearing +zeba +zebadiah +zebah +zebaim +zebak +zebaki +zebec +zebeck +zebedee +zebedees +zebina +zeboiim +zeboim +zebra +zebraic +zebralike +zebras +zebrass +zebrawood +zebrina +zebrine +zebrinny +zebroid +zebrula +zebrule +zebu +zebub +zebudah +zebul +zebulon +zebulonite +zebulun +zebulunite +zebulunites +zeburro +zeca +zecchini +zecchino +zech +zechariah +zechin +zechstein +zeck +zeckhauser +zedad +zedak +zeddmore +zeddo +zedekiah +zedoary +zedong +zeduller +zedunaiski +zeeb +zeebrugge +zeed +zeeland +zeelander +zeelandia +zeem +zeena +zeerohth +zeet +zeev +zeevi +zeffie +zefra +zeftel +zegache +zeger +zeggaoua +zeggeren +zeggil +zeghawa +zegler +zegray +zeguha +zehn +zehnder +zehner +zehra +zeidae +zeidler +zeiger +zeigler +zeigt +zeimet +zein +zeina +zeinik +zeiniker +zeis +zeisberg +zeiske +zeisler +zeism +zeissia +zeist +zeit +zeitgeist +zeitler +zeitpunkt +zekal +zeke +zeku +zelah +zelanian +zelator +zelatrice +zelatrix +zelaya +zelaza +zelazny +zelda +zeldin +zelek +zeleki +zelenka +zeleny +zeleps +zelesnik +zelgwa +zelia +zelian +zelide +zelie +zelienople +zeliff +zelig +zelika +zelima +zelinda +zelinsky +zeljko +zelkova +zell +zellaby +zelle +zeller +zelli +zellner +zellwood +zelma +zelmamu +zelmo +zelnik +zelophehad +zelotes +zelsmann +zeltinger +zelzah +zemachiai +zemaitis +zemaljski +zeman +zemanek +zemaraim +zemarite +zemay +zembrzuska +zeme +zemeism +zemel +zemi +zemimdari +zemin +zemindar +zemindary +zemira +zemlje +zemlya +zemmi +zemmour +zemni +zemskov +zemstroist +zemstvo +zemtsova +zena +zenag +zenaga +zenaida +zenaidinae +zenaidura +zenan +zenana +zenang +zenap +zenar +zenas +zenati +zend +zenda +zendavest +zendi +zendic +zendician +zendik +zendikite +zenelophon +zeng +zeni +zenia +zenick +zenildo +zenisek +zenith +zenithal +zenithward +zenithwards +zenker +zenkevicius +zenkner +zenlike +zenned +zenning +zennon +zeno +zenobia +zenocentric +zenographic +zenographics +zenography +zenoitis +zenonian +zenonic +zens +zentrale +zenu +zenzontepec +zeoidei +zeolite +zeolitic +zeolitize +zeon +zeona +zeos +zeoscope +zepeda +zephania +zephaniah +zephath +zephathah +zephi +zepho +zephon +zephonites +zephyr +zephyranthes +zephyrcove +zephyrean +zephyrhills +zephyrless +zephyrlike +zephyrous +zephyrus +zephyry +zeplichal +zepp +zeppelin +zeppo +zeps +zequin +zerah +zerahiah +zerbe +zerbinetta +zerbst +zerda +zerdy +zere +zered +zereda +zeredathah +zerelda +zererath +zeresh +zereth +zergulla +zergullinya +zeri +zerkalo +zerlina +zerma +zermahbub +zermatt +zermelo +zerneck +zero +zeroaxial +zerobased +zerocoder +zerocontent +zeroed +zeroes +zeroeth +zerof +zeroin +zeroing +zeroize +zeroone +zeroorder +zeror +zerorange +zeros +zerriffi +zerta +zeruah +zerubbabel +zeruiah +zerumbet +zervos +zerwany +zesch +zesowate +zestful +zestfully +zestfulness +zeta +zetacism +zetafax +zetar +zetarians +zetetic +zetham +zethan +zethar +zetkin +zette +zetterling +zetterstrom +zetts +zeuge +zeuglodon +zeuglodont +zeuglodonta +zeuglodontia +zeugma +zeugmatic +zeunerite +zeus +zeusx +zeuxian +zeuxo +zeuzera +zeuzerian +zeuzeridae +zevic +zevko +zevulun +zexpl +zeyk +zeze +zezebape +zezegi +zezuru +zfortune +zftpd +zglinicki +zgraggen +zgusta +zhacker +zhakov +zhang +zhangheng +zhangye +zhangzhung +zhanjiang +zhanna +zhao +zhaoguo +zharko +zharov +zhefou +zhejiang +zheleznov +zhelka +zhen +zheng +zhengyu +zhenjiang +zhernikov +zhgabe +zhihli +zhijuan +zhili +zhiltsov +zhimomi +zhiru +zhivago +zhivankova +zhivkov +zhivu +zhivyot +zhizni +zhmud +zholanov +zholobov +zhong +zhongdian +zhongguo +zhongjia +zhongolovich +zhongshan +zhonjigali +zhora +zhou +zhuang +zhukov +zhuoase +zhuoasi +zhurbenko +ziad +ziai +ziamet +ziara +ziarat +ziaur +ziba +zibeline +zibeon +zibet +zibeth +zibethone +zibetone +zibetum +zibia +zibiah +zibiao +zibirkhalin +zibito +zichichi +zichri +zichy +zicree +ziddim +zidek +zidell +zidim +zidkijah +zidler +zidon +zidonians +ziebarth +zieber +ziega +ziegel +zieger +ziegfeld +ziegler +zieglerville +ziegner +ziehl +ziehn +zielinski +zielona +ziema +ziemann +ziemba +ziemer +zien +ziener +ziesche +zietek +zietrisikite +ziffs +zigamorph +ziganka +zigbe +zigenare +ziggurat +ziggy +zigmunt +zigon +zigoua +zigrand +zigri +zigua +ziguener +ziguinchor +zigula +zigulazaramo +zigwa +zigzagged +zigzaggedly +zigzagger +zigzaggery +zigzagging +zigzaggy +zigzagwise +ziha +zihar +zihuateutla +zijlstra +ziki +ziklag +zikri +zikurat +zilaie +zilber +zilberman +zilch +zilkov +zilla +zillagulo +zillah +zillion +zillions +zillionth +zilly +zilmamo +zilmamu +zilmamubale +zilo +zilog +zilpah +zilthai +zilvia +zilzer +zima +zimakani +zimango +zimarra +zimatl +zimatla +zimatlan +zimb +zimba +zimbabwe +zimbabwean +zimbalist +zimbalon +zimbaloon +zimbi +zimbrisch +zime +zimentwater +zimina +ziminska +zimmah +zimme +zimmer +zimmerer +zimmerl +zimmerly +zimmerman +zimmermann +zimmerwald +zimmet +zimmi +zimmis +zimocca +zimran +zimri +zimshian +zimu +zina +zinacanteco +zinacatepec +zinak +zinc +zincalo +zincate +zincenite +zinchenko +zincic +zincide +zinciferous +zincify +zincing +zincite +zincize +zincke +zincky +zinco +zincograph +zincographer +zincographic +zincography +zincoid +zincotype +zincous +zincum +zincuret +zinder +zinderneuf +zindulka +zine +zinfandel +zinga +zingale +zingano +zingaresca +zingaro +zingel +zingeler +zinger +zingerone +zingg +zingiber +zingiberene +zingiberol +zingiberone +zingietta +zingler +zingo +zinida +zinja +zinjero +zink +zinkenite +zinker +zinkie +zinkiv +zinn +zinna +zinneman +zinnemann +zinnes +zinnia +zinnowitz +zinnwaldite +zino +zinoviev +zinsang +zinski +zinthrop +ziny +zinyamunga +zinza +zinzar +ziogba +zion +ziongrove +zionhill +zionist +zionistic +zionite +zionless +zionsville +zionville +zionward +zior +zipa +zipcat +zipcode +zipcrack +zipfile +zipfolders +zipfs +zipgun +ziph +ziphah +ziphian +ziphiidae +ziphiinae +ziphioid +ziphion +ziphites +ziphius +ziphron +ziplabel +zipmagic +zipoffice +zippart +zippas +zippe +zipped +zipper +zipperhead +zippers +zippier +zippiest +zipping +zippingly +zippor +zipporah +zippy +zips +zipser +zipstream +zipuria +zira +ziraha +zirai +zirak +zirakboli +zirakzigil +ziral +ziran +zirbanit +zircite +zircon +zirconate +zirconia +zirconian +zirconic +zirconoid +zirconyl +zire +ziretiri +zirian +zirianian +zirkelite +zirko +zirkus +zisi +zisu +zita +zitadella +zitako +zitamaria +zitare +zitella +zither +zitherist +zithri +zithung +zitko +zito +zitouni +zitrone +zitter +zitzit +zitzith +zitzmann +ziva +zivi +zivilik +zivko +zivkovic +zivojinovic +zivondlovic +zivot +zivotic +ziwa +ziwe +ziya +ziyrek +ziza +zizah +zizania +zizee +zizhiqu +zizi +zizia +zizikore +ziziliveken +zizipoff +zizkowska +zizyphus +zizz +zizzing +zkazy +zlata +zlatin +zlatka +zlatko +zlenge +zlib +zlibpc +zlilo +zlist +zlitan +zlitsa +zlote +zlotych +zmed +zmodem +zmory +zmover +zmud +zmudz +znachit +znack +znaesh +znaet +znaimer +znaiu +znakomi +znakomiy +znakova +znau +znay +znaya +znayu +znpb +zoacum +zoan +zoanthacea +zoanthacean +zoantharia +zoantharian +zoanthid +zoanthidae +zoanthidea +zoanthodeme +zoanthodemic +zoanthoid +zoanthropy +zoanthus +zoar +zoarces +zoarcidae +zoaria +zoarial +zoarite +zoarium +zoaunne +zoba +zobah +zobebah +zobo +zobtenite +zocco +zoccolo +zocle +zodi +zodiac +zodiophilous +zodrow +zoea +zoeaform +zoeal +zoeform +zoehemera +zoehemerae +zoehner +zoel +zoellner +zoenka +zoerb +zoetic +zoetrope +zoetropic +zoffoli +zofia +zogan +zogbme +zogbo +zogg +zogi +zogo +zohak +zohar +zohara +zoharist +zoharite +zoheleth +zoheth +zohra +zohri +zoia +zoiatria +zoiatrics +zoic +zoid +zoidogamous +zoidou +zoie +zoilean +zoilism +zoilist +zoilus +zoisite +zoism +zoist +zoistic +zoitah +zokhua +zokole +zokor +zola +zolaesque +zolaism +zolaist +zolaistic +zolaize +zolarr +zoldeck +zoldos +zoldou +zolficar +zolfosprings +zoll +zolle +zollernia +zollman +zollpfund +zollverein +zolmer +zolo +zolotarev +zolotink +zolotnik +zolotov +zoltan +zolton +zolya +zomar +zomba +zombi +zombie +zombies +zombiism +zome +zomezing +zomi +zomo +zomotherapy +zona +zonal +zonality +zonally +zonar +zonaria +zonary +zonate +zonated +zonation +zonca +zonda +zondra +zone +zoned +zoneless +zonelet +zonelike +zones +zonesthesia +zonfeld +zongbi +zongkhar +zongo +zongora +zonguldak +zongyi +zonia +zonic +zoniferous +zoning +zonis +zonite +zonites +zonitid +zonitidae +zonitoides +zonk +zonkar +zonker +zonner +zonnya +zonochlorite +zonociliate +zonoid +zonolimnetic +zonoskeleton +zonoto +zonotrichia +zonoun +zonta +zontar +zontian +zonu +zonular +zonule +zonulet +zonure +zonurid +zonuridae +zonuroid +zonurus +zoobenthos +zooblast +zoocarp +zoocecidium +zoochemical +zoochemistry +zoochemy +zoochlorella +zoochore +zoocoenocyte +zoocultural +zooculture +zoocurrent +zoocyst +zoocystic +zoocytial +zoocytium +zoodendria +zoodendrium +zoodynamic +zoodynamics +zooecia +zooecial +zooecium +zooerastia +zooerythrin +zooey +zoofil +zoofulvin +zoogamete +zoogamous +zoogamy +zoogene +zoogenesis +zoogenic +zoogenous +zoogeny +zoogeography +zoogeologist +zoogeology +zoogloea +zoogloeal +zoogloeic +zoogloeoid +zoogocho +zoogonic +zoogonidium +zoogonous +zoogony +zoograft +zoografting +zoographer +zoographic +zoographical +zoographist +zoography +zoogrpahy +zooid +zooidal +zook +zookeeper +zooks +zoolater +zoolatria +zoolatrous +zoolatry +zoolite +zoolith +zoolithic +zoolitic +zoologer +zoologic +zoological +zoologically +zoologist +zoologize +zoolu +zoom +zoomable +zoomagnetic +zoomagnetism +zoomancy +zoomania +zoomantic +zoomantist +zoomastigina +zoomastigoda +zoomboing +zoomechanics +zoomed +zoomelanin +zoometric +zoometry +zoomimetic +zoomimic +zooming +zoomorph +zoomorphic +zoomorphism +zoomorphize +zoomorphy +zooms +zoon +zoonal +zoonerythrin +zoonic +zoonist +zoonite +zoonitic +zoono +zoonomia +zoonomic +zoonomical +zoonomist +zoonomy +zoonosis +zoonosology +zoonotic +zoons +zoonule +zoopantheon +zooparasite +zooparasitic +zoopathology +zoopathy +zooperal +zooperist +zoopery +zoophaga +zoophagan +zoophagineae +zoophagous +zoophagus +zoopharmacy +zoophile +zoophilia +zoophilic +zoophilism +zoophilist +zoophilite +zoophilitic +zoophilous +zoophily +zoophism +zoophobia +zoophobous +zoophoric +zoophorus +zoophysical +zoophysics +zoophyta +zoophytal +zoophyte +zoophytic +zoophytical +zoophytish +zoophytoid +zoophytology +zooplankton +zooplastic +zooplasty +zoopsia +zoos +zooscopic +zooscopy +zoosis +zoosmosis +zoosperm +zoospermatic +zoospermia +zoospermium +zoosphere +zoosporange +zoosporangia +zoospore +zoosporic +zoosporocyst +zoosporous +zoostation +zoosterol +zoot +zootaxy +zootechnic +zootechnics +zootechny +zooter +zoothapsis +zoothecia +zoothecial +zoothecium +zootheism +zootheist +zootheistic +zootherapy +zoothome +zootic +zootoca +zootomic +zootomical +zootomically +zootomist +zootomy +zoototemism +zootoxin +zootrophic +zootrophy +zootype +zootypic +zooxanthella +zooxanthin +zoozoo +zopf +zophah +zophai +zophar +zophim +zopie +zopilote +zoppel +zoppetti +zoque +zoquean +zora +zorac +zorah +zoraida +zoran +zorana +zoraptera +zorathites +zoratti +zorba +zorc +zorch +zoreah +zoreich +zorg +zorgite +zorgus +zorhaua +zori +zorich +zoril +zorilla +zorille +zorillinae +zorillo +zorin +zorina +zorine +zoris +zorita +zorites +zork +zorka +zorkmid +zorn +zorndorf +zorni +zoro +zoroastrians +zoroastrism +zoroastro +zorobabel +zoron +zorony +zorotua +zorotypus +zorrilla +zorrillo +zorrito +zorro +zorska +zortech +zortman +zorz +zorzi +zosia +zosma +zoss +zoster +zostera +zosteraceae +zosteriform +zosteropinae +zosterops +zottola +zotung +zotz +zouave +zoug +zouheir +zoukougbeu +zoul +zoulgo +zoumou +zounded +zoundweogo +zouroya +zouve +zouzou +zovut +zowie +zoya +zoysia +zpitting +zpoke +zrady +zrakov +zraoua +zreg +zrna +zrobok +zsazsa +zschiesche +zsofi +zsoft +zsuzska +zsuzsu +ztestprinter +ztoss +ztraceneho +ztreewin +zuanic +zuar +zuara +zuarungu +zubaida +zubair +zubaki +zubans +zubayr +zubber +zubeir +zuben +zuber +zuberkock +zubi +zubkov +zubnogo +zubricki +zucca +zuccarelli +zuccarino +zucchetto +zucchinis +zucco +zuchetto +zuchongzhi +zuchowicz +zuckeran +zuckerbrot +zuckerman +zuckert +zuckie +zudda +zudov +zuenoula +zuettel +zufaellige +zufryden +zuggy +zugsmith +zugtierlast +zugweya +zuhayr +zuhdi +zuhuzuho +zuidholland +zuijlen +zuisin +zukas +zuko +zukosky +zukovsky +zuleika +zulema +zuley +zulfikar +zulgo +zulgwa +zulhijjah +zulia +zulinde +zulkadah +zulkifl +zullinger +zully +zulma +zulmamu +zulqarnain +zulu +zuludom +zuluize +zululand +zuma +zumatic +zumaya +zumba +zumbi +zumbooruk +zumbrofalls +zumbrota +zumbul +zumhagen +zummo +zumo +zumomi +zumper +zumpf +zumu +zunda +zungu +zungur +zuni +zunian +zuniga +zunuzi +zunyite +zuonko +zupanate +zupancic +zupanic +zuph +zuraa +zurab +zurawlev +zurbenko +zurbrzyc +zureik +zurenava +zuri +zurica +zurich +zuriel +zurishaddai +zurl +zuru +zuruaha +zurubu +zurudonko +zuryanovich +zusaetzlich +zusu +zutic +zutiua +zutugil +zuurveldt +zuwadza +zuwara +zuwarah +zuwaylif +zuweisen +zuza +zuzana +zuzims +zuzu +zvanut +zvee +zver +zverdara +zverev +zvery +zvonar +zvonko +zwall +zwanzig +zwanziger +zwara +zwart +zway +zwebrckn +zwei +zweibrckn +zweibrucke +zweibruckn +zweierlei +zweig +zweimal +zwerenz +zwerling +zwet +zwetana +zwick +zwicker +zwicky +zwieback +zwing +zwingle +zwinglian +zwinglianism +zwinglianist +zwischen +zwitter +zwitterion +zwitterionic +zwolle +zybala +zybisco +zyde +zyga +zygadenine +zygadenus +zygaena +zygaenid +zygaenidae +zygal +zygantra +zygantrum +zygapophysis +zygion +zygite +zygmunt +zygnema +zygnemaceae +zygnemales +zygnematales +zygobranch +zygobranchia +zygocactus +zygodactyl +zygodactylae +zygodactyli +zygodactylic +zygodont +zygogenesis +zygoid +zygolabialis +zygoma +zygomata +zygomatic +zygomaticum +zygomaticus +zygomorphic +zygomorphism +zygomorphous +zygomycete +zygomycetes +zygomycetous +zygon +zygoneure +zygophore +zygophoric +zygophyceae +zygophyceous +zygophyllum +zygophyte +zygopleural +zygoptera +zygopteran +zygopterid +zygopterides +zygopteris +zygopteron +zygopterous +zygose +zygosis +zygosperm +zygosphenal +zygosphene +zygosphere +zygosporange +zygospore +zygosporic +zygostyle +zygotactic +zygotaxis +zygotene +zygotic +zygotoblast +zygotoid +zygotomere +zygous +zygozoospore +zylstra +zymase +zyme +zymic +zymin +zymite +zymogen +zymogene +zymogenesis +zymogenic +zymogenous +zymoid +zymologic +zymological +zymologist +zymology +zymolysis +zymolytic +zymome +zymometer +zymomin +zymophore +zymophoric +zymophyte +zymoplastic +zymoscope +zymosimeter +zymosis +zymosterol +zymosthenic +zymotechnic +zymotechnics +zymotechny +zymotic +zymotically +zymotize +zymotoxic +zymurgy +zyoba +zyrian +zyskin +zythia +zythum +zyudin +zywiel +zyxel +zyxels +zyzomys +zyzop +zyzzogeton +zzzz +zzzzz +zzzzzz +zzzzzzz +zzzzzzzz diff --git a/newcodes/answers/q58.py b/newcodes/answers/q58.py new file mode 100644 index 0000000..d5fb35b --- /dev/null +++ b/newcodes/answers/q58.py @@ -0,0 +1,25 @@ +#!/usr/bin/env python +# coding=utf-8 + + +def clean_word(word): + return word.strip().lower() + +def get_vowels_in_word(word): + vowel_str = "aeiou" + vowels_in_word = "" + for char in word: + if char in vowel_str: + vowels_in_word += char + return vowels_in_word + +if __name__ == "__main__": + data_file = open("dictionary.txt", "r") + print("Find words containing vowels 'aeiou' in that order:") + for word in data_file: + word = clean_word(word) + if len(word) <= 6: + continue + vowel_str = get_vowels_in_word(word) + if vowel_str == "aeiou": + print(word) From 69deebd7253fc78c3f1aec7cec3d72631dedc352 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 19 Sep 2016 13:13:42 +0800 Subject: [PATCH 224/288] judge user --- newcodes/answers/q26.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 newcodes/answers/q26.py diff --git a/newcodes/answers/q26.py b/newcodes/answers/q26.py new file mode 100644 index 0000000..8da792c --- /dev/null +++ b/newcodes/answers/q26.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +# coding=utf-8 + +users = ['xiaoxifeng', 'cangcang', 'tom'] + +while True: + name = input("input your name:") + if name in users: + print("Hello, {0}".format(name)) + break + else: + print("Sorry. Try again, please.") + From 8f517fdfee36ac8434b8194a7f87c162fb2760fb Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 19 Sep 2016 13:49:10 +0800 Subject: [PATCH 225/288] word number --- newcodes/answers/q29.py | 15 +++++++++++++++ newcodes/answers/youraisemeup.txt | 13 +++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 newcodes/answers/q29.py create mode 100644 newcodes/answers/youraisemeup.txt diff --git a/newcodes/answers/q29.py b/newcodes/answers/q29.py new file mode 100644 index 0000000..00b66b1 --- /dev/null +++ b/newcodes/answers/q29.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +# coding=utf-8 + +d = {} +with open("youraisemeup.txt") as f: + for line in f: + if bool(line): + line_lst = line.split() + for word in line_lst: + word = word.lower() + if word in d: + d[word] += 1 + else: + d[word] = 1 +print(d) diff --git a/newcodes/answers/youraisemeup.txt b/newcodes/answers/youraisemeup.txt new file mode 100644 index 0000000..d3802f2 --- /dev/null +++ b/newcodes/answers/youraisemeup.txt @@ -0,0 +1,13 @@ +You Raise Me Up +When I am down and oh my soul so weary +When troubles come and my heart burdened be +Then I am still and wait here in the silenceUntil you come and sit awhile with me + +You raise me up +so I can stand on mountains +You raise me up to walk on stormy seas + +I am strong when I am on your shoulders + +You raise me up +To more than I can be From cb3c105e338cb46ac8b8f701f8ee7b257f7204dd Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 19 Sep 2016 14:41:20 +0800 Subject: [PATCH 226/288] which number --- newcodes/answers/q31.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 newcodes/answers/q31.py diff --git a/newcodes/answers/q31.py b/newcodes/answers/q31.py new file mode 100644 index 0000000..7ac026d --- /dev/null +++ b/newcodes/answers/q31.py @@ -0,0 +1,12 @@ +#!/usr/bin/env python +# coding=utf-8 + +#people_list = [ x for x in range(1, 101) ] +#while len(people_list) != 1: +# people_list = people_list[1::2] +#print(people_list[0]) + +s = range(100) +while len(s) > 1: + s = [ x for i,x in enumerate(s) if i%2==1 ] +print(s.pop()+1) From 174bfaca3708aa5cbf464cdba5e5601658ca31b9 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 10:38:08 +0800 Subject: [PATCH 227/288] average score --- newcodes/answers/q34.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 newcodes/answers/q34.py diff --git a/newcodes/answers/q34.py b/newcodes/answers/q34.py new file mode 100644 index 0000000..33863ff --- /dev/null +++ b/newcodes/answers/q34.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python +# coding=utf-8 + +def average(lst): + total = 0 + for i in lst: + total = total + i + ave = total / len(lst) + return ave + +def max_student(dct): + max = 0 + for k,v in dct.items(): + if v > max: + max = v + name = k + return (name, max) + +if __name__ == "__main__": + d = {} + score_lst = [] + while True: + name = input("input name:('q'-exit)") + if name == "q": + break + else: + score = int(input("input score:")) + d[name] = score + score_lst.append(score) + + ave = average(score_lst) + print("the average scroe is:{}".format(round(ave, 2))) + name, score = max_student(d) + print("xueba is {0}, his/her score is {1}".format(name, score)) + + From b7b1ea1d4d193326245b1b18263ab30b54d01426 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 11:01:35 +0800 Subject: [PATCH 228/288] salary --- newcodes/answers/q35.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 newcodes/answers/q35.py diff --git a/newcodes/answers/q35.py b/newcodes/answers/q35.py new file mode 100644 index 0000000..c0dc394 --- /dev/null +++ b/newcodes/answers/q35.py @@ -0,0 +1,29 @@ +#!/usr/bin/env python +# coding=utf-8 + +def salary(base_salary, work_days, off_days, add_days): + salary = base_salary + if off_days == 0: + salary = salary + salary*0.2 + elif off_days > 0 and off_days <= 2: + salary = salary + elif off_days > 2 and off_days <=7: + salary = salary * 0.9 + elif off_days > 7 and off_days <= 14: + salary = salary * 0.5 + else: + return 0 + + if add_days > 0: + more_salary = add_days * base_salary / work_days + salary = salary + more_salary + + return salary + +if __name__ == "__main__": + base_salary = 5000.00 + work_days = 21 + off_days = 0 + add_days = 5 + s = salary(base_salary, work_days, off_days, add_days) + print(round(s, 2)) From ad12585f2a916ff745e68a748f7aaa41ab0c502a Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 11:29:49 +0800 Subject: [PATCH 229/288] interest --- newcodes/answers/q37.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 newcodes/answers/q37.py diff --git a/newcodes/answers/q37.py b/newcodes/answers/q37.py new file mode 100644 index 0000000..6f42e14 --- /dev/null +++ b/newcodes/answers/q37.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +# coding=utf-8 + +def interest(p,r,n): + a = p*pow((1+r),n) + return a + +if __name__ == "__main__": + p = 1000 + r = 0.05 + n = 2 + total = interest(p,r,n) + print(round(total, 2)) From b0036093266ac0cdf811b3a45aa58bd902792cb8 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 12:01:23 +0800 Subject: [PATCH 230/288] check email --- newcodes/answers/q38.py | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 newcodes/answers/q38.py diff --git a/newcodes/answers/q38.py b/newcodes/answers/q38.py new file mode 100644 index 0000000..60e8ba4 --- /dev/null +++ b/newcodes/answers/q38.py @@ -0,0 +1,24 @@ +#!/usr/bin/env python +# coding=utf-8 + +import re + +def validate_email(email): + if len(email) > 4: + if re.match("^[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+.[a-zA-Z]{2,6}$", email) != None: + return True + else: + return False + +if __name__ == "__main__": + while True: + e = input("Input your email('q'-exit):") + if e == "q": + print("Bye!") + break + else: + r = validate_email(e) + if r: + print("The email is right.") + else: + print("sorry, the email is not right.") From 29a5a115f11c176dddb031262054f759d373d86a Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 12:03:20 +0800 Subject: [PATCH 231/288] check email --- newcodes/answers/q38.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/newcodes/answers/q38.py b/newcodes/answers/q38.py index 60e8ba4..be1423a 100644 --- a/newcodes/answers/q38.py +++ b/newcodes/answers/q38.py @@ -5,7 +5,7 @@ def validate_email(email): if len(email) > 4: - if re.match("^[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+.[a-zA-Z]{2,6}$", email) != None: + if re.match("^[a-zA-Z0-9._%-]+@[a-zA-Z0-9._%-]+\.[a-zA-Z]{2,6}$", email) != None: return True else: return False From eb57d83371bfb42354223e1a65f6c80c1c4a3dd5 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 13:06:17 +0800 Subject: [PATCH 232/288] exact division --- newcodes/answers/q39.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 newcodes/answers/q39.py diff --git a/newcodes/answers/q39.py b/newcodes/answers/q39.py new file mode 100644 index 0000000..2fdc425 --- /dev/null +++ b/newcodes/answers/q39.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +# coding=utf-8 + +def exact_division(interger): + if interger % 17 == 0: + return interger + +if __name__ == "__main__": + nlst = range(100, 1000) + inter_lst = [] + for i in nlst: + a = exact_division(i) + if a: + inter_lst.append(a) + print(inter_lst) From 1bf90068e16ef52ec285a1aa3dc1851159f3758f Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 13:20:07 +0800 Subject: [PATCH 233/288] add x --- newcodes/answers/q40-2.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 newcodes/answers/q40-2.py diff --git a/newcodes/answers/q40-2.py b/newcodes/answers/q40-2.py new file mode 100644 index 0000000..9b5bdc4 --- /dev/null +++ b/newcodes/answers/q40-2.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 + +from functools import reduce + +def addx(x): + numbers = range((x+1)) + r = reduce(lambda x,y: x+y, numbers) + return r + +if __name__ == "__main__": + x = int(input("please input a interger:")) + print("0+1+2...+{0}".format(x)) + print(addx(x)) From 86199b2163cddacdd5405b98edd4dd8ff2d5e563 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 13:38:08 +0800 Subject: [PATCH 234/288] sqrt interger --- newcodes/answers/q41.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 newcodes/answers/q41.py diff --git a/newcodes/answers/q41.py b/newcodes/answers/q41.py new file mode 100644 index 0000000..12b6af2 --- /dev/null +++ b/newcodes/answers/q41.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +# coding=utf-8 + +import math + +def trail_sqrt(n): + d = {} + i = 0 + while n >= 2: + n = math.sqrt(n) + i += 1 + d[i] = n + return d + +if __name__ == "__main__": + n = int(input("please input a interger, and it should more than 2.")) + if n < 2: + print("sorry, your interger should more than 2.") + + else: + d = trail_sqrt(n) + for k,v in d.items(): + print("{0}--->{1}".format(k,v)) From 8dec5122304fc9d825b6d41cca13abdda1a2a47d Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 15:25:04 +0800 Subject: [PATCH 235/288] find numbers --- newcodes/answers/q42.py | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 newcodes/answers/q42.py diff --git a/newcodes/answers/q42.py b/newcodes/answers/q42.py new file mode 100644 index 0000000..d1840fa --- /dev/null +++ b/newcodes/answers/q42.py @@ -0,0 +1,19 @@ +#!/usr/bin/env python +# coding=utf-8 + +def find_int(n): + x = n ** 2 + if x>99 and x<1000: + last_two = x % 100 + if last_two == n: + return True + else: + return False + +if __name__ == "__main__": + numbers = [] + for i in range(10, 100): + if find_int(i): + numbers.append(i) + print(numbers) + From f7c44a494cdef5ea090a196f7ada1a20f30f2acc Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 15:48:02 +0800 Subject: [PATCH 236/288] guess number --- newcodes/answers/q43.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 newcodes/answers/q43.py diff --git a/newcodes/answers/q43.py b/newcodes/answers/q43.py new file mode 100644 index 0000000..a8f52df --- /dev/null +++ b/newcodes/answers/q43.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python +# coding=utf-8 + +#!/usr/bin/env python +#coding:utf-8 + +import random + +number = random.randint(1,100) +guess = 0 + +while True: + num_input = input("please input one integer that is in 1 to 100:") + guess += 1 + + if not num_input.isdigit(): + print("Please input interger.") + elif int(num_input) < 0 or int(num_input) >= 100: + print("The number should be in 1 to 100.") + else: + if number == int(num_input): + print("OK, you are good.It is only {0}, then you successed.".format(guess)) + break + elif number > int(num_input): + print("your number is smaller.") + elif number < int(num_input): + print("your number is bigger.") From 65ae9504d8e4cbfce21efcf40a4e20fca79e4785 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 15:51:46 +0800 Subject: [PATCH 237/288] guess number --- newcodes/answers/q43.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/newcodes/answers/q43.py b/newcodes/answers/q43.py index a8f52df..b4ee48b 100644 --- a/newcodes/answers/q43.py +++ b/newcodes/answers/q43.py @@ -1,9 +1,6 @@ #!/usr/bin/env python # coding=utf-8 -#!/usr/bin/env python -#coding:utf-8 - import random number = random.randint(1,100) From 55ffc3de4f6b3facc9f927a8799a4de6f73b93a5 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 15:55:07 +0800 Subject: [PATCH 238/288] guess number --- newcodes/answers/q43.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/newcodes/answers/q43.py b/newcodes/answers/q43.py index b4ee48b..01085c3 100644 --- a/newcodes/answers/q43.py +++ b/newcodes/answers/q43.py @@ -16,7 +16,7 @@ print("The number should be in 1 to 100.") else: if number == int(num_input): - print("OK, you are good.It is only {0}, then you successed.".format(guess)) + print("OK, you are good. It is only {0}, then you successed the number is {1}.".format(guess, num_input)) break elif number > int(num_input): print("your number is smaller.") From 4bc3d42b43b13106bd85d98abef337d28ae228c6 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 16:26:45 +0800 Subject: [PATCH 239/288] check prime --- newcodes/answers/q44.py | 54 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 newcodes/answers/q44.py diff --git a/newcodes/answers/q44.py b/newcodes/answers/q44.py new file mode 100644 index 0000000..bf3c0a2 --- /dev/null +++ b/newcodes/answers/q44.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python +# coding=utf-8 + +import math + +def isPrime1(n): + if n <= 1: + return False + for i in range(2, int(math.sqrt(n)) + 1): + if n % i == 0: + return False + return True + +def isPrime2(n): + if n <= 1: + return False + i = 2 + while i*i <= n: + if n % i == 0: + return False + i += 1 + return True + +from itertools import count + +def isPrime3(n): + if n <= 1: + return False + for i in count(2): + if i * i > n: + return True + if n % i == 0: + return False + +def isPrime4(n): + if n <= 1: + return False + if n == 2: + return True + if n % 2 == 0: + return False + i = 3 + while i * i <= n: + if n % i == 0: + return False + i += 2 + return True + +if __name__ == "__main__": + p = [] + for i in range(1, 10): + if isPrime4(i): + p.append(i) + print(p) From a47b8bf434aa3788d2c08df6c3d3d79b575e1223 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 16:46:28 +0800 Subject: [PATCH 240/288] score of course --- newcodes/answers/q45.py | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 newcodes/answers/q45.py diff --git a/newcodes/answers/q45.py b/newcodes/answers/q45.py new file mode 100644 index 0000000..78941a0 --- /dev/null +++ b/newcodes/answers/q45.py @@ -0,0 +1,34 @@ +#! /usr/bin/env python +#coding:utf-8 + +from __future__ import division +import random + + +def score(score_list, course_list, student_num): + course_num = len(course_list) + every_score = [[score_list[j][i] for j in range(course_num)] for i in range(student_num)] + every_total = [sum(every_score[i]) for i in range(student_num)] + ave_course = [sum(score_list[i])/len(score_list[i]) for i in range(len(score_list))] + return (every_score, every_total, ave_course) + +if __name__=="__main__": + + course_list = ["C++","Java","Servlet","JSP","EJB"] + student_num = 20 + + score_list = [[random.randint(0,100) for i in range(student_num)] for j in range(len(course_list))] + for i in range(len(course_list)): + print("score of every one in {0}:".format(course_list[i])) + print(score_list[i]) + + every_score, every_total, ave_one_course = score(score_list, course_list, student_num) + print("\n") + print("NEXT IS EVERY ONE SCORE IN EVERY COURSE:") + for name in course_list: + print(name, end=",") + print("\t") + print(every_score) + print("\n") + print("every one all score:\t{0}".format(every_total)) + print("every course of average score:\t{0}".format(ave_one_course)) From 171ff8d8596d702186568f5f523ddd59272f5124 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 16:53:10 +0800 Subject: [PATCH 241/288] move ahead --- newcodes/answers/q46.py | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 newcodes/answers/q46.py diff --git a/newcodes/answers/q46.py b/newcodes/answers/q46.py new file mode 100644 index 0000000..1f43f70 --- /dev/null +++ b/newcodes/answers/q46.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +#coding:utf-8 + +def ahead_one(): + a = [i for i in range(1,11)] + b = a.pop(0) + a.append(b) + return a + +if __name__ =="__main__": + print(ahead_one()) From 6624487ddc3acd7aac58b323fd1cd21756d75ea9 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 17:06:01 +0800 Subject: [PATCH 242/288] split list --- newcodes/answers/q47.py | 10 ++++++++++ 1 file changed, 10 insertions(+) create mode 100644 newcodes/answers/q47.py diff --git a/newcodes/answers/q47.py b/newcodes/answers/q47.py new file mode 100644 index 0000000..f6a725e --- /dev/null +++ b/newcodes/answers/q47.py @@ -0,0 +1,10 @@ +#!/usr/bin/env python +#coding:utf-8 + +def odd(x):return x%2==1 +def even(x):return x%2==0 + +if __name__=="__main__": + test_lst = [7,9,12,5,4,9,8,3,12,89] + print(list(filter(even,test_lst))) + print(list(filter(odd,test_lst))) From 199028508273cff8ad4665e12cc9b475ece710af Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 17:36:12 +0800 Subject: [PATCH 243/288] sorted by list --- newcodes/answers/q48.py | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 newcodes/answers/q48.py diff --git a/newcodes/answers/q48.py b/newcodes/answers/q48.py new file mode 100644 index 0000000..c1fa075 --- /dev/null +++ b/newcodes/answers/q48.py @@ -0,0 +1,25 @@ +#! /usr/bin/env python +#coding:utf-8 + +def char_to_number(by_list, char): #根据排序依据字母顺序,给另外一个字母编号 + try: + return by_list.index(char) + except: + return 1000 + +def sort_by_list(by_list, input_list): + result={} + for word in input_list: + number_list = [char_to_number(by_list,word[i]) for i in range(len(word))] + result[word] = number_list + return [v[0] for v in sorted(result.items(), key=lambda x:x[1])] + +if __name__=="__main__": + word = ["bed","dog","dear","eye"] + by_string = ['d','g','e','c','f','b','o','a'] + print("the word list is:") + print(word) + print("\nwill sorted by:") + print(by_string) + print("\nthe result is:") + print(sort_by_list(by_string,word)) From 0edf31043d55319d1d200f0faeead21d04ece712 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 20 Sep 2016 17:45:38 +0800 Subject: [PATCH 244/288] divided int --- newcodes/answers/q49.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 newcodes/answers/q49.py diff --git a/newcodes/answers/q49.py b/newcodes/answers/q49.py new file mode 100644 index 0000000..fc0c8f4 --- /dev/null +++ b/newcodes/answers/q49.py @@ -0,0 +1,20 @@ +#! /usr/bin/env python +# encoding:utf-8 + +def divided(m,r,out): + if(r==0): + return True + tm=r + while tm>0: + if(tm<=m): + out.append(tm) + if(divided(tm, r-tm, out)): + print(out) + out.pop() + tm = tm-1 + return False + + +n=6 +output=[] +divided(n-1, n, output) From 4e628291e6093341e50f16c3519d37b4fe61fb4e Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 21 Sep 2016 22:39:56 +0800 Subject: [PATCH 245/288] check triangle --- newcodes/answers/q50.py | 54 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 newcodes/answers/q50.py diff --git a/newcodes/answers/q50.py b/newcodes/answers/q50.py new file mode 100644 index 0000000..79d69a4 --- /dev/null +++ b/newcodes/answers/q50.py @@ -0,0 +1,54 @@ +#!/usr/bin/env python +# coding=utf-8 +import math + +def sorted_sides(sides_lst): + sides = sorted(sides_lst) + x, y, z = sides[0], sides[1], sides[2] + return float(x), float(y), float(z) + +def is_triangle(sides_lst): + x, y, z = sorted_sides(sides_lst) + if x >=0: + if (x + y > z): + return True + else: + return False + else: + return False + +def side_triangle(sides_lst): + x, y, z = sorted_sides(sides_lst) + if x == y or y == z: + return "isosceles" + elif x == z: + return "equilateral" + else: + return "scalene" + +def angle_triangle(sides_lst): + x, y, z = sorted_sides(sides_lst) + difference = z**2 - (x**2 + y**2) + if difference == 0: + return "right" + elif difference > 0: + return "obtuse" + else: + return "acute" + +def area_triangle(sides_lst): + x, y, z = sorted_sides(sides_lst) + s = (x + y + z)/2 + a = math.sqrt(s*(s-x)*(s-y)*(s-z)) + return round(a, 3) + +if __name__ == "__main__": + triangle_sides = input("please input three sides of triangle, and split them by space:") + sides_lst = triangle_sides.split() + if is_triangle(sides_lst): + result_side = side_triangle(sides_lst) + result_angle = angle_triangle(sides_lst) + area = area_triangle(sides_lst) + print("The triangle is {0} and {1}. Its area is {2}".format(result_side, result_angle, area)) + else: + print("Sorry, the sides cannot be the side of triangle.") From 0aafaecc6c6fd9e146eb64b3558a1c3af8ee21f0 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 09:08:58 +0800 Subject: [PATCH 246/288] binary equation --- newcodes/answers/q53.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 newcodes/answers/q53.py diff --git a/newcodes/answers/q53.py b/newcodes/answers/q53.py new file mode 100644 index 0000000..3a4e0c8 --- /dev/null +++ b/newcodes/answers/q53.py @@ -0,0 +1,31 @@ +#!/usr/bin/env python +# coding=utf-8 + +import math +import cmath + +def solve_be(a, b, c): + delta = b**2 - 4*a*c + if delta == 0: + #x = fractions.Fraction(-b, 2*a) + x = -b / (2*a) + return x + elif delta > 0: + sqrt_delata = math.sqrt(delta) + else: + sqrt_delata = cmath.sqrt(delta) + #x1 = fractions.Fraction((-b + sqrt_delata), 2*a) + #x2 = fractions.Fraction((-b - sqrt_delata), 2*a) + x1 = (-b + sqrt_delata) / (2*a) + x2 = (-b - sqrt_delata) / (2*a) + return (x1, x2) + +if __name__ == "__main__": + print("The binary linear equation is x^2 + 2^x + 3 = 0") + r = solve_be(1, 2, 3) + if len(r) == 1: + print("The equation only has one root. It is:") + print(r) + else: + print("The equation have two root. They are:") + print(r) From a98784de704ed5714334136b207e51dda34ee6e7 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 11:08:14 +0800 Subject: [PATCH 247/288] flod paper --- newcodes/answers/q56.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 newcodes/answers/q56.py diff --git a/newcodes/answers/q56.py b/newcodes/answers/q56.py new file mode 100644 index 0000000..c3b06d3 --- /dev/null +++ b/newcodes/answers/q56.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +# coding=utf-8 + +def flod_paper(n, d): + h = d*2**n + return h + +if __name__ == "__main__": + d = 1/200 + n = 30 + h = flod_paper(n, d) + h_meter = h / 100 + print('After {0} floding, its high is {1}m.'.format(n, h_meter)) From 6f494041ef83bb3cc63cb07941729164c7ddeafc Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 11:28:07 +0800 Subject: [PATCH 248/288] palindrome --- newcodes/answers/q57.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 newcodes/answers/q57.py diff --git a/newcodes/answers/q57.py b/newcodes/answers/q57.py new file mode 100644 index 0000000..0449d04 --- /dev/null +++ b/newcodes/answers/q57.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +# coding=utf-8 + +def palindrome(word): + word_lst = [ i for i in word ] + word_lst.reverse() + new_word = "".join(word_lst) + if word == new_word: + return True + else: + return False + +if __name__ == "__main__": + while True: + word = input("input a word:('q'-exit)") + if word == "q": + break + else: + if palindrome(word): + print("{0} is a palindrome".format(word)) + else: + print("The word is not palindrome") + From 634f8938efc9c0007485873c6d89f4bd2a515275 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 17:24:55 +0800 Subject: [PATCH 249/288] para --- newcodes/answers/q58-2.py | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 newcodes/answers/q58-2.py diff --git a/newcodes/answers/q58-2.py b/newcodes/answers/q58-2.py new file mode 100644 index 0000000..0d5b642 --- /dev/null +++ b/newcodes/answers/q58-2.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python +# coding=utf-8 + +def parabola(a, b, c): + def para(x): + return a*x**2 + b*x + c + return para + +p = parabola(2, 3, 4) +x = 3 +print(p(3)) From 91c22562707b5cd5545cff133eea0dce9f22b914 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 17:52:33 +0800 Subject: [PATCH 250/288] split int --- newcodes/answers/q59.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 newcodes/answers/q59.py diff --git a/newcodes/answers/q59.py b/newcodes/answers/q59.py new file mode 100644 index 0000000..1ac3a19 --- /dev/null +++ b/newcodes/answers/q59.py @@ -0,0 +1,16 @@ +#!/usr/bin/env python +# coding=utf-8 + +def split_int(a): + for i in range(2, 100, 1): + if a % i == 0: + return i + return 0 + +if __name__ == '__main__': + a = int(input('input a number, please.')) + val = split_int(a) + while val > 1: + print(val) + a = a / val + val = split_int(a) From a855ae65c89944501ac3115eadd9e69adf27d41a Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 17:58:24 +0800 Subject: [PATCH 251/288] gcd lcm --- newcodes/answers/q60.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 newcodes/answers/q60.py diff --git a/newcodes/answers/q60.py b/newcodes/answers/q60.py new file mode 100644 index 0000000..bb3e806 --- /dev/null +++ b/newcodes/answers/q60.py @@ -0,0 +1,14 @@ +#!/usr/bin/env python +# coding=utf-8 + +def gcd(m, n): + return m if n == 0 else gcd(n, m % n) + +def lcm(m, n): + return m * n // gcd(m, n) + +if __name__ == "__main__": + m = int(input("input m:")) + n = int(input("input n:")) + print("GCD", gcd(m, n)) + print("LCM", lcm(m, n)) From 337c658f39d5d6e4a68081bb5b64e27fdd19d306 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 22 Sep 2016 22:51:34 +0800 Subject: [PATCH 252/288] kid class --- newcodes/answers/q61.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 newcodes/answers/q61.py diff --git a/newcodes/answers/q61.py b/newcodes/answers/q61.py new file mode 100644 index 0000000..1ca3f4b --- /dev/null +++ b/newcodes/answers/q61.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python +# coding=utf-8 + +class SchoolKid: + def __init__(self, name, years): + self.name = name + self.years = years + + def get_name(self): + return self.name + + def get_years(self): + return self.years + + def change_name(self, new_name): + self.name = new_name + return self.name + + def change_years(self, new_years): + self.years = new_years + return self.years + + +class ExaggeratingKid(SchoolKid): + def get_years(self): + return self.years + 2 + + +if __name__ == "__main__": + tom = SchoolKid("Tom", 12) + print(tom.get_name()) + print(tom.get_years()) + tom.change_years(28) + print(tom.get_years()) + + john = ExaggeratingKid("John", 13) + print(john.get_name()) + print(john.get_years()) From 4de7ee23df5417a235ec0f5955d32723e5dba25b Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 19:04:47 +0800 Subject: [PATCH 253/288] pay calculater --- newcodes/answers/q62.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 newcodes/answers/q62.py diff --git a/newcodes/answers/q62.py b/newcodes/answers/q62.py new file mode 100644 index 0000000..6cdabca --- /dev/null +++ b/newcodes/answers/q62.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +# coding=utf-8 + +class PayCalculator: + def __init__(self, pay_rate): + self.pay_rate = pay_rate + + def compute_pay(self, hours): + total_pay = self.pay_rate * hours + return round(total_pay, 2) + +if __name__ == "__main__": + worker = PayCalculator(25.7) + total = worker.compute_pay(8) + print(total) From 4adfa5c0b510a5d74ee1905502d8f26b862a0019 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 20:23:40 +0800 Subject: [PATCH 254/288] diff date --- newcodes/answers/q63.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 newcodes/answers/q63.py diff --git a/newcodes/answers/q63.py b/newcodes/answers/q63.py new file mode 100644 index 0000000..5b1aa9e --- /dev/null +++ b/newcodes/answers/q63.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# coding=utf-8 + +from datetime import date + +class DateDiff: + def __init__(self, start, end): + self.start = start + self.end = end + + def diff_days(self): + return (self.end - self.start).days + + def diff_months(self): + delta_years = self.end.year - self.start.year + delta_months = delta_years * 12 + (self.end.month - self.start.month) + return delta_months + + def diff_years(self): + delta_years = self.end.year - self.start.year + return delta_years + +if __name__ == "__main__": + start = date(2015,1,1) + end = date(2016,9,3) + print(start, "-->", end) + di = DateDiff(start, end) + print("the days is:{0}".format(di.diff_days())) + print("the months is:{0}".format(di.diff_months())) + print("the years is:{0}".format(di.diff_years())) From 360ed81ed9c0e396af130551c1cf76a6ae06efdf Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 21:13:22 +0800 Subject: [PATCH 255/288] goods and sales --- newcodes/answers/q64.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 newcodes/answers/q64.py diff --git a/newcodes/answers/q64.py b/newcodes/answers/q64.py new file mode 100644 index 0000000..9a2a872 --- /dev/null +++ b/newcodes/answers/q64.py @@ -0,0 +1,27 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Goods: + def __init__(self, price,whole_sale, discount): + self.price = price + self.whole_sale = whole_sale + self.discount = discount + + def register_sale(self, count): + self.count = count + if self.count > self.whole_sale: + self.price = self.price * self.discount + + def display_sale(self): + print("The count of goods is:{0}".format(self.count)) + sales = self.price * self.count + print("The total sales is:{0}".format(round(sales, 2))) + +if __name__ == "__main__": + price = 106.78 + whole_sale = 60 + discount = 0.7 + goods = Goods(price, whole_sale, discount) + goods.register_sale(100) + goods.display_sale() + From b59b2672a26083de6bf88c1242563c435080fb5d Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 21:35:57 +0800 Subject: [PATCH 256/288] buy flowers --- newcodes/answers/q65.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 newcodes/answers/q65.py diff --git a/newcodes/answers/q65.py b/newcodes/answers/q65.py new file mode 100644 index 0000000..fb74036 --- /dev/null +++ b/newcodes/answers/q65.py @@ -0,0 +1,32 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Flower: + def __init__(self, price_table): + self.price_table = price_table + + def buy_flower(self, count, name): + if name in self.price_table: + self.count = count + self.name = name + self.sales = self.price_table[self.name] * self.count + else: + self.sales = 0 + + def total(self): + return self.sales + +if __name__ == "__main__": + price = {"petunia":50, "pansy":15, "rose":75, "violet":20, "carnation":80} + print(price) + f = Flower(price) + while True: + my = input("input the name of flower:('q'-exit)") + if my == "q": + print("Bye") + break + else: + count = int(input("input the number that you want to buy_flower:")) + f.buy_flower(count, my) + print("You should pay:{0}".format(round(f.total(), 2))) + From 5972a02c54ee7e9f1dc7ff4b9bb349b80dca55a9 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 22:01:31 +0800 Subject: [PATCH 257/288] round float --- newcodes/answers/q66.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 newcodes/answers/q66.py diff --git a/newcodes/answers/q66.py b/newcodes/answers/q66.py new file mode 100644 index 0000000..eee338a --- /dev/null +++ b/newcodes/answers/q66.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +# coding=utf-8 + +class RoundFloat(object): #Python 3: class RoundFloat: + def __init__(self, val): + assert isinstance(val, float), "value must be a float." + self.value = round(val, 2) + + def __str__(self): + return "{:.2f}".format(self.value) + + __repr__ = __str__ + +if __name__ == "__main__": + while True: + n = input("Input a float:('q'-exit)") + if n == 'q': + print('See you next time.') + break + else: + n = float(n) + r = RoundFloat(n) + print(r) From 7a57e7b3fe9cc7a58ebde408f36a2ac3248d3545 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 22:23:59 +0800 Subject: [PATCH 258/288] iteration inter --- newcodes/answers/q67.py | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 newcodes/answers/q67.py diff --git a/newcodes/answers/q67.py b/newcodes/answers/q67.py new file mode 100644 index 0000000..98a4553 --- /dev/null +++ b/newcodes/answers/q67.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python +# coding=utf-8 + +class ReverseRange: + def __init__(self, n): + self.n = n + + def __next__(self): + if self.n == 0: + raise StopIteration + self.n -= 1 + return self.n + + def __iter__(self): + return self + +for i in ReverseRange(9): + print(i) From 815e8af0b96d51fe8759d15d93237a259bef1e85 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 24 Sep 2016 22:59:30 +0800 Subject: [PATCH 259/288] two point distance --- newcodes/answers/q68.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 newcodes/answers/q68.py diff --git a/newcodes/answers/q68.py b/newcodes/answers/q68.py new file mode 100644 index 0000000..c5bc3e6 --- /dev/null +++ b/newcodes/answers/q68.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# coding=utf-8 + +import math + +class Point: + def __init__(self, x=0.0, y=0.0): + self.x = x + self.y = y + + def __str__(self): + return "({:.2f}, {:.2f})".format(self.x, self.y) + + def distance(self, p): + delta_x = self.x - p.x + delta_y = self.y - p.y + return math.sqrt(delta_x ** 2 + delta_y ** 2) + + def sum(self, p): + x_new = self.x + p.x + y_new = self.y + p.y + return Point(x_new, y_new) + +if __name__ == "__main__": + p1 = Point(2.0, 4.0) + p2 = Point(1.0, 5.0) + d = p1.distance(p2) + print("The distance is {0}".format(d)) + s = p1.sum(p2) + print("The new point is:{0}".format(s)) From ff77e373c841f4370754d0fc0c86190fec4b592e Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 25 Sep 2016 20:35:29 +0800 Subject: [PATCH 260/288] temperature convert --- newcodes/answers/q69.py | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 newcodes/answers/q69.py diff --git a/newcodes/answers/q69.py b/newcodes/answers/q69.py new file mode 100644 index 0000000..83bad2e --- /dev/null +++ b/newcodes/answers/q69.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Temperature: + coefficients = {'c':(1.0, 0.0, -273.15), 'f':(1.8, -273.15, 32.0)} + + def __init__(self, **kwargs): + try: + name, value = kwargs.popitem() + except KeyError: + name, value = 'k', 0 + + if kwargs or name not in "kcf": + kwargs[name] = value + raise TypeError( 'invalid arguments {0}'.format(kwargs)) + setattr(self, name, float(value)) + + def __getattr__(self, name): + try: + eq = self.coefficients[name] + except KeyError: + raise AttributeError(name) + return (self.k + eq[1]) * eq[0] + eq[2] + + def __setattr__(self, name, value): + if name in self.coefficients: + eq = self.coefficients[name] + self.k = (value - eq[2] ) / eq[0] - eq[1] + elif name == 'k': + object.__setattr__(self, name, value) + else: + raise AttributeError(name) + + def __str__(self): + return "{0}K".format(self.k) + +if __name__ == "__main__": + t = Temperature(f = 70) + print(t.c) + t.c = 23 + print(t.f) + print(t.k) From bbdd308b3f01d9241b0865141234e66a28b69a04 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 25 Sep 2016 21:04:31 +0800 Subject: [PATCH 261/288] filter string --- newcodes/answers/q70.py | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 newcodes/answers/q70.py diff --git a/newcodes/answers/q70.py b/newcodes/answers/q70.py new file mode 100644 index 0000000..efea81d --- /dev/null +++ b/newcodes/answers/q70.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +# coding=utf-8 + +class Keeper: + def __init__(self, keep): + self.keep = keep + def __getitem__(self, s): + if s not in self.keep: + return None + return s + def __call__(self, s): + return s.translate(self) + +if __name__ == "__main__": + mf = Keeper + cang = mf('canglaoshi') + print(cang("what is your name? my name is laoshicang")) From 0dd713c0c0c571d67d347bf8bb3c8161243bbaf2 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 25 Sep 2016 21:49:05 +0800 Subject: [PATCH 262/288] replace word --- newcodes/answers/q70.py | 33 +++++++++++++++++++++------------ 1 file changed, 21 insertions(+), 12 deletions(-) diff --git a/newcodes/answers/q70.py b/newcodes/answers/q70.py index efea81d..325717b 100644 --- a/newcodes/answers/q70.py +++ b/newcodes/answers/q70.py @@ -1,17 +1,26 @@ #!/usr/bin/env python # coding=utf-8 -class Keeper: - def __init__(self, keep): - self.keep = keep - def __getitem__(self, s): - if s not in self.keep: - return None - return s - def __call__(self, s): - return s.translate(self) +import re + +class make_xlat: + def __init__(self, *args, **kwargs): + self.adict = dict(*args, **kwargs) + self.rx = self.make_rx() + + def make_rx(self): + return re.compile('|'.join(map(re.escape, self.adict))) + + def one_xlat(self, match): + return self.adict[match.group(0)] + + def __call__(self, text): + return self.rx.sub(self.one_xlat, text) if __name__ == "__main__": - mf = Keeper - cang = mf('canglaoshi') - print(cang("what is your name? my name is laoshicang")) + text = "PHP is the best language" + adict = {"PHP": "Canglaoshi", "language":"teacher",} + t = make_xlat(adict) + print(text) + print("--->") + print(t(text)) From cdb3a6e9d669a06410f93c687bc40b5c7c0b3b57 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sun, 25 Sep 2016 22:24:21 +0800 Subject: [PATCH 263/288] statistics word --- newcodes/answers/q71.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 newcodes/answers/q71.py diff --git a/newcodes/answers/q71.py b/newcodes/answers/q71.py new file mode 100644 index 0000000..8c52f86 --- /dev/null +++ b/newcodes/answers/q71.py @@ -0,0 +1,23 @@ +#!/usr/bin/env python +# coding=utf-8 + +class StatWrod(dict): + def add(self, item, increment=1): + self[item] = increment + self.get(item, 0) + def counts(self, reverse=False): + aux = [(self[k], k) for k in self] + aux.sort() + if reverse: + aux.reverse() + return [(v, k) for v,k in aux] + +if __name__ == "__main__": + sentence = "Don't stay in bed, unless you can make money in bed." + words = sentence.split() + c = StatWrod() + for word in words: + c.add(word) + print("Ascending count:") + print(c.counts()) + print("Descending count:") + print(c.counts(reverse=True)) From 7cbf68fa3d04b80eeb155c739bcb9b182b962619 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 26 Sep 2016 00:10:22 +0800 Subject: [PATCH 264/288] new dict --- newcodes/answers/q72.py | 57 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 newcodes/answers/q72.py diff --git a/newcodes/answers/q72.py b/newcodes/answers/q72.py new file mode 100644 index 0000000..b80950b --- /dev/null +++ b/newcodes/answers/q72.py @@ -0,0 +1,57 @@ +#!/usr/bin/env python +# coding=utf-8 + +from bisect import bisect_left, insort_left + +class Ratings(dict): + def __init__(self, *args, **kwargs): + dict.__init__(self, *args, **kwargs) + self._rating = [(v, k) for k, v in dict.items(self)] + self._rating.sort() + print(self._rating) + def copy(self): + return Ratings(self) + + def __setitem__(self, k, v): + if k in self: + del self._rating[self.rating(k)] + dict.__setitem__(self, k, v) + insort_left(self._rating, (v, k)) + + def __delitem__(self, k): + del self._rating[self.rating(k)] + dict.__delitem__(self, k) + + __len__ = dict.__len__ + __contains__ = dict.__contains__ + + def __iter__(self): + for v,k in self._rating: + yield k + + iterkeys = __iter__ + + def keys(self): + return list(self) + + def rating(self, key): + item = self[key], key + i = bisect_left(self._rating, item) + print(i) + if item == self._rating[i]: + return i + raise LookupError("item not found in rating") + + def get_value_by_rating(self, rating): + return self._rating[rating][0] + + def get_key_by_rating(self, rating): + return self._rating[rating][1] + +if __name__ == "__main__": + d = {"zhangsan":78, "lisi":98, "wangwu":76, "zhaoliu":82} + print(d) + r = Ratings(d) + print(r.keys()) + print(r.get_value_by_rating(0)) + print(r.rating("zhangsan")) From 1a5729c144f9b47393389036196347ae9afe9b4f Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 26 Sep 2016 11:26:48 +0800 Subject: [PATCH 265/288] measurement delta --- newcodes/answers/q73.py | 45 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 newcodes/answers/q73.py diff --git a/newcodes/answers/q73.py b/newcodes/answers/q73.py new file mode 100644 index 0000000..89872a6 --- /dev/null +++ b/newcodes/answers/q73.py @@ -0,0 +1,45 @@ +#!/usr/bin/env python +# coding=utf-8 + +import math + +class Measurement: + def __init__(self, val, perc): + self.val = val + self.perc = perc + self.abs = self.val * self.perc / 100 + + def __repr__(self): + return "Measurement({0}, {1})".format(self.val, self.perc) + def __str__(self): + return "{0}±{1}%".format(self.val, self.perc) + + def _addition_result(self, result, other_abs): + new_perc = 100 * (math.hypot(self.abs, other_abs) / result) + return Measurement(result, new_perc) + def __add__(self, other): + result = self.val + other.val + return self._addition_result(result, other.abs) + def __sub__(self, other): + result = self.val - other.val + return self._addition_result(result, other.abs) + + def _multiplication_result(self, result, other_perc): + new_perc = math.hypot(self.perc, other_perc) + return Measurement(result, new_perc) + def __mul__(self, other): + result = self.val * other.val + return self._multiplication_result(result, other.perc) + def __truediv__(self, other): + result = self.val / other.val + return self._multiplication_result(result, other.perc) + +if __name__ == "__main__": + m1 = Measurement(110, 0.2) + m2 = Measurement(134, 0.1) + print("m1:{0}".format(m1)) + print("m2:{0}".format(m2)) + print("m1+m2={0}".format(m1+m2)) + print("m1-m2={0}".format(m1-m2)) + print("m1*m2={0}".format(m1*m2)) + print("m1/m2={0}".format(m1/m2)) From 657c16d3a66963421016c245377fb0292fcac778 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 26 Sep 2016 18:38:11 +0800 Subject: [PATCH 266/288] sprider --- newcodes/answers/q74.py | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 newcodes/answers/q74.py diff --git a/newcodes/answers/q74.py b/newcodes/answers/q74.py new file mode 100644 index 0000000..b2c3a98 --- /dev/null +++ b/newcodes/answers/q74.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python +# coding=utf-8 + +import requests +from bs4 import BeautifulSoup +import time + +def get_data(url): + req = requests.get(url) + + soup = BeautifulSoup(req.text, 'lxml') + try: + table = soup.select("#ContentPlaceHolder1_lbldata table table")[0].find_all("td") + province = table[0].find("b").string + province = str(province) + crop_name = str(table[6].string) + crop_number = str(table[7].string) + return province, crop_name, crop_number + except: + return False + +if __name__ == "__main__": + for i in range(11, 66): + url = "http://202.127.42.157/moazzys/nongqing_result.aspx?year=2015&prov={}%20%20%20&item=01&type=1&radio=1&order1=year_code&order2=prov_code&order3=item_code".format(i) + result = get_data(url) + if result: + print(result) + else: + print("hahha") + time.sleep(1) From e4eb2498a3467f5dd835edd77313f932e0d882bc Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 27 Sep 2016 10:21:10 +0800 Subject: [PATCH 267/288] standar model --- newcodes/answers/q75.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 newcodes/answers/q75.py diff --git a/newcodes/answers/q75.py b/newcodes/answers/q75.py new file mode 100644 index 0000000..0f99c74 --- /dev/null +++ b/newcodes/answers/q75.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python +# -*- coding: UTF-8 -*- + +class Particle: + def __init__(self, name="", position=(0.0, 0.0, 0.0), velocity=(0.0, 0.0, 0.0), spin=0.0): + self.position = position + self.velocity = velocity + self.name = name + self.spin = spin + def __str__(self): + pos = "({0:.2f}:{1:.2f}:{2:.2f})".format(self.position[0], self.position[1], self.position[2]) + vel = "({0:.2f}:{1:.2f}:{2:.2f})".format(self.velocity[0], self.velocity[1], self.velocity[2]) + the_str = "{0}\n at {1}\n with velocity {2}\n and spin {3}\n".format(self.name, pos, vel, self.spin) + return the_str + +class MassParticle(Particle): + def __init__(self, name="", position=(0.0, 0.0, 0.0), velocity=(0.0, 0.0, 0.0), spin=0.0, mass=0.0): + super(MassParticle, self).__init__(name, position, velocity, spin) + self.mass = mass + def __str__(self): + temp_str = super(MassParticle, self).__str__() + temp_str = temp_str + " and mass {0}\n".format(self.mass) + return temp_str + +class ChargeParticle(MassParticle): + def __init__(self, name="", position=(0.0, 0.0, 0.0), velocity=(0.0, 0.0, 0.0), spin=0.0, mass=0.0, charge=0.0): + super(ChargeParticle, self).__init__(name, position, velocity, spin, mass) + self.charge = charge + def __str__(self): + temp_str = super(MassParticle, self).__str__() + temp_str = temp_str + " and charge {0}".format(self.charge) + return temp_str + +if __name__ == "__main__": + photon = Particle(name="photon", spin=1.0) + tau = ChargeParticle(name="tau", spin=0.5, charge=-1.0, mass=1.777) + print(photon) + print(tau) From f404cfb225974a4e841aeeb02bca74eb6aac8ea6 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 27 Sep 2016 14:21:55 +0800 Subject: [PATCH 268/288] use api --- newcodes/answers/q76.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 newcodes/answers/q76.py diff --git a/newcodes/answers/q76.py b/newcodes/answers/q76.py new file mode 100644 index 0000000..987e70e --- /dev/null +++ b/newcodes/answers/q76.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python +# coding=utf-8 + +import urllib.request, json + + +def weather(city): + url = "http://apis.baidu.com/heweather/weather/free?city={}".format(city) + + req = urllib.request.Request(url) + req.add_header("apikey", "3befccfb4dde4ef385a62a92e958a204") + + resp = urllib.request.urlopen(req) + content = resp.read() + if content: + return content + +if __name__ == "__main__": + print("Search the weather, Please input the city name.") + while True: + city_name = input("input your city:") + r = weather(city_name) + r_str = r.decode(encoding='utf-8', errors='strict') + r_dict = json.loads(r_str) + weather_values = r_dict["HeWeather data service 3.0"][0] + basic_info = weather_values["basic"] + city_name = basic_info['city'] + daily_forecast = weather_values['daily_forecast'] + #aqi = weather_values['aqi'] + today_forecast = daily_forecast[0] + tomorrow_forecast = daily_forecast[1] + today_date = today_forecast['date'] + tomorrow_date = tomorrow_forecast['date'] + today_pop = today_forecast['pop'] + tomorrow_pop = tomorrow_forecast['pop'] + print("{0}{1}:降水概率{2}%".format(today_date, city_name, today_pop)) + print("{0}{1}:降水概率{2}%".format(tomorrow_date, city_name, tomorrow_pop)) + From af60b7c85313ca2f233602af1ddc1d0b6b354e0a Mon Sep 17 00:00:00 2001 From: ivysrono Date: Sun, 9 Oct 2016 15:52:23 +0800 Subject: [PATCH 269/288] Update 124.md --- 124.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/124.md b/124.md index 94b9256..9f8ed8e 100644 --- a/124.md +++ b/124.md @@ -66,7 +66,7 @@ for循环在Python中应用广泛,所以,要用更多的篇幅来介绍。 | method continues until the shortest iterable in the argument sequence | is exhausted and then it raises StopIteration. -Python 2中,参数是`seq1, seq2, ...`,意思是序列数据;在Python 3中,参数需要时可迭代对象。这点差别,通常是没有什么影响的,因为序列也是可迭代的。值得关注的是返回值,在Python 2中,返回值是一个列表对象,里面以元组为元素;而Python 3中返回的是一个zip对象。 +Python 2中,参数是`seq1, seq2, ...`,意思是序列数据;在Python 3中,参数需要是可迭代对象。这点差别,通常是没有什么影响的,因为序列也是可迭代的。值得关注的是返回值,在Python 2中,返回值是一个列表对象,里面以元组为元素;而Python 3中返回的是一个zip对象。 通过实验来理解上面的文档: From be10a51231c117a1e05968dd74d80a59f456d909 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 12 Oct 2016 09:57:01 +0800 Subject: [PATCH 270/288] del book --- 01.md | 135 ------ 02.md | 122 ------ 03.md | 113 ----- 101.md | 145 ------- 102.md | 292 ------------- 103.md | 258 ----------- 104.md | 188 --------- 105.md | 217 ---------- 106.md | 349 --------------- 107.md | 196 --------- 108.md | 275 ------------ 109.md | 322 -------------- 110.md | 338 --------------- 111.md | 284 ------------- 112.md | 265 ------------ 113.md | 284 ------------- 114.md | 250 ----------- 115.md | 119 ------ 116.md | 261 ------------ 117.md | 491 --------------------- 118.md | 330 --------------- 119.md | 135 ------ 120.md | 240 ----------- 121.md | 266 ------------ 122.md | 199 --------- 123.md | 344 --------------- 124.md | 370 ---------------- 125.md | 230 ---------- 126.md | 210 --------- 127.md | 314 -------------- 128.md | 206 --------- 129.md | 253 ----------- 130.md | 370 ---------------- 201.md | 363 ---------------- 202.md | 260 ------------ 203.md | 299 ------------- 204.md | 324 -------------- 205.md | 346 --------------- 206.md | 173 -------- 207.md | 233 ---------- 208.md | 451 -------------------- 209.md | 313 -------------- 210.md | 367 ---------------- 211.md | 286 ------------- 212.md | 270 ------------ 213.md | 236 ----------- 214.md | 277 ------------ 215.md | 180 -------- 216.md | 271 ------------ 217.md | 288 ------------- 218.md | 88 ---- 219.md | 315 -------------- 220.md | 225 ---------- 221.md | 232 ---------- 222.md | 322 -------------- 223.md | 238 ----------- 224.md | 421 ------------------ 225.md | 312 -------------- 226.md | 564 ------------------------- 227.md | 148 ------- 228.md | 186 -------- 229.md | 201 --------- 230.md | 219 ---------- 231.md | 334 --------------- 232.md | 336 --------------- 233.md | 143 ------- 234.md | 277 ------------ 235.md | 332 --------------- 236.md | 99 ----- 237.md | 286 ------------- 238.md | 272 ------------ 239.md | 255 ----------- 240.md | 282 ------------- 241.md | 179 -------- 242.md | 95 ----- 300.md | 15 - 301.md | 104 ----- 302.md | 205 --------- 303.md | 180 -------- 304.md | 191 --------- 305.md | 167 -------- 306.md | 262 ------------ 307.md | 286 ------------- 308.md | 134 ------ 309.md | 177 -------- 310.md | 85 ---- 311.md | 224 ---------- 312.md | 180 -------- 313.md | 60 --- newcodes/__pycache__/pm.cpython-34.pyc | Bin 0 -> 218 bytes newcodes/answers/q22.py | 4 +- newfiles/lite.db | Bin 0 -> 2048 bytes newfiles/p.dat | Bin 0 -> 18 bytes newfiles/p2.dat | Bin 0 -> 46 bytes newfiles/p3.dat | Bin 0 -> 46 bytes newfiles/sp.db | Bin 0 -> 12493 bytes newfiles/txtfile.txt | 3 +- 97 files changed, 3 insertions(+), 21943 deletions(-) delete mode 100644 01.md delete mode 100644 02.md delete mode 100644 03.md delete mode 100644 101.md delete mode 100644 102.md delete mode 100644 103.md delete mode 100644 104.md delete mode 100644 105.md delete mode 100644 106.md delete mode 100644 107.md delete mode 100644 108.md delete mode 100644 109.md delete mode 100644 110.md delete mode 100644 111.md delete mode 100644 112.md delete mode 100644 113.md delete mode 100644 114.md delete mode 100644 115.md delete mode 100644 116.md delete mode 100644 117.md delete mode 100644 118.md delete mode 100644 119.md delete mode 100644 120.md delete mode 100644 121.md delete mode 100644 122.md delete mode 100644 123.md delete mode 100644 124.md delete mode 100644 125.md delete mode 100644 126.md delete mode 100644 127.md delete mode 100644 128.md delete mode 100644 129.md delete mode 100644 130.md delete mode 100644 201.md delete mode 100644 202.md delete mode 100644 203.md delete mode 100644 204.md delete mode 100644 205.md delete mode 100644 206.md delete mode 100644 207.md delete mode 100644 208.md delete mode 100644 209.md delete mode 100644 210.md delete mode 100644 211.md delete mode 100644 212.md delete mode 100644 213.md delete mode 100644 214.md delete mode 100644 215.md delete mode 100644 216.md delete mode 100644 217.md delete mode 100644 218.md delete mode 100644 219.md delete mode 100644 220.md delete mode 100644 221.md delete mode 100644 222.md delete mode 100644 223.md delete mode 100644 224.md delete mode 100644 225.md delete mode 100644 226.md delete mode 100644 227.md delete mode 100644 228.md delete mode 100644 229.md delete mode 100644 230.md delete mode 100644 231.md delete mode 100644 232.md delete mode 100644 233.md delete mode 100644 234.md delete mode 100644 235.md delete mode 100644 236.md delete mode 100644 237.md delete mode 100644 238.md delete mode 100644 239.md delete mode 100644 240.md delete mode 100644 241.md delete mode 100644 242.md delete mode 100644 300.md delete mode 100644 301.md delete mode 100644 302.md delete mode 100644 303.md delete mode 100644 304.md delete mode 100644 305.md delete mode 100644 306.md delete mode 100644 307.md delete mode 100644 308.md delete mode 100644 309.md delete mode 100644 310.md delete mode 100644 311.md delete mode 100644 312.md delete mode 100644 313.md create mode 100644 newcodes/__pycache__/pm.cpython-34.pyc create mode 100644 newfiles/lite.db create mode 100644 newfiles/p.dat create mode 100644 newfiles/p2.dat create mode 100644 newfiles/p3.dat create mode 100644 newfiles/sp.db diff --git a/01.md b/01.md deleted file mode 100644 index c69baf2..0000000 --- a/01.md +++ /dev/null @@ -1,135 +0,0 @@ -> The fear of the LORD is the beginning of knowledge; fools despise wisdom and instruction.(PROVERBS 1:7) - ->敬畏耶和华是知识的开端,愚妄人藐视智慧和训诲。 - -#关于Python的故事 - -如同学习任何一种自然语言比如英语、或者其它编程语言比如汇编一样,总要说一说有关这种语言的事情,有的可能就是八卦,越八卦的越容易传播。当然,以下的所有说法中,难免充满了自恋,因为你看不到说Python的坏话。这也好理解,如果要挑缺点是比较容易的事情,但是找优点,不管是对人还是对其它事物,都是困难的。这也许是人的劣根之所在吧,喜欢挑别人的刺儿,从而彰显自己在那方面高于对方。特别是在我们这个麻将文化充斥的神奇地方,更多了。 - -废话少说点(已经不少了),进入有关Python的话题。 - -##Python的昨天今天和明天 - -这个题目有点大了,似乎回顾过去、考察现在、张望未来,都是那些掌握方向的大人物(司机吗?)做的。那就让我们每个人都成为大人物吧。因为如果不回顾一下历史,似乎无法满足学习者的好奇心;如果不考察一下现在,学习者不放心(担心学了之后没有什么用途);如果不张望一下未来,怎么能吸引(也算是一种忽悠吧)学习者或者未来的开发者呢? - -###Python的历史 - -Python的创始人为吉多·范罗苏姆(Guido van Rossum)。关于这个人开发这种语言的过程,很多资料里面都要记录下面的故事: - ->1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python作为程序的名字,是因为他是一个蒙提·派森的飞行马戏团的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并取得了非常好的效果,完美结合了C和其他一些语言。 - -这个故事我是从维基百科里面直接复制过来的,很多讲Python历史的资料里面,也都转载这段。但是,在我来看,这段故事有点忽悠人的味道。其实,上面这段中提到的,吉多为了打发时间而决定开发Python的说法,来自他自己的这样一段自述: - ->Over six years ago, in December 1989, I was looking for a "hobby" programming project that would keep me occupied during the week around Christmas. My office (a government-run research lab in Amsterdam) would be closed, but I had a home computer, and not much else on my hands. I decided to write an interpreter for the new scripting language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers. I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of Monty Python's Flying Circus).(原文地址:https://www.python.org/doc/essays/foreword/) - -首先,必须承认,这个哥们儿是一个牛人,非常牛的人。此处献上我的崇拜。 - -其次,读者千万别认为Python就是一个随随便便就做出来的东西,就是一个牛人一冲动搞出来的东西。人家也是站在巨人的肩膀上的。 - -第三,牛人在成功之后,往往把奋斗的过程描绘的比较简单,或者是谦虚?或者是让人听起来他更牛?反正,我们看最后结果的时候,很难感受过程中的酸甜苦辣。 - -不管怎么样,牛人在那时刻开始创立了Python,而且,他更牛的在于具有现代化的思维:开放。通过Python社区,吸引来自世界各地的开发者,参与Python的建设。在这里,请读者一定要联想到Linux和它的创始人芬兰人林纳斯·托瓦兹。两者都秉承“开放”思想,得到了来自世界各地开发者和应用者的欢呼和尊敬。也请大家再联想到另外一个在另外领域秉承开放思想的人——邓小平先生,他让一个封闭的破旧老水车有了更新。 - -###Python的现在 - -应该说Python现在表现不错。除了在Web开发方面有很多应用之外(当然PHP在这方面也是很不错),在数据分析、机器学习、大数据、云计算等这些时髦的领域,都有它的身影,并且影响力越来越大了。此外,还有自动化运维、自动化测试。 - -读者可以到这个网站看一看Python的应用案例:[https://www.python.org/about/success/](https://www.python.org/about/success/)。 - -不过,因为赵国大学教育的问题,致使很多青年才俊对Python了解甚少;更因为赵国的功利化优良传统,青年才俊们最大担心的是学了Python——这种学校老师很少甚至从没有提及的怪东西——没有什么用途,因为才俊们已经通过铺天盖地的广告了解到android、iOS开发,于是就认为“软件开发==Android or iOS”,其它都过时了——最希望才俊能够跳出四角天空,用自己的头脑思考、用自己的眼睛看世界,形成独立的判断,不要听信广告——也包括我这里的各种对Python的溢美之词。 - -###Python的未来 - -这个不需要描述,它的未来在所有使用者和学习者手中。 - -##优雅的Python - -Python号称是优雅的。但是这种说法仁者见仁智者见智。比如经常听到大师们说“数学美”,是不是谁都能体验到呢?不见得吧。 - -所以,是不是优雅,是不是简单,是不是明确,只有“谁用谁知道”,只有内行人才能理解。 - -不过,我特别喜欢下面这句话:**人生苦短,我用Python**。意思就是说,Python能够提高开发效率,让你短暂的人生能够除了工作之外,还有更多的时间休息、娱乐或者别的什么。 - -或许有的人不相信,那就比较一下吧。 - -##跟别的语言比较 - -“如果你遇到的问题无法用Python解决,这个问题也不能用别的语言解决。”——这是我向一些徘徊在Python之外的人常说的,是不是有点夸张了呢? - -最近看到了一篇文章,[《如果编程语言是女人》](http://www.vaikan.com/if-programming-languages-are-woman/),我转载如下(考虑到篇幅所限,所了适当删改,要阅读非删减版,请通过连接查看原文): - -![](./0images/01.jpg) - ->PHP是你的豆蔻年华的心上人,她是情窦初开的你今年夏天傻乎乎的追求的目标。玩一玩可以,但千万不要投入过深,因为这个女孩有严重的问题。 - ->Ruby是脚本家族中一个非常漂亮的孩子。第一眼看她,你的心魄就会被她的美丽摄走。她还很有有趣。起初她看起来有点慢,不怎么稳定,但近些年来她已经成熟了很多。 - ->Python 是Ruby的一个更懂事的姐姐。她优雅,新潮,成熟。她也许太过优秀。很多小伙都会说“嘿,兄弟,你怎么可能不爱上Python呢!?”。没错,你喜欢Python。你把她当成了一个脾气和浪漫都退烧了的Ruby。 - ->Java是一个事业成功的女人。很多在她手下干过的人都感觉她的能力跟她的地位并不般配,她更多的是通过技巧打动了中层管理人员。你也许会认为她是很有智慧的人,你愿意跟随她。但你要准备好在数年里不断的听到“你用错了接口,你遗漏了一个分号”这样的责备。 - ->C++ 是Java的表姐。她在很多地方跟Java类似,不同的是她成长于一个天真的年代,不认为需要使用“保护措施”。当然,“保护措施”是指自动内存管理。你以为我指的是什么? - ->C 是C++的妈妈。对一些头发花白的老程序员说起这个名称,会让他们眼睛一亮,产生无限回忆。 - ->Objective C C语言家族的另外一个成员。她加入了一个奇怪的教会,不愿意和任何教会之外的人约会。 - -虽然是娱乐,或许有争议,权当参考吧。 - -所以,Python值得拥有。 - -在正式开始学习之前,首先要告诉你成为Python高手的秘诀。 - -##The Zen of Python - -这就是著名的《Python之禅》。 - ->Beautiful is better than ugly. - ->Explicit is better than implicit. - ->Simple is better than complex. - ->Complex is better than complicated. - ->Flat is better than nested. - ->Sparse is better than dense. - ->Readability counts. - ->Special cases aren't special enough to break the rules. - ->Although practicality beats purity. - ->Errors should never pass silently. - ->Unless explicitly silenced. - ->In the face of ambiguity, refuse the temptation to guess. - ->There should be one-- and preferably only one --obvious way to do it. - ->Although that way may not be obvious at first unless you're Dutch. - ->Now is better than never. - ->Although never is often better than *right* now. - ->If the implementation is hard to explain, it's a bad idea. - ->If the implementation is easy to explain, it may be a good idea. - ->Namespaces are one honking great idea -- let's do more of those! - -“吃水不忘挖井人”,谁创造了Python,我们一定要感恩并崇拜。 - -##感谢Guido van Rossum - -Guido van Rossum 是值得所有pythoner感谢和尊重的,因为他发明了这个优雅的编程语言。他发明python的过程是那么让人称赞和惊叹,显示出牛人的风采。 - -Python已经让人心动了。除了心动,还要行动;只有行动,才能“从小工到专家”。 - -------- - -[总目录](./index.md)   |   [下节:从小工到专家](./02.md) diff --git a/02.md b/02.md deleted file mode 100644 index 9c0b446..0000000 --- a/02.md +++ /dev/null @@ -1,122 +0,0 @@ ->Do not store up for yourselves treasures on earth, where moth and rust consume and where thieves break in and steal; but store up for yourselves treasures in heaven, where neither moth nor rust consumes and where thieves do not break in and steal. For where your treasure is, there your heart will be also.(MATHEW 10:19-21) - ->不要为自己积攒财宝在地上,地上有虫子咬,能锈坏,也有贼挖窟窿来偷;只要积攒财宝在天上,天上没有虫子咬,不能锈坏,也没有贼挖窟窿来偷。因为的财宝在哪里,你的心也在哪里。 - -#从小工到专家 - -这是每个程序员的梦想。 - -有一本书的名字就是《程序员修炼之道:从小工到专家》,我借用此书的标题。 - -但是,本书或许能够是你成为专家路上的一块铺路石,如果真能如此,我感到荣幸之至。 - -##关于本书 - -我曾经在网上写过[《零基础学Python(第一版)》](https://github.com/qiwsir/ITArticles/blob/master/BasicPython/index.md),完成之后,发现有一些错误,并且整体结构对零基础的学习者还不是很适合。于是,就重新写了本教程,力图为零基础的学习者提供一个入门的教程。 - -本教程有幸得到了电工业出版社的认可,已经集结成为《跟老齐学Python》一书出版(读者可以在各大网络书店搜索,欢迎购买)。但是,当书出版之后,我又萌生了进一步就该的设想,于是在2016年3月到5月期间,对网络教程进行了再次修订,并且定名为现在的名称——《跟老齐学Python:入门教程》——言外之意,还有别的教程。的确,在我计划之中,还要编写针对相关方面应用的教程。 - -对于本书,我再次强调,其对象零基础的学习者。之所以再次强调,是因为已经有读者误解了本书的目的。购买了之后,发现比较基础,于是就狂喷一通,并言之凿凿,“还不如看官方文档”。的确,Python的官方文档是最好的。如果能够直接阅读官方文档来学习,当然是一种不错的方法,并且这样的学习者也一定是高手,所以不是本书的读者。就此也建议才俊们,请看完成内容再喷无妨。 - -或许书中“干货”不多——人体约70%是水分,木乃伊才是干货——水是一种很好的溶剂,它存在书中,目的是别那么枯燥——或许这个目标没有完全实现,只能说是力争了,毕竟编程语言还是不如讲故事精彩。 - -我也非常欢迎读者能够以心平气和的方式跟我交流,以帮助我改进本书。所以,提供如下联系到我的途径: - -1. 加入QQ群,里面可以跟很多人交流。QQ群:Code Craft:26913719 -2. 关注我的新浪微博,名称是:老齐Py。地址:http://weibo.com/qiwsir -3. 到github.com上直接follow我,名称是:qiwsir。地址:https://github.com/qiwsir -4. 经常关注我的网站:www.itdiffer.com - -现在的年代是一个“东风吹战鼓擂”的年代,能够心平气和讲话的本来就不多,但是气大伤肾,特别是年轻人,一定要小心啦。 - -##Python的版本 - -关于Python的版本问题,是必须要交代的。 - -不管出于什么原因,我认为Python给自己搞了两个版本,是败笔。 - -虽然如此,但幸亏两个版本并非天壤之别,绝大部分是一样的。所以,学习者可以选择任何一种版本进行学习,然后在具体应用的时候,用到什么版本,只要稍加注意,或者到网上搜索一下,即可。 - -我在这里还整理了一篇文章:[Python2.7.x和3.x版本的重要区别](https://github.com/qiwsir/StarterLearningPython/blob/master/n005.md),不知是否愿意阅读? - -但是,总有不放心的初学者。 - -我曾被无数次的拷问:教程是Python 2还是Python 3? - -我非常想告诉他什么都支持,但是,我的代码的确是在Python 2下调试的,总不能撒谎吧。于是当我如实奉告的时候,他会说要学习Python 3,转头找那些号称是Python 3的教程。 - -无奈。 - -为了迎合学习者胃口,我的教程,**从即日起,适合于Python 3**。 - -从此,本教程宣称:**支持Python 2和Python 3**。如遇到不符合此宣称的地方,请告知我,我立刻修改。 - -还要说一句,上述宣称的最终解释权归本教程作者。 - -不管是2还是3,总要从零开始学习,从零开始学,就意味着不需要基础。这个我有信心。 - -##需要什么基础吗 - -这是很多初学者都会问的一个问题。诚然,在计算机方面的基础越好,对学习任何一门新的编程语言,都是更有利的。如果,你在编程语言的学习上属于零基础,也不用担心,不管用哪门语言作为学习编程的入门语言,总要有一个开始吧。 - -就我个人来看,Python是比较适合作为学习编程的入门语言的(作为学习编程的入门语言,我现在最不理解的是用C,因为很多曾经立志学习编程的人学了C语言之后,才知道自己不适合编程。难道是用C来筛选这个行业的从业者吗?)。总之,不用担心自己的所谓基础问题。 - -这个教程,就是强调“零基础”的。 - -不仅我这么认为,美国有不少高校也这么认为,纷纷用Python作为编程专业甚至是非编程专业的大学生入门语言。 - -最后的结论是:学习python,你不用担心基础问题。 - -**特别是看我的教程,我的目标就是要跟你一起从零基础开始,直到高手境界**——不是我夸口,是你要有信心。 - -所以,尽管放胆来学,不用犹豫、不要惧怕。还有一个原因,是因为她优雅。 - -##从小工到专家 - -有不少学习Python的朋友询问: - ->“书已经看了,书上的代码也运行过了,但是还不知如何开发一个真正的应用程序,不知从何处下手。” - -也遇到过一些大学生毕业生,虽然相关专业的考试分数是不错的(我一般是相信那些成绩是真的),但是,一讨论到专业问题,常常让我大跌眼镜,特别是当他面对真实的工作对象时,所表现出来的能力要比成绩单上的数字差太多了。 - -我一般会武断地下一个结论:练的少。 - -因此,从小工到专家,就要多练。当不是盲目地练习,如果找不到方向,可以从阅读代码开始。 - -###阅读代码 - -有句话说的好:“读书破万卷,下笔如有神”。这也适用于编程。阅读别人的代码,是必须的。通过阅读,“站在巨人的肩膀上”,让自己眼界开阔,思维充实。 - -阅读代码的最好地方就是:[www.github.com](http://www.github.com) - -如果还没有帐号,请尽快注册,他将是你作为一个优秀程序员的起点。当然了,不要忘记来follow我,我的帐号是: qiwsir。 - -阅读代码最好的一个方法是一边阅读,一边进行必要的注释,这是在梳理自己对别人代码的认识。然后,可以run一下,看看效果。当然,还可以按照自己的设想进行必要修改,再run。这样你就将别人的代码消化吸收了。 - -之所以run,使要看看这个程序运行结果是什么。除了调试别人的程序,还要调试自己的程序。 - -###调试程序 - -首先要自己动手写程序。 - -“一万小时定律”在编程领域也是成立的,除非你是天才,否则,只有通过“一万小时定律”才能成为天才。 - -“拳不离手,曲不离口”,小工只有通过勤奋地敲代码才能成为专家。 - -为了帮助学习者调试动手敲代码,我正在推出一个项目[《编程匠艺》训练](http://www.itdiffer.com/coding.html),可以参加。 - -在写程序、调试程序的时候,一定会遇到很多问题。怎么办? - -办法就是应用网络,看看类似的问题别人如何解决,不要仅仅局限于自己的思维范围。 - -利用网络就少不了搜索引擎。我特别向那些要想成为专家的小工们说:只有Google能够帮助你成为专家,其它的搜索引擎,只能让你成为“砖家”,乃至于“砖工”。所以,请用:**google.com**。 - -此外,还有其它的好网站,我会陆续向有意成为专家的朋友提供。 - -成为专家的通道千万条,但这两条路径是真道。 - -千里之行,始于足下。要学Python,就要有学习的环境。 - ---------- - -[总目录](./index.md)   |   [上节:关于Python的故事](./01.md)   |   [下节:安装Python的开发环境](./03.md) diff --git a/03.md b/03.md deleted file mode 100644 index 71ad8ca..0000000 --- a/03.md +++ /dev/null @@ -1,113 +0,0 @@ ->But Jesus said to them,"Because of your hardness of heart he wrote this commandment for you. But from the beginning of creation, 'God made them male and female.' 'For this reason a man shall leave his father and mother and be joined to his wife, and the two shall become on flesh.' Therefore what God has joined together, let no one separate."(MARK 10:5-9) - -#Python安装 - -不论是谁,只要用Python,就必须配置Python的开发和运行环境。 - -这环境是什么?它就是若干个软件程序。 - -不仅Python,任何高级语言都是需要一个自己的编程环境,这就好比写字一样,需要有纸和笔,在计算机上写东西,也需要有文字处理软件,比如各种名称的OFFICE。笔和纸以及office软件,就是写东西的硬件或软件,总之,那些文字只能写在那个上边,才能最后成为一篇文章。那么编程也是,要有个什么程序之类的东西,要把程序写到那个上面,才能形成最后类似文章那样的东西。 - ->不论读者是零基础,还是非零基础,不要希望在这里学到很多高深的Python语言技巧,因为这里充满了水分。 - ->“靠,原来是看胡扯的?” - ->非也。水是生命源泉,一个好的教程,如果没有水分,仅仅是一些干瘪的知识,那么就是一个指令速查手册,难道阅读起来能让你兴趣盎然吗? - ->在本教程中,我将重点向读者展现学习方法,比如给大家推荐的“上网google一下”,就是非常好的学习方法。互联网的伟大之处,不仅仅在于打打游戏、看看养眼的照片或者各种视频之类的,当然,不少人把互联网等于娱乐网,我忠心希望从你开始,互联网不仅仅是娱乐网,还是知识网和创造网。扯远了,拉回来。在学习过程中,如果遇到一点点疑问,都不要放过,思考一下、尝试一下之后,不管有没有结果,还都要google一下。 - ->读者看好了,我上面写的很清楚,是“google一下”,不论你是什么派别,只要你立志做一个好一点的程序员,只要你真的要提高自己的技术视野并且专心研究技术问题,请用google。当然,我知道你在用的时候会遇到困难,做为一个追求在技术上有点成就的人,一定要学点上网的技术的,你懂得。 - ->如果你不懂,的确就是是我的读者:零基础。 - -欲练神功,挥刀自宫。神功是有前提de。 - -要学Python,不用自宫。Python不用那么残忍的前提,但是,也需要安装点东西才能用。 - -所需要安装的东西,都在这个页面里面:[www.python.org/downloads/](http://www.python.org/downloads) - ->www.python.org 是Python的官方网站,如果你的英语足够使用,那么自己在这里阅读,可以获得非常多的收获。 - -在Python的下载页面里面,显示出Python目前有两大类,一类是Python3.x.x,另外一类是Python2.7.x。选哪个都行,本教程两者兼顾,如果没有兼顾到的,可以网上搜一搜。 - -不用为学习哪个版本而忧愁。如果学了Python2.7,对于Python3,也只是某些地方的小变化了。 - -下面就一步一步地来安装。如果不是零基础的,可以略过。 - -##在Linux系统中安装 - -你的计算机是什么操作系统的?自己先弄懂。 - -如果是Linux某个发行版,就跟我同道了。并且恭喜你,因为以后会安装更多的一些Python库(模块),在这种操作系统下,操作非常简单,当然,如果是MacOS,也一样,因为都是UNIX下的蛋。 - -只是windows有点另类了。也不必惶恐,Python就是跨平台的。 - -本教程的所有程序,都是在Ubuntu下调试的,没有时间和精力单独再搞windows的,或许会在某些地方提示windows中注意的地方。一般情况下可以放心,总体上跟操作系统关联不紧密。 - -根据个人喜好,我推荐读者熟悉Linux操作系统,这是很好的。 - -我用Ubuntu。 - -只要装了Ubuntu这个操作系统,默认里面就已经把Python安装好了。最新的Ubuntu中可能已经预装了Python的两个版本,你可以选择使用。 - -接下来就在shell中输入Python(或者Python3,是启动了Python 3),如果看到了`>>>`,并且显示出Python的版本信息,恭喜你,这就进入到了Python的交互模式下(“交互模式”,这是一个非常有用的东西,从后面的学习中,你就能体会到,这里是学习Python的主战场)。 - -如果非要自己安装。参考下面的操作: - -- 到官方网站下载源码。比如(如果读者下载Python 3或者其它版本,可以到官网[www.python.org](http://www.python.org)查看相应版本的源码地址,这里仅仅是举例,不可照抄): - - wget http://www.python.org/ftp/python/2.7.6/Python-2.7.6.tgz - -- 解压源码包 - - tar -zxvf Python-2.7.6.tgz - -- 编译 - - cd Python-2.7.6 - - ./configure --prefix=/usr/local #指定了目录,如果不制定,可以使用默认的,直接运行 ./configure 即可。 - - make&&sudo make install - -安装好之后,进入shell,输入python,会看到如下: - - qw@qw-Latitude-E4300:~$ python - Python 2.7.6 (default, Nov 13 2013, 19:24:16) - [GCC 4.6.3] on linux2 - Type "help", "copyright", "credits" or "license" for more information. - >>> - -windows系统中安装程序,就是不断地“下一步”。 - -##在windows系统中安装 - -到[下载页面里面](https://www.python.org/downloads/)找到你喜欢的版本,然后根据自己的计算机情况,下载相应的安装包,下载完毕,安装过程同其它的windows软件安装方法。 - -特别注意,安装完之后,需要检查一下,在环境变量是否有Python。 - ->如果还不知道什么是windows环境变量,以及如何设置。不用担心,请google一下,搜索:"windows 环境变量"就能找到如何设置了。 - -以上搞定,在cmd中,输入Python,得到跟上面类似的结果,就说明已经安装好了。 - -从开始菜单中,你还能找到Python IDEL,打开之后,也是一个交互模式,并且还是一个简单的编辑器。 - -还有另外一个代表高端的电脑,貌似用Mac OS X的人都很厉害和富有。 - -##Mac OS X系统的安装 - -其实根本就不用再写怎么安装了,因为用Mac OS X 的朋友,肯定是高手中的高高手了,至少我一直很敬佩那些用Mac OS X 并坚持没有更换为windows的。麻烦用Mac OS X 的朋友自己网上搜吧,跟前面Ubuntu差不多。 - -按照以上方法,顺利安装成功,只能说明幸运,无它。 - -没有安装成功,这是提高自己的绝佳机会,因为只有遇到问题才能解决问题,才能知道更深刻的道理。不要怕,有google,它能帮助你解决所有问题。当然,加入QQ群或者通过微博,问我也可以。 - -最后还要交代,你不用纠结是2还是3,很多初学者特别是大学生喜欢纠缠这个问题,实在有点浪费脑细胞了。 - -不为2还是3浪费时间,但是开发工具的选择要对自己的胃口。 - -------- - -[总目录](./index.md)   |   [上节:从小工到专家](./02.md)|   [下节:集成开发环境](./101.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/101.md b/101.md deleted file mode 100644 index 4faef6e..0000000 --- a/101.md +++ /dev/null @@ -1,145 +0,0 @@ ->"But I say to you that listen, Love your enemies, do good to those who hate you, bless those who curse you, pray for those who abuse you. If anyone strikes you on the cheek, offer the other also; and from anyone who takes away your coat do no withhold even your shirt. Give to everyone who begs from you; and if anyone takes away your goods, do not ask for them again. Do to others as you would have them do to you....Be merciful, just as your Father is merciful." - -#开发工具 - -安装好Python之后,就已经可以进行开发了。按照惯例,第一行代码总是:Hello World - -这是所有编程语言的惯例。 - -##Hello world - -不管你使用的是什么操作系统,肯定能够找到一个地方,运行Python,进入到交互模式。 - -- Ubuntu,直接在shell中输入python即可 -- windows,从开始菜单中找到IDLE(Python GUI) - -进入到如下类似的界面: - - Python 2.7.6 (default, Nov 13 2013, 19:24:16) - [GCC 4.6.3] on linux2 - Type "help", "copyright", "credits" or "license" for more information. - >>> - -或者是(注意,我在兼顾Python 3了): - - Python 3.5.1 (v3.5.1:37a07cee5969, Dec 6 2015, 01:54:25) [MSC v.1900 64 bit (AMD64)] on win32 - Type "copyright", "credits" or "license()" for more information. - >>> - -这就是交互模式。将在后面长期使用,会伴随你Python的代码生涯。 - -在`>>>`后面输入`print "Hello, World"`,并按回车。这就是见证奇迹的时刻。 - - >>> print "Hello, World" - Hello, World - -上面的是在Python 2中,下面的是Python 3,注意区别。 - - >>> print("Hello, World") - Hello, World - -如果你从来不懂编程,从这一刻起,就跨入了程序员行列;如果已经是程序员,那么就温习一下当初的惊喜吧! - -`Hello, World`是你用代码向这个世界打招呼了。 - -每个程序员,都曾经历过这个伟大时刻,不经历这个伟大时刻的程序员不是伟大的程序员。为了纪念这个伟大时刻,理解其伟大之所在,下面将其内部行为逐一解说。 - ->说明:Python代码中常用到了一个符号:`#`,就是键盘上数字3上面的那个井字符。这个符号,在Python编程中,表示注释。所谓注释,就是在计算机不执行那句话,只是为了说明某行语句表达什么意思,是给计算机前面的人看的。特别提醒,在编程实践中,注释是必须的。 - ->请牢记:程序在大多数情况下是给人看的,只是偶尔让计算机执行一下。 - -看到“>>>”符号,表示Python做好了准备,等待你向她发出指令,让她做什么事情。这是交互模式的标志。 - - >>> - -`print`,意思是打印。在这里也是这个意思,是要求Python打印什么东西。 - - >>> print - -`"Hello,World"`是打印的内容,注意双引号,是英文状态下的。引号不是打印内容,它相当于一个包裹,把打印的内容包起来,统一交给Python。 - - >>> print "Hello, World" - -Python接收到你要求她所做的事情:打印Hello,World,于是她就老老实实地执行这个命令,丝毫不走样。 - - Hello, World - -如果你使用的是Python 3,这里应该写成: - - >>> print("Hello world") - -“交互模式”是非常有用而且简单的模式,她是我们进行各种学习和有关探索的好方式,随着学习的深入,你将更加觉得她魅力四射。 - ->笑一笑:有一个程序员,自己感觉书法太烂了,于是立志继承光荣文化传统,购买了笔墨纸砚。在某天,开始练字。将纸铺好,拿起笔蘸足墨水,挥毫在纸上写下了两个大字:Hello World - -虽然进入了程序员序列,但是,如果程序员用的这个工具,也仅仅是打印Hello,World,怎能用“伟大”来形容呢? - -况且,这个工具也太简陋了?你看美工妹妹用的Photoshop,行政妹妹用的Word,出纳妹妹用的Excel,就连坐在老板桌后面的那个家伙还用一个PPT播放自己都不相信的新理念呢,难道我们伟大的程序员,就用这么简陋的工具写出旷世代码吗? - -当然不是。软件是谁开发的?程序员。程序员肯定会先为自己打造好用的工具,这也叫做“近水楼台先得月”。 - -##集成开发环境 - -IDE的全称是:Integrated Development Environment,简称IDE,也称为Integration Design Environment、Integration Debugging Environment,翻译成中文叫做“集成开发环境”,在台湾那边叫做“整合開發環境”,它是一种辅助程序员开发用的应用软件。 - -[维基百科](http://zh.wikipedia.org/zh/%E9%9B%86%E6%88%90%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83)这样对IDE定义: - ->IDE通常包括程式語言編輯器、自動建立工具、通常還包括除錯器。有些IDE包含編譯器/直譯器,如微软的Microsoft Visual Studio,有些则不包含,如Eclipse、SharpDevelop等,这些IDE是通过调用第三方编译器来实现代码的编译工作的。有時IDE還會包含版本控制系統和一些可以設計圖形用戶界面的工具。許多支援物件導向的現代化IDE還包括了類別瀏覽器、物件檢視器、物件結構圖。雖然目前有一些IDE支援多種程式語言(例如Eclipse、NetBeans、Microsoft Visual Studio),但是一般而言,IDE主要還是針對特定的程式語言而量身打造(例如Visual Basic)。 - -看不懂,没关系,看图,认识一下,混个脸熟就好了。所谓有图有真相。 - -![](./1images/10101.png) - -上面的图显示的是微软的提供的名字叫做Microsoft Visual Studio的IDE。用C#进行编程的程序员都用它。 - -![](./1images/10102.png) - -上图是在苹果电脑中出现的名叫XCode的IDE。 - -要想了解更多IDE的信息,推荐阅读维基百科中的词条 - -- 英文词条:[Integrated development environment](http://en.wikipedia.org/wiki/Integrated_development_environment) -- 中文词条:[集成开发环境](http://zh.wikipedia.org/zh/%E9%9B%86%E6%88%90%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83) - -##Python的IDE - -google一下:Python IDE,会发现,能够进行Python编程的IDE还真的不少。东西一多,就开始无所适从了。所有,有不少人都问用哪个IDE好。可以看看[这个提问,还列出了众多IDE的比较](http://stackoverflow.com/questions/81584/what-ide-to-use-for-python)。 - ->顺便向列位看客推荐一个非常好的开发相关网站:[stackoverflow.com](http://stackoverflow.com/) - ->在这里可以提问,可以查看答案。一般如果有问题,先在这里查找,多能找到非常满意的结果,至少有很大启发。 - ->在某国有时候有些地方可能不能访问,需要科学上网。好东西,一定不会让你轻易得到,也不会让任何人都得到。 - -那么做为零基础的学习者,用什么好呢? - -既然是零基础,就别瞎折腾了,就用Python自带的IDLE。原因就是:简单。 - -Windows的朋友操作:“开始”菜单中找到“IDLE(Python GUI)”来启动IDLE。启动之后,大概看到这样一个图(也可能是Python 3版本,根据你的版本而定)。 - -![](./1images/10103.png) - -注意:所看到的界面中显示版本跟这个图不同,因为安装的版本区别。大致模样差不多。 - -其它操作系统的用户,也都能在找到IDLE这个程序,启动之后,跟上面类似的图。 - -后面我们所有的编程,就在这里完成了。这就是伟大程序员用的第一个IDE。 - -除了这个自带的IDE,还有很多其它的IDE,列出来,供喜欢折腾的朋友参考 - -- PythonWin: 是Python Win32 Extensions(半官方性质的Python for win32增强包)的一部分,也包含在ActivePython的windows发行版中。如其名字所言,只针对win32平台。 -- MacPython IDE: MacPythonIDE是Python的Mac OS发行版内置的IDE,可以看作是PythonWin的Mac对应版本,由Guido的哥哥Just van Rossum编写。(哥俩都很牛) -- Emacs和Vim: Emacs和Vim号称是这个星球上最强大(以及第二强大)的文本编辑器,对于许多程序员来说是万能IDE的不二(三?)选择。 -- Eclipse + PyDev: Eclipse是新一代的优秀泛用型IDE,虽然是基于Java技术开发的,但出色的架构使其具有不逊于Emacs和Vim的可扩展性,现在已经成为了许多程序员最爱的瑞士军刀。 - -简单列几个,供参考,要找别的IDE,网上搜一下,五花八门,不少呢。 - -磨刀不误砍柴工。IDE已经有了,伟大程序员就要开始从事伟大的编程工作了。 - -从哪里开始?从计算机的原初功能开始,那就是计算。 - ------- - -[总目录](./index.md)   |   [上节:安装Python的开发环境](./03.md)|[   下节:数和四则运算](./102.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/102.md b/102.md deleted file mode 100644 index 3e53347..0000000 --- a/102.md +++ /dev/null @@ -1,292 +0,0 @@ ->For I am not ashamed of the gospel; it is the power of God for salvation to everyone who has faith, to the Jew first and also to the Greek. For in it the righteousness of God is revealed through faith for faith; as it is written,"The one who is righteous will live by faith" - -#数和四则运算 - -计算机,原本是用来计算的。现在更多人把她叫做电脑,这两个词都是指computer。不管什么,只要提到她,普遍都会想到她能够比较快地做加减乘除,甚至乘方开方等。乃至于,有的人在口语中区分不开计算机和计算器。 - -有一篇名为[《计算机前世》](http://www.flickering.cn/%E5%85%AB%E5%8D%A6%E5%A4%A9%E5%9C%B0/2015/02/%E8%AE%A1%E7%AE%97%E6%9C%BA%E5%89%8D%E4%B8%96%E7%AF%87%EF%BC%88%E4%B8%80%EF%BC%8C%E5%A7%91%E5%A8%98%E8%AE%A1%E7%AE%97%E6%9C%BA%EF%BC%89/)的文章,这样讲到: - ->还是先来看看计算机(computer)这个词是怎么来的。 英文学得好的小伙伴看到这货,computer - ->第一反应好像是:“compute-er”是吧,应该是个什么样的人就对了,就是啊,“做计算的人”。 - ->叮咚!恭喜你答对了。 - ->最先被命名为 computer 的确实是人。也就是说,电子计算机(与早期的机械计算机)被给予这个名字是因为他们执行的是此前被分配到人的工作。 “计算机”原来是工作岗位,它被用来定义一个工种,其任务是执行计算诸如导航表,潮汐图表,天文历书和行星的位置要求的重复计算。从事这个工作的人就是 computer,而且大多是女神! - -原文还附有如下图片: - -![](./1images/10201.jpg) - -所以,以后要用第三人称来称呼computer,请用she(她)。现在你明白为什么程序员中那么多“他”了吧,因为computer是“她”。 - -##数 - -在Python中,对数的规定比较简单,基本在小学数学水平即可理解。 - -那么,做为零基础学习这,也就从计算小学数学题目开始吧。因为从这里开始,数学的基础知识列位肯定过关了。 - - >>> 3 - 3 - >>> 3333333333333333333333333333333333333333 - 3333333333333333333333333333333333333333L - >>> 3.222222 - 3.222222 - -上面显示的是在交互模式下,如果输入3,就显示了3,这样的数称为整数,用int表示。这个称呼和小学数学一样。 - -如果输入一个比较大的数,第二个,那么多个3组成的一个整数,在Python中称之为长整数。为了表示某个数是长整数,Python 2会在其末尾显示一个L,Python 3中干脆把L都省略了,因为本来它也没有什么作用了。其实,现在的Python已经能够自动将输入的很大的整数视为长整数了。你不必在这方面进行区别。 - -这个功能重要,在于Python能自动处理大整数问题,不用担心溢出。什么是“溢出”,随后说明,或者在这里去Google它。 - -第三个,在数学里面称为小数,这里你依然可以这么称呼,不过就像很多编程语言一样,习惯称之为“浮点数”,用float表示。 - -注意,刚才我提到了小数,其实把小数称之为“浮点数”,这种说法并不准确。为此,“知乎”上有专门的解释,请阅读(原文地址:[http://www.zhihu.com/question/19848808/answer/22219209](http://www.zhihu.com/question/19848808/answer/22219209): - ->并不是说小数叫做浮点数。准确的来说:“浮点数”是一种表示数字的标准,整数也可以用浮点数的格式来存储。 - ->当代大部分计算机和程序在处理浮点数时所遵循的标准是由IEEE和ANSI制定的。比如,单精度的浮点数以4个字节来表示,这4个字节可以分为三个部分:1位的符号位(0代表正数,1代表负数),8位用作指数,最后的23位表示有效数字。 - ->“浮点数”的定义是相对于“定点数”来说的,它们是两种表示小数的方式。 - ->所谓“定点”是指小数点的位置总是在数的某个特定位置。比如在银行系统中,小数点的位置总是在两位小数之前(这两位小数用来表示角和分)。其可以使用BCD码来对小数进行编码。 - ->浮点格式则是基于科学计数法的,它是存储极大或极小数的理想方式。但使用浮点数来表示数据的时候,由于其标准制定方面的原因可能会带来一些问题,例如:某两个不同的整数在单精度浮点数的表示方法下很可能无法区分。 - -上述举例中,可以说都是无符号(或者说是非负数),如果要表示负数,跟数学中的表示方法一样,前面填上负号即可。 - -值得注意的是,我们这里说的都是十进制的数。 - -除了十进制,还有二进制、八进制、十六进制都是在编程中可能用到的,当然用六十进制的时候就比较少了(其实时间记录方式就是典型的六十进制)。 - -进制问题此处不是重点,建议读者自行查找资料阅读。 - -在Python中,每个数字都是真实存在的,相对于我们——人类——来讲,它真实存在,它就是对象(object)。 - -对象是一个深刻的术语,不管你是否理解,我先这么说,你先听着、用着,逐渐逐渐,就理解深入了。 - -还要注意,此对象非彼对象,但是学习Python或许在帮助你解决彼对象的时候有帮助。 - -比如整数3,就是一个对象。 - -每个对象,在内存中都有自己的一个地址,这个就是它的身份。 - - >>> id(3) - 140574872 - >>> id(3.222222) - 140612356 - >>> id(3.0) - 140612356 - >>> - -用内建函数id()可以查看每个对象的内存地址,即身份。 - ->内建函数,英文为built-in Function,读者根据名字也能猜个八九不离十了。不错,就是Python中已经定义好的内部函数。 - -以上三个不同的数字,是三个不同的对象,具有三个不同的内存地址。特别要注意,在数学上,3和3.0是相等的,但是在这里,它们是不同的对象。 - -用id()得到的内存地址,是只读的,不能修改。 - -了解了“身份”,再来看“类型”,也有一个内建函数供使用type()。 - - >>> type(3) - - >>> type(3.0) - - >>> type(3.222222) - - -在Python 3中,看到的是这样的结果: - - >>> type(3) - - >>> type(3.0) - - >>> type(3.222222) - - -用内建函数能够查看对象的类型。 - -- ` `或者``,说明3是整数类型(Interger); -- ``或者``,则告诉我们那个对象是浮点型(Floating point real number)。 - -与id()的结果类似,type()得到的结果也是只读的。 - -至于对象的值,在这里就是对象本身了。 - -看来对象也不难理解。请保持自信,继续。 - -##变量 - -仅仅写出3、4、5是远远不够的,在编程语言中,经常要用到“变量”和“数”(在Python中严格来讲是对象)建立一个对应关系。例如: - - >>> x = 5 - >>> x - 5 - >>> x = 6 - >>> x - 6 - -在这个例子中,`x = 5`就是在变量`x和数`5`之间建立了对应关系,接着又建立了`x`与`6`之间的对应关系。 - -我们可以看到,x先“是”5,后来“是”6。 - -在Python中,有这样一句话是非常重要的:**对象有类型,变量无类型**。 - -怎么理解呢? - -首先,5、6都是整数,Python中为它们取了一个名字,叫做“整数”类型的对象(或者数据),也可以说对象(或数据)类型是整数型,用int表示。 - -当我们在Python中写入了5、6,computer姑娘就自动在她的内存中某个地方给我们建立了这两个对象,就好比建造了两个雕塑,一个是形状似5,一个形状似6,这就两个对象,这两个对象的类型就是int. - -那个x呢?就好比是一个标签,当`x = 5`时,就是将x这个标签拴在了5上了,通过这个x,就顺延看到了5,于是在交互模式中,`>>> x`输出的结果就是5,给人的感觉似乎是x就是5,事实是x这个标签贴在5上面。同样的道理,当`x = 6`时,标签就换位置了,贴到6上面。 - -所以,作用等同于标签的变量`x`没有类型之说,它不仅可以贴在整数类型的对象上,还能贴在其它类型的对象上,比如后面会介绍到的str(字符串)类型的对象等等。 - -这是Python的一个重要特征——**对象有类型,变量无类型**。 - -理解否?如果没有理解,也不要紧张,继续学习,“发展是硬道理”,在发展中解决问题。 - -上面的知识,可以用来计算。 - -##四则运算 - -按照下面要求,在交互模式中运行,看看得到的结果和用小学数学知识运算之后得到的结果是否一致 - - >>> 2 + 5 - 7 - >>> 5 - 2 - 3 - >>> 10 / 2 - 5 - >>> 5 * 2 - 10 - >>> 10 / 5 + 1 - 3 - >>> 2 * 3 - 4 - 2 - -在Python 3中,上面的运算中,除法是有区别的,它们将是这样的: - - >>> 10 / 2 - 5.0 - >>> 10 / 5 + 1 - 3.0 - -这些运算中,分别涉及到了四个运算符号:加(+)、减(-)、乘(*)、除(/) - -另外,我相信读者已经发现了一个重要的公理: - -**在计算机中,四则运算和数学中学习过的四则运算规则是一样的** - -要不说人是高等动物呢,自己发明的东西,一定要继承自己已经掌握的知识,别跟自己的历史过不去。伟大的科学家们,在当初设计计算机的时候就想到后辈小子们学习的需要了,一定不能让后世子孙再学新的运算规则,就用数学里面的好了。感谢那些科学家先驱者,泽被后世。 - -下面计算三个算术题,看看结果是什么 - -- 4 + 2 -- 4.0 + 2 -- 4.0 + 2.0 - -可能愤怒了,这么简单的题目,就不要劳驾计算机了,太浪费了。 - -别着急,还是要运算一下,然后看看结果,有没有不一样?要仔细观察哦。 - - >>> 4+2 - 6 - >>> 4.0+2 - 6.0 - >>> 4.0+2.0 - 6.0 - -观察能力运用到这里,在物理课堂上学的一点不浪费。 - -找出不一样的地方。第一个式子结果是6,这是一个整数;后面两个是6.0,这是浮点数。这意味着什么,你可以继续试验,看看能不能总结出什么规律。后面会用到。 - -似乎计算机做一些四则运算是不在话下的,但是,有一个问题请你务必注意:在数学中,整数是可以无限大的,但是在计算机中,整数不能无限大。为什么呢?(推荐去google,其实计算机的基本知识中肯定学习过了。)因此,就会有某种情况出现,就是参与运算的数或者运算结果超过了计算机中最大的数了,这种问题称之为“整数溢出问题”。 - -##大整数 - -这里有一篇专门讨论这个问题的文章,推荐阅读:[整数溢出](http://zhaoweizhuanshuo.blog.163.com/blog/static/148055262201093151439742/) - -对于其它语言,整数溢出是必须正视的,但是,在Python里面,无忧愁,原因就是Python为我们解决了这个问题。 - -请阅读拙文:[大整数相乘](https://github.com/qiwsir/algorithm/blob/master/big_int.md) - -可以在实验一下大整数相乘。 - - >>> 123456789870987654321122343445567678890098876 * 1233455667789990099876543332387665443345566 - 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816L - -Python 3中的计算结果,比上面的少L: - - >>> 123456789870987654321122343445567678890098876 * 1233455667789990099876543332387665443345566 - 152278477193527562870044352587576277277562328362032444339019158937017801601677976183816 - -Python自动帮为我们解决大整数问题。这是Python跟很多其它编程语言大不一样的地方,也就是说,你尽可以放心,在Python中,整数的长度是不受限制的(当然,这句话有点绝对了)。 - -Python解忧愁,可是使用任意大的整数。 - -所以,选择学习Python就是珍惜光阴了。 - -强调知识点,有两个符号需要牢记(不记住也没关系,可以随时google,只不过记住后使用更方便) - -- 整数,用int表示,来自单词:integer -- 浮点数,用float表示,就是单词:float - -可以用一个命令:type(object)来检测一个数是什么类型。 - - >>> type(4) - #4是int,整数 - >>> type(5.0) -  #5.0是float,浮点数 - >>> type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) - #是长整数,也是一个整数 - -Python 3的结果是: - - >>> type(4) - - >>> type(5.0) - - >>> type(988776544222112233445566778899887766554433221133344455566677788998776543222344556678) - - -两个版本有区别,在Python 3中,不再有long类型对象了,都归类为int类型。 - -##浮点数 - -对于浮点数,通常情况也没有什么太神奇的,不过,有时候会遇到非常大或者非常小的浮点数,这时候通常会使用一种叫做“科学记数法”的方式表示。 - - >>> 9.8 ** -7.2 - 7.297468937055047e-08 - -在这个例子中,e-08表示的是10的-8次方,这就是科学记数法。当然,也可以直接使用这种方法写数字。 - - >>> a = 2e3 - >>> a - 2000.0 - -前面说到大整数问题的时候,Python帮我们解决了棘手的问题,使得整数可以无限大,但是,浮点数跟整数不同,它存在上限和下限,如果超出了上下的范围,就会出现溢出问题了。也就是说,如果计算的结果太大或者太小,乃至与已经不在Python的浮点数范围之内,就会有溢出错误。 - - >>> 500.0 ** 100000 - Traceback (most recent call last): - File "", line 1, in - OverflowError: (34, 'Numerical result out of range') - -请注意看刚才报错的信息,“out fo range”,就是超出了范围,溢出。所以,在计算中,如果遇到了浮点数,就要小心行事了。对于这种溢出,需要你在编写程序的时候处理,并担当相应的责任。 - -当然,也要看看Python 3中的结果如何: - - >>> 500.0 ** 100000 - Traceback (most recent call last): - File "", line 1, in - 500.0 ** 100000 - OverflowError: (34, 'Result too large') - -浮点数总要小心,它会因为“too large”而“out of range”。更要学会阅读程序中的报错信息,因为后面还会用到,比如除法。 - ------- - -[总目录](./index.md)   |   [上节:集成开发环境](./101.md)   |   [下节:除法](./103.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/103.md b/103.md deleted file mode 100644 index 348e35a..0000000 --- a/103.md +++ /dev/null @@ -1,258 +0,0 @@ ->"I give you a new commandment, that you love one another. Just as I have loved you, you also should love one another. By this everyone will know that you are my disciples, if you have love for one another."(JOHN14:34-35) - -#除法 - -除法啰嗦,不仅是Python。 - -更何况,Python 2和Python 3中的除法还不一样。 - -更啰嗦了。 - -所以,读者不要因为我单独列出本节而有怨言。 - -##整数除以整数 - -进入Python 2交互模式之后,练习下面的运算: - - >>> 2 / 5 - 0 - >>> 2.0 / 5 - 0.4 - >>> 2 / 5.0 - 0.4 - >>> 2.0 / 5.0 - 0.4 - -看到没有?Python 2 中的麻烦出来了,按照数学运算,以上四个运算结果都应该是0.4。但我们看到的后三个符合,第一个居然结果是0。why? - -因为,在Python 2里面有一个规定,像2/5中的除法这样,是要取整(就是去掉小数,但不是四舍五入)。2除以5,商是0(整数),余数是2(整数)。那么如果用这种形式:2/5,计算结果就是商那个整数。或者可以理解为:**整数除以整数,结果是整数(商)**。 - -比如: - - >>> 5 / 2 - 2 - >>> 7 / 2 - 3 - >>> 8 / 2 - 4 - -**注意:**得到是商(整数),而不是得到含有小数位的结果再通过“四舍五入”取整。例如:5/2,得到的是商2,余数1,最终`5 / 2 = 2`。并不是对2.5进行四舍五入。 - -这就是Python 2中规定的原则,不用琢磨为什么了。 - -在Python 3.x中,规则又变了,如果`1/2`,结果就是0.5,也就是说Python 3中的除法是真正的除法了,要取整,只能用`1//2`的方式,即`1//2=0`。 - -这就是规则,人为规定的,使用者只有顺从,就如同足球比赛的规则一样。 - -在Python 3中,演示几个除法: - - >>> 5 / 2 - 2.5 - >>> 7 / 2 - 3.5 - >>> 8 / 2 - 4.0 - -要想实现类似Python 2中那样的取整除法,Python 3也是可以,这么做: - - >>> 5 // 2 - 2 - -##浮点数与整数相除 - -这里还是先讨论Python 2中的“浮点数与整数相除”,其含义是: - -假设:x除以y。其中 x 可能是整数,也可能是浮点数;y可能是整数,也可能是浮点数。 - -出结论之前,还是先做实验: - - >>> 9.0 / 2 - 4.5 - >>> 9 / 2.0 - 4.5 - >>> 9.0 / 2.0 - 4.5 - - >>> 8.0 / 2 - 4.0 - >>> 8 / 2.0 - 4.0 - >>> 8.0 / 2.0 - 4.0 - -归纳,得到规律:**不管是被除数还是除数,只要有一个数是浮点数,结果就是浮点数。**所以,如果相除的结果有余数,也不会像前面一样了,而是要返回一个浮点数,这就跟在数学上学习的结果一样了。 - -再说Python 3。 - -前面已经看到,`5 / 2`,得到的就是浮点数`2.5`;现在,如果当除数或者被除数,有一个或者两个都是浮点数,结果当然还是浮点数。 - - >>> 5.0 / 2 - 2.5 - -看来Python 3的一致性比较好。 - -但不管是Python 2还是Python 3,都有这种情况: - - >>> 10.0 / 3 - 3.3333333333333335 - -这个是不是就有点搞怪了,按照数学知识,应该是3.33333...,后面是3的循环了。那么你的计算机就停不下来了,满屏都是3。为了避免这个,Python武断终结了循环,但是,可悲的是没有按照“四舍五入”的原则终止。当然,还会有更奇葩的出现: - - >>> 0.1 + 0.2 - 0.30000000000000004 - >>> 0.1 + 0.1 - 0.2 - 0.0 - >>> 0.1 + 0.1 + 0.1 - 0.3 - 5.551115123125783e-17 - >>> 0.1 + 0.1 + 0.1 - 0.2 - 0.10000000000000003 - -越来越糊涂了,为什么computer姑娘在计算这么简单的问题上,如此糊涂了呢?不是computer姑娘糊涂,她依然冰雪聪明。 - -原因在于十进制和二进制的转换上,computer姑娘用的是二进制进行计算,上面的例子中,我们输入的是十进制,她就要把十进制的数转化为二进制,然后再计算。但是,在转化中,浮点数转化为二进制,就出问题了。 - -例如十进制的0.1,转化为二进制是:0.0001100110011001100110011001100110011001100110011... - -也就是说,转化为二进制后,不会精确等于十进制的0.1。同时,计算机存储的位数是有限制的,所以,就出现上述现象了。 - -这种问题不仅仅是Python中有,所有支持浮点数运算的编程语言都会遇到,它不是Python的bug。 - -明白了问题原因,怎么解决呢?就Python的浮点数运算而言,大多数机器上每次计算误差不超过 2**53 分之一。对于大多数任务这已经足够了,但是要在心中记住这不是十进制算法,每个浮点数计算可能会带来一个新的舍入错误。 - -一般情况下,只要简单地将最终显示的结果用“四舍五入”到所期望的十进制位数,就会得到期望的最终结果。 - -但是,不是什么地方都能“差不多”的。需要精确,用什么方法解决? - -可以使用 decimal 模块,它实现的十进制运算适合会计方面的应用和高精度要求的应用。 - -另外 fractions 模块支持另外一种形式的运算,它实现的运算基于有理数(因此像1/3这样的数字可以精确地表示)。 - -最高要求则可是使用numPy 包和其它用于数学和统计学的包。 - -列出这些东西,仅仅是让读者能明白,解决问题的方式很多,不必担心。 - -关于无限循环小数问题,有一个链接推荐给诸位,它不是想象的那么简单呀。请阅读:[维基百科的词条:0.999...](http://zh.wikipedia.org/wiki/0.999%E2%80%A6),会不会有深入体会呢? - ->补充一个资料,供有兴趣的朋友阅读:[浮点数算法:争议和限制](https://docs.python.org/2/tutorial/floatingpoint.html#tut-fp-issues) - -Python总会要提供多种解决问题的方案的,这是她的风格。 - -并且常常有现成的“轮子”可是使用。 - -##引用模块解决除法 - -Python之所以受人欢迎,一个很重重要的原因,就是轮子多。这是比喻啦。就好比你要跑的快,怎么办?光天天练习跑步是不行滴,要用轮子。找辆自行车,就快了很多。还嫌不够快,再换电瓶车,再换汽车,再换高铁...反正你可以选择的很多。但是,这些让你跑的快的东西,多数不是你自己造的,是别人造好了,你来用。甚至两条腿也是感谢父母恩赐。正是因为轮子多,可以选择的多,就可以以各种不同速度享受了。 - -轮子是人类伟大的发明。 - -Python就是这样,有各种轮子,我们只需要用。只不过那些轮子在Python里面的名字不叫自行车、汽车,叫做“模块”或者“库”,有人承接别的语言的名称,叫做“类库”、“类”。不管叫什么名字吧。就是别人造好的东西我们拿过来使用。 - -怎么用?可以通过两种形式用: - -- 形式1:import module-name。import后面跟空格,然后是模块名称,例如:import os -- 形式2:from module1 import module11。module1是一个大模块,里面还有子模块module11,只想用module11,就这么写了。 - -不啰嗦了,实验一个: - - >>> from __future__ import division - >>> 5 / 2 - 2.5 - >>> 9 / 2 - 4.5 - >>> 9.0 / 2 - 4.5 - >>> 9 / 2.0 - 4.5 - -注意了,引用了一个模块之后,再做除法,就不管什么情况,都是得到浮点数的结果了。 - -当然,上述做法是在Python 2中,因为Python 3中天然如此了,没有必要再为此而`from __future__ import division`。 - -这就是轮子的力量。 - -除法的组成有除数、被除数、商和余数,余数也可以单独计算。 - -##余数 - -计算`5/2`,商是2,余数是1。 - -余数怎么得到?在Python中(其实大多数语言也都是),用`%`符号来取得两个数相除的余数. - -操作如下,不论Python 2还是Python 3: - - >>> 5 % 2 - 1 - >>> 6 % 4 - 2 - >>> 5.0 % 2 - 1.0 - -符号:%,就是要得到两个数(可以是整数,也可以是浮点数)相除的余数。 - -Python不枯燥,因为她多变。 - -除了使用`%`求余数,还有内建函数`divmod()`——返回的是商和余数。 - - >>> divmod(5, 2) #表示5除以2,返回了商和余数 - (2, 1) - >>> divmod(9, 2) - (4, 1) - >>> divmod(5.0, 2) - (2.0, 1.0) - -同样是不区分版本。 - -##四舍五入 - -最后一个了,一定要坚持,的确有点啰嗦了。 - -要实现四舍五入,很简单,就是内建函数:`round()` - -动手试试: - - >>> round(1.234567, 2) - 1.23 - >>> round(1.234567, 3) - 1.235 - >>> round(10.0/3, 4) - 3.3333 - -如何理解`round()`内建函数的使用?要建立一个好习惯,并且掌握这个好方法: - - >>> help(round) - Help on built-in function round in module builtins: - - round(...) - round(number[, ndigits]) -> number - - Round a number to a given precision in decimal digits (default 0 digits). - This returns an int when called with one argument, otherwise the - same type as the number. ndigits may be negative. - -应该能读懂,我相信你。 - -简单吧。越简单的时候,越要小心,当你遇到下面的情况,就有点怀疑了: - - >>> round(1.2345, 3) - 1.234 #应该是:1.235 - >>> round(2.235, 2) - 2.23 #应该是:2.24 - -哈哈,发现了Python的一个bug,太激动了。 - -别那么激动,如果真的是bug,这么明显,是轮不到我的。为什么?具体解释看这里,下面摘录官方文档中的一段话: - ->**Note:** ->The behavior of round() for floats can be surprising: for example, round(2.675, 2) gives 2.67 instead of the expected 2.68. This is not a bug: it’s a result of the fact that most decimal fractions can’t be represented exactly as a float. See [Floating Point Arithmetic: Issues and Limitations](https://docs.python.org/2/tutorial/floatingpoint.html#tut-fp-issues) for more information. - -原来真的轮不到我。归根到底还是浮点数中的十进制转化为二进制惹的祸。 - -似乎除法的问题到此要结束了,其实远远没有,不过,做为初学者,至此即可。还留下了很多话题,比如如何处理循环小数问题,我肯定不会让有探索精神的朋友失望的,在我的github中有这样一个轮子,如果要深入研究,[可以来这里尝试](https://github.com/qiwsir/algorithm/blob/master/divide.py)。 - -对于计算,远不止这些,还有一个更好用的工具——math。 - ------- - -[总目录](./index.md)   |   [上节:数和四则运算](./102.md)   |   [下节:Math模块和运算优先级](./104.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/104.md b/104.md deleted file mode 100644 index 95e6198..0000000 --- a/104.md +++ /dev/null @@ -1,188 +0,0 @@ ->He has told you, O mortal, what is good; ->and what does the LORD require of you ->but to do justice, and to love kindness, ->and to walk humbly with your God?(MICAH 6:8) - ->世人哪,耶和华已指示你何为善, ->他向你所要的是什么呢? ->只要你行公义,好怜悯, ->存谦卑的心,与你的神同行。 - -#常用数学函数和运算优先级 - -数学运算,不仅仅是加减乘除——四则运算是小学数学——还有其它更多的运算,比如乘方、开方、对数运算等等,要实现这些运算,需要用到Python中的一个模块:Math - ->模块(module)是Python中非常重要的东西,你可以把它理解为Python的扩展工具。换言之,Python默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践的需要,于是就有人专门制作了另外一些工具。这些工具被称之为“模块”(module)或者“库”(library)。 ->任何一个pythoner都可以编写模块,并且把这些模块放到网上供他人来使用。 ->当安装好Python之后,就有一些模块(库)默认安装了,这个称之为“标准库”,可以直接使用。 ->如果没有纳入标准库,需要安装之后才能使用。安装方法,特别推荐使用pip来安装。 - -##使用math - -math是标准库之一,所以不用安装,可以直接使用。使用方法是: - - >>> import math - -不管Python 2还是Python 3,此法通用。 - -用import就将math引入到当前环境,下面就可以使用它提供的工具了。比如,要得到圆周率: - - >>> math.pi - 3.141592653589793 - -这个模块都能做哪些事情呢?可以用下面的方法看到: - - >>> dir(math) - ['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc'] - -`dir(module)`是一个非常有用的指令,可以通过它查看任何模块中所包含的工具。从上面的列表中就可以看出,在math模块中,可以计算正sin(a),cos(a),sqrt(a)...... - -这些我们称之为函数,也有人叫方法,先不计较名字。总之如果通过math,使用其中提供的方法(函数),能够做很多运算。 - -但,怎么知道每个函数如何使用? - -`help()`是好帮手。 - -Python是一个非常周到的姑娘,让我们来查看每个函数(方法)的使用方法。 - - >>> help(math.pow) - -不论是Python 2还是Python 3,在交互模式下输入上面的指令,然后回车,看到下面的信息: - - Help on built-in function pow in module math: - - pow(...) - pow(x, y) - - Return x**y (x to the power of y). - -这里展示了math中的pow函数的使用方法和相关说明。 - -1. `pow(x, y)`:表示这个函数的参数,有两个,也是函数的调用方式 -2. `Return x**y (x to the power of y)`:是对函数的说明,返回`x**y`的结果,并且在后面解释了`x**y`的含义。 - -从上面看到了一个额外的信息,就是pow函数和`x**y`是等效的,都是计算x的y次方。 - - >>> 4 ** 2 - 16 - >>> math.pow(4, 2) - 16.0 - >>> 4 * 2 - 8 - -特别注意,`4**2`和`4*2`是有很大区别的。 - -用类似的方法,可以查看math中的任何一个函数的使用方法。 - -下面是几个常用函数举例,可以结合自己调试的进行比照。 - - >>> math.sqrt(9) - 3.0 - >>> math.floor(3.14) - 3.0 - >>> math.floor(3.92) - 3.0 - >>> math.fabs(-2) #等价于abs(-2) - 2.0 - >>> abs(-2) - 2 - >>> math.fmod(5,3) #等价于5%3 - 2.0 - >>> 5%3 - 2 - -使用math里的函数,已经能完成大多数基础数学的运算了。Python还嫌不够方便,还提供了几个常见的内建函数,用以数学运算。 - -##常见函数 - -列举出几个常见函数。 - -重要声明,如果记不住这些函数也不要紧,先混个脸熟,知道有这些就好了,用的时候再google。 - -依然是Python 2和Python 3都适用。 - -**求绝对值** - - >>> abs(10) - 10 - >>> abs(-10) - 10 - >>> abs(-1.2) - 1.2 - -**四舍五入** - - >>> round(1.234) - 1.0 - >>> round(1.234,2) - 1.23 - -随时复习。 - -还记得如何了解内建函数的用法吗? - - >>> help(round) - - Help on built-in function round in module __builtin__: - - round(...) - round(number[, ndigits]) -> floating point number - - Round a number to a given precision in decimal digits (default 0 digits). - This always returns a floating point number. Precision may be negative. - -这么多函数,再加上加减乘除,支持数学运算的的确不少。数学的混合运算,就是把这些东西放到一个表达式,这时候大家就要区分一下,谁走先?谁最后? - -这就是运算优先级。 - -但不是“领导先走”。 - -##运算优先级 - -从小学数学开始,就研究运算优先级的问题,比如四则运算中“先乘除,后加减”,说明乘法、除法的优先级要高于加减。 - -对于同一级别的,就按照“从左到右”的顺序进行计算。 - -下面的表格中列出了Python中的各种运算的优先级顺序。不过,就一般情况而言,不需要记忆,完全可以按照数学中的去理解,因为人类既然已经发明了数学,在计算机中进行的运算就不需要从新编写一套新规范了,只需要符合数学中的即可。 - -|运算符|描述| -|------|----| -|lambda|Lambda表达式| -|or|布尔“或”| -|and|布尔“与”| -|not x|布尔“非”| -|in,not in|成员测试| -|is,is not|同一性测试| -|<,<=,>,>=,!=,==|比较| -|\||按位或| -|^|按位异或| -|&|按位与| -|<<,>>|移位| -|+,-|加法与减法| -|*,/,%|乘法、除法与取余| -|+x,-x|正负号| -|~x|按位翻转| -|**|指数| -|x.attribute|属性参考| -|x[index]|下标| -|x[index:index]|寻址段| -|f(arguments...)|函数调用| -|(experession,...)|绑定或元组显示| -|[expression,...]|列表显示| -|{key:datum,...}|字典显示| -|'expression,...'|字符串转换| - -上面的表格将Python中用到的与运算符有关的都列出来了,是按照**从低到高**的顺序列出的。虽然有很多还不知道是怎么回事,不过先列出来,等以后用到了,还可以回来查看。 - -最后,要提及的是运算中的绝杀:括号。只要有括号,就先计算括号里面的。这是数学中的共识,无需解释。并且,恰当使用括号,可以让你的表达式更具有可读性。 - -在程序中,可读性是非常重要的。 - -“程序”,接下来就要开始写了。 - ------- - -[总目录](./index.md)   |   [上节:除法](./103.md)   |   [下节:写一个简单的程序](./105.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - diff --git a/105.md b/105.md deleted file mode 100644 index c17556f..0000000 --- a/105.md +++ /dev/null @@ -1,217 +0,0 @@ ->You are the light of the world. A city located on a hill cannot be hidden. People do not light a lamp and put it under a basket but on a lampstand, and it gives light to all in the house. In te same way, let your light shine before people, so that they can see your good deeds and give honor to your Father in heaven.(Matthew 5:14-16) - ->你们是世上的光。城造在山上,是不能隐藏的。人点灯,不放在斗底下,是放在灯台上,就照亮一家的人。你们的光也当这样照在人前,叫他们看见你们的好行为,便将荣耀归给你们在天上的父。 - -#一个简单的程序 - -学会了四则运算,就可以编程序。 - -这不是开玩笑,是真的。虽然是简单的程序。 - -这里说的程序当然不是在交互模式中敲出的几个命令,然后看到结果。那不算编程。 - -也不要担心学习的东西少而不能编程,因为编程没有那么难。只要你有胆量、有毅力,就一定能写出优秀的程序。 - -稍安勿躁,下面就开始编写一个真正的但是简单程序。 - -##程序 - -什么是程序,自维基百科记载: - -[computer program and source code](http://en.wikipedia.org/wiki/Computer_program)(看不懂,很要紧,务必学习好英语,这是你认识世界工具——某国是世界一部分。想当初孙策临终前告诉孙权“外事不明学英语,内事不明学英语”,孙权谨记,才有曹孟德慨叹“生子当如孙仲谋”,因为曹丕和曹植,只学中文,不学英文,虽然这兄弟俩的诗词歌赋很有成就)。 - ->A computer program, or just a program, is a sequence of instructions, written to perform a specified task with a computer.[1] A computer requires programs to function, typically executing the program's instructions in a central processor.[2] The program has an executable form that the computer can use directly to execute the instructions. The same program in its human-readable source code form, from which executable programs are derived (e.g., compiled), enables a programmer to study and develop its algorithms. A collection of computer programs and related data is referred to as the software. - ->Computer source code is typically written by computer programmers.[3] Source code is written in a programming language that usually follows one of two main paradigms: imperative or declarative programming. Source code may be converted into an executable file (sometimes called an executable program or a binary) by a compiler and later executed by a central processing unit. Alternatively, computer programs may be executed with the aid of an interpreter, or may be embedded directly into hardware. - ->Computer programs may be ranked along functional lines: system software and application software. Two or more computer programs may run simultaneously on one computer from the perspective of the user, this process being known as multitasking. - -维基百科上还记载这一段中文:[计算机程序](http://zh.wikipedia.org/wiki/%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A8%8B%E5%BA%8F) - ->计算机程序(Computer Program)是指一组指示计算机或其他具有信息处理能力装置每一步动作的指令,通常用某种程序设计语言编写,运行于某种目标体系结构上。打个比方,一个程序就像一个用汉语(程序设计语言)写下的红烧肉菜谱(程序),用于指导懂汉语和烹饪手法的人(体系结构)来做这个菜。 - ->通常,计算机程序要经过编译和链接而成为一种人们不易看清而计算机可解读的格式,然后运行。未经编译就可运行的程序,通常称之为脚本程序(script)。 - -程序,简而言之,就是指令的集合。但是,有的程序需要编译,有的不需要。Python编写的程序就不需要单独做编译操作(对人而言,不需要执行这个命令),因此她也被称之为解释性语言。但是,这种称呼容易产生误解。 - -在有的程序员头脑中,有一种认为“编译型语言比解释性语言高价”的认识。 - -这是错误的。 - -学完Python,你就知晓。 - -不争论。用得妙就是好。 - -##用IDLE的编程 - -能够写Python程序的工具很多,比如记事本就可以。当然,很多人总希望能用一个专门的编程工具,Python里面自带了一个,作为简单应用是足够了。另外,可以根据自己的喜好用其它的工具,比如我用的是vim,有不少人也用eclipse,还有notepad++,等等。软件领域为编程提供了丰富多彩的工具。 - -以Python默认的IDLE为例,如下所示: - -操作:File->New window - -![](./1images/10501.png) - -这样,就出现了一个新的操作界面,在这个界面里面,看不到用于输入指令的提示符:>>>,这个界面有点像记事本。说对了,本质上就是一个记事本,只能输入文本,不能直接在里面贴图片。 - -![](./1images/10502.png) - -##写两个大字:Hello,World - -Hello,World.是面向世界的标志,所以,写任何程序,第一句一定要写这个,因为程序员是面向世界的,绝对不畏缩在某个局域网内,所以,所以要会科学上网,才能真正与世界Hello。 - -直接上代码,就这么一行即可。 - - print "Hello,World" - -如下图的样式 - -![](./1images/10503.png) - -前面说过了,程序就是指令的集合,现在,这个程序里面,就一条指令。一条指令也可以成为集合。 - -注意观察,菜单上有一个RUN,点击这个菜单,在下拉列表里面选择Run Module。 - -![](./1images/10504.png) - -会弹出对话框,要求把这个文件保存,这就比较简单了,保存到一个位置,一定要记住这个位置,并且取个文件名,文件名是以.py为扩展名的。 - -都做好之后,点击确定按钮,就会发现在另外一个带有`>>>`的界面中,就自动出来了Hello,World两个大字。 - -成功了吗?成功了也别兴奋,因为还没有到庆祝的时候。 - -在这种情况系,我们依然是在IDLE的环境中实现了刚才那段程序的自动执行,如果脱离这个环境呢? - -下面就关闭IDLE,打开shell(如果看官在使用苹果的 Mac OS 操作系统或者某种linux发行版的操作系统,比如我使用的是ubuntu),或者打开cmd(windows操作系统的用户,特别提醒用windows的用户,使用windows不是你的错,错就错在你只会使用鼠标点来点去,而不想也不会使用命令,更不想也不会使用linux的命令,还梦想成为优秀程序员。),通过命令的方式,进入到你保存刚才的文件目录。 - -下图是我保存那个文件的地址,我把那个文件命名为105.py,并保存在一个文件夹中。 - -![](./1images/10505.png) - -然后在这个shell里面,Python 2则输入:`python 105.py`;Python 3则输入:`python3 105.py`。 - -上面这句话的含义就是告诉计算机,运行一个Python语言编写的程序,那个程序文件的名称是105.py - -我的计算机我做主。于是它给我乖乖地执行了这条命令。如下图: - -![](./1images/10506.png) - -还在沉默?可以欢呼了,德国队7:1胜巴西队(我在写这段的时候,正好世界杯),不管是德国队还是巴西队的粉丝,都可以欢呼,因为你在程序员道路上迈出了伟大的第二步(什么时候迈出的第一步?)。顺便预测一下,本届世界杯最终冠军应该是:中国队。(还有这么扯的吗?) - -##解一道题目 - -请计算:19+2*4-8/2 - -代码如下: - - #!/usr/bin/env python - #coding:utf-8 - - """ - 请计算: - 19+2*4-8/2 - """ - - a = 19 + 2 * 4 - 8 / 2 - print a # python 3: print(a) - -提醒初学者,别复制这段代码,而是要一个字一个字的敲进去。然后保存(我保存的文件名是:105-1.py)。 - -在shell或者cmd中,执行:python (文件名.py) - -执行结果如下图: - -![](./1images/10507.png) - -好像还是比较简单。 - -下面对这个简单程序进行一一解释。 - - #!/usr/bin/env python - -在Linux操作系统中,这一行是必须写的,它能够引导程序找到python的解析器,也就是说,不管你这个文件保存在什么地方,这个程序都能执行,而不用制定Python的安装路径。如果是Windows操作系统,则不必写。 - - #coding:utf-8 - -这一行是告诉Python,本程序采用的编码格式是utf-8。 - -什么是编码?什么是utf-8? - -这是一个比较复杂且有历史的问题,此处暂不讨论。只有有了上面这句话,后面的程序中才能写汉字,否则就会报错了。不管你信还是不信,都应该把程序中的这行删掉,然后运行程序,看看什么结果? - - """ - 请计算: - 19+2*4-8/2 - """ -这一行是给人看的,计算机看不懂。在Python程序中(别的编程语言也是如此),要写所谓的注释,就是对程序或者某段语句的说明文字,这些文字在计算机执行程序的时候,被计算机姑娘忽略,但是,注释又是必不可少的,正如前面说的那样,程序在大多数情况下是给人看的。注释就是帮助人理解程序的。 - -写注释的方式有两种,一种是单行注释,用`#`开头,另外一种是多行注释,用一对`'''`包裹起来。比如: - - """ - 请计算: - 19+2*4-8/2 - """ - -用`#`开头的注释,可以像下面这样来写: - - #请计算:19+2*4-8/2 - -这种注释通常写在程序中的某个位置,比如某个语句的前面或者后面。计算机也会忽略这种注释的内容,只是给人看的。以`#`开头的注释,会在后面的编程中大量使用。 - -一般在程序的开头部分,都要写点东西,主要是告诉别人这个程序是用来做什么的。 - - a = 19 + 2 * 4 - 8 / 2 - -所谓语句,就是告诉程序要做什么事情。程序就是有各种各样的语句组成的。 - -这条语句,有一个名字,叫做**赋值语句**。 - -`19+2*4-8/2`是一个表达式,要计算出一个结果,这个结果就是一个对象(又遇到了对象这个术语。在某些地方的方言中,把配偶、男女朋友也称之为对象,“对象”是一个应用很广泛的术语)。 - -`=`不要理解为数学中的等号,它的作用不是等于,而是完成赋值语句中“赋值”的功能。 - -`a`就是变量。指向了右边表达式计算结果。 - -这样就完成了一个赋值过程。 - ->语句和表达式的区别:“表达式就是某件事”,“语句是做某件事”。 - - print a - -对于Python 2,这还是一个语句,称之为print语句,就是要打印出a的值(这种说法不是非常非常严格,但是通常总这么说。按照严格的说法,是打印变量a做对应的对象的值。嫌这种说法啰嗦,就直接说打印a的值)。 - -但是对于Python 3,应该写成`print(a)`,这里的`print()`是一个函数,意思是调用这个函数,将a所指向的对象传给此函数。结果同上。 - -是不是在为看到自己写的第一个程序而欣慰呢?那么计算机是怎么完成计算过程的呢? - -##编译 - -在刚才的程序中,那些东西我们可以笼统称之为源代码,最后那个扩展名是`.py`的文件是源代码文件。Python是如何执行源代码的呢? - -![](./1images/10508.jpg) - -当运行`.py`文件的时候,Python会通过编译器,将它编译为`.pyc`文件。 - -对,你没有看错。Python中也有编译,只不过它不是你有意识单独来操作的,是你执行程序的时候自动完成的。 - -然后这个文件就在一个名为虚拟机的东西上运行,这个所谓的虚拟机是专门为Python设计的。 - -为什么要有虚拟机? - -因为有了虚拟机,使得Python可以跨平台的,也就是说你写的Python程序可以不经过修改而在不同才做系统上运行。 - -Java也不过如此。 - -如果你没有修改`.py`文件,那么每次执行这个程序的时候,就直接运行前面已经生成的`.pyc`文件,这样让执行速度就大大提升了,不是每次都要从新编译。 - -有一些不了解或者不愿意了解Python的人,总认为Python使解释型语言,每次执行程序都要从头到位一行一行解释执行,这是对Python的无知表现。如果你修改了`.py`文件,下次执行程序的时候,会自动从新编译。 - -你根本不用关心`.pyc`文件,Python总是自动完成编译过程的。而且,它的代码因为使给机器看的,你也看不懂。不过要注意的是,不要删除它,也不用重命名。 - -程序搞定,在你感到收获的时候,不要忘了,编程的路我们刚刚开始,后面还有“字符串”。 - ------- - -[总目录](./index.md)   |   [上节:常用数学函数和运算优先级](./104.md)   |   [下节:字符串(1)](./106.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/106.md b/106.md deleted file mode 100644 index d36083d..0000000 --- a/106.md +++ /dev/null @@ -1,349 +0,0 @@ ->And since they did not see fit to acknowledge God, God gave them up to a debased mind and things that should no be done. They were filled with every kind of wickedness, evil, covetousness, malice. Full of envy, murder, strife, deceit, craftiness, they are gossips, slanderers, God-haters, insolent, haughty, boastful, inventors of evil, rebellious toward parents, foolish,faithless, heartless, ruthless. They know God's decree, that those who practice such things deserve to die--yet they not only do them but even applaud others who practice them. (ROMANS 1:28-32) - -#字符串(1) - -计算机,当初是为了什么而发明的? - -计算! - -现如今,我们通常所见之范围内,都在用她做什么? - -聊天!看视频!打游戏!处理文档! - -显然,已经“忘记初心”,计算机再不是当初的计算机了,成为了“电脑”。也正是忘记初心,变成“电脑”,才成为大众的工具。而支持她作为“电脑”之用的,就是里面的软件。 - -电脑中的软件,只有少数是用来计算的,多数是不用于计算的。处理文档则是多数功能之一。 - -软件程序如何处理文档?要再看看自然语言。 - -如果对自然语言,有很多种,比如英语、法语、汉语等,这是对自然语言的分类。 - -我还有一种分类方法,固然尚未得到广泛认同,但“真理是掌握在少数人的手里”是我的信念,至少可以让自己成为“民科”。 - -来自“民科”的分类法: - -1. 语言中的两个元素(比如两个字)拼接在一起,出来一个新的元素(比如新的字),这是第一类; -2. 两个元素并排摆放在一起,只是得到这两个元素的并列显示。比如“好”和“人”,两个元素拼接在一起是“好人”,这是第二类。 - -举例:3和5拼接(就是整数求和)在一起是8,这就是第一类;如果是35,那就属于第二类。 - -只有抽象的原理才能是普适的,所以,用符号的方式概括上述分类: - -- 第一类:△ +□ = ○ -- 第二类:△ +□ = △ □ - -很放肆地下一个结论:人类的语言,离不开以上两类,不是第一类就是第二类。 - -可以鼓掌了。 - -之所以自鸣得意,是因为了解的太少。 - -##字符串 - -google,不至于让我盲目。 - -[维基百科的字符串词条](http://zh.wikipedia.org/wiki/%E5%AD%97%E7%AC%A6%E4%B8%B2)早已经有了完整的说明,这个说明是针对一种叫做“字符串”的东西而阐述的: - ->字符串(String),是由零个或多个字符组成的有限串行。一般记为s=a[1]a[2]...a[n]。 - -伟大的维基百科!它已经把我煞费苦心还自鸣得意的分类取了一个形象的名称,叫做字符串,本质上就是一串字符。 - -根据这个定义,在前面两次让一个程序员感到神奇的"Hello,World",就是一个字符串。或者说不管用英文还是中文还是别的某种文,写出来的文字都可以做为字符串对待,当然,里面的特殊符号,也是做为字符串的,比如空格等。 - -严格地说,在Python中的字符串是一种对象类型,这种类型用str表示,通常单引号`''`或者双引号`""`包裹起来。 - ->字符串和前面讲过的数字一样,都是对象的类型,或者说都是Python数据类型。当然,表示方式还是有区别的。 - - >>> "I love Python." - 'I love Python.' - >>> 'I LOVE PYTHON.' - 'I LOVE PYTHON.' - -不论使用单引号还是双引号,结果都是一样的,都是字符串。 - -Python 2的用户,可以看到: - - >>> 250 - 250 - >>> type(250) - - - >>> "250" - '250' - >>> type("250") - - -Python 3则是这样的结果: - - >>> type(250) - - >>> type("250") - - -仔细观察,同样是250,一个没有放在引号里面,一个放在了引号里面,用`type()`函数来检验一下,发现它们居然是两种不同的对象类型,前者是int类型,后者则是str类型,即字符串类型。所以,务必注意,不是所有数字都是int(or float),必须要看看,它在什么地方,如果在引号里面,就是字符串了。如果搞不清楚是什么类型,就让`type()`来帮忙搞定。 - -操练一下字符串吧。 - -先看Python 2下的操作 - - >>> print "good good study, day day up" - good good study, day day up - >>> print "----good---study---day----up" - ----good---study---day----up - -在`print`后面,打印的都是字符串。注意,是双引号里面的,引号不是字符串的组成部分。它是在告诉计算机,它里面包裹着的是一个字符串。 - -在Python 3中,区别就是`print()`是一个函数了。 - - >>> print("good good study, day day up") - good good study, day day up - -爱思考,有惊喜;多尝试,有收获。 - -如果把下面这句话看做一个字符串,应该怎么做? - - What's your name? - -这个问题非常好,因为在这句话中有一个单引号,如果直接在交互模式中像上面那样输入,就会这样: - - >>> 'What's your name?' - File "", line 1 - 'What's your name?' - ^ - SyntaxError: invalid syntax - -出现了`SyntaxError`(语法错误)引导的提示,这是在告诉我们这里存在错误,错误的类型就是`SyntaxError`,后面是对这种错误的解释“invalid syntax”(无效的语法)。特别注意,错误提示的上面,有一个^符号,直接只着一个单引号,不用多说,你也能猜测出,大概在告诉我们,可能是这里出现错误了。 - ->在python中,这一点是非常友好的,如果语句存在错误,就会将错误输出来,供程序员改正参考。当然,错误来源有时候比较复杂,需要根据经验和知识进行修改。还有一种修改错误的好办法,就是将错误提示放到google中搜索。 - -上面的错误原因是什么呢? - -仔细观察,发现那句话中事实上有三个单引号,本来一对单引号之间包裹的是一个字符串,现在出现了三个(一对半)单引号,computer姑娘迷茫了,她不知道单引号包裹的到底是谁。于是报错。 - -有解吗?有!必须有。 - -**解决方法一:**双引号包裹单引号 - - >>> "What's your name?" - "What's your name?" - -用双引号来包裹,双引号里面允许出现单引号。其实,反过来,单引号里面也可以包裹双引号。这个可以笼统地成为二者的嵌套。 - -**解决方法二:**使用转义符 - -所谓转义,就是让某个符号不再表示某个含义,而是表示另外一个含义。转义符的作用就是它能够转变符号的含义。在Python中,用`\`作为转义符(其实很多语言,只要有转义符的,都是用这个符号)。 - - >>> 'What\'s your name?' - "What's your name?" - -是不是看到转义符`\`的作用了。 - -本来单引号表示包括字符串,它不是字符串一部分,但是如果前面有转义符,那么它就失去了原来的含义,转化为字符串的一部分,相当于一个特殊字符了。 - -变量能不能指向某个字符串?如果可以则操作会更简单。 - -##变量和字符串 - -曾记否:**变量无类型,对象有类型**。比如在数字中: - - >>> a = 5 - >>> a - 5 - -其本质含义是变量a相当于一个标签,贴在了对象5上面。并且我们把这个语句叫做赋值语句。 - -整数是对象,通过赋值语句可以设置一个变量指向整数; - -字符串是对象,显然也能够通过赋值语句,实现变量指向字符串。 - -所以字符串对象与某个变量联系在一起: - - >>> b = "hello,world" - >>> b - 'hello,world' - >>> print b #Python 2 - hello,world - #>>> print(b) #Python 3 - #hello,world - -检查类型的函数`type()`总是在我们需要的时候被想起来。 - - #Python 2 - >>> type(a) - - >>> type(b) - - - #Python 3 - >>> type(a) - - >>> type(b) - - -有一种说法:a称之为数字型变量,b叫做字符(串)型变量。 - -这种说法,在某些语言中是成立的。某些语言,需要提前声明变量,然后变量就成为了一个筐,将值装到这个筐里面。 - -但是,Python不是这样的。要注意区别。 - -小学语文老师布置这样一个题目:请用“不约而同”造句。 - -一小朋友回答: - -我问姐姐,“约吗?”,姐姐说,不约儿童。 - -上面这句话,就是多个字符串连接到了一起。所以,字符串是可以连接起来的。 - -##连接字符串 - -对数字,用`+`,可以得到一个新的数字,如:`3+5`,就得到了`8`。那么对字符串都能进行什么样的操作呢?试试吧: - - >>> "py" + "thon" - 'python' - -两个字符串可以“相加”,但与数字“相加”不同。实质上是把两个字符串连接起来。 - - >>> "py" - "thon" # 在进行这种操作的时候,要斟酌一下其意义? - Traceback (most recent call last): - File "", line 1, in - TypeError: unsupported operand type(s) for -: 'str' and 'str' - -用`+`号实现连接,的确比较简单,不过,有时候你会遇到这样的问题: - - >>> a = 1989 - >>> b = "free" - >>> print b+a # Python 2的写法,如果是Python 3,请使用print(b + a) - Traceback (most recent call last): - File "", line 1, in - TypeError: cannot concatenate 'str' and 'int' objects - -报错了,其错误原因已经打印出来(一定要注意看打印出来的信息):`cannot concatenate 'str' and 'int' objects`。原来`a`对应的对象是一个`int`类型的,不能将它和`str`对象连接起来。如果是Python 3,报错信息是`TypeError: unsupported operand type(s) for +: 'int' and 'str'`。 - -怎么办? - -原来,用`+`所连接的两个对象,必须是同一种类型。如果是不同类型的,则"cannot concatenate"或者"unsupported"。 - -如果两个都是数字,毫无疑问是正确的,就是求和;如果都是字符串,那么就得到一个新的字符串。 - -修改上面的错误,可以通过以下方法: - - >>> print b + `a` - free1989 - -注意,上面的代码,不要使用在Python 3中。 - -在Pytohn 2中,也要注意,一不小心就会犯错误。包裹着字母`a`的,不是单引号,是键盘中通常在数字1左边的那个,在英文半角状态下输入的符号——叫做“反引号”。 - -这种方法,在编程实践中比较少应用,特别是在python 3中,已经把这种方式弃绝了。窃以为原因就是这个符号太容易和单引号混淆了。在编程中,也不容易看出来,可读性太差。 - -常言道,“困难只有一个,解决困难的方法不止一种”,既然反引号可读性不好,在编程实践中就尽量不要使用。于是乎就有了下面的方法,这是被广泛采用的。不但简单,更主要是直白,一看就懂什么意思了。 - - >>> print b + str(a) # 如果是Python 3,请使用print(b + str(a)) - free1989 - -用`str(a)`实现将整数对象转换为字符串对象。虽然`str`是一种对象类型,但是它也能够实现对象类型的转换——`str()`是函数,关于函数,后面会详述。其实前面已经遇到过`int()`了。比如: - - >>> a = "250" - >>> type(a) - # 对于Pytohn 3,返回值略有差异,前面已经演示过了。 - >>> b = int(a) - >>> b - 250 - >>> type(b) - - ->提醒列位,如果你对int和str比较好奇,可以在交互模式中,使用`help(int)`,`help(str)`查阅相关的更多资料。或许看不懂,不用担心,权当混个脸熟。 - -还有第三种: - - >>> print b + repr(a) # 这是Python 2的写法,Python 3则为:>>> print(b + repr(a)) - free1989 - -这里repr()是一个函数,其实就是反引号的替代品,它能够把结果字符串转化为合法的Python表达式。 - -三种解决方法,有区别吗? - -首先,repr()和反引号是一致的(Python 3弃绝了反引号的使用),就不用区别了。 - -然后区分repr()和str,不用消耗脑细胞,交给Google,查询到这样的描述: - ->1. When should i use str() and when should i use repr() ? -> ->Almost always use str when creating output for end users. -> ->repr is mainly useful for debugging and exploring. For example, if you suspect a string has non printing characters in it, or a float has a small rounding error, repr will show you; str may not. -> ->repr can also be useful for for generating literals to paste into your source code. It can also be used for persistence (with ast.literal_eval or eval), but this is rarely a good idea--if you want editable persisted values, something like JSON or YAML is much better, and if you don't plan to edit them, use pickle. - ->2.In which cases i can use either of them ? -> ->Well, you can use them almost anywhere. You shouldn't generally use them except as described above. - ->3.What can str() do which repr() can't ? -> ->Give you output fit for end-user consumption--not always (e.g., str(['spam', 'eggs']) isn't likely to be anything you want to put in a GUI), but more often than repr. -> ->4.What can repr() do which str() can't -> ->Give you output that's useful for debugging--again, not always (the default for instances of user-created classes is rarely helpful), but whenever possible. -> ->And sometimes give you output that's a valid Python literal or other expression--but you rarely want to rely on that except for interactive exploration. - -以上英文内容来源:http://stackoverflow.com/questions/19331404/str-vs-repr-functions-in-python-2-7-5 - -字符串中的困难,不仅在上面所述,还有更多,例如“转义符”,不少错误可能与此有关。 - -##Python转义字符 - -转义符,已经小试牛刀,便显威力——`What's your name?`。 - -在字符串中,总会有一些特殊的符号,就需要用转义符。所谓转义,就是不采用符号本来的含义,而采用另外一含义。下面表格中列出常用的转义符: - -|转义字符 | 描述 | -|----------|-------| -| \ | (在行尾时) 续行符 | -| \\ | 反斜杠符号 | -| \' | 单引号 | -| \" | 双引号 | -| \a | 响铃 | -| \b | 退格(Backspace) | -| \e | 转义 | -| \000 | 空 | -| \n | 换行 | -| \v | 纵向制表符 | -| \t | 横向制表符 | -| \r | 回车 | -| \f | 换页 | -| \oyy | 八进制数,yy代表的字符,例如:\o12代表换行| -| \xyy | 十六进制数,yy代表的字符,例如:\x0a代表换行| -| \other | 其它的字符以普通格式输出 | - -以上所有转义符,都可以通过交互模式下`print`来测试,感受实际上是什么样子的。例如: - -Python 2: - - >>> print "hello.I am qiwsir.\ #这里换行,下一行接续 - ... My website is 'http://qiwsir.github.io'." - hello.I am qiwsir.My website is 'http://qiwsir.github.io'. - - >>> print "you can connect me by qq\\weibo\\gmail" #\\是为了要后面那个\ - you can connect me by qq\weibo\gmail - -Python 3: - - >>> print("hello.I am qiwsir.\ - My website is 'http://qiwsir.github.io'.") - hello.I am qiwsir.My website is 'http://qiwsir.github.io'. - - >>> print("you can connect me by qq\\weibo\\gmail") - you can connect me by qq\weibo\gmail - -自己动手,丰衣足食,试试吧。 - -`print`或者`print()`解决了显示问题,但是输入怎么办?这就需要`raw_input()`或者`input()`粉墨登场了。 - ------- - -[总目录](./index.md)   |   [上节:写一个简单的程序](./105.md)   |   [下节:字符串(2)](./107.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/107.md b/107.md deleted file mode 100644 index 7bdcf96..0000000 --- a/107.md +++ /dev/null @@ -1,196 +0,0 @@ -#字符串(2) - -##键盘输入 - -电脑的智能,一种体现就是可以接受用户通过键盘输入的内容。 - -通过Python能不能实现这个简单的功能呢?当然能,要不然Python如何横行天下呀。 - -不过在写这个功能前,要了解函数: - -- Python 2:`raw_input()` -- Python 3: `input()` - -这是Python的内建函数(built-in function)。关于内建函数,可以分别通过下面的链接查看: - -- [Python 2的内建函数](https://docs.python.org/2/library/functions.html) -- [Python 3的内建函数](https://docs.python.org/3.5/library/functions.html) - -如果仔细对照上面的两个版本的内建函数,会发现还是有差异的。 - -这些内建函数,怎么才能知道哪个函数怎么用,是干什么用的呢? - -一种方法是通过网页上的官方内容,点击链接,就能查看该函数的说明文档。 - -还有一种方法,不知道你是否还记得我在前面使用过的,这里再进行演示。 - - >>> help(raw_input) #Python 2 - - >>> help(input) #Python 3 - -然后就出现, - -Python 2中的结果: - - Help on built-in function raw_input in module __builtin__: - - raw_input(...) - raw_input([prompt]) -> string - - Read a string from standard input. The trailing newline is stripped. - If the user hits EOF (Unix: Ctl-D, Windows: Ctl-Z+Return), raise EOFError. - On Unix, GNU readline is used if enabled. The prompt string, if given, - is printed without a trailing newline before reading. - -Python 3中的结果: - - Help on built-in function input in module builtins: - - input(prompt=None, /) - Read a string from standard input. The trailing newline is stripped. - - The prompt string, if given, is printed to standard output without a - trailing newline before reading input. - - If the user hits EOF (*nix: Ctrl-D, Windows: Ctrl-Z+Return), raise EOFError. - On *nix systems, readline is used if available. - -从中是不是已经清晰地看到了`raw_input()`或者`input()`的使用方法了。 - -下面就在交互模式下操练一下这个主管键盘输入的函数。 - -分别在交互模式下,将这个两个函数操练一下。 - - >>> raw_input("input your name:") # Python 2 - input your name:python #提示输入内容,通过键盘输入`python` - 'python' - - >>> input("input your name:") #Python 3 - input your name:python #提示输入内容,通过键盘输入`python` - 'python' - -输入名字之后,就返回了输入的内容。 - -返回的结果,也是一个对象(字符串类型的对象),那么就可以用赋值语句,与一个变量关联起来。 - - >>> name = raw_input("input your name:") #Python 2 - input your name:python - >>> name - 'python' - >>> type(name) - - - >>> name = input("input your name:") #Python 3 - input your name:python - >>> name - 'python' - >>> type(name) - - -而且,返回的结果是str类型。如果输入的是数字呢? - - >>> age = raw_input("How old are you?") #Python 2 - How old are you?10 - >>> age - '10' - >>> type(age) - - - >>> age = input("How old are you?") #Python 2 - How old are you?10 - >>> age - '10' - >>> type(age) - - -返回的结果,仍然是str类型。 - -所以,Python 2的文档中就明确写出`raw_input([prompt]) -> string`,意思是它的返回值为字符串。 - -`print()`在Python 2和Python 3中,都是一个函数。 - -特别要提醒的是,`print()`默认是以`\n`结尾的,所以,每次用到`print`或者`print()`之后,输出内容后面自动带上了`\n`,于是在打印的结果中就换行了。 - -有了以上两个准备,接下来就可以写一个能够“对话”的小程序了。 - - #!/usr/bin/env python - # coding=utf-8 - - name = raw_input("What is your name?") #如果是在Python 3中,更换为input() - age = raw_input("How old are you?") - - print "Your name is: ", name #Python 3: print("Your name is: ", name) - print "You are " + age + " years old." #Python 3: print("You are " + age + " years old.") - - after_ten = int(age) + 10 - print "You will be " + str(after_ten) + " years old after ten years." - #Python 3: print("You will be " + str(after_ten) + " years old after ten years.") - -读者是否能独立调试这个程序? - -`print`语句或者`print()`函数,除了打印一个字符串之外,还可以打印字符串拼接结果(拼接之后还是一个字符串,就是比原来长了)。 - - print "You are " + age + " years old." #Python 2 - print("You are " + age + " years old.") #Python 3 - -注意,那个变量`age`必须指向的是字符串类型的对象,如最后的那个语句中: - - print "You will be " + str(after_ten) + " years old after ten years." #Python 2 - print("You will be " + str(after_ten) + " years old after ten years.") #Python 3 - -这句话里面,有一个类型转化,将原本是整数型的对象转化为了str类型。否则,就报错,不信,你可以试试。 - -同样注意,在`after_ten = int(age) + 10`中,因为通过`raw_input()`或者`input()`得到的是str类型,当age和10求和的时候,需要先用`int()`函数进行类型转化,才能和后面的整数10相加。 - -这个小程序,是有点综合的,基本上把已经学到的东西综合运用了一次。请仔细调试一下,如果没有通过,看报错信息,你能够从中获得修改方向的信息。 - -通过键盘输入得到的都是字符串,也有的字符串不是通过键盘输入得到的,需要用引号包裹,有时候还要用转义符。但是,有一种方式,能够还原字符串中字符的原始含义。 - -##原始字符串 - -所谓原始字符串,就是指字符串里面的每个字符都是原始含义,比如反斜杠,不会被看做转义符。 - -在一般字符串中,比如 - - >>> print "I like \npython" #Python 3: print("I like \npython") - I like - python - -这里的反斜杠就不是“反斜杠”的原始符号含义,而是和后面的n一起组成了换行符`\n`,即转义了。当然,这似乎没有什么太大影响,但有的时候,可能会出现问题,比如打印DOS路径(DOS,有没有搞错,现在还有人用吗?) - - >>> dos = "c:\news" - >>> dos - 'c:\news' #这里貌似没有什么问题 - >>> print dos #当用print来打印这个字符串的时候,就出问题了。 - c: - ews - #Python 3: print(dos) - -如何避免? - -用转义符可以解决: - - >>> dos = "c:\\news" - >>> print dos #Python 3: print(dos) - c:\news - -此外,还有一种方法,如: - - >>> dos = r"c:\news" - >>> print dos #Python 3: print(dos) - c:\news - >>> print r"c:\news\python" #Python 3: print(r"c:\news\python") - c:\news\python - -状如`r"c:\news"`,由r开头引起的字符串,就是原始字符串,在里面放任何字符都表示该字符的原始含义。 - -这种方法在做网站设置网站目录结构的时候非常有用。使用了原始字符串,就不需要转义了。 - -一个字符串,一般可以有多个字符构成,那么可以操作每个字符吗?这就要索引和切片。 - ------- - -[总目录](./index.md)   |   [上节:字符串(1)](./106.md)   |   [下节:字符串(3)](./108.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - diff --git a/108.md b/108.md deleted file mode 100644 index 170bd7f..0000000 --- a/108.md +++ /dev/null @@ -1,275 +0,0 @@ ->你们又听见有吩咐古人的话,说:“不可背誓,所起的誓,总要向主谨守”。只是我告诉你们,什么誓都不可起,不可指着天起誓,因为天是神的座位。不可指着地起誓,因为地是他的脚蹬,也不可指着耶路撒冷起誓,因为耶路撒冷是大君的京城。又不可指着你的头起誓,因为你不能使一根头发变黑变白了。你的话,是,就说是。不是,就说不是。若再多说,就是出于那恶者。(Matthew 5:33-37) - -#字符串(3) - -字符串是一个话题中心,还要再继续。 - -例如这样一个字符串`python`,还记得前面对字符串的定义吗?它就是字符:p,y,t,h,o,n,排列起来。这种排列是非常严格的,不仅仅是字符本身,而且还有顺序,换言之,如果某个字符换了,就变成一个新字符串了;如果这些字符顺序发生变化了,也成为了一个新字符串。 - -在Python中,把像字符串这样的对象类型(后面还会冒出来类似的其它有这种特点的对象类型,比如列表),统称为序列。 - -顾名思义,序列就是“有序排列”。 - -比如水泊梁山的108个好汉(里面分明也有女的,难道女汉子是从这里来的吗?),就是一个“有序排列”的序列。从老大宋江一直排到第108位金毛犬段景住。在这个序列中,每个人有编号,编号和每个人一一对应。1号是宋江,2号是卢俊义。反过来,通过每个人的姓名,也能找出他对应的编号。武松是多少号?14号。李逵呢?22号。 - -在Python中,给这些编号取了一个文雅的名字,叫做**索引**(别的编程语言也这么称呼,不是Python独有的。)。 - -##索引和切片 - -梁山好汉,从1排到108,就是索引。 - -再看Python的字符串: - - >>> lang = "study python" - >>> lang[0] - 's' - >>> lang[1] - 't' - -有一个字符串,要得到这个字符串的第一个单词`s`,可以用`lang[0]`。当然,如果你不愿意让变量lang来指向那个字符串,也可以这样做: - - >>> "study python"[0] - 's' - -效果是一样的。因为lang是标签,就指向了`"study python"`字符串。当让执行`lang[0]`的时候,就是要转到那个字符串对象,如同上面的操作一样。只不过,如果不用lang这么一个变量,后面如果再写,就费笔墨了,要每次都把那个字符串写全了。为了省事,还是复制给一个变量吧。变量就是字符串的代表了。 - -字符串这个序列的排序方法跟梁山好汉有点不同,第一个不是用数字1表示,而是用数字0表示。不仅仅Python,其它很多语言都是从0开始排序的。为什么这样做呢?这就是规定。当然,这个规定是有一定优势的。此处不展开,有兴趣的网上去google一下,有专门对此进行解释的文章。 - -0 |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 ----|---|---|---|---|---|---|---|---|---|---|--- -s |t |u |d |y | |p |y |t |h |o |n - -上面的表格中,将这个字符串从第一个到最后一个进行了排序,特别注意,两个单词中间的那个空格,也占用了一个位置。 - -空格也是一个字符。“无”不完全等于“没有”。 - -通过索引能够找到该索引所对应的字符,那么反过来,能不能通过字符,找到其在字符串中的索引值呢?怎么找? - -用字符串的一个方法——index: - - >>> lang.index("p") - 6 - -就这样,是不是已经能够和梁山好汉的例子对上号了?但有区别,第一个的索引值是0。 - -如果某一天,宋大哥站在大石头上,向着各位弟兄大喊:“兄弟们,都排好队。”等兄弟们排好之后,宋江说:“现在给各位没有老婆的兄弟分配女朋友,我这里已经有了名单,我念到的兄弟站出来。不过我是按照序号来念的。第29号到第34号先出列,到旁边房子等候分配女朋友。” - -继续应用前述字符串,`lang[1]`能够得到字符串的第二个字符`t`,就相当于从字符串中把这个“切”出来了。不过,我们这么“切”却不影响原来字符串的完整性,当然可以理解为将那个字符`t`复制一份拿出来了。 - -那么宋江大哥没有一个一个“切”,而是一下将几个兄弟叫出来。在Python中也能做类似事情。 - - >>> lang - 'study python' #在前面“切”了若干的字符之后,再看一下该字符串,还是完整的。 - >>> lang[2:9] - 'udy pyt' - -通过`lang[2:9]`要得到多个(不是一个)字符,从返回的结果中可以看出,我们得到的是序号分别对应着`2,3,4,5,6,7,8`(跟上面的表格对应一下)字符(包括那个空格)。也就是,这种获得部分字符的方法中,能够得到开始需要的以及最后一个序号之前的所对应的字符。有点拗口,自己对照上面的表格数一数就知道了。简单说就是包括开头,不包括结尾——前包括,后不包括。 - -上述,不管是得到一个还是多个,通过索引范围得到字符的过程,称之为**切片**。 - -切片是一个很有意思的东西。可以“切”出不少花样呢? - - >>> lang - 'study python' - >>> b = lang[1:] #得到从1号到最末尾的字符,这时最后那个需要不用写 - >>> b - 'tudy python' - >>> c = lang[:] #得到所有字符 - >>> c - 'study python' - >>> d = lang[:10] #得到从第一个到10号之前的字符 - >>> d - 'study pyth' - -在获取切片的时候,如果冒号的: - -- 前面不写数字,就表示从字符串的第一个开始(包括第一个); -- 后面的序号不写,就表示到字符串的到最末一个字符结束(包括最后一个)。 - -`lang[:10]`的效果和`lang[0:10]`是一样的。 - - >>> e = lang[0:10] - >>> e - 'study pyth' - -那么,`lang[1:]`和`lang[1:11]`效果一样吗? - -请思考后作答。 - - >>> lang[1:11] - 'tudy pytho' - >>> lang[1:] - 'tudy python' - -不一样。 - -原因就是前述所说的,如果冒号后面有数字,所得到的切片,不包含该数字所对应的序号(前包括,后不包括)。那么,是不是可以这样呢?`lang[1:12]`,不包括12号(事实没有12号),是不是可以得到1到11号对应的字符呢? - - >>> lang[1:12] - 'tudy python' - >>> lang[1:13] - 'tudy python' - -果然是。并且不仅仅后面写12,写13,也能得到同样的结果。 - -但是,特别要提醒,这种获得切片的做法在编程实践中是不提倡的。特别是如果后面要用到循环的时候,这样做或许在什么时候遇到麻烦。 - -如果在切片的时候,冒号左右都不写数字,就是前面所操作的`c = lang[:]`,其结果是变量c的值与原字符串一样,也就是“复制”了一份。注意,这里的“复制”我打上了引号,意思是如同复制,是不是真的复制呢?可以用下面的方式检验一下 - - >>> id(c) - 3071934536L - >>> id(lang) - 3071934536L - -`id()`的作用就是查看该对象在内存地址(就是在内存中的位置编号)。从上面可以看出,两个的内存地址一样,说明c和lang两个变量指向的是同一个对象。用`c=lang[:]`的方式,并没有生成一个新的字符串,而是将变量c这个标签也贴在了原来那个字符串上了。 - - >>> lang = "study python" - >>> c = lang - -如果这样操作,变量c和lang是不是指向同一个对象呢?或者两者所指向的对象内存地址如何呢?用`id()`函数查看便知。 - -字符串有索引,能得到切片。不仅如此,还有更多操作。 - -##字符串基本操作 - -字符串是一种序列,所有序列都有如下基本操作,这是序列共有的操作。 - -1. len():求序列长度 -2. + :连接2个序列 -3. * : 重复序列元素 -4. in :判断元素是否存在于序列中 -5. max() :返回最大值 -6. min() :返回最小值 -7. cmp(str1,str2) :比较2个序列值是否相同 - -逐个演示,方能理解: - -###`+` - - >>> str1 + str2 - 'abcdabcde' - >>> str1 + "-->" + str2 - 'abcd-->abcde' - -这其实就是拼接,不过在这里,看官应该有一个更大的观念,我们现在只是学了字符串这一种序列,后面还会遇到列表、元组两种序列,都能够如此实现拼接。 - -###`in` - - >>> "a" in str1 - True - >>> "de" in str1 - False - >>> "de" in str2 - True - -`in`用来判断某个字符串是不是在另外一个字符串内,或者说判断某个字符串内是否包含另外一个字符串(这个字符串被称为子字符串),如果包含,就返回`True`,否则返回`False`。 - -###最大值和最小值 - - >>> max(str1) - 'd' - >>> max(str2) - 'e' - >>> min(str1) - 'a' - -在英文字典中,所有的字母都有一个排序,我们称之为“字典顺序”。 - -而每个字符,也都通过编码对应着一个数字,它们都会有一定的顺序。`min()`和`max()`就是根据这个顺序获得最小值和最大值,然后对应出相应的字符。读者可以google有关字符编码,或者ASCII编码什么的,很容易查到。 - -###比较 - - >>> cmp(str1, str2) - -1 - -将两个字符串进行比较,也是首先将字符串中的符号转化为对应编码的数字,然后比较。如果返回的数值小于零,说明第一个小于第二个;等于0,则两个相等;大于0,第一个大于第二个。为了能够明白其所以然,进入下面的分析。 - - >>> ord('a') - 97 - >>> ord('b') - 98 - >>> ord(' ') - 32 - -`ord()`是一个内建函数,能够返回某个字符(注意,是一个字符,不是多个字符组成的串)所对一个的ASCII值(是十进制的),字符a在ASCII中的值是97,空格在ASCII中也有值,是32。顺便说明,反过来,根据整数值得到相应字符,可以使用`chr()`: - - >>> chr(97) - 'a' - >>> chr(98) - 'b' - -于是,就得到如下比较结果了: - - >>> cmp("a","b") #a-->97, b-->98, 97小于98,所以a小于b - -1 - >>> cmp("abc","aaa") - 1 - >>> cmp("a","a") - 0 - -看看下面的比较,是怎么进行的呢? - - >>> cmp("ad","c") - -1 - -在字符串的比较中,是两个字符串的第一个字符先比较,如果相等,就比较下一个,如果不相等,就返回结果。直到最后,如果还相等,就返回0。位数不够时,按照没有处理(注意,没有不是0,0在ASCII中对应的是NUL),位数多的那个天然大了。`ad`中的`a`先和后面的`c`进行比较,显然`a`小于`c`,于是就返回结果`-1`。 - -如果进行下面的比较,是最容易让人迷茫的。能不能根据刚才阐述的比较理解呢? - - >>> cmp("123","23") - -1 - >>> cmp(123,23) #也可以比较整数,这时候就是整数的直接比较了。 - 1 - -如果读者阅读到这里,不知道你是否将上面的各项进行了实际操作?如果操作了,在Python 3中能成功吗? - -上面的操作只能适用于Python 2,不适用Python 3。 - -Python 3中取消了`cmp()`函数。那么在Python 3中怎么比较呢? - - >>> str1 = "abc" - >>> str1 > str2 - False - >>> str1 < str2 - True - >>> str1 == str2 - False - -用比较运算符,也可以得到比较结果。 - -###“*” - -字符串中的“乘法”,这个乘法,就是重复那个字符串的含义。在某些时候很好用的。比如我要打印一个华丽的分割线: - - >>> str1*3 - 'abcdabcdabcd' - >>> print "-"*20 #不用输入很多个`-` - -------------------- - -###len() - -要知道一个字符串有多少个字符,一种方法是从头开始,盯着屏幕数一数。哦,这不是计算机在干活,是键客在干活。 - ->键客,不是剑客。剑客是以剑为武器的侠客;而键客是以键盘为武器的侠客。当然,还有贱客,那是贱人的最高境界,贱到大侠的程度,比如岳不群之流。 - -Python用`len()`函数来获得字符串长度,不管Python 2还是Python 3。 - - >>> a = "hello" - >>> len(a) - 5 - -函数`len(object)`,得到的结果就是该字符串长度。 - - >>> m = len(a) #把结果返回后赋值给一个变量 - >>> m - 5 - >>> type(m) #这个返回值(变量)是一个整数型,Python 3中返回的结果略有差别。 - - -对于字符串,作为序列的一种,除了具有上述几种通用的基本操作之外,还有很多别的方法。 - ------- - -[总目录](./index.md)   |   [上节:字符串(2)](./107.md)   |   [下节:字符串(4)](./109.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/109.md b/109.md deleted file mode 100644 index f087176..0000000 --- a/109.md +++ /dev/null @@ -1,322 +0,0 @@ ->所以你施舍的时候,不可在你前面吹号,像那假冒为善的人,在会堂里和街道上所行的,故意要得人的荣耀。我实在告诉你们,他们已经得了他们的上次。你施舍的时候,不要叫左手知道右手所作的。要叫你施舍的事行在暗中,你父在暗中察看,必然报答你。(MATTHEW 6:2-4) - -#字符串(4) - -虽然已经对字符串有了了解,但,因为人对字符串的要求比较多,特别是在输出格式上,要满足一定的样式要求。 - -##字符串格式化输出 - -什么是格式化?在维基百科中有专门的词条,这么说的: - ->格式化是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除。 - -不知道你是否知道这种“格式化”。显然,此格式化非我们这里所说的,我们说的是字符串的格式化,或者说成“格式化字符串”,表示的意思是: - ->格式化字符串,是C、C++等程序设计语言printf类函数中用于指定输出参数的格式与相对位置的字符串参数。其中的转换说明(conversion specification)用于把随后对应的0个或多个函数参数转换为相应的格式输出;格式化字符串中转换说明以外的其它字符原样输出。 - -这也是来自维基百科的定义。在这个定义中,是用C语言作为例子,并且用了其输出函数来说明。在Python中,也有同样的操作——`print`语句(Python 2)、`print()`函数(Python 3),此前我们已经了解一二了。此处将详述之。 - -如果将维基百科的定义再通俗化,所谓字符串格式化化,就是要先制定一个模板,在这个模板中某个或者某几个地方留出空位来,然后在那些空位填上字符串,并且在显示结果中,字符串要符合空位置所设定的约束条件。 - -那么,那些空位,需要用一个符号来表示,这个符号通常被叫做占位符(仅仅是占据着那个位置,并不是输出的内容)。 - - >>> "I like %s" - 'I like %s' - -在这个字符串中,有一个符号:`%s`,就是一个占位符,这个占位符可以被其它的字符串代替。比如: - - >>> "I like %s" % "python" - 'I like python' - >>> "I like %s" % "Pascal" - 'I like Pascal' - -这是曾经较为常用的一种字符串输出方式。注意“曾经”,言下之意,现在不怎么太提倡了。 - -的确如此,现在提倡使用`.format()`,这是自Python 2.6开始引入的。所以,从现在开始,本教程详细介绍`string.format()`的使用方法,而对用`%`进行格式化输出的方式,仅仅局限在上面的样式。读者在阅读其它代码的时候,也能遇到使用`%`的,那时候你心中默默说一句“落伍了”,然后翻译成`string.format()`即可。 - -`.format()`是字符串的一个方法。你在交互模式中,输入`dir(str)`,会看到如下的内容: - - >>> dir(str) - ['__add__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'capitalize', 'casefold', 'center', 'count', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'format_map', 'index', 'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'maketrans', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] - -这里所列出来的,就是字符串`str`的所有属性和方法。 - -在这里先下一点毛毛雨。在Python中一切皆对象,所谓对象,就是一个具体东西。桌椅板凳,花花草草,动物植物,包括人,还有程序要找的那个“对象”,都是对象(不用追求严格定义,暂且模模糊糊知道大概即可,大概都不知道,也无妨),凡是对象都有属性和方法(至于属性和方法的定义,待后面说明)。刚才用`dir(str)`所返回的结果,就是字符串的属性和方法。 - -在返回结果中,别的先不看,只看`format`。有你的慧眼找一找,有没有发现? - -继续不要离开交互模式,输入: - - >>> help(str.format) - -这是要看字符串的`format()`方法的文档。只有通过阅读文档,我们才能了解它使做什么的。 - -返回结果是: - - Help on method_descriptor: - - format(...) - S.format(*args, **kwargs) -> str - - Return a formatted version of S, using substitutions from args and kwargs. - The substitutions are identified by braces ('{' and '}'). - -`S.format(*args, **kwargs)`,重点看括号里面的,`*args`表示传入一种类型的参数,`**arg`表示传入另外一种类型的参数。 - -又遇到新名词——参数——还是不用搭理它,只管继续——因为“发展是硬道理”! - -你暂且阅读文档,不理解也没关系。下面用示例来说明使用方法。 - - >>> "I like {0} and {1}".format("python", "canglaoshi") - 'I like python and canglaoshi' - -在交互模式中,输入了字符串`"I like {0} and {1}"`,并且其中用`{0}`和`{1}`占据了两个位置,它们就是占位符。然后使一个非常重要的点`.`。 - -这个点`.`非常重要,它是从对象引出它的属性或方法的工具,就如同汉语中的“的”一样。 - -比如“老齐的爱好”,“老齐”是那个对象,“爱好”就是一个方法,两者中间的那个“的”就相当于一个英文的点`.`,于是可以写成`老齐.爱好`,就可以表明上述的含义了。 - -`format("python", "canglaoshi")`是字符串格式化输出的方法,传入了两个字符串,它们分别对应这`"I like {0} and {1}"`里的那两个占位符,而且使按照顺序对应的,即第一个参数传入的`"pytohn"`,对应着`{0}`,第二参数传入的`"canglaoshi"`对应着`{1}`。 - -你还可以这样试试,就理解更深刻了。 - - >>> "I like {1} and {0}".format("python", "canglaoshi") - 'I like canglaoshi and python' - -请仔细观察找区别。 - -`format()`方法的返回值是一个字符串——`'I like python and canglaoshi'`。 - -再对照`help(str.format)`得到的文档,看一看,是不是理解文档的含义了呢? - -一定要会阅读文档,这是学习语言的根本。 - -既然是“格式化”,就要指定一些格式,让输出的结果符合指定的样式。 - - >>> "I like {0:10} and {1:>15}".format("python", "canglaoshi") - 'I like python and canglaoshi' - -现在有格式了。`{0:10}`表示第一个位置,有10个字符那么长,并且放在这个位置的字符是左对齐;`{1:>15}`表示第二个位置,有15个字符那么长,并且放在这个位置的字符是右对齐。 - - >>> "I like {0:^10} and {1:^15}".format("python", "canglaoshi") - 'I like python and canglaoshi ' - -现在是居中对齐了。 - - >>> "I like {0:.2} and {1:^10.4}".format("python", "canglaoshi") - 'I like py and cang ' - -这个有点复杂,我们一点一点的解释。 - -`{0:.2}`:`0`说明是第一个位置,对应传入的第一个字符串。`.2`表示对于传入的字符串,截取前两个,并放到第一个位置,注意的是,在`:`后面和`.`号前面,没有任何数字,意思是该位置的长度自动适应即将放到该位置的字符串。 - -`{1:^10.4}`:`1`说明是第二个位置,对应传入的第二个字符串。`^`表示放到该位置的字符串要居中;`10.4`表示该位置的长度是10个字符串那么长,但,即将放入该位置的字符串应该仅仅有4个字符那么长,也就是要从传入的字符串`"canglaoshi"`中截取前四个字符,即为`"cang"`。 - -再看结果,对照上述解释。 - -向`format()`中,除了能够传入字符串,还可以传入数字(包括整数和浮点数),而且也能有各种花样。 - - >>> "She is {0:d} years old and the breast is {1:f}cm".format(28, 90.1415926) - 'She is 28 years old and the breast is 90.141593cm' - -`{0:d}`表示在第一个位置放一个整数;`{1:f}`表示在第二个位置放一个浮点数,那么浮点数的小数位数,是默认的。下面在这个基础上,可以再做一些显示格式的优化。 - - >>> "She is {0:4d} years old and the breast is {1:6.2f}cm".format(28, 90.1415926) - 'She is 28 years old and the breast is 90.14cm' - -`{0:4d}`表示第一个位置的长度是4个字符,并且默认状态下,填充到该位置的整数是右对齐。 - -`{1:6.2f}`表示第二个位置的长度使6个字符,并且填充到该位置的浮点数要保留两位小数,默认也是右对齐。 - - >>> "She is {0:04d} years old and the breast is {1:06.2f}cm".format(28, 90.1415926) - 'She is 0028 years old and the breast is 090.14cm' - -`{0:04d}`和`{1:06.2f}`与前述例子不同的在于在声明位置长度的数字前面多了`0`,其含义是在数字前面,如果位数不足,则补`0`。 - -以上的输出方式中,我们只讨论了`format(*args, **kwargs)`中的`*args`部分。还有另外一种方式,则是与`**kwargs`有关的(关于这两种参数的含义,本教程后面有专门介绍)。 - - >>> "I like {lang} and {name}".format(lang="python", name="canglaoshi") - 'I like python and canglaoshi' - -一种被称为“字典格式化”,这里仅仅列一个例子。关于“字典”,本教程后续会有的。 - - >>> data = {"name":"Canglaoshi", "age":28} - >>> "{name} is {age}".format(**data) - 'Canglaoshi is 28' - -用`format()`做字符串格式化输出,真的很简洁,堪称优雅。 - -但`format()`毕竟只是字符串的方法之一,还有更多方法等待研究。 - -##常用的字符串方法 - -字符串的方法很多,前面已经通过`dir(str)`查看过了。 - -那么多方法,不会一一介绍,要了解某个具体的含义和使用方法,最好是使用`help()`函数查看。再举例: - - >>> help(str.isalpha) - - Help on method_descriptor: - - isalpha(...) - S.isalpha() -> bool - - Return True if all characters in S are alphabetic - and there is at least one character in S, False otherwise. - -按照这里的说明,就可以在交互模式下进行实验。 - - >>> "python".isalpha() #字符串全是字母,应该返回True - True - >>> "2python".isalpha() #字符串含非字母,返回False - False - -###根据分隔符分割字符串 - -`split()`的作用是将字符串根据某个分割符进行分割。 - - >>> a = "I LOVE PYTHON" - >>> a.split(" ") - ['I', 'LOVE', 'PYTHON'] - -这是用空格作为分割,得到了一个名字叫做列表(list)的返回值,关于列表的内容,后续会介绍。还能用别的分隔吗? - - >>> b = "www.itdiffer.com" - >>> b.split(".") - ['www', 'itdiffer', 'com'] - -###去掉字符串两头的空格 - -有的朋友喜欢输入结束的时候敲击空格,比如让他输入自己的名字,输完了,他来个空格。有的则喜欢先加一个空格,总做的输入的第一个字前面应该空两个格。 - -这些空格是没用的。 - -Python考虑到有不少人可能有这个习惯,因此就帮助程序员把这些空格去掉。 - -方法是: - -- `S.strip()`:去掉字符串的左右空格 -- `S.lstrip()`:去掉字符串的左边空格 -- `S.rstrip()`:去掉字符串的右边空格 - -例如: - - >>> b = " hello " #两边有空格 - >>> b.strip() - 'hello' - >>> b - ' hello ' - -特别注意,原来的值没有变化,而是新返回了一个结果。 - - >>> b.lstrip() #去掉左边的空格 - 'hello ' - >>> b.rstrip() #去掉右边的空格 - ' hello' - -###字符大小写的转换 - -对于英文,有时候要用到大小写转换。最有名驼峰命名,里面就有一些大写和小写的参合。如果有兴趣,可以来这里看[自动将字符串转化为驼峰命名形式的方法](https://github.com/qiwsir/algorithm/blob/master/string_to_hump.md)。 - -在Python中有下面一些字符串的方法,用来实现各种类型的大小写转化 - -- `S.upper()`:S中的字母大写 -- `S.lower()`:S中的字母小写 -- `S.capitalize()`:首字母大写 -- `S.isupper()`:S中的字母是否全是大写 -- `S.islower()`:S中的字母是否全是小写 -- `S.istitle()`:S中字符串中所有的单词拼写首字母是否为大写,且其他字母为小写(标题都这么写) - -看例子: - - >>> a = "qiwsir,python" - >>> a.upper() #将小写字母完全变成大写字母 - 'QIWSIR,PYTHON' - >>> a #原数据对象并没有改变 - 'qiwsir,python' - >>> b = a.upper() - >>> b - 'QIWSIR,PYTHON' - >>> c = b.lower() #将所有的字母变成小写字母 - >>> c - 'qiwsir,python' - - >>> a - 'qiwsir,python' - >>> a.capitalize() #把字符串的第一个字母变成大写 - 'Qiwsir,python' - >>> a #原数据对象没有改变 - 'qiwsir,python' - >>> b = a.capitalize() #新建立了一个 - >>> b - 'Qiwsir,python' - - >>> a = "qiwsir,github" - >>> a.istitle() - False - >>> a = "QIWSIR" #当全是大写的时候,返回False - >>> a.istitle() - False - >>> a = "qIWSIR" - >>> a.istitle() - False - >>> a = "Qiwsir,github" #如果这样,也返回False - >>> a.istitle() - False - >>> a = "Qiwsir" #这样是True - >>> a.istitle() - True - >>> a = 'Qiwsir,Github' #这样也是True - >>> a.istitle() - True - - >>> a = "Qiwsir" - >>> a.isupper() - False - >>> a.upper().isupper() - True - >>> a.islower() - False - >>> a.lower().islower() - True - -再探究一下,可以这么做: - - >>> a = "This is a Book" - >>> a.istitle() - False - >>> b = a.title() #这样就把所有单词的第一个字母转化为大写 - >>> b - 'This Is A Book' - >>> b.istitle() #判断每个单词的第一个字母是否为大写 - True - -###用`.join()`拼接字符串 - -用`+`能够拼接字符串,除了这个还有别的。 - -当然,`+`也不是什么情况下都能够如愿的。比如,将列表(关于列表,后续详细说,它是另外一种类型)中的每个字符(串)元素拼接成一个字符串,并且用某个符号连接,如果用“+”,就比较麻烦了(是能够实现的,麻烦)。 - -用字符串的`.join()`方法拼接字符串,也是一个好选择。 - - >>> b - 'www.itdiffer.com' - >>> c = b.split(".") - >>> c - ['www', 'itdiffer', 'com'] - >>> ".".join(c) - 'www.itdiffer.com' - >>> "*".join(c) - 'www*itdiffer*com' - -这种拼接,是不是简单呢? - -虽然不能把所有方法穷尽,但读者完全可以仿照上述流程研究其它方法。 - -字符串的问题还要继续,因为中文和英文还有很大区别。 - ------- - -[总目录](./index.md)   |   [上节:字符串(3)](./108.md)   |   [下节:字符编码](./110.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/110.md b/110.md deleted file mode 100644 index aeb3da5..0000000 --- a/110.md +++ /dev/null @@ -1,338 +0,0 @@ ->So do not worry about tomorrow, for tomorrow will bring worries of its own. Today's trouble is enough for today. (MATTHEW 6:34) - -#字符编码 - -其实,标题前面应该加两个字——“坑爹”。 - -在实践中,字符编码的确是一个“坑”。因为这个世界上,不都是英文。如果都是英文,就没有这个问题了。可是,还有中文、日文等等。 - -但是,字符编码的确很重要,它不仅仅是计算机的一个基础,还是一个有历史过程的事情。 - -要从编码开始谈起。 - -##编码 - -什么是编码?这是一个比较玄乎的问题。也不好下一个普通定义。我看到有的教材中有定义,不敢说他的定义不对,至少可以说不容易理解。 - -古代打仗,击鼓进攻、鸣金收兵,这就是编码。把要传达给士兵的命令对应为一定的其它形式,比如命令“进攻”,经过如此的信息传递: - -![](./1images/11001.png) - -1. 长官下达进攻命令,传令员将这个命令编码为鼓声(如果复杂点,是不是有几声鼓响,如何进攻呢?)。 -2. 鼓声在空气中传播,比传令员的嗓子吼出来的声音传播的更远,士兵听到后也不会引起歧义,一般不会有士兵把鼓声当做打呼噜的声音。这就是“进攻”命令被编码成鼓声之后的优势所在。 -3. 士兵听到鼓声,就是接收到信息之后,如果接受过训练或者有人告诉过他们,他们就知道这是让我进攻。这个过程就是解码。所以,编码方案要有两套。一套在信息发出者那里,另外一套在信息接受者这里。经过解码之后,士兵明白了,才行动。 - -以上过程比较简单。其实,真实的编码和解码过程,要复杂了。不过,原理都差不多的。 - -举一个似乎遥远,其实不久前人们都在使用的东西做例子:[电报](http://zh.wikipedia.org/wiki/%E7%94%B5%E6%8A%A5) - ->电报是通信业务的一种,在19世纪初发明,是最早使用电进行通信的方法。电报大为加快了消息的流通,是工业社会的其中一项重要发明。早期的电报只能在陆地上通讯,后来使用了海底电缆,开展了越洋服务。到了20世纪初,开始使用无线电拨发电报,电报业务基本上已能抵达地球上大部份地区。电报主要是用作传递文字讯息,使用电报技术用作传送图片称为传真。 - ->中国首条出现电报线路是1871年,由英国、俄国及丹麦敷设,从香港经上海至日本长崎的海底电缆。由于清政府的反对,电缆被禁止在上海登陆。后来丹麦公司不理清政府的禁令,将线路引至上海公共租界,并在6月3日起开始收发电报。至于首条自主敷设的线路,是由福建巡抚丁日昌在台湾所建,1877年10月完工,连接台南及高雄。1879年,北洋大臣李鸿章在天津、大沽及北塘之间架设电报线路,用作军事通讯。1880年,李鸿章奏准开办电报总局,由盛宣怀任总办。并在1881年12月开通天津至上海的电报服务。李鸿章説:“五年来,我国创设沿江沿海各省电线,总计一万多里,国家所费无多,巨款来自民间。当时正值法人挑衅,将帅报告军情,朝廷传达指示,均相机而动,无丝毫阻碍。中国自古用兵,从未如此神速。出使大臣往来问答,朝发夕至,相隔万里好似同居庭院。举设电报一举三得,既防止外敌侵略,又加强国防,亦有利于商务。”天津官电局于庚子遭乱全毁。1887年,台湾巡抚刘铭传敷设了福州至台湾的海底电缆,是中国首条海底电缆。1884年,北京电报开始建设,采用"安设双线,由通州展至京城,以一端引入署中,专递官信,以一端择地安置用便商民",同年8月5日,电报线路开始建设,所有电线杆一律漆成红色。8月22日,位于北京崇文门外大街西的喜鹊胡同的外城商用电报局开业。同年8月30日,位于崇文门内泡子和以西的吕公堂开局,专门收发官方电报。 - ->为了传达汉字,电报部门准备由4位数字或3位罗马字构成的代码,即中文电码,采用发送前将汉字改写成电码发出,收电报后再将电码改写成汉字的方法。 - -注意了,这里出现了电报中用的“[中文电码](http://zh.wikipedia.org/wiki/%E4%B8%AD%E6%96%87%E9%9B%BB%E7%A2%BC)”,这就是一种编码,将汉字对应成阿拉伯数字,从而能够用电报发送汉字。 - ->1873年,法国驻华人员威基杰参照《康熙字典》的部首排列方法,挑选了常用汉字6800多个,编成了第一部汉字电码本《电报新书》。 - -电报中的编码被称为[摩尔斯电码,英文是Morse Code](http://zh.wikipedia.org/wiki/%E6%91%A9%E6%96%AF%E7%94%B5%E7%A0%81) - ->摩尔斯电码(英语:Morse Code)是一种时通时断的信号代码,通过不同的排列顺序来表达不同的英文字母、数字和标点符号。是由美国人萨缪尔·摩尔斯在1836年发明。 - ->摩尔斯电码是一种早期的数字化通信形式,但是它不同于现代只使用0和1两种状态的二进制代码,它的代码包括五种:点(.)、划(-)、每个字符间短的停顿(在点和划之间的停顿)、每个词之间中等的停顿、以及句子之间长的停顿 - -看来电报员是一个技术活,不同长短的停顿都代表了不同意思。哦,对了,有一个老片子《永不消逝的电波》,看完之后保证你才知道,里面根本就没有讲电报是怎么编码的。 - ->摩尔斯电码在海事通讯中被作为国际标准一直使用到1999年。1997年,当法国海军停止使用摩尔斯电码时,发送的最后一条消息是:“所有人注意,这是我们在永远沉寂之前最后的一声呐喊!” - -![](./1images/11002.png) - -我瞪着眼看了老长时间,这两行不是一样的吗? - -不管这个了,总之,这就是编码。 - -##计算机中的字符编码 - -先抄一段[维基百科对字符编码](http://zh.wikipedia.org/wiki/%E5%AD%97%E7%AC%A6%E7%BC%96%E7%A0%81)的解释: - ->字符编码(英语:Character encoding)、字集码是把字符集中的字符编码为指定集合中某一对象(例如:比特模式、自然数串行、8位组或者电脉冲),以便文本在计算机中存储和通过通信网络的传递。常见的例子包括将拉丁字母表编码成摩斯电码和ASCII。其中,ASCII将字母、数字和其它符号编号,并用7比特的二进制来表示这个整数。通常会额外使用一个扩充的比特,以便于以1个字节的方式存储。 - -但计算机的字符编码,不是一蹴而就,而是有一个发展过程的。 - -###ASCII码 - -计算机里采用二进制,这是毋庸置疑不用解释的了。 - -20世纪60年代,这是计算机发展的早期,那时候美国是很多领域的老大,计算机上也同样是老大,当然现在也还是老大,未来是不是就要看Chinese People了。老大就要做老大的事情,定规矩肯定是老大的事情,于是美国制定了一套字符编码,解决了英语字符与二进制位之间的对应关系,被称为[ASCII码](http://zh.wikipedia.org/wiki/ASCII)。 - ->ASCII(pronunciation: 英语发音:/ˈæski/ ASS-kee[1],American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语,而其扩展版本EASCII则可以部分支持其他西欧语言,并等同于国际标准ISO/IEC 646。由于万维网使得ASCII广为通用,直到2007年12月,逐渐被Unicode取代。 - -英语用128个符号编码就够了,但计算机不是仅仅用于英语。如果用来表示其他语言,128个符号是不够的。于是很多其它国家,都在ASCII码的基础上,搞了很多别的编码,比如汉语里面有了简体中文编码方式GB2312,使用两个字节表示一个汉字。 - -###Unicode - -编码方式上,各玩个的,就有点乱,于是就出现了“乱码”。比如电子邮件,发信人和收信人使用的编码方式不一样,收信人就只能看“乱码”了。 - -网络的发展,让地球都成为一个村了,同一个村里面就不能有很多“方言”,只能有一种,否则“乱了”。 - -于是[Unicode]((http://zh.wikipedia.org/wiki/Unicode))呼之出来了,看它的名字,你也知道,就是要统一符号的编码。 - ->Unicode(中文:万国码、国际码、统一码、单一码)是计算机科学领域里的一项业界标准。它对世界上大部分的文字系统进行了整理、编码,使得电脑可以用更为简单的方式来呈现和处理文字。 - ->Unicode伴随着通用字符集的标准而发展,同时也以书本的形式对外发表。Unicode至今仍在不断增修,每个新版本都加入更多新的字符。目前最新的版本为7.0.0,已收入超过十万个字符(第十万个字符在2005年获采纳)。Unicode涵盖的数据除了视觉上的字形、编码方法、标准的字符编码外,还包含了字符特性,如大小写字母。 - -但Unicode也不是完美的,存在一些问题。想了解哪些问题,请具体查阅参考文献:[字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) - -###UTF-8 - -互联网催生了UTF-8。 - -Unicode的实现方式称为Unicode转换格式(Unicode Transformation Format,简称为UTF)——UTF的含义。 - -[UTF-8]((http://zh.wikipedia.org/wiki/UTF-8))是在互联网上使用最广的一种Unicode的实现方式。虽然它仅仅是Unicode的实现方式之一,但它真正一统江湖了。 - ->UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,也是一种前缀码。它可以用来表示Unicode标准中的任何字符,且其编码中的第一个字节仍与ASCII兼容,这使得原来处理ASCII字符的软件无须或只须做少部份修改,即可继续使用。因此,它逐渐成为电子邮件、网页及其他存储或发送文字的应用中,优先采用的编码。 - -有UTF-8,言外之意还应该有UTF-n,n是一个别的数字。 - -的确如此,还有UTF-16等等,但UTF-8有很多优点,被广泛接受。 - -所以,以后,我们在Python的程序开发中,都要使用UTF-8编码。 - -注:参考文献:[字符编码笔记:ASCII,Unicode和UTF-8](http://www.ruanyifeng.com/blog/2007/10/ascii_unicode_and_utf-8.html) - -看完了一些关于编码的基本知识,再来看Python中的编码问题。 - -##Python字符编码 - -Python编码容易让人迷茫,因为Python 2和Python 3还有区别。 - -如果你在Python 2中,在交互模式里按照下面的指令执行。 - - >>> import sys - >>> sys.getdefaultencoding() - 'ascii' - -这说明Python 2的默认是ASCII编码。而Python 3,则不同。 - - >>> import sys - >>> sys.getdefaultencoding() - 'utf-8' - -所以,要注意是哪个版本。 - -之所以如此,根源是Python 2横空出世的时候,Unicode还没有来到这个世界。 - -在Python中,有两个内建函数,能够实现字符和对应数字之间的转换。 - - >>> ord("Q") - 81 - >>> chr(81) - 'Q' - -对于英文字母,不同版本的Python没有区别,但是,对于汉字就有区别了。 - -先看Python 2。如果你用Python 3,此段可以略过。 - - >>> ord("齐") - - Traceback (most recent call last): - File "", line 1, in - ord("齐") - TypeError: ord() expected a character, but string of length 2 found - -Python 2默认是ASCII编码,`齐`这个字符已经超出了ASCII的范围,所以要报错。并且,从报错信息中可以看出更多信息。 - - >>> help(ord) - Help on built-in function ord in module __builtin__: - - ord(...) - ord(c) -> integer - - Return the integer ordinal of a one-character string. - -Python 2中,要求`ord()`的参数所传递的是一个字符,即长度是1,而Python解释器现在认为`齐`这个汉字是两个字符的长度。 - -的确如此,汉字占据了两个字节。 - - >>> s = "齐" - >>> len(s) - 2 - >>> s - '\xc6\xeb' - -再看Python 3,进行上述操作。 - - >>> ord("齐") - 40784 - >>> chr(40784) - '齐' - - >>> help(ord) - Help on built-in function ord in module builtins: - - ord(c, /) - Return the Unicode code point for a one-character string. - -区别已经很明显了。 - -因此,Python 2做了扩展,使用一种新的方式,来声明那个字符串是Unicode编码。 - - >>> t = u'齐' - >>> len(t) - 1 - >>> t - u'\u9f50' - >>> ord(t) - 40784 - >>> type(t) - - -所以,使用Python 2的朋友们要注意了,在编程中,将字符串写成状如`u'齐'`是非常必要的,因为这样你使用的就是Unicode编码。 - -这样,貌似世界就和谐了。 - -真的吗? - -##encode和decode - -因为种种原因,不可能世界上所有人都按照同一种模式生活,否则就不是“绚丽多彩”的世界了。 - -“绚丽多彩”的世界,就必须要encode和decode - -- encode:编码 -- decode:解码 - -字符串也有这样两个方法,分别负责编码和解码工作。 - -在Python 2中,它们分别是`str.encode()`和`str.decode()`。 - - >>> help(str.encode) - Help on method_descriptor: - - encode(...) - S.encode([encoding[,errors]]) -> object - - Encodes S using the codec registered for encoding. encoding defaults - to the default encoding. errors may be given to set a different error - handling scheme. Default is 'strict' meaning that encoding errors raise - a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and - 'xmlcharrefreplace' as well as any other name registered with - codecs.register_error that is able to handle UnicodeEncodeErrors. - - >>> help(str.decode) - Help on method_descriptor: - - decode(...) - S.decode([encoding[,errors]]) -> object - - Decodes S using the codec registered for encoding. encoding defaults - to the default encoding. errors may be given to set a different error - handling scheme. Default is 'strict' meaning that encoding errors raise - a UnicodeDecodeError. Other possible values are 'ignore' and 'replace' - as well as any other name registered with codecs.register_error that is - able to handle UnicodeDecodeErrors. - -而在Python 3中,它是`str.encode()`。(细心的读者,有没有看到我叙述上的差别?) - - >>> help(str.encode) - Help on method_descriptor: - - encode(...) - S.encode(encoding='utf-8', errors='strict') -> bytes - - Encode S using the codec registered for encoding. Default encoding - is 'utf-8'. errors may be given to set a different error - handling scheme. Default is 'strict' meaning that encoding errors raise - a UnicodeEncodeError. Other possible values are 'ignore', 'replace' and - 'xmlcharrefreplace' as well as any other name registered with - codecs.register_error that can handle UnicodeEncodeErrors. - -在两个版本中,是有却别的,恭请认真阅读文档信息。并且,在Python 3中不再提供`str.decode()`方法。想想也是合理的。因为Python 3中默认是UTF-8,就没有必要再解码成别的了吧,那不是要开历史的倒车吗? - - 所以,在Python 2中,你可以这么玩。 - - >>> a = "赵国" - >>> type(a) - - >>> len(a) - 4 - >>> a - '\xd5\xd4\xb9\xfa' - -这是一个基于ASCII得到的**字节串**,一个汉字两个字节。 - - >>> b = u'赵国' - >>> type(b) - - >>> len(b) - 2 - >>> b - u'\u8d75\u56fd' - -这是基于Unicode的**字符串**。两个术语:“字节串”和“字符串”,通过这个例子是否有了明晰? - - >>> c = b.encode("utf-8") - >>> type(c) - - >>> len(c) - 6 - >>> c - '\xe8\xb5\xb5\xe5\x9b\xbd' - -这是其转化为UTF-8编码。请注意,以上三种不同编码下的长度,是不一样的。 - - >>> d = c.decode("utf-8") - >>> type(d) - - >>> len(d) - 2 - >>> d - u'\u8d75\u56fd' - -这样又变回去了。 - -这就是编码的转换方式。 - -关于编码问题,先到这里,点到为止吧。在编程实践中,如果有纠缠不清的问题,请尽情google,即可解决。 - -##Python 2中如何避免中文是乱码 - -这个问题是一个具有很强操作性的问题。我这里有一个经验总结,分享一下,供参考: - -首先,提倡使用utf-8编码方案,因为它跨平台不错。 - -经验一:在开头声明: - - # -*- coding: utf-8 -*- - -有朋友问我-*-有什么作用,那个就是为了好看,爱美之心人皆有,更何况程序员?当然,也可以写成: - - # coding:utf-8 - -经验二:遇到字符(节)串,立刻转化为unicode,不要用str(),直接使用unicode() - - unicode_str = unicode('中文', encoding='utf-8') - print unicode_str.encode('utf-8') - -经验三:如果对文件操作,打开文件的时候,最好用codecs.open,替代open(这个后面会讲到,先放在这里) - - import codecs - codecs.open('filename', encoding='utf8') - -经验四:声明字符串直接加u,声明的字符串就是unicode编码的字符串 - - a = u"中" - -我还收集了网上的一片文章,也挺好的,推荐给看官:[Python2.x的中文显示方法](https://github.com/qiwsir/ITArticles/blob/master/Python/Python%E7%9A%84%E4%B8%AD%E6%96%87%E6%98%BE%E7%A4%BA%E6%96%B9%E6%B3%95.md) - -至于Python 3,因为天生就是UTF-8,所以对中文友好的。 - -关于字符串差不多要告一段落了。但是,Python的对象类型,还要继续。接下来“苦力”即将登场。 - ------- - -[总目录](./index.md)   |   [上节:字符串(4)](./109.md)   |   [下节:列表(1)](./111.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/111.md b/111.md deleted file mode 100644 index 68c1551..0000000 --- a/111.md +++ /dev/null @@ -1,284 +0,0 @@ ->你们不要论断人,免得你们被论断。因为你们怎样论断人,也必怎样被论断。你们用甚么量器量给人,也必用甚么量器量给你们。(MATTHEW 7:1-2) - -#列表(1) - -已经知道了数字和字符串,用`type()`可以得到具体某个对象的类型。 - -这是两种很基本的对象,由它们可以组成其它的对象。 - ->对数据类型的理解。这个世界是由数据组成的,数据可能是数字(注意,别搞混了,数字和数据是有区别的),也可能是文字、或者是声音、视频等。 - -还学习了变量,如果某个变量指向一个对象,行话是“赋值”。 - -从现在开始学习一种新的对象——list(列表)。下面的文字,请注意了: - -**列表在Python中具有非常强大的功能。** - -##定义 - -在Python中,用方括号表示一个列表——[ ]。 - -在方括号里面,可以是数字(整数、浮点数),也可以是字符串,甚至也能够是True/False这种布尔值。 - -先定义一个空列表看一看。 - - >>> a = [] #定义了一个空列表,并把他赋值给变量a。 - >>> type(a) - #type()查看变量a所指向对象的类型 - >>> bool(a) - False - >>> print a - [] - -`bool()`是一个布尔函数,这个东西后面会详述。它的作用就是来判断一个对象是“真”还是“空”(假)。如果想上面例子那样,列表中什么也没有,就是空的,用`bool()`函数来判断,返回False,从而显示它是空的。 - -不能总玩空的,来点实的吧。 - - >>> a = ['2', 3, 'qiwsir.github.io'] - >>> a - ['2', 3, 'qiwsir.github.io'] - >>> type(a) - - >>> bool(a) - True - >>> print a - ['2', 3, 'qiwsir.github.io'] - -用上述方法,定义一个列表类型的对象。 - -从刚才的例子中,读者是否注意到,列表里面的元素,可以是不同类型的对象,可谓是“有容乃大”,不仅如此,它的元素个数还可以无限大,就是说里面所能容纳的元素数量无限,当然这是在硬件设备理想的情况下。 - ->如果以后或者已经了解了别的语言,比如比较常见的Java,里面有一个跟Python列表相似的数据类型——数组——但是两者还是有区别的。在Java中,数组中的元素必须是基本数据类型中某一个,也就是要么都是整数类型,要么都是字符类型等,不能一个数组中既有整数类型又有字符类型。这是因为Java中的数组,需要提前声明,声明的时候就确定了里面元素的类型。但是Python中的列表,尽管跟Java中的数组有类似的地方——都是`[]`包裹的——列表中的元素是任意类型的。所以,有一句话说:列表是Python中的苦力,什么都可以干。 - -##索引和切片 - -尚记得在[《字符串(3)》](./108.md)中,曾经有“索引”(index)和“切片”。 - - >>> url = "qiwsir.github.io" - >>> url[2] - 'w' - >>> url[:4] - 'qiws' - >>> url[3:9] - 'sir.gi' - -在list中,也有类似的操作。只不过是以元素为单位,不是以字符为单位进行索引了。看例子就明白了。 - - >>> a - ['2', 3, 'qiwsir.github.io'] - >>> a[0] #索引序号也是从0开始 - '2' - >>> a[1] - 3 - >>> [2] - [2] - >>> a[:2] - ['2', 3] - >>> a[1:] - [3, 'qiwsir.github.io'] - >>> a[1:2] - [3] - >>> a[2][7:13] #可以对列表元素做2次切片 - 'github' - -列表和字符串两种类型的对象,都属于序列(都是一些对象按照某个次序排列起来,这就是序列的最大特征),因此,就有很多类似的地方。如刚才演示的索引和切片,是非常一致的。 - - >>> lang = "python" - >>> lang.index("y") - 1 - >>> lst = ['python','java','c++'] - >>> lst.index('java') - 1 - -我们已经知道,在Python中所有的索引都是从左边开始编号,第一个是0,然后依次增加1。此外,还有一种编号方式,就是从右边开始,右边第一个可以编号为`-1`,然后向左依次是:-2,-3,...,依次类推下来。这对字符串、列表等各种序列类型都是用。 - - >>> lang - 'python' - >>> lang[-1] - 'n' - >>> lst - ['python', 'java', 'c++'] - >>> lst[-1] - 'c++' - -从右边开始编号,第-1号是右边第一个。但是,如果要切片的话,应该注意了。 - - >>> lang[-1:-3] - '' - >>> lang[-3:-1] - 'ho' - >>> lst[-3:-1] - ['python', 'java'] - -序列的切片,一定要左边的数字小于右边的数字,`lang[-1:-3]`就没有遵守这个规则,返回的是一个空。 - -##反转 - -这个功能作为一个独立的项目提出来,是因为在编程中常常会用到。 - -还是通过举例来演示反转的方法: - - >>> alst = [1, 2, 3, 4, 5, 6] - >>> alst[: : -1] #反转 - [6, 5, 4, 3, 2, 1] - >>> alst - [1, 2, 3, 4, 5, 6] - -对于字符串也可以: - - >>> lang - 'python' - >>> lang[::-1] - 'nohtyp' - >>> lang - 'python' - -是否注意到,不管是字符串还是列表,反转之后,都没有影响原来的对象。 - -这说明,这里的反转,不是在“原地”把原来的值倒过来,而是新生成了一个值,那个值跟原来的值相比,是倒过来了。 - -这是一种非常简单的方法,虽然我在写程序的时候常常使用,但是,我不是十分推荐,因为有时候让人感觉迷茫。Python还有另外一种方法让列表反转,是比较容易理解和阅读的,特别推荐之: - - >>> list(reversed(alst)) - [6, 5, 4, 3, 2, 1] - -比较简单,而且很容易看懂。不是吗? - -顺便给出`reversed()`函数的详细说明: - - >>> help(reversed) - Help on class reversed in module __builtin__: - - class reversed(object) - | reversed(sequence) -> reverse iterator over values of the sequence - | - | Return a reverse iterator - -它返回一个可以迭代的对象(关于迭代的问题,后续会详述之),不过是已经将原来的序列对象反转了。比如: - - >>> list(reversed("abcd")) - ['d', 'c', 'b', 'a'] - -很好,很强大,特别推荐使用。 - -##操作列表 - -刚刚提到过,列表是序列。所有的序列,都有几种基本操作。列表也当然如此。 - -###基本操作 - -- len() - -在交互模式中操作: - - >>> lst - ['python', 'java', 'c++'] - >>> len(lst) - 3 - -- +,连接两个序列 - -交互模式中: - - >>> lst - ['python', 'java', 'c++'] - >>> alst - [1, 2, 3, 4, 5, 6] - >>> lst + alst - ['python', 'java', 'c++', 1, 2, 3, 4, 5, 6] - -- *,重复元素 - -交互模式中操作 - - >>> lst - ['python', 'java', 'c++'] - >>> lst * 3 - ['python', 'java', 'c++', 'python', 'java', 'c++', 'python', 'java', 'c++'] - -- in - -还是前面的列表, - - >>> "python" in lst - True - >>> "c#" in lst - False - -- max()和min() - -按照元素的字典顺序进行比较的。 - - >>> alst - [1, 2, 3, 4, 5, 6] - >>> max(alst) - 6 - >>> min(alst) - 1 - >>> max(lst) - 'python' - >>> min(lst) - 'c++' - -- cmp(): - -跟字符串中提到的`cmp()`一样,这个函数仅适用于Python 2,在Python 3中已经被抛弃了。 - -引用[官方文档] (https://docs.python.org/2.7/library/functions.html#cmp)一段话,说明这个函数的意义: - ->Compare the two objects x and y and return an integer according to the outcome. The return value is negative if x < y, zero if x == y and strictly positive if x > y. - -不用翻译你也能看懂,况且还有例子: - - >>> lsta = [2, 3] - >>> lstb = [2, 4] - >>> cmp(lsta, lstb) - -1 - >>> lstc = [2] - >>> cmp(lsta, lstc) - 1 - >>> lstd = ['2', '3'] - >>> cmp(lsta, lstd) - -1 - -###追加元素 - - >>> a = ["good", "python", "I"] - >>> a - ['good', 'python', 'I'] - >>> a.append("like") #向列表中追加字符串"like" - >>> a - ['good', 'python', 'I', 'like'] - >>> a.append(100) #向列表中追加整数100 - >>> a - ['good', 'python', 'I', 'like', 100] - -[官方文档](https://docs.python.org/2/tutorial/datastructures.html)这样描述`list.append()`方法 - ->list.append(x) - -> Add an item to the end of the list; equivalent to a[len(a):] = [x]. - -所谓追加,即将新的元素加到列表的尾部。 - -如果您仔细阅读了上面官方文档中的那句话,应该注意到,还有后面半句: equivalent to a[len(a):] = [x],意思是说`list.append(x)`等效于`a[len(a):]=[x]`。这也相当于告诉我们了另外一种追加元素的方法,并且两种方法等效。 - - >>> a - ['good', 'python', 'I', 'like', 100] - >>> a[len(a):]=[3] #len(a),即得到列表的长度 - >>> a - ['good', 'python', 'I', 'like', 100, 3] - >>> len(a) - 6 - >>> a[6:]=['xxoo'] - >>> a - ['good', 'python', 'I', 'like', 100, 3, 'xxoo'] - -到这里,仅仅是列表这座冰山的一角,既然它是“苦力”,可以干的活还很多。 - ------- - -[总目录](./index.md)   |   [上节:字符编码](./110.md)   |   [下节:列表(2)](./112.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - diff --git a/112.md b/112.md deleted file mode 100644 index b2c3d3e..0000000 --- a/112.md +++ /dev/null @@ -1,265 +0,0 @@ ->你们祈求,就给你们;寻找,就寻见;叩门,就给你们开门。因为凡祈求的,就得着;寻找的,就寻见;叩门的,就给他们开门。 - ->所以无论何事,你们愿意人怎样待你们,你们也要怎样待人,因为这就是律法和先知的道理。(MATTHEW 7:7-8,12) - -#列表(2) - -“列表是Python的苦力”,那么它或者对它能做什么呢? - -在交互模式下这么操作,就看到有关它的函数或方法了。 - - >>> dir(list) - ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'] - -上面的结果中,以双下划线开始和结尾的暂时不管,如`__add__`(以后会管的)。就剩下以下几个了: - ->'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort' - -这几个都是在编程实践中常常要用到的。 - -##常用的列表函数 - -###append和extend - -[《列表(1)》](./111.md)中,对列表的基本操作提到了`list.append(x)`,也就是将某个元素`x` 追加到已知的一个列表后边。 - -除了将元素追加到列表中,还能够将两个列表合并,或者说将一个列表追加到另外一个列表中。按照前文的惯例,还是首先看[官方文档](https://docs.python.org/2/tutorial/datastructures.html)中的描述: - ->list.extend(L) - -> Extend the list by appending all the items in the given list; equivalent to a[len(a):] = L. - -**向所有正在学习本内容的朋友提供一个成为优秀程序员的必备:看官方文档,是必须的。** - -官方文档的这句话翻译过来: - -通过将所有元素追加到已知列表来扩充它,相当于`a[len(a):]= L`。 - -英语太烂,翻译太差。直接看例子,更明白。 - - >>> la = [1, 2, 3] - >>> lb = ['qiwsir', 'python'] - >>> la.extend(lb) - >>> la - [1, 2, 3, 'qiwsir', 'python'] - >>> lb - ['qiwsir', 'python'] - -变量`la`指向一个列表对象;变量`lb`也指向一个列表对象。为了简单,就说成`la`和`lb`两个列表。 - -将lb追加到la的后面,也就是把lb中的所有元素加入到la中,即让la扩容。 - -学程序一定要有好奇心,我在交互环境中,经常实验一下自己的想法,有时候是比较愚蠢的想法。 - - >>> la = [1,2,3] - >>> b = "abc" - >>> la.extend(b) - >>> la - [1, 2, 3, 'a', 'b', 'c'] - >>> c = 5 - >>> la.extend(c) - Traceback (most recent call last): - File "", line 1, in - TypeError: 'int' object is not iterable - -仔细观察,能看出什么来吗? - -原来,如果`extend(str)`的时候,字符串被以字符为单位拆开,然后追加到la里面。 - -如果extend的对象是数值型,则报错。 - -extend的对象是一个列表,如果是字符串,则Python会先把它按照字符为单位转化为列表再追加到已知列表后面。 - -不过,别忘记了前面官方文档的后半句话,它的意思是: - - >>> la = [1, 2, 3, 'a', 'b', 'c'] - >>> lb = ['qiwsir', 'python'] - >>> la[len(la):]=lb - >>> la - [1, 2, 3, 'a', 'b', 'c', 'qiwsir', 'python'] - -`list.extend(L)` 等效于 `list[len(list):] = L`,L是待并入的列表。 - -联想到到[上一讲](./111.md)中的一个list函数`list.append()`,有类似之处。 - ->extend(...) -> L.extend(iterable) -- extend list by appending elements from the iterable - -上面是在交互模式中输入`help(list.extend)`后得到的说明。这是非常重要而且简单的获得文档帮助的方法。 - -该文档中出现了iterable,什么是iterable?这个从现在开始,会经常遇到,所以是要搞搞清楚的。 - ->iterable,中文含义是“可迭代的”。在Python中,还有一个词,就是iterator,这个叫做“迭代器”。这两者有着区别和联系。不过,这里暂且不说那么多,说多了就容易糊涂,我也糊涂了。 - -为了解释iterable(可迭代的),又引入了一个词“迭代”,什么是迭代呢? - ->尽管我们很多文档是用英文写的,但是,如果你能充分利用汉语来理解某些名词,是非常有帮助的。因为在汉语中,不仅仅表音,而且能从词语组合中体会到该术语的含义。比如“激光”,这是汉语。英语是从"light amplification by stimulated emission of radiation"化出来的"laser",它是一个造出来的词。因为此前人们不知道那种条件下发出来的是什么。但是汉语不然,反正用一个“光”就可以概括了,只不过这个“光”不是传统概念中的“光”,而是由于“受激”辐射得到的光,故名“激光”。是不是汉语很牛叉? - ->“迭”在汉语中的意思是“屡次,反复”。如:高潮迭起。那么跟“代”组合,就可以理解为“反复‘代’”,是不是有点“子子孙孙”的意思了?“结婚-生子-子成长-结婚-生子-子成长-...”,你是不是也在这个“迭代”的过程中呢? - ->给个稍微严格的定义,来自维基百科。“迭代是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果。” - -某些类型的对象是“可迭代”(iterable)的,这类数据类型有共同的特点。如何判断一个对象是不是可迭代的?下面演示一种方法。事实上还有别的方式。 - - >>> astr = "python" - >>> hasattr(astr, '__iter__') - False #Python2返回的结果。如果是Python3返回True. - -这里用内建函数`hasattr()`判断一个字符串是否是可迭代的,在Python 2中返回了False,在Python 3中返回了True。那么,这里似乎有一个矛盾的命题,一个字符串,在不同的Python版本中,为什么不一样呢?请继续阅读。 - -用同样的方式可以判断: - - >>> alst = [1, 2] - >>> hasattr(alst, '__iter__') - True - >>> hasattr(3, '__iter__') - False - -`hasattr()`的判断本质就是看那个类型中是否有`__iter__`函数。读者可以用`dir()`找一找,在数字、字符串、列表中,谁有`__iter__`。同样还可找一找`dict`和`tuple`两种类型对象是否含有这个方法。 - -如果你使用的是Pyhon 2,在`dir(str)`是无法发现`__iter__`的。但是,在Python 3中,则可以在`dir(str)`的结果中看到`__iter__`。这也是为什么在Python 3中,`hasattr(astr, '__iter__')`返回`True`的原因。 - -将前面的所有对于字符串的操作,你连贯起来看一下,在Python 2中,不认为它是可迭代的,这是针对字符串本身而言,然而如果对它进行了应用于可迭代对象的操作,它又能正常进行,因为Python把字符串做了自动转化;因此Python 3中干脆顺水推舟,把这个过程一气呵成。让它也具有`__iter__`属性了。 - -以上穿插了一个新的概念“iterable”(可迭代的),现在回到`extend()`上。这个函数需要的参数就是iterable类型的对象。 - - >>> new = [1, 2, 3] - >>> lst = ['python', 'qiwsir'] - >>> lst.extend(new) - >>> lst - ['python', 'qiwsir', 1, 2, 3] - >>> new - [1, 2, 3] - -还要关注列表lst的变化。lst经过extend函数操作之后,变成了一个貌似“新”的列表。这句话有点别扭,“貌似新”的,之所以这么说,是因为对“新的”可能有不同的理解。 - -不妨深挖一下。 - - >>> new = [1, 2, 3] - >>> id(new) - 3072383244L - - >>> lst = ['python', 'qiwsir'] - >>> id(lst) - 3069501420L - -用`id()`能够看到两个列表分别在内存中的“窝”的编号。 - - >>> lst.extend(new) - >>> lst - ['python', 'qiwsir', 1, 2, 3] - >>> id(lst) - 3069501420L - -注意到没有?虽然lst经过`extend()`方法之后,比原来扩容了,但是,并没有离开原来的“窝”,也就是在内存中,还是“旧”的,只不过里面的内容增多了。相当于两口之家,经过一番云雨之后,又增加了一个小宝宝,那么这个家是“新”的还是“旧”的呢?角度不同或许说法不一了。 - -这就是列表的一个**重要特征:列表是可以修改的。这种修改,不是复制一个新的,而是在原地进行修改。** - -其实,`append()`对列表的操作也是如此,不妨用同样的方式看看。 - -**说明:**虽然这里的lst内容和上面的一样,但是,我从新在shell中输入,所以id会变化。也就是内存分配的“窝”的编号变了。 - - >>> lst = ['python', 'qiwsir'] - >>> id(lst) - 3069501388L - >>> lst.append(new) - >>> lst - ['python', 'qiwsir', [1, 2, 3]] - >>> id(lst) - 3069501388L - -显然,`append()`也是原地修改列表。 - - >>> lst.extend("itdiffer") - >>> lst - ['python', 'qiwsir', 'i', 't', 'd', 'i', 'f', 'f', 'e', 'r'] - -它把一个字符串`"itdiffer"`转化为`['i', 't', 'd', 'i', 'f', 'f', 'e', 'r']`,然后将这个列表作为参数,提供给`extend()`,并将列表中的元素塞入原来的列表中。 - -这里讲述的两个让列表扩容的函数`append()`和`extend()`,它们的共同点是“都能原地修改列表”。 - -对于“原地修改”还应该增加一个理解——没有返回值。 - -原地修改没有返回值,就不能赋值给某个变量。 - - >>> one = ["good","good","study"] - >>> another = one.extend(["day","day","up"]) #对于没有提供返回值的函数,如果要这样,结果是: - >>> print anthor #打印变量another的值。如果是Python3则输入print(another) - None #返回为None, one.extend()没有返回值,即是None. - >>> one - ['good', 'good', 'study', 'day', 'day', 'up'] - -`append()`和`extend()`的区别呢?看下面例子: - - >>> lst = [1,2,3] - >>> lst.append(["qiwsir","github"]) - >>> lst - [1, 2, 3, ['qiwsir', 'github']] #append的结果 - >>> len(lst) - 4 - - >>> lst2 = [1,2,3] - >>> lst2.extend(["qiwsir","github"]) - >>> lst2 - [1, 2, 3, 'qiwsir', 'github'] #extend的结果 - >>> len(lst2) - 5 - -append是整建制地追加,extend是个体化扩编。 - -###count - -`count()`是一个帮着我们弄清楚列表中元素重复出现次数的方法。官方文档是这么说的: - ->list.count(x) - ->Return the number of times x appears in the list. - -一定要不断实验,才能理解文档中精炼的表达。 - - >>> la = [1,2,1,1,3] - >>> la.count(1) - 3 - >>> la.append('a') - >>> la.append('a') - >>> la - [1, 2, 1, 1, 3, 'a', 'a'] - >>> la.count('a') - 2 - >>> la.count(2) - 1 - >>> la.count(5) #la中没有5,但是如果用这种方法找,不报错,返回的是数字0 - 0 - -###index - -[《列表(1)》](./111.md)中已经提到,这里不赘述,但是为了完整,也占个位置吧。 - - >>> la - [1, 2, 3, 'a', 'b', 'c', 'qiwsir', 'python'] - >>> la.index(3) - 2 - >>> la.index('qi') #如果不存在,就报错 - Traceback (most recent call last): - File "", line 1, in - ValueError: 'qi' is not in list - >>> la.index('qiwsir') - 6 - -`x`是列表中的一个元素,`list.index(x)`能够检索到该元素在列表中第一次出现的位置。这才是真正的索引,注意那个英文单词index。 - -依然是上一条官方解释: - ->list.index(x) - ->Return the index in the list of the first item whose value is x. It is an error if there is no such item. - -是不是说的非常清楚明白了? - -中场休息,下节继续列表的方法。 - ------- - -[总目录](./index.md)   |   [上节:列表(1)](./111.md)   |   [下节:列表(3)](./113.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/113.md b/113.md deleted file mode 100644 index 512bea3..0000000 --- a/113.md +++ /dev/null @@ -1,284 +0,0 @@ ->"Come to me, all you that are weary and are carrying heavy burdens,and I will give you rest. Take my yoke upon you, and learn from me; for I am gentle and humble in heart, and you will find rest for your souls. For my yoke is easy, and my burden is light." (MATTHEW 21:28-30) - ->“凡劳苦担重担的人,可以到我这里来,我就使你们得安息。我心里柔和谦卑,你们当负我的轭,学我的样式,这样,你们心里就必得享安息。因为我的轭是容易的,我的担子是轻省的。” - -#列表(3) - -接着上节内容。下面是上节中说好要介绍的列表方法: - ->'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort' - -已经在上节讲解了前四个。 - -继续。 - -##list函数 - -###insert - -`append()`或者`extend()`都是向列表中追加元素,“追加”是且只能是将新元素添加在list的最后一个。如: - - >>> all_users = ["qiwsir","github"] - >>> all_users.append("io") - >>> all_users - ['qiwsir', 'github', 'io'] - -与`list.append(x)`类似,`list.insert(i,x)`也是对list元素的增加。只不过是可以在任何位置增加一个元素。 - -[官方文档](https://docs.python.org/2/tutorial/datastructures.html)如是说: - ->list.insert(i, x) - -> Insert an item at a given position. The first argument is the index of the element before which to insert, so a.insert(0, x) inserts at the front of the list, and a.insert(len(a), x) is equivalent to a.append(x). - -这次就不翻译了。如果看不懂英语,怎么了解贵国呢?一定要硬着头皮看英语,不仅能够学好程序,更能...(此处省略两千字) - -根据官方文档的说明,我们做下面的实验: - - >>> all_users = ['qiwsir', 'github', 'io'] - >>> all_users.insert("python") - Traceback (most recent call last): - File "", line 1, in - TypeError: insert() takes exactly 2 arguments (1 given) - -请注意看报错的提示信息,`insert()`应该供给两个参数,但是这里只给了一个。所以报错没商量啦。 - - >>> all_users.insert(0,"python") - >>> all_users - ['python', 'qiwsir', 'github', 'io'] - - >>> all_users.insert(1,"http://") - >>> all_users - ['python', 'http://', 'qiwsir', 'github', 'io'] - -`list.insert(i, x)`中的`i`是将元素`x`插入到列表中的位置,即将`x`插入到索引是`i`的元素前面。注意,索引是从0开始的。 - -有一种操作,挺有意思的,如下: - - >>> length = len(all_users) - >>> length - 5 - >>> all_users.insert(length,"algorithm") - >>> all_users - ['python', 'http://', 'qiwsir', 'github', 'io', 'algorithm'] - -在all_users中,没有索引5,最大到4。如果要`all_users.insert(5,"algorithm")`,则表示将`"algorithm"`插入到索引值是5的前面,但是没有。换个说法,5前面就是4的后面。所以,就是追加了。 - -其实,还可以这样: - - >>> a = [1, 2, 3] - >>> a.insert(9, 777) - >>> a - [1, 2, 3, 777] - -也就是说,如果遇到那个`i`已经超过了最大索引值,会自动将所要插入的元素放到列表的尾部,即追加。 - -只不过,这样做的不多罢了。 - -最后,还要关注,`insert()`也是对列表原地修改,没有返回值,或者说返回值是`None`。 - -###pop和remove - -列表中的元素,不仅能增加,还能被删除。删除列表元素的方法有两个,它们分别是: - ->list.remove(x) - -> Remove the first item from the list whose value is x. It is an error if there is no such item. - ->list.pop([i]) - -> Remove the item at the given position in the list, and return it. If no index is specified, a.pop() removes and returns the last item in the list. (The square brackets around the i in the method signature denote that the parameter is optional, not that you should type square brackets at that position. You will see this notation frequently in the Python Library Reference.) - -读者如果一直跟着我的节奏在学习,应该体会到我们这里的一种学习方法了——先实验,然后总结规律。这是一种物理学的研究方法。 - -物理学,是科学的基础,特别是它所演化出来的科学研究方法,更是人类智慧的瑰宝。不忘初心,我是大物理系毕业的。 - -先实验`list.remove(x)`,注意看上面的描述。这是一个能够删除列表元素的方法,同时上面说明告诉我们,如果x没有在list中,会报错。 - - >>> all_users = ['python', 'http://', 'qiwsir', 'github', 'io', 'algorithm'] - >>> all_users.remove("http://") - >>> all_users #的确是把"http://"删除了 - ['python', 'qiwsir', 'github', 'io', 'algorithm'] - -在all_users所指向的列表中删除一个元素,一切都符合文档说明的要求,很顺利地完成了。 - - >>> all_users.remove("tianchao") #原list中没有“tianchao”,要删除,就报错。 - Traceback (most recent call last): - File "", line 1, in - ValueError: list.remove(x): x not in list - -如果列表中没有那个元素,非要删除不可,肯定报错。而且报错信息非常明确指出`x not in list`。这也是文档中已经陈述过的了。 - - >>> lst = ["python","java","python","c"] - >>> lst.remove("python") - >>> lst - ['java', 'python', 'c'] - -仔细观察,变量的名字`lst`,不是`list`,最好不要用`list`作为变量名字,因为它是Python中内置的对象类型的名字,如果你非要用它做变量名字,很可能引起后续的麻烦。 - -再仔细观察,这个列表中有两个'python'字符串,当删除后,发现结果只删除了第一个'python'字符串,第二个还在。请仔细看前面的文档说明:**remove the first item ...** - -所以,对`remove()`总结两点: - -- 如果正确删除,则删除第一个符合条件的对象。不会有任何反馈。没有消息就是好消息。它是对列表进行原地修改。 -- 如果所删除的内容不在列表中,就报错。注意阅读报错信息:x not in list - -对于删除,能不能更友好一些?在删除之前,先判断一下这个元素是不是在列表中,如果在就删,不在就不删。 - -如果读者想到这里,就是在编程的旅程上一进步。Python的确让我们这么做。 - - >>> all_users - ['python', 'qiwsir', 'github', 'io', 'algorithm'] - >>> "python" in all_users #这里用in来判断一个元素是否在list中,在则返回True,否则返回False - True - - >>> if "python" in all_users: - ... all_users.remove("python") - ... print all_users - ... else: - ... print "'python' is not in all_users" - ... - ['qiwsir', 'github', 'io', 'algorithm'] #删除了"python"元素 - - >>> if "python" in all_users: - ... all_users.remove("python") - ... print all_users - ... else: - ... print "'python' is not in all_users" - ... - 'python' is not in all_users #因为已经删除了,所以就没有了。 - -上述代码,就是两段小程序,我是在交互模式中运行的,相当于小实验。 - -这里其实用了一个后面才会讲到的东西:if-else语句。 - -不过,我觉得即使没有学习,你也能看懂,因为它非常接近自然语言了——这也正是Python语言的特点之一。 - -对于`remove()`,还有最后一个要交代的,它对列表的修改也是原地修改,正确实现删除后没有返回值。 - -另外一个删除`list.pop([i])`会怎么样呢?看看文档,做做实验。 - - >>> all_users = ['qiwsir', 'github', 'io', 'algorithm'] - >>> all_users.pop() - 'algorithm' - >>> all_users - ['qiwsir', 'github', 'io'] - -`list.pop([i])`,圆括号里面是`[i]`,表示这个参数是可选的,如果不写,也就是圆括号为空,默认删除最后一个,并且将删除的元素作为结果返回。提醒读者注意,它有返回值。 - -如果参数不为空,可以删除指定索引的元素,并将该元素作为返回值。 - - >>> all_users.pop(1) #指定删除编号为1的元素"github" - 'github' - - >>> all_users - ['qiwsir', 'io'] - >>> all_users.pop() - 'io' - - >>> all_users #只有一个元素了,该元素编号是0 - ['qiwsir'] - >>> all_users.pop(1) #但是非要删除编号为1的元素,结果报错。注意看报错信息 - Traceback (most recent call last): - File "", line 1, in - IndexError: pop index out of range #删除索引超出范围,就是1不在list的编号范围之内 - -简单总结一下: - -- `list.remove(x)`中的参数是列表中元素,即删除某个元素,且对列表原地修改,无返回值 -- `list.pop([i])`中的i是列表中元素的索引值,可选。为空则删除列表最后一个,否则删除索引为i的元素。并且将删除元素作为返回值。 - -给读者留下一个思考题,能不能事先判断一下要删除的元素的索引是不是在列表的长度范围(用len(list)获取长度)以内?然后进行删除或者不删除操作。 - -###reverse - -reverse比较简单,就是把列表的元素顺序反过来。 - - >>> a = [3,5,1,6] - >>> a.reverse() - >>> a - [6, 1, 5, 3] - -注意,是原地反过来,不是另外生成一个新的列表。所以,它没有返回值。 - -跟本函数类似的有一个内建函数reversed,建议读者了解一下这个函数的使用方法。 - ->因为`list.reverse()`不返回值,所以不能实现对列表的反向迭代,如果要这么做,可以使用reversed函数。 - -###sort - -sort就是对列表进行排序。输入help(list.sort)调用帮助文档,可以得到如下内容(Python2和Python3略有差异)。 - - >>> #Python 2 - >>> help(list.sort) - Help on method_descriptor: - - sort(...) - L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; - cmp(x, y) -> -1, 0, 1 - - >>> #Python 3 - >>> help(list.sort) - Help on method_descriptor: - - sort(...) - L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE* - -虽然文档说明中略有差异(读者通过本书以前的内容,应该能够理解差异的缘由),但是不影响操作。 - - >>> a = [6, 1, 5, 3] - >>> a.sort() - >>> a - [1, 3, 5, 6] - -`list.sort()`也是让列表进行原地修改,没有返回值。默认情况,如上面操作,实现的是从小到大的排序。 - - >>> a.sort(reverse=True) - >>> a - [6, 5, 3, 1] - -这样做,就实现了从大到小的排序。 - -在前面的函数说明中,还有一个参数key,这个怎么用呢?不知道读者是否用过电子表格,里面就是能够设置按照哪个关键字进行排序。这里也是如此。 - - >>> lst = ["python","java","c","pascal","basic"] - >>> lst.sort(key=len) - >>> lst - ['c', 'java', 'basic', 'python', 'pascal'] - -这是以字符串的长度为关键词进行排序。 - -对于排序,也有一个更为常用的内建函数`sorted()`,你可以去探究一下用法。 - -顺便指出,排序是一个非常有研究价值的话题。不仅仅是现在这么一个函数。有兴趣的读者可以去网上搜一下排序相关知识。 - -最后,对前文提到的“保留字”基于补充说明。 - ->什么是保留字?在Python中,当然别的语言中也是如此啦。某些词语或者拼写是不能被用户拿来做变量/函数/类等命名,因为它们已经被语言本身先占用了。这些就是所谓保留字。在Python中,以下是保留字,不能用于你自己变成中的任何命名。 - -在Python 2和Python 3中,都可以用下面的方式查看保留字,而且,注意,两个不同版本的保留字还有差别,虽然差别很小。 - -Python 2中: - - >>> import keyword - >>> keyword.kwlist - ['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'] - >>> len(keyword.kwlist) - 31 - -Python 3中: - - >>> import keyword - >>> keyword.kwlist - ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] - >>> len(keyword.kwlist) - 33 - -列表的方法已经结束,但是列表的话题还没有完结,因为它还能和“字符串”搞在一起,需要辨析一番。 - ------- - -[总目录](./index.md)   |   [上节:列表(2)](./112.md)   |   [下节:列表和字符串](./114.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - diff --git a/114.md b/114.md deleted file mode 100644 index c465b13..0000000 --- a/114.md +++ /dev/null @@ -1,250 +0,0 @@ ->Then Peter came to him and said,"Lord, how many times must I forgive my brother who sins against me? As many as seven times?" Jesus said to him,"Not seven times, I tell you, but seventy-seven times?" (MATTHEW 18:21-22) - -#回顾列表和字符串 - -列表和字符串两种类型的对象,有不少相似的地方,也有很大的区别。 - -本讲对她们做个简要比较,同时也是对前面有关两者的知识复习一下,所谓“温故而知新”。 - -##相同点 - -###都是序列 - -不管是组成列表的元素,还是组成字符串的字符,都可以从左向右,依次用`0, 1, 2, ...`这样的方式建立索引。而要得到一个或多个元素,可以使用切片。 - -关于序列的基本操作,对两者都适用。 - -例如: - - >>> welcome_str = "Welcome you" - >>> welcome_str[0] - 'W' - >>> welcome_str[1] - 'e' - >>> welcome_str[len(welcome_str)-1] - 'u' - >>> welcome_str[:4] - 'Welc' - - >>> a = "python" - >>> a * 3 - 'pythonpythonpython' - - >>> git_list = ["qiwsir","github","io"] - >>> git_list[0] - 'qiwsir' - >>> git_list[len(git_list)-1] - 'io' - >>> git_list[0:2] - ['qiwsir', 'github'] - - >>> b = ['qiwsir'] - >>> b * 7 - ['qiwsir', 'qiwsir', 'qiwsir', 'qiwsir', 'qiwsir', 'qiwsir', 'qiwsir'] - -对于此类数据,下面一些操作是类似的: - - >>> first = "hello,world" - >>> welcome_str - 'Welcome you' - >>> first+","+welcome_str #用+号连接str - 'hello,world,Welcome you' - >>> welcome_str #原来的str没有受到影响,即上面的+号连接后重新生成了一个字符串 - 'Welcome you' - >>> first - 'hello,world' - - >>> language = ['python'] - >>> git_list - ['qiwsir', 'github', 'io'] - >>> language + git_list #用+号连接list,得到一个新的list - ['python', 'qiwsir', 'github', 'io'] - >>> git_list - ['qiwsir', 'github', 'io'] - >>> language - ['python'] - - >>> len(welcome_str) #得到字符数 - 11 - >>> len(git_list) #得到元素数 - 3 - -##区别 - -列表和字符串的最大区别是:列表是可以改变的,字符串是不可变。这个怎么理解呢? - -首先看对列表的这些操作,其根源在于列表可以进行修改,即列表是可变的。 - - >>> git_list = ['qiwsir', 'github', 'io'] - >>> git_list.append("python") - >>> git_list - ['qiwsir', 'github', 'io', 'python'] - - >>> git_list[1] - 'github' - >>> git_list[1] = 'github.com' - >>> git_list - ['qiwsir', 'github.com', 'io', 'python'] - - >>> git_list.insert(1, "algorithm") - >>> git_list - ['qiwsir', 'algorithm', 'github.com', 'io', 'python'] - - >>> git_list.pop() - 'python' - - >>> del git_list[1] - >>> git_list - ['qiwsir', 'github.com', 'io'] - -以上这些操作,如果用在字符串上,都会报错,比如: - - >>> welcome_str - 'Welcome you' - - >>> welcome_str[1]='E' - Traceback (most recent call last): - File "", line 1, in - TypeError: 'str' object does not support item assignment - - >>> del welcome_str[1] - Traceback (most recent call last): - File "", line 1, in - TypeError: 'str' object doesn't support item deletion - - >>> welcome_str.append("E") - Traceback (most recent call last): - File "", line 1, in - AttributeError: 'str' object has no attribute 'append' - -如果要修改一个str,不得不这样。 - - >>> welcome_str - 'Welcome you' - >>> welcome_str[0]+"E"+welcome_str[2:] #从新生成一个str - 'WElcome you' - >>> welcome_str #对原来的没有任何影响 - 'Welcome you' - -其实,在这种做法中,相当于重新生成了一个str。 - -##多维list - -这个也应该算是两者的区别了,虽然有点牵强。 - -在字符串里面的每个元素只能是字符;在列表中,元素可以是任何类型的数据。前面见的多是数字或者字符,其实还可以这样: - - >>> matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] - -这个列表的元素,是另外三个列表。这样的列表,称之为多维列表。如果读者学习过行列式,这就比较容易理解了。 - - >>> matrix[0][1] - 2 - -当然,列表也可以是这样的: - - >>> mult = [[1,2,3],['a','b','c'],'d','e'] - >>> mult - [[1, 2, 3], ['a', 'b', 'c'], 'd', 'e'] - >>> mult[1][1] - 'b' - >>> mult[2] - 'd' - -在多维的情况下,里面的list被当成一个元素对待。 - -##列表和字符串转化 - -符合某些条件的情况下,可以实现列表和字符串之间的转化。会使用到`split()`和`join()`,对这两个函数,已经不陌生了,在前面字符串部分已经见过。 - -一回生,二回熟,这次再见面,特别是在已经学习了列表的基础上,应该有更深刻的理解。 - -###str.split() - -这个内置函数实现的是将str转化为list。其中str=""是分隔符。 - -在看例子之前,请看官在交互模式下做如下操作: - - >>>help(str.split) - - split(...) - S.split([sep [,maxsplit]]) -> list of strings - - Return a list of the words in the string S, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done. If sep is not specified or is None, any whitespace string is a separator and empty strings are removed from the result. - -不管是否看懂上面这段话,都可以看例子。还是希望能够理解上面的内容。 - - >>> line = "Hello.I am qiwsir.Welcome you." - - >>> line.split(".") #以英文的句点为分隔符,得到list - ['Hello', 'I am qiwsir', 'Welcome you', ''] - - >>> line.split(".", 1) #这个1,就是表达了上文中的:If maxsplit is given, at most maxsplit splits are done. - ['Hello', 'I am qiwsir.Welcome you.'] - - >>> name = "Albert Ainstain" #也有可能用空格来做为分隔符 - >>> name.split(" ") - ['Albert', 'Ainstain'] - -下面的例子,让你更有点惊奇了。 - - >>> s = "I am, writing\npython\tbook on line" #这个字符串中有空格,逗号,换行\n,tab缩进\t 符号 - >>> print s #输出之后的样式 - I am, writing - python book on line - >>> s.split() #用split(),但是括号中不输入任何参数 - ['I', 'am,', 'writing', 'python', 'book', 'on', 'line'] - -如果split()不输入任何参数,显示就是见到任何分割符号,就用其分割了。 - -###"[sep]".join(list) - -join可以说是split的逆运算,承接前面的操作: - - >>> name - ['Albert', 'Ainstain'] - >>> "".join(name) #将list中的元素连接起来,但是没有连接符,表示一个一个紧邻着 - 'AlbertAinstain' - >>> ".".join(name) #以英文的句点做为连接分隔符 - 'Albert.Ainstain' - >>> " ".join(name) #以空格做为连接的分隔符 - 'Albert Ainstain' - -回到上面那个神奇的例子中,可以这么使用join. - - >>> s = "I am, writing\npython\tbook on line" - >>> print s - I am, writing - python book on line - >>> s.split() - ['I', 'am,', 'writing', 'python', 'book', 'on', 'line'] - >>> " ".join(s.split()) #重新连接,不过有一点遗憾,am后面逗号还是有的。怎么去掉? - 'I am, writing python book on line' - -读者是否感到新奇,对于`join()`函数,其格式是`"sep".join(list)`,不是`list.join(sep)`。其实,`join()`是字符串的方法,不是列表的方法。 - - >>> help(str.join) - Help on method_descriptor: - - join(...) - S.join(iterable) -> str - - Return a string which is the concatenation of the strings in the - iterable. The separator between elements is S. - -不过,能传入`join()`的对象,或者说参数的值,也是有条件的。下面的就不行。 - - >>> a = [1,2,3,'a','b','c'] - >>> "+".join(a) - Traceback (most recent call last): - File "", line 1, in - "+".join(a) - TypeError: sequence item 0: expected str instance, int found - -“列表是苦力”,但是暂且让它干这么多。因为更多类型的对象依次登场,先让它到后台。 - ------- - -[总目录](./index.md)   |   [上节:列表(3)](./113.md)   |   [下节:元组](./115.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/115.md b/115.md deleted file mode 100644 index 0bbddda..0000000 --- a/115.md +++ /dev/null @@ -1,119 +0,0 @@ ->“谁愿为首,就必作你们的仆人。正如人子来,不是要受人的服事,乃是要服事人,并且要舍命,作多人的赎价。”(MATTHEW 20:27-28) - -#元组 - -元组是Python中的一种对象类型。它与之前的列表、字符串、整数、浮点数等并列。 - -但,因为它跟列表接近,经常被忽略。 - -##定义 - -先看一个例子: - - >>> s = "abc" - >>> s - 'abc' - -这是一个简单的赋值,还可以这样写,这就是Python的与众不同之处。 - - >>> t = 123, 'abc', ["come","here"] - >>> t - (123, 'abc', ['come', 'here']) - -不仅没有报错,也没有“最后一个有效”,而是将对象放到了一个圆括号里面。 - -这个带有圆括号的对象,就是一种新的对象(或数据)类型:tuple(元组)。 - - >>> type(t) - #这是Python 3的结果,在Python 2中显示: - -**元组是用圆括号括起来的,其中的元素之间用逗号隔开。(都是英文半角)** - -元组中的元素类型是任意的Python对象(数据)。 - ->这种类型,可以歪着想,所谓“元”组,就是用“圆”括号啦。 - -仅从前面那个例子,显而易见得出,元组是序列,这点上跟列表和字符串类似。 - -但元组中的元素不能更改,这点上跟列表不同,倒是跟str类似;它的元素又可以是任何类型的数据,这点上跟列表相同,但不同于字符串。 - - >>> t = 1,"23",[123,"abc"],("python","learn") #元素多样性,近list - >>> t - (1, '23', [123, 'abc'], ('python', 'learn')) - - >>> t[0] = 8  #不能原地修改,近str - Traceback (most recent call last): - File "", line 1, in - TypeError: 'tuple' object does not support item assignment - - >>> t.append("no") - Traceback (most recent call last): - File "", line 1, in - AttributeError: 'tuple' object has no attribute 'append' - -从上面的简单比较似乎可以认为,元组就是一个融合了部分列表和部分字符串属性的杂交产物。此言有理。 - -##索引和切片 - -元组是序列,因此,元组的基本操作就和列表和字符串相仿。 - -例如: - - >>> t = (1, '23', [123, 'abc'], ('python', 'learn')) - >>> t[2] - [123, 'abc'] - >>> t[1:] - ('23', [123, 'abc'], ('python', 'learn')) - - >>> t[2][0] #还能这样呀,哦对了,list中也能这样 - 123 - >>> t[3][1] - 'learn' - -关于序列的基本操作在元组上的表现,就不一一展示了。读者可以去试试。 - -但是这里要特别提醒,如果一个元组中只有一个元素的时候,应该在该元素后面加一个半角的英文逗号。 - - >>> a = (3) - >>> type(a) - - - >>> b = (3,) - >>> type(b) - - -以上面的例子说明,如果不加那个逗号,就不是元组,加了才是。这也是为了避免让Python误解你要表达的内容。 - -**所有在列表中可以修改列表的方法,在元组中,都失效。**因为元组不可修改。 - -分别用`list()`和`tuple()`能够实现两者的转化: - - >>> t = (1, '23', [123, 'abc'], ('python', 'learn')) - >>> tls = list(t) #tuple-->list - >>> tls - [1, '23', [123, 'abc'], ('python', 'learn')] - - >>> t_tuple = tuple(tls) #list-->tuple - >>> t_tuple - (1, '23', [123, 'abc'], ('python', 'learn')) - -##元组用在哪里? - -既然它是列表和字符串的杂合,它有什么用途呢?不是用列表和字符串都可以了吗? - -在很多时候,的确是用列表和字符串都可以了。但是,不要忘记,我们用计算机语言解决的问题不都是简单问题,就如同我们的自然语言一样,虽然有的词汇看似可有可无,用别的也能替换之,但是我们依然需要在某些情况下使用它们. - -一般认为,元组有这类特点,并且是它使用的情景: - -- 元组比列表操作速度快。如果您定义了一个值的常量集,并且唯一要用它做的是不断地遍历它,请使用元组代替列表。 -- 如果对不需要修改的数据进行 “写保护”,可以使代码更安全。使用元组而不是列表如同拥有一个隐含的 assert 语句,说明这一数据是常量。如果必须要改变这些值,则需要执行元组到列表的转换 (需要使用一个特殊的函数)。 -- 元组可以在字典(又一种对象类型,后面要讲述) 中被用做 key,但是列表不行。字典的key 必须是不可变的。元组本身是不可改变的,列表是可变的。 -- 元组可以用在字符串格式化中。 - -元组很简单,不用过多的篇幅说明,但是,依然建议读者把它作为序列,依次按照序列的操作对元组进行实践。 - ------- - -[总目录](./index.md)   |   [上节:回顾list和str](./114.md)   |   [下节:字典(1)](./116.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/116.md b/116.md deleted file mode 100644 index 97fbe7a..0000000 --- a/116.md +++ /dev/null @@ -1,261 +0,0 @@ ->Now I appeal to you, brothers and sisters, by the name of our Lord Jesus Christ, that all of you be in agreement and that there be no divisions among you, but that you be united in the same mind and the same purpose. (1 CORINTHIANS 1:10) - -#字典(1) - -字典,这个东西你现在还用吗?随着网络的发展,用的人越来越少了。不少人习惯于在网上搜索,不仅有web版,乃至于已经有手机版的各种字典了。 - -我曾经上过小学,这是事实,那时候曾经用过一本小小的《新华字典》,与我差不多年龄的朋友,也都有同样的记忆,没记错的话应该是1.01元人民币一本。 - ->《新华字典》是中国第一部现代汉语字典。最早的名字叫《伍记小字典》,但未能编纂完成。自1953年,开始重编,其凡例完全采用《伍记小字典》。从1953年开始出版,经过反复修订,但是以1957年商务印书馆出版的《新华字典》作为第一版。原由新华辞书社编写,1956年并入中科院语言研究所(现中国社科院语言研究所)词典编辑室。新华字典由商务印书馆出版。历经几代上百名专家学者10余次大规模的修订,重印200多次。成为迄今为止世界出版史上最高发行量的字典。 - -这里讲到字典,不是为了回忆青葱岁月。而是提醒读者想想曾经如何使用字典:先查索引(不管是拼音还是偏旁查字),然后通过索引找到相应内容。不用从头开始一页一页地找。 - -这种方法能够快捷的找到目标。 - -正是基于这种需要,Python中有了一种叫做dictionary的对象(数据)类型,翻译过来就是“字典”,用dict表示。 - -假设一种需要,要存储城市和电话区号,苏州的区号是0512,唐山的是0315,北京的是011,上海的是012。用前面已经学习过的知识,可以这么来做: - - >>> citys = ["suzhou", "tangshan", "beijing", "shanghai"] - >>> city_codes = ["0512", "0315", "011", "012"] - -用一个列表来存储城市名称,然后用另外一个列表,一一对应地保存区号。假如要输出苏州的区号,可以这么做: - - >>> print "{} : {}".format(citys[0], city_codes[0]) - suzhou : 0512 - -请特别注意,我在city_codes中,表示区号的元素没有用整数型,而是使用了字符串类型,你知道为什么吗? - -如果用整数,就是这样的。 - - >>> suzhou_code = 0512 - >>> print suzhou_code - 330 - -怎么会这样?!读者能不能给出解答? - -这样来看,用两个列表分别来存储城市和区号,似乎能够解决问题。但是,这不是最好的选择,至少在Python里面。因为Python还提供了另外一种方案,那就是字典(dict)。 - -##创建字典 - -创建字典,有多种方法,依次尝试。 - -**方法1:** - -创建一个空的字典,然后可以向里面加东西。 - - >>> mydict = {} - >>> mydict - {} - -不要小看“空”,“色即是空,空即是色”,在编程中,“空”是很重要。一般带“空”字的人都很有名,比如孙悟空,哦。好像他应该是猴、或者是神。举一个人的名字,带“空”字,你懂得。 - -还可以创建不空的字典。 - - >>> person = {"name":"qiwsir", "site":"qiwsir.github.io", "language":"python"} - >>> person - {'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} - -`"name":"qiwsir"`,有一个优雅的名字:键/值对。前面的`name`叫做键(key),后面的`qiwsir`是前面的键所对应的值(value)。 - -在一个字典中,键是唯一的,不能重复。值则是对应于键,值可以重复。 - -键值之间用(`:`)英文的冒号,每一对键值之间用英文的逗号(`,`)隔开。 - -向已经建立的字典中,增加键值对的一种方法是这样的: - - >>> person['name2'] = "qiwsir" - >>> person - {'name2': 'qiwsir', 'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} - -用这样的方法可以向一个字典类型的对象中增加“键值对”,也可以说是增加数值。那么,增加了值之后,那个字典还是原来的吗?也就是也要同样探讨一下,字典是否能原地修改?(列表可以,所以列表是可变的;字符串和元组都不行,所以它们是不可变的。) - - >>> ad = {} - >>> id(ad) - 3072770636L - >>> ad["name"] = "qiwsir" - >>> ad - {'name': 'qiwsir'} - >>> id(ad) - 3072770636L - -实验表明,字典可以原地修改,即它是可变的。 - -**方法2:** - -利用元组建构字典,方法如下: - - >>> name = (["first", "Google"], ["second", "Yahoo"]) - >>> website = dict(name) - >>> website - {'second': 'Yahoo', 'first': 'Google'} - -或者用这样的方法: - - >>> ad = dict(name = "qiwsir", age = 42) - >>> ad - {'age': 42, 'name': 'qiwsir'} - -**方法3:** - -这个方法,跟上面的不同在于使用fromkeys - - >>> website = {}.fromkeys(("third", "forth"), "facebook") - >>> website - {'forth': 'facebook', 'third': 'facebook'} - -需要提醒注意的是,在字典中的“键”,必须是不可变的数据类型;“值”可以是任意数据类型。 - - >>> dd = {(1,2):1} - >>> dd - {(1, 2): 1} - >>> dd = {[1,2]:1} - Traceback (most recent call last): - File "", line 1, in - TypeError: unhashable type: 'list' - -##访问字典的值 - -字典对象是以键值对的形式存储数据的,所以,只要知道键,就能得到值。这本质上就是一种映射关系。 - ->映射,就好比“物体”和“影子”的关系,“形影相吊”,两者之间是映射关系。此外,映射也是一个严格数学概念:A是非空集合,A到B的映射是指:A中每个元素都对应到B中的某个元素。 - -既然是映射,就可以通过字典的“键”找到相应的“值”。 - - >>> person = {'name2': 'qiwsir', 'name': 'qiwsir', 'language': 'python', 'site': 'qiwsir.github.io'} - >>> person['name'] - 'qiwsir' - >>> person['language'] - 'python' - -通过“键”能够读取到相应的“值”。在前面的操作中,也显示了,通过“键”能够增加字典中的“值”。 - -还有,通过“键”能够改变字典中的“值”。 - -本节开头那个城市和区号的关系,也可以用字典来存储和读取。 - - >>> city_code = {"suzhou":"0512", "tangshan":"0315", "beijing":"011", "shanghai":"012"} - >>> print city_code["suzhou"] - 0512 - -既然字典是键值对的映射,就不用考虑所谓“排序”问题了,只要通过键就能找到值,至于这个键值对位置在哪里就不用考虑了。比如,刚才建立的city_code - - >>> city_code - {'suzhou': '0512', 'beijing': '011', 'shanghai': '012', 'tangshan': '0315'} - -虽然这里显示的和刚刚赋值的时候顺序有别,但是不影响读取其中的值。 - -在列表中,得到值是用索引的方法。那么在字典中有索引吗?当然没有,因为它没有顺序,哪里来的索引呢?所以,在字典中就不要什么索引和切片了。 - ->字典中的这类以键值对的映射方式存储数据,是一种非常高效的方法,比如要读取值得时候,如果用列表,Python需要从头开始读,直到找到指定的那个索引值。但是,在字典中是通过“键”来得到值。要高效得多。 ->正是这个特点,键值对这样的形式可以用来存储大规模的数据,因为检索快捷。规模越大越明显。所以,mongdb这种非关系型数据库在大数据方面比较流行了。 - -##基本操作 - -字典虽然跟列表有很大的区别,但是依然有不少类似的地方。它的基本操作: - -- len(d),返回字典(d)中的键值对的数量 -- d[key],返回字典(d)中的键(key)的值 -- d[key]=value,将值(value)赋给字典(d)中的键(key) -- del d[key],删除字典(d)的键(key)项(将该键值对删除) -- key in d,检查字典(d)中是否含有键为key的项 - -依次进行演示。 - - >>> city_code - {'suzhou': '0512', 'beijing': '011', 'shanghai': '012', 'tangshan': '0315'} - >>> len(city_code) - 4 - -以city_code为操作对象,len(city_code)的值是4,表明有四组键值对,也可以说是四项。 - - >>> city_code["nanjing"] = "025" - >>> city_code - {'suzhou': '0512', 'beijing': '011', 'shanghai': '012', 'tangshan': '0315', 'nanjing': '025'} - -向其中增加一项 - - >>> city_code["beijing"] = "010" - >>> city_code - {'suzhou': '0512', 'beijing': '010', 'shanghai': '012', 'tangshan': '0315', 'nanjing': '025'} - -突然发现北京的区号写错了。可以这样修改。这进一步说明字典的值是可变的。 - - >>> city_code["shanghai"] - '012' - >>> del city_code["shanghai"] - -通过`city_code["shanghai"]`能够查看到该键(key)所对应的值(value),结果发现也错了。干脆删除,用del,将那一项都删掉。 - - >>> city_code["shanghai"] - Traceback (most recent call last): - File "", line 1, in - KeyError: 'shanghai' - >>> "shanghai" in city_code - False - -因为键是`"shanghai"`的那个键值对项已经删除了,随意不能找到,用`in`来看看,返回的是`False`。 - - >>> city_code - {'suzhou': '0512', 'beijing': '010', 'tangshan': '0315', 'nanjing': '025'} - -真的删除了哦。没有了。 - -##字符串格式化输出 - -这是一个前面已经探讨过的话题,请参看[《字符串(4)》](./109.md),这里再次提到,就是因为用字典也可以实现格式化字符串的目的。 - - >>> city_code = {"suzhou":"0512", "tangshan":"0315", "hangzhou":"0571"} - >>> " Suzhou is a beautiful city, its area code is %(suzhou)s" % city_code - ' Suzhou is a beautiful city, its area code is 0512' - -这种写法是非常简洁,而且很有意思的。有人说它简直是酷。 - -其实,更酷还是下面的——模板 - -在做网页开发的时候,通常要用到模板,也就是你只需要写好HTML代码,然后将某些部位空出来,等着Python后台提供相应的数据即可。 - -当然,下面所演示的是玩具代码,基本没有什么使用价值,因为在真实的网站开发中,这样的姿势很少用上。但是,它绝非花拳绣腿,而是你能够明了其本质,至少了解到一种格式化方法的应用。 - - >>> temp = "%(lang)s<title><body><p>My name is %(name)s.</p></body></head></html>" - >>> my = {"name":"qiwsir", "lang":"python"} - >>> temp % my - '<html><head><title>python<title><body><p>My name is qiwsir.</p></body></head></html>' - -temp就是所谓的模板,在双引号所包裹的实质上是一段HTML代码。然后在字典中写好一些数据,按照模板的要求在相应位置显示对应的数据。 - -是不是一个很有意思的屠龙之技? - ->什么是HTML? 下面是在《维基百科》上抄录的: - ->超文本标记语言(英文:HyperText Markup Language,HTML)是为「网页创建和其它可在网页浏览器中看到的信息」设计的一种标记语言。HTML被用来结构化信息——例如标题、段落和列表等等,也可用来在一定程度上描述文档的外观和语义。1982年由蒂姆·伯纳斯-李创建,由IETF用简化的SGML(标准通用标记语言)语法进行进一步发展的HTML,后来成为国际标准,由万维网联盟(W3C)维护。 - ->HTML经过发展,现在已经到HTML5了。现在的HTML设计,更强调“响应式”设计,就是能够兼顾PC、手机和各种PAD的不同尺寸的显示器浏览。如果要开发一个网站,一定要做到“响应式”设计,否则就只能在PC上看,在手机上看就不得不左右移动。 - -##知识 - -什么是关联数组?以下解释来自[维基百科](http://zh.wikipedia.org/wiki/%E5%85%B3%E8%81%94%E6%95%B0%E7%BB%84) - ->在计算机科学中,关联数组(英语:Associative Array),又称映射(Map)、字典(Dictionary)是一个抽象的数据结构,它包含着类似于(键,值)的有序对。一个关联数组中的有序对可以重复(如C++中的multimap)也可以不重复(如C++中的map)。 - ->这种数据结构包含以下几种常见的操作: ->>1.向关联数组添加配对 ->>2.从关联数组内删除配对 ->>3.修改关联数组内的配对 ->>4.根据已知的键寻找配对 - ->字典问题是设计一种能够具备关联数组特性的数据结构。解决字典问题的常用方法,是利用散列表,但有些情况下,也可以直接使用有地址的数组,或二叉树,和其他结构。 - ->许多程序设计语言内置基本的数据类型,提供对关联数组的支持。而Content-addressable memory则是硬件层面上实现对关联数组的支持。 - -什么是哈希表?关于哈希表的叙述比较多,这里仅仅截取了概念描述,更多的可以到[维基百科上阅读](http://zh.wikipedia.org/wiki/%E5%93%88%E5%B8%8C%E8%A1%A8)。 - ->散列表(Hash table,也叫哈希表),是根据关键字(Key value)而直接访问在内存存储位置的数据结构。也就是说,它通过把键值通过一个函数的计算,映射到表中一个位置来访问记录,这加快了查找速度。这个映射函数称做散列函数,存放记录的数组称做散列表。 - -以上对字典有了基本了解,后面要深入对字典的认识。 - ------- - -[总目录](./index.md)   |   [上节:元组](./115.md)   |   [下节:字典(2)](./117.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/117.md b/117.md deleted file mode 100644 index c8cbfd6..0000000 --- a/117.md +++ /dev/null @@ -1,491 +0,0 @@ ->耶稣对他说:“你要尽心、尽性、尽意,爱主你的神。这是诫命中的第一,且是最大的。其次也相仿,就是要爱人如己。这两条诫命是律法和先知一切道理的总纲。”(MATTHEW 22:37-39) - -#字典(2) - -##字典方法 - -跟前面所讲述的其它对象类似,字典也有一些方法。通过这些方法,能够实现对字典的操作。 - -这回可不是屠龙之技了,这些方法在编程实践中经常会用到。 - -###copy - -拷贝,这个汉语是copy的音译,标准的汉语翻译是“复制”。 - -我还记得当初在学DOS的时候,那个老师说“拷贝”,搞得我晕头转向,他没有说英文的“copy”发音,而是用标准汉语说“kao(三声)bei(四声)”,对于一直学习过英语、标准汉语和我家乡方言的人来说,理解“拷贝”是有点困难的。谁知道在编程界用的是音译呢。 - -在一般的理解中,copy就是将原来的东西再搞一份。但是,在Python里面(乃至于很多编程语言中),copy可不是那么简单的。 - - >>> a = 5 - >>> b = a - >>> b - 5 - -这样做,是不是就得到了两个5了呢?表面上看似乎是,但是,不要忘记我在前面反复提到的:**对象有类型,变量无类型**,正是因着这句话,变量其实是一个标签。不妨请出法宝:`id()`,专门查看对象在内存中的位置。 - - >>> id(a) - 139774080 - >>> id(b) - 139774080 - -果然,并没有两个5,就一个,只不过是贴了两张标签而已。 - -这种现象普遍存在于Python中。其它的就不演示了,就仅看看字典类型。 - - >>> ad = {"name":"qiwsir", "lang":"python"} - >>> bd = ad - >>> bd - {'lang': 'python', 'name': 'qiwsir'} - >>> id(ad) - 3072239652L - >>> id(bd) - 3072239652L - -是的,验证了。的确是一个对象贴了两个标签。 - -这是用赋值的方式,实现的所谓“假装拷贝”。 - -如果用`copy()`方法呢? - - >>> cd = ad.copy() - >>> cd - {'lang': 'python', 'name': 'qiwsir'} - >>> id(cd) - 3072239788L - -果然不同,这次得到的cd是跟原来的ad不同的,它在内存中另辟了一个空间。 - -现在有两个字典对象,虽然它们是一样的,但在两个“窝”里面,彼此互不相干。如果我尝试修改cd,就应该对原来的ad不会造成任何影响。 - - >>> cd["name"] = "itdiffer.com" - >>> cd - {'lang': 'python', 'name': 'itdiffer.com'} - >>> ad - {'lang': 'python', 'name': 'qiwsir'} - -真的是那样,跟推理一模一样。所以,要理解了“变量”是对象的标签,对象有类型而变量无类型,就能正确推断出Python能够提供的结果。 - - >>> bd - {'lang': 'python', 'name': 'qiwsir'} - >>> bd["name"] = "laoqi" - >>> ad - {'lang': 'python', 'name': 'laoqi'} - >>> bd - {'lang': 'python', 'name': 'laoqi'} - -这是又修改了bd所对应的“对象”,结果发现ad的“对象”也变了。 - -然而,事情没有那么简单,看下面的,要仔细点,否则就迷茫了。 - - >>> x = {"name":"qiwsir", "lang":["python", "java", "c"]} - >>> y = x.copy() - >>> y - {'lang': ['python', 'java', 'c'], 'name': 'qiwsir'} - >>> id(x) - 3072241012L - >>> id(y) - 3072241284L - -y是从x拷贝过来的,两个在内存中是不同的对象。 - - >>> y["lang"].remove("c") - -为了便于理解,尽量使用短句子,避免用很长很长的复合句。 - -在y所对应的字典对象中,键"lang"的值是一个列表,为['python', 'java', 'c'],这里用`remove()`这个列表方法删除其中的一个元素`"c"`。删除之后,这个列表变为:`['python', 'java']`。 - - >>> y - {'lang': ['python', 'java'], 'name': 'qiwsir'} - -果然不出所料。 - -那么,那个x所对应的字典中,这个列表变化了吗? - -应该没有变化。因为按照前面所讲的,它是另外一个对象,两个互不干扰。 - - >>> x - {'lang': ['python', 'java'], 'name': 'qiwsir'} - -是不是有点出乎意料呢? - -我没有作弊哦。你如果不信,就按照操作自己在交互模式中试试,是不是能够得到这个结果呢?这是为什么? - -但是,如果要操作另外一个键值对: - - >>> y["name"] = "laoqi" - >>> y - {'lang': ['python', 'java'], 'name': 'laoqi'} - >>> x - {'lang': ['python', 'java'], 'name': 'qiwsir'} - -前面所说的原理是有效的,为什么到值是列表的时候就不奏效了呢? - -要破解这个迷局还得用`id()` - - >>> id(x) - 3072241012L - >>> id(y) - 3072241284L - -x,y对应着两个不同对象,的确如此。但这个对象(字典)是由两个键值对组成的。其中一个键的值是列表。 - - >>> id(x["lang"]) - 3072243276L - >>> id(y["lang"]) - 3072243276L - -发现了这样一个事实,列表是同一个对象。 - -但是,作为字符串为值得那个键值对,是分属不同对象。 - - >>> id(x["name"]) - 3072245184L - >>> id(y["name"]) - 3072245408L - -这个事实,就说明了为什么修改一个列表,另外一个也跟着修改;而修改一个的字符串,另外一个不跟随的原因了。 - -但是,似乎还没有解开深层的原因。 - -深层的原因,这跟Python存储的数据类型特点有关,Python只存储基本类型的数据,比如int、str,对于不是基础类型的,比如刚才字典的值是列表,Python不会在被复制的那个对象中重新存储,而是用引用的方式,指向原来的值。 - -如果读者没有明白这句话的意思,我就只能说点通俗的了(我本来不想说通俗的,装着自己有学问)。Python在所执行的复制动作中,如果是基本类型的对象(专指数字和字符串),就在内存中重新建个窝;如果不是基本类型的,就不新建窝了,而是用标签引用原来的窝。这也好理解,如果比较简单,随便建立新窝简单;但是,如果对象太复杂了,就别费劲了,还是引用一下原来的省事。(这么讲有点忽悠了)。 - -所以,在编程语言中,把实现上面那种拷贝的方式称之为“浅拷贝”。顾名思义,没有解决深层次问题。言外之意,还有能够解决深层次问题的方法喽。 - -的确是,在Python中,有一个“深拷贝”(deep copy)。不过,要用下一`import`来导入一个模块。这个东西后面会讲述,前面也遇到过了。 - - >>> import copy - >>> z = copy.deepcopy(x) - >>> z - {'lang': ['python', 'java'], 'name': 'qiwsir'} - -用`copy.deepcopy()`深拷贝了一个新的副本,看这个函数的名字就知道是深拷贝(deepcopy)。用上面用过的武器`id()`来勘察一番: - - >>> id(x["lang"]) - 3072243276L - >>> id(z["lang"]) - 3072245068L - -果然是另外一个“窝”,不是引用了。如果按照这个结果,修改其中一个列表中的元素,应该不影响另外一个了。 - - >>> x - {'lang': ['python', 'java'], 'name': 'qiwsir'} - >>> x["lang"].remove("java") - >>> x - {'lang': ['python'], 'name': 'qiwsir'} - >>> z - {'lang': ['python', 'java'], 'name': 'qiwsir'} - -果然如此。再试试,才过瘾呀。 - - >>> x["lang"].append("c++") - >>> x - {'lang': ['python', 'c++'], 'name': 'qiwsir'} - -这就是所谓浅拷贝和深拷贝。 - -###clear - -在交互模式中,用`help()`是一个很好的习惯 - - >>> help(dict.clear) - - clear(...) - D.clear() -> None. Remove all items from D. - -这是一个清空字典中所有元素的操作。 - - >>> a = {"name":"qiwsir"} - >>> a.clear() - >>> a - {} - -这就是`clear()`的含义,将字典清空,得到的是“空”字典。这个上节说的`del()`有着很大的区别。`del()`是将字典删除,内存中就没有它了,不是为“空”。 - - >>> del a - >>> a - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name 'a' is not defined - -果然删除了。 - -`clear()`后的字典,是将其内容清空,还能够使用`a = {}`这种方法。 - -最后提醒,`clear()`没有返回值。 - -###get,setdefault - -get的含义是: - - get(...) - D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None. - -注意这个说明中,“if k in D”,就返回其值,否则...(等会再说)。 - - >>> d - {'lang': 'python'} - >>> d.get("lang") - 'python' - -`dict.get()`就是要得到字典中某个键的值,不过,它不是那么“严厉”罢了。因为类似获得字典中键的值得方法,上节已经有过,如`d['lang']`就能得到对应的值`"python"`,可是,如果要获取的键不存在,如: - - >>> print d.get("name") - None - - >>> d["name"] - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - KeyError: 'name' - -这就是`dict.get()`和`dict['key']`的区别。 - -前面有一个半句话,如果键不在字典中,会返回None,这是一种情况。还可以这样: - - >>> d = {"lang":"python"} - >>> newd = d.get("name",'qiwsir') - >>> newd - 'qiwsir' - >>> d - {'lang': 'python'} - -以`d.get("name",'qiwsir')`的方式,如果不能得到键`"name"`的值,就返回后面指定的值`"qiwsir"`。这就是文档中那句话:`D[k] if k in D, else d.`的含义。这样做,并没有影响原来的字典。 - -另外一个跟get在功能上有相似地方的`D.setdefault(k)`,其含义是: - - setdefault(...) - D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D - -首先,它要执行`D.get(k,d)`,就跟前面一样了,然后,进一步执行另外一个操作,如果键k不在字典中,就在字典中增加这个键值对。当然,如果有就没有必要执行这一步了。 - - >>> d - {'lang': 'python'} - >>> d.setdefault("lang") - 'python' - -在字典中,有`"lang"`这个键,那么就返回它的值。 - - >>> d.setdefault("name","qiwsir") - 'qiwsir' - >>> d - {'lang': 'python', 'name': 'qiwsir'} - -没有`"name"`这个键,于是返回`d.setdefault("name","qiwsir")`指定的值"qiwsir",并且将键值对`'name':"qiwsir"`添加到原来的字典中。 - -如果这样操作: - - >>> d.setdefault("web") - -什么也没有返回吗?不是,返回了,只不过没有显示出来,如果你用print就能看到了。因为这里返回的是一个None.不妨查看一下那个字典。 - - >>> d - {'lang': 'python', 'web': None, 'name': 'qiwsir'} - -是不是键`"web"`的值成为了`None`。 - -###items/iteritems, keys/iterkeys, values/itervalues - -这个标题中列出的是三组字典的函数,并且这三组有相似的地方。 - -注意,在Python 3 中,因为已经做了优化,所以不需要有`iteritems`,`iterkeys`和`itervalues`三个方法。 - -在这里详细讲述第一组,其余两组,我想凭借读者的聪明智慧是不在话下的。 - -Python 2中: - - >>> help(dict.items) - - items(...) - D.items() -> list of D's (key, value) pairs, as 2-tuples - -Python 3中: - - >>> help(dict.items) - Help on method_descriptor: - - items(...) - D.items() -> a set-like object providing a view on D's items - -这种方法是惯用的伎俩了,只要在交互模式中鼓捣一下,就能得到帮助信息。 - -Python 2中,`D.items()`能够得到一个关于字典的列表,列表中的元素是由字典中的键和值组成的元组。例如: - - >>> dd = {"name":"qiwsir", "lang":"python", "web":"www.itdiffer.com"} - >>> dd_kv = dd.items() - >>> dd_kv - [('lang', 'python'), ('web', 'www.itdiffer.com'), ('name', 'qiwsir')] - -显然,是有返回值的。这个操作,在后面要讲到的循环中,将有很大的作用。 - -跟`items`类似的就是`iteritems`,看这个词的特点,是由iter和items拼接而成的,后部分items就不用说了,肯定是在告诉我们,得到的结果跟`D.items()`的结果类似。是的,但是,还有一个iter是什么意思?在[《列表(2)](./112.md)中,我提到了一个词“iterable”,它的含义是“可迭代的”,这里的iter是指的名词iterator的前部分,意思是“迭代器”。合起来,"iteritems"的含义就是: - - iteritems(...) - D.iteritems() -> an iterator over the (key, value) items of D - -你看,学习python不是什么难事,只要充分使用帮助文档就好了。这里告诉我们,得到的是一个“迭代器”(关于什么是迭代器,以及相关的内容,后续会详细讲述),这个迭代器是关于“D.items()”的。看个例子就明白了。 - -而Python 3中,`D.items()`返回的就是一个可迭代的对象,就无需`D.iteritems()`了。 - -在Python 2中操作。 - - >>> dd = {'lang': 'python', 'web': 'www.itdiffer.com', 'name': 'qiwsir'} - >>> dd_iter = dd.iteritems() - >>> type(dd_iter) - <type 'dictionary-itemiterator'> - >>> dd_iter - <dictionary-itemiterator object at 0xb72b9a2c> - >>> list(dd_iter) - [('lang', 'python'), ('web', 'www.itdiffer.com'), ('name', 'qiwsir')] - -得到的dd_iter的类型,是一个'dictionary-itemiterator'类型,不过这种迭代器类型的数据不能直接输出,必须用`list()`转换一下,才能看到里面的真面目。 - -另外两组,含义跟这个相似,只不过是得到key或者value。下面仅列举一下例子,具体内容,读者可以自行在交互模式中看文档。 - - >>> dd - {'lang': 'python', 'web': 'www.itdiffer.com', 'name': 'qiwsir'} - >>> dd.keys() - ['lang', 'web', 'name'] - >>> dd.values() - ['python', 'www.itdiffer.com', 'qiwsir'] - -这里先交代一句,如果要实现对键值对或者键或者值的循环,用迭代器的效率会高一些。对这句话的理解,在后面会给大家进行详细分析。 - -在python3中, 只有items, keys和values方法, 返回的也不是list, 而是[view对象](https://docs.python.org/3/library/stdtypes.html#dict-views) - -###pop, popitem - -在[《列表(3)》](./113.md)中,有关于删除列表中元素的函数`pop`和`remove`,这两个的区别在于`list.remove(x)`用来删除指定的元素,而`list.pop([i])`用于删除指定索引的元素,如果不提供索引值,就默认删除最后一个。 - -在字典中,也有删除键值对的函数。 - - pop(...) - D.pop(k[,d]) -> v, remove specified key and return the corresponding value. - If key is not found, d is returned if given, otherwise KeyError is raised - -`D.pop(k[,d])`是以字典的键为参数,删除指定键的键值对。 - - >>> dd - {'lang': 'python', 'web': 'www.itdiffer.com', 'name': 'qiwsir'} - >>> dd.pop("name") - 'qiwsir' - -要删除指定键"name",返回了其值"qiwsir"。这样,在原字典中,“'name':'qiwsir'”这个键值对就被删除了。 - - >>> dd - {'lang': 'python', 'web': 'www.itdiffer.com'} - -值得注意的是,pop函数中的参数是不能省略的,这跟列表中的那个pop有所不同。 - - >>> dd.pop() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: pop expected at least 1 arguments, got 0 - -如果要删除字典中没有的键值对,也会报错。 - - >>> dd.pop("name") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - KeyError: 'name' - -`pop()`的参数,可以是两个,上面的例子中只写了一个。如果写两个,那么就先检查k是不是存在于字典中的键,如果是,就返回它所对应的值,如果不是,就返回参数中的第二个,当然,如果不写第二个参数,就会如同上面举例一样报错。 - -有意思的是`D.popitem()`倒是跟`list.pop()`有相似之处,不用写参数(list.pop是可以不写参数),但是,`D.popitem()`不是删除最后一个,前面已经交代过了,dict没有顺序,也就没有最后和最先了,它是随机删除一个,并将所删除的返回。 - - popitem(...) - D.popitem() -> (k, v), remove and return some (key, value) pair as a - 2-tuple; but raise KeyError if D is empty. - -如果字典是空的,就要报错了 - - >>> dd = {'lang': 'python', 'web': 'www.itdiffer.com'} - >>> dd.popitem() - ('lang', 'python') - >>> dd - {'web': 'www.itdiffer.com'} - -成功地删除了一对,注意是随机的,不是删除前面显示的最后一个。并且返回了删除的内容,返回的数据格式是元组。 - - >>> dd.popitems() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'dict' object has no attribute 'popitems' - -错了?! - -注意看提示信息,没有那个...,哦,果然错了。注意是popitem,不要多了s,前面的`D.items()`中包含s,是复数形式,说明它能够返回多个结果(多个元组组成的列表),而在`D.popitem()`中,一次只能随机删除一对键值对,并以一个元组的形式返回,所以,要单数形式,不能用复数形式了。 - - >>> dd.popitem() - ('web', 'www.itdiffer.com') - >>> dd - {} - -都删了,现在那个字典成空的了。如果再删,会怎么样? - - >>> dd.popitem() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - KeyError: 'popitem(): dictionary is empty' - -报错信息中明确告知,字典已经是空的了,没有再供删的东西了。 - -###update - -`update()`,看名字就猜测到一二了,是不是更新字典内容呢?的确是。 - - update(...) - D.update([E, ]**F) -> None. Update D from dict/iterable E and F. - If E present and has a .keys() method, does: for k in E: D[k] = E[k] - If E present and lacks .keys() method, does: for (k, v) in E: D[k] = v - In either case, this is followed by: for k in F: D[k] = F[k] - -不过,看样子这个函数有点复杂。不要着急,通过实验可以一点一点鼓捣明白的。 - -首先,这个函数没有返回值,或者说返回值是None,它的作用就是更新字典。其参数可以是字典或者某种可迭代的对象。 - - >>> d1 = {"lang":"python"} - >>> d2 = {"song":"I dreamed a dream"} - >>> d1.update(d2) - >>> d1 - {'lang': 'python', 'song': 'I dreamed a dream'} - >>> d2 - {'song': 'I dreamed a dream'} - -这样就把字典d2更新入了d1那个字典,于是d1中就多了一些内容,把d2的内容包含进来了。d2当然还存在,并没有受到影响。 - -还可以用下面的方法更新: - - >>> d2 - {'song': 'I dreamed a dream'} - >>> d2.update([("name","qiwsir"), ("web","itdiffer.com")]) - >>> d2 - {'web': 'itdiffer.com', 'name': 'qiwsir', 'song': 'I dreamed a dream'} - -列表中以元组为元素,每个元组是一个键值对。 - -###has_key - -这个函数的功能是判断字典中是否存在某个键,它目前仅存在于Python 2,在Python 3中取消了这个函数。 - - has_key(...) - D.has_key(k) -> True if D has a key k, else False - -跟前一节中遇到的`k in D`类似。 - - >>> d2 - {'web': 'itdiffer.com', 'name': 'qiwsir', 'song': 'I dreamed a dream'} - >>> d2.has_key("web") - True - >>> "web" in d2 - True - -在Python 3中,类似判断使用`k in D`,甚至在Python 2中,这也是很好的方法。 - -关于dict的函数,似乎不少。但是,不用着急,也不用担心记不住,因为根本不需要记忆。只要会用搜索即可。 - ------- - -[总目录](./index.md)   |   [上节:字典(1)](./116.md)   |   [下节:集合(1)](./118.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/118.md b/118.md deleted file mode 100644 index 0435928..0000000 --- a/118.md +++ /dev/null @@ -1,330 +0,0 @@ ->Stay awake and pray that you may not come into the time of trial; the spirit indeed is willing, but the flesh is weak.(MATTHEW 26:41) - -#集合(1) - -已经学习了几种对象类型。 - -温故而知新。它们是:int/float/str/bool/list/dict/tuple - -还真的不少了。 - -不过,Python是一个发展的语言,没准以后还出别的呢。 - -读者可能有疑问了,出了这么多的类型,我也记不住呀,特别是里面还有不少方法。 - -不要担心记不住,你只要记住爱因斯坦说的就好了。 - ->爱因斯坦在美国演讲,有人问:“你可记得声音的速度是多少?你如何记下许多东西?” - ->爱因斯坦轻松答道:“声音的速度是多少,我必须查辞典才能回答。因为我从来不记在辞典上已经印着的东西,我的记忆力是用来记忆书本上没有的东西。” - -多么霸气的回答。 - -这回答不仅仅霸气,更告诉我们一种方法:只要能够通过某种方法查找到的,就不需要记忆。 - -所以,再多的数据类型及其各种方法,都不需要记忆。因为它们都可以通过下述方法但不限于这些方法查到(这句话的逻辑还是比较严密的,包括但不限于...) - -- 交互模式下用dir()或者help() -- google(不推荐Xdu,原因自己体会啦) - -还有,如果你经常练习,会发现很多东西自然而然就记住了。 - -在已经学过的不同种类型的对象中: - -- 能够索引的,如list/str,其中的元素可以重复 -- 可变的,如list/dict,即其中的元素/键值对可以原地修改 -- 不可变的,如str/int,即不能进行原地修改 -- 无索引序列的,如dict,即其中的元素(键值对)没有排列顺序 - -现在要介绍另外一种类型的数据,英文是set,翻译过来叫做“集合”。它的特点是:有的可变,有的不可变;元素无次序,不可重复。 - -##创建集合 - -元组算是列表和字符串的某些特征的杂合(杂交的都有自己的优势,上一节的末后已经显示了),那么集合则可以堪称是列表和字典的某些特征杂合. - -请读者细细品味,这种杂合的特征。 - -首先要创建集合,其方法是: - - >>> s1 = set("qiwsir") - >>> s1 - set(['q', 'i', 's', 'r', 'w']) - -把字符串中的字符拆解开,形成集合。 - -特别注意观察,`qiwsir`中有两个`i`,但是在集合中,只有一个`i`,也就是集合中元素不能重复。 - - >>> s2 = set([123,"google","face","book","facebook","book"]) - >>> s2 - set(['facebook', 123, 'google', 'book', 'face']) - -在创建集合的时候,如果发现了重复的元素,就会过滤掉,剩下不重复的。 - -在使用`dir()`来看看集合的方法,特别从下面找一找有没有`index`,如果有它,就说明可以索引,否则,集合就没有索引。 - - >>> dir(set) - ['__and__', '__class__', '__contains__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__iand__', '__init__', '__ior__', '__isub__', '__iter__', '__ixor__', '__le__', '__len__', '__lt__', '__ne__', '__new__', '__or__', '__rand__', '__reduce__', '__reduce_ex__', '__repr__', '__ror__', '__rsub__', '__rxor__', '__setattr__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__xor__', 'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update'] - -请用你那双慧眼,寻找一番。 - -没有`index`。 - -的确没有。所以,集合没有索引,也就没有顺序而言,它不属序列。当你这样操作的时候, - - >>> s1 = set(['q', 'i', 's', 'r', 'w']) - >>> s1[1] - Traceback (most recent call last): - File "<pyshell#10>", line 1, in <module> - s1[1] - TypeError: 'set' object does not support indexing - -报错。并且明确告知我们,不支持索引。 - -除了用`set()`来创建集合。还可以使用`{}`的方式。 - - >>> s3 = {"facebook",123} #通过{}直接创建 - >>> s3 - set([123, 'facebook']) - -但是这种方式不提倡使用。因为我们已经将`{}`常常用在字典上了,要避免歧义才好。 - -看看下面的探讨就发现问题了。 - - >>> s3 = {"facebook", [1,2,'a'], {"name":"python","lang":"english"}, 123} - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: unhashable type: 'dict' - - >>> s3 = {"facebook", [1,2], 123} - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: unhashable type: 'list' - -认真阅读报错信息,有这样的词汇:“unhashable”,在理解这个词之前,先看它的反义词“hashable”,翻译为“可哈希”。网上搜一下,有不少文章对这个进行诠释。如果我们简单点理解,某数据“不可哈希”(unhashable)就是其可变,如list/dict,都能原地修改,就是unhashable。否则,不可变的,类似字符串那样不能原地修改,就是hashable(可哈希)的。 - -对于前面已经提到的字典,其键必须是hashable数据,即不可变的。 - -现在遇到的集合,其元素也要是“可哈希”的。上面例子中,试图将字典、列表作为元素的元素,就报错了。而且报错信息中明确告知列表、字典是不可哈希类型,言外之意,里面的元素都应该是可哈希类型。 - -特别说明,利用`set()`建立起来的集合是可变集合,可变集合都是unhashable类型的。 - -##set的方法 - -从前面的`dir(set)`结果中,你可以看到不少集合的方法。 - -为了看的清楚,我把双划线`__`开始的先删除掉,剩下的就是: - ->'add', 'clear', 'copy', 'difference', 'difference_update', 'discard', 'intersection', 'intersection_update', 'isdisjoint', 'issubset', 'issuperset', 'pop', 'remove', 'symmetric_difference', 'symmetric_difference_update', 'union', 'update' - -然后用help()可以找到每个函数的具体使用方法。读者完全可以用这种方法自己查看了。 - -下面列几个例子。 - -###add, update - - >>> help(set.add) - - Help on method_descriptor: - - add(...) - Add an element to a set. - This has no effect if the element is already present. - -在交互模式这个最好的实验室里面做实验: - - >>> a_set = {} #我想当然地认为这样也可以建立一个set - >>> a_set.add("qiwsir") #报错.看看错误信息,居然告诉我dict没有add.我分明建立的是set呀. - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'dict' object has no attribute 'add' - >>> type(a_set) #type之后发现,计算机认为我建立的是一个dict - <type 'dict'> - -特别说明一下,`{}`这个东西,在字典和集合中都用.但是,如上面的方法建立的是字典,不是集合. - -这是python规定的. - -要建立空集合,不得不使用`set()`。 - - >>> s = set() - >>> type(s) - <class 'set'> #Python 2的返回结果略有差异,为<type 'set'> - -当然,非空集合,依然可以这样: - - >>> a_set = {'a','i'} #这回就是set了吧 - >>> type(a_set) - <type 'set'> #Python 3返回: <class 'set'> - -然后就开始对这个集合使用`add()`方法,并看效果。 - - >>> a_set.add("qiwsir") #增加一个元素 - -没有报错,就意味着成功。没有返回值,根据我们经验,这属于“原地修改”。 - - >>> a_set - set(['i', 'a', 'qiwsir']) - -这次经验胜利了。继续洋洋得意地敲代码。 - - >>> b_set = set("python") - >>> type(b_set) - <type 'set'> - >>> b_set - set(['h', 'o', 'n', 'p', 't', 'y']) - >>> b_set.add("qiwsir") - >>> b_set - set(['h', 'o', 'n', 'p', 't', 'qiwsir', 'y']) - -成功继续伴随着。废话!仅仅是刚才的重复罢了。重复是必须的,这样是为了加深印象。 - - >>> b_set.add([1,2,3]) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: unhashable type: 'list' - -报错。哪里错了? - -遇见错误,不要沮丧。认真阅读报错信息:列表是不可哈希的。洋洋得意中忘记前面强调的:“集合中的元素应该是hashable类型”。 - -耍一个小聪明吧。 - - >>> b_set.add('[1,2,3]') - >>> b_set - set(['[1,2,3]', 'h', 'o', 'n', 'p', 't', 'qiwsir', 'y']) - -为什么这么一搞就可以了呢?仔细观察,这回不是增加列表了,本质是字符串。 - -除了上面的增加元素方法之外,还能够从另外一个集合中合并过来元素,方法是`set.update(s2)`。 - - >>> help(set.update) - update(...) - Update a set with the union of itself and others. - - >>> s1 = set(['a', 'b']) - >>> s2 = set(['github', 'qiwsir']) - >>> s1.update(s2) #把s2的元素并入到s1中. - >>> s1 #s1的引用对象修改 - set(['a', 'qiwsir', 'b', 'github']) - >>> s2 #s2的未变 - set(['github', 'qiwsir']) - -如果仅仅是这样的操作,容易误以为`update`方法的参数只能是集合。非也。看文档中的描述,这个方法的作用是用原有的集合自身和其它的什么东西构成的新集合更新原来的集合。这句话有点长,可以多读一遍。分解开来,可以理解为:others是指的作为参数的不可变对象,将它和原来的集合组成新的集合,用这个新集合替代原来的集合。举例: - - >>> s2.update("goo") - >>> s2 - set(['github', 'o', 'g', 'qiwsir']) - >>> s2.update((2,3)) - >>> s2 - set([2, 3, 'g', 'o', 'github', 'qiwsir']) - -所以,文档的寓意还是比较深刻的。 - -###pop, remove, discard, clear - - >>> help(set.pop) - pop(...) - Remove and return an arbitrary set element. - Raises KeyError if the set is empty. - -一下变量承接前面的操作, - - >>> b_set - set(['[1,2,3]', 'h', 'o', 'n', 'p', 't', 'qiwsir', 'y']) - >>> b_set.pop() #从set中任意选一个删除,并返回该值 - '[1,2,3]' - >>> b_set.pop() - 'h' - >>> b_set.pop() - 'o' - >>> b_set - set(['n', 'p', 't', 'qiwsir', 'y']) - -能不能指定删除某个元素? - - >>> b_set.pop("n") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: pop() takes no arguments (1 given) - -set.pop()是从set中任意选一个元素,删除并将这个值返回。 - -但是,不能指定删除某个元素。报错信息中就告诉我们了,`pop()`不能有参数。 - -此外,如果集合已经是空的了,再删除,也报错。这条是帮助文档中告诉我们的,读者可以试试。 - -要删除指定的元素,怎么办? - - >>> help(set.remove) - - remove(...) - Remove an element from a set; it must be a member. - - If the element is not a member, raise a KeyError. - -`set.remove(obj)`中的obj,必须是set中的元素,否则就报错.试一试: - - >>> a_set - set(['i', 'a', 'qiwsir']) - >>> a_set.remove("i") - >>> a_set - set(['a', 'qiwsir']) - >>> a_set.remove("w") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - KeyError: 'w' - -跟`remove(obj)`类似的还有一个`discard(obj)`: - - >>> help(set.discard) - - discard(...) - Remove an element from a set if it is a member. - - If the element is not a member, do nothing. - -与`help(set.remove)`的信息对比,看看有什么不同? - -`discard(obj)`中的`obj`如果是集合中的元素,就删除;如果不是,就什么也不做,do nothing。 - -新闻就要对比着看才有意思呢。这里也一样. - - >>> a_set.discard('a') - >>> a_set - set(['qiwsir']) - >>> a_set.discard('b') - >>> - -在删除上还有一个绝杀,就是`set.clear()`,它的功能是:Remove all elements from this set.(自己在交互模式下`help(set.clear)`) - - >>> a_set - set(['qiwsir']) - >>> a_set.clear() - >>> a_set - set([]) - >>> bool(a_set) #空了,bool一下返回False. - False - -##知识 - -集合,也是一个数学概念(以下定义来自[维基百科](http://zh.wikipedia.org/wiki/%E9%9B%86%E5%90%88_%28%E6%95%B0%E5%AD%A6%29)) - ->集合(或简称集)是基本的数学概念,它是集合论的研究对象。最简单的说法,即是在最原始的集合论─朴素集合论─中的定义,集合就是“一堆东西”。集合里的“东西”,叫作元素。若然 x 是集合 A 的元素,记作 x ∈ A。 - ->集合是现代数学中一个重要的基本概念。集合论的基本理论直到十九世纪末才被创立,现在已经是数学教育中一个普遍存在的部分,在小学时就开始学习了。这里对被数学家们称为“直观的”或“朴素的”集合论进行一个简短而基本的介绍;更详细的分析可见朴素集合论。对集合进行严格的公理推导可见公理化集合论。 - -在计算机中,集合是什么呢?同样来自[维基百科](http://zh.wikipedia.org/wiki/%E9%9B%86%E5%90%88_%28%E8%AE%A1%E7%AE%97%E6%9C%BA%E7%A7%91%E5%AD%A6%29),这么说的: - ->在计算机科学中,集合是一组可变数量的数据项(也可能是0个)的组合,这些数据项可能共享某些特征,需要以某种操作方式一起进行操作。一般来讲,这些数据项的类型是相同的,或基类相同(若使用的语言支持继承)。列表(或数组)通常不被认为是集合,因为其大小固定,但事实上它常常在实现中作为某些形式的集合使用。 - ->集合的种类包括列表,集,多重集,树和图。枚举类型可以是列表或集。 - -不管是否明白,貌似很厉害呀. - -是的,所以本讲仅仅是对集合有一个入门.关于集合的更多操作,如运算/比较等,还没有涉及呢. - ------- - -[总目录](./index.md)   |   [上节:字典(2)](./117.md)   |   [下节:集合(2)](./119.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/119.md b/119.md deleted file mode 100644 index bd139e3..0000000 --- a/119.md +++ /dev/null @@ -1,135 +0,0 @@ ->Then Jesus came up and said to them, "All authority in heaven and on earth has been given to me. Therefore go and make disciples of all nations, baptizing them in the name of the Father and the Son and the Holy Spirit, teaching them to obey everything I have commanded you. And remember, I am with you always, to the end of the age." (MATTHEW 28:18-20) - -#集合(2) - -##不变的集合 - -[《集合(1)》](./118.md)中以`set()`来建立集合,这种方式所创立的集合都是可原处修改的集合,或者说是可变的,也可以说是unhashable - -还有一种集合,不能在原处修改。这种集合的创建方法是用`frozenset()`,顾名思义,这是一个被冻结的集合,当然是不能修改了,那么这种集合就是hashable类型——可哈希。 - - >>> f_set = frozenset("qiwsir") - >>> f_set - frozenset(['q', 'i', 's', 'r', 'w']) - >>> f_set.add("python") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'frozenset' object has no attribute 'add' - -报错。“不求成功,但求报错”。从提示信息中可知,这种集合不能修改。 - -对比看一看,也是复习。这是一个可以原处修改的集合。 - - >>> a_set = set("github") - >>> a_set - set(['b', 'g', 'i', 'h', 'u', 't']) - >>> a_set.add("python") - >>> a_set - set(['b', 'g', 'i', 'h', 'python', 'u', 't']) - -##集合运算 - -唤醒一下中学数学中关于集合的一点知识,当然,你如果是某个理工科的专业大学毕业,更应该熟悉集合之间的关系。 - -###元素与集合的关系 - -只有一种关系。 - -元素要么属于某个集合,要么不属于。 - - >>> aset = set(['h', 'o', 'n', 'p', 't', 'y']) - >>> "a" in aset - False - >>> "h" in aset - True - -###集合与集合的关系 - -假设两个集合A、B - -- A是否等于B,即两个集合的元素是否完全一样 - -在交互模式下实验 - - >>> a = set(['q', 'i', 's', 'r', 'w']) - >>> b = set(['a', 'q', 'i', 'l', 'o']) - >>> a == b - False - >>> a != b - True - -- A是否是B的子集,或者反过来,B是否是A的超集。即A的元素也都是B的元素,但是B的元素比A的元素数量多。 - -判断集合A是否是集合B的子集,可以使用`A<B`,返回true则是子集,否则不是。另外,还可以使用函数`A.issubset(B)`判断。 - - >>> a = set(['q', 'i', 's', 'r', 'w']) - >>> c = set(['q', 'i']) - >>> c < a #c是a的子集 - True - >>> c.issubset(a) #或者用这种方法,判断c是否是a的子集 - True - >>> a.issuperset(c) #判断a是否是c的超集 - True - - >>> b = set(['a', 'q', 'i', 'l', 'o']) - >>> a < b #a不是b的子集 - False - >>> a.issubset(b) #或者这样做 - False - -- A、B的并集,即A、B所有元素,如下图所示 - -![](./1images/11901.png) - -可以使用的符号是“|”,是一个半角状态写的竖线,输入方法是在英文状态下,按下"shift"加上右方括号右边的那个键。找找吧。表达式是`A | B`.也可使用函数`A.union(B)`,得到的结果就是两个集合并集,注意,这个结果是新生成的一个对象,不是将结合A扩充。 - - >>> a = set(['q', 'i', 's', 'r', 'w']) - >>> b = set(['a', 'q', 'i', 'l', 'o']) - >>> a | b #可以有两种方式,结果一样 - set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w']) #Python 3:{'q', 'w', 'r', 'l', 's', 'a', 'o', 'i'} - >>> a.union(b) - set(['a', 'i', 'l', 'o', 'q', 's', 'r', 'w']) #Python 3同上 - -- A、B的交集,即A、B所公有的元素,如下图所示 - -![](./1images/11902.png) - - >>> a = set(['q', 'i', 's', 'r', 'w']) - >>> b = set(['a', 'q', 'i', 'l', 'o']) - >>> a & b #两种方式,等价 - set(['q', 'i']) #Python 3: {'q', 'i'} - >>> a.intersection(b) - set(['q', 'i']) #Python 3同上 - -我在实验的时候,顺手敲了下面的代码,出现的结果如下,能解释一下吗?(思考题) - - >>> a and b - set(['a', 'q', 'i', 'l', 'o']) #Python 3:{'q', 'l', 'a', 'o', 'i'} - -- A相对B的差(补),即A相对B不同的部分元素,如下图所示 - -![](./1images/11903.png) - - >>> a = set(['q', 'i', 's', 'r', 'w']) - >>> b = set(['a', 'q', 'i', 'l', 'o']) - >>> a - b - set(['s', 'r', 'w']) #Python 3: {'r', 's', 'w'} - >>> a.difference(b) - set(['s', 'r', 'w']) #Python 3同上 - --A、B的对称差集,如下图所示 - -![](./1images/11904.png) - - >>> a = set(['q', 'i', 's', 'r', 'w']) - >>> b = set(['a', 'q', 'i', 'l', 'o']) - >>> a.symmetric_difference(b) - set(['a', 'l', 'o', 's', 'r', 'w']) #Python 3: {'w', 'r', 'l', 's', 'a', 'o'} - -以上是集合的基本运算。在编程中,如果用到,可以用前面说的方法查找。不用死记硬背。 - ------- - -[总目录](./index.md)   |   [上节:集合(1)](./118.md)   |   [下节:运算符](./120.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/120.md b/120.md deleted file mode 100644 index bc5c709..0000000 --- a/120.md +++ /dev/null @@ -1,240 +0,0 @@ ->Jesus answered them, "Those who are well don't need a physician, but those who are sick do. I have not come to call the righteous, but sinners to repentance."(LUKE 5:31-32) - -#运算符 - -在编程语言,运算符是比较多样化的,虽然在[《常用数学函数和运算优先级》](./104.md)中给出了一个各种运算符和其优先级的表格,但是,那时对Python理解还比较肤浅。建议诸位先回头看看那个表格,然后继续下面的内容。 - -这里将各种运算符总结一下,有复习,也有拓展。 - -##算术运算符 - -前面已经讲过了四则运算,其中涉及到一些运算符:加减乘除,对应的符号分别是:+ - * /,此外,还有求余数的:%。这些都是算术运算符。其实,算术运算符不止这些。根据中学数学的知识,也应该想到,还应该有乘方、开方之类的。 - -下面列出一个表格,将所有的运算符表现出来。不用记,但是要认真地看一看,知道有那些,如果以后用到,但是不自信能够记住,可以来查。 - -|运算符|描述 |实例 | -|------|--------------------|--------------------| -|+ |加 - 两个对象相加 | 10+20 输出结果 30 | -|- |减 - 得到负数或是一个数减去另一个数 | 10-20 输出结果 -10| -|* |乘 - 两个数相乘或是返回一个被重复若干次的字符串 | 10 * 20 输出结果 200| -|/ |除 - x除以y | 20/10 输出结果 2 | -|% |取余 - 返回除法的余数 | 20%10 输出结果 0 | -|** |幂 - 返回x的y次幂 | 10**2 输出结果 100 | -|// |取整除 - 返回商的整数部分 | 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 | - -可以根据中学数学的知识,想想上面的运算符在混合运算中,应该按照什么顺序计算。并且亲自试试,是否与中学数学中的规律一致。(应该是一致的,计算机科学家不会另外搞一套让我们和他们一块受罪。) - -##比较运算符 - -所谓比较,这在某国是最常见的了,做家长的经常把自己的孩子跟别人的孩子比较,唯恐自己孩子在某方面差了;官员经常把自己的收入和银行比较,总觉得少了。 - -在计算机高级语言编程中,任何两个同一类型的对象的都可以比较,比如两个数字、两个字符串等。注意,是两个同一类型的。 - -不同类型的量可以比较吗? - -须明确,这种比较没有意义。就好比二两肉和三尺布进行比较,它们谁大呢?这种比较无意义。所以,在真正的编程中,我们要谨慎对待这种不同类型量的比较。 - -但是,在某些语言中,允许这种无意思的比较。因为它在比较的时候,都是将非数值的转化为了数值类型比较。 - -对于比较运算符,在小学数学中就学习了一些:大于、小于、等于、不等于。没有陌生的东西,Python里面也是如此。且看下表: - -以下假设`a=10`,`b=20`: - -| 运算符 | 描述 | 实例 | -|--------|------|------| -|== | 等于 - 比较对象是否相等 | (a == b) 返回 False。| -|!= | 不等于 - 比较两个对象是否不相等 | (a != b) 返回 True. | -|> | 大于 - 返回x是否大于y | (a > b) 返回 False。| -|< | 小于 - 返回x是否小于y | (a < b) 返回 True。| -|>= | 大于等于 - 返回x是否大于等于y。| (a >= b) 返回 False。| -|<= | 小于等于 - 返回x是否小于等于y。| (a <= b) 返回 True。| - -上面的表格实例中,显示比较的结果就是返回一个True或者False,这是什么意思呢。就是在告诉你,这个比较如果成立,就是为真,返回True,否则返回False,说明比较不成立。 - -请按照下面方式进行比较操作,然后再根据自己的想象,把比较操作熟练熟练。 - - >>> a=10 - >>> b=20 - >>> a > b - False - >>> a < b - True - >>> a == b - False - >>> a != b - True - >>> a >= b - False - >>> a <= b - True - -除了数字之外,还可以对字符串进行比较。字符串中的比较是按照“字典顺序”进行比较的。当然,这里说的是英文的字典,不是前面说的字典类型的对象。 - - >>> a = "qiwsir" - >>> b = "python" - >>> a > b - True - -先看第一个字符,按照字典顺序,q大于p(在字典中,q排在p的后面),那么就返回结果True. - -在Python中,如果是两种不同类型的对象,虽然可以比较。但我是不赞成这样进行比较的。 - - >>> a = 5 - >>> b = "5" - >>> a > b - False - -##逻辑运算符 - -首先谈谈什么是逻辑,韩寒先生对逻辑有一个分类: - ->逻辑分两种,一种是逻辑,另一种是中国人的逻辑。—— 韩寒 - -这种分类的确非常精准。在很多情况下,中国人是有很奇葩的逻辑的。但是,在Python中,讲的是逻辑,不是中国人的逻辑。 - ->逻辑(logic),又称理则、论理、推理、推论,是有效推论的哲学研究。逻辑被使用在大部份的智能活动中,但主要在哲学、数学、语义学和计算机科学等领域内被视为一门学科。在数学里,逻辑是指研究某个形式语言的有效推论。 - -关于逻辑问题,看官如有兴趣,可以听一听[《国立台湾大学公开课:逻辑》](http://v.163.com/special/ntu/luoji.html) - -###布尔类型 - -在所有的高级语言中,都有这么一类对象,被称之为布尔型。从这个名称就知道了,这是用一个人的名字来命名的。 - ->乔治·布尔(George Boole,1815年11月-1864年,),英格兰数学家、哲学家。 - ->乔治·布尔是一个皮匠的儿子,生于英格兰的林肯。由于家境贫寒,布尔不得不在协助养家的同时为自己能受教育而奋斗,不管怎么说,他成了19世纪最重要的数学家之一。尽管他考虑过以牧师为业,但最终还是决定从教,而且不久就开办了自己的学校。 - ->在备课的时候,布尔不满意当时的数学课本,便决定阅读伟大数学家的论文。在阅读伟大的法国数学家拉格朗日的论文时,布尔有了变分法方面的新发现。变分法是数学分析的分支,它处理的是寻求优化某些参数的曲线和曲面。 - ->1848年,布尔出版了《The Mathematical Analysis of Logic》,这是他对符号逻辑诸多贡献中的第一次。 - ->1849年,他被任命位于爱尔兰科克的皇后学院(今科克大学或UCC)的数学教授。1854年,他出版了《The Laws of Thought》,这是他最著名的著作。在这本书中布尔介绍了现在以他的名字命名的布尔代数。布尔撰写了微分方程和差分方程的课本,这些课本在英国一直使用到19世纪末。 - ->由于其在符号逻辑运算中的特殊贡献,很多计算机语言中将逻辑运算称为布尔运算,将其结果称为布尔值。 - -请读者认真阅读布尔的生平,励志呀。 - -布尔所创立的这套逻辑被称之为“布尔代数”。其中规定只有两种值,True和False,正好对应这计算机上二进制数的1和0。所以,布尔代数和计算机是天然吻合的。 - -所谓布尔类型,就是返回结果为True、False的数据。 - -在Python中(其它高级语言也类似,其实就是布尔代数的运算法则),有三种运算符,可以实现布尔类型的对象间的运算。 - -###布尔运算 - -看下面的表格,对这种逻辑运算符比较容易理解: - -(假设`a=10`,`b=20`) - -|运算符 | 描述 | 实例 | -|-------|-------|-------| -|and | 布尔"与" - 如果x为False,x and y返回False,否则它返回y的计算值。| (a and b) 返回 20。| -|or | 布尔"或" - 如果x是True,它返回True,否则它返回y的计算值。| (a or b) 返回 10。| -|not | 布尔"非" - 如果x为True,返回False。如果x为False,它返回True。 | not(a and b) 返回 false。| - -- and - -and,翻译为“与”运算,但事实上,这种翻译容易引起望文生义的理解。 - -先说一下正确的理解。 - -`A and B`,含义是: - -首先运算A,如果A的值是True,就计算B,并将B的结果返回做为最终结果,如果B是False,那么`A and B`的最终结果就是False,如果B的结果是True,那么A and B的结果就是True; - -如果A的值是False ,就不计算B了,直接返回`A and B`的结果为False. - -比如: - -`4>3 and 4<9`,首先看`4>3`的值,这个值是`True`,再看`4<9`的值,是`True`,那么最终这个表达式的结果为`True`. - - >>> 4>3 and 4<9 - True - -`4>3 and 4<2`,先看`4>3`,返回`True`,再看`4<2`,返回的是`False`,那么最终结果是`False`. - - >>> 4>3 and 4<2 - False - -`4<3 and 4<9`,先看`4<3`,返回为`False`,就不看后面的了,直接返回这个结果做为最终结果(对这种现象,有一个形象的说法,叫做“短路”。这个说法形象吗?不熟悉物理的是不是感觉形象?)。 - - >>> 4<3 and 4<2 - False - -前面说容易引起望文生义的理解,就是有相当不少的人认为无论什么时候都看and两边的值,都是True返回True,有一个是False就返回False。根据这种理解得到的结果,与前述理解得到的结果一样,但是,运算量不一样哦。短路求值,能够减少计算量,提高计算布尔表达式的速度。 - -把上面的计算过程综合一下,在计算`A and B`中,其流程是: - - if A == False: - return False - else: - return bool(B) - -上面这段算是伪代码啦。所谓伪代码,就是不是真正的代码,无法运行。但是,伪代码也有用途,就是能够以类似代码的方式表达一种计算过程。 - -- or - -or,翻译为“或”运算。在`A or B`中,它是这么运算的: - - if A==True: - return True - else: - return bool(B) - -是不是能够看懂上面的伪代码呢?下面再增加上每行的注释。这个伪代码跟自然的英语差不多呀。 - - if A==True: #如果A的值是True - return True #返回True,表达式最终结果是True - else: #否则,也就是A的值不是True - return bool(B) #看B的值,然后就返回B的值做为最终结果。 - -举例,根据上面的运算过程,分析一下下面的例子,是不是与运算结果一致? - - >>> 4<3 or 4<9 - True - >>> 4<3 or 4>9 - False - >>> 4>3 or 4>9 - True - -- not - -not,翻译成“非”,窃以为非常好,不论面对什么,就是要否定它。 - - >>> not(4>3) - False - >>> not(4<3) - True - -关于运算符问题,其实不止上面这些,还有呢,比如成员运算符`in`,前面已经用过了。 - -##复杂的布尔表达式 - -在进行逻辑判断或者条件判断的时候,不一定都是类似上面例子那样简单的表达式,也可能遇到复杂的表达。如果你遇到了复杂表达式,最好的方法是使用括号。 - - >>> (4<9) and (5>9) - False - >>> not(True and True) - False - -用括号的方法,意义非常明确。当然,布尔运算也有优先级,但是,你不一定记住,或者如果使用括号,根本没有必要记住优先级。 - -不过为了给学习者一个印象,先面还是以表格行事,按照从高到底的顺序,把布尔运算的优先级列出来,仅供参考,并且没有必要记忆。 - -|顺序|符号| -|----|----| -|1 | x == y | -|2 | x != y | -|3 | not x | -|4 | x and y | -|5 | x or y | - -最后强调:一定要用括号,不必记忆表格内容。 - -有了运算符,再应用已经学过的知识,就可以编程了。编程,从语句开始。 - ------- - -[总目录](./index.md)   |   [上节:集合(2)](./119.md)   |   [下节:语句(1)](./121.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/121.md b/121.md deleted file mode 100644 index 878ee93..0000000 --- a/121.md +++ /dev/null @@ -1,266 +0,0 @@ ->你们不要论断人,就不被论断;你们不要定人的罪,就不被定罪;你们要饶恕人,就必蒙饶恕。你们要给人,就必有给你们的,并且用十足的升斗,连摇带按、上尖下流地倒在你们怀里;因为你们用甚么量器量给人,也必用甚么量器量给你们。(LUKE 6:37-38) - -#语句(1) - -写程序,就好比小学生学习写作一样,先学习词语,然后造句,在写文章。 - -到目前为止仅仅学会了一些词语(各种类型的对象),从现在开始就学习如何造句子了。 - -在编程语言中,句子被称之为“语句”, - -##什么是语句 - -事实上,前面已经用过语句了,最典型的那句:`print "Hello, World"`就是语句。(注意:Python 3里,print语句改成了print()函数。) - -为了能够严谨地阐述这个概念,抄一段[维基百科中的词条:命令式编程](http://zh.wikipedia.org/wiki/%E6%8C%87%E4%BB%A4%E5%BC%8F%E7%B7%A8%E7%A8%8B) - ->命令式编程(英语:Imperative programming),是一种描述电脑所需作出的行为的编程范型。几乎所有电脑的硬件工作都是指令式的;几乎所有电脑的硬件都是设计来运行机器码,使用指令式的风格来写的。较高级的指令式编程语言使用变量和更复杂的语句,但仍依从相同的范型。 - ->运算语句一般来说都表现了在存储器内的数据进行运算的行为,然后将结果存入存储器中以便日后使用。高级命令式编程语言更能处理复杂的表达式,可能会产生四则运算和函数计算的结合。 - -一般所有高级语言,都包含如下语句,Python也不例外: - -- 循环语句:容许一些语句反复运行数次。循环可依据一个默认的数目来决定运行这些语句的次数;或反复运行它们,直至某些条件改变。 -- 条件语句:容许仅当某些条件成立时才运行某个区块。否则,这个区块中的语句会略去,然后按区块后的语句继续运行。 -- 无条件分支语句容许运行顺序转移到程序的其他部分之中。包括跳跃(在很多语言中称为Goto)、副程序和Procedure等。 - -循环、条件分支和无条件分支都是控制流程。 - -当然, python中的语句还是有其特别之处的(别的语言中,也会有自己的特色)。下面就开始娓娓道来。 - -##print - -在Python 2中,print是一个语句,但是在Python 3中它是一个函数了。这点请注意。 - -以Python 2为例,说明print语句。如果说读者使用的是Python 3,请自行将`print xxx`修改为`print(xxx)`,其它不变。 - -print发起的语句,在程序中主要是将某些东西打印出来,还记得在讲解字符串的时候,专门讲述了字符串的格式化输出吗?那就是用来print的。 - - >>> print "hello, world" - hello, world - >>> print "hello","world" - hello world - -请仔细观察,上面两个print语句的差别。第一个打印的是"hello, world",包括其中的逗号和空格,是一个完整的字符串。第二个打印的是两个字符串,一个是"hello",另外一个是"world",两个字符串之间用逗号分隔。 - -本来,在print语句中,字符串后面会接一个`\n`符号。即换行。但是,如果要在一个字符串后面跟着逗号,那么换行就取消了,意味着两个字符串"hello","world"打印在同一行。 - -或许现在体现得还不是很明显,如果换一个方法,就显示出来了。(下面用到了一个被称之为循环的语句,下一节会重点介绍。) - - >>> for i in [1, 2, 3, 4, 5]: - ... print i - ... - 1 - 2 - 3 - 4 - 5 - -这个循环的意思就是要从列表中依次取出每个元素,然后赋值给变量`i`,并用print语句输出。在变量`i`后面没有任何符号,每打印一个,就换行,再打印另外一个。 - -下面的方式就跟上面的有点区别了。 - - >>> for i in [1, 2, 3, 4, 5]: - ... print i , - ... - 1 2 3 4 5 - -就是在print语句的最后加了一个逗号,打印出来的就在一行了。 - -但是,在Python 3中情况有变。 - - >>> help(print) - Help on built-in function print in module builtins: - - print(...) - print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) - - Prints the values to a stream, or to sys.stdout by default. - Optional keyword arguments: - file: a file-like object (stream); defaults to the current sys.stdout. - sep: string inserted between values, default a space. - end: string appended after the last value, default a newline. - flush: whether to forcibly flush the stream. - -从帮助文档中可以看出,默认的`end='\n'`,如果不打算换行,可以在使用`print()`函数的时候,修改end这个参数的值。 - - >>> for i in [1,2,3,4]: - print(i, end=',') - - 1,2,3,4, - -print语句或者`print()`函数经常用在调试程序的过程,让我们能够知道程序在执行过程中产生的结果。 - -##import - -在[《常用数学函数和运算优先级》](./104.md)中,曾经用到过一个`import math`,math能提供很多数学函数,但是这些函数不是Python的内建函数,是math模块的,所以,要用import引用这个模块。 - -这种用import引入模块的方法,是Python编程经常用到的。引用方法有如下几种: - - >>> import math - >>> math.pow(3,2) - 9.0 - -这是常用的一种方式,而且非常明确,`math.pow(3,2)`就明确显示了,pow()函数是math模块里的。可以说这是一种可读性非常好的引用方式,并且不同模块的同名函数不会产生冲突。 - - >>> from math import pow - >>> pow(3,2) - 9.0 - -这种方法就有点偷懒了,不过也不难理解,从字面意思就知道`pow()`函数来自于math模块。在后续使用的时候,只需要直接使用`pow()`即可,不需要在前面写上模块名称了。这种引用方法,比较适合于引入模块较少的时候。如果引入模块多了,可读性就下降了,会不知道那个函数来自那个模块。 - - >>> from math import pow as pingfang - >>> pingfang(3,2) - 9.0 - -这是在前面那种方式基础上的发展,将从某个模块引入的函数重命名,比如讲pow充命名为pingfang,然后使用`pingfang()`就相当于在使用`pow()`了。 - -如果要引入多个函数,可以这样做: - - >>> from math import pow, e, pi - >>> pow(e,pi) - 23.140692632779263 - -引入了math模块里面的pow,e,pi,pow()是一个乘方函数,e是那个欧拉数;pi就是π. - ->e,作为數學常數,是自然對數函數的底數。有時稱它為歐拉數(Euler's number),以瑞士數學家歐拉命名;也有個較鮮見的名字納皮爾常數,以紀念蘇格蘭數學家約翰·納皮爾引進對數。它是一个无限不循环小数。e = 2.71828182845904523536(《维基百科》) - ->e的π次方,是一个数学常数。与e和π一样,它是一个超越数。这个常数在希尔伯特第七问题中曾提到过。(《维基百科》) - - >>> from math import * - >>> pow(3,2) - 9.0 - >>> sqrt(9) - 3.0 - -这种引入方式是最贪图省事的了,一下将math中的所有函数都引过来了。不过,这种方式的结果是让可读性更降低了。仅适用于模块中的函数比较少的时候,并且在程序中应用比较频繁。 - -在这里,我们用math模块为例,引入其中的函数。事实上,不仅函数可以引入,模块中还可以包括常数等,都可以引入。在编程中,模块中可以包括各样的对象,都可以引入。 - -##赋值语句 - -对于赋值语句,应该不陌生,在前面已经频繁使用了,如`a = 3`这样的,就是将一个整数赋给了变量。 - ->编程中的“=”和数学中的“=”是完全不同的。在编程语言中,“=”表示赋值过程。 - -除了那种最简单的赋值之外,还可以这么干: - - >>> x, y, z = 1, "python", ["hello", "world"] - >>> x - 1 - >>> y - 'python' - >>> z - ['hello', 'world'] - -这里就一一对应赋值了。如果把几个值赋给一个,可以吗? - - >>> a = "itdiffer.com", "python" - - >>> a - ('itdiffer.com', 'python') - -原来是将右边的两个值装入了一个元组,然后将元组赋给了变量a。这个Python太聪明了。 - -在Python的赋值语句中,还有一个更聪明的,它一出场,简直是让一些已经学习过某种其它语言的人亮瞎眼。 - -有两个变量,其中`a = 2`,`b = 9`。现在想让这两个变量的值对调,即最终是`a = 9`,`b = 2`. - -这是一个简单而经典的题目。在很多编程语言中,是这么处理的: - - temp = a; - a = b; - b = temp; - -这么做的那些编程语言,变量就如同一个盒子,值就如同放到盒子里面的东西。如果要实现对调,必须在找一个盒子,将a盒子里面的东西(整数2)拿到那个临时盒子(temp)中,这样a盒子就空了,然后将b盒子中的东西拿(整数9)拿到a盒子中(a = b),完成这步之后,b盒子是空的了,最后将临时盒子里面的那个整数2拿到b盒子中。这就实现了两个变量值得对调。 - -太啰嗦了。 - -python只要一行就完成了。 - - >>> a = 2 - >>> b = 9 - - >>> a, b = b, a - - >>> a - 9 - >>> b - 2 - -`a, b = b, a`就实现了数值对调,多么神奇。 - -之所以神奇,就是因为我前面已经数次提到的Python中变量和对象的关系。变量相当于贴在对象上的标签。这个操作只不过是将标签换个位置,就分别指向了不同的数据对象。 - -还有一种赋值方式,被称为“链式赋值” - - >>> m = n = "I use python" - >>> print m, n #Python 3:print(m, n) - I use python I use python - -用这种方式,实现了一次性对两个变量赋值,并且值相同。 - - >>> id(m) - 3072659528L - >>> id(n) - 3072659528L - -用`id()`来检查一下,发现两个变量所指向的是同一个对象。 - -另外,还有一种判断方法,来检查两个变量所指向的值是否是同一个(注意,同一个和相等是有差别的。在编程中,同一个就是`id()`的结果一样。 - - >>> m is n - True - -这是在检查m和n分别指向的对象是否是同一个,True说明是同一个。 - - >>> a = "I use python" - >>> b = a - >>> a is b - True - -这是跟上面链式赋值等效的。 - -但是: - - >>> b = "I use python" - >>> a is b - False - >>> id(a) - 3072659608L - >>> id(b) - 3072659568L - - >>> a == b - True - -看出其中的端倪了吗?这次a、b两个变量虽然相等,但不是指向同一个对象。 - -还有一种赋值形式,如果从数学的角度看,是不可思议的,如:`x = x + 1`,在数学中,这个等式是不成立的。因为数学中的“=”是等于的含义,但是在编程语言中,它成立,因为"="是赋值的含义,即将变量x增加1之后,再把得到的结果赋值变量x. - -这种变量自己变化之后将结果再赋值给自己的形式,称之为“增量赋值”。+、-、*、/、%都可以实现类似这种操作。 - -为了让这个操作写起来省点事(要写两遍同样一个变量),可以写成:`x += 1` - - >>> x = 9 - >>> x += 1 - >>> x - 10 - -除了数字,字符串进行增量赋值,在实际中也很有价值。 - - >>> m = "py" - >>> m += "th" - >>> m - 'pyth' - >>> m += "on" - >>> m - 'python' - -本节只是语句的入门,后面还有更多精彩。 - ------- - -[总目录](./index.md)   |   [上节:运算符](./120.md)   |   [下节:语句(2)](./122.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/122.md b/122.md deleted file mode 100644 index 6038057..0000000 --- a/122.md +++ /dev/null @@ -1,199 +0,0 @@ ->众百姓听的时候,耶稣对门徒说,“你们要防备文士,他们好穿长衣游行,喜爱人在街市上问他们安,又喜爱会堂里的高位,筵席上的首座。他们侵吞寡妇的家产,假意作很长的祷告。这些人要受更重的刑罚。”(LUKE 20:45-47) - -#语句(2) - -所谓条件语句,顾名思义,就是依据某个条件,满足这个条件后执行下面的内容。 - -##if - -if翻译为中文是“如果”。它所发起的就是一个条件语句。 - -换言之,if是是构成条件语句的关键词。 - -最简单的方式,就是: - - if bool(conj): - do something - -一个非常简单的例子: - - >>> a = 8 - >>> if a == 8: - ... print a #Python 3: print(a) - ... - 8 - -简单解释。 - -`if a==8:`,这句话里面如果条件`a==8`返回的是True,那么就执行下面的语句。特别注意,冒号是必须的。下面一行语句`print a`(Python 3: `print(a)`)要有四个空格的缩进。这是Python的特点,称之为语句块。 - -重要的话说几遍都不为过,“要缩进四个空格”。 - -唯恐说的不严谨,我还是引用维基百科中的叙述: - ->Python開發者有意讓違反了縮排規則的程序不能通過編譯,以此來強迫程序員養成良好的編程習慣。並且Python語言利用縮排表示語句塊的開始和結束(Off-side規則),而非使用花括號或者某種關鍵字。增加縮排表示語句塊的開始,而減少縮排則表示語句塊的結束。縮排成為了語法的一部分。例如if語句. - ->根據PEP的規定,必須使用4個空格來表示每級縮排。使用Tab字符和其它數目的空格雖然都可以編譯通過,但不符合編碼規範。支持Tab字符和其它数目的空格僅僅是為兼容很舊的Python程式和某些有問題的編輯程式。 - -从上面的这段话中,提炼出几个关键点: - -- 必须要通过缩进方式来表示语句块的开始和结束 -- 缩进用四个空格(也是必须的,别的方式或许可以,但不提倡) - -##if ... elif ... else - -在进行条件判断的时候,只有if,往往是不够的。比如下图所示的流程 - -![](./1images/12201.png) - -这张图反应的是这样一个问题: - -输入一个数字,判断该数字和10的大小关系。如果大于10,则输出大于10的提示;如果小于10,则输出小于10的提示;如果等于10,就输出表扬的一句话。 - -从图中就已经显示出来了,仅仅用`if`来判断,是不足的,还需要其它分支。这就需要引入别的条件判断了。所以,有了`if ... elif ... else`语句。 - -基本样式结构: - - if 条件1: - 语句块1 - elif 条件2: - 语句块2 - elif 条件3: - 语句块3 - ... - else: - 语句块4 - -`elif`和`else`发起的部分,都可以省了,那时就回归到了只有一个`if`的情况了。 - -为了应付多条件判断,就不能省略。 - -下面我们就不在交互模式中写代码了。打开你选择的写Python代码的编辑器,它一定得是你认为最好的武器。 - -Python 2的代码如下: - - #! /usr/bin/env python - #coding:utf-8 - - print "请输入任意一个整数数字:" - - number = int(raw_input()) #通过raw_input()输入的数字是字符串 - #用int()将该字符串转化为整数 - - if number == 10: - print "您输入的数字是:%d"%number - print "You are SMART." - elif number > 10: - print "您输入的数字是:{}".format(number) - print "This number is more than 10." - elif number < 10: - print "您输入的数字是:{}".format(number) - print "This number is less than 10." - else: - print "Are you a human?" - -Python 3的代码如下: - - #! /usr/bin/env python - #coding:utf-8 - - print("请输入任意一个整数数字:") - number = int(input()) - - if number == 10: - print("您输入的数字是:{}".format(number)) - print("You are SMART.") - elif number > 10: - print("您输入的数字是:{}".format(number)) - print("This number is more than 10.") - elif number < 10: - print("您输入的数字是:{}".format(number)) - print("This number is less than 10.") - else: - print("Are you a human?") - -对上述程序,需要说明几点。 - -- `#! /usr/bin/env python`。因为我是在Ubuntu操作系统中调试的程序,所以这个是必须的。如果你是在windows里面,可以省略。 -- `#coding:utf-8`。在程序中有中文,有英文,即便是没有中文,也要声明程序的编码格式是utf-8。 -- `raw_input()`或者`input()`得到的是字符串,因为在程序中,要将输入的数字跟整数10进行比较,所以要将该字符串转化为整数,因此使用了`int()`函数。 - -上述程序,依据条件进行判断,不同条件下做不同的事情了。 - -需要提醒的是,在书写在条件`number == 10`时,为了阅读方便,在`number`和`==`之间有一个空格最好了,同理,后面也有一个。这里的10是整数类型,number也是。 - -把这段程序保存成一个扩展名是.py的文件,比如保存为`num.py`,进入到存储这个文件的目录,运行`python num.py`,就能看到程序执行结果了。下面是我执行的结果,供参考。 - - $ python num.py - 请输入任意一个整数数字: - 12 - 您输入的数字是:12 - This number is more than 10. - - $ python num.py - 请输入任意一个整数数字: - 10 - 您输入的数字是:10 - You are SMART. - - $ python num.py - 请输入任意一个整数数字: - 9 - 您输入的数字是:9 - This number is less than 10. - -最后,补充说明`#! /usr/bin/env python`的含义。 - -这句话以#开头,表示本来不在程序中运行。这句话的用途是告诉机器(如Ubuntu类型的操作系统)寻找到该设备上的Python解释器,操作系统使用它找到的解释器来运行文件中的程序代码。有的程序里写的是`/usr/bin python`,表示Python解释器在`/usr/bin`里面。但是,如果写成`/usr/bin/env`,则表示要通过系统搜索路径寻找Python解释器。不同系统,可能解释器的位置不同,所以这种方式能够让代码更将拥有可移植性。 - -上述补充解释不适用于windows系统。 - -现在读者是否已经明晰,所谓条件语句中的“条件”中,就是各种条件运算表达式或者布尔值,如果是`True`,就执行该条件下的语句块。 - -##三元操作符 - -三元操作,是条件语句中比较简练的一种赋值方式,它的模样是这样的: - - >>> name = "qiwsir" if "laoqi" else "github" - -先思考一个问题,`if "laoqi"`,这里似乎没有条件表达式,Python怎么判断? - -的确没有条件表达式,事实上,它就等同于`if bool("laoqi")`。 - - >>> name - 'qiwsir' - >>> name = 'qiwsir' if "" else "python" - -而这里的`if ""`就相当于`if bool("")`(注意写法上,两个引号之间没有空格)。还要多说一句,这里列举的方式,纯粹是为了理解三元操作符,不具有实战价值。 - - >>> name - 'python' - >>> name = "qiwsir" if "github" else "" - >>> name - 'qiwsir' - -总结一下:A = Y if X else Z - -什么意思,结合前面的例子,可以看出: - -- 如果X为真,那么就执行A=Y -- 如果X为假,就执行A=Z - -如此例 - - >>> x = 2 - >>> y = 8 - >>> a = "python" if x > y else "qiwsir" - >>> a - 'qiwsir' - >>> b = "python" if x < y else "qiwsir" - >>> b - 'python' - -`if`所引起的条件语句使用非常普遍,当然也比较简单。 - ------- - -[总目录](./index.md)   |   [上节:语句(1)](./121.md)   |   [下节:语句(3)](./123.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/123.md b/123.md deleted file mode 100644 index 14fee46..0000000 --- a/123.md +++ /dev/null @@ -1,344 +0,0 @@ ->"But be on your guard so that your hearts are not wighted down with dissipation and drunkenness and the worries of this life, and that day close down upon you suddenly like a trap. For it will overtake all who live on the face of the whole earht. But staty alert at all times, praying that you may have strength to eacape all these things that must happen, and to stand before the Son of Man." - ->你们要谨慎,恐怕因贪食醉酒并今生的思虑,累住你们的心,那日子就如同网罗忽然临到你们。因为那日子要这样临到全地上一切居住的人。你们要时时儆醒,常常祈求,是你们能逃避这一切要来的事,得以站立在人子面前。(LUKE 21:34-36) - -#语句(3) - -循环,你我都在其中。 - -日月更迭,斗转星移,无不是循环;王朝更迭,子子孙孙,从某个角度看也都是循环。 - -循环是现实生活中常见的现象。 - -编程语言就是要解决现实问题的,因此也少不了要循环。 - -##for循环 - -在高级编程语言中,大多数都有for循环(for loop),关于这种循环,我借用[维基百科中“for loop”](https://en.wikipedia.org/wiki/For_loop)的说明,帮助大家理解。 - ->In computer science a for-loop (or simply for loop) is a programming language control statement for specifying iteration, which allows code to be executed repeatedly. The syntax of a for-loop is based on the heritage of the language and the prior programming languages it borrowed from, so programming languages that are descendants of or offshoots of a language that originally provided an iterator will often use the same keyword to name an iterator, e.g., descendants of ALGOL use "for", while descendants of Fortran use "do." There are other possibilities, for example COBOL which uses "PERFORM VARYING". - -如果看上面的英文有点难度,可以看下面的翻译,当然是很烂的翻译,绝对达不到“信雅达”的境界,虽然一直追求“德艺双馨”。 - ->在计算机科学中for循环是编程语言中针对可迭代对象的语句,它允许代码被重复执行。for循环的语法是在对历史上的编程语言继承和借鉴基础上形成的,该语言原来有迭代器,则后来的编程语言也用同样的关键词来实现迭代,比如ALGOL系的使用“for”,而Fortan系的使用“do”,也有例外,如COBOL用“PERFORM VARYING”。 - -for循环是从ALGOL那里继承过来的。ALGOL(ALGOrithmic Language)是最早的高级编程语言(几乎没有之一),后来的不少高级语言都继承了ALGOL的某些特性,比如Pascal、Ada、C语言等,也包括Python。 - -维基百科上对此有非常清晰的说明。 - ->The name for-loop comes from the English word for, which is used as the keyword in most programming languages to introduce a for-loop. The term in English dates to ALGOL 58 and was popularized in the influential later ALGOL 60; it is the direct translation of the earlier German für, used in Superplan (1949–1951) by Heinz Rutishauser, who also was involved in defining ALGOL 58 and ALGOL 60. The loop body is executed "for" the given values of the loop variable, though this is more explicit in the ALGOL version of the statement, in which a list of possible values and/or increments can be specified. - -在ALGOL中,循环的关键词就是用for。所以,Python要继承这个光荣传统,也用for来实现循环。 - -于是有了:for语句。 - -其基本结构是: - - for 循环规则: - 操作语句 - -从这个基本结构看,有着同if条件语句类似的地方:都有冒号;语句块都要四个空格缩进。 - -##从例子中理解for循环 - -下面这个例子似曾相识。 - - >>> hello = "world" - >>> for i in hello: - ... print i #Python 3: print(i) - ... - w - o - r - l - d - -这个例子中实现的就是for循环。下面庖丁解牛: - -1. `hello = "world"`,赋值语句,实现变量`hello`和字符串`"world"`之间的引用关系。 -2. `for i in hello:`,`for`是发起循环的关键词;`i in hello`是循环规则,字符串类型的对象是序列类型,能够从左到右一个一个地按照索引读出每个字符,于是变量`i`就按照索引顺序,从第一字符开始,依次获得该字符的引用。 -3. 当 `i="w"`的时候,执行`print i`或者`print(i)`,打印出了字母w;然后循环第二次,让 `i="e"`,执行`print i`或者`print(i)`,打印出字母e;……,如此循环下去,一直到最后一个字符被打印出来,循环自动结束。注意,每次打印之后,要换行。如果不想换行,怎么办?参见[《语句(1)》](./121.md)中相关内容。 - -因为可以也通过使用索引,得到序列对象的某个元素。所以,还可以通过下面的循环方式实现同样效果: - - >>> for i in range(len(hello)): - ... print hello[i] #Python 3: print(hello[i]) - ... - w - o - r - l - d - -其工作方式是: - -1. `len(hello)`得到hello引用的字符串的长度,为5 -2. `range(len(hello)`,就是`range(5)`,也就是`[0, 1, 2, 3, 4]`,对应这`"world"`每个字母索引。这里应用了一个新的函数`range()`,关于它的用法,继续阅读,就能看到了。 -3. `for i in range(len(hello))`,就相当于`for i in [0,1,2,3,4]`,让`i`依次得到列表中的各个值。当`i=0`时,打印`hello[0]`,也就是第一个字符。然后顺序循环下去,直到最后一个`i=4`为止。 - -以上的循环举例中,显示了对字符串的字符依次获取,也涉及了列表,感觉不过瘾呀。 - -那好,看下面对列表的循环: - - >>> ls_line = ['Hello', 'I am qiwsir', 'Welcome you', ''] - - >>> for word in ls_line: - ... print word #Python 3: print(word) - ... - Hello - I am qiwsir - Welcome you - - >>> for i in range(len(ls_line)): - ... print ls_line[i] #Python 3: print(ls_line[i]) - ... - Hello - I am qiwsir - Welcome you - -以上两个例子中,是将for循环用于字符串和列表,此外,还可以用于字典、元组。例如: - - >>> d = dict([("website", "www.itdiffer.com"), ("lang", "python"), ("author", "laoqi")]) - >>> d - {'website': 'www.itdiffer.com', 'lang': 'python', 'author': 'laoqi'} - >>> for k in d: - print k #Python 3: print(k) - -输出结果是: - - website - lang - author - -注意到,上面的循环,其实是读取了字典的key。在字典中,有一个方法,`dict.keys()`,得到的是字典key列表。 - - >>> for k in d.keys(): - print k #Python 3: print(k) - - website - lang - author - -这种循环方法和上面的循环方法,结果是一样的,但是,这种方法并不提倡,以为它在执行速度上表现欠佳。 - -如果要获得字典的value怎么办?不要忘记`dict.values()`方法。读者可以自行测试一番。 - -除了可以单独获得key或者value的循环之外,还可以这么做: - - >>> for k, v in d.items(): - print k + "-->" + v #Python 3: print(k+"-->"+v) - - website-->www.itdiffer.com - lang-->python - author-->laoqi - -在工程实践中,你一定会遇到非常大的字典。用上面的方法,要把所有的内容都读入内存,内存东西多了,可能会出麻烦。为此,Python中提供了另外的方法。 - - >>> for k,v in d.iteritems(): #注意:仅在Python2中可用,Python 3中已经做了优化,d.item()即有同等功能。 - print k + "-->" + v - - website-->www.itdiffer.com - lang-->python - author-->laoqi - -这里是循环一个迭代器,迭代器在循环中有很多优势。除了刚才的`dict.iteritems()`之外,还有`dict.itervalues()`,`dict.iterkeys()`供你选用(以上三个`dict.iter*`都只用在Python 2中,Python 3中已经不需要了)。 - - >>> d.iteritems() #注意:仅在Python2中可用。 - <dictionary-itemiterator object at 0x000000000322E368> - -至于对元组的循环,读者自行尝试即可。 - -除了上述的对象之外,for循环还能应用到哪些对象上?能不能用在数字上呢? - - >>> for i in 321: - print i - - Traceback (most recent call last): - File "<pyshell#48>", line 1, in <module> - for i in 321: - TypeError: 'int' object is not iterable - -报错了。这说明对于数字不能使用for循环。不过,光知道这个还不行,还要看看报错信息。 - -报错信息中告诉我们,`int`对象不是可迭代的。言外之意是什么?那就是for循环所应用的对象,应该是可迭代的。 - -那么,怎么判断一个对象是不是可迭代的呢? - - >>> import collections - -引入collections这个标准库。要判断数字321是不是可迭代的,可以这么做: - - >>> isinstance(321, collections.Iterable) - False - -返回了False,说明321这个整数类型的对象,是不可迭代的。再判断一个列表对象。 - - >>> isinstance([1,2,3], collections.Iterable) - True - -从返回结果,我们知道,列表`[1,2,3]`是可迭代的。 - -当然,并不是要你在使用for循环之前,非要判断某个对象是否可迭代。因为至此,你已经知道了字符串str、列表list、字典dict、元组tuple、集合set都是可迭代的。 - -##range(start,stop[, step]) - -这个内建函数,非常有必要给予说明,因为它会经常被使用。一般形式是`range(start, stop[, step])` - -要研究清楚一些函数特别是内置函数的功能,建议首先要明白内置函数名称的含义。因为在Python中,名称不是随便取的,是代表一定意义的。所谓:名不正言不顺。 - ->range - ->n. 范围;幅度;排;山脉 ->vi. (在...内)变动;平行,列为一行;延伸;漫游;射程达到 ->vt. 漫游;放牧;使并列;归类于;来回走动 - -在具体实验之前,还是按照管理,摘抄一段[官方文档的原话](https://docs.python.org/2/library/functions.html#range),让我们能够深刻理解之: - ->This is a versatile function to create lists containing arithmetic progressions. It is most often used in for loops. The arguments must be plain integers. If the step argument is omitted, it defaults to 1. If the start argument is omitted, it defaults to 0. The full form returns a list of plain integers [start, start + step, start + 2 * step, ...]. If step is positive, the last element is the largest start + i * step less than stop; if step is negative, the last element is the smallest start + i * step greater than stop. step must not be zero (or else ValueError is raised). - -从这段话,我们可以得出关于`range()`函数的以下几点: - -- 这个函数可以创建一个数字元素组成的列表。 -- 这个函数最常用于for循环(关于for循环,马上就要涉及到了) -- 函数的参数必须是整数,默认从0开始。返回值是类似`[start, start + step, start + 2*step, ...]`的列表。 -- step默认值是1。如果不写,就是按照此值。 -- 如果step是正数,返回列表的最后的值不包含stop值,即start+i*step这个值小于stop;如果step是负数,start+i*step的值大于stop。 -- step不能等于零,如果等于零,就报错。 - -在实验开始之前,再解释`range(start,stop[,step])`的含义: - -- start:开始数值,默认为0,也就是如果不写这项,就是认为start=0 -- stop:结束的数值,必须要写的。 -- step:变化的步长,默认是1,也就是不写,就是认为步长为1。坚决不能为0 - -实验开始,请以各项对照前面的讲述: - -Python 2: - - >>> range(9) #stop=9,别的都没有写,含义就是range(0,9,1) - [0, 1, 2, 3, 4, 5, 6, 7, 8] #从0开始,步长为1,增加,直到小于9的那个数 - >>> range(0, 9) - [0, 1, 2, 3, 4, 5, 6, 7, 8] - >>> range(0, 9, 1) - [0, 1, 2, 3, 4, 5, 6, 7, 8] - - >>> range(1, 9) #start=1 - [1, 2, 3, 4, 5, 6, 7, 8] - - >>> range(0, 9, 2) #step=2,每个元素等于start+i*step, - [0, 2, 4, 6, 8] - -Python 3: - - >>> range(9) - range(0, 9) - >>> list(range(9)) - [0, 1, 2, 3, 4, 5, 6, 7, 8] - -仅仅解释一下`range(0, 9, 2)`: - -- 如果是从0开始,步长为1,可以写成`range(9)`的样子,但是,如果步长为2,写成`range(9, 2)`的样子,计算机就有点糊涂了,它会认为start=9, stop=2。所以,在步长不为1的时候,切忌,要把start的值也写上。 -- start=0, step=2, stop=9,列表中的第一个值是start=0, 第二个值是start+1*step=2(注意,这里是1,不是2,不要忘记,前面已经讲过,不论是列表还是字符串,对元素进行编号的时候,都是从0开始的),第n个值就是start+(n-1)*step。直到小于stop前的那个值。 - -熟悉了上面的计算过程,看看下面的输入谁是什么结果? - - >>> range(-9) - -我本来期望给我返回[0,-1,-2,-3,-4,-5,-6,-7,-8],我的期望能实现吗? - -分析一下,这里start=0, step=1, stop=-9. - -第一个值是0;第二个是start+1*step,将上面的数代入,应该是1,但是最后一个还是-9,显然出现问题了。但是,Python在这里不报错,它返回的结果是: - -Python 2: - - >>> range(-9) - [] - >>> range(0,-9) - [] - >>> range(0) - [] - -Python 3: - - >>> range(-9) - range(0, -9) - >>> list(range(-9)) - [] - -报错和返回结果,是两个含义,虽然返回的不是我们要的。应该如何修改呢? - -Python 2: - - >>> range(0, -9, -1) - [0, -1, -2, -3, -4, -5, -6, -7, -8] - >>> range(0, -9, -2) - [0, -2, -4, -6, -8] - -Python 3: - - >>> range(0, -9, -1) - range(0, -9, -1) - >>> list(range(0, -9, -1)) - [0, -1, -2, -3, -4, -5, -6, -7, -8] - -有了这个内置函数,很多事情就简单了。比如: - - >>> range(0, 101, 2) #Python 2。如果用Python 3,类似前述演示 - [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 74, 76, 78, 80, 82, 84, 86, 88, 90, 92, 94, 96, 98] - -100以内的自然数中的偶数组成的列表,就非常简单地搞定了。 - -思考一个问题,现在有一个列表,比如是`["I","am","a","pythoner","I","am","learning","it","with","qiwsir"]`,要得到这个列表的所有序号组成的列表,但是不能一个一个用手指头来数。怎么办? - -请沉思两分钟之后,自己实验一下,然后看下面。 - - >>> pythoner - ['I', 'am', 'a', 'pythoner', 'I', 'am', 'learning', 'it', 'with', 'qiwsir'] - >>> py_index = range(len(pythoner)) #以len(pythoner)为stop的值 - >>> py_index #Python 3: list(py_index) - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] - -再用手指头指着列表里面的元素,数一数,是不是跟结果一样。 - -**例:**找出小于100的能够被3整除的正整数。 - -**分析:**这个问题有两个限制条件,第一是小于100的正整数,根据前面所学,可以用`range(1,100)`来实现;第二个是要解决被3整除的问题,假设某个正整数n,这个数如果能够被3整除,也就是`n % 3 == 0`。那么如何得到n呢,就是要用for循环。 - -以上做了简单分析,要实现流程,还需要细化一下。按照前面曾经讲授过的一种方法,要画出问题解决的流程图。 - -![](./1images/12301.png) - -下面写代码就是按图索骥了。 - -代码: - - #! /usr/bin/env python - #coding:utf-8 - - aliquot = [] - - for n in range(1,100): - if n % 3 == 0: - aliquot.append(n) - - print aliquot #Python 3:print(aliquot) - -代码运行结果: - - [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99] - -上面的代码中,将for循环和if条件判断都用上了。 - -不过,感觉有点麻烦,其实这么做就可以了: - - >>> range(3, 100, 3) - [3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 39, 42, 45, 48, 51, 54, 57, 60, 63, 66, 69, 72, 75, 78, 81, 84, 87, 90, 93, 96, 99] - -for循环在Python中应用广泛,所以,下节还要深入研究这个语句的使用,不要小看它,虽然简单,但内涵深刻。 - ------- - -[总目录](./index.md)   |   [上节:语句(2)](./122.md)   |   [下节:语句(4)](./124.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/124.md b/124.md deleted file mode 100644 index 9f8ed8e..0000000 --- a/124.md +++ /dev/null @@ -1,370 +0,0 @@ ->"I give you a new commandment, that you love one another. Just as I have loved you, you also should love one another. By this everyone will know that you are my disciples, if you have love for one another." (JOHN 14:34-35) - -#语句(4) - -for循环在Python中应用广泛,所以,要用更多的篇幅来介绍。 - -##并行迭代 - -关于迭代,在[《列表(2)》](./112.md)中曾经提到过“可迭代的(iterable)”这个词,并给予了适当解释,这里再次提到“迭代”,说明它在Python中占有重要的位置。 - -迭代,在Python中表现就是用for循环,从序列对象中获得一定数量的元素。 - -在前面一节中,用for循环来获得列表、字符串、元组,乃至于字典的键值对,都是迭代。 - -现实中迭代不都是那么简单的,比如这个问题: - -**问题:**有两个列表,分别是:a = [1, 2, 3, 4, 5], b = [9, 8, 7, 6, 5],要计算这两个列表中对应元素的和。 - -**解析:** - -太简单了,一看就知道结果了。 - -很好,这是你的方法,如果是让Python来做,应该怎么做呢? - -观察发现两个列表的长度一样,都是5。那么对应元素求和,就是相同的索引值对应的元素求和,即`a[i]+b[i]`(i=0,1,2,3,4),这样一个一个地就把相应元素和求出来了。当然,要用for来做这个事情了。 - - >>> a = [1, 2, 3, 4, 5] - >>> b = [9, 8, 7, 6, 5] - >>> c = [] - >>> for i in range(len(a)): - ... c.append(a[i]+b[i]) - ... - >>> c - [10, 10, 10, 10, 10] - -看来for的表现还不错。 - -不过,这种方法虽然解决问题了,但Python总不会局限于一个解决之道,而且,用Python编程,还要追求优雅。 - -于是,`zip()`——一个内建函数姗姗来迟,它可以让同样的问题有不一样的解决途径,看起来更有范儿。 - -先要看一看`zip()`的文档,以了解它的身世。 - -在Python 2中,是这样描述的: - - >>> help(zip) - Help on built-in function zip in module __builtin__: - - zip(...) - zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)] - - Return a list of tuples, where each tuple contains the i-th element - from each of the argument sequences. The returned list is truncated - in length to the length of the shortest argument sequence. - -在Python 3中,相比Python 2,有一些稍微的差别。 - - >>> help(zip) - Help on class zip in module builtins: - - class zip(object) - | zip(iter1 [,iter2 [...]]) --> zip object - | - | Return a zip object whose .__next__() method returns a tuple where - | the i-th element comes from the i-th iterable argument. The .__next__() - | method continues until the shortest iterable in the argument sequence - | is exhausted and then it raises StopIteration. - -Python 2中,参数是`seq1, seq2, ...`,意思是序列数据;在Python 3中,参数需要是可迭代对象。这点差别,通常是没有什么影响的,因为序列也是可迭代的。值得关注的是返回值,在Python 2中,返回值是一个列表对象,里面以元组为元素;而Python 3中返回的是一个zip对象。 - -通过实验来理解上面的文档: - -Python 2: - - >>> a = "qiwsir" - >>> b = "github" - >>> zip(a, b) - [('q', 'g'), ('i', 'i'), ('w', 't'), ('s', 'h'), ('i', 'u'), ('r', 'b')] - -Python 3: - - >>> zip(a, b) - <zip object at 0x0000000003521D08> - >>> list(zip(a, b)) - [('q', 'g'), ('i', 'i'), ('w', 't'), ('s', 'h'), ('i', 'u'), ('r', 'b')] - -如果序列长度不同,那么就以"the length of the shortest argument sequence"为准。 - - >>> c = [1, 2, 3] - >>> d = [9, 8, 7, 6] - >>> zip(c, d) #这是Python 2的结果,如果是Python 3,请仿照前面的方式显示查看 - [(1, 9), (2, 8), (3, 7)] - - >>> m = {"name", "lang"} - >>> n = {"qiwsir", "python"} - >>> zip(m, n) #这是Python 2的结果,如果是Python 3,请仿照前面的方式显示查看 - [('lang', 'python'), ('name', 'qiwsir')] - -m,n是字典吗?当然不是。下面的才是字典呢。 - - >>> s = {"name":"qiwsir"} - >>> t = {"lang":"python"} - >>> zip(s,t) - [('name', 'lang')] - -zip是一个内置函数,它的参数必须是序列,如果是字典,那么键视为序列。然后将序列对应的元素依次组成元组,做为一个列表的元素。 - -下面是比较特殊的情况,参数是一个序列对象的时候,生成的结果样子: - - >>> a ='qiwsir' - >>> c = [1, 2, 3] - >>> zip(c) #这是Python 2的结果,如果是Python 3,请仿照前面的方式显示查看 - [(1,), (2,), (3,)] - >>> zip(a) - [('q',), ('i',), ('w',), ('s',), ('i',), ('r',)] - -很好的`zip()`!那么就用它来解决前面那个两个列表中值对应相加吧。 - - >>> d = [] - >>> for x,y in zip(a,b): - ... d.append(x+y) - ... - >>> d - [10, 10, 10, 10, 10] - -多么优雅的解决! - -比较这个问题的两种解法,似乎第一种解法适用面较窄,比如,如果已知给定的两个列表长度不同,第一种解法就出问题了。而第二种解法还可以继续适用。的确如此,不过,第一种解法也不是不能修订的。 - - >>> a = [1, 2, 3, 4, 5] - >>> b = ["python","www.itdiffer.com","qiwsir"] - -如果已知是这样两个列表,要讲对应的元素“加起来”。 - - >>> length = len(a) if len(a)<len(b) else len(b) - >>> length - 3 - -首先用这种方法获得两个列表中最短的那个列表的长度。看那句三元操作,这是非常pythonic的写法啦。写出这句,就可以冒充高手了。哈哈。 - - >>> for i in range(length): - ... c.append(str(a[i]) + ":" + b[i]) - ... - >>> c - ['1:python', '2:www.itdiffer.com', '3:qiwsir'] - -我还是用第一个思路做的,经过这么修正一下,也还能用。要注意一个细节,在“加”的时候,不能直接用`a[i]`,因为它引用的对象是一个整数类型,不能跟后面的字符串类型相加,必须转化一下。 - -当然,`zip()`也是能解决这个问题的。 - - >>> d = [] - >>> for x,y in zip(a, b): - ... d.append(x + y) - ... - Traceback (most recent call last): - File "<stdin>", line 2, in <module> - TypeError: unsupported operand type(s) for +: 'int' and 'str' - -报错!看错误信息,我刚刚提醒的那个问题就冒出来了。所以,应该这么做: - - >>> for x,y in zip(a, b): - ... d.append(str(x) + ":" + y) - ... - >>> d - ['1:python', '2:www.itdiffer.com', '3:qiwsir'] - -这才得到了正确结果。 - -切记:**computer是一个姑娘,她非常秀气,需要敲代码的小伙子们耐心地、细心地跟她相处。** - -以上两种写法那个更好呢?前者?后者? - - >>> result = [(2, 11), (4, 13), (6, 15), (8, 17)] - - >>> zip(*result) - [(2, 4, 6, 8), (11, 13, 15, 17)] - -`zip()`还能这么干,是不是有点意思? - -下面延伸一个问题: - -**问题**:有一个字典,myinfor = {"name":"qiwsir", "site":"qiwsir.github.io", "lang":"python"},将这个字典变换成:infor = {"qiwsir":"name", "qiwsir.github.io":"site", "python":"lang"} - -**解析:** - -解法一,用for循环: - - >>> myinfor = {"name":"qiwsir", "site":"qiwsir.github.io", "lang":"python"} - >>> infor = {} - >>> for k,v in myinfor.items(): - ... infor[v]=k - ... - >>> infor - {'python': 'lang', 'qiwsir.github.io': 'site', 'qiwsir': 'name'} - -解法二,用`zip()`: - - >>> dict(zip(myinfor.values(), myinfor.keys())) - {'python': 'lang', 'qiwsir.github.io': 'site', 'qiwsir': 'name'} - -呜呼,这是什么情况?原来这个`zip()`还能这样。 - -为了能够窥探内部的奥秘,我们将那一行分解开来。 - - >>> myinfor.values() #得到字典值的列表 - ['python', 'qiwsir', 'qiwsir.github.io'] - >>> myinfor.keys() #得到字典键的列表 - ['lang', 'name', 'site'] - >>> temp = zip(myinfor.values(), myinfor.keys()) #压缩成一个列表,每个元素是一个元组,元组中第一个是值,第二个是键 - >>> temp #Python 3中是一个zip对象 - [('python', 'lang'), ('qiwsir', 'name'), ('qiwsir.github.io', 'site')] - >>> dict(temp) #这是函数dict()的功能,将上述列表转化为字典 - {'python': 'lang', 'qiwsir.github.io': 'site', 'qiwsir': 'name'} - -至此,是不是明白`zip()`和循环的关系了呢?有了它可以让某些循环简化。 - -##enumerate - -`enumerate()`也是内建函数。 - -本来我们可以通过`for i in range(len(list))`的方式得到一个列表的每个元素对应的索引,然后在用`list[i]`的方式得到该元素。这是前面用过的路数。 - -但是,如果要同时得到元素索引和元素怎么办? - - >>> week = ['monday', 'sunday', 'friday'] - >>> for i in range(len(week)): - ... print week[i]+' is '+str(i) #注意,i是int类型,如果和前面的用+连接,必须是str类型 - ... #如果使用Python 3,请自行更换为print(week[i]+' is '+str(i)) - monday is 0 - sunday is 1 - friday is 2 - -内建函数enumerate,能够实现类似的功能,并且简化。 - - >>> for (i, day) in enumerate(week): - ... print day+' is '+str(i) #Python 3: print(day+' is '+str(i)) - ... - monday is 0 - sunday is 1 - friday is 2 - -官方文档是这么说的: - ->Return an enumerate object. sequence must be a sequence, an iterator, or some other object which supports iteration. The next() method of the iterator returned by enumerate() returns a tuple containing a count (from start which defaults to 0) and the values obtained from iterating over sequence: - -顺便抄录几个例子,供看官欣赏,最好实验一下。 - - >>> seasons = ['Spring', 'Summer', 'Fall', 'Winter'] - >>> list(enumerate(seasons)) - [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] - - >>> list(enumerate(seasons, start=1)) - [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')] - -对于这样一个列表: - - >>> mylist = ["qiwsir",703,"python"] - >>> enumerate(mylist) - <enumerate object at 0xb74a63c4> - >>> list(enumerate(mylist)) - [(0, 'qiwsir'), (1, 703), (2, 'python')] - -再设计一个小问题,练习一下这个函数。 - -**问题:**将字符串中的某些字符替换为其它的字符串。原始字符串"Do you love Canglaoshi? Canglaoshi is a good teacher.",请将"Canglaoshi"替换为"PHP". - -**解析:** - - >>> raw = "Do you love Canglaoshi? Canglaoshi is a good teacher." - -这是所要求的那个字符串,但是,不能直接对这个字符串使用`enumerate()`,因为它会变成这样: - - >>> list(enumerate(raw)) - [(0, 'D'), (1, 'o'), (2, ' '), (3, 'y'), (4, 'o'), (5, 'u'), (6, ' '), (7, 'l'), (8, 'o'), (9, 'v'), (10, 'e'), (11, ' '), (12, 'C'), (13, 'a'), (14, 'n'), (15, 'g'), (16, 'l'), (17, 'a'), (18, 'o'), (19, 's'), (20, 'h'), (21, 'i'), (22, '?'), (23, ' '), (24, 'C'), (25, 'a'), (26, 'n'), (27, 'g'), (28, 'l'), (29, 'a'), (30, 'o'), (31, 's'), (32, 'h'), (33, 'i'), (34, ' '), (35, 'i'), (36, 's'), (37, ' '), (38, 'a'), (39, ' '), (40, 'g'), (41, 'o'), (42, 'o'), (43, 'd'), (44, ' '), (45, 't'), (46, 'e'), (47, 'a'), (48, 'c'), (49, 'h'), (50, 'e'), (51, 'r'), (52, '.')] - -这不是所需要的。所以,先把raw转化为列表: - - >>> raw_lst = raw.split(" ") - -然后用`enumerate()` - - >>> for i, string in enumerate(raw_lst): - ... if string == "Canglaoshi": - ... raw_lst[i] = "PHP" - ... - -没有什么异常现象,查看一下那个raw_lst列表,看看是不是把"Canglaoshi"替换为"PHP"了。 - - >>> raw_lst - ['Do', 'you', 'love', 'Canglaoshi?', 'PHP', 'is', 'a', 'good', 'teacher.'] - -只替换了一个,还有一个没有替换。为什么?仔细观察发现,没有替换的那个是'Canglaoshi?',跟条件判断中的"Canglaoshi"不一样。 - -修改一下,把条件放宽: - - >>> for i, string in enumerate(raw_lst): - ... if "Canglaoshi" in string: - ... raw_lst[i] = "PHP" - ... - >>> raw_lst - ['Do', 'you', 'love', 'PHP', 'PHP', 'is', 'a', 'good', 'teacher.'] - -好的。然后呢?再转化为字符串?留给读者试试。 - -##列表解析 - -先看下面的例子,这个例子是想得到1到9的每个整数的平方,并且将结果放在列表中,打印出来。 - - >>> power2 = [] - >>> for i in range(1, 10): - ... power2.append(i*i) - ... - >>> power2 - [1, 4, 9, 16, 25, 36, 49, 64, 81] - -Python有一个非常强大的功能,就是列表解析,它这样使用: - - >>> squares = [x**2 for x in range(1, 10)] - >>> squares - [1, 4, 9, 16, 25, 36, 49, 64, 81] - -看到这个结果,读者还不惊叹吗? - -这就是Python,追求简洁优雅的Python! - -其官方文档中有这样一段描述,道出了列表解析的真谛: - ->List comprehensions provide a concise way to create lists. Common applications are to make new lists where each element is the result of some operations applied to each member of another sequence or iterable, or to create a subsequence of those elements that satisfy a certain condition. - -这就是Python有意思的地方,也是计算机高级语言编程有意思的地方,你只要动脑筋,总能找到惊喜的东西。 - -其实,不仅仅对数字组成的列表,所有的都可以如此操作。请在平复了激动的心之后,默默地看下面的代码,感悟一下列表解析的魅力。 - - >>> mybag = [' glass',' apple','green leaf '] #有的前面有空格,有的后面有空格 - >>> [one.strip() for one in mybag] #去掉元素前后的空格 - ['glass', 'apple', 'green leaf'] - -本节中已经演示过的问题,都能用列表解析来重写。读者不妨试试。 - -在很多情况下,列表解析的执行效率高,代码简洁明了。是实际写程序中经常被用到的。 - -现在Python的两个版本,对列表解释上,还是有一点点差别的,请认真看下面的比较操作。 - -Python 2: - - >>> i = 1 - >>> [ i for i in range(9)] - [0, 1, 2, 3, 4, 5, 6, 7, 8] - >>> i - 8 - -Python 3: - - >>> i = 1 - >>> [i for i in range(9)] - [0, 1, 2, 3, 4, 5, 6, 7, 8] - >>> i - 1 - -有没有观察到区别? - -先`i = 1`,然后是一个列表解析式,非常巧合的是,列表解析式中也用了变量`i`。这种情况,在编程中是常常遇到的,我们通常把`i=1`中的变量`i`称为处于全局命名空间里面(命名空间,是一个新词汇,暂且用起来,后面会讲述),而列表解析式中的变量`i`是在列表解析内,称为处在局部命名空间。在Python 3中,for循环里的变量不再与全局命名空间的变量有关联了。这种改变,窃以为,是进步。 - -对于循环,除了for之外,还有一个叫做while。 - ------- - -[总目录](./index.md)   |   [上节:语句(3)](./123.md)   |   [下节:语句(5)](./125.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/125.md b/125.md deleted file mode 100644 index 93d78de..0000000 --- a/125.md +++ /dev/null @@ -1,230 +0,0 @@ ->他们虽然知道神,却不当做神荣耀他,也不感谢他。他们的思念变为虚妄,无知的心就昏暗了。自称为聪明,反成了愚拙;经不能朽坏值神的荣耀变为偶像,仿佛必朽坏的人和飞禽、走兽、昆虫的样式。(ROMANS 1:21-23) - -#语句(5) - -关于循环,Python中除了for,还有一个是while。 - -while,翻译成中文是“当...的时候”,这个单词在英语中,常常用来做为时间状语,while ... someone do somthing,这种类型的说法是有的。 - -在Python中,它也有这个含义,不过有点区别的是,“当...时候”这个条件成立在一段范围或者时间间隔内,从而在这段时间间隔内让Python做好多事情。就好比这样一段情景: - - while 年龄大于60岁:-------->当年龄大于60岁的时候 - 退休 -------->凡是符合上述条件就执行的动作 - -展开想象。如果制作一道门,这道门就是用上述的条件调控开关的,假设有很多人经过这个门,报上年龄,只要年龄大于60,就退休(门打开,人可以出去),一个接一个地这样循环下去,突然有一个人年龄是50,那么这个循环在他这里就停止,也就是这时候他不满足条件了。 - -这就是while循环。写一个严肃点的流程,可以看下图: - -![](./1images/12501.png) - -##做猜数字游戏 - -前不久,有一个在校的大学生朋友(他叫李航),给我发邮件,让我看了他做的游戏,能够实现多次猜数,直到猜中为止。这是一个多么喜欢学习的大学生呀。 - -我在这里将他写的程序恭录于此,如果李航同学认为此举侵犯了自己的知识产权,可以告知我,我马上撤下此代码。 - - #! /usr/bin/env python - #coding:UTF-8 - - import random - - i=0 - while i < 4: - print'********************************' - num = input('请您输入0到9任一个数:') - - xnum = random.randint(0,9) - - x = 3 - i - - if num == xnum: - print('运气真好,您猜对了!') - break - elif num > xnum: - print('''您猜大了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x)) - elif num < xnum: - print('''您猜小了!\n哈哈,正确答案是:%s\n您还有%s次机会!''' %(xnum,x)) - print('********************************') - - i += 1 - -我们就用这段程序来分析一下,首先看while i<4,这是程序中为猜测限制了次数,最大是三次。请注意,在while的循环体中的最后一句:`i +=1`,这就是说每次循环到最后,就给`i`增加1,当`bool(i<4)`为False的时候,就不再循环了。 - -当`bool(i<4)`为True的时候,就执行循环体内的语句。在循环体内,让用户输入一个整数,然后程序随机选择一个整数,最后判断随机生成的数和用户输入的数是否相等,并且用if语句判断三种不同情况。 - -根据上述代码,读者看看是否可以修改? - -为了让用户的体验更爽,不妨把输入的整数范围扩大,在1到100之间吧。 - - num_input = raw_input("please input one integer that is in 1 to 100:") #Python 3请使用input() - -程序用`num_input`变量接收了输入的内容。但是,请一定要注意,看到这里想睡觉的要打起精神了,我要分享一个多年编程经验: - -请牢记:**任何用户输入的内容都是不可靠的。** - -这句话含义深刻,但是,这里不做过多的解释,需要各位在随后的编程生涯中体验了。 - -为此,我们要检验用户输入的是否符合我们的要求,我们要求用户输入的是1到100之间的整数,那么就要做如下检验: - -1. 输入的是否是整数 -2. 如果是整数,是否在1到100之间。 - -可以这样做: - - if not num_input.isdigit(): #str.isdigit()是用来判断字符串是否纯粹由数字组成 - print "Please input interger." - elif int(num_input)<0 and int(num_input)>=100: - print "The number should be in 1 to 100." - else: - pass #这里用pass,意思是暂时省略,如果满足了前面提出的要求,就该执行此处语句 - -再看看李航同学的程序,在循环体内产生一个随机的数字,这样用户每次输入,面对的都是一个新的随机数字。这样的猜数字游戏难度太大了。我希望是程序产生一个数字,直到猜中,都是这个数字。所以,要把产生随机数字这个指令移动到循环之前。 - - import random - - number = random.randint(1,100) - - while True: #不限制用户的次数了 - ... - -观察李同学的程序,还有一点需要向列位显明的,那就是在条件表达式中,两边最好是同种类型数据,上面的程序中有:`num>xnum`样式的条件表达式,而一边是程序生成的整数类型,一边是通过输入函数得到的字符串类型数据。在某些情况下可以运行,为什么?读者能理解吗?都是数字的时候,是可以的。但是,这样不好。 - -那么,按照这种思路,把这个猜数字程序重写一下: - - #!/usr/bin/env python - #coding:utf-8 - - import random - - number = random.randint(1,100) - - guess = 0 - - while True: - - num_input = raw_input("please input one integer that is in 1 to 100:") - guess += 1 - - if not num_input.isdigit(): - print "Please input interger." - elif int(num_input) < 0 or int(num_input) >= 100: - print "The number should be in 1 to 100." - else: - if number == int(num_input): - print "OK, you are good.It is only %d, then you successed." % guess - break - elif number > int(num_input): - print "your number is smaller." - elif number < int(num_input): - print "your number is bigger." - else: - print "There is something bad, I will not work" - -上述代码是在Python 2下调试的,如果读者使用的是Python 3,请在前面已经陈述过的几个地方进行修改。 - -代码供参考,更欢迎读者改进它。 - -##break和continue - -`break`,在上面的例子中已经出现了,其含义就是要在这个地方中断循环,跳出循环体。下面这个简要的例子更明显: - - #!/usr/bin/env python - #coding:utf-8 - - a = 8 - while a: - if a%2 == 0: - break - else: - print "%d is odd number"%a - a = 0 - print "%d is even number"%a - -上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。 - -a=8的时候,执行循环体中的break,跳出循环,执行最后的打印语句,得到结果: - - 8 is even number - -如果a=9,则要执行else里面的的print,然后a=0,循环就在执行一次,又break了,得到结果: - - 9 is odd number - 0 is even number - -而`continue`则是要从当前位置(即continue所在的位置)跳到循环体的最后一行的后面(不执行最后一行),对一个循环体来讲,就如同首尾衔接一样,最后一行的后面是哪里呢?当然是开始了。 - - #!/usr/bin/env python - #coding:utf-8 - - a = 9 - while a: - if a%2 == 0: - a -=1 - continue #如果是偶数,就返回循环的开始 - else: - print "%d is odd number"%a #如果是奇数,就打印出来 - a -=1 - -为了兼顾Python 3,还是重复上面那句话:上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。 - -其实,对于`break`和`continue`,我个人在编程中很少用到。我有一个固执的观念,尽量将条件在循环之前做足,不要在循环中跳来跳去,不仅可读性下降,有时候自己也糊涂了。 - -##while...else - -`while...else`有点类似`if ... else`,只需要一个例子就可以理解。 当然,一遇到`else`了,就意味着已经不在while循环内了。 - - #!/usr/bin/env python - - count = 0 - while count < 5: - print count, " is less than 5" - count = count + 1 - else: - print count, " is not less than 5" - -执行结果: - - 0 is less than 5 - 1 is less than 5 - 2 is less than 5 - 3 is less than 5 - 4 is less than 5 - 5 is not less than 5 - -依然要说明:上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。 - -##for...else - -除了有`while...else`外,还可以有`for...else`。这个循环也通常用在当跳出循环之后要做的事情。 - - #!/usr/bin/env python - # coding=utf-8 - - from math import sqrt - - for n in range(99, 1, -1): - root = sqrt(n) - if root == int(root): - print n - break - - else: - print "Nothing." - -依然要说明:上述代码在Python 2中调试,如果读者使用Python 3,只需要将print语句更换为`print()`函数即可。这是很煞风景的一句话。 - -读者是否能够读懂这段代码的含义? - ->阅读代码是一个提升自己编程水平的好方法。如何阅读代码?像看网上新闻那样吗?一目只看自己喜欢的文字,甚至标题看不完就开始喷。 - ->绝对不是这样,如果这样,不是阅读代码呢。阅读代码的最好方法是给代码做注释。对,如果可能就给每行代码做注释。这样就能理解代码的含义了。 - -上面的代码,读者不妨做注释,看看它到底在干什么。如果把`for n in range(99, 1, -1)`修改为`for n in range(99, 81, -1)`看看是什么结果? - -循环就这么多内容,但它即将迎来一个最大的用处。 - ------- - -[总目录](./index.md)   |   [上节:语句(4)](./124.md)   |   [下节:文件(1)](./126.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/126.md b/126.md deleted file mode 100644 index dfbfb55..0000000 --- a/126.md +++ /dev/null @@ -1,210 +0,0 @@ ->Be on your guard! If another disciple sins, you must rebuke the offender, and if the same person sins against you seven times a day, adn turns back to you seven times and says, 'I repent,' you must forgive. (LUKE17:3-4) - -#文件(1) - -文件,是computer姑娘中非常重要的东西。如在Linux操作系统中,所有的东西都被保存到文件中。 - -在Python里,它也很重要。只不过,Python 2和Python 3对它的态度有点不同。 - -在Python 2中,文件也是一种内建类型对象,其地位等同于前面已经学习过的列表、整数、字符串等类型。 - -在交互模式下,我们可以用`dir()`这种已经熟练的方法查看相关属性和方法。 - - >>> dir(file) - ['__class__', '__delattr__', '__doc__', '__enter__', '__exit__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'closed', 'encoding', 'errors', 'fileno', 'flush', 'isatty', 'mode', 'name', 'newlines', 'next', 'read', 'readinto', 'readline', 'readlines', 'seek', 'softspace', 'tell', 'truncate', 'write', 'writelines', 'xreadlines'] - -然而,这一切在Python 3中都变了。在Python 3中,再没有`file`这个内建类型了。如果读者使用的是Python 3,执行`dir(file)`,会报错,并且显示`NameError: name 'file' is not defined`。 - -但,这并不妨碍我们对文件的研究。 - -暂且观察Python 2的`dir(file)`结果,里面有`__iter__`这个东西。曾经在讲述列表的时候,是不是也出现这个东西了呢?是的。它意味着这种类型的对象是可迭代的(iterable)。在下面的讲解中,你就会看到了,能够用for来读取其中的内容。 - -##读文件 - -在某个文件夹下面建立了一个文件,名曰:130.txt,并且在里面输入了如下内容: - - learn python - http://qiwsir.github.io - qiwsir@gmail.com - -此文件一共三行。 - -下图显示了这个文件的存储位置: - -![](./1images/12601.png) - -在上面截图中,我在当前位置输入了`python`,进入到交互模式。在这个交互模式下,这样操作: - - >>> f = open("130.txt") #打开已经存在的文件 - >>> for line in f: - ... print line #Python 3: print(line) - ... - learn python - - http://qiwsir.github.io - - qiwsir@gmail.com - -提醒初学者注意,在那个目录里输入了启动Python交互模式的命令,那么,如果按照上面的方法`open("130.txt")`打开文件,就意味着这个文件130.txt是在当前文件夹内的。如果要打开其它文件夹内的文件,请用相对路径或者绝对路径来表示,从而让Python能够找到那个文件。 - -将打开的文件,赋值给变量`f`,这样也就是变量`f`跟对象文件130.txt用线连起来了(对象引用),本质上跟前面所讲述的其它对象进行赋值是一样的。 - -接下来,用`for`来读取文件中的内容,就如同读取一个前面已经学过的序列对象一样,把读到的文件中的每行,赋值给变量`line`。也可以理解为,用`for`循环一行一行地读取文件内容。每次扫描一行,遇到行结束符号`\n`表示本行结束,然后是下一行。 - -从打印的结果看出,每一行跟前面看到的文件内容中的每一行是一样的。只是行与行之间多了一空行,前面显示文章内容的时候,没有这个空行。或许这无关紧要,但是,还要深究一下,才能豁然。 - -在原文中,每行结束有本行结束符号`\n`,表示换行。`print line`或者`print(line)`默认情况下,打印完`line`的对象之后会增加一个`\n`。这样看来,在每行末尾就有两个`\n`,即:`\n\n`,于是在打印中就出现了一个空行。 - - >>> f = open('130.txt') - >>> for line in f: - ... print line, #Python 3: print(line, end='') - ... - learn python - http://qiwsir.github.io - qiwsir@gmail.com - -如果读者完成了上述操作,紧接着做下面的操作: - - >>> for line2 in f: #在前面通过for循环读取了文件内容之后,再次读取, - ... print line2 #然后打印,结果就什么也不显示,这是什么问题? - ... - >>> - -这不是什么错误,是因为前一次已经读取了文件内容,并且到了文件的末尾了。再重复操作,就是从末尾开始继续读了。当然显示不了什么东西,但是Python并不认为这是错误。后面会对此进行讲解。 - -在这里,如果要再次读取,那就从新`f = open('130.txt')`。有点麻烦!怎奈知识尚不充足。 - -使用Python 3的读者,这里要注意了,如果你已经执行了`f = open('130.txt')`,就是已经建立了一个文件对象,这时候可以使用`dir()`来查看这个对象的方法和属性了。 - - >>> f = open("130.txt") - >>> dir(f) - ['_CHUNK_SIZE', '__class__', '__del__', '__delattr__', '__dict__', '__dir__', '__doc__', '__enter__', '__eq__', '__exit__', '__format__', '__ge__', '__getattribute__', '__getstate__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__lt__', '__ne__', '__new__', '__next__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_checkClosed', '_checkReadable', '_checkSeekable', '_checkWritable', '_finalizing', 'buffer', 'close', 'closed', 'detach', 'encoding', 'errors', 'fileno', 'flush', 'isatty', 'line_buffering', 'mode', 'name', 'newlines', 'read', 'readable', 'readline', 'readlines', 'seek', 'seekable', 'tell', 'truncate', 'writable', 'write', 'writelines'] - -不管两个版本的显示结果有哪些不同,它们相同的是都有`__iter__`属性,意味着在两个版本中,文件对象都是可迭代的。 - -特别提醒,因为我所演示的交互模式是在该文件所在目录启动的,所以,就相当于这个实验室和文件130.txt是同一个目录,这时候我们打开文件130.txt,就认为是在本目录中打开,如果文件不是在本目录中,需要写清楚路径。 - -比如:在上一级目录中(`~/Documents/ITArticles/BasicPython`),假如我进入到那个目录中,运行交互模式,然后试图打开130.txt文件。 - -![](./1images/12602.png) - - >>> f = open("130.txt") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - IOError: [Errno 2] No such file or directory: '130.txt' - - >>> f = open("./codes/130.txt") #必须得写上路径了(注意,windows的路径分隔符与此不同。) - >>> for line in f: - ... print line - ... - learn python - - http://qiwsir.github.io - - qiwsir@gmail.com - -读文件,只是针对文件的操作之一,还有创建文件。 - -##创建文件 - -上面的实验中,打开的是一个已经存在的文件。如何创建文件呢? - - >>> nf = open("131.txt", "w") - >>> nf.write("This is a file") - >>> nf.close() - -就这样创建了一个文件?并写入了文件内容呢?看看再说: - -![](./1images/12603.png) - -真的就这样创建了新文件,并且里面有那句话呢。 - -创建文件,我们同样是用`open()`这个函数,但是多了个`"w"`,这是在告诉Python用什么样的模式打开文件。也就是说,用`open()`操作文件,可以有不同的模式。看下表: - -| 模式 | 描述 | -|------|------| -| r | 以读方式打开文件,可读取文件信息。| -| w | 以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容 | -| a | 以追加模式打开文件(即一打开文件,文件指针自动移到文件末尾),如果文件不存在则创建 | -| r+ | 以读写方式打开文件,可对文件进行读和写操作。 | -| w+ | 消除文件内容,然后以读写方式打开文件。 | -| a+ | 以读写方式打开文件,并把文件指针移到文件尾。 | -| b | 以二进制模式打开文件,而不是以文本模式。该模式只对Windows或Dos有效,类Unix的文件是用二进制模式进行操作的。 | - -从表中不难看出,不同模式下打开文件,可以进行相关的读写。那么,如果什么模式都不写,像前面那样呢?那样就是默认为r模式,只读的方式打开文件。 - - >>> f = open("130.txt") - >>> f - <open file '130.txt', mode 'r' at 0xb7530230> - >>> f = open("130.txt","r") - >>> f - <open file '130.txt', mode 'r' at 0xb750a700> - -Python 3中显示的结果信息更丰富、明确。 - - >>> f - <_io.TextIOWrapper name='130.txt' mode='r' encoding='cp936'> - -可以用这种方式查看当前打开的文件是采用什么模式的,上面显示,两种模式是一样的效果,如果不写那个`"r"`,就默认为是只读模式了。下面逐个对各种模式进行解释 - -**"w":以写方式打开文件,可向文件写入信息。如文件存在,则清空该文件,再写入新内容** - -131.txt这个文件是存在的,前面建立的,并且在里面写了一句话:This is a file - - >>> fp = open("131.txt") - >>> for line in fp: #原来这个文件里面的内容 - ... print line #Python 3: print(line) - ... - This is a file - >>> fp = open("131.txt","w") #这时候再看看这个文件,里面还有什么呢?是不是空了呢? - >>> fp.write("My name is qiwsir.\nMy website is qiwsir.github.io") #再查看内容 - >>> fp.close() - -查看文件内容: - - $ cat 131.txt #cat是linux下显示文件内容的命令,这里就是要显示131.txt内容 - My name is qiwsir. - My website is qiwsir.github.io - -**"a":以追加模式打开文件(即一打开文件,文件指针自动移到文件末尾),如果文件不存在则创建** - - >>> fp = open("131.txt","a") - >>> fp.write("\nAha,I like program\n") #向文件中追加 - >>> fp.close() #这是关闭文件,一定要养成一个习惯,写完内容之后就关闭 - -查看文件内容: - - $ cat 131.txt - My name is qiwsir. - My website is qiwsir.github.io - Aha,I like program - -其它项目就不一一讲述了。看官可以自己实验。 - -##使用with - -在对文件进行写入操作之后,一定要牢记一个事情:`file.close()`,这个操作千万不要忘记,忘记了怎么办,那就补上吧,也没有什么天塌地陷的后果。 - -有另外一种方法,能够不用这么让人揪心,实现安全地关闭文件。 - - >>> with open("130.txt","a") as f: - ... f.write("\nThis is about 'with...as...'") - ... - >>> with open("130.txt","r") as f: - ... print f.read() - ... - learn python - http://qiwsir.github.io - qiwsir@gmail.com - hello - - This is about 'with...as...' - >>> - -这里就不用close()了。而且这种方法更有Python味道,或者说是更符合Pythonic的一个要求。 - ------- - -[总目录](./index.md)   |   [上节:语句(5)](./125.md)   |   [下节:文件(2)](./127.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/127.md b/127.md deleted file mode 100644 index 0c51b1a..0000000 --- a/127.md +++ /dev/null @@ -1,314 +0,0 @@ ->你这论断人的,无论你是谁,也无可推诿,你在甚么事上论断人,就在甚么事上定自己的罪。因你这论断人的,自己所行却和别人一样。我们知道这样行的人,神必照真理审判他。(ROMANS 2:1-2) - -#文件(2) - -文件,也是对象。 - -在Python 2中还是一种内建的类型,在Python 3中被取消了,可是,这并不意味这其地位降低。 - -##文件的状态 - -很多时候,我们需要获取一个文件的有关状态(也称为属性),比如创建日期,访问日期,修改日期,大小,等等。在os模块中,有这样一个方法,专门让我们查看文件的这些状态参数的。 - - >>> import os - >>> file_stat = os.stat("131.txt") #查看这个文件的状态 - >>> file_stat #文件状态是这样的。从下面的内容,有不少从英文单词中可以猜测出来。 - posix.stat_result(st_mode=33204, st_ino=5772566L, st_dev=2049L, st_nlink=1, st_uid=1000, st_gid=1000, st_size=69L, st_atime=1407897031, st_mtime=1407734600, st_ctime=1407734600) - - >>> file_stat.st_ctime #这个是文件创建时间 - 1407734600.0882277 - -这是什么时间?看不懂!别着急,换一种方式。在Python中,有一个模块`time`,是专门针对时间设计的。 - - >>> import time - >>> time.localtime(file_stat.st_ctime) #这回看清楚了。 - time.struct_time(tm_year=2014, tm_mon=8, tm_mday=11, tm_hour=13, tm_min=23, tm_sec=20, tm_wday=0, tm_yday=223, tm_isdst=0) - -##read/readline/readlines - -用`open()`能够打开文件,在用for循环,可以将文件的内容读取出来。 - -但是,在查看文件的属性和方法的时候,会看到三个方法:`read, readline, readlines`。 - -从名称上看,它们应该都是跟“读”有关的,但是,又应该有差别。 - -的确如此。 - -还是对比着看一看,并且还要Python 2和Python 3的文档对比。 - -Python 2: - - >>> help(file.read) - Help on method_descriptor: - read(...) - read([size]) -> read at most size bytes, returned as a string. - - If the size argument is negative or omitted, read until EOF is reached. - Notice that when in non-blocking mode, less data than what was requested - may be returned, even if no size parameter was given. - - >>> help(file.readline) - Help on method_descriptor: - readline(...) - readline([size]) -> next line from the file, as a string. - - Retain newline. A non-negative size argument limits the maximum - number of bytes to return (an incomplete line may be returned then). - Return an empty string at EOF. - - >>> help(file.readlines) - Help on method_descriptor: - readlines(...) - readlines([size]) -> list of strings, each a line from the file. - - Call readline() repeatedly and return a list of the lines so read. - The optional size argument, if given, is an approximate bound on the - total number of bytes in the lines returned. - -Python 3: - - >>> f = open("130.txt") - >>> help(f.read) - Help on built-in function read: - read(size=-1, /) method of _io.TextIOWrapper instance - Read at most n characters from stream. - - Read from underlying buffer until we have n characters or we hit EOF. - If n is negative or omitted, read until EOF. - - >>> help(f.readline) - Help on built-in function readline: - readline(size=-1, /) method of _io.TextIOWrapper instance - Read until newline or EOF. - - Returns an empty string if EOF is hit immediately. - - >>> help(f.readlines) - Help on built-in function readlines: - readlines(hint=-1, /) method of _io.TextIOWrapper instance - Return a list of lines from the stream. - - hint can be specified to control the number of lines read: no more - lines will be read if the total size (in bytes/characters) of all - lines so far exceeds hint. - -对照一下上面的说明,三个的异同就显现了。而且,要想了解Python 2和Python 3之间的不同,还可以将两个版本的对照一下。好像也没有什么不同哦。 - -EOF什么意思?End-of-file。在[维基百科](http://en.wikipedia.org/wiki/End-of-file)中居然有对它的解释: - - In computing, End Of File (commonly abbreviated EOF[1]) is a condition in a computer operating system where no more data can be read from a data source. The data source is usually called a file or stream. In general, the EOF is either determined when the reader returns null as seen in Java's BufferedReader,[2] or sometimes people will manually insert an EOF character of their choosing to signal when the file has ended. - -明白EOF之后,就对比一下: - -- read:如果指定了参数size,就按照该指定长度从文件中读取内容,否则,就读取全文。被读出来的内容,全部塞到一个字符串里面。这样有好处,就是东西都到内存里面了,随时取用,比较快捷;“成也萧何败萧何”,也是因为这点,如果文件内容太多了,内存会吃不消的。文档中已经提醒注意在“non-blocking”模式下的问题,关于这个问题,不是本节的重点,暂时不讨论。 -- readline:那个可选参数size的含义同上。它则是以行为单位返回字符串,也就是每次读一行,依次循环,如果不限定size,直到最后一个返回的是空字符串,意味着到文件末尾了(EOF)。 -- readlines:size同上。它返回的是以行为单位的列表,即相当于先执行`readline()`,得到每一行,然后把这一行的字符串作为列表中的元素塞到一个列表中,最后将此列表返回。 - -依次演示操作,即可明了。有这样一个文档,名曰:you.md,其内容和基本格式如下: - - You Raise Me Up - When I am down and, oh my soul, so weary; - When troubles come and my heart burdened be; - Then, I am still and wait here in the silence, - Until you come and sit awhile with me. - You raise me up, so I can stand on mountains; - You raise me up, to walk on stormy seas; - I am strong, when I am on your shoulders; - You raise me up: To more than I can be. - -分别用上述三种函数读取这个文件。 - - >>> f = open("you.md") - >>> content = f.read() - >>> content - 'You Raise Me Up\nWhen I am down and, oh my soul, so weary;\nWhen troubles come and my heart burdened be;\nThen, I am still and wait here in the silence,\nUntil you come and sit awhile with me.\nYou raise me up, so I can stand on mountains;\nYou raise me up, to walk on stormy seas;\nI am strong, when I am on your shoulders;\nYou raise me up: To more than I can be.\n' - >>> f.close() - -**提示:养成一个好习惯,**只要打开文件,不用该文件了,就一定要随手关闭它。 - ->注意:在python中,'\n'表示换行,这也是UNIX系统中的规范。但是,在奇葩的windows中,用'\r\n'表示换行。Python在处理这个的时候,会自动将'\r\n'转换为'\n'。 - -请仔细观察,得到的就是一个大大的字符串,但是这个字符串里面包含着一些符号`\n`,因为原文中有换行符。如果用print输出这个字符串,就是这样的了,其中的`\n`起作用了。 - - >>> print content #Python 3: print(content) - You Raise Me Up - When I am down and, oh my soul, so weary; - When troubles come and my heart burdened be; - Then, I am still and wait here in the silence, - Until you come and sit awhile with me. - You raise me up, so I can stand on mountains; - You raise me up, to walk on stormy seas; - I am strong, when I am on your shoulders; - You raise me up: To more than I can be. - -用`readline()`读取,则是这样的: - - >>> f = open("you.md") - >>> f.readline() - 'You Raise Me Up\n' - >>> f.readline() - 'When I am down and, oh my soul, so weary;\n' - >>> f.readline() - 'When troubles come and my heart burdened be;\n' - >>> f.close() - -显示出一行一行读取了,每操作一次`f.readline()`,就读取一行,并且将指针向下移动一行,如此循环。显然,这种是一种循环,或者说可迭代的。因此,就可以用循环语句来完成对全文的读取。 - - #!/usr/bin/env python - # coding=utf-8 - - f = open("you.md") - - while True: - line = f.readline() - if not line: #到EOF,返回空字符串,则终止循环 - break - print line , #Python 3: print(line, end='') - - f.close() #别忘记关闭文件 - -将其和文件"you.md"保存在同一个目录中,我这里命名的文件名是12701.py,然后在该目录中运行`python 12701.py`,就看到下面的效果了: - - ~/Documents$ python 12701.py - You Raise Me Up - When I am down and, oh my soul, so weary; - When troubles come and my heart burdened be; - Then, I am still and wait here in the silence, - Until you come and sit awhile with me. - You raise me up, so I can stand on mountains; - You raise me up, to walk on stormy seas; - I am strong, when I am on your shoulders; - You raise me up: To more than I can be. - -也用`readlines()`来读取此文件: - - >>> f = open("you.md") - >>> content = f.readlines() - >>> content - ['You Raise Me Up\n', 'When I am down and, oh my soul, so weary;\n', 'When troubles come and my heart burdened be;\n', 'Then, I am still and wait here in the silence,\n', 'Until you come and sit awhile with me.\n', 'You raise me up, so I can stand on mountains;\n', 'You raise me up, to walk on stormy seas;\n', 'I am strong, when I am on your shoulders;\n', 'You raise me up: To more than I can be.\n'] - -返回的是一个列表,列表中每个元素都是一个字符串,每个字符串中的内容就是文件的一行文字,含行末的符号。显而易见,它是可以用for来循环的。 - - >>> for line in content: - ... print line , #Python 3: print(line, end='') - ... - You Raise Me Up - When I am down and, oh my soul, so weary; - When troubles come and my heart burdened be; - Then, I am still and wait here in the silence, - Until you come and sit awhile with me. - You raise me up, so I can stand on mountains; - You raise me up, to walk on stormy seas; - I am strong, when I am on your shoulders; - You raise me up: To more than I can be. - >>> f.close() - -##读很大的文件 - -前面已经说明了,如果文件太大,就不能用`read()`或者`readlines()`一次性将全部内容读入内存,可以使用while循环和`readline()`来完成这个任务。 - -此外,还有一个方法:`fileinput`模块 - - >>> import fileinput - >>> for line in fileinput.input("you.md"): - ... print line , #Python 3: print(line, end='') - ... - You Raise Me Up - When I am down and, oh my soul, so weary; - When troubles come and my heart burdened be; - Then, I am still and wait here in the silence, - Until you come and sit awhile with me. - You raise me up, so I can stand on mountains; - You raise me up, to walk on stormy seas; - I am strong, when I am on your shoulders; - You raise me up: To more than I can be. - -我比较喜欢这个,用起来是那么得心应手,简洁明快,还用for。 - -对于这个模块的更多内容,读者可以自己在交互模式下利用`dir()`,`help()`去查看明白。 - -还有一种方法,更为常用: - - >>> for line in f: - ... print line , #Python 3: print(line, end='') - ... - You Raise Me Up - When I am down and, oh my soul, so weary; - When troubles come and my heart burdened be; - Then, I am still and wait here in the silence, - Until you come and sit awhile with me. - You raise me up, so I can stand on mountains; - You raise me up, to walk on stormy seas; - I am strong, when I am on your shoulders; - You raise me up: To more than I can be. - -之所以能够如此,是因为文件是可迭代的对象,直接用for来迭代即可。 - -##seek - -这个函数的功能就是让指针移动。比如: - - >>> f = open("you.md") - >>> f.readline() - 'You Raise Me Up\n' - >>> f.readline() - 'When I am down and, oh my soul, so weary;\n' - -现在来看`seek()`的能力: - - >>> f.seek(0) - -意图是要回到文件的最开头,那么如果用`f.readline()`应该读取第一行。 - - >>> f.readline() - 'You Raise Me Up\n' - -果然如此。此时指针所在的位置,还可以用`tell()`来显示,如 - - >>> f.tell() - 17L - -这不是在低17行。在Python 2中返回的是`17L`,很容易让人产生如此误解。但是在Python 3中返回的是`17`,又可能迷茫,单位是什么呢? - -读者不妨数一数,是按照字符,`'You Raise Me Up\n'`从0开始,到最后,是不是正好为`17`。提醒注意的是,如果你用汉语的等文字,就需要注意编码问题了。请查看本教程有关编码的讨论。 - - >>> f.seek(4) - -`f.seek(4)`就将位置定位到从开头算起的第四个字符后面,也就是"You "之后,字母"R"之前的位置。 - - >>> f.tell() - 4L #Python 3返回:4 - -`tell()`也是这么说的。这时候如果使用`readline()`,得到就是从当前位置开始到行末。 - - >>> f.readline() - 'Raise Me Up\n' - >>> f.close() - -`seek()`还有别的参数,具体如下: - ->seek(...) -> seek(offset[, whence]) -> None. Move to new file position. -> -> Argument offset is a byte count. Optional argument whence defaults to -> 0 (offset from start of file, offset should be >= 0); other values are 1 -> (move relative to current position, positive or negative), and 2 (move -> relative to end of file, usually negative, although many platforms allow -> seeking beyond the end of a file). If the file is opened in text mode, -> only offsets returned by tell() are legal. Use of other offsets causes -> undefined behavior. -> Note that not all file objects are seekable. - -whence的值: - -- 默认值是0,表示从文件开头开始计算指针偏移的量(简称偏移量)。这是offset必须是大于等于0的整数。 -- 是1时,表示从当前位置开始计算偏移量。offset如果是负数,表示从当前位置向前移动,整数表示向后移动。 -- 是2时,表示相对文件末尾移动。 - -前面已经提到了,文件是可迭代的,并且还学过其它可迭代的对象,看来迭代是一个有必要讨论的问题。 - ------- - -[总目录](./index.md)   |   [上节:文件(1)](./126.md)   |   [下节:迭代](./128.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/128.md b/128.md deleted file mode 100644 index ab37d87..0000000 --- a/128.md +++ /dev/null @@ -1,206 +0,0 @@ ->你竟任着刚硬不悔改的心,为自己积蓄忿怒,以致神震怒,显他公义审判的日子来到。他必照各人的行为报应各人。凡恒心行善,寻求荣耀、尊贵和不能朽坏之福的,就以永生报应他们;惟有结党不顺从真理,反顺从不义的,就以忿怒、恼恨报应他们。(ROMANS 2:7-8) - -#迭代 - -Bill正在介绍他的项目,嘴里不断蹦出“loop、iterate、traversal、recursion”这些单词,夹杂在汉语汇总。旁边的小白们,都瞠目结舌,“不明觉厉”,心中的敬佩油然而生, - -其实,Bill不是真正的大牛,我见过真牛的,他们绝对不会这么说的,他们通常总是轻描淡写,不管我认为多么麻烦的,他们都是举重若轻地解决: - -“你就循环一下,然后来个迭代”, - -“最后只要花几分钟写个递归就好了” - -然后再问“这个你懂吗?”。 - -哦,这就是真正牛X的程序员。虽然还是不懂。 - -所以,我们还是老老实实地先搞清楚这些名词再说别的: - -- 循环(loop),指的是在满足条件的情况下,重复执行同一段代码。比如,while语句。 -- 迭代(iterate),指的是按照某种顺序逐个访问列表中的每一项。比如,for语句。 -- 递归(recursion),指的是一个函数不断调用自身的行为。比如,以编程方式输出著名的斐波纳契数列。 -- 遍历(traversal),指的是按照一定的规则访问树形结构中的每个节点,而且每个节点都只访问一次。 - -对于这四个听起来高深莫测的词汇,其实前面,已经涉及到了一个——循环(loop),本节主要介绍一下迭代(iterate),在网上google,就会发现,对于迭代和循环、递归之间的比较的文章不少,分别从不同角度将它们进行了对比。这里暂不比较,先搞明白Python中的迭代。 - -当然,迭代的话题如果要说起来,会很长,本着循序渐进的原则,这里介绍比较初级的。 - -##逐个访问 - -在Python中,访问对象中每个元素,可以这么做:(例如一个list) - - >>> lst = ['q', 'i', 'w', 's', 'i', 'r'] - >>> for i in lst: - ... print i, #Python 3: print(i, end='') - ... - q i w s i r - -除了这种方法,还可以这样: - - >>> lst_iter = iter(lst) #对原来的list实施了一个iter() - >>> lst_iter.next() #Python 3,请用:lst_iter.__next__() - 'q' - >>> lst_iter.next() - 'i' - >>> lst_iter.next() - 'w' - >>> lst_iter.next() - 's' - >>> lst_iter.next() - 'i' - >>> lst_iter.next() - 'r' - >>> lst_iter.next() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - StopIteration - -`iter()`是一个内建函数,其含义是: - - >>> help(iter) - Help on built-in function iter in module builtins: - - iter(...) - iter(iterable) -> iterator - iter(callable, sentinel) -> iterator - - Get an iterator from an object. In the first form, the argument must - supply its own iterator, or be a sequence. - In the second form, the callable is called until it returns the sentinel. - -`iter()`函数返回的是一个迭代器对象。关于迭代器对象,本教程会有专门讲授。 - - >>> type(lst_iter) - <type 'listiterator'> #Python 3: <class 'list_iterator'> - -所有的迭代器对象,在Python 2中有一个`next()`方法,在Python 3中,相应的修改为了`__next__()`。所以使用不同版本,要注意一下这个方法名称的变更。 - -迭代器,当然是可迭代的。本教程已经介绍过如果判断一个对象是否为可迭代对象的方法了。 - -在上面的举例中,`next()`或者`__next__()`就是要获得下一个元素,但是做为一名优秀的程序员,最佳品质就是“懒惰”,当然不能这样一个一个地敲啦,于是就: - - >>> while True: - ... print lst_iter.next() #Python 3: print(lst_iter.__next__()) - ... - Traceback (most recent call last): - File "<stdin>", line 2, in <module> - StopIteration - -先不管错误,再来一遍。 - - >>> lst_iter = iter(lst) - >>> while True: - ... print lst_iter.next() #Python 3: print(lst_iter.__next__()) - ... - q - i - w - s - i - r - Traceback (most recent call last): #读取到最后一个之后,停止循环 - File "<stdin>", line 2, in <module> - StopIteration - -看上面的演示的例子会发现,如果用for来迭代,当到末尾的时候,就自动结束了,不会报错。如果用`next()`或者`__next__()`,当最后一个完成之后,它不会自动结束,还要向下继续,但是后面没有元素了,于是就报一个称之为StopIteration的信息(名叫:停止迭代,这分明是警告)。 - -还要关注迭代器对象的另外一个特点,当对象`lst_iter`被迭代结束,即每个元素都读取了一遍之后,指针就移动到了最后一个元素的后面。如果再访问,指针并没有自动返回到首位置,而是仍然停留在末位置,所以报StopIteration,想要再开始,需要重新载入迭代对象。所以,当我在上面重新进行迭代对象赋值之后,又可以继续了。 - -##文件迭代器 - -现在有一个文件,名称:208.txt,其内容如下: - - Learn python with qiwsir. - There is free python course. - The website is: - http://qiwsir.github.io - Its language is Chinese. - -用迭代器来操作这个文件,我们在前面讲述文件有关知识的时候已经做过了,无非就是: - - >>> f = open("208.txt") - >>> f.readline() #读第一行 - 'Learn python with qiwsir.\n' - >>> f.readline() #读第二行 - 'There is free python course.\n' - >>> f.readline() #读第三行 - 'The website is:\n' - >>> f.readline() #读第四行 - 'http://qiwsir.github.io\n' - >>> f.readline() #读第五行,也就是这真在读完最后一行之后,到了此行的后面 - 'Its language is Chinese.\n' - >>> f.readline() #无内容了,但是不报错,返回空。 - '' - -以上演示的是用readline()一行一行地读。当然,在实际操作中,我们是绝对不能这样做的,一定要让它自动进行,比较常用的方法是: - - >>> for line in f: #这个操作是紧接着上面的操作进行的 - ... print line, #Python 3: print(line) - ... #没有打印出什么东西 - -这段代码之所没有打印出东西来,是因为经过前面的操作,指针已经移到了最后了。这就是迭代的一个特点,要小心指针的位置。 - - >>> f = open("208.txt") #从头再来 - >>> for line in f: - ... print line, #Python 3: print(line,end='') - ... - Learn python with qiwsir. - There is free python course. - The website is: - http://qiwsir.github.io - Its language is Chinese. - -上面过程用`next()`或者`__next__()`也能够读取。 - - >>> f = open("208.txt") - >>> f.next() #Python 3: f.__next__() - 'Learn python with qiwsir.\n' - >>> f.next() - 'There is free python course.\n' - >>> f.next() - 'The website is:\n' - >>> f.next() - 'http://qiwsir.github.io\n' - >>> f.next() - 'Its language is Chinese.\n' - >>> f.next() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - StopIteration - -如果用`next()`或者`__next__()`,就可以直接读取每行的内容。这说明文件是天然的可迭代对象,不需要用iter()转换了。 - -再有,我们用for来实现迭代,在本质上,就是自动调用`next()`或者`__next__()`,只不过这个工作,已经让for偷偷地替我们干了,到这里,列位是不是应该给for取另外一个名字:它叫雷锋。 - -其实,迭代器远远不止上述这么简单,下面我们随便列举一些,在Python中还可以这样得到迭代对象中的元素。 - - >>> list(open('208.txt')) - ['Learn python with qiwsir.\n', 'There is free python course.\n', 'The website is:\n', 'http://qiwsir.github.io\n', 'Its language is Chinese.\n'] - - >>> tuple(open('208.txt')) - ('Learn python with qiwsir.\n', 'There is free python course.\n', 'The website is:\n', 'http://qiwsir.github.io\n', 'Its language is Chinese.\n') - - >>> "$$$".join(open('208.txt')) - 'Learn python with qiwsir.\n$$$There is free python course.\n$$$The website is:\n$$$http://qiwsir.github.io\n$$$Its language is Chinese.\n' - - >>> a,b,c,d,e = open("208.txt") - >>> a - 'Learn python with qiwsir.\n' - >>> b - 'There is free python course.\n' - >>> c - 'The website is:\n' - >>> d - 'http://qiwsir.github.io\n' - >>> e - 'Its language is Chinese.\n' - -上述方式,在编程实践中不一定用得上,只是向读者展示一下,并且要明白,可以这么做,不是非要这么做。 - -最后透露,字典和元组都可以写成类似列表解析式的样式,也可以迭代,读者不妨摸索一下。 - ------- - -[总目录](./index.md)   |   [上节:文件(2)](./127.md)   |   [下节:练习](./129.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/129.md b/129.md deleted file mode 100644 index e2eb7de..0000000 --- a/129.md +++ /dev/null @@ -1,253 +0,0 @@ ->因为世人都犯了罪,亏缺了神的荣耀。如今却蒙神的恩典,因基督耶稣的救赎,就白白的称义。神设立耶稣作挽回祭,是凭着耶稣的血,藉着人的信,要显明神的义。因为他用忍耐的心,宽容人先时所犯的罪。好在今时显明他的义,使人知道自己为义,也称信耶稣的人为义。(ROAMNS 3:23-26) - -#练习 - -有学习者问:“看完你的教程,我可以达到什么水平?” - -我无语。 - -同样小学、中学甚至大学,同班同学读同一本书,天天由同一个老师讲课,为什么有的是学渣、有的是学霸? - -指望读完某本书,就要达到某个水平,是一种懒汉思维。 - -我在本教程的开篇已经说过了,从小工到专家的道路,就普通人来讲,“一万小时”的训练是必不可少的,也就是要做练习。 - -本教程并没有专门提供练习的题目。但并不意味着不需要练习。本节就是一个示例,告诉各位读者,自己找题目做是非常必要的。 - -###练习1 - -**问题描述** - -有一个列表,其中包括10个元素,例如这个列表是[1, 2, 3, 4, 5, 6, 7, 8, 9, 0 ] , 要求将列表中的每个元素一次向前移动一个位置,第一个元素到列表的最后,然后输出这个列表。最终样式是[2,3,4,5,6,7,8,9,0,1] - -**解析** - -或许刚看题目的读者,立刻想到把列表中的第一个元素拿出来,然后追加到最后,不就可以了吗?是的。就是这么简单。主要是练习一下已经学习过的列表操作。 - -看下面代码之前,不妨自己写一写试试。然后再跟我写的对照。 - -**注意,我在这里所写的代码不能算标准答案。只能是参考。很可能你写的比我写的还要好。在代码界,没有标准答案。** - -参考代码如下,这个我保存为12901.py文件 - - #!/usr/bin/env python - # coding=utf-8 - - raw = [1,2,3,4,5,6,7,8,9,0] - print raw #Python 3: print(raw) - - b = raw.pop(0) - raw.append(b) - print raw #Python 3: print(raw) - -执行这个文件: - - $ python 12901.py - [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] - [2, 3, 4, 5, 6, 7, 8, 9, 0, 1] - -第一行所打印的是原来的列表,第二行是需要的列表。这里用到的主要是列表的两个函数`pop()`和`append()`。如果读者感觉不是很熟悉,或者对这个问题,在我提供的参考之前只有一个模糊认识,但是没有明晰地写出代码,说明对前面的函数还没有烂熟于胸。唯一的方法就是多练习。 - -###练习2 - -**问题描述** - -按照下面的要求实现对列表的操作: - -1. 产生一个列表,其中有40个元素,每个元素是0到100的一个随机整数 -2. 如果这个列表中的数据代表着某个班级40人的分数,请计算成绩低于平均分的学生人数,并输出 -3. 对上面的列表元素从大到小排序 - -**解析** - -这个问题中,需要几个知识点: - -第一是随机产生整数。一种方法是你做100个纸片,分别写上1到100的数字(每张上一个整数),然后放到一个盒子里面。抓出一个,看是几,就讲这个数字写到列表中,直到抓出第40个。这样得到的列表是随机了。 - -Python中有一个模块:`random`,专门提供随机事件的。 - - >>> dir(random) - ['BPF', 'LOG4', 'NV_MAGICCONST', 'RECIP_BPF', 'Random', 'SG_MAGICCONST', 'SystemRandom', 'TWOPI', 'WichmannHill', '_BuiltinMethodType', '_MethodType', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_acos', '_ceil', '_cos', '_e', '_exp', '_hashlib', '_hexlify', '_inst', '_log', '_pi', '_random', '_sin', '_sqrt', '_test', '_test_generator', '_urandom', '_warn', 'betavariate', 'choice', 'division', 'expovariate', 'gammavariate', 'gauss', 'getrandbits', 'getstate', 'jumpahead', 'lognormvariate', 'normalvariate', 'paretovariate', 'randint', 'random', 'randrange', 'sample', 'seed', 'setstate', 'shuffle', 'triangular', 'uniform', 'vonmisesvariate', 'weibullvariate'] - -在这个问题中,只需要`random.randint()`,专门获取某个范围内的随机整数。 - -第二是求平均数,方法是将所有数字求和,然后除以总人数(40)。求和方法就是`sum()`函数。在计算平均数的时候,要注意,一般平均数不能仅仅是整数,最好保留一位小数吧。这是除法中的知识了。 - -第三是列表排序。 - -下面就依次展开。不忙,在我开始之前,你先试试吧。 - - #!/usr/bin/env python - # coding=utf-8 - - from __future__ import division #Python 3不需要这行引入模块的操作 - import random - - score = [random.randint(0,100) for i in range(40)] #0到100之间,随机得到40个整数,组成列表 - print score #Python 3: print(score) - - num = len(score) - sum_score = sum(score) #对列表中的整数求和 - ave_num = sum_score/num #计算平均数 - less_ave = len([i for i in score if i<ave_num]) #将小于平均数的找出来,组成新的列表,并度量该列表的长度 - print "the average score is:{:.1f}".format(ave_num) - #Python 3: print("the average score is:{:.1f}".format(ave_num)) - print "There are {}students less than average.".format(less_ave) - #Python 3: print("There are {} students less than average.".format(less_ave)) - - sorted_score = sorted(score, reverse=True) #对原列表排序 - print sorted_score #Python 3: print(sorted_score) - -###练习3 - -**问题描述** - -如果将一句话作为一个字符串,那么这个字符串中必然会有空格(这里仅讨论英文),比如"How are you.",但有的时候,会在两个单词之间多打一个空格。现在的任务是,如果一个字符串中有连续的两个空格,请把它删除。 - -**解析** - -对于一个字符串中有空格,可以使用[《字符串(4)》](./109.md)中提到的`strip()`等。但是,它不是仅仅去掉一个空格,而是把字符串两边的空格都去掉。都去掉似乎也没有什么关系,再用空格把单词拼起来就好了。 - -按照这个思路,我这样写代码,供你参考(更建议你先写出一段来,然后我们两个对照)。 - - #!/usr/bin/env python - # coding=utf-8 - - string = "I love code." #在code前面有两个空格,应该删除一个 - print string #为了能够清楚看到每步的结果,把过程中的量打印出来 - #Python 3: print(string) - - str_lst = string.split(" ") #以空格为分割,得到词汇的列表 - print str_lst #Python 3: print(str_lst) - - words = [s.strip() for s in str_lst] #去除单词两边的空格 - print words #Python 3: print(words) - - new_string = " ".join(words) #以空格为连接符,将单词链接起来 - print new_string #Python 3: print(new_string) - -保存之后,运行这个代码,结果是: - - I love code. - ['I', 'love', '', 'code.'] - ['I', 'love', '', 'code.'] - I love code. - -结果是令人失望的。经过一番折腾,空格根本就没有被消除。最后的输出和一开始的字符串完全一样。泪奔! - -查找原因。 - -从输出中已经清楚表示了。当执行`string.split(" ")`的时候,是以空格为分割符,将字符串分割,并返回列表。列表中元素是由单词组成。原来字符串中单词之间的空格已经被作为分隔符,那么列表中单词两边就没有空格了。所以,前面代码中就无需在用`strip()`去删除空格。另外,特别要注意的是,有两个空格连着呢,其中一个空格作为分隔符,另外一个空格就作为列表元素被返回了。这样一来,分割之后的操作都无作用了。 - -看官是否明白错误原因了? - -如何修改?显然是分割之后,不能用`strip()`,而是要想办法把那个返回列表中的空格去掉,得到只含有单词的列表。再用空格连接之,就应该对了。所以,我这样修正它。 - - #!/usr/bin/env python - # coding=utf-8 - - string = "I love code." - print string #Python 3: print(string),以下类似操作都这样处理,不再重复。 - - str_lst = string.split(" ") - print str_lst - - words = [s for s in str_lst if s!=""] #利用列表解析,将空格检出 - print words - - new_string = " ".join(words) - print new_string - -将文件保存,名为12903.py,运行之得到下面结果: - - I love code. - ['I', 'love', '', 'code.'] - ['I', 'love', 'code.'] - I love code. - -OK!完美地解决了问题,去除了code前面的一个空格。 - -###练习4 - -**问题描述** - -根据高德纳(Donald Ervin Knuth)的《计算机程序设计艺术》(The Art of Computer Programming),1150年印度数学家Gopala和金月在研究箱子包装物件长宽刚好为1和2的可行方法数目时,首先描述这个数列。在西方,最先研究这个数列的人是比萨的列奥那多(意大利人斐波那契Leonardo Fibonacci),他描述兔子生长的数目时用上了这数列。 - -第一个月初有一对刚诞生的兔子 -第二个月之后(第三个月初)它们可以生育 -每月每对可生育的兔子会诞生下一对新兔子 -兔子永不死去 -假设在n月有兔子总共a对,n+1月总共有b对。在n+2月必定总共有a+b对:因为在n+2月的时候,前一月(n+1月)的b对兔子可以存留至第n+2月(在当月属于新诞生的兔子尚不能生育)。而新生育出的兔子对数等于所有在n月就已存在的a对 - -上面故事是一个著名的数列——斐波那契数列——的起源。斐波那契数列用数学方式表示就是: - - a[0] = 0 (n=0) - a[1] = 1 (n=1) - a[n] = a[n-1] + a[n-2] (n>=2) - -我们要做的事情是用程序计算出n=100时的值。 - -在解决这个问题之前,你可以先观看一个[关于斐波那契数列数列的视频](http://swf.ws.126.net/openplayer/v02/-0-2_M9HKRT25D_M9HNA0UNO-vimg1_ws_126_net//image/snapshot_movie/2014/1/6/L/M9HNA8H6L-.swf),注意,请在墙内欣赏。 - -**解析** - -斐波那契数列是各种编程语言中都要秀一下的东西,通常用在阐述“递归”中。什么是递归?后面会介绍。 - -其实,如果用递归来写,会更容易明白。但是,这里我给出一个用for循环写的,看看是否能够理解之。 - - #!/usr/bin/env python - # coding=utf-8 - - a, b = 0, 1 - - for i in range(4): #改变这里的数,就能得到相应项的结果 - a, b = b, a+b - - print a - -保存运行之,看看结果和你推算的是否一致。 - -###练习5 - -**问题描述** - -在数学中,用n!来表示阶乘。例如,4!=1×2×3×4=24。如果将n个物体排列,有多少种排列方式,那就是n!。根据定义,0!=1。 - -**解析** - -下面用Python程序来计算阶乘。 - - #!/usr/bin/env python - # coding=utf-8 - - n = int(raw_input("Enter an interger >=0: ")) - - fact = 1 - - for i in range(2, n + 1): - fact = fact * i - - print str(n) + " factorial is " + str(fact) - -这是用for循环来实现的,当然,你也可以使用while循环来计算阶乘。其代码如下: - - #!/usr/bin/env python - # coding=utf-8 - - n = int(raw_input('Enter an integer >= 0: ')) - - fact = 1 - i = 2 - while i<=n: - fact = fact * i - i += 1 - - print str(n) + " factorial is " + str(fact) - -在计算阶乘的时候,如果你输入比较大的整数,也没有问题,因为Python对整数的最大取值没有限制,所以,即时遇到大整数,也可放心使用。 - ------- - -[总目录](./index.md)   |   [上节:迭代](./128.md)   |   [下节:自省](./130.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,微信号:***qiwsir*不胜感激。 diff --git a/130.md b/130.md deleted file mode 100644 index bba0276..0000000 --- a/130.md +++ /dev/null @@ -1,370 +0,0 @@ ->我们既因信称义,就藉着我们的主耶稣基督,得与神相和。我们又藉着他,因信得进入现在所站的这恩典中,并且欢欢喜喜盼望神的荣耀。不但如此,就是在患难中,也是欢欢喜喜的,因为知道患难生忍耐。忍耐生老练,老练生盼望。盼望不至于羞耻,因为所赐给我们的圣灵,将神的爱浇灌在我们心里。(ROMANS 5:1-5) - -#自省 - -特别说明,这一讲的内容不是我写的,是我从[《Python自省指南》](http://www.ibm.com/developerworks/cn/linux/l-pyint/#ibm-pcon)抄录过来的,当然,为了适合本教程,我在某些地方做了修改或者重写。 - -本节内容,并不是本教程的必须部分,放到这里,是让学习者对如何应用Python的“自省”机制实现自学,有一些了解罢了。 - -##什么是自省? - -在日常生活中,自省(introspection)是一种自我检查行为。自省是指对某人自身思想、情绪、动机和行为的检查。伟大的哲学家苏格拉底将生命中的大部分时间用于自我检查,并鼓励他的雅典朋友们也这样做。他甚至对自己作出了这样的要求:“未经自省的生命不值得存在。”无独有偶,在中国《论语》中,也有这样的名言:“吾日三省吾身”。显然,自省对个人成长多么重要呀。 - -在计算机编程中,自省是指这种能力:检查某些事物以确定它是什么、它知道什么以及它能做什么。自省向程序员提供了极大的灵活性和控制力。一旦您使用了支持自省的编程语言,就会产生类似这样的感觉:“未经检查的对象不值得实例化。” - -整个 Python 语言对自省提供了深入而广泛的支持。实际上,很难想象假如 Python语言没有其自省特性是什么样子。 - -学完这节,你就能够轻松洞察到 Python 对象的“灵魂”。 - -在深入研究更高级的技术之前,我们尽可能用最普通的方式来研究 Python自省。有些读者甚至可能会争论说:我们开始时所讨论的特性不应称之为“自省”。我们必须承认,它们是否属于自省的范畴还有待讨论。但从本节的意图出发,我们所关心的只是找出有趣问题的答案。 - -现在让我们以交互方式使用 Python 来开始研究。这是前面已经在使用的一种方式。 - -##联机帮助 - -在交互模式下,用help向python请求帮助。 - - >>> help() - - Welcome to Python 2.7! This is the online help utility. - - If this is your first time using Python, you should definitely check out - the tutorial on the Internet at http://docs.python.org/2.7/tutorial/. - - Enter the name of any module, keyword, or topic to get help on writing - Python programs and using Python modules. To quit this help utility and - return to the interpreter, just type "quit". - - To get a list of available modules, keywords, or topics, type "modules", - "keywords", or "topics". Each module also comes with a one-line summary - of what it does; to list the modules whose summaries contain a given word - such as "spam", type "modules spam". - - help> - -这时候就进入了联机帮助状态,根据提示输入`keywords` - - help> keywords - - Here is a list of the Python keywords. Enter any keyword to get more help. - - and elif if print - as else import raise - assert except in return - break exec is try - class finally lambda while - continue for not with - def from or yield - del global pass - -现在显示出了python关键词的列表。依照说明亦步亦趋,输入每个关键词,就能看到那个关键词的相关文档。这里就不展示输入的结果了。读者可以自行尝试。要记住,如果从文档说明界面返回到帮助界面,需要按`q`键。 - -这样,我们能够得到联机帮助。从联机帮助状态退回到python的交互模式,使用`quit`命令。 - - help> quit - - You are now leaving help and returning to the Python interpreter. - If you want to ask for help on a particular object directly from the - interpreter, you can type "help(object)". Executing "help('string')" - has the same effect as typing a particular string at the help> prompt. - >>> - -联机帮助实用程序会显示关于各种主题或特定对象的信息。 - -帮助实用程序很有用,并确实利用了 Python的自省能力。但仅仅使用帮助不会揭示帮助是如何获得其信息的。而且,因为我们的目的是揭示 Python 自省的所有秘密,所以我们必须迅速地跳出对帮助实用程序的讨论。 - -在结束关于帮助的讨论之前,让我们用它来获得一个可用模块的列表。 - -模块只是包含 Python 代码的文本文件,其名称后缀是 .py ,关于模块,本教程会在后面有专门的讲解。如果在 Python 提示符下输入 help('modules') ,或在 help 提示符下输入 modules,则会看到一长列可用模块,类似于下面所示的部分列表。自己尝试它以观察您的系统中有哪些可用模块,并了解为什么会认为 Python 是“自带电池”的(自带电池,这是一个比喻,就是说python在被安装时,就带了很多模块,这些模块是你以后开发中会用到的,比喻成电池,好比开发的助力工具),或者说是python一被安装,就已经包含有的模块,不用我们费力再安装了。 - - >>> help("modules") - - Please wait a moment while I gather a list of all available modules... - ANSI _threading_local gnomekeyring repr - BaseHTTPServer _warnings gobject requests - MySQLdb chardet lsb_release sre_parse - ......(此处省略一些) - PyQt4 codeop markupbase stringprep - Queue collections marshal strop - ScrolledText colorama math struct - ......(省略其它的模块) - Enter any module name to get more help. Or, type "modules spam" to search - for modules whose descriptions contain the word "spam". - -因为太多,无法全部显示。你可以仔细观察一下,是不是有我们前面已经用过的那个`math`、`random`模块呢? - -如果是在python交互模式`>>>`下,比如要得到有关math模块的更多帮助,可以输入`>>> help("math")`,如果是在帮助模式`help>`下,直接输入`>math`就能得到关于math模块的详细信息。简直太贴心了。 - -##dir() - -尽管查找和导入模块相对容易,但要记住每个模块包含什么却不是这么简单。你或许并不希望总是必须查看源代码来找出答案。幸运的是,Python 提供了一种方法,可以使用内置的 dir() 函数来检查模块(以及其它对象)的内容。 - -其实,这个东西我们已经一直在使用。 - -dir() 函数可能是 Python 自省机制中最著名的部分了。它返回传递给它的任何对象的属性名称经过排序的列表。如果不指定对象,则 dir() 返回当前作用域中(这里冒出来一个新名词:“作用域”,暂且不用管它,后面会详解,你就姑且理解为某个范围吧)的名称。让我们将 dir() 函数应用于 keyword 模块,并观察它揭示了什么: - - >>> import keyword - >>> dir(keyword) - ['__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'iskeyword', 'kwlist', 'main'] - -如果不带任何参数,则 dir() 返回当前作用域中的名称。请注意,因为我们先前导入了 keyword ,所以它们出现在列表中。导入模块将把该模块的名称添加到当前作用域: - - >>> dir() - ['GFileDescriptorBased', 'GInitiallyUnowned', 'GPollableInputStream', 'GPollableOutputStream', '__builtins__', '__doc__', '__name__', '__package__', 'keyword'] - >>> import math - >>> dir() - ['GFileDescriptorBased', 'GInitiallyUnowned', 'GPollableInputStream', 'GPollableOutputStream', '__builtins__', '__doc__', '__name__', '__package__', 'keyword', 'math'] - -dir() 函数是内置函数,这意味着我们不必为了使用该函数而导入模块。不必做任何操作,Python就可识别内置函数。 - -再观察,看到调用 dir() 后返回了这个名称 `__builtins__` 。也许此处有连接。让我们在 Python 提示符下输入名称 `__builtins__` ,并观察 Python 是否会告诉我们关于它的任何有趣的事情: - - >>> __builtins__ - <module '__builtin__' (built-in)> - -因此 `__builtins__` 看起来象是当前作用域中绑定到名为 `__builtin__` 的模块对象的名称。(因为模块不是只有多个单一值的简单对象,所以 Python 改在尖括号中显示关于模块的信息。) - -注:如果您在磁盘上寻找 `__builtin__.py` 文件,将空手而归。这个特殊的模块对象是 Python 解释器凭空创建的,因为它包含着解释器始终可用的项。尽管看不到物理文件,但我们仍可以将 dir() 函数应用于这个对象,以观察所有内置函数、错误对象以及它所包含的几个杂项属性。 - - >>> dir(__builtins__) - ['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BufferError', 'BytesWarning', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'NameError', 'None', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'ReferenceError', 'RuntimeError', 'RuntimeWarning', 'StandardError', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'ZeroDivisionError', '_', '__debug__', '__doc__', '__import__', '__name__', '__package__', 'abs', 'all', 'any', 'apply', 'ascii', 'basestring', 'bin', 'bool', 'buffer', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'cmp', 'coerce', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'execfile', 'exit', 'file', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'intern', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'long', 'map', 'max', 'memoryview', 'min', 'next', 'ngettext', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'raw_input', 'reduce', 'reload', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'unichr', 'unicode', 'vars', 'xrange', 'zip'] - -dir() 函数适用于所有对象类型,包括字符串、整数、列表、元组、字典、函数、定制类、类实例和类方法(不理解的对象类型,会在随后的教程中讲解)。例如将 dir() 应用于字符串对象,如您所见,即使简单的 Python 字符串也有许多属性(这是前面已经知道的了,权当复习) - - >>> dir("You raise me up") - ['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill'] - -读者可以尝试一下其它的对象类型,观察返回结果,如:`dir(42)`,`dir([])`,`dir(())`,dir({})`,`dir(dir)`。 - -##文档字符串 - -在许多 dir() 示例中,您可能会注意到的一个属性是 `__doc__` 属性。这个属性是一个字符串,它包含了描述对象的注释。Python 称之为文档字符串或docstring(这个内容,会在下一部分中讲解如何自定义设置)。 - -如果模块、类、方法或函数定义的第一条语句是字符串,那么该字符串会作为对象的 `__doc__` 属性与该对象关联起来。例如,看一下str类型对象的文档字符串。因为文档字符串通常包含嵌入的换行 \n ,我们将使用 Python 的 print 语句,以便输出更易于阅读: - - >>> print str.__doc__ - str(object='') -> string - - Return a nice string representation of the object. - If the argument is a string, the return value is the same object. - -##检查python对象 - -前面已经好几次提到了“对象(object)”这个词,但一直没有真正定义它。编程环境中的对象很像现实世界中的对象。实际的对象有一定的形状、大小、重量和其它特征。实际的对象还能够对其环境进行响应、与其它对象交互或执行任务。计算机中的对象试图模拟我们身边现实世界中的对象,包括文档、日程表和业务过程这样的抽象对象。 - -其实,我总觉得把object翻译成对象,让人感觉很没有具象的感觉,因为在汉语里面,对象是一个很笼统的词汇。另外一种翻译,流行于台湾,把它称为“物件”,倒是挺不错的理解。当然,名词就不纠缠了,关键是理解内涵。关于面向对象编程,可以阅读维基百科的介绍——[面向对象程序设计](http://zh.wikipedia.org/zh/%E9%9D%A2%E5%90%91%E5%AF%B9%E8%B1%A1%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1#.E7.89.A9.E4.BB.B6.E5.B0.8E.E5.90.91.E7.9A.84.E8.AF.AD.E8.A8.80)——先了解大概。 - -类似于实际的对象,几个计算机对象可能共享共同的特征,同时保持它们自己相对较小的变异特征。想一想您在书店中看到的书籍。书籍的每个物理副本都可能有污迹、几张破损的书页或唯一的标识号。尽管每本书都是唯一的对象,但都拥有相同标题的每本书都只是原始模板的实例,并保留了原始模板的大多数特征。 - -对于面向对象的类和类实例也是如此。例如,可以看到每个Python符串都被赋予了一些属性, dir()函数揭示了这些属性。 - -于是在计算机术语中,对象是拥有标识和值的事物,属于特定类型、具有特定特征和以特定方式执行操作。并且,对象从一个或多个父类继承了它们的许多属性。除了关键字和特殊符号(像运算符,如 + 、 - 、 * 、 ** 、 / 、 % 、 < 、 > 等)外,Python 中的所有东西都是对象。Python具有一组丰富的对象类型:字符串、整数、浮点、列表、元组、字典、函数、类、类实例、模块、文件等。 - -当您有一个任意的对象(也许是一个作为参数传递给函数的对象)时,可能希望知道一些关于该对象的情况。如希望python告诉我们: - -- 对象的名称是什么? -- 这是哪种类型的对象? -- 对象知道些什么? -- 对象能做些什么? -- 对象的父对象是谁? - -###名称 - -并非所有对象都有名称,但那些有名称的对象都将名称存储在其 `__name__` 属性中。注:名称是从对象而不是引用该对象的变量中派生的。 - - >>> dir() #dir()函数 - ['__builtins__', '__doc__', '__name__', '__package__', 'keyword', 'math'] - >>> directory = dir #新变量 - >>> directory() #跟dir()一样的结果 - ['__builtins__', '__doc__', '__name__', '__package__', 'directory', 'keyword', 'math'] - >>> dir.__name__ #dir()的名字 - 'dir' - >>> directory.__name__ - 'dir' - - >>> __name__ #这是不一样的 - '__main__' - -模块拥有名称,Python 解释器本身被认为是顶级模块或主模块。当以交互的方式运行 Python 时,局部 `__name__` 变量被赋予值 `'__main__'` 。同样地,当从命令行执行 Python 模块,而不是将其导入另一个模块时,其 `__name__` 属性被赋予值 `'__main__'` ,而不是该模块的实际名称。这样,模块可以查看其自身的 `__name__` 值来自行确定它们自己正被如何使用,是作为另一个程序的支持,还是作为从命令行执行的主应用程序。因此,下面这条惯用的语句在 Python 模块中是很常见的: - - if __name__ == '__main__': - # Do something appropriate here, like calling a - # main() function defined elsewhere in this module. - main() - else: - # Do nothing. This module has been imported by another - # module that wants to make use of the functions, - # classes and other useful bits it has defined. - -###类型 - -type() 函数有助于我们确定对象是字符串还是整数,或是其它类型的对象。它通过返回类型对象来做到这一点,可以将这个类型对象与 types 模块中定义的类型相比较: - - >>> import types - >>> print types.__doc__ - Define names for all type symbols known in the standard interpreter. - - Types that are part of optional modules (e.g. array) are not listed. - - >>> dir(types) - ['BooleanType', 'BufferType', 'BuiltinFunctionType', 'BuiltinMethodType', 'ClassType', 'CodeType', 'ComplexType', 'DictProxyType', 'DictType', 'DictionaryType', 'EllipsisType', 'FileType', 'FloatType', 'FrameType', 'FunctionType', 'GeneratorType', 'GetSetDescriptorType', 'InstanceType', 'IntType', 'LambdaType', 'ListType', 'LongType', 'MemberDescriptorType', 'MethodType', 'ModuleType', 'NoneType', 'NotImplementedType', 'ObjectType', 'SliceType', 'StringType', 'StringTypes', 'TracebackType', 'TupleType', 'TypeType', 'UnboundMethodType', 'UnicodeType', 'XRangeType', '__builtins__', '__doc__', '__file__', '__name__', '__package__'] - >>> p = "I love Python" - >>> type(p) - <type 'str'> - >>> if type(p) is types.StringType: - ... print "p is a string" - ... - p is a string - >>> type(42) - <type 'int'> - >>> type([]) - <type 'list'> - >>> type({}) - <type 'dict'> - >>> type(dir) - <type 'builtin_function_or_method'> - -###标识 - -先前说过,每个对象都有标识、类型和值。值得注意的是,可能有多个变量引用同一对象,同样地,变量可以引用看起来相似(有相同的类型和值),但拥有截然不同标识的多个对象。当更改对象时(如将某一项添加到列表),这种关于对象标识的概念尤其重要,如在下面的示例中, blist 和 clist 变量引用同一个列表对象。正如您在示例中所见, id() 函数给任何给定对象返回唯一的标识符。其实,这个东东我们也在前面已经使用过了。在这里再次提出,能够让你理解上有提升吧。 - - >>> print id.__doc__ - id(object) -> integer - - Return the identity of an object. This is guaranteed to be unique among - simultaneously existing objects. (Hint: it's the object's memory address.) - >>> alist = [1,2,3] - >>> blist = [1,2,3] - >>> clist = blist - >>> id(alist) - 2979691052L - >>> id(blist) - 2993911916L - >>> id(clist) - 2993911916L - >>> alist is blist - False - >>> blist is clist - True - >>> clist.append(4) - >>> clist - [1, 2, 3, 4] - >>> blist - [1, 2, 3, 4] - >>> alist - [1, 2, 3] - -如果对上面的操作还有疑惑,可以回到前面复习有关深拷贝和浅拷贝的知识。 - -###属性 - -对象拥有属性,并且`dir()`函数会返回这些属性的列表。但是,有时我们只想测试一个或多个属性是否存在。如果对象具有我们正在考虑的属性,那么通常希望只检索该属性。这个任务可以由 hasattr() 和 getattr() 函数来完成. - - >>> print hasattr.__doc__ - hasattr(object, name) -> bool - - Return whether the object has an attribute with the given name. - (This is done by calling getattr(object, name) and catching exceptions.) - - >>> print getattr.__doc__ - getattr(object, name[, default]) -> value - - Get a named attribute from an object; getattr(x, 'y') is equivalent to x.y. - When a default argument is given, it is returned when the attribute doesn't - exist; without it, an exception is raised in that case. - >>> - >>> hasattr(id, '__doc__') - True - - >>> print getattr(id, '__doc__') - id(object) -> integer - - Return the identity of an object. This is guaranteed to be unique among - simultaneously existing objects. (Hint: it's the object's memory address.) - -###可调用 - -可以调用表示潜在行为(函数和方法)的对象。可以用 callable() 函数测试对象的可调用性: - - >>> print callable.__doc__ - callable(object) -> bool - - Return whether the object is callable (i.e., some kind of function). - Note that classes are callable, as are instances with a __call__() method. - >>> callable("a string") - False - >>> callable(dir) - True - -###实例 - -这个名词还很陌生,没关系,先看看,混个脸熟,以后会经常用到。 - -在 type() 函数提供对象的类型时,还可以使用 isinstance() 函数测试对象,以确定它是否是某个特定类型或定制类的实例: - - >>> print isinstance.__doc__ - isinstance(object, class-or-type-or-tuple) -> bool - - Return whether an object is an instance of a class or of a subclass thereof. - With a type as second argument, return whether that is the object's type. - The form using a tuple, isinstance(x, (A, B, ...)), is a shortcut for - isinstance(x, A) or isinstance(x, B) or ... (etc.). - >>> isinstance(42, str) - False - >>> isinstance("python", str) - True - -###子类 - -关于类的问题,有一个“继承”概念,有继承就有父子问题,这是在现实生活中很正常的,在编程语言中也是如此。虽然这是后面要说的,但是,为了本讲内容的完整,也姑且把这个内容放在这里。读者可以不看,留着以后看也行。我更建议还是阅读一下,有个印象。 - -在类这一级别,可以根据一个类来定义另一个类,同样地,这个新类会按照层次化的方式继承属性。Python 甚至支持多重继承,多重继承意味着可以用多个父类来定义一个类,这个新类继承了多个父类。 issubclass() 函数使我们可以查看一个类是不是继承了另一个类: - - >>> print issubclass.__doc__ - issubclass(C, B) -> Boolean - Return whether class C is a subclass (i.e., a derived class) of class B. - >>> class SuperHero(Person): # SuperHero inherits from Person... - ... def intro(self): # but with a new SuperHero intro - ... """Return an introduction.""" - ... return "Hello, I'm SuperHero %s and I'm %s." % (self.name, self.age) - ... - >>> issubclass(SuperHero, Person) - 1 - >>> issubclass(Person, SuperHero) - 0 - -##python文档 - -文档,这个词语在经常在程序员的嘴里冒出来,有时候他们还经常以文档有没有或者全不全为标准来衡量一个软件项目是否高大上。那么,软件中的文档是什么呢?有什么要求呢?python文档又是什么呢?文档有什么用呢? - -文档很重要。独孤九剑的剑诀、易筋经的心法、写着辟邪剑谱的袈裟,这些都是文档。连那些大牛人都要这些文档,更何况我们呢?所以,文档是很重要的。 - -文档,说白了就是用word(这个最多了)等(注意这里的等,把不常用的工具都等掉了,包括我编辑文本时用的vim工具)文本编写工具写成的包含文本内容但不限于文字的文件。有点啰嗦,啰嗦的目的是为了严谨,呵呵。最好还是来一个更让人信服的定义,当然是来自维基百科。 - ->软件文档或者源代码文档是指与软件系统及其软件工程过程有关联的文本实体。文档的类型包括软件需求文档,设计文档,测试文档,用户手册等。其中的需求文档,设计文档和测试文档一般是在软件开发过程中由开发者写就的,而用户手册等非过程类文档是由专门的非技术类写作人员写就的。 - ->早期的软件文档主要指的是用户手册,根据Barker的定义,文档是用来对软件系统界面元素的设计、规划和实现过程的记录,以此来增强系统的可用性。而Forward则认为软件文档是被软件工程师之间用作沟通交流的一种方式,沟通的信息主要是有关所开发的软件系统。Parnas则强调文档的权威性,他认为文档应该提供对软件系统的精确描述。 - ->综上,我们可以将软件文档定义为: - -1.文档是一种对软件系统的书面描述; -2.文档应当精确地描述软件系统; -3.软件文档是软件工程师之间用作沟通交流的一种方式; -4.文档的类型有很多种,包括软件需求文档,设计文档,测试文档,用户手册等; -5.文档的呈现方式有很多种,可以是传统的书面文字形式或图表形式,也可是动态的网页形式 - -那么这里说的Python文档指的是什么呢?一个方面就是每个学习者要学习python,python的开发者们(他们都是大牛)给我们这些小白提供了什么东西没有?能够让我们给他们这些大牛沟通,理解python中每个函数、指令等的含义和用法呢? - -有。大牛就是大牛,他们准备了,而且还不止一个。 - -真诚的敬告所有看本教程的诸位,要想获得编程上的升华,看文档是必须的。文档胜过了所有的教程和所有的老师以及所有的大牛。为什么呢?其中原因,都要等待看官看懂了之后,有了体会感悟之后才能明白。 - -python文档的网址:[https://docs.python.org/2/](https://docs.python.org/2/),这是python2.x,从这里也可以找到python3.x的文档。 - -当然,除了看官方文档之外,自己写的东西也可以写上文档。这个先不要着急,我们会在后续的学习中看到。 - ------- - -[总目录](./index.md)   |   [上节:练习](./129.md)   |   [下节:函数(1)](./201.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/201.md b/201.md deleted file mode 100644 index 86a9aee..0000000 --- a/201.md +++ /dev/null @@ -1,363 +0,0 @@ ->谁能使我们与基督的爱隔绝呢?难道是患难么,是困苦么,是逼迫么,是饥饿么,是赤身露体么,是危险么,是刀剑么。 ->然而靠着爱我们的主,在这一切的事上,已经得胜有余了。因为我深信无论是死、是生、是天使、是掌权的,是有能的,是现在的事,是将来的事,是高处的,是低处的,是别的受造之物,都不能叫我们与神的爱隔绝。这爱是在我们的主基督耶稣里的。(ROMANS 8:35,37-39) - -#函数(1) - -函数,对于人类来讲,能够发展到这个数学思维层次,是一个飞跃。可以说,它的提出,直接加快了现代科技和社会的发展,不论是现代的任何科技门类,乃至于经济学、政治学、社会学等,都已经普遍使用函数。 - -下面一段来自维基百科(在本教程中,大量的定义来自维基百科,因为它真的很百科):[函数词条](http://zh.wikipedia.org/zh/%E5%87%BD%E6%95%B0) - ->函数这个数学名词是莱布尼兹在1694年开始使用的,以描述曲线的一个相关量,如曲线的斜率或者曲线上的某一点。莱布尼兹所指的函数现在被称作可导函数,数学家之外的普通人一般接触到的函数即属此类。对于可导函数可以讨论它的极限和导数。此两者描述了函数输出值的变化同输入值变化的关系,是微积分学的基础。 - ->中文的“函数”一词由清朝数学家李善兰译出。其《代数学》书中解释:“凡此變數中函(包含)彼變數者,則此為彼之函數”。 - -函数,从简单到复杂,各式各样。前面提供的维基百科中的函数词条,里面可以做一个概览。但不管什么样子的函数,都可以用下图概括: - -![](./2images/20101.png) - -##理解函数 - -在中学数学中,可以用这样的方式定义函数:y=4x+3,这就是一个一次函数,当然,也可以写成:f(x)=4x+3。其中x是变量,它可以代表任何数。 - - 当x=2时,代入到上面的函数表达式: - f(2) = 4*2+3 = 11 - 所以:f(2) = 11 - -但是,这并不是函数的全部,在函数中,其实变量并没有规定只能是一个数,它可以是馒头、还可是苹果,不知道读者是否对函数有这个层次的理解。请继续阅读即更深刻 - -###变量不仅仅是数 - -变量`x`只能是任意数吗? - -其实,一个函数,就是一个对应关系。 - -读者尝试着将上面表达式的`x`理解为馅饼,`4x+3`就是4个馅饼在加上3(一般来讲,单位是统一的,但你非让它不统一,也无妨),这个结果对应着另外一个东西,那个东西比如说是iphone。或者说可以理解为4个馅饼加3就对应一个iphone。这就是所谓映射关系。 - -所以,x,不仅仅是数,可以是你认为的任何东西。 - -**变量本质——占位符。** - -函数中为什么变量用x?这是一个有趣的问题,自己google一下,看能不能找到答案。很巧,在“知乎”上还真有人询问[这个问题](http://www.zhihu.com/question/20112835),可以阅读。 - -我也不清楚原因。不过,我清楚地知道,变量可以用x,也可以用别的符号,比如y,z,k,i,j...,甚至用alpha,beta这样的字母组合也可以。 - -**变量在本质上就是一个占位符。**这是一针见血的理解。 - -什么是占位符?就是先把那个位置用变量占上,表示这里有一个东西,至于这个位置放什么东西,以后再说,反正先用一个符号占着这个位置(占位符)。 - -其实在高级语言编程中,变量比我们在初中数学中学习的要复杂。但是,先不管那些,复杂东西放在以后再说了。现在,就按照初中数学的水平来研究Python中的变量。 - -通常使小写字母来命名Python中的变量,也可以是用下划线连接的多个单词。比如:alpha,x,j,p_beta,这些都可以做为Python的变量。 - -下面按照纯粹数学的方式,在Python中建立函数。 - - >>> a = 2 - >>> y = 3 * a + 2 - >>> y - 8 - -这种方式建立的函数,跟在初中数学中学习的没有什么区别。在纯粹数学中,也常这么用。这种方式在Python中还有效吗? - -既然在上面已经建立了一个函数,那么我就改变变量a的值,看看得到什么结果。 - - >>> a = 3 - >>> y - 8 - -是不是很奇怪?为什么后面已经让a等于3了,结果y还是8。 - -还记得前面已经学习过的关于“变量赋值”的原理吗?`a=2`的含义是将2这个对象贴上了变量a标签,经过计算,得到了8,之后变量y引用了对象8。当变量a引用的对象修改为3的时候,但是y引用的对象还没有变,所以,还是8。再计算一次,y的连接对象就变了: - - >>> a = 3 - >>> y - 8 - >>> y = 3 * a + 2 - >>> y - 11 - -特别注意,如果没有先 `a = 2` ,就直接下函数表达式了,像这样,就会报错。 - - >>> y = 3 * a + 2 - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name 'a' is not defined - -注意看错误提示,`a`是一个变量,提示中告诉我们这个变量没有定义。显然,如果函数中要使用某个变量,不得不提前定义出来。定义方法就是给这个变量赋值——这跟纯粹数学有所区别了。 - -用纯粹数学的方式建立函数,对Python不适用,如果非要找个根由,我想可能是“=”造成的,这个符号在数学中是等号,但是在Python中,包括所有的高级编程语言中,是“赋值”。这是我的肤浅理解。更深层的缘由,还在于计算机处理数据的原理与人不同。所以,要有一种新的定义函数的方式 - -##定义函数 - -在Python中,规定了一种定义函数的格式,下面的举例就是一个函数,以这个函数为例来说明定义函数的格式和调用函数的方法。 - - #!/usr/bin/env python - #coding:utf-8 - - def add_function(a, b): - c = a + b - return c - - if __name__ == "__main__": - result = add_function(2, 3) - print result #python3: print(result) - -然后将文件保存,我把她命名为20101.py,你根据自己的喜好取个名字。 - -然后我就进入到那个文件夹,运行这个文件,出现下面的结果,如图: - -![](./2images/20102.png) - -你运行的结果是什么?如果没有得到上面的结果,你就非常认真地检查代码,是否跟我写的完全一样,注意,包括冒号和空格,都得一样。**冒号和空格很重要。** - -下面开始庖丁解牛: - -- `def`: 这里是函数的开始。在声明要建立一个函数的时候,一定要使用def(def 就是英文define的前三个字母),意思就是告知计算机,这里要声明一个函数。`def`做在那一行,包括后面的`add_function(a, b)`,被称为函数头。 -- `add_function`:这是函数名称。取名字是有讲究的,就好比你的名字一样。在Python中取名字的讲究就是要有一定意义,能够从名字中看出这个函数是用来干什么的。从add_function这个名字中,是不是看出她是用来计算加法的呢(严格地说,是把两个对象“相加”,这里相加的含义是比较宽泛的,包括对字符串等相加)? -- `(a,b)`:这是参数列表。要写在括号里面。这是一个变量(参数)列表,其中的变量(参数)指向函数的输入。在这个例子中,函数有两项输入,分别是`a`和`b`。在通常的函数中,输入项没有限定,可以是任意数量,当然也可以没有输入,这时候的参数列表就是一对空着的圆括号(),但是,必须得有这个圆括号。 -- `:`:这个冒号非常非常重要,如果少了,就报错了。这和前面的语句是类似的,冒号表示函数头结束,下面要开始函数体的内容了。 -- `c = a + b`:这一行开始,就是函数体。函数体使一个缩进了四个空格的代码块,完成你需要完成的工作。在这个代码块中,可以使用函数头中的变量,当然,不使用也可以。缩进四个空格。这是Python的规定,要牢记,不可丢掉,丢了就报错。这句话就是将函数头的变量相加,结果赋值与另外一个变量c。 -- `return c`:还是提醒看官注意,缩进四个空格。`return`是函数的关键字,意思是要返回一个值。`return`语句执行时,Python跳出当前的函数并返回到调用这个函数的地方。在下面,有调用这个函数的地方`result = add_function(2, 3)`。但是,函数中的`return`语句也不是必须要写的,如果不写,Python将认为使以`return None`来作为结束的。也就是说,如果你的函数中没有`return`,事实上,在调用的时候,Python也会返回一个结果,这个结果就是None。 -- `if __name__ == "__main__"`: 这句话先照抄,不解释,因为在[《自省》](./130.md)有说明,不知道你是不是认真阅读了。注意就是不缩进了。 -- `result = add_function(2, 3)`:这是调用前面建立的函数,并且传入两个值`a=2`和`b=3`。仔细观察传入参数的方法,就是相当于把2放在a那个位置,3放在b那个位置(所以说,变量就是占位符)。当函数运行,遇到了`return`语句,就将函数中的结果返回到这里,赋值给result。还要啰嗦一句,是“相当于”把2和3分别放在a和b的位置,这个“相当于”的是有含义的,暂且存疑,后续会讲解。 - -解牛完毕,做个总结: - -定义函数的格式为: - - def 函数名(参数1,参数2,...,参数n): - - 函数体(语句块) - -是不是样式很简单呢? - -几点说明: - -- 函数名的命名规则要符合Python中的命名要求。一般用小写字母和单下划线、数字等组合,有人习惯用aaBb的样式,但我不推荐 -- def是定义函数的关键词,这个简写来自英文单词define -- 函数名后面是圆括号,括号里面,可以有参数列表,也可以没有参数 -- 千万不要忘记了括号后面的冒号 -- 函数体(语句块),相对于def缩进,按照python习惯,缩进四个空格 - -看简单例子,深入理解上面的要点: - - >>> def name(): #定义一个无参数的函数,只是通过这个函数打印 - ... print "qiwsir" #缩进4个空格 - ... - >>> name() #调用函数,打印结果 - qiwsir - - >>> def add(x,y): #定义一个非常简单的函数 - ... return x+y #缩进4个空格 - ... - >>> add(2,3) #通过函数,计算2+3 - 5 - -注意上面的`add(x,y)`函数,在这个函数中,没有特别规定参数`x`、`y`的类型。其实,这句话本身就是错的,还记得在前面已经多次提到,在Python中,变量无类型,只有对象才有类型,这句话应该说成:`x`、`y`并没有严格规定其所引用的对象类型。这是Python跟某些语言比如java很大的区别,在有些语言中,需要在定义函数的时候告诉函数参数的数据类型。Python不用那样做。 - -为什么?列位不要忘记了,这里的所谓参数,跟前面说的变量,本质上是一回事。只有当用到该变量的时候,才建立变量与对象的**引用关系**,否则,关系不建立。而对象才有类型。那么,在`add(x,y)`函数中,`x`,`y`在引用对象之前,是完全飘忽的,没有被贴在任何一个对象上,换句话说它们有可能引用任何对象,只要后面的运算许可,如果后面的运算不许可,则会报错。 - - >>> add("qiw","sir") #这里,x="qiw",y="sir",让函数计算x+y,也就是"qiw"+"sir" - 'qiwsir' - - >>> add("qiwsir",4) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "<stdin>", line 2, in add - TypeError: cannot concatenate 'str' and 'int' objects #仔细阅读报错信息,就明白错误之处了 - -从实验结果中发现:`x+y`的意义完全取决于对象的类型。在Python中,将这种依赖关系,称之为**多态**。对于Python中的多态问题,以后还会遇到,这里仅仅以此例子显示一番。请看官要留心注意的:**Python中为对象编写接口,而不是为数据类型。**读者先留心一下这句话,或者记住它,随着学习的深入,会领悟到其真谛的。 - -此外,也可以将函数通过赋值语句,与某个变量建立引用关系: - - >>> result = add(3, 4) - >>> result - 7 - -在这里,其实解释了函数的一个秘密。`add(x, y)`在被运行之前,计算机内是不存在的,直到代码运行到这里的时候,在计算机中,就建立起来了一个对象,这就如同前面所学习过的字符串、列表等类型的对象一样,运行`add(x,y)`之后,也建立了一个`add(x,y)`的对象,这个对象与变量`result`可以建立引用关系,并且`add(x,y)`将运算结果返回。于是,通过`result`就可以查看运算结果。 - - >>> add - <function add at 0x00000000007BAC80> - -如果使用`add(x, y)`的样式,是调用那个函数。但是如果只写函数的名字,不写参数列表,就如同上面那样,我们得到的是该函数在内存汇总的存储信息。你还可以这样做: - - >>> type(add) - <class 'function'> #Python 2下的反馈信息略有差异 - -这说明`add`是一个对象,因为只有对象才有类型,并且它是一个`function`类。按照我们的经验,对象都可以与一个变量建立引用关系,从而通过那个变量访问对象。 - - >>> r = add - >>> r - <function add at 0x00000000007BAC80> - >>> r(3, 4) - 7 - >>> add(3, 4) - 7 - >>> type(r) - <class 'function'> - -通过赋值语句,变量`r`和函数对象建立了引用关系之后,就可以做所有`add(x, y)`能做的事情,因为`r`就是那个函数的代表。 - -刚开始接触函数,可能有点吃力。先放松一下,看看“名不正言不顺”的Python版。 - -##关于命名 - -到现在为止,我们已经接触过变量的命名、函数的命名问题。似乎已经到了将命名问题进行总结的时候了。 - -在某国,向来重视“名”,所谓“名不正言不顺”,取名字或者给什么东西命名,常常是天大的事情,在很多时候就是为了那个“名”进行争斗。 - -江湖上还有的大师,会通过某个人的名字来预测他/她的吉凶祸福等。看来名字这玩意太重要了。“名不正,言不顺”,歪解:名字不正规化,就不顺。这是歪解,希望不要影响读者正确理解。不知道大师们是不是能够通过外国人名字预测外国人的吉凶祸福呢?比如Aoi sola,这个人怎么样?不管怎样,某国人是很在意名字的,旁边有个国家似乎就不在乎,比如山本五十六,在名字中间出现数字,就好像我们的张三李四王二麻子那样随便,不过,有一种说法,“山本五十六”的意思是这个人出生时,他父亲56岁,看来跟张三还不一样的。 - -Python也很在乎名字问题,其实,所有高级语言对名字都有要求。为什么呢?因为如果命名乱了,计算机就有点不知所措了。看Python对命名的一般要求。 - -- 文件名:全小写,可使用下划线 - -- 函数名:小写,可以用下划线风格单词以增加可读性。如:myfunction,my_example_function。*注意*:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。有的人,喜欢用这样的命名风格:myFunction,除了第一个单词首字母外,后面的单词首字母大写。这也是可以的,因为在某些语言中就习惯如此。但我不提倡,这是我非常鲜明的观点。 - -- 函数的参数:命名方式同变量(本质上就是变量)。如果一个参数名称和Python保留的关键字冲突,通常使用一个后缀下划线会好于使用缩写或奇怪的拼写。 - -- 变量:变量名全部小写,由下划线连接各个单词。如color = WHITE,this_is_a_variable = 1。 - -其实,关于命名的问题,还有不少争论呢?最典型的是所谓匈牙利命名法、驼峰命名等。如果你喜欢,可以google一下。以下内容供参考: - -- [匈牙利命名法](http://zh.wikipedia.org/zh/%E5%8C%88%E7%89%99%E5%88%A9%E5%91%BD%E5%90%8D%E6%B3%95) -- [驼峰式大小写](http://zh.wikipedia.org/wiki/%E9%A7%9D%E5%B3%B0%E5%BC%8F%E5%A4%A7%E5%B0%8F%E5%AF%AB) -- [帕斯卡命名法](http://zh.wikipedia.org/w/index.php?title=%E5%B8%95%E6%96%AF%E5%8D%A1%E5%91%BD%E5%90%8D%E6%B3%95&variant=zh-cn) -- [python命名的官方要求](http://legacy.python.org/dev/peps/pep-0008/#prescriptive-naming-conventions),如果看官的英文可以,一定要阅读。如果英文稍逊,可以来阅读[中文](http://wiki.jiayun.org/PEP_8_--_Style_Guide_for_Python_Code#.E5.91.BD.E5.90.8D.E6.85.A3.E4.BE.8B),不用梯子能行吗?看你命了。 - -##调用函数 - -前面的例子中已经有了一些关于调用的问题,为了深入理解,把这个问题单独拿出来看看。 - -为什么要写函数?从理论上说,不用函数,也能够编程,我们在前面已经写了程序,就没有写函数,当然,用Python的内建函数姑且不算了。现在之所以使用函数,主要是: - -1. 降低编程的难度,通常将一个复杂的大问题分解成一系列更简单的小问题,然后将小问题继续划分成更小的问题,当问题细化为足够简单时,就可以分而治之。为了实现这种分而治之的设想,就要通过编写函数,将各个小问题逐个击破,再集合起来,解决大的问题。(请注意,分而治之的思想是编程的一个重要思想,所谓“分治”方法也。) -2. 代码重(chong,二声音)用。在编程的过程中,比较忌讳同样一段代码不断的重复,所以,可以定义一个函数,在程序的多个位置使用,也可以用于多个程序。当然,后面我们还会讲到“模块”(此前也涉及到了,就是`import`导入的那个东西),还可以把函数放到一个模块中供其他程序员使用。也可以使用其他程序员定义的函数(比如`import ...`,前面已经用到了,就是应用了别人——创造python的人——写好的函数)。这就避免了重复劳动,提供了工作效率。 - -这样看来,函数还是很必要的了。 - -废话少说,那就看函数怎么调用吧。以`add(x,y)`为例,前面已经演示了基本调用方式,此外,还可以这样: - -Python2: - - >>> def add(x,y): #为了能够更明了显示参数赋值特点,重写此函数 - ... print "x=",x #分别打印参数赋值结果 - ... print "y=",y - ... return x+y - ... - -Python 3: - - >>> def add(x, y): - print("x={}".format(x)) - print("y={}".format(y)) - return x+y - - >>> add(10, 3) #x=10,y=3 - x= 10 - y= 3 - 13 - - >>> add(3, 10) #x=3,y=10 - x= 3 - y= 10 - 13 - -所谓调用,最关键是要弄清楚如何给函数的参数赋值。这里就是按照参数次序赋值,根据参数的位置,值与之对应。 - - >>> add(x=10, y=3) - x= 10 - y= 3 - 13 - -还可以直接把赋值语句写到里面,就明确了参数和对象的关系。当然,这时候顺序就不重要了,也可以这样 - - >>> add(y=10, x=3) - x= 3 - y= 10 - 13 - -在定义函数的时候,参数可以像前面那样,等待被赋值,也可以定义的时候就赋给一个默认值。例如: - - >>> def times(x, y=2): #y的默认值为2 - ... print "x=",x #Python 3: print("x={}".format(x)),以下类似,从略。 - ... print "y=",y - ... return x*y - ... - >>> times(3) #x=3,y=2 - x= 3 - y= 2 - 6 - - >>> times(x=3) #同上 - x= 3 - y= 2 - 6 - -如果不给那个有默认值的参数传递值(赋值的另外一种说法),那么它就是用默认的值。如果给它传一个,它就采用新赋给它的值。如下: - - >>> times(3, 4) #x=3,y=4,y的值不再是2 - x= 3 - y= 4 - 12 - - >>> times("qiwsir") #再次体现了多态特点 - x= qiwsir - y= 2 - 'qiwsirqiwsir' - -请读者在闲暇之余用Python完成:写两个数的加、减、乘、除的函数,然后用这些函数,完成简单的计算。 - -在程序中调用函数,还需要注意一个貌似废话的事项,那就是“先定义,后使用”。说是废话,是因为在理解上似乎当然这样,但是,在实践中,常会遇到此类错误。 - - >>> def foo(): - print('Hello, Teacher Cang!') #Python 2的使用者请自动调整为print语句 - bar() - -这里定义了一个函数`foo()`,在这个函数里面还调用了一个函数`bar()`,但是这个`bar()`函数,此前并没有在什么地方定义。所以,如果调用`foo()`函数,就会这样: - - >>> foo() - Hello, Teacher Cang! - Traceback (most recent call last): - File "<pyshell#44>", line 1, in <module> - foo() - File "<pyshell#43>", line 3, in foo - bar() - NameError: name 'bar' is not defined - -`NameError:`是一种错误信息。错误不可怕,可怕的是不认真看提示信息,只要耐心地认真地阅读提示信息,就能晓得错误原因。提示信息中分明告诉我们,那个`bar`没有定义。 - -所以要必须先定义,后使用。 - - >>> def bar(): pass - -这就定义了`bar()`,虽然非常简短,函数体内的代码就一个`pass`,意思是里面什么也不做,统统地pass。然后调用`foo()` - - >>> foo() - Hello, Teacher Cang! - -不再报错了。 - -虽然将`bar()`定义在了`foo()`的后面,只要定义了,无论先后,就可以使用。 - -##注意事项 - -下面的若干条,是常见编写代码的注意事项: - -1. 别忘了冒号。一定要记住复合语句首行末尾输入“:”(if,while,for等的第一行) -2. 从第一行开始。要确定顶层(无嵌套)程序代码从第一行开始。 -3. 空白行在交互模式提示符下很重要。模块文件中符合语句内的空白行常被忽视。但是,当你在交互模式提示符下输入代码时,空白行则是会结束语句。 -4. 缩进要一致。避免在块缩进中混合制表符和空格。 -5. 使用简洁的for循环,而不是while or range.相比,for循环更易写,运行起来也更快 -6. 要注意赋值语句中的可变对象。 -7. 不要期待在原处修改的函数会返回结果,比如list.append(),这在可修改的对象中特别注意 -8. 调用函数是,函数名后面一定要跟随着括号,有时候括号里面就是空空的,有时候里面放参数。 -9. 不要在导入和重载中使用扩展名或路径。 - -以上各点如果有不理解的,也不要紧,在以后编程中,时不时地回来复习一下,能不断领悟其内涵。 - ------- - -[总目录](./index.md)   |   [上节:自省](./130.md)   |   [下节:函数(2)](./202.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,微信号:**qiwsir**,不胜感激。 - diff --git a/202.md b/202.md deleted file mode 100644 index 0c75e77..0000000 --- a/202.md +++ /dev/null @@ -1,260 +0,0 @@ ->爱人不可虚假,恶要厌恶,善要亲近。爱弟兄,要彼此亲热;恭敬人,要彼此推让。殷勤不可懒惰。要心里火热,常常服侍主。在指望中要喜乐,在患难中要忍耐,祷告要恒切。(ROMANS 12:9-12) - -#函数(2) - -##返回值 - -所谓返回值,就是函数向调用函数的地方返回的数据。 - -编写一个斐波那契数列函数,来说明这个问题。还记得斐波那契数列吗?忘了没关系,看看本教程前面的内容即可。 - -我这里提供一段参考代码(既然是参考,显然不是唯一正确答案): - - #!/usr/bin/env python - # coding=utf-8 - - def fibs(n): - result = [0,1] - for i in range(n-2): - result.append(result[-2] + result[-1]) - return result - - if __name__ == "__main__": - lst = fibs(10) - print lst - -把含有这些代码的文件保存为名为20202.py的文件。 - -在这个文件中,首先定义了一个函数,名字叫做`fibs`,其参数是输入一个整数(但是,你并没有看到我在哪里做了对这个要输入的值的约束,就意味着,你输入非整数,甚至字符串,也使可以的,只是结果会不同,不妨试试吧),然后通过`lst = fibs(10)`调用这个函数。这里参数给的是10,就意味着要得到`n=10`的斐波那契数列。 - -运行后打印数列: - - $ python 20202.py - [0, 1, 1, 2, 3, 5, 8, 13, 21, 34] - -当然,如果要换n的值,只需要在调用函数的时候,修改一下参数即可。这才体现出函数的优势呢。 - -观察`fibs()`函数,最后有一个语句`return result`,意思是将变量result的值返回。返回给谁呢?这要看我们当前在什么位置调用该函数了。 - -在上面的程序中,以`lst = fibs(10)`语句的方式,调用了函数,那么函数就将值返回到当前状态,并记录在内存中,然后把它赋值给变量`lst`。 - -注意:上面的函数只返回了一个返回值(是一个列表),有时候需要返回多个,是以元组形式返回。 - - >>> def my_fun(): - ... return 1, 2, 3 - ... - >>> a = my_fun() - >>> a - (1, 2, 3) - -对这个函数,我们还可以用这样的方式来接收函数的返回值。 - - >>> x, y, z = my_fun() - >>> x - 1 - >>> y - 2 - >>> z - 3 - -多么神奇。 - -也不怎么神奇,这也来源于我们前面已经熟知的赋值语句。其效果相当于: - - >>> x, y, z = a - >>> x, y, z - (1, 2, 3) - -不是所有的函数都有`return`的,比如有的函数,就是执行某个语句或者什么也不做,不需要返回值。事实上,不是没有返回值,也有,只不过是None。比如这样一个函数: - - >>> def foo(): - ... pass - ... - -我在交互模式下构造一个很简单的函数,注意,我这是构造了一个简单函数,如果是复杂的,千万不要在交互模式下做。如果你非要做,是能尝到苦头的。 - -这个函数的作用就是pass——什么也不做,当然是没有return了。 - - >>> a = foo() - -我们再看看那个变量a,到底是什么 - - >>> print a #Python 3: print(a) - None - -这就是没有`return`的函数,事实上返回的是一个`None`。而`None`,你有可以理解成没有返回任何东西。 - -这种模样的函数,通常不用上述方式调用,而采用下面的方式,因为他们返回的是None,似乎这个返回值利用价值不高,于是就不用找一个变量来接受返回值了。 - - >>> foo() - -特别注意那个`return`,它还有一个作用,请先观察下面的函数和执行结果,并试图找出其作用。 - - >>> def my_fun(): - ... print "I am coding." #Python 3的用户请修改为print() - ... return - ... print "I finished." - ... - >>> my_fun() - I am coding. - -看出玄机了吗? - -在函数中,本来有两个`print`,但是中间插入了一个`return`,仅仅是一个`return`。当执行函数的时候,只执行了第一个`print`,第二个并没有执行。这是因为第一个之后,遇到了return,它告诉函数要返回,即中断函数体内的流程,离开这个函数。结果第二个`print`就没有被执行。所以,`return`在这里就有了一个作用,结束正在执行的函数,并离开函数体返回到调用位置,有点类似循环中的`break`的作用。 - -##函数中的文档 - -“程序在大多数情况下是给人看的,只是偶尔被机器执行。” - -所以,写程序必须要写注释。前面已经有过说明,如果用`#`开始,Python就不执行那句(Python看不到它,但是人能看到),它就作为注释存在。 - -除了这样的一句之外,一般在每个函数名字的下面,还有比较多的说明,这个被称为“文档”,在文档中主要是说明这个函数的用途。 - - #!/usr/bin/env python - # coding=utf-8 - - def fibs(n): - """ - This is a Fibonacci sequence. - """ - result = [0,1] - for i in range(n-2): - result.append(result[-2] + result[-1]) - return result - - if __name__ == "__main__": - lst = fibs(10) - print lst - -在这个函数的名称下面,用三个引号的方式,包裹着对这个函数的说明,那个就是函数文档。 - -还记得在[《自省》](./130.md)那节中,提到的`__doc__`吗?对于函数,它的内容就来自这里。 - - >>> def my_fun(): - ... """ - ... This is my function. - ... """ - ... print "I am a craft." - ... - >>> my_fun.__doc__ - '\n This is my function.\n ' - -如果在交互模式中用`help(my_fun)`得到的也是三个引号所包裹的文档信息。 - - Help on function my_fun in module __main__: - - my_fun() - This is my function. - -##函数的属性 - -任何对象都具有属性,比如“孔乙己的茴香豆”,这里“孔乙己”是一个对象,“茴香豆”是一个属性,世界上“茴香豆”很多,但是这里所说的“茴香豆”是比较特殊的,它归属于“孔乙己”。如果用符号的方式来表示“孔乙己的茴香豆”,一般习惯用句点(英文的)代替中间的“的”子,也就是句点表示了属性的归属,表示为:`孔乙己.茴香豆`。 - -前面已经说过,函数是对象。那么它也有属性。 - - >>> def cang(): - """This is a function of canglaoshi""" - pass - -对于这个函数,最熟悉的一个属性就应该是前面提到的函数文档,它可以用句点的方式表示为`cang.__doc__`。 - - >>> cang.__doc__ - 'This is a function of canglaoshi' - -这就体现出这种方式表示属性的优势了,只要对象不同,不管属性的名字是否相同,用句点就可以说明该属性所对应的对象。 - -还可以为对象增加属性。 - - >>> cang.breast = 90 - -这样就为对象`cang`增加了一个属性`breast`,并且设置该属性的值是90。接下来就可以调用该属性。 - - >>> cang.breast - 90 - -还记得我们用来查看对象属性和方法的函数`dir()`吗?现在又可以请它出来,一览众属性。 - - >>> dir(cang) - ['__annotations__', '__call__', '__class__', '__closure__', '__code__', '__defaults__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__get__', '__getattribute__', '__globals__', '__gt__', '__hash__', '__init__', '__kwdefaults__', '__le__', '__lt__', '__module__', '__name__', '__ne__', '__new__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'breast'] - -这里列出了所有`cang`这个对象的属性和方法,仔细观察,我们刚才用过的`cang.__doc__`和刚刚设置的`cang.breast`都历历在目。至于这里有很多属性的名字都是用双下划线开始和结束,这类属性可以称之为特殊属性(因为名字样式特殊吗?)。 - - >>> cang.__name__ - 'cang' - >>> cang.__module__ - '__main__' - -所有这些属性,都可以用句点的方式调用。 - -##参数和变量 - -函数的参数,还是很有话题的。比如在别的程序员嘴里,你或许听说过“形参”、“实参”、“参数”等名词,到底指什么呢? - ->在定义函数的时候(def来定义函数,称为def语句),函数名后面的括号里如果有变量,它们通常被称为“形参”。调用函数的时候,给函数提供的值叫做“实参”,或者“参数”。 - -其实,如果你区别不开,也不会耽误你写代码,这只不过类似孔乙己先生知道茴香豆的茴字有多少种写法罢了。但是,我居然碰到过某公司的面试官问这种问题。 - -我们就简化一下,笼统地把函数括号里面的变量叫做参数吧,当然你叫变量也无妨,只要大家知道值得是什么东西就好了。虽然这样会引起某些认真的人来喷口水,但也不用担心,反正本书已经声明是很“水”的了。 - -但如果有人较真,非要让你区分,为了显示你的水平,你可以引用[微软网站](http://msdn.microsoft.com/zh-cn/library/9kewt1b3.aspx)上的说明。我认为这段说明高度抽象,而且意义涵盖深远的说明。摘抄过来,请读一读,是否理解。 - ->参数和变量之间的差异 (Visual Basic) - ->多数情况下,过程必须包含有关调用环境的一些信息。执行重复或共享任务的过程对每次调用使用不同的信息。此信息包含每次调用过程时传递给它的变量、常量和表达式。 - ->若要将此信息传递给过程,过程先要定义一个形参,然后调用代码将一个实参传递给所定义的形参。 您可以将形参当作一个停车位,而将实参当作一辆汽车。 就像一个停车位可以在不同时间停放不同的汽车一样,调用代码在每次调用过程时可以将不同的实参传递给同一个形参。 - ->形参表示一个值,过程希望您在调用它时传递该值。 - ->当您定义 Function 或 Sub 过程时,需要在紧跟过程名称的括号内指定形参列表。对于每个形参,您可以指定名称、数据类型和传入机制(ByVal (Visual Basic) 或 ByRef (Visual Basic))。您还可以指示某个形参是可选的。这意味着调用代码不必传递它的值。 - ->每个形参的名称均可作为过程内的局部变量。形参名称的使用方法与其他任何变量的使用方法相同。 - ->实参表示在您调用过程时传递给过程形参的值。调用代码在调用过程时提供参数。 - ->调用 Function 或 Sub 过程时,需要在紧跟过程名称的括号内包括实参列表。每个实参均与此列表中位于相同位置的那个形参相对应。 - ->与形参定义不同,实参没有名称。每个实参就是一个表达式,它包含零或多个变量、常数和文本。求值的表达式的数据类型通常应与为相应形参定义的数据类型相匹配,并且在任何情况下,该表达式值都必须可转换为此形参类型。 - -如果硬着头皮看完这段引文,发现里面有几个关键词:参数、变量、形参、实参。本来想弄清楚参数和变量,结果又冒出另外两个词,更混乱了。请稍安勿躁,在编程业界,类似的东西有很多名词。下次听到有人说这些,不用害怕啦,反正自己听过了。 - -在Python中,没有这么复杂。 - -看完上面让人晕头转向的引文之后,再看下面的代码,就会豁然开朗了。 - - >>> def add(x): #x是参数,准确说是形参 - ... a = 10 #a是变量 - ... return a+x #x就是那个形参作为变量,其本质是要传递赋给这个函数的值 - ... - >>> x = 3 #x是变量,只不过在函数之外 - >>> add(x) #这里的x是参数,但是它由前面的变量x传递对象3 - 13 - >>> add(3) #把上面的过程合并了 - 13 - -至此,是否清楚了一点点。当然,我所表述不正确之处或者理解错误之处,请不吝赐教,小可作揖感谢。 - -其实没有那么复杂。关键要理解函数名括号后面的东东(管它什么参呢)的作用是“传对象引用”——这又是一种貌似高深的说法。 - - >>> def foo(lst): - ... lst.append(99) - ... return lst - ... - >>> x = [1, 3, 5] - >>> y = foo(x) - >>> y - [1, 3, 5, 99] - >>> x - [1, 3, 5, 99] - >>> id(x) - 3075464588L - >>> id(y) - 3075464588L - -结合前面学习过的列表能够被原地修改知识,加上刚才说的参数特点,你是不是能理解上面的操作呢? - ------- - -[总目录](./index.md)   |   [上节:函数(1)](./201.md)   |   [下节:函数(3)](./203.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/203.md b/203.md deleted file mode 100644 index f42f161..0000000 --- a/203.md +++ /dev/null @@ -1,299 +0,0 @@ ->圣徒缺乏要帮补,客要一味的宽带。逼迫你们的,要给他们祝福。只要祝福,不可诅咒。与喜乐的人同乐,与哀哭的人要同哭。要彼此同心,不要志气高大,倒要俯就卑微的人。不要自以为聪明。不要以恶报恶,众人以为美的事,要留心去作。若是能行,总要尽力与众人和睦。(ROMANS 12:13-17) - -#函数(3) - -对于函数的参数,有时候我们能够确认参数的个数,比如一个用来计算圆面积的函数,它所需要的参数就是半径(πr^2),这个函数的参数是确定的。 - ->你能不能写一个能够计算圆面积的函数呢? - -然而,这个世界不总是这么简单的,也不总是这么确定的,反而不确定性是这个世界常常存在的。如果读者了解量子力学——好多人听都没有听过的东西——就更理解真正的不确定性了。当然,不用研究量子力学也一样能够体会到,世界充满里了不确定性。不是吗?塞翁失马焉知非福,这不就是不确定性吗? - -##参数收集 - -世界是不确定的,那么函数参数的个数,也当然有不确定的时候,怎么解决这个问题呢?Python用这样的方式解决参数个数的不确定性。 - - def func(x, *arg): - print x #Python 3请自动修改为print()的格式,下同,从略。 - result = x - print arg #输出通过*arg方式得到的值 - for i in arg: - result +=i - return result - - print func(1, 2, 3, 4, 5, 6, 7, 8, 9) #赋给函数的参数个数不仅仅是2个 - -运行此代码后,得到如下结果: - - 1 #这是函数体内的第一个print,参数x得到的值是1 - (2, 3, 4, 5, 6, 7, 8, 9) #这是函数内的第二个print,参数arg得到的是一个元组 - 45 #最后的计算结果 - -从上面例子可以看出,如果输入的参数个数不确定,其它参数全部通过`*arg`,以元组的形式由arg收集起来。对照上面的例子不难发现: - -- 值1传给了参数`x` -- 值2,3,4,5,6,7,8,9被塞入一个元组里面,传给了`arg` - -为了能够更明显地看出`*args`(名称可以不一样,但是*符号必须要有),可以用下面的一个简单函数来演示: - - >>> def foo(*args): - ... print args #Python 3: print(args) - ... - -下面演示分别传入不同的值,通过参数*args得到的结果: - - >>> foo(1, 2, 3) - (1, 2, 3) - - >>> foo("qiwsir", "qiwsir.github.io", "python") - ('qiwsir', 'qiwsir.github.io', 'python') - - >>> foo("qiwsir", 307, ["qiwsir", 2], {"name":"qiwsir", "lang":"python"}) - ('qiwsir', 307, ['qiwsir', 2], {'lang': 'python', 'name': 'qiwsir'}) - -不管是什么,都一股脑地塞进了元组中。 - - >>> foo("python") - ('python',) - -即使只有一个值,也是用元组收集它。特别注意,在元组中,如果只有一个元素,后面要有一个逗号。 - -还有一种可能,就是不给那个`*args`传值,也是许可的。例如: - - >>> def foo(x, *args): - ... print "x:",x #Python 3: print("x:"+str(x)) - ... print "tuple:",args - ... - >>> foo(7) - x: 7 - tuple: () - -这时候`*args`收集到的是一个空的元组。 - ->在各类编程语言中,常常会遇到以foo,bar,foobar等之类的命名,不管是对变量、函数还是后面要讲到的类。这是什么意思呢?下面是来自维基百科的解释。 - ->在计算机程序设计与计算机技术的相关文档中,术语foobar是一个常见的无名氏化名,常被作为“伪变量”使用。 - ->从技术上讲,“foobar”很可能在1960年代至1970年代初通过迪吉多的系统手册传播开来。另一种说法是,“foobar”可能来源于电子学中反转的foo信号;这是因为如果一个数字信号是低电平有效(即负压或零电压代表“1”),那么在信号标记上方一般会标有一根水平横线,而横线的英文即为“bar”。在《新黑客辞典》中,还提到“foo”可能早于“FUBAR”出现。 - ->单词“foobar”或分离的“foo”与“bar”常出现于程序设计的案例中,如同Hello World程序一样,它们常被用于向学习者介绍某种程序语言。“foo”常被作为函数/方法的名称,而“bar”则常被用作变量名。 - -除了用`*args`这种形式的参数接收多个值之外,还可以用**kargs的形式接收数值,不过这次有点不一样: - - >>> def foo(**kargs): - ... print kargs #Python 3: print(kargs) - ... - >>> foo(a=1,b=2,c=3) #注意观察这次赋值的方式和打印的结果 - {'a': 1, 'c': 3, 'b': 2} - -如果这次还用foo(1,2,3)的方式,会有什么结果呢? - - >>> foo(1,2,3) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: foo() takes exactly 0 arguments (3 given) - -如果用`**kargs`的形式收集值,会得到dict类型的数据,但是,需要在传值的时候说明“键”和“值”,因为在字典中是以键值对形式出现的。 - -读者到这里可能想了,不是不确定性吗?我也不知道参数到底会可能用什么样的方式传值呀,这好办,把上面的都综合起来。 - - >>> def foo(x,y,z,*args,**kargs): - ... print x #Python 3用户请修改为print()格式,下同 - ... print y - ... print z - ... print args - ... print kargs - ... - >>> foo('qiwsir',2,"python") - qiwsir - 2 - python - () - {} - >>> foo(1,2,3,4,5) - 1 - 2 - 3 - (4, 5) - {} - >>> foo(1,2,3,4,5,name="qiwsir") - 1 - 2 - 3 - (4, 5) - {'name': 'qiwsir'} - -很good了,这样就能够足以应付各种各样的参数要求了。 - -##一种优雅的姿势 - - >>> def add(x, y): - ... return x + y - ... - >>> add(2, 3) - 5 - -这是通常的函数调用时的传值方法。这种方法简单明快,很容易理解。但是,世界总是多样性的,有时候你秀出下面的方式,甚至在某种情况用下面的方法可能更优雅。 - - >>> bars = (2, 3) - >>> add(*bars) - 5 - -先把要传的值放到元组中,赋值给一个变量`bars`,然后用`add(*bars)`的方式,把值传到函数内。这有点像前面收集参数的逆过程。注意的是,元组中元素的个数,要跟函数所要求的变量个数一致。如果这样: - - >>> bars = (2, 3, 4) - >>> add(*bars) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: add() takes exactly 2 arguments (3 given) - -就报错了。 - -这是使用一个星号`*`,是以元组形式传值,如果用`**`的方式,是不是应该以字典的形式呢?理当如此。 - - >>> def book(author, name): - ... print "{0}is writing {1}".format (author,name) #Python 3: print("{0}}is writing {1}".format (author,name)) - ... - >>> bars = {"name":"Starter learning Python", "author":"Kivi"} - >>> book(**bars) - Kivi is writing Starter learning Python - -这种调用函数传值的方式,至少在我的编程实践中,用的不多。不过,不代表读者不用。这或许是习惯问题。 - -##融会贯通 - -Python中函数的参数通过赋值的方式来传对象引用。下面总结通过总结常见的函数参数定义方式,来理解参数传递的流程。 - -###def foo(p1, p2, p3, ...) - -这种方式最常见了,列出有限个数的参数,并且彼此之间用逗号隔开。在调用函数的时候,按照顺序以此对参数进行赋值,特备注意的是,参数的名字不重要,重要的是位置。而且,必须数量一致,一一对应。第一个对象(可能是数值、字符串等等)对应第一个参数,第二个对应第二个参数,如此对应,不得偏左也不得偏右。 - - >>> def foo(p1, p2, p3): - ... print "p1==>",p1 #Python 3用户修改为print()格式,下同 - ... print "p2==>",p2 - ... print "p3==>",p3 - ... - >>> foo("python", 1, ["qiwsir","github","io"]) - p1==> python - p2==> 1 - p3==> ['qiwsir', 'github', 'io'] - - >>> foo("python") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: foo() takes exactly 3 arguments (1 given) #注意看报错信息 - - >>> foo("python",1, 2, 3) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: foo() takes exactly 3 arguments (4 given) #要求3个参数,实际上放置了4个,报错 - -###def foo(p1=value1, p2=value2, ...) - -这种方式比前面一种更明确某个参数的值,貌似这样就不乱子了,很明确呀。颇有一个萝卜对着一个坑的意味。 - -还是上面那个函数,用下面的方式赋值,就不用担心顺序问题了。 - - >>> foo(p3=3, p1=10, p2=222) - p1==> 10 - p2==> 222 - p3==> 3 - -也可以采用下面的方式定义参数,给某些参数有默认的值 - - >>> def foo(p1, p2=22, p3=33): #设置了两个参数p2, p3的默认值 - ... print "p1==>",p1 - ... print "p2==>",p2 - ... print "p3==>",p3 - ... - >>> foo(11) #p1=11,其它的参数为默认赋值 - p1==> 11 - p2==> 22 - p3==> 33 - >>> foo(11, 222) #按照顺序,p2=222, p3依旧维持原默认值 - p1==> 11 - p2==> 222 - p3==> 33 - >>> foo(11, 222, 333) #按顺序赋值 - p1==> 11 - p2==> 222 - p3==> 333 - - >>> foo(11, p2=122) - p1==> 11 - p2==> 122 - p3==> 33 - - >>> foo(p2=122) #p1没有默认值,必须要赋值的,否则报错 - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: foo() takes at least 1 argument (1 given) - -###def foo(*args) - -这种方式适合于不确定参数个数的时候,在参数args前面加一个`*`,注意,仅一个哟。 - - >>> def foo(*args): - ... print args - ... - >>> foo("qiwsir.github.io") - ('qiwsir.github.io',) - >>> foo("qiwsir.github.io","python") - ('qiwsir.github.io', 'python') - -###def foo(**args) - -这种方式跟上面的区别在于,必须接收类似`arg=val`形式的。 - - >>> def foo(**args): - ... print args - ... - - >>> foo(1,2,3) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: foo() takes exactly 0 arguments (3 given) - - >>> foo(a=1,b=2,c=3) - {'a': 1, 'c': 3, 'b': 2} - -下面来一个综合的,看看以上四种参数传递方法的执行顺序 - - >>> def foo(x,y=2,*targs,**dargs): - ... print "x==>",x - ... print "y==>",y - ... print "targs_tuple==>",targs - ... print "dargs_dict==>",dargs - ... - - >>> foo("1x") - x==> 1x - y==> 2 - targs_tuple==> () - dargs_dict==> {} - - >>> foo("1x","2y") - x==> 1x - y==> 2y - targs_tuple==> () - dargs_dict==> {} - - >>> foo("1x","2y","3t1","3t2") - x==> 1x - y==> 2y - targs_tuple==> ('3t1', '3t2') - dargs_dict==> {} - - >>> foo("1x","2y","3t1","3t2",d1="4d1",d2="4d2") - x==> 1x - y==> 2y - targs_tuple==> ('3t1', '3t2') - dargs_dict==> {'d2': '4d2', 'd1': '4d1'} - -对函数的基本内容已经介绍完毕,但是,并不意味着结束,因为还有更深刻的东西没说呢,且看下节。 - ------- - -[总目录](./index.md)   |   [上节:函数(2)](./202.md)   |   [下节:函数(4)](./204.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - diff --git a/204.md b/204.md deleted file mode 100644 index 2bb5e97..0000000 --- a/204.md +++ /dev/null @@ -1,324 +0,0 @@ ->行事为人要端正,好像行在白昼。不可荒宴醉酒,不可好色邪荡,不可争竞嫉妒。总要披戴主耶稣基督,不要为肉体安排,去放纵私欲。 - ->Let us live decently as in the daytime, not in carousing and drunkenness, not in sexual immorality and sensuality, not in discord and jealousy. Instead, put on the Lord Jesus Christ, and make no provision for the flesh to arouse its desires.(ROMANS 13:13-14) - -#函数(4) - -##再理解函数 - -如果把对函数的理解停留在此前的层面,还没有深入到函数的内涵,或者说只能做一些简单的事情,也可能是面临负责问题的时候不得不用冗长的代码解决。 - -所以,还要对函数进行深入探究。 - -###递归 - -什么是递归? - ->递归,见递归. - -这是对“递归”最精简的定义。还有故事类型的定义. - ->从前有座山,山里有座庙,庙里有个老和尚,正在给小和尚讲故事。故事是什么呢?“从前有座山,山里有座庙,庙里有个老和尚,正在给小和尚讲故事。故事是什么呢?“从前有座山,山里有座庙,庙里有个老和尚,正在给小和尚讲故事。故事是什么呢?……”” - -如果用上面的做递归的定义,总感觉有点调侃,来个严肃的(选自维基百科): - ->递归(英语:Recursion),又译为递回,在数学与计算机科学中,是指在函数的定义中使用函数自身的方法。 - -最典型的递归例子之一是斐波那契数列,虽然前面用迭代的方式实现了它,但是那种方法在理解上不很直接。如果忘记了这个数列的定义,可以回到[《练习》](./129.md)中查看。 - -根据斐波那契数列的定义,可以直接写成这样的斐波那契数列递归函数。 - - #!/usr/bin/env python - # coding=utf-8 - - def fib(n): - """ - This is Fibonacci by Recursion. - """ - if n==0: - return 0 - elif n==1: - return 1 - else: - return fib(n-1) + fib(n-2) - - if __name__ == "__main__": - f = fib(10) - print f #Python 3: print(f) - -把上述代码保存。这个代码的意图是要得到`n=10`的值。运行之: - - $ python 20401.py - 55 - -`fib(n-1) + fib(n-2)`就是又调用了这个函数自己,实现递归。 - -为了明确递归的过程,下面走一个计算过程(考虑到次数不能太多,就让n=3) - -1. n=3,fib(3),自然要走`return fib(3-1) + fib(3-2)`分支 -2. 先看fib(3-1),即fib(2),也要走else分支,于是计算`fib(2-1) + fib(2-2)` -3. fib(2-1)即fib(1),在函数中就要走elif分支,返回1,即fib(2-1)=1。同理,容易得到fib(2-2)=0。将这两个值返回到上面一步。得到`fib(3-1)=1+0=1` -4. 再计算fib(3-2),就简单了一些,返回的值是1,即fib(3-2)=1 -5. 最后计算第一步中的结果:`fib(3-1) + fib(3-2) = 1 + 1 = 2`,将计算结果2作为返回值 - -从而得到fib(3)的结果是2。 - -从上面的过程中可以看出,每个递归的过程,都是向着最初的已知条件`a0=0,a1=1`方向挺近一步,直到通过这个最底层的条件得到结果,然后再一层一层向上回馈计算结果。 - -其实,上面的代码有一个问题。因为`a0=0,a1=1`是已知的了,不需要每次都判断一边。所以,还可以优化一下。优化的基本方案就是初始化最初的两个值。 - - #!/usr/bin/env python - # coding=utf-8 - - """ - the better Fibonacci - """ - meno = {0:0, 1:1} - - def fib(n): - if not n in meno: - meno[n] = fib(n-1) + fib(n-2) - return meno[n] - - if __name__ == "__main__": - f = fib(10) - print f #Python: print(f) - - #运行结果 - $ python 20402.py - 55 - -以上实现了递归,但是,至少在Python中,递归要慎重使用。在一般情况下,递归是能够被迭代或者循环替代的,而且后者的效率常常比递归要高。所以,我个人的建议是,对使用递归要考虑周密,不小心就永远运行下去了。 - -###传递函数 - -前面已经多次提到函数也是对象。 - -对于函数的参数,我们也做了一些探究。通过参数,可以将数字、字符串、列表等等那些已经学习过的Python中默认类型的对象以引用的方式传入函数——也可以传入以后要学习过的自定义类型的对象引用。 - -阅读了上面两句话,你是否有一个疑惑?都是对象,函数对象的引用能不能作为参数传给函数呢? - -看这样一个举例: - - >>> def bar(): - print "I am in bar()" - - >>> def foo(func): - func() - -这里定义了两个函数,`bar()`就是我们熟悉的函数;而`foo()` 则有些许变化,其参数要求是一个函数,否则函数体内的代码块无法执行`func()`,因为这就是调用一个函数。 - -所以,要这样来调用`foo()`函数。 - - >>> foo(bar) - I am in bar() - -下面的例子,是不是可以算一个小的应用呢? - - #! /usr/bin/env python - # coding:utf-8 - - def convert(func, seq): - return [func(i) for i in seq] - - if __name__ == "__main__": - myseq = (111, 3.14, -9.21) - r = convert(str, myseq) - print r #Python 3: print(r) - -这个例子或者类似的,常常被作为“传递函数”的例子。在`r = convert(str, myseq)`里面,`str`是实现字符串转化的函数`str()`的名字。 - -你当然也可以自己编写一个函数,替换`str`。 - - #! /usr/bin/env python - # coding:utf-8 - - def convert(func, seq): - return [func(i) for i in seq] - - def num(n): - if n%2 == 0: - return n**n - else: - return n*n - - if __name__ == "__main__": - myseq = (3, 4, 5) - r = convert(num, myseq) - print r #Python 3: print(r) - -在这个例子中,我写了一个`num(n)`函数,然后在`r = convert(num, myseq)`中使用这个函数的名字`num`。其实跟前面的举例类似,只是为了让读者更深刻理解所谓“传函数”,使用的是函数名字,不是调用函数——调用函数使用`num()`的式样。 - -###嵌套函数 - -函数不仅可以作为对象传递,还能在函数里面嵌套一个函数。例如: - - #!/usr/bin/env python - #coding:utf-8 - - def foo(): - def bar(): - print "bar() is running" #Python 3用户请修改为print()函数,下同,从略 - print "foo() is running" - - foo() #调用函数 - -上面的代码中,在函数`foo()`里面定义了函数`bar()`,这就是嵌套函数,而`bar()`则称为`foo()`的内嵌函数,因为它在`foo()`的里面定义的。 - -如果调用`foo()`函数,会得到如下结果: - - foo() is running - -这说明,在上面的调用方式和内嵌函数写法中,`bar()`根本就没有被调用,或者说函数`foo()`并没有按照从上到下的顺序依次执行其里面的代码。 - -要想让`bar()`这个内嵌函数得到执行,就要在`foo()`函数里面显示地调用它,比如: - - #!/usr/bin/env python - #coding:utf-8 - - def foo(): - def bar(): - print "bar() is running" - bar() #显示调用内嵌函数 - print "foo() is running" - - foo() - -这样的运行结果就是: - - bar() is running - foo() is running - -如果我单独调用定义的内嵌函数,是不是可行呢?调用方式就是把上面代码中调用`foo()`,修改为调用`bar()`,然后运行,显示结果报错信息`NameError: name 'bar' is not defined`。 - -显然这样调用是不行的。因为`bar()`函数是定义在`foo()`里面的函数,它生效的范围仅局限在`foo()`函数体之内,也就是它的作用域是`foo()`范围。既然如此,`bar()`在使用变量的时候也会受到`foo()`的拘束了。 - - def foo(): - a = 1 - def bar(): - b = a + 1 - print "b=",b #Python 3的用户请使用print() - bar() - print "a=",a - - foo() - #output: - #b= 2 - #a= 1 - -在函数`bar()`之外但在`foo()`之内定义了`a = 1`,在`bar()`中能够被顺利调用。这个关系不难理解,可是如果遇到下面的,就迷茫了。 - - def foo(): - a = 1 - def bar(): - a = a + 1 #修改之处 - print "bar()a=",a - bar() - print "foo()a=",a - - foo() - -如果运行这段程序,是会报错的。重要的报错信息是`UnboundLocalError: local variable 'a' referenced before assignment`。观察`bar()`里面,使用了变量`a`,按照该表达式,Python解析器认定该变量应是在`bar()`内部建立的,而不是引用的外部对象。所以就报错了。 - -在Python 3中,你可以使用`nonlocal`关键词,如下演示。 - - def foo(): - a = 1 - def bar(): - nonlocal a - a = a + 1 - print("bar()a=",a) - bar() - print("foo()a=",a) - - foo() - #output - #bar()a= 2 - #foo()a= 2 - -以上说明了嵌套函数的原理,在编程实践中,怎么用呢? - - def maker(n): - def action(x): - return x ** n - return action - -在`maker()`函数中,`return action`返回的是`action()`函数对象。 - - f = maker(2) - print f - m = f(3) - print m - -`f`所引用的对象是一个函数对象——`action()`函数对象,`print f`就是打印这个函数对象的信息。观察执行结果,对比上述代码,会有所感悟的。 - - <function action at 0x02A39970> - 9 - -从这个角度看,嵌套函数,其实能够制作一个动态的函数对象——`action`。这个话题延伸下去,就是所谓的“闭包”,关于“闭包”的问题,我会在后面跟读者聊一聊。 - -###初识装饰器 - -至此,我们已经明确,函数——是对象——能够被传递,也能够嵌套。重复一个简单的举例,目的是抛砖引玉。 - - def foo(fun): - def wrap(): - print "start" #Python 3用户请自行更换为print(),下同,从略 - fun() - print "end" - print fun.__name__ - return wrap - - def bar(): - print "I am in bar()" - -`foo()`的参数是一个函数,如果我们这样调用此函数: - - f = foo(bar) - f() - #output: - #start - #I am in bar() - #end - #bar - -这就是向`foo()`传递了函数对象`bar`——你已经熟悉的传递函数。对于这个问题,我们可以换一个写法——仅仅是换一个写法。 - - def foo(fun): - def wrap(): - print "start" - fun() - print "end" - print fun.__name__ - return wrap - - @foo #增加的内容 - def bar(): - print "I am in bar()" - -`@foo`是一个看起来很奇怪的东西,人们常常把类似这种东西叫做语法糖。 - ->语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·兰丁发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。(源自《维基百科》) - -如果用上面的方式,我们可以这样执行程序: - - bar() - -结果是: - - start - I am in bar() - end - bar - -以上,就是所谓的装饰器及其应用,`foo()`是装饰器函数,使用`@foo`来装饰`bar()`函数。 - -装饰器本身是一个函数,将被装饰的类(后面会介绍这种东西)或者函数当作参数传递给装饰器函数,如上面所演示的那样。 - -关于装饰器,后面我们还会遇到。这里是刚刚认识,就如同跟人交往一样,初次见面,姑且简单了解,以后日久天长。 - ------- - -[总目录](./index.md)   |   [上节:函数(3)](./203.md)   |   [下节:函数(5)](./237.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/205.md b/205.md deleted file mode 100644 index f46811a..0000000 --- a/205.md +++ /dev/null @@ -1,346 +0,0 @@ ->信心软弱的,你们要接纳,但不要辩论所疑惑的事。有人信百物都可吃,但那软弱的,只吃蔬菜。吃的人不可轻看不吃的人,不吃的人不可论断吃的人;因为神已经收纳他了。(ROMANS 14:1-3) - -#函数练习 - -仅仅知道函数的知识,是远远不够的,必须要勤练习、多敲代码,才能有体会,熟能生巧,熟能有感悟。 - -首先声明,一下对每个问题的解决方案,不一定是最优的。 - -读者在完成本节练习的时候,请遵守如下规则(全看你的自我控制能力了,自控能力强的胜出,不要欺骗哦,因为上帝在看着你呢): - -1. 先根据自己的设想写下代码,然后运行调试,检查得到的结果是否正确 -2. 我也给出参考代码,但是,参考代码并不是最终结果 -3. 可以在上述基础上对代码进行完善 -4. 如果读者愿意,可以将代码提交到github上,或者到我的QQ群(群号:26913719)中跟大家分享讨论 - -##解一元二次方程 - -解一元二次方程,是初中数学中的基本知识,一般来讲解法有公式法、因式分解法等。读者可以根据自己的理解,写一段求解一元二次方程的程序。 - -最简单的思路就是用公式法求解,这是普适法则(普世法则?普适是否等同于普世?)。 - ->古巴比伦留下的陶片显示,在大约公元前2000年(2000BC)古巴比伦的数学家就能解一元二次方程了。在大约公元前480年,中国人已经使用配方法求得了二次方程的正根,但是并没有提出通用的求解方法。公元前300年左右,欧几里得提出了一种更抽象的几何方法求解二次方程。 - ->7世纪印度的婆罗摩笈多(Brahmagupta)是第一位懂得用使用代数方程,它同时容许有正负数的根。 - ->11世纪阿拉伯的花拉子密 独立地发展了一套公式以求方程的正数解。亚伯拉罕·巴希亚(亦以拉丁文名字萨瓦索达著称)在他的著作Liber embadorum中,首次将完整的一元二次方程解法传入欧洲。。(源自《维基百科》) - -参考代码: - -Python 2: - - #!/usr/bin/env python - # coding=utf-8 - - """ - solving a quadratic equation - """ - - from __future__ import division #Python2中为了确保除法得到的结果是精确的,导入python未来支持的语言特征division(精确除法) - import math - - def quadratic_equation(a,b,c): - delta = b*b - 4*a*c - if delta<0: - return False - elif delta==0: - return -(b/(2*a)) - else: - sqrt_delta = math.sqrt(delta) - x1 = (-b + sqrt_delta)/(2*a) - x2 = (-b - sqrt_delta)/(2*a) - return x1, x2 - - if __name__ == "__main__": - print "a quadratic equation: x^2 + 2x + 1 = 0" - coefficients = (1, 2, 1) - roots = quadratic_equation(*coefficients) - if roots: - print "the result is:",roots - else: - print "this equation has no solution." - -Python 3: - - #!/usr/bin/env python - # coding=utf-8 - - """ - solving a quadratic equation - """ - - import math - - def quadratic_equation(a,b,c): - delta = b*b - 4*a*c - if delta<0: - return False - elif delta==0: - return -(b/(2*a)) - else: - sqrt_delta = math.sqrt(delta) - x1 = (-b + sqrt_delta)/(2*a) - x2 = (-b - sqrt_delta)/(2*a) - return x1, x2 - if __name__ == "__main__": - print("a quadratic equation: x^2 + 2x + 1 = 0") - coefficients = (1, 2, 1) - roots = quadratic_equation(*coefficients) - if roots: - print("the result is:{}".format(roots)) - else: - print("this equation has no solution.") - -保存为20501.py,并运行之: - - $ python 20501.py - a quadratic equation: x^2 + 2x + 1 = 0 - the result is: -1.0 - -得到了方程的根。 - -但是,如果再认真思考,发现上述代码是有很大改进空间的: - -- 如果不小心将第一个系数(a)的值输入了0,程序肯定会报错。如何避免之?要记住,任何人的输入都是不可靠的。 -- 结果貌似只能是小数,这在某些情况下是近似值,能不能得到以分数形式表示的精确结果呢? -- 复数,Python是可以表示复数的,如果`delta<0`,是不是写成复数更好? - -读者是否还有其它改进呢?希望你能优化它,并分享你的成果。 - -至少要完成上述改进,可能需要其它的有关知识,甚至还没有介绍。这都不要紧,掌握了基本知识之后,在编程的过程中,就要不断发挥google的优势,让她帮助你找寻完成任务的工具。 - ->Python是一个开放的语言,很多大牛人都写了一些工具,让别人使用,减轻了后人的劳动负担。这就是所谓的第三方模块。虽然Python中已经有一些“自带电池”,即默认安装的,比如上面程序中用到的math,但是我们还嫌不够。于是又很多第三方的模块来专门解决某个问题。比如这个解方程问题,就可以使用SymPy(www.sympy.org) 来解决,当然NumPy 也是非常强悍的工具。 - -##统计考试成绩 - -每次考试之后,就知道年级一共有多少人了。 - -现在我们就帮着老师来做成绩统计,这项工作,对学霸来讲是快乐的,因为可以提前享受成功的喜悦;对学渣来讲是痛并快乐着,因为晚痛不如早痛。 - -所以,要快乐地敲代码。 - -为了简化,以字典形式表示考试成绩记录,例如:`{"zhangsan":90, "lisi":78, "wangermazi":39}`,当然,也许不止这三项,可能还有,每个老师所处理的内容稍有不同,因此字典里的键值对也不一样。 - -有几种可能要考虑到: - -- 最高分或者最低分,可能有人并列。 -- 要实现不同长度的字典作为输入值。 -- 输出结果中,除了平均分,其它的都要有姓名和分数两项,否则都匿名了,怎么刺激学渣,表扬学霸呢? - -不管是学渣还是学霸,都能学好Python。 - -请思考后敲代码调试你的程序,调试之后再阅读下文。 - -参考代码: - -Python 2: - - #!/usr/bin/env python - # coding=utf-8 - """ - 统计考试成绩 - """ - from __future__ import division - - def average_score(scores): - """ - 统计平均分. - """ - score_values = scores.values() - sum_scores = sum(score_values) - average = round(sum_scores/len(score_values), 2) # round(a,2) 保留两位小数 - return average - - def sorted_score(scores): - """ - 对成绩从高到低排队. - """ - score_lst = [(scores[k],k) for k in scores] - sort_lst = sorted(score_lst, reverse=True) - return [(i[1], i[0]) for i in sort_lst] - - def max_score(scores): - """ - 成绩最高的姓名和分数. - """ - lst = sorted_score(scores) #引用分数排序的函数sorted_score - max_score = lst[0][1] - return [(i[0],i[1]) for i in lst if i[1]==max_score] - - def min_score(scores): - """ - 成绩最低的姓名和分数. - """ - lst = sorted_score(scores) - min_score = lst[len(lst)-1][1] - return [(i[0],i[1]) for i in lst if i[1]==min_score] - - if __name__ == "__main__": - examine_scores = {"google":98, "facebook":99, "baidu":52, "alibaba":80, "yahoo":49, "IBM":70, "android":76, "apple":99, "amazon":99} - - ave = average_score(examine_scores) - print "the average score is: ",ave #平均分 - - sor = sorted_score(examine_scores) - print "list of the scores: ",sor #成绩表 - - xueba = max_score(examine_scores) - print "Xueba is: ",xueba #学霸们 - - xuezha = min_score(examine_scores) - print "Xuzha is: ",xuezha #学渣们 - -Python 3: - - #!/usr/bin/env python - # coding=utf-8 - """ - 统计考试成绩 - """ - - def average_score(scores): - """ - 统计平均分. - """ - score_values = scores.values() - sum_scores = sum(score_values) - average = round(sum_scores/len(score_values), 2) # round(a,2) 保留两位小数 - return average - - def sorted_score(scores): - """ - 对成绩从高到低排队. - """ - score_lst = [(scores[k],k) for k in scores] - sort_lst = sorted(score_lst, reverse=True) - return [(i[1], i[0]) for i in sort_lst] - - def max_score(scores): - """ - 成绩最高的姓名和分数. - """ - lst = sorted_score(scores) #引用分数排序的函数sorted_score - max_score = lst[0][1] - return [(i[0],i[1]) for i in lst if i[1]==max_score] - - def min_score(scores): - """ - 成绩最低的姓名和分数. - """ - lst = sorted_score(scores) - min_score = lst[len(lst)-1][1] - return [(i[0],i[1]) for i in lst if i[1]==min_score] - - if __name__ == "__main__": - examine_scores = {"google":98, "facebook":99, "baidu":52, "alibaba":80, "yahoo":49, "IBM":70, "android":76, "apple":99, "amazon":99} - - ave = average_score(examine_scores) - print("the average score is:{}".format(ave)) #平均分 - - sor = sorted_score(examine_scores) - print("list of the scores:{}".format(sor)) #成绩表 - - xueba = max_score(examine_scores) - print("Xueba is:{}".format(xueba)) #学霸们 - - xuezha = min_score(examine_scores) - print("Xuzha is:{}".format(xuezha)) #学渣们 - -保存为20502.py,然后运行: - - $ python 20502.py - the average score is: 80.22 - list of the scores: [('facebook', 99), ('apple', 99), ('amazon', 99), ('google', 98), ('alibaba', 80), ('android', 76), ('IBM', 70), ('baidu', 52), ('yahoo', 49)] - Xueba is: [('facebook', 99), ('apple', 99), ('amazon', 99)] - Xuzha is: [('yahoo', 49)] - -貌似结果还不错。不过,还有改进余地,看看现实,就感觉不怎么友好了。能不能优化一下? - -##找素数 - -这是一个比较常见的题目。我们姑且将范围缩小一下,找出100以内的素数吧。 - -依照惯例,读者先做,然后我提供参考代码,最后思考如何优化。 - ->质数(Prime number),又称素数,指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个因数的数)。 - ->哥德巴赫猜想是数论中存在最久的未解问题之一。这个猜想最早出现在1742年普鲁士人克里斯蒂安·哥德巴赫与瑞士数学家莱昂哈德·欧拉的通信中。用现代的数学语言,哥德巴赫猜想可以陈述为:“任一大于2的偶数,都可表示成两个素数之和。”。哥德巴赫猜想在提出后的很长一段时间内毫无进展,直到二十世纪二十年代,数学家从组合数学与解析数论两方面分别提出了解决的思路,并在其后的半个世纪里取得了一系列突破。目前最好的结果是陈景润在1973年发表的陈氏定理(也被称为“1+2”)。(源自《维基百科》) - -对这个练习,我的思路是先做一个函数,用它来判断某个整数是否是素数。然后循环即可。 - -参考代码: - - #!/usr/bin/env python - # coding=utf-8 - - """ - 寻找素数 - """ - - import math - - def is_prime(n): - """ - 判断一个数是否是素数 - """ - if n <= 1: - return False - for i in range(2, int(math.sqrt(n) + 1)): - if n % i == 0: - return False - return True - - if __name__ == "__main__": - primes = [i for i in range(2, 101) if is_prime(i)] #从2开始,因为1显然不是质数 - print primes #Python 3: print(primes) - -代码保存后运行: - - $ python 20503.py - [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] - -打印出了100以内的质数。 - -你或许也发现了需要进一步优化的地方,那就太好了。 - -另外,关于判断质数的方法,还有好多种,读者可以自己创造或者网上搜索一些,拓展思路。 - -网友frankwang分享一段关于素数的代码,供各位参考: - - def find_primes(n): - primes_list = [] - for x in range(2, n+1): - is_prime = True - for y in range(2, int(x**0.5) + 1): #x**0.5 相当于math.sqrt(x) - if x % y == 0: - is_prime = False - break - if is_prime: - primes_list.append(x) - - print(primes_list) #Python 2: print primes_list - - if __name__ == "__main__": - max = int(input('Find primes up to: ')) - find_primes(max) - -代码保存后运行,打印结果如下: - - Find primes up to: 100 - [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97] - -##编写函数的注意事项 - -编写函数,在开发实践中是非常必要和常见的,一般情况,你写的函数应该是: - -1. 尽量不要使用全局变量。 -2. 如果参数是可变类型数据,在函数内,不要修改它。 -3. 每个函数的功能和目标要单纯,不要试图一个函数做很多事情。 -4. 函数的代码行数尽量少。 -5. 函数的独立性越强越好,不要跟其它的外部东西产生关联。 - ------- - -[总目录](./index.md)   |   [上节:函数(5)](./237.md)   |   [下节:zip()补充](./236.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/206.md b/206.md deleted file mode 100644 index 8f21f6f..0000000 --- a/206.md +++ /dev/null @@ -1,173 +0,0 @@ ->你这个人,为什么论断弟兄呢?又为什么轻看弟兄呢?因我们都要站在神的台前。 - ->所以我们不可再彼此论断,宁可定意,谁也不给弟兄下绊脚跌人之物。(ROMANS 14:10,13) - -#类(1) - -类,这个词如果你第一次听到,把它作为一个单独的名词,会感觉怪怪的,因为在汉语中,常见的是说“鸟类”、“人类”等词语,而单独说“类”,总感觉前面缺点修饰成分。其实,它对应的是英文单词class,“类”是这个class翻译过来的,你就把它作为一个翻译术语吧。 - -除了“类”这个术语,从现在开始,还要经常提到一个OOP,即面向对象编程(或者“面向对象程序设计”)。 - -为了理解类和OOP,需要对一些枯燥的名词术语有了解。 - ->“行百里路者半九十”,如果读者坚持阅读到本书的这个章节,已经对Python有了初步感受,而“类”就是能够让你在Python学习进程中再上台阶的标志。所以,一定要硬着头皮耐心地继续学下去。 - -##术语 - -所谓“术语”,可以粗浅地理解为某个领域的“行话”,比如在物理学里面,有专门定义的“质量”、“位移”、“速度”等,这些术语有的跟日常生活中的俗称名字貌似一样,但是所指有所不同。 - -“术语”的主要特征是具有一定的稳定性,并且严谨、简明,不是流行语。在谈到OOP的时候,会遇到一些术语,需要先明确它们的含义。 - -本节没有特别声明的术语定义均来自《维基百科》。 - -###问题空间 - -**定义:** - ->问题空间是问题解决者对一个问题所达到的全部认识状态,它是由问题解决者利用问题所包含的信息和已贮存的信息主动地构成的。 - -一个问题一般有下面三个方面来定义: - -- 初始状态——一开始时的不完全的信息或令人不满意的状况; -- 目标状态——你希望获得的信息或状态; -- 操作——为了从初始状态迈向目标状态,你可能采取的步骤。 - -这三个部分加在一起定义了问题空间(problem space)。 - -###对象 - -**定义:** - ->对象(object),台湾译作物件,是面向对象(Object Oriented)中的术语,既表示客观世界问题空间(Namespace)中的某个具体的事物,又表示软件系统解空间中的基本元素。 - -把object翻译为“对象”,是比较抽象的。因此,有人认为,不如翻译为“物件”更好。因为“物件”让人感到一种具体的东西。 - -我们不去追究翻译的名称,因为这是专家们的事情。我们需要知道的是“Python中的一切都是对象”,不管是字符串、函数、模块还是类,都是对象。“万物皆对象”。 - -都是对象有什么优势吗?太有了。这说明Python天生就是OOP的。 - -对于对象这个东西,OOP大师Grandy Booch的定义,应该是权威的,相关定义的内容包括: - -- **对象**:一个对象有自己的状态、行为和唯一的标识;所有相同类型的对象所具有的结构和行为在他们共同的类中被定义。 -- **状态(state)**:包括这个对象已有的属性(通常是类里面已经定义好的)在加上对象具有的当前属性值(这些属性往往是动态的) -- **行为(behavior)**:是指一个对象如何影响外界及被外界影响,表现为对象自身状态的改变和信息的传递。 -- **标识(identity)**:是指一个对象所具有的区别于所有其它对象的属性。(本质上指内存中所创建的对象的地址) - -大师的话的确有水平,听起来非常高深。不过,初学者可能理解起来就有点麻烦了。 - -于是就需要“述而不作”的我了,我的任务就是就把大师的话化简,虽然化简了之后可能在严谨性上就不足了,但对于初学者来讲,应该是影响不很大的。随着学习和时间的深入,就更能理解大师的严谨描述了。那时候应当抛弃本书,去阅读大师的作品。 - -简化之,对象应该具有属性(就是上面的状态,因为属性更常用)、方法(就是上面的行为,方法更常被使用)和标识。因为标识是内存中自动完成的,所以,平时不用怎么管理它。主要就是属性和方法。 - -为了体现“深入浅出”的道理,还是讲故事吧。 - -既然万物都是对象,那么,某个具体的人也是对象,这是当然的事情。假设这个具体的人就是德艺双馨的苍老师,她是一个对象。这个苍老师具有哪些特征呢?我错了,写到这里发现不能用苍老师为对象的例子,因为容易让读者不专心学习了。我换一个吧,选定的对象就是某个王美女(这个王美女完全是虚构的,请不要对号入座,更不要想入非非,如果雷同,纯属巧合,想入非非的后果自行担负)。 - -王美女这个对象具有某些特征,眼睛,大;腿,长;皮肤,白。当然,既然是美女,肯定还有别的显明特征,读者可以自己假设去。如果用“对象”的术语来说明,就说这些特征都是她的属性。也就是说**属性是一个对象做具有的特征,或曰:是什么。**。 - -王美女除了具有上面的特征之外,她还能做一些事情,比如她能唱歌、会吹拉弹唱等。这些都是她能够做的事情。用“对象”的术语来说,就是她的“方法”。即**方法就是对象能够做什么**。 - -任何一个对象都要包括这两部分:属性(是什么)和方法(能做什么)。 - -###面向对象 - -**定义:** - ->面向对象程序设计(英语:Object-oriented programming,缩写:OOP)是一种程序设计范型,同时也是一种程序开发的方法。对象指的是类的实例。它将对象作为程序的基本单元,将程序和数据封装其中,以提高软件的重用性、灵活性和扩展性。 - ->面向对象程序设计可以看作一种在程序中包含各种独立而又互相调用的对象的思想,这与传统的思想刚好相反:传统的程序设计主张将程序看作一系列函数的集合,或者直接就是一系列对电脑下达的指令。面向对象程序设计中的每一个对象都应该能够接受数据、处理数据并将数据传达给其它对象,因此它们都可以被看作一个小型的“机器”,即对象。 - ->目前已经被证实的是,面向对象程序设计推广了程序的灵活性和可维护性,并且在大型项目设计中广为应用。 此外,支持者声称面向对象程序设计要比以往的做法更加便于学习,因为它能够让人们更简单地设计并维护程序,使得程序更加便于分析、设计、理解。反对者在某些领域对此予以否认。 - ->当我们提到面向对象的时候,它不仅指一种程序设计方法。它更多意义上是一种程序开发方式。在这一方面,我们必须了解更多关于面向对象系统分析和面向对象设计(Object Oriented Design,简称OOD)方面的知识。 - -下面再引用一段来自维基百科中关于OOP的历史。 - ->面向对象程序设计的雏形,早在1960年的Simula语言中即可发现,当时的程序设计领域正面临着一种危机:在软硬件环境逐渐复杂的情况下,软件如何得到良好的维护?面向对象程序设计在某种程度上通过强调可重复性解决了这一问题。20世纪70年代的Smalltalk语言在面向对象方面堪称经典——以至于30年后的今天依然将这一语言视为面向对象语言的基础。 - ->计算机科学中对象和实例概念的最早萌芽可以追溯到麻省理工学院的PDP-1系统。这一系统大概是最早的基于容量架构(capability based architecture)的实际系统。另外1963年Ivan Sutherland的Sketchpad应用中也蕴含了同样的思想。对象作为编程实体最早是于1960年代由Simula 67语言引入思维。Simula这一语言是奥利-约翰·达尔和克利斯登·奈加特在挪威奥斯陆计算机中心为模拟环境而设计的。(据说,他们是为了模拟船只而设计的这种语言,并且对不同船只间属性的相互影响感兴趣。他们将不同的船只归纳为不同的类,而每一个对象,基于它的类,可以定义它自己的属性和行为。)这种办法是分析式程序的最早概念体现。在分析式程序中,我们将真实世界的对象映射到抽象的对象,这叫做“模拟”。Simula不仅引入了“类”的概念,还应用了实例这一思想——这可能是这些概念的最早应用。 - ->20世纪70年代施乐PARC研究所发明的Smalltalk语言将面向对象程序设计的概念定义为,在基础运算中,对对象和消息的广泛应用。Smalltalk的创建者深受Simula 67的主要思想影响,但Smalltalk中的对象是完全动态的——它们可以被创建、修改并销毁,这与Simula中的静态对象有所区别。此外,Smalltalk还引入了继承性的思想,它因此一举超越了不可创建实例的程序设计模型和不具备继承性的Simula。此外,Simula 67的思想亦被应用在许多不同的语言,如Lisp、Pascal。 - ->面向对象程序设计在80年代成为了一种主导思想,这主要应归功于C++——C语言的扩充版。在图形用户界面(GUI)日渐崛起的情况下,面向对象程序设计很好地适应了潮流。GUI和面向对象程序设计的紧密关联在Mac OS X中可见一斑。Mac OS X是由Objective-C语言写成的,这一语言是一个仿Smalltalk的C语言扩充版。面向对象程序设计的思想也使事件处理式的程序设计更加广泛被应用(虽然这一概念并非仅存在于面向对象程序设计)。一种说法是,GUI的引入极大地推动了面向对象程序设计的发展。 - ->苏黎世联邦理工学院的尼克劳斯·维尔特和他的同事们对抽象数据和模块化程序设计进行了研究。Modula-2将这些都包括了进去,而Oberon则包括了一种特殊的面向对象方法——不同于Smalltalk与C++。 - ->面向对象的特性也被加入了当时较为流行的语言:Ada、BASIC、Lisp、Fortran、Pascal以及种种。由于这些语言最初并没有面向对象的设计,故而这种糅合常常会导致兼容性和维护性的问题。与之相反的是,“纯正的”面向对象语言却缺乏一些程序员们赖以生存的特性。在这一大环境下,开发新的语言成为了当务之急。作为先行者,Eiffel成功地解决了这些问题,并成为了当时较受欢迎的语言。 - ->在过去的几年中,Java语言成为了广为应用的语言,除了它与C和C++语法上的近似性。Java的可移植性是它的成功中不可磨灭的一步,因为这一特性,已吸引了庞大的程序员群的投入。 - ->在最近的计算机语言发展中,一些既支持面向对象程序设计,又支持面向过程程序设计的语言悄然浮出水面。它们中的佼佼者有Python、Ruby等等。 - ->正如面向过程程序设计使得结构化程序设计的技术得以提升,现代的面向对象程序设计方法使得对设计模式的用途、契约式设计和建模语言(如UML)技术也得到了一定提升。 - -至此,如果读者把前面的文字逐句读过,没有跳跃,则姑且认为你已经对“面向对象”有了一个模糊的认识了。那么,类和OOP有什么关系呢? - -###类 - -**定义:** - ->在面向对象程式设计,类(class)是一种面向对象计算机编程语言的构造,是创建对象的蓝图,描述了所创建的对象共同的属性和方法。 - ->类的更严格的定义是由某种特定的元数据所组成的内聚的包。它描述了一些对象的行为规则,而这些对象就被称为该类的实例。类有接口和结构。接口描述了如何通过方法与类及其实例互操作,而结构描述了一个实例中数据如何划分为多个属性。类是与某个层的对象的最具体的类型。类还可以有运行时表示形式(元对象),它为操作与类相关的元数据提供了运行时支持。 - ->支持类的编程语言在支持与类相关的各种特性方面都多多少少有一些微妙的差异。大多数都支持不同形式的类继承。许多语言还支持提供封装性的特性,比如访问修饰符。类的出现,为面向对象编程的三个最重要的特性(封装性,继承性,多态性),提供了实现的手段。 - -看到这里,读者或许有一个认识,要OOP编程就得用到类。可以这么说,虽然不是很严格。但是,反过来就不能说了。不是说用了类就一定是OOP。 - -##编写类 - -首先要明确,类是对某一群具有同样属性和方法的对象的抽象。比如这个世界上有很多长翅膀并且会飞的生物,于是聪明的人们就将它们统一称为“鸟”——这就是一个类,虽然它也可以称作“鸟类”。 - -还是以美女为例子,因为这个例子不仅能阅读本课程不犯困,还能兴趣昂然。 - -要定义类,就要抽象,找出共同的方面。 - - class 美女: #用class来声明,后面定义的是一个类 - pass - -从这里开始编写一个类,不过这次我们暂时不用Python,而是用貌似伪代码,当然,这个代码跟Python相去甚远。如下: - - class 美女: - 胸围 = 90 - 腰围 = 58 - 臀围 = 83 - 皮肤 = white - 唱歌() - 做饭() - -定义了一个名称为“美女”的类,并约定,没有括号的是属性,带有括号的是方法。 - -这个类仅仅是对美女的通常抽象,并不是某个具体美女。 - -对于一个具体的美女,比如前面提到的苍老师或者王美女,她们都是上面所定义的“美女”那个类的具体化,这在编程中称为“美女类”的实例。 - - 王美女 = 美女() - -用这样一种表达方式,就是将“美女类”实例化了,或者说创建了一个实例“王美女”。对“王美女”这个实例,就可以具体化一些属性,比如胸围;还可以具体实施一些方法,比如做饭。通常可以用这样一种方式表示: - - a = 王美女.胸围 - -用点号`.`的方式,表示王美女胸围的属性,得到的值就是90。 - -另外,还可以通过这种方式给属性赋值,比如 - - 王美女.皮肤 = black - -这样,这个王美女(实例)的皮肤(属性)就是黑色(值)的了。 - -通过实例,也可以访问某个方法,比如: - - 王美女.做饭() - -这就是在执行一个方法,让王美女这个实例做饭。现在也比较好理解了,只有一个具体的实例才能做饭。 - -至此,你是否对类和实例,类的属性和方法有初步理解了呢?如果没有理解,请用苍老师实例化美女类,你一定能理解的。 - -当然,对类的认识不能仅仅停留在此,还要真刀真枪地写代码。 - ------- - -[总目录](./index.md)   |   [上节:函数练习](./205.md)   |   [下节:类(2)](./207.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/207.md b/207.md deleted file mode 100644 index 772b490..0000000 --- a/207.md +++ /dev/null @@ -1,233 +0,0 @@ ->弟兄们,那些离间你们,叫你们跌倒,背乎所学之道的人,我劝你们要留意躲避他们。因为这样的人不服侍我们的主基督,只服侍自己的肚腹,用花言巧语诱惑那些老实人的心。(ROMANS 16:17-18) - -#类(2) - -现在开始不用伪代码了,用真正的python代码来理解类。当然,例子还是要用读者感兴趣的例子。 - -##新式类和旧式类 - -Python是一个不断发展的高级语言(似乎别的语言也是不断发展的,甚至于自然语言也是),导致了Python 2和Python 3两个版本。 - -就是在Python 2中,还有“新式类”和“旧式类(也叫做经典类)”之分。这可真够分裂的。 - -新式类是Python 2.2引进的,在此后的版本中,我们一般用的都是新式类。 - -但是在Python 3中没有这种新旧的问题,它只是“类”。所以,如果你使用的是Python 3,并且也没有兴趣了解历史问题,可以跳过本节内容。不过,如果这样,如果有一天遇到老代码,你会后悔的。 - -书归正传,转到Python 2中,先写一个极简的旧式类。 - - >>> class AA: - ... pass - -这就是一个旧式类。关于定义类的方法,下面会详细说明。读者姑且囫囵吞枣,认同我刚才建立的名为`AA`的类,为了简单,这个类内部什么也不做,就是用`pass`一带而过。但不管怎样,是一个类,而且是一个旧式类(它的另外一个名字是“经典类”,“旧”的时间长了就变成“经典”了)。 - -然后,将这个类实例化或者说建立一个实例(还记得上节中实例化吗?对,就是那个王美女干的事情): - - >>> aa = AA() - -不要忘记,实例化的时候,类的名称后面有一对括号,这跟调用函数的方法是一样的。 - -接下来做如下操作: - - >>> type(AA) - <type 'classobj'> - -`AA()`是调用类,但是`AA`指的就是那个类对象。 - -这一点非常类似于函数,比如函数`foo()`,而`foo`就是那个函数对象。在这里,“一切皆对象”应该再次浮现在你的脑海里。 - -`type(AA)`返回的是这个类对象的属性——`classobj`——`AA`是一个类对象。 - - >>> aa.__class__ - <class __main__.AA at 0xb71f017c> - -`aa`是一个实例,也是一个对象,每个对象都有`__class__`属性,用于显示它的类型。这里返回的结果是`<class __main__.AA at 0xb71f017c>`,从这个结果中可以读出的信息是,`aa`是类AA的实例。 - - >>> type(aa) - <type 'instance'> - -解读一下上面含义: - - `type(aa)`是要看实例`aa`的类型,显示的结果是`instance`,是告诉我们它是一个实例。 - -在这里是不是有点感觉不和谐呢?`aa.__class__`和`type(aa)`都可以查看对象类型,但是它们居然显示不一样的结果。 - -看看我们已经熟悉的一个对象。 - - >>> a = 7 - >>> a.__class__ - <type 'int'> - >>> type(a) - <type 'int'> - -对于整数7,毫无疑问,它是对象。用两种方式查看类型,返回的结果一样。为什么到类(严格讲是旧式类)这里,居然返回不一样呢?太不和谐了。 - -于是乎,就有了新式类,从Python2.2开始,变成这样了: - - >>> class BB(object): - ... pass - ... - - >>> bb = BB() - - >>> bb.__class__ - <class '__main__.BB'> - >>> type(bb) - <class '__main__.BB'> - -终于把两者统一起来了,世界和谐了。 - -这就是新式类和旧式类的不同。 - -当然,不同点绝非仅仅于此,这里只不过提到一个现在能够理解的不同罢了。另外的不同还在于两者对于多重继承的查找和调用方法不同,旧式类是深度优先,新式类是广度优先。可以先不理解,后面会碰到的。 - -“喜新厌旧”是编程界的传统。所以,旧式类就不是我们讨论的内容了。 - -在本书此后的内容中,所有Python 2代码中的类,都是新式类。 - -如何定义新式类呢? - -第一种定义方法,就是如同前面那样: - - >>> class BB(object): - ... pass - ... - -跟旧式类的区别就在于类的名字后面跟上`(object)`,这其实是一种名为“继承”的类的操作,当前的类`BB`是以类`object`为上级的(object被称为父类),即`BB`是继承自类`object`的新类。在python 3中,所有的类自然地都是类`object`的子类,就不用彰显出继承关系了。对了,这里说的有点让读者糊涂,因为冒出来了“继承”、“父类”、“子类”,不用着急,继续向下看。下面精彩,并且能解惑。 - -第二种定义方法,在类的前面写上这么一句:`__metaclass__ == type`,然后定义类的时候,就不需要在名字后面写`(object)`了。 - - >>> __metaclass__ = type - >>> class CC: - ... pass - ... - >>> cc = CC() - >>> cc.__class__ - <class '__main__.CC'> - >>> type(cc) - <class '__main__.CC'> - -两种方法,任你选用,没有优劣之分。但在本书中,如果在Python 2里面定义新式类,都会采用第一种定义方法。 - -##创建类 - -前面我们创建了很简单的类,虽然没有什么太大的用途,但也是创建了类。为了更一般化地说明如何创建类,下面这个类,更具有通常类的结构。 - -Python2: - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): - """ - This is a sample of class. - """ - - def __init__(self, name): - self.name = name - - def get_name(self): - return self.name - - def color(self, color): - d = {} - d[self.name] = color - return d - -Python 3: - - class Person: - """ - This is a sample of class. - """ - - def __init__(self, name): - self.name = name - - def get_name(self): - return self.name - - def color(self, color): - d = {} - d[self.name] = color - return d - -这是一个具有“大众脸”的类,下面对它进行逐条解释。 - -Python 2的代码中,使用了`class Person(object)`,代表着是新式类。而Python 3的代码中,不需要显示地继承object了。 - -`class Person`,这是在声明创建一个名为"Person"的类,其关键词是`class`——对照着学习,创建函数的关键词是`def`——新旧知识类比,更容易理解。类的名称一般用大写字母开头,这是惯例。如果名称是两个单词,那么两个单词的首字母都要大写,例如`class HotPerson`。当然,如果故意不遵循此惯例,也未尝不可,但是,会给别人阅读乃至于自己以后阅读带来麻烦,不要忘记“代码通常是给人看的,只是偶尔让机器执行”。既然大家都是靠右走的,你就别非要在路中间睡觉了。对于Python 2,因为是要继承object,所以要在后面有一个类似函数的参数列表那样的样式`(object)`,Python 3则不需要,但是,不论是Python 2还是Python 3,要继承其它父类的时候,都要在后面写上`(father_class_name)`——当然,继承的问题是后文了。这一切结束之后,本行的最后就是冒号`:`。 - -声明了类的名字(或者也包括继承的父类),然后就是类里面的代码块。秉承函数的做法,类里面的代码块,相对类定义类的那一行,也是要缩进四个空格——四个空格,尽可能不适用tab键,老老实实敲四个空格,否则后患无穷,绝非危言耸听。 - -再看类里面的代码,那些东西看起来并不陌生,你一眼就认出它们了——都是`def`这个关键词开头——就是已经学习过的函数。没错,它们就是函数。不过,仔细观察,会发现这些函数有点跟以往的函数不同,它们的参数中,都有`self`。这点差别,也是类中这种函数的特色,为了跟以往的函数有所却别,所以很多程序员喜欢把类里面的函数叫做“方法”——暂且不要纠结在名称上,虽然我看到过有人撰文专门分析了“方法”和“函数”的区别。但是,我倒是认为这不重要,重要的是类的中所谓“方法”和前面的函数,在数学角度看,丝毫没有区别。所以,你尽可以称之为函数。当然,听到有人说方法,也不要诧异和糊涂。它们本质是一样的。 - -需要再次提醒,函数的命名方法是以`def`发起,并且函数名称首字母不要用大写,可以使用`aa_bb`的样式,也可以使用`aaBb`的样式,一切看你的习惯了。 - -在上述代码示例中,函数(方法)的参数必须包括`self`参数,并且作为默认的第一个参数。这是需要注意的地方。至于它的用途,继续学习即可知道。 - -下面对类里面的每个方法(函数)做一个简要的阐述。 - -`def __init__(self, name`,这个方法是比较特殊的。当从命名方式上看,就不一般——用双下划线开头和结尾——这样的方法,在类里面还有很多,我们统称为“特殊方法”。对于`__init__()`这个特殊方法,通常还给它取了一个名字——构造函数——这是通常的叫法,但是我觉得这个名字不好,在本书中我把它叫做做**初始化函数**,因为从字面意义上看,它对应的含义是初始化,并且在Python中它的作用和其它语言比如Java中的构造函数还不完全一样,Python中的真正构造函数是`__new__()`。 - ->所谓初始化,就是让类有一个基本的面貌,而不是空空如也。做很多事情,都要初始化,让事情有一个具体的起点状态。比如你要喝水,必须先初始化杯子里面有水。在Python的类中,初始化就担负着类似的工作。在类实例化时首先就执行初始化函数。 - -此例子中的初始化函数的参数除了`self`,还有一个`name`,在这个类被实例化的同时,要传给它一个值。 - -在初始化函数里面,`self.name = name`的含义是要建立实例的一个属性,这个属性的名字也是`name`,这个属性的值等于参数`name`所传入的值。特别注意,这里的属性`self.name`和参数`name`是纯属巧合,你也可以设置成`self.xxx = name`,只不过这样写,总感觉不是很方便。 - -`def get_name(self)`和`def color(self, color)`是类里面的另外两个方法,这两个方法的除了第一个参数必须是`self`之外,别的跟函数就没有什么区别了。只是需要关注的是两个方法中都用到了`self.name`,这个属性只能在类里面这样使用。 - -以上就将我们所建立的类进行了简要的分析。这也是建立一个类的基本方法。 - -##实例 - -类是对象的定义,实例才是真实的物件。比如“人”是一个类,但是“人”终究不是具体的某个活体,只有“张三”、“李四”才是具体的物件,但他们具有“人”所定义的属性和方法。“张三”、“李四”就是“人”的实例。 - -承接前面的类,先写出调用该类的代码。 - -Python 2: - - if __name__ == "__main__": - girl = Person("canglaoshi") - print girl.name - name = girl.get_name() - print name - her_color = girl.color("white") - print her_color - -Python 3: - - if __name__ == "__main__": - girl = Person("canglaoshi") - print(girl.name) - name = girl.get_name() - print(name) - her_color = girl.color("white") - print(her_color) - -`girl = Person('canglaoshi')`是利用上面的类创建实例。 - -创建实例,调用类`Person()`,首先就执行初始化函数,初始化函数有两个参数`self`和`name`,其中`self`是默认参数,不需要传值;`name`则需要给它传值,所以用`Person('canglaoshi')`的样式,就是为初始化函数中的`name`参数传值了,即`name = 'canglaoshi'`。 - -`girl`就是一个实例,它有属性和方法。 - -先说属性。实例化过程中,首先要执行`__init__()`,并通过参数`name`,使得实例属性`self.name = 'canglaoshi'`。这里先稍微提一下`self`的作用,它实质上就是实例对象本身,当你用实例调用方法的时候,由解释器将那个实例传递给方法,所以不需要显示地为这个参数传值。那么`self.name`也顺理成章地是实例的属性了。所以`print girl.name`或者`print(girl.name)`的结果应该是`canglaoshi`。 - -这就是初始化的功能。简而言之,通过初始化函数,确定了这个实例的“基本属性”(实例是什么样子的)。 - -`girl.get_name()`是通过实例来调用方法,也可以说建立了实例`girl`,这个实例就具有了`get_name()`方法。虽然在类里面,该方法的第一个参数是`self`,跟前面所述原因一样,通过实例调用该方法——实例方法——的时候,不需要显示地为`self`传递值,所以,在这里就不需要写任何参数。观察类中这个方法的代码可知,它的功能就是返回实例属性`self.name`的值,所以`print name`或者`print(name)`的结果是`canglaoshi`。 - -`girl.color("white")`之所以要给参数传值,是因为`def color(self, color)`中有参数`color`。另外,这个方法里面也使用了`self.name`实例属性。最终该方法返回的是一个字典。所以`print her_color`或者`print(her_color)`的结果是`{'canglaoshi': 'white'}`。 - -刚才以`girl = Person("canglaoshi")`的方式,建立了一个实例,仿照它,还可以建立更多的实例,比如`boy = Person("zhangsan")`等等。也就是一个类,可以建立多个实例。所以“类提供默认行为,是实例的工厂”(源自Learning Python),这句话道破了类和实例的关系。所谓工厂,就是可以用同一个模子做出很多具体的产品。类就是那个模子,实例就是具体的产品。 - -这就是通过类建立实例,并且通过实例来调用其属性和方法的过程。 - ------- - -[总目录](./index.md)   |   [上节:类(1)](./206.md)   |   [下节:类(3)](./208.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - - diff --git a/208.md b/208.md deleted file mode 100644 index 54966ed..0000000 --- a/208.md +++ /dev/null @@ -1,451 +0,0 @@ ->世人凭自己的智慧,既不认识神,神就乐意用人所当作愚拙的道理拯救那些信的人,这就是神的智慧了。犹太人是要神迹,希腊人是求智慧;我们却是传钉十字架的基督。(1 CORINTHIANS 1:21-22) - -#类(3) - -在上一节中,对类有了基本的或者说是模糊的认识,为了能够对类有更深刻的认识,本节要深入到一些细节。 - -##类属性 - -在交互模式下,创建一个简单的类。 - - >>> class A(object): #Python 3: class A: - ... x = 7 - ... - -这个类中的代码,没有任何方法,只有一个`x = 7`,当然,如果愿意还可以写别的。 - -先不用管为什么,继续在交互模式中敲代码。 - - >>> A.x - 7 - -`A`是刚刚建立的类的名字,`x`是那个类中的一个变量,它引用的对象是整数`7`。通过`A.x`的方式,就能得到整数`7`。像这样的,类中的`x`被称为类的属性,而`7`是这个属性的值。`A.x`是调用类属性的方式。 - -这里谈到了“属性”,不要忽视这个词语,它是用在很多领域的一个术语,比如哲学有一些哲学家认为,属性所描述的是种类性质(例如颜色),属性的性质就是所谓的值(比如红色)。 - -哲学真的是“科学之母”呀,把上面的理解套用过来,就是我们现在讨论的类属性。`x`是类`A`的性质,它的值是`7`。如果还抽象,我就不得不寄出大招了。 - - >>> class Girl(object): #Python 3: class Girl: - breast = 90 - -在真实世界中,breast就是Girl的属性,你到某度上去搜索一下有关的关键词,就发现breast是一个重要属性了。所以,如果要建立类`Girl`,它必须有`breast`属性。那么这个属性的值,就关系到某类Girl的颜值了。这里的类`Girl`都是`breast`为90的,你可以想象其颜值高低了,是否符合你的喜好。 - -大招一出,为之一振,顿时困意消退。下面就请回到前面那个类`A`,继续枯燥地学习。 - -如果要调用类的某个属性——简称:类属性——其方法就是用半角的英文句号`.`,如前面所演示的`A.x`。类属性仅与其所定义的类绑定,并且这种属性,本质上说就是类中的变量,它的值不依赖于任何实例,只是由类中所写的变量赋值语句确定,比如`Girl`类,不管你用这个类建立的实例是东施还是西施,类属性`Girl.breast`都是90。所以,这个类属性还有别的名字,如静态变量或者静态数据。 - -在本书中,已经多次提到“万物皆对象”的观念,类也不例外,它也是对象。只有对象,才具有属性和方法。而属性是可以修改或者增加、删除的。既然如此,对刚才的类`A`或者类`Girl`,你都可以对目前其有的属性进行修改,也可以增加新的属性。 - - >>> A.y = 9 - >>> A.y - 9 - -对类`A`增加了一个新的属性,并且赋给了值。然后删除一个已有属性。 - - >>> del A.x - >>> A.x - Traceback (most recent call last): - File "<pyshell#14>", line 1, in <module> - A.x - AttributeError: type object 'A' has no attribute 'x' - -`A.x`属性删除之后,再调用,就出现异常了。但是`A.y`依然存在。 - - >>> A.y - 9 - -你也可以修改当前已有的类属性。 - - >>> Girl.breast = 40 - >>> Girl.breast - 40 - -`breast`是我们在类`Gril`中自己定义的属性,其实在一个类建立的同时,Python也让这个类具有了一些默认的属性。可以用我们熟知的`dir()`来查看类的所有属性(也包括方法)。 - - >>> dir(Girl) - ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'breast'] - -仔细观察,上面有一个特殊的属性`__dict__`,用“特殊”来修饰这个属性,是因为它也是以双下划线开头和结尾,就类似你已经见过的一个特殊方法`__init__()`一样。在类里面,凡以双下划线开头和结尾命名的属性或者方法,我们都会说它是“特殊”的。 - -对于Python 2和Python 3,上述显示结果会略有不同,其差别主要在于特殊属性和方法上。所以读者在自己的版本中操作的时候,不要执拗于上述结果。但是,自定义的属性`breast`是肯定都存在的。 - - >>> Girl.__dict__ - mappingproxy({'breast': 40, '__weakref__': <attribute '__weakref__' of 'Girl' objects>, '__dict__': <attribute '__dict__' of 'Girl' objects>, '__module__': '__main__', '__doc__': None}) - -对于不同版本的Python,上述显示结果也有所差异,但你都能看到属性的详细信息。类的特殊属性`__dict__`所显示的是这个类的属性名称以及该属性的完整数据。 - -下面列出类的几种特殊属性的含义,读者可以一一查看。 - -- `C.__name__`:以字符串的形式,返回类的名字,注意这时候得到的仅仅是一个字符串,它不是一个类对象 -- `C.__doc__`:显示类的文档 -- `C.__base__`:类C的所有父类。如果是按照上面方式定义的类,应该显示`object`,因为以上所有类都继承了它。等到学习了“继承”,再来看这个属性,内容就丰富了 -- `C.__dict__`:以字典形式显示类的所有属性 -- `C.__module__`:类所在的模块 - -稍微解释`C.__module__`。承接前面建立的类`Gril`,做如下操作: - - >>> Girl.__module__ - '__main__' - -说明这个类所述的模块是`__main__`,换个角度,类`Girl`的全称是`__main__.Girl`。还记得我们曾经用过标准库中的math吗?它是一个模块,它下面的内容都是用类似`math.pi`的样式读取。两者是同样道理,只不过模块名称变化了。 - - >>> from math import sin - >>> sin.__module__ - 'math' - -这里的`sin`全称就是`math.sin`,所以你也可以`import math`,然后使用`math.sin`。以上两者是一样的道理。 - -最后对类属性进行总结: - -1. 类属性跟类绑定,可以自定义、删除、修改值,也可以随时增加类属性 -2. 类属性不因为实例变化而发生变化 -3. 每个类都有一些特殊属性,通常情况特殊属性是不需要修改的,虽然有的特殊属性可以修改,比如`C.__doc__` - -对于类,除了属性,还有方法。但是类中的方法,因为牵扯到实例,所以,我们还是通过研究实例,理解类中的方法 - -##创建实例 - -创建实例并不是困难的事情,只需要通过调用类就能实现。 - - >>> canglaoshi = Girl() - >>> canglaoshi - <__main__.Girl object at 0x0000000003726C18> - -这就创建了一个实例`canglaoshi`。 - -请读者注意,调用类的方法和调用函数的方法类似。如果仅仅写`Girl()`也是创建了一个实例,如下所示: - - >>> Girl() - <__main__.Girl object at 0x00000000035262E8> - -而`canglaoshi = Girl()`本质上就是将变量`canglaoshi`与实例对象`Girl()`建立引用关系,这种关系同以前见过的赋值语句`a = 2`是同样的效果。 - -那么,一个实例的建立过程是怎样进行的呢? - -再次启用上节中写的类。 - -Python2: - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): - """ - This is a sample of class. - """ - - def __init__(self, name): - self.name = name - - def get_name(self): - return self.name - - def color(self, color): - d = {} - d[self.name] = color - return d - -Python 3: - - class Person: - """ - This is a sample of class. - """ - - def __init__(self, name): - self.name = name - - def get_name(self): - return self.name - - def color(self, color): - d = {} - d[self.name] = color - return d - -实例还是用`girl = Person('canglaoshi')`,当然,你建立别的实例也是可以的。利用一个类,可以建立无限多个实例,所以有一种说法,类是实例的工厂。 - -创建实例,就是调用类。当类被调用之后: - -1. 创建实例对象; -2. 检查是否有——专业的说法:是否实现——`__init__()`方法。如果没有,则返回实例对象; -3. 如果有`__init__()`,则调用该方法,并且将实例对象作为第一个参数`self`传递进去 - -`__init__()`作为一个特殊方法,是比较特殊的,在它里面,一般是规定一些属性或者做一些初始化要让类具有的一些特征,但是,它没有`return`语句。观察别的方法都是可以有这个的。 - - class Foo: - def __init__(self): - print("I am in init()") - return 1 - - bar = Foo() - -假如写了上面的代码,在初始化函数中有`return`语句,又会如何? - - I am in init() - Traceback (most recent call last): - File "F:/MyGitHub/StarterLearningPython/2code/20801p3.py", line 7, in <module> - bar = Foo() - TypeError: __init__() should return None, not 'int' - -这就是运行结果,出现了异常,并且明确告知“__init__() should return None”,所以不能有`return`,如果非要有,也得是`return None`,索性就不要写了。 - -由此可知,对于`__init__()`初始化函数,除了第一个参数是并且必须有`self`、不能有`return`语句这两个特征之外,其它方面和普通函数就没有什么异样了。比如参数和里面的属性,你可以这样来做: - - class Person: - def __init__(self, name, lang="golang", website="www.google.com"): - self.name = name - self.lang = lang - self.website = website - self.email = "qiwsir@gmail.com" - -实例创建好之后,就要研究关于实例的内容,首先看实例属性 - -##实例属性 - -与类属性类似,实例所具有的属性叫做“实例属性”。 - -还是用那个简单的类,虽然有点枯燥。 - - >>> class A(object): #Python 3: class A: - ... x = 7 - ... - >>> foo = A() - -类已经有一个属性`A.x = 7`,那么由这个类所建立的实例也具有这个属性。 - - >>> foo.x - 7 - -除了`foo.x`这个属性之外,实例也具有其它的属性和方法,依然能使用`dir()`方法来查看。 - - >>> dir(foo) - ['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'x'] - -不同Python版本显示结果稍微有差异,但是那个名为`x`的属性是都有的,这点上还是跟类属性类似的。并且实例也有一些特殊属性,比如: - - >>> foo.__dict__ - mappingproxy({'__dict__': <attribute '__dict__' of 'A' objects>, '__doc__': None, '__weakref__': <attribute '__weakref__' of 'A' objects>, '__module__': '__main__', 'x': 7}) - -实例属性和类属性的一个最大不同,在于实例属性可以随意更改,不用有什么担心(前面我们建议,尽可能不要修改类属性)。 - - >>> foo.x += 1 - >>> foo.x - 8 - -这是把实例属性修改了。但是,类属性并没有因为实例属性修改而变化,正如前文所讲,类属性是跟类绑定,不受实例影响。 - - >>> A.x - 7 - -上述结果说明“类属性与实例属性无关”。 - -那么,`foo.x += 1`的本质是什么呢? - -其本质是该实例foo又建立了一个新的属性,但是这个属性(新的foo.x)居然与原来的属性(旧的foo.x)重名,所以,原来的foo.x就被“遮盖了”,只能访问到新的foo.x,它的值是8. - - >>> foo.x - 8 - >>> del foo.x - >>> foo.x - 7 - -既然新的foo.x“遮盖”了旧的foo.x,如果删除它,旧的不就显现出来了?的确是。删除之后,foo.x就还是原来的值。此外,还可以通过建立一个不与它重名的实例属性: - - >>> foo.y = foo.x + 1 - >>> foo.y - 8 - >>> foo.x - 7 - -foo.y就是新建的一个实例属性,它没有影响原来的实例属性foo.x。其实,在这里你也完全可以依照变量和对象的关系来理解上述实例属性和数值(对象)的关系。 - -但是,类属性能够影响实例属性,这是因为实例就是通过调用类来建立的。 - - >>> A.x += 1 - >>> A.x - 8 - >>> foo.x - 8 - -如果是同一个属性`x`,实例属性跟着类属性而改变。 - -以上所言,是指当类中变量引用的是不可变数据。 - -如果类中变量引用可变数据,情形会有所不同。因为可变数据能够进行原地修改。 - - >>> class B(object): - ... y = [1, 2, 3] - -这次定义的类中,变量引用的是一个可变对象。 - - >>> B.y #类属性 - [1, 2, 3] - >>> bar = B() - >>> bar.y #实例属性 - [1, 2, 3] - - >>> bar.y.append(4) - >>> bar.y - [1, 2, 3, 4] - >>> B.y - [1, 2, 3, 4] - - >>> B.y.append("aa") - >>> B.y - [1, 2, 3, 4, 'aa'] - >>> bar.y - [1, 2, 3, 4, 'aa'] - -从上面的比较操作中可以看出,当类中变量引用的是可变对象是,类属性和实例属性都能直接修改这个对象,从而影响另一方的值。 - -如果增加一个类属性,相应的也增加了一个实例属性, - - >>> A.y = "hello" - >>> foo.y - 'hello' - -反过来,如果增加通过实例增加属性呢?看下面: - - >>> foo.z = "python" - >>> foo.z - 'python' - >>> A.z - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: type object 'A' has no attribute 'z' - -类并没有收纳这个属性。 - -以上所显示的实例属性或者类属性,都源自于类中的变量所引用的值,或者说是静态数据,尽管能够通过类或者实例增加新的属性,其值也是静态的。 - -还有一类实例属性的生成方法,就是在实例创建的时候,通过`__init__()`初始化函数建立,这种建立则是动态。 - -##`self`的作用 - -类里面的任何方法,第一个参数是self,但是在创建实例的时候,似乎没有这个参数什么事儿(不显示地写出来),那么`self`是干什么的呢? - -`self`是一个很神奇的参数。 - -将前文的`Person`类简化一下, - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): #Python 3: class Person: - def __init__(self, name): - self.name = name - print self #Python 3: print(self) - print type(self) #Python 3: print(type(self)) - -其它部分省略。 - -当创建实例时候,首先要执行构造函数,同时就打印新增的两条。结果是: - - >>> girl = Person("canglaoshi") - <__main__.Person object at 0x0000000003146C50> - <class '__main__.Person'> - -这说明`self`就是类`Person`的实例,再看看刚刚建立的那个实例`girl`。 - - >>> girl - <__main__.Person object at 0x0000000003146C50> - >>> type(girl) - <class '__main__.Person'> - -`self`和`girl`所引用的实例对象一样。 - -当创建实例的时候,实例变量作为第一个参数,被Python解释器悄悄地传给了`self`,所以我们说在初始化函数中的`self.name`就是实例的属性。 - -注意,`self.name`中的name和初始化函数的参数`name`没有任何关系,它们两个一样,只不过是一种起巧合(经常巧合,其实是为了省事和以后识别方便,故意让它们巧合),或者说是写代码的人懒惰,不想另外取名字而已,无他。当然,如果写成`self.xxxooo = name`,也是可以的。 - - >>> girl.name - 'canglaoshi' - -这是我们得到的实例属性,但是,在类的外面不能这样用: - - >>> self.name - Traceback (most recent call last): - File "<pyshell#23>", line 1, in <module> - self.name - NameError: name 'self' is not defined - -##数据流转 - -将类实例化,通过实例来执行各种方法,应用实例的属性,是最常见的操作。 - -所以,对此过程中的数据流转一定要弄明白。 - -把前文的类再稍微修改,如下: - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): #Python 3: class Person: - def __init__(self, name): - self.name = name - - def getName(self): - return self.name - - def breast(self, n): - self.breast = n - - def color(self, color): - print "%s is %s" % (self.name, color) #Python 3: print("{0} is {1}".format(self.name, color)) - - def how(self): - print "%s breast is %s" % (self.name, self.breast) #Python 3: print("{0} breast is {1}".format(self.name, self.breast)) - - girl = Person('canglaoshi') - girl.breast(90) - - girl.color("white") - girl.how() - -运行后结果: - - $ python 20701.py - canglaoshi is white - canglaoshi breast is 90 - -一图胜千言,有图有真相。通过图示,我们看一看数据的流转过程。 - -![](./2images/20801.png) - -创建实例`girl = Person('canglaoshi')`,注意观察图上的箭头方向。`girl`这个引用实例对象的变量传给了`self`,即`self`也引用了实例对象。简化理解为:self是实例(不求准确,只求表面现象),实例变量主外,self主内。 - -`"canglaoshi"`是一个具体的数据,通过初始化函数中的`name`参数,传给`self.name`——准确地说谁传了对象引用给实例的属性`name`。前面已经讲过,`self`是一个实例,可以为它设置属性,`self.name`就是一个属性,经过初始化函数,这个属性的值由参数`name`传入,现在就是`"canglaoshi"`。 - -在类`Person`的其它方法中,都是以`self`为第一个或者唯一一个参数。注意,在Python中,这个参数要显明写上,在类内部是不能省略的。这就表示所有方法都承接`self`实例对象,它的属性也被带到每个方法之中。例如在方法里面使用`self.name`即是调用前面已经确定的实例属性数据。当然,在方法中,还可以继续为实例`self`增加属性,比如`self.breast`。这样,通过`self`实例,就实现了数据在类内部的流转。 - -如果要把数据从类里面传到外面,可以通过`return`语句实现。如上例子中所示的`getName`方法。 - -因为引用实例对象的变量`girl`和`self`,所以,在类里面也可以用`girl`代替`self`。例如,做如下修改: - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): #Python 3: class Person: - def __init__(self, name): - self.name = name - - def getName(self): - #return self.name - return girl.name #修改成这个样子,但是在编程实践中不要这么做。 - - girl = Person('canglaoshi') - name = girl.getName() - print name - -运行之后,打印: - - canglaoshi - -这个例子说明,在实例化之后,`girl`和`self`都引用了实例对象。但是,提醒读者,千万不要用上面的修改了的那个方式。因为那样写使类没有独立性,这是大忌。 - ------- - -[总目录](./index.md)   |   [上节:类(2)](./207.md)   |   [下节:类(4)](./238.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/209.md b/209.md deleted file mode 100644 index 7e4b684..0000000 --- a/209.md +++ /dev/null @@ -1,313 +0,0 @@ ->你们仍是属肉体的,因为在你们中间有嫉妒分争,这岂不是属乎肉体,照着世人的样子行吗?...我栽种了,亚波罗浇灌了,惟有神叫他生长。(1 CORINTHIANS 3:3,6) - -#类(5) - -##继承 - -继承——OOP的三个特征:多态、继承、封装——是类的重要内容。 - -继承,也是人的贪欲。 - -在现实生活中,“继承”意味着一个人从另外一个人那里得到了一些什么,“继承”之后,自己就在所继承的方面省力气、不用劳神费心,能轻松得到。比如继承了万贯家产,就一夜之间变成富n代;如果继承了“革命先烈的光荣传统”,就红色? - -当然,生活中的继承或许不那么严格,但是编程语言中的继承是有明确规定和稳定的预期结果的。 - -###概念 - ->继承(Inheritance)是面向对象软 件技术当中的一个概念。如果一个类别A“继承自”另一个类别B,就把这个A称为“B的子类别”,而把B称为“A的父类别”,也可以称“B是A的超类”。 - ->继承可以使得子类别具有父类别的各种属性和方法,而不需要再次编写相同的代码。在令子类别继承父类别的同时,可以重新定义某些属性,并重写某些方法,即覆盖父类别的原有属性和方法,使其获得与父类别不同的功能。另外,为子类别追加新的属性和方法也是常见的做法。 (源自维基百科) - -由上面对继承的表述,可以简单总结出继承的意图或者好处: - -- 可以实现代码重用,但不是仅仅实现代码重用,有时候根本就没有重用 -- 实现属性和方法继承 - -诚然,以上也不是全部,随着后续学习,对继承的认识会更深刻,例如网友令狐虫持有这样的观点: - ->从技术上说,OOP里,继承最主要的用途是实现多态。对于多态而言,重要的是接口继承性,属性和行为是否存在继承性,这是不一定的。事实上,大量工程实践表明,重度的行为继承会导致系统过度复杂和臃肿,反而会降低灵活性。因此现在比较提倡的是基于接口的轻度继承理念。这种模型里因为父类(接口类)完全没有代码,因此根本谈不上什么代码复用了。 - ->在Python里,因为存在Duck Type,接口定义的重要性大大的降低,继承的作用也进一步的被削弱了。 - ->另外,从逻辑上说,继承的目的也不是为了复用代码,而是为了理顺关系。 - -他是大牛,或许读者感觉比较高深,没关系,随着你的实践经验的积累,你也能对这个问题有自己独到的见解。 - -或许你也要问我的观点是什么?我的观点就是:走着瞧!怎么理解?继续向下看,只有你先深入这个问题,才能跳到更高层看这个问题。小马过河的故事还记得吧?只有亲自走入河水中,才知道河水的深浅。 - -在Python 2 中,我们这样定义新式类: - - class NewStyle(object): - pass - -这就是典型的继承。这个类继承了`object`,`object`是所有类的父类。这种定义是从Python 2.2开始的,它解决了以往的类和类型的不统一的问题,自那以后,类就是一种数据类型了。 - -发展到Python 3,类的定义变为: - - class NewStyle: - pass - -不再显示地写出`object`,是因为Python 3中的所有类,都隐式地继承了`object`。 - -总而言之,`object`就是所有类的父类。 - -###单继承 - -这是只从一个父类那里继承。 - - >>> class P(object): #Python 3: class P: - pass - - >>> class C(P): - pass - -寥寥数“键”,就实现了继承。 - -类`P`是一个通常的类,只不过在Python的两个版本中,定义样式稍微不同罢了。类`C`(注意字母大写)则是定义的一个子类,它用`C(P)`的形式继承了类`P`——称之为父类——虽然父类什么也没有。 - -子类`C`继承父类`P`的方式就是在类名称后面的括号里面写上父类的名字,不管是Python的哪个版本。既然继承了父类,那么父类的一切都带入到了子类,所以在Python 2中就没有必要重复写`object`了,它已经通过父类`P`被继承到子类`C`了;Python 3中,要显式的写上父类的名字,除了`object`,它不会隐式继承任何其它类。 - - >>> C.__base__ - <class '__main__.P'> - -还记得类的一个特殊属性吗?由`C.__base__`可以得到类的父类。刚才的操作,就显示出类`C`的父类是`P`。 - -为了深入理解“继承”的作用,让父类做一点点事情。 - - >>> class P(object): #Python 3: class P: - def __init__(self): - print "I am a rich man." #Python 3: print("I am a rich man.") - - >>> class C(P): - pass - - >>> c = C() - I am a rich man. - -父类`P`中增加了初始化函数,然后子类`C`继承它。我们已经熟知,当建立实例的时候,首先要执行类中的初始化函数。因为子类`C`继承了父类,就把父类中的初始化函数拿到了子类里面,所以在`c = C()`的时候,执行了父类中定义的初始化函数——这就是继承,而且是从一个父类那里继承来的,所以也称之为单继承。 - -看一个比较完成的程序示例。 - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): #Python 3: class Person: - def __init__(self, name): - self.name = name - - def height(self, m): - h = dict((["height", m],)) - return h - - def breast(self, n): - b = dict((["breast", n],)) - return b - - class Girl(Person): - def get_name(self): - return self.name - - if __name__ == "__main__": - cang = Girl("canglaoshi") - print cang.get_name() #Python 3: print(cang.get_name()),下同,从略 - print cang.height(160) - print cang.breast(90) - -上面这个程序,保存之后运行: - - canglaoshi - {'height': 160} - {'breast': 90} - -对以上程序进行解释: - -首先定义了一个类`Person`,把它作为父类。然后定义了一个子类`Girl`,继承了`Person`。 - -在子类`Girl`中,只写了一个方法`get_name()`,但是因为是继承了`Person`,那么`Girl`就全部拥有了`Person`中的方法和属性。子类`Girl`的方法`get_name()`中,使用了属性`self.name`,但是在类`Girl`中,并没有什么地方显示创建了这个属性,就是因为继承`Person`类,在父类中有初始化函数。所以,当使用子类创建实例的时候,必须传一个参数`cang = Girl("canglaoshi")`,然后调用实例方法`cang.get_name()`。对于实例方法`cang.height(160)`,也是因着继承的缘故使然。 - -在上面的程序中,子类`Girl`里面没有与父类`Person`重复的属性和方法,但有时候,会遇到这样的情况。 - - class Girl(Person): - def __init__(self): - self.name = "Aoi sola" - - def get_name(self): - return self.name - -在子类里面,也写了一个初始化函数,并且定义了一个实例属性`self.name = "Aoi sola"`。在父类中,也有初始化函数。在这种情况下,再次执行程序。 - -在Python 2中出现异常: - - TypeError: __init__() takes exactly 1 argument (2 given) - -Python 3中也有异常: - - TypeError: __init__() takes 1 positional argument but 2 were given - -不管哪个版本中的异常信息,都告诉我们,创建实例的时候,传入的参数个数多了。根源在于,子类`Girl`中的初始化函数,只有一个`self`。因为跟父类中的初始化函数重名,虽然继承了父类,但是将父类中的初始化函数覆盖了,导致父类中的`__init__()`在子类中不再实现。所以,实例化子类,不应该再显式地传参数。 - - if __name__ == "__main__": - cang = Girl() #不在显示地传参数 - print cang.get_name() #Python 3: print(cang.get_name()),下同,从略 - print cang.height(160) - print cang.breast(90) - -如此修改之后,再运行,则显示结果: - - Aoi sola - {'height': 160} - {'breast': 90} - -从结果中不难看出,如果子类中的方法或属性覆盖了父类(即与父类同名),那么就不在继承父类的该方法或者属性。 - -像这样,子类`Girl`里面有与父类`Person`同样名称的方法和属性,也称之为对父类相应部分的重写。重写之后,父类的相应部分不再被继承到子类,没有重写的部分,在子类中依然被继承,从上面程序可以看出来此结果。 - -还有一种可能存在,就是重写之后,如果要在子类中继承父类中相应部分,怎么办? - -##调用覆盖的方法 - -承接前面的问题和程序,可以对子类`Gril`做出这样的修改。 - - class Girl(Person): - def __init__(self, name): - Person.__init__(self, name) - self.real_name = "Aoi sola" - - def get_name(self): - return self.name - -请读者注意观察`Girl`的初始化方法,与前面的有所不同。为了能够使用父类的初始化方法,以类方法的方式调用`Person.__init__(self, name)`。另外,在子类的`__init__()`的参数中,要增加相应的参数`name`。这样就回答了前面的问题。 - -实例化子类,以下面的方式运行程序: - - if __name__ == "__main__": - cang = Girl("canglaoshi") - print cang.real_name - print cang.get_name() - print cang.height(160) - print cang.breast(90) - -执行结果为: - - Aoi sola - canglaoshi - {'height': 160} - {'breast': 90} - -就这样,使用类方法的方式,将父类中被覆盖的方法再次在子类中实现。 - -但上述方式有一个问题,如果父类的名称因为某种目前你无法预料的原因修改了,子类中该父类的的名称也要修改,有如果程序比较复杂或者忘记了,就会出现异常。于是乎,就有了更巧妙的方法——`super`。再重写子类。 - - class Girl(Person): - def __init__(self, name): - #Person.__init__(self, name) - super(Girl, self).__init__(name) - self.real_name = "Aoi sola" - - def get_name(self): - return self.name - -仅仅修改一处,将`Person.__init__(self, name)`修改为`super(Girl, self).__init__(name)`。执行程序后,显示的结果与以前一样。 - -关于`super`,有人做了非常深入的研究,推荐读者阅读[《Python’s super() considered super! 》](https://rhettinger.wordpress.com/2011/05/26/super-considered-super/),文中已经探究了`super`的工作过程。读者如果要深入了解,可以阅读这篇文章。 - -###多重继承 - -前面所说的继承,父类都只有一个。但,继承可以来自多个“父”,这就是多重继承。 - -所谓多重继承,就是指某一个子类的父类,不止一个,而是多个。比如: - - #!/usr/bin/env python - # coding=utf-8 - - class Person(object): #Python 3: class Person: - def eye(self): - print "two eyes" #Python 3: print("two eyes"),下同,从略 - - def breast(self, n): - print "The breast is: ",n - - class Girl(object): #Python 3: class Gril: - age = 28 - def color(self): - print "The girl is white" - - class HotGirl(Person, Girl): - pass - - if __name__ == "__main__": - kong = HotGirl() - kong.eye() - kong.breast(90) - kong.color() - print kong.age - -在这个程序中,前面有两个类`Person`和`Girl`,然后第三个类`HotGirl`继承了这两个类,注意观察继承方法,就是在类的名字后面的括号中把所继承的两个类的名字写上。但是第三个类中什么方法也没有。 - -然后实例化类`HotGirl`,既然继承了上面的两个类,那么那两个类的方法就都能够拿过来使用。保存程序,运行一下看看 - - $ python 20902.py - two eyes - The breast is: 90 - The girl is white - 28 - -值得注意的是,这次在类`Girl`中,有一个`age = 28`,在对HotGirl实例化之后,因为继承的原因,这个类属性也被继承到`HotGirl`中,因此通过实例属性`kong.age`一样能够得到该数据。 - -由上述两个实例,已经清楚看到了继承的特点,即将父类的方法和属性全部承接到子类中;如果子类重写了父类的方法,就使用子类的该方法,父类的被遮盖。 - -多重继承的顺序很必要了解。 - -比如,如果一个子类继承了两个父类,并且两个父类有同样的方法或者属性,那么在实例化子类后,调用那个方法或属性,是属于哪个父类的呢?造一个没有实际意义,纯粹为了解决这个问题的程序: - - #!/usr/bin/env python - # coding=utf-8 - - class K1(object): #Python 3: class K1: - def foo(self): - print "K1-foo" #Python 3: print("K1-foo"),下同,从略 - - class K2(object): #Python 3: class K2: - def foo(self): - print "K2-foo" - def bar(self): - print "K2-bar" - - class J1(K1, K2): - pass - - class J2(K1, K2): - def bar(self): - print "J2-bar" - - class C(J1, J2): - pass - - if __name__ == "__main__": - print C.__mro__ - m = C() - m.foo() - m.bar() - -这段代码,保存后运行: - - $ python 20904.py - (<class '__main__.C'>, <class '__main__.J1'>, <class '__main__.J2'>, <class '__main__.K1'>, <class '__main__.K2'>, <type 'object'>) - K1-foo - J2-bar - -代码中的`print C.__mro__`是要打印出类的继承顺序。从上面清晰看出来了。如果要执行`foo()`方法,首先看`J1`,没有,看`J2`,还没有,看`J1`里面的`K1`,有了,即C==>J1==>J2==>K1;`bar()`也是按照这个顺序,在`J2`中就找到了一个。 - -这种对继承属性和方法搜索的顺序称之为“广度优先”。 - -Python 2的新式类,以及Python 3中都是按照此顺序原则搜寻属性和方法的。 - -但是,在旧式类中,是按照“深度优先”的顺序的。因为后面读者也基本不用旧式类,所以不举例。如果读者愿意,可以自己模仿上面代码,探索旧式类的“深度优先”含义。 - -导致新式类和Python 3中继承顺序较旧式类有所变化,其原因是mro(Method Resolution Order)算法,读者对此若有兴趣,可以到网上搜索关于这个算法的内容进行了解。 - ------- - -[总目录](./index.md)   |   [上节:类(4)](./238.md)   |   [下节:多态和封装](./211.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/210.md b/210.md deleted file mode 100644 index 68af879..0000000 --- a/210.md +++ /dev/null @@ -1,367 +0,0 @@ ->所以,自己以为站得稳的,须要谨慎,免得跌倒。你们所遇见的试探,无非是人所能受的。神是信实的,必不叫你们受试探过于所能受的。在受试探的时候,总要给你们开一条出路,叫你们能忍受得住。(1 CORINTHIANS 10:12-13) - -#类(5) - -在前面几节讨论类的时候,经常要将类实例化,然后通过实例来调用类的方法(函数)。在此,把前面经常做的这类事情概括一下: - -- 方法是类内部定义函数,只不过这个函数的第一个参数是self。(可以认为方法是类属性,但不是实例属性) -- 必须将类实例化之后,才能通过实例调用该类的方法。调用的时候在方法后面要跟括号(括号中默认有self参数,但是不写出来。) - -通过实例调用方法(在前面曾用了一个不严谨的词语:实例方法),我们称这个方法**绑定**在实例上。 - -##调用绑定方法 - -前面一直在这样做。比如: - - class Person(object): - def foo(self): - pass - -如果要调用Person.foo()方法,必须: - - pp = Person() #实例化 - pp.foo() - -这样就实现了方法和实例的绑定,于是通过`pp.foo()`即可调用该方法。 - -##调用非绑定方法 - -在[《类(4)》](./209.md)中,介绍了一个函数super。为了描述方便,把代码复制过来: - - #!/usr/bin/env python - # coding=utf-8 - - __metaclass__ = type - - class Person: - def __init__(self): - self.height = 160 - - def about(self, name): - print "{} is about {}".format(name, self.height) - - class Girl(Person): - def __init__(self): - super(Girl, self).__init__() - self.breast = 90 - - def about(self, name): - print "{} is a hot girl, she is about {}, and her breast is {}".format(name, self.height, self.breast) - super(Girl, self).about(name) - - if __name__ == "__main__": - cang = Girl() - cang.about("canglaoshi") - -在子类Girl中,因为重写了父类的`__init__`方法,如果要调用父类该方法,在上节中不得不使用`super(Girl, self).__init__()`调用父类中因为子类方法重写而被遮蔽的同名方法。 - -其实,在子类中,父类的方法就是**非绑定方法**,因为在子类中,没有建立父类的实例,却要是用父类的方法。对于这种非绑定方法的调用,还有一种方式。不过这种方式现在已经较少是用了,因为有了super函数。为了方便读者看其它有关代码,还是要简要说明。 - -例如在上面代码中,在类Girl中想调用父类Person的初始化函数,则需要在子类中,写上这么一行: - - Person.__init__(self) - -这不是通过实例调用的,而是通过类Person实现了对`__init__(self)`的调用。这就是调用非绑定方法的用途。但是,这种方法已经被super函数取代,所以,如果读者在编程中遇到类似情况,推荐使用super函数。 - -##静态方法和类方法 - -已知,类的方法第一个参数必须是self,并且如果要调用类的方法,必须将通过类的实例,即方法绑定实例后才能由实例调用。如果不绑定,一般在继承关系的类之间,可以用super函数等方法调用。 - -这里再介绍一种方法,这种方法的调用方式跟上述的都不同,这就是:静态方法和类方法。看代码: - - #!/usr/bin/env python - # coding=utf-8 - - __metaclass__ = type - - class StaticMethod: - @staticmethod - def foo(): - print "This is static method foo()." - - class ClassMethod: - @classmethod - def bar(cls): - print "This is class method bar()." - print "bar() is part of class:", cls.__name__ - - if __name__ == "__main__": - static_foo = StaticMethod() #实例化 - static_foo.foo() #实例调用静态方法 - StaticMethod.foo() #通过类来调用静态方法 - print "********" - class_bar = ClassMethod() - class_bar.bar() - ClassMethod.bar() - -对于这部分代码,有一处非常特别,那就是包含了“@”符号。在python中: - -- `@staticmethod`表示下面的方法是静态方法 -- `@classmethod`表示下面的方法是类方法 - -一个一个来看。 - -先看静态方法,虽然名为静态方法,但也是方法,所以,依然用def语句来定义。需要注意的是文件名后面的括号内,没有self,这和前面定义的类中的方法是不同的,也正是因着这个不同,才给它另外取了一个名字叫做静态方法,否则不就“泯然众人矣”。如果没有self,那么也就无法访问实例变量、类和实例的属性了,因为它们都是借助self来传递数据的。 - -在看类方法,同样也具有一般方法的特点,区别也在参数上。类方法的参数也没有self,但是必须有cls这个参数。在类方法中,能够访问类属性,但是不能访问实例属性(读者可以自行设计代码检验之)。 - -简要明确两种方法。下面看调用方法。两种方法都可以通过实例调用,即绑定实例。也可以通过类来调用,即`StaticMethod.foo()`这样的形式,这也是区别一般方法的地方,一般方法必须用通过绑定实例调用。 - -上述代码运行结果: - - $ python 21001.py - This is static method foo(). - This is static method foo(). - ******** - This is class method bar(). - bar() is part of class: ClassMethod - This is class method bar(). - bar() is part of class: ClassMethod - -这是关于静态方法和类方法的简要介绍。 - -正当我思考如何讲解的更深入一点的时候,我想起了以往看过的一篇文章,觉得人家讲的非常到位。所以,不敢吝啬,更不敢班门弄斧,所以干脆把那篇文章恭恭敬敬的抄录于此。同时,读者从下面的文章中,也能对前面的知识复习一下。文章标题是:python中的staticmethod和classmethod的差异。原载:www.pythoncentral.io/difference-between-staticmethod-and-classmethod-in-python/。此地址需要你准备梯子才能浏览。后经国人翻译,地址是:http://www.wklken.me/posts/2013/12/22/difference-between-staticmethod-and-classmethod-in-python.html - -以下是翻译文章: - -###Class vs static methods in Python - -这篇文章试图解释:什么事staticmethod/classmethod,并且这两者之间的差异. - -staticmethod和classmethod均被作为装饰器,用作定义一个函数为"staticmethod"还是"classmethod" - -如果想要了解Python装饰器的基础,可以看[这篇文章](http://www.pythoncentral.io/python-decorators-overview/) - -###Simple, static and class methods - -类中最常用到的方法是 实例方法(instance methods), 即,实例对象作为第一个参数传递给函数 - -例如,下面是一个基本的实例方法 - - class Kls(object): - def __init__(self, data): - self.data = data - - def printd(self): - print(self.data) - - ik1 = Kls('arun') - ik2 = Kls('seema') - - ik1.printd() - ik2.printd() - -得到的输出: - - arun - seema - -调用关系图: - -![](./2images/21001.png) - -查看代码和图解: - ->1/2 参数传递给函数 - ->3 self参数指向实例本身 - ->4 我们不需要显式提供实例,解释器本身会处理 - -假如我们想仅实现类之间交互而不是通过实例?我们可以在类之外建立一个简单的函数来实现这个功能,但是将会使代码扩散到类之外,这个可能对未来代码维护带来问题。 - -例如: - - def get_no_of_instances(cls_obj): - return cls_obj.no_inst - - class Kls(object): - no_inst = 0 - - def __init__(self): - Kls.no_inst = Kls.no_inst + 1 - - ik1 = Kls() - ik2 = Kls() - - print(get_no_of_instances(Kls)) - -结果: - - 2 - -###The Python @classmethod - -现在我们要做的是在类里创建一个函数,这个函数参数是类对象而不是实例对象. - -在上面那个实现中,如果要实现不获取实例,需要修改如下: - - def iget_no_of_instance(ins_obj): - return ins_obj.__class__.no_inst - - class Kls(object): - no_inst = 0 - - def __init__(self): - Kls.no_inst = Kls.no_inst + 1 - - ik1 = Kls() - ik2 = Kls() - print iget_no_of_instance(ik1) - -结果 - - 2 - -可以使用Python2.2引入的新特性,使用@classmethod在类代码中创建一个函数 - - class Kls(object): - no_inst = 0 - - def __init__(self): - Kls.no_inst = Kls.no_inst + 1 - - @classmethod - def get_no_of_instance(cls_obj): - return cls_obj.no_inst - - ik1 = Kls() - ik2 = Kls() - - print ik1.get_no_of_instance() - print Kls.get_no_of_instance() - -We get the following output: - - 2 - 2 - -###The Python @staticmethod - -通常,有很多情况下一些函数与类相关,但不需要任何类或实例变量就可以实现一些功能. - -比如设置环境变量,修改另一个类的属性等等.这种情况下,我们也可以使用一个函数,一样会将代码扩散到类之外(难以维护) - -下面是一个例子: - - IND = 'ON' - - def checkind(): - return (IND == 'ON') - - class Kls(object): - def __init__(self,data): - self.data = data - - def do_reset(self): - if checkind(): - print('Reset done for:', self.data) - - def set_db(self): - if checkind(): - self.db = 'new db connection' - print('DB connection made for:',self.data) - - ik1 = Kls(12) - ik1.do_reset() - ik1.set_db() - -结果: - - Reset done for: 12 - DB connection made for: 12 - -现在我们使用@staticmethod, 我们可以将所有代码放到类中 - - IND = 'ON' - - class Kls(object): - def __init__(self, data): - self.data = data - - @staticmethod - def checkind(): - return (IND == 'ON') - - def do_reset(self): - if self.checkind(): - print('Reset done for:', self.data) - - def set_db(self): - if self.checkind(): - self.db = 'New db connection' - print('DB connection made for: ', self.data) - - ik1 = Kls(12) - ik1.do_reset() - ik1.set_db() - -得到的结果: - - Reset done for: 12 - DB connection made for: 12 - -###How @staticmethod and @classmethod are different - - class Kls(object): - def __init__(self, data): - self.data = data - - def printd(self): - print(self.data) - - @staticmethod - def smethod(*arg): - print('Static:', arg) - - @classmethod - def cmethod(*arg): - print('Class:', arg) - -调用 - - >>> ik = Kls(23) - >>> ik.printd() - 23 - >>> ik.smethod() - Static: () - >>> ik.cmethod() - Class: (<class '__main__.Kls'>,) - >>> Kls.printd() - TypeError: unbound method printd() must be called with Kls instance as first argument (got nothing instead) - >>> Kls.smethod() - Static: () - >>> Kls.cmethod() - Class: (<class '__main__.Kls'>,) - -图解 - -![](./2images/21002.png) - -##文档字符串 - -在写程序的时候,必须要写必要的文字说明,没别的原因,除非你的代码写的非常容易理解,特别是各种变量、函数和类等的命名任何人都能够很容易理解,否则,文字说明是不可缺少的。 - -在函数、类或者文件开头的部分写文档字符串说明,一般采用三重引号。这样写的最大好处是能够用help()函数看。 - - """This is python lesson""" - - def start_func(arg): - """This is a function.""" - pass - - class MyClass: - """Thi is my class.""" - def my_method(self,arg): - """This is my method.""" - pass - -这样的文档是必须的。 - -当然,在编程中,有不少地方要用“#”符号来做注释。一般用这个来注释局部。 - ------- - -[总目录](./index.md)   |   [上节:类(4)](./209.md)   |   [下节:多态和封装](./211.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/211.md b/211.md deleted file mode 100644 index 925e043..0000000 --- a/211.md +++ /dev/null @@ -1,286 +0,0 @@ ->爱是恒久忍耐,又有恩慈;爱是不嫉妒,爱是不自夸,不张狂,不作害羞的事,不求自己的益处,不轻易发怒,不计算人的恶,不喜欢不义,只喜欢真理;凡事包容,凡事相信,凡事盼望,凡事忍耐。(1 CORINTHIANS 13:4-7) - -#多态和封装 - -“多态”和“封装”是OOP的重要特征——前面说的“继承”也是。但是,对于Python而言,对这两个的理解也有很多不同。建议读者“吃百家宴”,到网上搜一搜有关话题,不少人写了文章来讨论。 - -##多态 - -这里我仅仅针对初学者,按照自己的理解,谈谈零基础学Python的读者可以怎样理解“多态”,因为“多态”就如同其名字一样,在理解上也是“多态”的。 - -先来看这样的例子: - - >>> "This is a book".count("s") - 2 - >>> [1,2,4,3,5,3].count(3) - 2 - -上面的`count()`的作用是数一数某个元素在对象中出现的次数。从例子中可以看出,我们并没有限定`count()`的参数类型。类似的例子还有: - - >>> f = lambda x,y:x+y - -还记得这个`lambda`函数吗?如果忘记了,请复习[函数(5)](./237.md)中对此的解释。 - - >>> f(2,3) - 5 - >>> f("qiw","sir") - 'qiwsir' - >>> f(["python","java"],["c++","lisp"]) - ['python', 'java', 'c++', 'lisp'] - -这里我们没有限制参数的类型,也一定不能限制,因为如果限制了,就不是pythonic了。在使用的时候,可以给参数任意类型,都能得到不报错的结果。 - -以上,就体现了“多态”——同一种行为具有不同表现形式和形态的能力,换一种说法,就是对象多种表现形式的体现。 - -当然,也有人就此提出了反对意见,因为本质上是在参数传入值之前,Python并没有确定参数的类型,只能让数据进入函数之后再处理,能处理则罢,不能处理就报错。例如: - - >>> f("qiw", 2) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "<stdin>", line 1, in <lambda> - TypeError: cannot concatenate 'str' and 'int' objects - -本书由于不属于这种概念争论范畴,所以不进行这方面的深入探索,仅仅是告诉各位读者相关信息。并且,也是按照“人云亦云”的原则,既然大多数程序员都在讨论多态,那么我们就按照大多数人说的去介绍(尽管有时候真理掌握在少数人手中)。 - -“多态”,英文是:Polymorphism,在台湾被称作“多型”。维基百科中对此有详细解释说明。 - ->多型(英语:Polymorphism),是指物件導向程式執行時,相同的訊息可能會送給多個不同的類別之物件,而系統可依據物件所屬類別,引發對應類別的方法,而有不同的行為。簡單來說,所謂多型意指相同的訊息給予不同的物件會引發不同的動作稱之。 - -再简化的说法就是“有多种形式”,就算不知道变量(参数)所引用的对象类型,也一样能进行操作,来者不拒。比如上面显示的例子。在Python中,更为pythonic的做法是根本就不进行类型检验。 - -例如著名的`repr()`函数,它能够针对输入的任何对象返回一个字符串。这就是多态的代表之一。 - - >>> repr([1,2,3]) - '[1, 2, 3]' - >>> repr(1) - '1' - >>> repr({"lang":"python"}) - "{'lang': 'python'}" - -使用它写一个小函数,还是作为多态代表的。 - - >>> def length(x): - ... print "The length of", repr(x), "is", len(x) - ... - - >>> length("how are you") - The length of 'how are you' is 11 - >>> length([1,2,3]) - The length of [1, 2, 3] is 3 - >>> length({"lang":"python","book":"itdiffer.com"}) - The length of {'lang': 'python', 'book': 'itdiffer.com'} is 2 - -不过,多态也不是万能的,如果这样做: - - >>> length(7) - The length of 7 is - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "<stdin>", line 2, in length - TypeError: object of type 'int' has no len() - -报错了。看错误提示,明确告诉了我们`object of type 'int' has no len()`。 - -上述的种种多态表现,皆因为Python是一种解释型的语言,不需要进行预编译,只在运行时才确定状态。所以,Python就被认为天生是一种多态的语言。也有人持相反观点,认为Python不支持多态,在理由中,也用了上述内容。看来,看着半杯水,的确能够有不同的结论——“还有半杯水呢!”和“还剩半杯水了!”。 - -争论,让给思想者。我们,围观。 - -为了让读者能够进一步理解Python的多态特点,必须要比较,不跟世界上三分之二尚处于水深火热的劳苦大众比较,怎能体会到自己生活在幸福的祖国大花园内。 - -《Thinking in Java》的作者Bruce Eckel在2003年5月2日发表了一篇题为[《Strong Typing vs. Strong Testing》](https://docs.google.com/document/d/1aXs1tpwzPjW9MdsG5dI7clNFyYayFBkcXwRDo-qvbIk/preview)的博客,在其中将Java和Python的多态特征进行了比较,在此我选摘部分内容,重温大师的论述。 - -先来欣赏大师所撰写的一段Java代码: - - // Speaking pets in Java: - interface Pet { - void speak(); - } - - class Cat implements Pet { - public void speak() { System.out.println("meow!"); } - } - - class Dog implements Pet { - public void speak() { System.out.println("woof!"); } - } - - public class PetSpeak { - static void command(Pet p) { p.speak(); } - public static void main(String[] args) { - Pet[] pets = { new Cat(), new Dog() }; - for(int i = 0; i < pets.length; i++) - command(pets[i]); - } - } - -如果读者没有学习过Java,对上述代码理解可能不是很顺畅,这不重要。主要观察`command(Pet p)`,这种写法意味着函数`command()`所能接受的参数的类型必须是`Pet`类型,其它类型不行。所以,必须创建`interface Pet`这个接口并且类Cat和Dog继承它,然后才能upcast them to the generic command() method。(原文: I must create a hierarchy of Pet, and inherit Dog and Cat so that I can upcast them to the generic command() method.) - -与上面的代码相对应,大师提供了Python代码,如下所示: - - # Speaking pets in Python: - class Pet: - def speak(self): pass - - class Cat(Pet): - def speak(self): - print "meow!" - - class Dog(Pet): - def speak(self): - print "woof!" - - def command(pet): - pet.speak() - - pets = [ Cat(), Dog() ] - - for pet in pets: - command(pet) - -注意这段Python代码中的`command()`函数,其参数`pet`并没有要求必须是前面的`Pet`类型(注意区分大小写),仅仅是一个名字为`pet`的对象引用罢了。Python不关心引用的对象是什么类型,只要改对象有`speak()`方法即可。提醒读者注意的是,因为历史原因(2003年),大师当时写的是旧式类。 - -根据我们对Python的理解,上面代码中的类`Pet`其实是多余的。是的,大师也这么认为,只是因为大师当时是完全模仿Java程序而写的。随后,大师就修改了上面的代码。 - - # Speaking pets in Python, but without base classes: - class Cat: - def speak(self): - print "meow!" - - class Dog: - def speak(self): - print "woof!" - - class Bob: - def bow(self): - print "thank you, thank you!" - def speak(self): - print "hello, welcome to the neighborhood!" - def drive(self): - print "beep, beep!" - - def command(pet): - pet.speak() - - pets = [ Cat(), Dog(), Bob() ] - - for pet in pets: - command(pet) - -不仅去掉了没什么用的类`Pet`,又增加了一个新的类`Bob`,这个类根本不是如`Cat`和`Dog`那样的类型,只是它碰巧也有一个名字为`speak()`的方法罢了。但是,也依然能够在`command()`函数中被调用。 - -这就是Python中的多态特点,大师Brue Eckel通过非常有说明了的代码说明了Java和Python的区别,并充分展示了Python中的多态特征。 - -诚如前面所述,Python不检查传入对象的类型(上面大师所写的代码中非常清晰表明了这点),这种方式被称之为“隐式类型”(laten typing)或者“结构式类型”(structural typing),也被通俗的称为“鸭子类型”(duck typeing),其含义在维基百科中被表述为: - ->在程序设计中,鸭子类型(英语:duck typing)是动态类型的一种风格。在这种风格中,一个对象有效的语义,不是由继承自特定的类或实现特定的接口,而是由当前方法和属性的集合决定。这个概念的名字来源于由James Whitcomb Riley提出的鸭子测试,“鸭子测试”可以这样表述:“当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。” - -鸭子类型就意味着可以向任何对象发送任何消息,语言只关心该对象能否接受该消息,不强求该对象是否某一种特定的类型——该对象的多态表现。 - -对于Python的这种特征,有一批程序员不接受,他们认为在程序被执行的时候,可能收到错误的对象,而且这种错误还可能潜伏在程序的某个角落。因此在编程领域就有了“强类型”(如Java)和“弱类型”(如Python)之争。 - -对于此类争论,大师Brue Eckel在上面所提到的博客中,给出了非常明确的回答。下面原文恭录于此: - ->Strong testing, not strong typing. - ->So this, I assert, is an aspect of why Python works. C++ tests happen at compile time (with a few minor special cases). Some Java tests happen at compile time (syntax checking), and some happen at run time (array-bounds checking, for example). Most Python tests happen at runtime rather than at compile time, but they do happen, and that's the important thing (not when). And because I can get a Python program up and running in far less time than it takes you to write the equivalent C++/Java/C# program, I can start running the real tests sooner: unit tests, tests of my hypothesis, tests of alternate approaches, etc. And if a Python program has adequate unit tests, it can be as robust as a C++, Java or C# program with adequate unit tests (although the tests in Python will be faster to write). - -读大师的话,醍醐灌顶,豁然开朗,再也不去参与那些浪费唾沫的争论了。 - -顺便再告诉读者,从发表于2003年5月2日的[《Strong Typing vs. Strong Testing》](https://docs.google.com/document/d/1aXs1tpwzPjW9MdsG5dI7clNFyYayFBkcXwRDo-qvbIk/preview)中可以看出,大师在那时已经开始在授课的过程中给学生使用Python了。2003年,那时候赵国程序员,有多少知道这个星球上有一种名为Python的计算机高级语言。 - -对于多态问题,最后还要告诫读者,类型检查是毁掉多态的利器,比如type、isinstance以及isubclass函数,所以,一定要慎用这些类型检查函数。 - -##封装和私有化 - -“封装”,是不是把代码写到某个东西里面,“人”在编辑器中打开,就看不到了呢? - -除非是你的显示器坏了。 - -在程序设计中,封装(Encapsulation)是对具体对象的一种抽象,即将某些部分隐藏起来,在程序外部看不到,即无法调用(不是人用眼睛看不到那个代码,除非用某种加密或者混淆方法,造成现实上的困难,但这不是封装)。 - -要了解封装,离不开“私有化”,就是将类或者函数中的某些属性限制在某个区域之内,外部无法调用。 - -Python中私有化的方法也比较简单,就是在准备私有化的属性(包括方法、数据)名字前面加双下划线。例如: - - #!/usr/bin/env python - # coding=utf-8 - - class ProtectMe(object): #Python 3: class ProtectMe: - def __init__(self): - self.me = "qiwsir" - self.__name = "kivi" - - def __python(self): - print "I love Python." #Python 3: print("I love Python."),下同,从略 - - def code(self): - print "Which language do you like?" - self.__python() - - if __name__ == "__main__": - p = ProtectMe() - print p.me - print p.__name - -运行一下,看看效果: - - $ python 21102.py - qiwsir - Traceback (most recent call last): - File "21102.py", line 21, in <module> - print p.__name - AttributeError: 'ProtectMe' object has no attribute '__name' - -查看报错信息,告诉我们没有`__name`那个属性。果然隐藏了,在类的外面无法调用。再试试那个函数,可否? - - if __name__ == "__main__": - p = ProtectMe() - p.code() - p.__python() - -修改这部分即可。其中`p.code()`的意图是要打印出两句话:`"Which language do you like?"`和`"I love Python."`,`code()`方法和`__python()`方法在同一个类中,可以调用之。后面的那个`p.__python()`试图调用那个私有方法。看看效果: - - $ python 21102.py - Which language do you like? - I love Python. - Traceback (most recent call last): - File "21102.py", line 23, in <module> - p.__python() - AttributeError: 'ProtectMe' object has no attribute '__python' - -如愿以偿。该调用的调用了,该隐藏的隐藏了。 - -用上面的方法,的确做到了封装。但是,我如果要调用那些私有属性,怎么办? - -可以使用`property`函数。 - - #!/usr/bin/env python - # coding=utf-8 - - class ProtectMe(object): #Python 3: class ProtectMe: - def __init__(self): - self.me = "qiwsir" - self.__name = "kivi" - - @property - def name(self): - return self.__name - - if __name__ == "__main__": - p = ProtectMe() - print p.name #Python 3: print(p.name) - -运行结果: - - $ python 21102.py - kivi - -从上面可以看出,用了`@property`之后,在调用那个方法的时候,用的是`p.name`的形式,就好像在调用一个属性一样,跟前面`p.me`的格式相同。 - -看来,封装的确不是让“人看不见”。 - ------- - -[总目录](./index.md)   |   [上节:类(5)](./209.md)   |   [下节:定制类](./239.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/212.md b/212.md deleted file mode 100644 index e2398ad..0000000 --- a/212.md +++ /dev/null @@ -1,270 +0,0 @@ ->我们既蒙怜悯,受了这职分,就不丧胆,乃将那些暗昧可耻的事弃绝了,不行诡诈,不谬讲神的道理,只将真理表明出来,好在神面前把自己荐与各人的良心。(2 CORINTHIANS 4:1-2) - -#特殊方法(1) - -探究更多的类属性,在一些初学者的教程中,一般很少见。我之所以要在这里也将这部分奉献出来,就是因为本教程是“From Beginner to Master”。当然,不是学习了类的更多属性就能达到Master水平,但是这是通往Master的一步,虽然在初级应用中,本节乃至于后面关于类的属性用的不很多,但是,这一步迈出去,你就会在实践中有一个印象,以后需要用到了,知道有这一步,会对项目有帮助的。俗话说“艺不压身”。 - -##`__dict__` - -前面已经学习过有关类属性和实例属性的内容,并且做了区分,如果忘记了可以回头参阅[《类(3)》](./208.md)中的“类属性和实例属性”部分。有一个结论,是一定要熟悉的,那就是可以通过`object.attribute`的方式访问对象的属性。 - -如果接着那部分内容,读者是否思考过一个问题:类或者实例属性,在python中是怎么存储的?或者为什么修改或者增加、删除属性,我们能不能控制这些属性? - - >>> class A(object): - ... pass - ... - - >>> a = A() - >>> dir(a) - ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__'] - >>> dir(A) - ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__'] - -用`dir()`来查看一下,发现不管是类还是实例,都有很多属性,这在前面已经反复出现,有点见怪不怪了。不过,这里我们要看一个属性:`__dict__`,因为它是一个保存秘密的东西:对象的属性。 - - >>> class Spring(object): - ... season = "the spring of class" - ... - - >>> Spring.__dict__ - dict_proxy({'__dict__': <attribute '__dict__' of 'Spring' objects>, - 'season': 'the spring of class', - '__module__': '__main__', - '__weakref__': <attribute '__weakref__' of 'Spring' objects>, - '__doc__': None}) - -为了便于观察,我将上面的显示结果进行了换行,每个键值对一行。 - -对于类Spring的`__dict__`属性,可以发现,有一个键`'season'`,这就是这个类的属性;其值就是类属性的数据。 - - >>> Spring.__dict__['season'] - 'the spring of class' - >>> Spring.season - 'the spring of class' - -用这两种方式都能得到类属性的值。或者说`Spring.__dict__['season']`就是访问类属性。下面将这个类实例化,再看看它的实例属性: - - >>> s = Spring() - >>> s.__dict__ - {} - -实例属性的`__dict__`是空的。有点奇怪?不奇怪,接着看: - - >>> s.season - 'the spring of class' - -这个其实是指向了类属性中的`Spring.season`,至此,我们其实还没有建立任何实例属性呢。下面就建立一个实例属性: - - >>> s.season = "the spring of instance" - >>> s.__dict__ - {'season': 'the spring of instance'} - -这样,实例属性里面就不空了。这时候建立的实例属性和上面的那个`s.season`只不过重名,并且把它“遮盖”了。这句好是不是熟悉?因为在讲述“实例属性”和“类属性”的时候就提到了。现在读者肯定理解更深入了。 - - >>> s.__dict__['season'] - 'the spring of instance' - >>> s.season - 'the spring of instance' - -此时,那个类属性如何?我们看看: - - >>> Spring.__dict__['season'] - 'the spring of class' - >>> Spring.__dict__ - dict_proxy({'__dict__': <attribute '__dict__' of 'Spring' objects>, 'season': 'the spring of class', '__module__': '__main__', '__weakref__': <attribute '__weakref__' of 'Spring' objects>, '__doc__': None}) - >>> Spring.season - 'the spring of class' - -Spring的类属性没有受到实例属性的影响。 - -按照前面的讲述类属性和实例熟悉的操作,如果这时候将前面的实例属性删除,会不会回到实例属性`s.__dict__`为空呢? - - >>> del s.season - >>> s.__dict__ - {} - >>> s.season - 'the spring of class' - -果然打回原形。 - -当然,你可以定义其它名称的实例属性,它一样被存储到`__dict__`属性里面: - - >>> s.lang = "python" - >>> s.__dict__ - {'lang': 'python'} - >>> s.__dict__['lang'] - 'python' - -诚然,这样做仅仅是更改了实例的`__dict__`内容,对`Spring.__dict__`无任何影响,也就是说通过`Spring.lang`或者`Spring.__dict__['lang']`是得不到上述结果的。 - - >>> Spring.lang - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: type object 'Spring' has no attribute 'lang' - - >>> Spring.__dict__['lang'] - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - KeyError: 'lang' - -那么,如果这样操作,会怎样呢? - - >>> Spring.flower = "peach" - >>> Spring.__dict__ - dict_proxy({'__module__': '__main__', - 'flower': 'peach', - 'season': 'the spring of class', - '__dict__': <attribute '__dict__' of 'Spring' objects>, '__weakref__': <attribute '__weakref__' of 'Spring' objects>, '__doc__': None}) - >>> Spring.__dict__['flower'] - 'peach' - -在类的`__dict__`被更改了,类属性中增加了一个'flower'属性。但是,实例的`__dict__`中如何? - - >>> s.__dict__ - {'lang': 'python'} - -没有被修改。我也是这么想的,哈哈。你此前这这么觉得吗?然而,还能这样: - - >>> s.flower - 'peach' - -这个读者是否能解释?其实又回到了前面第一个出现`s.season`上面了。 - -通过上面探讨,是不是基本理解了实例和类的`__dict__`,并且也看到了属性的变化特点。特别是,这些属性都是可以动态变化的,就是你可以随时修改和增删。 - -属性如此,方法呢?下面就看看方法(类中的函数)。 - - >>> class Spring(object): - ... def tree(self, x): - ... self.x = x - ... return self.x - ... - >>> Spring.__dict__ - dict_proxy({'__dict__': <attribute '__dict__' of 'Spring' objects>, - '__weakref__': <attribute '__weakref__' of 'Spring' objects>, - '__module__': '__main__', - 'tree': <function tree at 0xb748fdf4>, - '__doc__': None}) - - >>> Spring.__dict__['tree'] - <function tree at 0xb748fdf4> - -结果跟前面讨论属性差不多,方法`tree`也在`__dict__`里面呢。 - - >>> t = Spring() - >>> t.__dict__ - {} - -又跟前面一样。虽然建立了实例,但是在实例的`__dict__`中没有方法。接下来,执行: - - >>> t.tree("xiangzhangshu") - 'xiangzhangshu' - -在[类(3)](./208.md)中有一部分内容阐述“数据流转”,其中有一张图,其中非常明确显示出,当用上面方式执行方法的时候,实例`t`与`self`建立了对应关系,两者是一个外一个内。在方法中`self.x = x`,将x的值给了self.x,也就是实例应该拥有了这么一个属性。 - - >>> t.__dict__ - {'x': 'xiangzhangshu'} - -果然如此。这也印证了实例`t`和`self`的关系,即实例方法(`t.tree('xiangzhangshu')`)的第一个参数(self,但没有写出来)绑定实例t,透过self.x来设定值,即给`t.__dict__`添加属性值。 - -换一个角度: - - >>> class Spring(object): - ... def tree(self, x): - ... return x - ... - -这回方法中没有将x赋值给self的属性,而是直接return,结果是: - - >>> s = Spring() - >>> s.tree("liushu") - 'liushu' - >>> s.__dict__ - {} - -是不是理解更深入了? - -现在需要对python中一个观点:“一切皆对象”,再深入领悟。以上不管是类还是的实例的属性和方法,都是符合`object.attribute`格式,并且属性类似。 - -当你看到这里的时候,要么明白了类和实例的`__dict__`的特点,要么就糊涂了。糊涂也不要紧,再将上面的重复一遍,特别是自己要敲一敲有关代码。(建议一个最好的方法:用两个显示器,一个显示器看本教程,另外一个显示器敲代码。事半功倍的效果。) - -需要说明,我们对`__dict__`的探讨还留有一个尾巴:属性搜索路径。这个留在后面讲述。 - -不管是类还是实例,其属性都能随意增加。这点在有时候不是一件好事情,或许在某些时候你不希望别人增加属性。有办法吗?当然有,请继续学习。 - -##`__slots__` - -首先声明,`__slots__`能够限制属性的定义,但是这不是它存在终极目标,它存在的终极目标更应该是一个在编程中非常重要的方面:**优化内存使用。** - - >>> class Spring(object): - ... __slots__ = ("tree", "flower") - ... - >>> dir(Spring) - ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', 'flower', 'tree'] - -仔细看看`dir()`的结果,还有`__dict__`属性吗?没有了,的确没有了。也就是说`__slots__`把`__dict__`挤出去了,它进入了类的属性。 - - >>> Spring.__slots__ - ('tree', 'flower') - -这里可以看出,类Spring有且仅有两个属性。 - - >>> t = Spring() - >>> t.__slots__ - ('tree', 'flower') - -实例化之后,实例的`__slots__`与类的完全一样,这跟前面的`__dict__`大不一样了。 - - >>> Spring.tree = "liushu" - -通过类,先赋予一个属性值。然后,检验一下实例能否修改这个属性: - - >>> t.tree = "guangyulan" - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'Spring' object attribute 'tree' is read-only - -看来,我们的意图不能达成,报错信息中显示,`tree`这个属性是只读的,不能修改了。 - - >>> t.tree - 'liushu' - -因为前面已经通过类给这个属性赋值了。不能用实例属性来修改。只能: - - >>> Spring.tree = "guangyulan" - >>> t.tree - 'guangyulan' - -用类属性修改。但是对于没有用类属性赋值的,可以通过实例属性: - - >>> t.flower = "haitanghua" - >>> t.flower - 'haitanghua' - -但此时: - - >>> Spring.flower - <member 'flower' of 'Spring' objects> - -实例属性的值并没有传回到类属性,你也可以理解为新建立了一个同名的实例属性。如果再给类属性赋值,那么就会这样了: - - >>> Spring.flower = "ziteng" - >>> t.flower - 'ziteng' - -当然,此时在给`t.flower`重新赋值,就会爆出跟前面一样的错误了。 - - >>> t.water = "green" - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'Spring' object has no attribute 'water' - -这里试图给实例新增一个属性,也失败了。 - -看来`__slots__`已经把实例属性牢牢地管控了起来,但更本质是的是优化了内存。诚然,这种优化会在大量的实例时候显出效果。 - ------- - -[总目录](./index.md)   |   [上节:多态和封装](./211.md)   |   [下节:特殊方法(2)](./213.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/213.md b/213.md deleted file mode 100644 index 3cda449..0000000 --- a/213.md +++ /dev/null @@ -1,236 +0,0 @@ ->所以,我们不丧胆。外体虽然毁坏,内心却一天新似一天。我们这至暂至轻的苦楚,要为我们成就极重无比永远的荣耀。原来我们不是顾念所见的,乃是顾念所不见的,因为所见的是暂时的,所不见的是永远的。(2 CORINTHIANS 4:16-18) - -#特殊方法(2) - -书接上回,不管是实例还是类,都用`__dict__`来存储属性和方法,可以笼统地把属性和方法称为成员或者特性,一句话概括,就是`__dict__`存储对象成员。但,有时候访问的对象成员没有存在其中,就是这样: - - >>> class A(object): - ... pass - ... - >>> a = A() - >>> a.x - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'A' object has no attribute 'x' - -`x`不是实例的成员,用`a.x`访问,就出错了,并且错误提示中报告了原因:“'A' object has no attribute 'x'” - -在很多情况下,这种报错是足够的了。但是,在某种我现在还说不出的情况下,你或许不希望这样报错,或许希望能够有某种别的提示、操作等。也就是我们更希望能在成员不存在的时候有所作为,不是等着报错。 - -要处理类似的问题,就要用到本节中的知识了。 - -##`__getattr__`、`__setattr__`和其它类似方法 - -还是用上面的例子,如果访问`a.x`,它不存在,那么就要转向到某个操作。我们把这种情况称之为“拦截”。就好像“寻隐者不遇”,却被童子“遥指杏花村”,将你“拦截”了。在Python中,有一些方法就具有这种“拦截”能力。 - -- `__setattr__(self,name,value)`:如果要给name赋值,就调用这个方法。 -- `__getattr__(self,name)`:如果name被访问,同时它不存在的时候,此方法被调用。 -- `__getattribute__(self,name)`:当name被访问时自动被调用(注意:这个仅能用于新式类),无论name是否存在,都要被调用。 -- `__delattr__(self,name)`:如果要删除name,这个方法就被调用。 - -如果一时没有理解,不要紧,是正常的。需要用例子说明。 - - >>> class A(object): - ... def __getattr__(self, name): - ... print "You use getattr" - ... def __setattr__(self, name, value): - ... print "You use setattr" - ... self.__dict__[name] = value - ... - -类A是新式类,除了两个方法,没有别的属性。 - - >>> a = A() - >>> a.x - You use getattr - -`a.x`,按照本节开头的例子,是要报错的。但是,由于在这里使用了`__getattr__(self, name)`方法,当发现`x`不存在于对象的`__dict__`中的时候,就调用了`__getattr__`,即所谓“拦截成员”。 - - >>> a.x = 7 - You use setattr - -给对象的属性赋值时候,调用了`__setattr__(self, name, value)`方法,这个方法中有一句`self.__dict__[name] = value`,通过这个语句,就将属性和数据保存到了对象的`__dict__`中,如果在调用这个属性: - - >>> a.x - 7 - -它已经存在于对象的`__dict__`之中。 - -在上面的类中,当然可以使用`__getattribute__(self, name)`,因为它是新式类。并且,只要访问属性就会调用它。例如: - - >>> class B(object): - ... def __getattribute__(self, name): - ... print "you are useing getattribute" - ... return object.__getattribute__(self, name) - ... - -为了与前面的类区分,新命名一个类名字。需要提醒注意,在这里返回的内容用的是`return object.__getattribute__(self, name)`,而没有使用`return self.__dict__[name]`像是。因为如果用这样的方式,就是访问`self.__dict__`,只要访问这个属性,就要调用`__getattribute__``,这样就导致了无线递归下去(死循环)。要避免之。 - - >>> b = B() - >>> b.y - you are useing getattribute - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "<stdin>", line 4, in __getattribute__ - AttributeError: 'B' object has no attribute 'y' - >>> b.two - you are useing getattribute - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "<stdin>", line 4, in __getattribute__ - AttributeError: 'B' object has no attribute 'two' - -访问不存在的成员,可以看到,已经被`__getattribute__`拦截了,虽然最后还是要报错的。 - - >>> b.y = 8 - >>> b.y - you are useing getattribute - 8 - -当给其赋值后,意味着已经在`__dict__`里面了,再调用,依然被拦截,但是由于已经在`__dict__`内,会把结果返回。 - -当你看到这里,是不是觉得上面的方法有点魔力呢?不错。但是,它有什么具体应用呢?看下面的例子,能给你带来启发。 - - #!/usr/bin/env python - # coding=utf-8 - - """ - study __getattr__ and __setattr__ - """ - - class Rectangle(object): - """ - the width and length of Rectangle - """ - def __init__(self): - self.width = 0 - self.length = 0 - - def setSize(self, size): - self.width, self.length = size - def getSize(self): - return self.width, self.length - - if __name__ == "__main__": - r = Rectangle() - r.width = 3 - r.length = 4 - print r.getSize() - r.setSize( (30, 40) ) - print r.width - print r.length - -上面代码来自《Beginning Python:From Novice to Professional,Second Edittion》(by Magnus Lie Hetland),根据本教程的需要,稍作修改。 - - $ python 21301.py - (3, 4) - 30 - 40 - -这段代码已经可以正确运行了。但是,作为一个精益求精的程序员。总觉得那种调用方式还有可以改进的空间。比如,要给长宽赋值的时候,必须赋予一个元组,里面包含长和宽。这个能不能改进一下呢? - - #!/usr/bin/env python - # coding=utf-8 - - """ - study __getattr__ and __setattr__ - """ - - class Rectangle(object): - """ - the width and length of Rectangle - """ - def __init__(self): - self.width = 0 - self.length = 0 - - def setSize(self, size): - self.width, self.length = size - def getSize(self): - return self.width, self.length - - size = property(getSize, setSize) - - if __name__ == "__main__": - r = Rectangle() - r.width = 3 - r.length = 4 - print r.size - r.size = 30, 40 - print r.width - print r.length - -以上代码的运行结果同上。但是,因为加了一句`size = property(getSize, setSize)`,使得调用方法是不是更优雅了呢?原来用`r.getSize()`,现在使用`r.size`,就好像调用一个属性一样。难道你不觉得眼熟吗?在[《多态和封装》](./211.md)中已经用到过property函数了,虽然写法略有差别,但是作用一样。 - -本来,这样就已经足够了。但是,因为本节中出来了特殊方法,所以,一定要用这些特殊方法从新演绎一下这段程序。虽然重新演绎的不一定比原来的好,主要目的是演示本节的特殊方法应用。 - - #!/usr/bin/env python - # coding=utf-8 - - class NewRectangle(object): - def __init__(self): - self.width = 0 - self.length = 0 - - def __setattr__(self, name, value): - if name == "size": - self.width, self.length = value - else: - self.__dict__[name] = value - - def __getattr__(self, name): - if name == "size": - return self.width, self.length - else: - raise AttributeError - - if __name__ == "__main__": - r = NewRectangle() - r.width = 3 - r.length = 4 - print r.size - r.size = 30, 40 - print r.width - print r.length - -除了类的样式变化之外,调用样式没有变。结果是一样的。 - -这就算了解了一些这些属性了吧。但是,有一篇文章是要必须推荐给读者阅读的:[Python Attributes and Methods](http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html),读了这篇文章,对python的对象属性和方法会有更深入的理解。 - -##获得属性顺序 - -通过实例获取其属性(也有说特性的,名词变化了,但是本质都是属性和方法),如果在`__dict__`中有相应的属性,就直接返回其结果;如果没有,会到类属性中找。比如: - - #!/usr/bin/env python - # coding=utf-8 - - class A(object): - author = "qiwsir" - def __getattr__(self, name): - if name != "author": - return "from starter to master." - - if __name__ == "__main__": - a = A() - print a.author - print a.lang - -运行程序: - - $ python 21302.py - qiwsir - from starter to master. - -当`a = A()`后,并没有为实例建立任何属性,或者说实例的`__dict__`是空的,这在上节中已经探讨过了。但是如果要查看`a.author`,因为实例的属性中没有,所以就去类属性中找,发现果然有,于是返回其值`"qiwsir"`。但是,在找`a.lang`的时候,不仅实例属性中没有,类属性中也没有,于是就调用了`__getattr__()`方法。在上面的类中,有这个方法,如果没有`__getattr__()`方法呢?如果没有定义这个方法,就会引发AttributeError,这在前面已经看到了。 - -这就是通过实例查找特性的顺序。 - -##双下划线 - -至此,是否注意到,我们使用很多以双下划线开头和结尾的方法名,比如`__dict__`,`__init__`个。在Python中,用这种方法表示特殊的方法名,当然,这是一个惯例,之所以这样做,主要是确保这些特殊的方法名不会跟你自己所定义的名称冲突,我们自己定义名称的时候,是绝少用双划线开头和结尾的。如果你需要重写这些方法,当然是可以的,具体参看前文关于继承的讲述。 - ------- - -[总目录](./index.md)   |   [上节:特殊方法(1)](./212.md)   |   [下节:迭代器](./214.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/214.md b/214.md deleted file mode 100644 index 43ebcb8..0000000 --- a/214.md +++ /dev/null @@ -1,277 +0,0 @@ ->For freedom Christ has set us free. Stand firm, therefore, and do not submit again to a yoke of slavery. - ->基督释放了我们,叫我们得以自由,所以要站立得稳,不要再被奴仆的轭挟制。(GALATIANS 5:1) - -#迭代器 - -迭代,对于读者已经不陌生了,曾有专门一节来讲述,如果印象不深,请复习[《迭代》](./128.md)。 - - >>> hasattr(list, '__iter__') - True - -不仅仅是列表,文件、字典都有一个名为`__iter__`的方法,这说明它们都是可迭代的。 - -`__iter__()`是对象的一个特殊方法,它是迭代规则(iterator potocol)的基础,有了它,说明对象是可迭代的。 - -跟迭代有关的一个内建函数`iter()`,它的文档中这样描述: - - >>> help(iter) - Help on built-in function iter in module __builtin__: - - iter(...) - iter(collection) -> iterator - iter(callable, sentinel) -> iterator - - Get an iterator from an object. In the first form, the argument must - supply its own iterator, or be a sequence. - In the second form, the callable is called until it returns the sentinel. - -这个函数前文介绍过,它返回一个迭代器对象。比如: - - >>> lst = [1, 2, 3, 4] - >>> iter_lst = iter(lst) - >>> iter_lst - <listiterator object at 0x02BE8D50> #Python 3返回结果:<list_iterator object at 0x00000000034CD6D8> - -从返回结果中可以看出,`iter_lst`引用的是迭代器对象。那么,`iter_lst`和`lst`有区别吗? - - >>> hasattr(lst, "__iter__") - True - >>> hasattr(iter_lst, "__iter__") - True - -它们都有`__iter__`,这是相同点,说明它们都是可迭代的。 - -但是: - -Python 2: - - >>> hasattr(lst, "next") - False - >>> hasattr(iter_lst, "next") - True - -Python 3: - - >>> hasattr(lst, "__next__") - False - >>> hasattr(iter_lst, "__next__") - True - -这就是两者的区别。我们像`iter_lst`所引用的对象那样,具有`next()`(Python 2)或者`__next__()`(Python 3)方法的对象,称之为迭代器对象。显见,迭代器对象必然是可迭代的,反之则不然。 - -Python 3中迭代器对象实现的是`__next__()`方法,不是`next()`。并且,在Python 3中有一个内建函数`next()`,可以实现`next(it)`访问迭代器,这相当于于Python 2中的`it.next()`(it是迭代对象)。 - -为了体现Python强悍,自己写一个迭代器对象。 - - #!/usr/bin/env python - # coding=utf-8 - - """ - the interator as range() - """ - class MyRange(object): #Python 3: class MyRange: - def __init__(self, n): - self.i = 1 - self.n = n - - def __iter__(self): - return self - - def next(self): #Python 3: def __next__(self): - if self.i <= self.n: - i = self.i - self.i += 1 - return i - else: - raise StopIteration() - - if __name__ == "__main__": - x = MyRange(7) - print [i for i in x] #Python 3中使用print()函数,下同,从略 - -将代码保存,并运行,结果是: - - [1, 2, 3, 4, 5, 6, 7] - -以上代码的含义,是自己仿写了类似`range()`的类,但是跟`range()`又有所不同,除了结果不同之外,还有: - -- 类`MyRange`的初始化方法`__init__()`就不用赘述了,因为前面已经非常详细分析了这个方法,如果复习,请阅读[《类(2)》](./207md)相关内容。 - -- `__iter__()`是类中的核心,它返回了迭代器本身。一个实现了`__iter__()`方法的对象,即意味着它是可迭代的。 - -- 实现`next()`或者`__next__()`方法,从而使得这个对象是迭代器对象,并且方法中判断,在不满足条件的时候要发起`StopIteration()`异常。 - -再来看`range()`(以下仅仅限于Python 2): - - >>> a = range(7) - >>> hasattr(a, "__iter__") - True - >>> hasattr(a, "next") - False - >>> print a - [0, 1, 2, 3, 4, 5, 6] - -所以我写的类和`range()`还是有很大区别的。 - -为了能深入理解迭代器的工作过程,我们这样来操作: - - if __name__ == "__main__": - x = MyRange(3) - print "self.n=",x.n,";","self.i=",x.i #Python 3中使用print()函数,下同,从略 - x.next() - print "self.n=",x.n,";","self.i=",x.i - x.next() - print "self.n=",x.n,";","self.i=",x.i - x.next() - print "self.n=",x.n,";","self.i=",x.i - x.next() - print "self.n=",x.n,";","self.i=",x.i - -运行结果如下: - - self.n= 3 ; self.i= 1 - self.n= 3 ; self.i= 2 - self.n= 3 ; self.i= 3 - self.n= 3 ; self.i= 4 - - Traceback (most recent call last): - File "F:\MyGitHub\StarterLearningPython\2code\21401.py", line 32, in <module> - x.next() - File "F:\MyGitHub\StarterLearningPython\2code\21401.py", line 21, in next - raise StopIteration() - StopIteration - -当`next()`或者`__next__()`中的`self.i <= self.n`为假,就`raise StopIteration()`,结束迭代过程。 - -还记得斐波那契数列吗?前文已经多次用到,这里我们再次使用它,不过是要用它来做一个迭代器对象。 - - #!/usr/bin/env python - # coding=utf-8 - """ - compute Fibonacci by iterator - """ - - class Fibs(object): #Python 3: class Fibs: - def __init__(self, max): - self.max = max - self.a = 0 - self.b = 1 - - def __iter__(self): - return self - - def next(self): #Python 3: def __next__(self): - fib = self.a - if fib > self.max: - raise StopIteration - self.a, self.b = self.b, self.a + self.b - return fib - - if __name__ == "__main__": - fibs = Fibs(5) - print list(fibs) #Python 3: print(list(fibs)) - -运行结果是: - - $ python 21402.py - [0, 1, 1, 2, 3, 5] - ->给读者一个思考问题:要在斐波那契数列中找出大于1000的最小的数,能不能在上述代码基础上改造得出呢? - -以上演示了迭代器的一个具体应用。综合本节上面的内容和前文对迭代的讲述,对迭代器做一个概括: - -1. 在 Python 中,迭代器是遵循迭代协议的对象。 -2. 可以使用`iter()` 以从任何序列得到迭代器(如 list, tuple, dictionary, set 等)。 -3. 编写类,实现`__iter__()`方法,以及 `next()`(Python 2)或`__next__()`(Python 3) 。当没有元素时,则引发 `StopIteration`异常。 -4. 如果有很多值,列表就会占用太多的内存,而迭代器则占用更少内存。 -5. 迭代器从第一个元素开始访问,直到所有的元素被访问完结束,只能往前不会后退。 - -迭代器不仅实用,也很有趣。看下面的操作: - - >>> my_lst = [x**x for x in range(4)] - >>> my_lst - [1, 1, 4, 27] - >>> for i in my_lst: print i #Python 3: print(i) - - 1 - 1 - 4 - 27 - >>> for i in my_lst: print i - - 1 - 1 - 4 - 27 - -我连续两次调用列表`my_lst`进行循环,都能正常进行。这个列表相当于一个耐用品,可以反复使用。 - -在Python中,除了列表解析式,还可以做元组解析式,方法非常简单: - - >>> my_tup = (x**x for x in range(4)) - >>> my_tup - <generator object <genexpr> at 0x02B7C2B0> - >>> for i in my_tup: print i - - 1 - 1 - 4 - 27 - >>> for i in my_tup: print i - -对于`my_tup`,我们已经看到,它是generator对象,关于这个名称先不管它,后面会讲解。当把它用到循环中,它明显是一次性用品,只能使用一次,再次使用,就什么也不显示了。 - - >>> type(my_lst) - <type 'list'> - >>> type(my_tup) - <type 'generator'> - -`my_lst`和`my_tup`是两种不同的对象,并且`my_tup`也不是元组,它是一个generator。其它先不管,请读者在你的Python交互模式中输入`dir(my_tup)`,如果是Python 2,请查找是否有`__iter__`和`next`;如果是Python 3则查看是否有`__iter__`和`__next__`。答案是肯定的。这也是`my_lst`和`my_tup`所引用对象的区别。 - -因此,`my_tup`引用的是一个迭代器对象。它的`next()`或者`__next__()`方法,使得它只能向前。 - -关于列表和迭代器之间的区别,还有两个非常典型的内建函数:`range()`和`xrange()`,研究一下这两个的差异,会有所收获的。 - -`range()`的结果是一个列表。但是,如果用`help(xrange)`查看(仅限于Python 2): - - class xrange(object) - | xrange(stop) -> xrange object - | xrange(start, stop[, step]) -> xrange object - | - | Like range(), but instead of returning a list, returns an object that - | generates the numbers in the range on demand. For looping, this is - | slightly faster than range() and more memory efficient. - -`xrange()`类似`range()`,但返回的不是列表。在循环的时候,它跟`range()`相比“slightly faster than range() and more memory efficient”,稍快并更高的内存效率(就是省内存呀)。查看它的方法: - - >>> dir(xrange) - ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__getitem__', '__hash__', '__init__', '__iter__', '__len__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__'] - -看到令人兴奋的`__iter__`了吗?说明它是可迭代的,它返回的是一个可迭代的对象。 - -也就是说,通过`range()`得到的列表,会一次性被读入内存,而`xrange()`返回的对象,则是需要一个数值才从返回一个数值。 - -上述论述仅适用于Python 2,因为在Python 3里面,将`range()`优化了,相当于Python 2里面`xrange()`,所以,在Python 3中就不再有`xrange()`。 - -还记得`zip()`吗? - - >>> a = ["name", "age"] - >>> b = ["qiwsir", 40] - >>> zip(a,b) - [('name', 'qiwsir'), ('age', 40)] - -如果两个列表的个数不一样,就会以短的为准了,比如: - - >>> zip(range(4), xrange(100000000)) #适用于Python 2,Python 3中的range()已经具有了Python 2的xrange()功能 - [(0, 0), (1, 1), (2, 2), (3, 3)] - -第一个`range(4)`产生的列表被读入内存;第二个是不是也太长了?但是不用担心,它根本不会产生那么长的列表,因为只需要前4个数值,它就提供前四个数值。如果你要修改为`range(100000000)`,就要花费时间了,可以尝试一下哦。 - -迭代器的确有迷人之处,但是它也不是万能之物。比如迭代器不能回退,只能如过河的卒子,不断向前。另外,迭代器也不适合在多线程环境中对可变集合使用(这句话可能理解有困难,先混个脸熟吧,等你遇到多线程问题再说)。 - ------- - -[总目录](./index.md)   |   [上节:黑魔法](./240.md)   |   [下节:生成器](./215.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/215.md b/215.md deleted file mode 100644 index ee05773..0000000 --- a/215.md +++ /dev/null @@ -1,180 +0,0 @@ ->圣灵所结的果子,就是仁爱、喜乐、和平、忍耐、恩慈、良善、信实、温柔、节制。这样的事,没有律法禁止。凡属基督耶稣的人,是已经把肉体连肉体的邪情私欲同钉在十字架上了。我们若是靠圣灵得生,就当靠圣灵行事。不要贪图虚名,彼此惹气,互相嫉妒。(GALATIANS 5:22-26) - -#生成器 - -上节中,我们曾经做过这样的操作: - - >>> my_tup = (x**x for x in range(4)) - >>> my_tup - <generator object <genexpr> at 0x02B7C2B0> - -generator,翻译过来是生成器。 - -生成器是一个非常迷人的东西,也常被认为是Python的高级编程技能。不过,我依然很乐意在这里跟读者——尽管你可能是一个初学者——探讨这个话题,因为我相信读者看本教程的目的,绝非仅仅将自己限制于初学者水平,一定有一颗不羁的心——要成为Python高手。那么,开始了解生成器吧。 - -既然在探讨“迭代器”的时候出现了生成器,这就说明生成器和迭代器有着一定的渊源关系。 - -没错!生成器必须是可迭代的,它首先是迭代器。 - -但,它毕竟还是生成器,具有生成器的特质。 - -##定义生成器 - -定义生成器,必须使用`yield`关键词。yield这个词在汉语中有“生产、出产”之意,在Python中,它作为一个关键词,是生成器的标志。 - - >>> def g(): - ... yield 0 - ... yield 1 - ... yield 2 - - >>> g - <function g at 0xb71f3b8c> - -建立了一个非常简单的函数,里面有`yield`发起的三个语句。下面看如何使用它: - - >>> ge = g() - >>> ge - <generator object g at 0xb7200edc> - >>> type(ge) - <type 'generator'> - -调用函数,得到了一个生成器(generator)对象。 - -Python 2: - - >>> dir(ge) - ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__name__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'gi_code', 'gi_frame', 'gi_running', 'next', 'send', 'throw'] - -Python 3: - - >>> dir(ge) - ['__class__', '__del__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__lt__', '__name__', '__ne__', '__new__', '__next__', '__qualname__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'gi_code', 'gi_frame', 'gi_running', 'gi_yieldfrom', 'send', 'throw'] - -在这里看到了`__iter__()`和`next()`或`__next__()`,虽然我们在函数体内并没有显示地写出`__iter__()`、`next()`和`__next__()`,仅仅写了`yield`语句,它就已经成为迭代器了。 - -既然如此,当然可以: - - >>> ge.next() #Python 3: ge.__next__(),下同,从略 - 0 - >>> ge.next() - 1 - >>> ge.next() - 2 - >>> ge.next() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - StopIteration - -从这个简单例子中可以看出,那个含有`yield`关键词的函数是一个生成器对象,这个生成器对象也是迭代器。 - -于是可以这样定义:把含有`yield`语句的函数称作生成器。 - -生成器是一种用普通函数语法定义的迭代器。 - -通过上面的例子可以看出,这个生成器(也是迭代器),在定义过程中并没有像上节迭代器那样写`__iter__()`和`next()`,而是只要用了yield语句,那个普通函数就神奇般地成为了生成器,也就具备了迭代器的功能特性。 - -`yield`语句的作用,就是在调用的时候返回相应的值。详细剖析一下上面的运行过程: - -1. `ge = g()`:返回生成器之外。 -2. `ge.next()`:生成器才开始执行,遇到了第一个yield语句,将值返回,并暂停执行(有的称之为挂起)。 -3. `ge.next()`:从上次暂停的位置开始,继续向下执行,遇到yield语句,将值返回,又暂停。 -4. `gen.next()`:重复上面的操作。 -5. `gene.next()`:从上面的挂起位置开始,但是后面没有可执行的了,于是`next()`发出异常。 - -从上面的执行过程中,发现yield除了作为生成器的标志之外,还有一个功能就是返回值。那么它跟return这个返回值有什么区别呢? - -##yield - -函数返回值,本来已经有了一个`return`,现在又出现了`yield`,这两个有什么区别? - -为了区别,我们写两个没有什么用途的函数: - - >>> def r_return(n): - ... print "You taked me." #Python 3: print("You taked me."),下同,从略 - ... while n > 0: - ... print "before return" - ... return n - ... n -= 1 - ... print "after return" - ... - >>> rr = r_return(3) - You taked me. - before return - >>> rr - 3 - -从函数被调用的过程可以清晰看出,`rr = r_return(3)`,函数体内的语句就开始执行了,遇到`return`,将值返回,然后就结束函数体内的执行。所以`return`后面的语句根本没有执行。这是`return`的特点,关于此特点的详细说明请阅读[《函数(2)》中的返回值相关内容](./202.md)。 - -下面将return改为yield: - - >>> def y_yield(n): - ... print "You taked me." #Python 3: print("You taked me."),下同,从略 - ... while n > 0: - ... print "before yield" - ... yield n - ... n -= 1 - ... print "after yield" - ... - >>> yy = y_yield(3) #没有执行函数体内语句 - >>> yy.next() #Python 3: yy.__next__(),下同,从略 - You taked me. - before yield - 3 #遇到yield,返回值,并暂停 - >>> yy.next() #从上次暂停位置开始继续执行 - after yield - before yield - 2 #又遇到yield,返回值,并暂停 - >>> yy.next() #重复上述过程 - after yield - before yield - 1 - >>> yy.next() - after yield #没有满足条件的值,抛出异常 - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - StopIteration - -结合注释和前面对执行过程的分析,读者一定能理解`yield`的特点了,也深知与`return`的区别了。 - -一般的函数,都是止于`return`。作为生成器的函数,由于有了`yield`,则会遇到它挂起。 - -斐波那契数列已经是老相识了。不论是循环、迭代都用它举例过,现在让我们还用它吧,只不过是要用上`yield`。 - - #!/usr/bin/env python - # coding=utf-8 - - def fibs(max): - """ - 斐波那契数列的生成器 - """ - n, a, b = 0, 0, 1 - while n < max: - yield b - a, b = b, a + b - n = n + 1 - - if __name__ == "__main__": - f = fibs(10) - for i in f: - print i , #Python 3: print(i, end=',') - -运行结果如下: - - $ python 21501.py - 1 1 2 3 5 8 13 21 34 55 - -用生成器方式实现的斐波那契数列是不是跟以前的有所不同了呢?读者可以将本书中已经演示过的斐波那契数列实现方式做一下对比,体会各种方法的差异。 - -经过上面的各种例子,已经明确,一个函数中,只要包含了`yield`语句,它就是生成器,也是迭代器。这种方式显然比前面写迭代器的类要简便多了。但,并不意味着上节的就被抛弃。是生成器还是迭代器,都是根据具体的使用情景而定。 - -最后一句,你在编程中,不用生成器也可以。 - ------- - -[总目录](./index.md)   |   [上节:迭代器](./214.md)   |   [下节:上下文管理器](./235.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 - - - - diff --git a/216.md b/216.md deleted file mode 100644 index 4c195df..0000000 --- a/216.md +++ /dev/null @@ -1,271 +0,0 @@ ->因为各人必担当自己的担子。在道理上受教的,当把一切需用的供给施教的人。不要自欺,神是轻慢不得的。人种的是什么,收的也是什么。顺着情欲撒种的,必从情欲收败坏;顺着圣灵撒种的,必从圣灵收永生。我们行善,不可丧志,若不灰心,到了时候就要收成。(GALATIANS 6:5-9) - -#错误和异常(1) - -对于程序在执行过程中因为错误或者别的原因而中止的现象,已经看过多次了,那些都可以归为“错误和异常”现象。本章就要对这种现象进行近距离观察。 - -##错误 - -不管是小白还是高手,在编写程序的时候,错误往往是难以避免的。可能是因为语法用错了,也可能是拼写做了,当然还可能其它莫名其妙的错误,比如冒号写成了全角的了,等等。总之,编程中有相当一部分工作就是要不停地修改错误。 - -Python中的错误之一是语法错误(syntax errors),比如: - - >>> for i in range(10) - File "<stdin>", line 1 - for i in range(10) - ^ - SyntaxError: invalid syntax - -上面那句话因为缺少冒号`:`,导致解释器无法解释,于是报错。这个报错行为是由Python的语法分析器完成的,并且检测到了错误所在文件和行号(`File "<stdin>", line 1`),还以向上箭头`^`标识错误位置(后面缺少`:`),最后显示错误类型。 - -另一种常见错误是逻辑错误。逻辑错误可能是由于不完整或者不合法的输入导致,也可能是无法生成、计算等,或者是其它逻辑问题。 - -当Python检测到一个错误时,解释器就无法继续执行下去,于是抛出提示信息,即为异常。 - -##异常 - -看一个异常(让0做分母了,这是小学生都相信会有异常的): - - >>> 1/0 - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - ZeroDivisionError: integer division or modulo by zero #Python 3: ZeroDivisionError: division by zero - -当Python抛出异常的时候,首先有“跟踪记录(Traceback)”,还可以给它取一个更优雅的名字“回溯”。后面显示异常的详细信息。异常所在位置(文件、行、在某个模块)。 - -最后一行是错误类型以及导致异常的原因。 - -在刚才的例子中,明确告诉我们异常的类型是`ZeroDivisionError`,并且对此异常类型做了解释(虽然Python 2和Python 3的解释不完全一致,但意思是一样的)。 - ->为什么0不能作除数(分母)?虽然小学生都知道不能作,但是不一定知道为什么不能作。读者对此有兴趣思考思考吗? - -下表中列出常见的异常 - -|异常 | 描述| -|-----|-----| -|NameError |尝试访问一个没有申明的变量| -|ZeroDivisionError | 除数为0| -|SyntaxError| 语法错误| -|IndexError| 索引超出序列范围| -|KeyError| 请求一个不存在的字典关键字| -|IOError| 输入输出错误(比如你要读的文件不存在)| -|AttributeError| 尝试访问未知的对象属性| - -为了能够深入理解,依次举例,展示异常的出现条件和结果。 - -###NameError - - >>> bar - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name 'bar' is not defined - -Python中变量虽然不需在使用变量之前先声明类型,但也需要对变量进行赋值,然后才能使用。不被赋值的变量,不能再Python中存在,因为变量相当于一个标签,要把它贴到对象上才有意义。 - -###ZeroDivisionError - - >>> 1/0 - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - ZeroDivisionError: integer division or modulo by zero - -你或许已经有足够的信心,貌似这样简单的错误在你的程序中是不会出现的,但在实际情境中,可能没有这么容易识别,所以,依然要小心为妙。 - -###SyntaxError - - >>> for i in range(10) - File "<stdin>", line 1 - for i in range(10) - ^ - SyntaxError: invalid syntax - -这种错误发生在Python代码编译的时候,当编译到这一句时,解释器不能讲代码转化为Python字节码,就报错。它只在程序运行之前出现。现在有不少编辑器都有语法校验功能,在你写代码的时候就能显示出语法的正误,这多少会对编程者有帮助。 - -###IndexError和KeyError - - >>> a = [1,2,3] - >>> a[4] - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - IndexError: list index out of range - - >>> d = {"python":"itdiffer.com"} - >>> d["java"] - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - KeyError: 'java' - -这两个都属于“鸡蛋里面挑骨头”类型,一定得报错了。不过在编程实践中,特别是循环的时候,常常由于循环条件设置不合理出现这种类型的错误。 - -###IOError - - >>> f = open("foo") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - IOError: [Errno 2] No such file or directory: 'foo' - -如果你确认有文件,就一定要把路径写正确,因为你并没有告诉Python要对你的Computer进行全身搜查。所以,Python会按照你指定位置去找,找不到就异常。 - -###AttributeError - - >>> class A(object): pass #Python 3: class A: pass - ... - >>> a = A() - >>> a.foo - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'A' object has no attribute 'foo' - -属性不存在。这种错误前面多次见到。 - -Python内建的异常也不仅仅上面几个,上面只是列出常见的异常中的几个。比如还有: - - >>> range("aaa") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - TypeError: range() integer end argument expected, got str. - #Python 3: - #TypeError: 'str' object cannot be interpreted as an integer - -总之,如果读者在调试程序的时候遇到了异常,不要慌张,这是好事情,是python在帮助你修改错误。只要认真阅读异常信息,再用`dir()`,`help()`或者官方网站文档、google等来协助,一定能解决问题。 - -##处理异常 - -如果在程序运行过程中,出现了“抛出异常”的现象,程序就会中止运行。这样的程序是不“健壮”的,“健壮”的程序应该是不为各种“异常”所击倒,所以,要在程序里面对各种异常进行处理。 - -Python 2: - - #!/usr/bin/env python - # coding=utf-8 - - while 1: - print "this is a division program." - c = raw_input("input 'c' continue, otherwise logout:") - if c == 'c': - a = raw_input("first number:") - b = raw_input("second number:") - try: - print float(a)/float(b) - print "*************************" - except ZeroDivisionError: - print "The second number can't be zero!" - print "*************************" - else: - break -Python 3: - - #!/usr/bin/env python - # coding=utf-8 - - while 1: - print("this is a division program.") - c = input("input 'c' continue, otherwise logout:") - if c == 'c': - a = input("first number:") - b = input("second number:") - try: - print(float(a)/float(b)) - print("*************************") - except ZeroDivisionError: - print("The second number can't be zero!") - print("*************************") - else: - break - -运行这段程序,显示如下过程: - - $ python 21601.py - this is a division program. - input 'c' continue, otherwise logout:c - first number:5 - second number:2 - 2.5 - ************************* - this is a division program. - input 'c' continue, otherwise logout:c - first number:5 - second number:0 - The second number can't be zero! - ************************* - this is a division program. - input 'c' continue, otherwise logout:d - $ - -从运行情况看,当在第二个数,即除数为0时,程序并没有因为这个错误而停止,而是给用户一个友好的提示,让用户有机会改正错误。这完全得益于程序中“处理异常”的设置,如果没有“处理异常”,当异常出现时就会导致程序中止。 - -###`try...except...`。 - -对于上述程序,只看`try`和`except`部分,如果没有异常发生,`except`子句在`try`语句执行之后被忽略;如果`try`子句中有异常可,该部分的其它语句被忽略,直接跳到`except`部分,执行其后面指定的异常类型及其子句。 - -`except`后面也可以没有任何异常类型,即无异常参数。如果这样,不论`try`部分发生什么异常,都会执行`except`。 - -在`except`子句中,可以根据异常或者别的需要,进行更多的操作。比如: - - #!/usr/bin/env python - # coding=utf-8 - - class Calculator(object): - is_raise = False - def calc(self, express): - try: - return eval(express) - except ZeroDivisionError: - if self.is_raise: - print "zero can not be division." #Python 3: "zero can not be division." - else: - raise - -在这里,应用了一个函数`eval()`,它的含义是: - - eval(...) - eval(source[, globals[, locals]]) -> value - - Evaluate the source in the context of globals and locals. - The source may be a string representing a Python expression - or a code object as returned by compile(). - The globals must be a dictionary and locals can be any mapping, - defaulting to the current globals and locals. - If only globals is given, locals defaults to it. - -例如: - - >>> eval("3+5") - 8 - -另外,在`except`子句中,有一个`raise`,作为单独一个语句。它的含义是将异常信息抛出。并且,`except`子句用了一个判断语句,根据不同的情况确定走不同分支。 - - if __name__ == "__main__": - c = Calculator() - print c.calc("8/0") - -故意出现0做分母的情况。这时候`is_raise = False`,则会: - - $ python 21602.py - Traceback (most recent call last): - File "21602.py", line 17, in <module> - print c.calc("8/0") - File "21602.py", line 8, in calc - return eval(express) - File "<string>", line 1, in <module> - ZeroDivisionError: integer division or modulo by zero #Python 3的信息略有差异 - -如果将`is_raise`的值改为True,就是这样了: - - if __name__ == "__main__": - c = Calculator() - c.is_raise = True #通过实例属性修改 - print c.calc("8/0") - -运行结果: - - $ python 21602.py - zero can not be division. - None - -最后的None是`c.calc("8/0")`的返回值,因为有`print c.calc("8/0")`,所以被打印出来。 - ------- - -[总目录](./index.md)   |   [上节:生成器](./215.md)   |   [下节:错误和异常(2)](./217.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/217.md b/217.md deleted file mode 100644 index 9d2fcb1..0000000 --- a/217.md +++ /dev/null @@ -1,288 +0,0 @@ ->你们得救是本乎恩,也因着信。这并不是出于自己,乃是神所赐的;也不是出于行为,免得有人自夸。(EPHESIANS 2:8-9) - -#错误和异常(2) - -###处理多个异常 - -`try...except...`是处理异常的基本方式。在此基础上,还可有扩展,能够处理多个异常。 - -处理多个异常,并不是因为同时报出多个异常。程序在运行中,只要遇到一个异常就会有反应,所以,每次捕获到的异常一定是一个。所谓处理多个异常的意思是可以容许捕获不同的异常,由不同的`except`子句处理。 - -Python 2: - - #!/usr/bin/env python - # coding=utf-8 - - while 1: - print "this is a division program." - c = raw_input("input 'c' continue, otherwise logout:") - if c == 'c': - a = raw_input("first number:") - b = raw_input("second number:") - try: - print float(a)/float(b) - print "*************************" - except ZeroDivisionError: - print "The second number can't be zero!" - print "*************************" - except ValueError: - print "please input number." - print "************************" - else: - break - -Python 3: - - #!/usr/bin/env python - # coding=utf-8 - - while 1: - print("this is a division program.") - c = input("input 'c' continue, otherwise logout:") - if c == 'c': - a = input("first number:") - b = input("second number:") - try: - print(float(a)/float(b)) - print("*************************") - except ZeroDivisionError: - print("The second number can't be zero!") - print("*************************") - except ValueError: - print("please input number.") - print("************************") - else: - break - -将上节的一个程序进行修改,增加了一个except子句,目的是如果用户输入的不是数字时,捕获并处理这个异常。测试如下: - - $ python 21701.py - this is a division program. - input 'c' continue, otherwise logout:c - first number:3 - second number:"hello" #输入了一个不是数字的东西 - please input number. #对照上面的程序,捕获并处理了这个异常 - ************************ - this is a division program. - input 'c' continue, otherwise logout:c - first number:4 - second number:0 - The second number can't be zero! - ************************* - this is a division program. - input 'c' continue, otherwise logout:4 - -如果有多个`except`,try里面遇到一个异常,就转到相应的`except`子句,其它的忽略。如果`except`没有相应的异常,该异常也会抛出,不过这是程序就要中止了,因为异常“浮出”程序顶部。 - -除了用多个`except`之外,还可以在一个`except`后面放多个异常参数,比如上面的程序,可以将`except`部分修改为: - - except (ZeroDivisionError, ValueError): - print "please input rightly." - print "********************" - -运行的结果就是: - - $ python 21701.py - this is a division program. - input 'c' continue, otherwise logout:c - first number:2 - second number:0 #捕获异常 - please input rightly. - ******************** - this is a division program. - input 'c' continue, otherwise logout:c - first number:3 - second number:a #异常 - please input rightly. - ******************** - this is a division program. - input 'c' continue, otherwise logout:d - $ - -需要注意的是,`except`后面如果是多个参数,一定要用圆括号包裹起来。否则,后果自负。 - -在对异常的处理中,前面都是自己写一个提示语,发现自己写的不如内置的异常错误提示好。希望把它打印出来。但是程序还能不能中断,怎么办? - -Python提供了一种方式,将上面代码修改如下: - -Python 2: - - while 1: - print "this is a division program." - c = raw_input("input 'c' continue, otherwise logout:") - if c == 'c': - a = raw_input("first number:") - b = raw_input("second number:") - try: - print float(a)/float(b) - print "*************************" - except (ZeroDivisionError, ValueError), e: - print e - print "********************" - else: - break - -Python 3: - - while 1: - print("this is a division program.") - c = input("input 'c' continue, otherwise logout:") - if c == 'c': - a = input("first number:") - b = input("second number:") - try: - print(float(a)/float(b)) - print("*************************") - except (ZeroDivisionError, ValueError) as e: - print(e) - print("********************") - else: - break - -运行一下,看看提示信息。 - - $ python 21702.py - this is a division program. - input 'c' continue, otherwise logout:c - first number:2 - second number:a #异常 - could not convert string to float: a - ******************** - this is a division program. - input 'c' continue, otherwise logout:c - first number:2 - second number:0 #异常 - float division by zero - ******************** - this is a division program. - input 'c' continue, otherwise logout:d - $ - -注意Python 3中的写法`except (ZeroDivisionError, ValueError) as e:` - -在上面程序中,只处理了两个异常,还可能有更多的异常,如果要处理,怎么办?可以这样:`execpt:`或者`except Exception, e`、`except Exception as e`,后面什么参数也不写就好了。 - -###else子句 - -有了`try...except...`,在一般情况下是够用的,但总有不一般的时候出现,所以,就增加了一个`else`子句。其实,人类的自然语言何尝不是如此呢?总要根据需要添加不少东西。 - - >>> try: - ... print "I am try" #Python 3: print("I am try"),下同,从略 - ... except: - ... print "I am except" - ... else: - ... print "I am else" - ... - I am try - I am else - -这段演示,能够帮助读者理解else的执行特点。如果执行了`try`,则`except`被忽略,但是else被执行。 - - >>> try: - ... print 1/0 - ... except: - ... print "I am except" - ... else: - ... print "I am else" - ... - I am except - -这时候else就不被执行了。 - -理解了else的执行特点,可以写这样一段程序,还是类似于前面的计算,只是如果输入的有误,就不断要求从新输入,直到输入正确并得到了结果,才不再要求输入内容,然后程序结束。 - -在看下面的参考代码之前,读者是否可以先自己写一段并调试?看看结果如何。 - -Python 2: - - #!/usr/bin/env python - # coding=utf-8 - while 1: - try: - x = raw_input("the first number:") - y = raw_input("the second number:") - - r = float(x)/float(y) - print r - except Exception, e: - print e - print "try again." - else: - break - -Python 3: - - #!/usr/bin/env python - # coding=utf-8 - while 1: - try: - x = input("the first number:") - y = input("the second number:") - - r = float(x)/float(y) - print(r) - except Exception as e: - print(e) - print("try again.") - else: - break - -先看运行结果: - - $ python 21703.py - the first number:2 - the second number:0 #异常,执行except - float division by zero - try again. #循环 - the first number:2 - the second number:a #异常 - could not convert string to float: a - try again. - the first number:4 - the second number:2 #正常,执行try - 2.0 #然后else:break,退出程序 - -相当满意的执行结果。 - -程序中的`except Exception, e`或`except Exception as e:`的含义是不管什么异常,这里都会捕获,并且传给变量`e`,然后用`print e`或者`print(e)`把异常信息打印出来。 - -###finally - -`finally`子句,一听这个名字,就感觉它是做善后工作的。的确如此,如果有了`finally`,不管前面执行的是`try`,还是`except`,最终都要执行它。因此一种说法是将`finally`用在可能的异常后进行清理。比如: - - >>> x = 10 - - >>> try: - ... x = 1/0 - ... except Exception, e: #Python 3: except Exception as e: - ... print e #Python 3: print(e) - ... finally: - ... print "del x" #Python 3: print(e) - ... del x - ... - integer division or modulo by zero - del x - -看一看`x`是否被删除? - - >>> x - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name 'x' is not defined - -当然,在应用中可以将上面的各个子句都综合起来使用,写成如下样式: - - try: - do something - except: - do something - else: - do something - finally - do something - ------- - -[总目录](./index.md)   |   [上节:错误和异常(1)](./216.md)   |   [下节:错误和异常(3)](./218.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/218.md b/218.md deleted file mode 100644 index 7c4fbc4..0000000 --- a/218.md +++ /dev/null @@ -1,88 +0,0 @@ ->凡事谦虚、温柔、忍耐,用爱心互相宽容,用平和彼此联络,竭力保守圣灵所赐合而为一的心。(EPHESIANS 4:2-3) - -#错误和异常(3) - -###assert - -从代码中理解`assert`。 - - >>> assert 1==1 - >>> assert 1==0 - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AssertionError - -assert,翻译过来是“断言”之意。`assert`是一句等价于布尔真的判定,发生异常就意味着表达式为假。 - -`assert`的应用情景就有点像汉语的意思一样,当程序运行到某个节点的时候,就断定某个变量的值必然是什么,或者对象必然拥有某个属性等,简单说就是断定什么东西必然是什么,如果不是,就抛出异常。 - - #!/usr/bin/env python - # coding=utf-8 - - class Account(object): - def __init__(self, number): - self.number = number - self.balance = 0 - - def deposit(self, amount): - assert amount > 0 - self.balance += balance - - def withdraw(self, amount): - assert amount > 0 - if amount <= self.balance: - self.balance -= amount - else: - print "balance is not enough." #Python 3: print("balance is not enough.") - -上面的程序中,`deposit()`和`withdraw()`方法的参数`amount`必须是大于零的,这里就用断言,如果不满足条件就会报错。比如这样来运行: - - if __name__ == "__main__": - a = Account(1000) - a.deposit(-10) - -出现的结果是: - - $ python 21801.py - Traceback (most recent call last): - File "21801.py", line 22, in <module> - a.deposit(-10) - File "21801.py", line 10, in deposit - assert amount > 0 - AssertionError - -这就是断言assert的引用。什么是使用断言的最佳时机?有文章做了总结: - -如果没有特别的目的,断言应该用于如下情况: - -- 防御性的编程 -- 运行时对程序逻辑的检测 -- 合约性检查(比如前置条件,后置条件) -- 程序中的常量 -- 检查文档 - -(上述要点来自:[Python 使用断言的最佳时机](http://www.oschina.net/translate/when-to-use-assert) ) - -不论是否理解,可以先看看,请牢记,在具体开发过程中,有时间就回来看看本教程,不断加深对这些概念的理解,这也是master的成就之法。 - -最后,引用维基百科中对“异常处理”词条的说明,作为对“错误和异常”部分的总结(有所删改): - ->异常处理,是编程语言或计算机硬件里的一种机制,用于处理软件或信息系统中出现的异常状况(即超出程序正常执行流程的某些特殊条件)。 - ->各种编程语言在处理异常方面具有非常显著的不同点(错误检测与异常处理区别在于:错误检测是在正常的程序流中,处理不可预见问题的代码,例如一个调用操作未能成功结束)。某些编程语言有这样的函数:当输入存在非法数据时不能被安全地调用,或者返回值不能与异常进行有效的区别。例如,C语言中的atoi函数(ASCII串到整数的转换)在输入非法时可以返回0。在这种情况下编程者需要另外进行错误检测(可能通过某些辅助全局变量如C的errno),或进行输入检验(如通过正则表达式),或者共同使用这两种方法。 - ->通过异常处理,我们可以对用户在程序中的非法输入进行控制和提示,以防程序崩溃。 - ->从进程的视角,硬件中断相当于可恢复异常,虽然中断一般与程序流本身无关。 - ->从子程序编程者的视角,异常是很有用的一种机制,用于通知外界该子程序不能正常执行。如输入的数据无效(例如除数是0),或所需资源不可用(例如文件丢失)。如果系统没有异常机制,则编程者需要用返回值来标示发生了哪些错误。 - ->一段代码是异常安全的,如果这段代码运行时的失败不会产生有害后果,如内存泄露、存储数据混淆、或无效的输出。 - ->Python语言对异常处理机制是非常普遍深入的,所以想写出不含try, except的程序非常困难。 - ------- - -[总目录](./index.md)   |   [上节:错误和异常(2)](./217.md)   |   [下节:编写模块](./219.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/219.md b/219.md deleted file mode 100644 index 0d8f2d6..0000000 --- a/219.md +++ /dev/null @@ -1,315 +0,0 @@ ->生气却不可犯罪,不可含怒到日落,也不可给魔鬼留地步。从前偷窃的,不要再偷。总要劳力,亲手作正经事,就可有余,分给那缺少的人。污秽的言语,一句不可出口,只要随事说造就人的好话,叫听见的人得益处。(EPHESIANS 4:26-29) - -随着对Python学习的深入,其优点日渐突出,让读者也感觉到Python的强大了。这种强大体现在“模块自信”上,因为Python不仅有很强大的自有模块(标准库),还有海量的第三方模块(或者包、库),并且很多开发者还在不断贡献自己开发的新模块(或者包、库),正是有了这么强大的“模块自信”,Python才被很多人钟爱。并且这种方式也正在不断被其它更多语言所借鉴,几乎成为普世行为了(不知道Python是不是首倡者)。 - -“模块自信”的本质是:**开放**。 - -Python不是一个封闭的体系,是一个开放系统。开放系统的最大好处就是避免了“熵增”。 - ->熵的概念是由德国物理学家克劳修斯于1865年(这一年李鸿章建立了江南机械制造总局,美国废除奴隶制,林肯总统遇刺身亡,美国南北战争结束。)所提出,是一种测量在动力学方面不能做功的能量总数,也就是当总体的熵增加,其做功能力也下降,熵的量度正是能量退化的指标。 - ->熵亦被用于计算一个系统中的失序现象,也就是计算该系统混乱的程度。 - ->根据熵的统计学定义, 热力学第二定律说明一个孤立系统的倾向于增加混乱程度。换句话说就是对于封闭系统而言,会越来越趋向于无序化。反过来,开放系统则能避免无序化。 - -#编写模块 - -想必读者已经熟悉了`import`语句,曾经有这样一个例子: - - >>> import math - >>> math.pow(3,2) - 9.0 - -这里的`math`就是Python标准库中的一个,用import引入这个模块,然后可以使用它里面的函数(方法),比如这个`pow()`函数。显然,这里不需要自己动手写具体函数的,我们的任务就是拿过来使用。这就是模块的好处:拿过来就用,不用自己重写。 - -请读者注意,我们会在实践中用到模块、库、包这些名词。它们有区别吗?有!只不过,现在我们暂时不区分,就笼统地说,阅读下面的内容,就理解它们之间的区分了。 - -##模块是程序 - -“模块是程序”一语道破了模块的本质,它就是一个扩展名为`.py`的Python程序。 - -我们能够在应该使用它的时候将它引用过来,节省精力,不需要重写雷同的代码。 - -但是,如果我自己写一个`.py`文件,是不是就能作为模块`import`过来呢?还不那么简单。必须得让Python解释器能够找到你写的模块。比如:在某个目录中,我写了这样一个文件: - - #!/usr/bin/env python - # coding=utf-8 - - lang = "python" - -并把它命名为pm.py,那么这个文件就可以作为一个模块被引入。不过由于这个模块是我自己写的,Python解释器并不知道,我得先告诉它我写了这样一个文件。 - - >>> import sys - >>> sys.path.append("~/Documents/VBS/StartLearningPython/2code/pm.py") - -用这种方式就是告诉Python解释器,我写的那个文件在哪里。在这个告诉方法中,也用`import sys`,不过由于`sys`是Python标准库之一,所以不用特别告诉Python解释器其位置。 - -上面那个一长串的地址,是Ubuntu系统的地址格式,如果读者使用的windows系统,请注意文件路径的写法。 - - >>> import pm - >>> pm.lang - 'python' - -本来在pm.py文件中有一个赋值语句,即`lang = "python"`,现在将pm.py作为模块引入(注意作为模块引入的时候不带扩展名),就可以通过“模块名字”+“.”+“属性或类、方法名称”来访问变量`pm.py`中的东西。当然,如果不存在的,肯定是要报错的。 - - >>> pm.xx - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - AttributeError: 'module' object has no attribute 'xx' - -请读者回到pm.py文件的存储目录,查看是不是多了一个扩展名是.pyc的文件?应该是。 - ->解释器,英文是:interpreter,港台翻译为:直译器。在Python中,它的作用就是将.py的文件转化为.pyc文件,而.pyc文件是由字节码(bytecode)构成的,然后计算机执行.pyc文件。关于这方面的详细解释,请参阅维基百科的词条:[直譯器](http://zh.wikipedia.org/zh/%E7%9B%B4%E8%AD%AF%E5%99%A8) - -不少人喜欢将这个世界简化简化再简化。比如人,就分为好人还坏人;比如编程语言就分为解释型和编译型,不但如此,还将两种类型的语言分别贴上运行效率高低的标签,解释型的运行速度就慢,编译型的就快。一般人都把Python看成解释型的,于是就得出它运行速度慢的结论。不少人都因此上当受骗了,认为Python不值得学,或者做不了什么“大事”。这就是将本来复杂的多样化的世界非得划分为“黑白”的结果,喜欢用“非此即彼”的思维方式考虑问题,比如一提到“日本人”,除了苍老师,都该杀。这基本上是小孩子的思维方法,可惜在某国大行其道。 - -世界是复杂的,“敌人的敌人就是朋友”是幼稚的,“一分为二”是机械的。当然,苍老师是德艺双馨的,无可辩驳、毋庸置疑。 - -就如同刚才看到的那个`.pyc`文件一样,当Python解释器读取了`.py`文件,先将它变成由字节码组成的`.pyc`文件,然后这个`.pyc`文件交给一个叫做Python虚拟机的东西去运行(那些号称编译型的语言也是这个流程,不同的是它们先有一个明显的编译过程,编译好了之后再运行)。如果`.py`文件修改了,Python解释器会重新编译,只是这个编译过程不是完全显示给你看的。 - -我这里说的比较笼统,要深入了解Python程序的执行过程,可以阅读这篇文章:[说说Python程序的执行过程](http://www.cnblogs.com/kym/archive/2012/05/14/2498728.html) - -有了`.pyc`文件后,每次运行就不需要重新让解释器来编译`.py`文件了,除非`.py`文件修改了。这样,Python运行的就是那个编译好了的`.pyc`文件。 - -是否还记得前面写有关程序然后执行时常常要用到`if __name__ == "__main__"`。那时我们直接用`python filename.py`的格式来运行该程序,此时我们也同样有了`.py`文件,不过是作为模块引入的。这就得深入探究一下,同样是`.py`文件,它是怎么知道是被当做程序执行还是被当做模块引入? - -为了便于比较,将pm.py文件进行改造。 - - #!/usr/bin/env python - # coding=utf-8 - - def lang(): - return "python" - - if __name__ == "__main__": - print lang() #Python 3: print(lang()) - -沿用先前的做法: - - $ python pm.py - python - -但是,如果将这个程序作为模块,导入,会是这样的: - - >>> import sys - >>> sys.path.append("~/Documents/VBS/StarterLearningPython/2code/pm.py") - >>> import pm - >>> pm.lang() - 'python' - -用`dir()`来查看它: - - >>> dir(pm) - ['__builtins__', '__doc__', '__file__', '__name__', '__package__', 'lang'] - -同样一个`.py`文件,可以把它当做程序来执行,还可以将它作为模块引入。 - - >>> __name__ - '__main__' - >>> pm.__name__ - 'pm' - -如果要作为程序执行,则`__name__ == "__main__"`;如果作为模块引入,则`pm.__name__ == "pm"`,即属性`__name__`的值是模块名称。 - -用这种方式就可以区分是执行程序还是作为模块引入了。 - -在一般情况下,如果仅仅是用作模块引入,不必写`if __name__ == "__main__"`。 - -##模块的位置 - -为了让我们自己写的模块能够被Python解释器知道,需要用`sys.path.append("~/Documents/VBS/StarterLearningPython/2code/pm.py")`。其实,在Python中,所有模块都被加入到了`sys.path`里面了。用下面的方法可以看到模块所在位置: - - >>> import sys - >>> import pprint - >>> pprint.pprint(sys.path) - ['', - '/usr/local/lib/python2.7/dist-packages/autopep8-1.1-py2.7.egg', - '/usr/local/lib/python2.7/dist-packages/pep8-1.5.7-py2.7.egg', - '/usr/lib/python2.7', - '/usr/lib/python2.7/plat-i386-linux-gnu', - '/usr/lib/python2.7/lib-tk', - '/usr/lib/python2.7/lib-old', - '/usr/lib/python2.7/lib-dynload', - '/usr/local/lib/python2.7/dist-packages', - '/usr/lib/python2.7/dist-packages', - '/usr/lib/python2.7/dist-packages/PILcompat', - '/usr/lib/python2.7/dist-packages/gtk-2.0', - '/usr/lib/python2.7/dist-packages/ubuntu-sso-client', - '~/Documents/VBS/StarterLearningPython/2code/pm.py'] - -从中也发现了我们自己写的那个文件。 - -凡在上面列表所包括位置内的`.py`文件都可以作为模块引入。不妨举个例子。把前面自己编写的`pm.py`文件修改为`pmlib.py`,然后把它复制到`'/usr/lib/python2.7/dist-packages`中。(这是以ubuntu为例说明,如果是其它操作系统,读者用类似方法也能找到。) - - $ sudo cp pm.py /usr/lib/python2.7/dist-packages/pmlib.py - [sudo] password for qw: - - $ ls /usr/lib/python2.7/dist-packages/pm* - /usr/lib/python2.7/dist-packages/pmlib.py - -文件放到了指定位置。看下面的: - - >>> import pmlib - >>> pmlib.lang - <function lang at 0xb744372c> - >>> pmlib.lang() - 'python' - -将模块文件放到指定位置是一种不错的方法。当程序员都喜欢自由,能不能放到别处呢? - -当然能,用`sys.path.append()`就是不管把文件放哪里,都可以把其位置告诉Python解释器。虽然这种方法在前面使用了,但其实是很不常用。因为它也有麻烦的地方,比如在交互模式下,如果关闭当前的terminal了,再开启(或者从新开启一个),还得重新告知。 - -比较常用的告知方法是设置PYTHONPATH环境变量。 - ->环境变量,不同操作系统的设置方法略有差异。读者可以根据自己的操作系统,到网上搜索设置方法。 - -我以Ubuntu为例,建立一个Python的目录,然后将我自己写的.py文件放到这里,并设置环境变量。 - - :~$ mkdir python - :~$ cd python - :~/python$ cp ~/Documents/VBS/StarterLearningPython/2code/pm.py mypm.py - :~/python$ ls - mypm.py - -然后将这个目录`~/python`,也就是`/home/qw/python`设置环境变量。 - - vim /etc/profile - -提醒要用root权限,在打开的文件最后增加`export PYTHONPATH = “$PYTHONPATH:/home/qw/python”`,然后保存退出即可。 - -环境变量更改之后,用户下次登录时生效,如果想立刻生效,则要执行下面的语句(此处感谢[Hsinwe](https://github.com/Hsinwe)朋友的指正): - - $ source /etc/profile - -注意,我是在`~/python`目录下输入`python`,进入到交互模式: - - :~$ cd python - :~/python$ python - - >>> import mypm - >>> mypm.lang() - 'python' - -如此,就完成了告知过程。 - -但是,问题并没有结束。正如[Hsinwe](https://github.com/Hsinwe)所指出的那样,我上面的操作使进入了模块所在的目录,如果进入别的目录呢?能不能正常引入呢?这是一个非常好的问题,恭请各位读者来试一试。 - -##`__all__`在模块中的作用 - -上面的模块虽然比较简单,但是已经显示了编写模块和在程序中导入模块的基本方式。在实践中,所编写的模块也许更复杂一点,比如,我写了这么一个模块,并把其文件命名为pp.py - - # /usr/bin/env python - # coding:utf-8 - - public_variable = "Hello, I am a public variable." - _private_variable = "Hi, I am a private variable." - - def public_teacher(): - print "I am a public teacher, I am from JP." #Python 3: print("I am a public teacher, I am from JP.") - - def _private_teacher(): - print "I am a private teacher, I am from CN." #Python 3: print("I am a private teacher, I am from CN.") - -接下来就是熟悉的操作了,进入到交互模式中。`pp.py`这个文件就是一个模块,这个模块中包含了变量和函数。 - - >>> import sys - >>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") - >>> import pp - >>> from pp import * - >>> public_variable - 'Hello, I am a public variable.' - >>> _private_variable - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name '_private_variable' is not defined - -变量`public_variable`能够被使用,但是另外一个变量`_private_variable`不能被调用,先观察一下两者的区别,后者是以单下划线开头的,这样的是私有变量。而`from pp import *`的含义是“希望能访问模块(pp)中有权限访问的全部名称”,那些被视为私有的变量或者函数或者类,当然就没有权限被访问了。 - -再如: - - >>> public_teacher() - I am a public teacher, I am from JP. - >>> _private_teacher() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name '_private_teacher' is not defined - -这不是绝对的,如果要访问具有私有性质的东西,可以这样做啦。 - - >>> import pp - >>> pp._private_teacher() - I am a private teacher, I am from CN. - >>> pp._private_variable - 'Hi, I am a private variable.' - -下面再对`pp.py`文件改写,增加一点东西。 - - # /usr/bin/env python - # coding:utf-8 - - __all__ = ['_private_variable', 'public_teacher'] - - public_variable = "Hello, I am a public variable." - _private_variable = "Hi, I am a private variable." - - def public_teacher(): - print "I am a public teacher, I am from JP." #Python 3: print("I am a public teacher, I am from JP.") - - def _private_teacher(): - print "I am a private teacher, I am from CN." #Python 3: print("I am a private teacher, I am from CN.") - -在修改之后的`pp.py`中,增加了`__all__`属性以及相应的值,在列表中包含了一个私有变量的名字和一个函数的名字。这是在告诉引用本模块的解释器,这两个东西是有权限被访问的,而且只有这两个东西。 - - >>> import sys - >>> sys.path.append("~/Documents/StarterLearningPython/2code/pp.py") - >>> from pp import * - >>> _private_variable - 'Hi, I am a private variable.' - -果然,曾经不能被访问的私有变量,现在能够访问了。 - - >>> public_variable - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name 'public_variable' is not defined - -因为这个变量没有在`__all__`的值中,虽然以前曾经被访问到过,但是现在就不行了。 - - >>> public_teacher() - I am a public teacher, I am from JP. - >>> _private_teacher() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name '_private_teacher' is not defined - -这只不过是再次说明前面的结论罢了。当然,如果以`import pp`引入模块,再用`pp._private_teacher`的方式是一样有效的。 - -##包或者库 - -顾名思义,包或者库,应该是比“模块”大的。也的确如此,一般来讲,一个“包”里面会有多个模块,当然,“库”是一个更大的概念了,比如Python标准库中的每个库都有好多个包,每个包都有若干个模块。 - -一个包是由多个模块组成,即多个`.py`的文件,那么这个所谓“包”也就是我们熟悉的一个目录罢了。现在就需要解决如何引用某个目录中的模块问题了。解决方法就是在该目录中放一个`__init__.py`文件。`__init__.py`是一个空文件,将它放在某个目录中,就可以将该目录中的其它`.py`文件作为模块被引用。 - -例如,我建立了一个目录,名曰:package_qi,里面依次放了pm.py和pp.py两个文件,然后建立一个空文件`__init__.py` - -接下来,我需要导入这个包(package_qi)中的模块。 - -下面这种方法,是很清晰明了的。 - - >>> import package_qi.pm - >>> package_qi.pm.lang() - 'python' - -另外一种方法,貌似简短,但如果多了,恐怕有点难以分辨了。 - - >>> from package_qi import pm - >>> pm.lang() - 'python' - -在后续制作网站的实战中,还会经常用到这种方式,届时会了解更多。请保持兴趣继续阅读,不要半途而废,不然疑惑得不到解决,好东西就看不到了。 - ------- - -[总目录](./index.md)   |   [上节:错误和异常(3)](./218.md)   |   [下节:标准库(1)](./220.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/220.md b/220.md deleted file mode 100644 index 24b8fa5..0000000 --- a/220.md +++ /dev/null @@ -1,225 +0,0 @@ ->一切苦毒、恼恨、忿怒、嚷闹、毁谤,并一切的恶毒,都当从你们中间除掉。并要以恩慈相待,存怜悯的心,彼此饶恕,正如神在基督里饶恕了你们一样(EPHESIANS 4:31-32) - -#标准库(1) - -“Python自带‘电池’”,听说过这种说法吗? - -在Python被安装的时候,就有不少模块也随着安装到本地的计算机上了。这些东西就如同“能源”、“电力”一样,让Python拥有了无限生机,能够非常轻而易举地免费使用很多模块。所以,称之为“自带电池”。 - -那些在安装Python时就默认已经安装好的模块被统称为“标准库”。 - -熟悉标准库编程之必须。 - -##引用的方式 - -所有模块都服从下述引用方式,是最基本的、也是最常用的,还是可读性非常好的: - - import modulename - -例如: - - >>> import pprint - >>> a = {"lang":"python", "book":"www.itdiffer.com", "teacher":"qiwsir", "goal":"from beginner to master"} - >>> pprint.pprint(a) - {'book': 'www.itdiffer.com', - 'goal': 'from beginner to master', - 'lang': 'python', - 'teacher': 'qiwsir'} - -在对模块进行说明的过程中,以标准库pprint为例。 - -以`pprint.pprint()`的方式使用模块中的一种方法,这种方法能够让字典格式化输出。看看结果是不是比原来更容易阅读了呢? - -在`import`后面,理论上可以跟好多模块名称。但是在实践中,我还是建议大家一次一个名称,太多了看着头晕眼花,不容易阅读。 - -这是用`import pprint`样式引入模块,并以`.`点号(英文半角)的形式引用其方法。 - -还有下面的方式: - - >>> from pprint import pprint - -意思是从`pprint`模块中之将`pprint()`引入,之后就可以直接使用它了。 - - >>> pprint(a) - {'book': 'www.itdiffer.com', - 'goal': 'from beginner to master', - 'lang': 'python', - 'teacher': 'qiwsir'} - -再懒惰一些,可以: - - >>> from pprint import * - -这就将pprint模块中的一切都引入了,于是可以像上面那样直接使用模块中的所有可用的内容。但是,这样造成的结果是可读性不是很好,并且,不管是不是在程序中用上,都拿过来,是不是太贪婪了?贪婪的结果是消耗内存。所以,这种方法,可以用于常用的并且模块属性或方法不是很多的情况。莫贪婪。 - -诚然,如果很明确使用模块中的哪些方法或属性,那么使用类似`from modulename import name1, name2, name3...`也未尝不可。需要再次提醒的是不能因为引入了模块而降低了可读性,让别人不知道呈现在眼前的方法是从何而来。 - -有时候引入的模块或者方法名称有点长,可以给它重命名。如: - - >>> import pprint as pr - >>> pr.pprint(a) - {'book': 'www.itdiffer.com', - 'goal': 'from beginner to master', - 'lang': 'python', - 'teacher': 'qiwsir'} - -当然,还可以这样: - - >>> from pprint import pprint as pt - >>> pt(a) - {'book': 'www.itdiffer.com', - 'goal': 'from beginner to master', - 'lang': 'python', - 'teacher': 'qiwsir'} - -但是不管怎么样,一定要让人看懂,且要过了若干时间,自己也还能看懂。记住:“软件很多时候是给人看的,只是偶尔让机器执行”。 - -##深入探究 - -继续以`pprint`为例,深入研究: - - >>> import pprint - >>> dir(pprint) - ['PrettyPrinter', '_StringIO', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_commajoin', '_id', '_len', '_perfcheck', '_recursion', '_safe_repr', '_sorted', '_sys', '_type', 'isreadable', 'isrecursive', 'pformat', 'pprint', 'saferepr', 'warnings'] - -对`dir()`并不陌生。从结果中可以看到`pprint`的属性和方法。其中有有的是双划线、单划线开头的。为了不影响我们的视觉,先把它们去掉。 - - >>> [ m for m in dir(pprint) if not m.startswith('_') ] - ['PrettyPrinter', 'isreadable', 'isrecursive', 'pformat', 'pprint', 'saferepr', 'warnings'] - -针对这几个,为了能够搞清楚它们的含义,可以使用`help()`,比如: - - >>> help(isreadable) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - NameError: name 'isreadable' is not defined - -这样做是错误的。知道错在何处吗? - - >>> help(pprint.isreadable) - -前面是用`import pprint`方式引入模块的。 - - Help on function isreadable in module pprint: - - isreadable(object) - Determine if saferepr(object) is readable by eval(). - -通过帮助信息,能够查看到该方法的详细说明。可以用这种方法一个一个地查过来,反正也不多,对每个方法都熟悉一些。 - -注意的是`pprint.PrettyPrinter`是一个类,后面的是函数(方法)。 - -再回头看看`dir(pprint)`的结果: - - >>> pprint.__all__ - ['pprint', 'pformat', 'isreadable', 'isrecursive', 'saferepr', 'PrettyPrinter'] - -这个结果是不是眼熟?除了"warnings",跟前面通过列表解析式得到的结果一样。 - -其实,当我们使用`from pprint import *`的时候,就是将`__all__`里面的方法引入,如果没有这个,就会将其它所有属性、方法等引入,包括那些以双划线或者单划线开头的变量、函数,事实上这些东西很少在引入模块时被使用。 - -##帮助、文档和源码 - -你能记住每个模块的属性和方法吗?比如前面刚刚查询过的`pprint`模块中的属性和方法,现在能背诵出来吗?我的记忆力不行,都记不住。所以,我非常喜欢使用`dir()`和`help()`,这也是本书从开始到现在,乃至到以后,总在提倡的方式。 - - >>> print pprint.__doc__ - Support to pretty-print lists, tuples, & dictionaries recursively. - - Very simple, but useful, especially in debugging data structures. - - Classes - ------- - - PrettyPrinter() - Handle pretty-printing operations onto a stream using a configured - set of formatting parameters. - - Functions - --------- - - pformat() - Format a Python object into a pretty-printed representation. - - pprint() - Pretty-print a Python object to a stream [default is sys.stdout]. - - saferepr() - Generate a 'standard' repr()-like value, but protect against recursive - data structures. - -`pprint.__doc__`是查看整个类的文档,还知道整个文档是写在什么地方的吗? - -还是使用pm.py那个文件,增加如下内容: - - #!/usr/bin/env python - # coding=utf-8 - - """ #增加的 - This is a document of the python module. #增加的 - """ #增加的 - - def lang(): - ... #省略了,后面的也省略了 - -在这个文件的开始部分,所有类、方法和`import`之前,写一个用三个引号包括的字符串,这就是文档。 - - >>> import sys - >>> sys.path.append("~/Documents/VBS/StarterLearningPython/2code") - >>> import pm - >>> print pm.__doc__ #Python 3: print(pm.__doc__) - - This is a document of the python module. - -这就是撰写模块文档的方法,即在`.py`文件的最开始写相应的内容。这个要求应该成为开发者的习惯。 - -对于Python的标准库和第三方模块,不仅可以看帮助信息和文档,还能够查看源码,因为它是开放的。 - -还是回头到`dir(pprint)`中找一找,有一个`__file__`属性,它就告诉我们这个模块的位置: - - >>> print pprint.__file__ #Python 3: print(pprint.__file__) - /usr/lib/python2.7/pprint.pyc - -我是在Ubuntu中为例,读者要注意观察自己的操作系统结果。 - -虽然是`.pyc文件,但是不用担心,根据显示的目录,找到相应的.py文件即可。 - - $ ls /usr/lib/python2.7/pp* - /usr/lib/python2.7/pprint.py /usr/lib/python2.7/pprint.pyc - -果然有一个pprint.py。打开它,就看到源码了。 - - $ cat /usr/lib/python2.7/pprint.py - - ... - - """Support to pretty-print lists, tuples, & dictionaries recursively. - - Very simple, but useful, especially in debugging data structures. - - Classes - ------- - - PrettyPrinter() - Handle pretty-printing operations onto a stream using a configured - set of formatting parameters. - - Functions - --------- - - pformat() - Format a Python object into a pretty-printed representation. - - .... - """ - -我只查抄了文档中的部分信息,是不是跟前面通过`__doc__`查看的结果一样一样的呢? - -请读者在闲暇时间阅读源码。 - -事实证明,这种标准库中的源码是质量最好的。阅读高质量的代码,是提高编程水平的途径之一。 - ------- - -[总目录](./index.md)   |   [上节:编写模块](./219.md)   |   [下节:标准库(2)](./221.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/221.md b/221.md deleted file mode 100644 index f62df2b..0000000 --- a/221.md +++ /dev/null @@ -1,232 +0,0 @@ ->所以你们要效法神,好像蒙慈爱的儿女一样。也要凭爱心行事,正如基督爱我们,为我们舍了自己,当作馨香的供物与祭物献与神。至于淫乱并一切污秽,或是贪婪,在你们中间连提都不可,方合圣徒的体统。(EPHESIANS 5:1-3) - -#标准库(2) - -python标准库内容非常多,有人专门为此写过一本书。在本教程中,我将根据自己的理解和喜好,选几个呈现出来,一来显示标准库之强大功能,二来演示如何理解和使用标准库。 - -##sys - -这是一个跟Python解释器关系密切的标准库,前面已经使用过`sys.path.append()`。 - - >>> import sys - >>> print sys.__doc__ - -显示了`sys`的基本文档,第一句话概括了本模块的基本特点。 - - This module provides access to some objects used or maintained by the - interpreter and to functions that interact strongly with the interpreter. - -在诸多`sys`函数和属性中,选择常用的(应该说是我觉得常用的)来说明。 - -###sys.argv - -sys.argv是专门用来向python解释器传递参数,名曰“命令行参数”。 - -先解释什么是命令行参数。 - - $ python --version - Python 2.7.6 - -这里的`--version`就是命令行参数。如果你使用`python --help`可以看到更多: - - $ python --help - usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... - Options and arguments (and corresponding environment variables): - -B : don't write .py[co] files on import; also PYTHONDONTWRITEBYTECODE=x - -c cmd : program passed in as string (terminates option list) - -d : debug output from parser; also PYTHONDEBUG=x - -E : ignore PYTHON* environment variables (such as PYTHONPATH) - -h : print this help message and exit (also --help) - -i : inspect interactively after running script; forces a prompt even - if stdin does not appear to be a terminal; also PYTHONINSPECT=x - -m mod : run library module as a script (terminates option list) - -O : optimize generated bytecode slightly; also PYTHONOPTIMIZE=x - -OO : remove doc-strings in addition to the -O optimizations - -R : use a pseudo-random salt to make hash() values of various types be - unpredictable between separate invocations of the interpreter, as - a defense against denial-of-service attacks - -只选择了部分内容摆在这里。所看到的如`-B, -h`之流,都是参数,比如`python -h`,其功能同上。那么`-h`也是命令行参数。 - -`sys.arg`在Python中的作用就是这样。通过它可以向解释器传递命令行参数。比如: - - #!/usr/bin/env python - # coding=utf-8 - - import sys - - print "The file name: ", sys.argv[0] #Python 3的读者,请自行修改为print()函数形式,下同,从略 - print "The number of argument", len(sys.argv) - print "The argument is: ", str(sys.argv) - -将上述代码保存,文件名是22101.py。然后如此做: - - $ python 22101.py - The file name: 22101.py - The number of argument 1 - The argument is: ['22101.py'] - -将结果和前面的代码做个对照。 - -- 在`$ python 22101.py`中,“22101.py”是要运行的文件名,同时也是命令行参数,是前面的`python`这个指令的参数。其地位与`python -h`中的参数`-h`是等同的。 -- sys.argv[0]是第一个参数,就是上面提到的`22101.py`,即文件名。 - -如果这样来试试: - - $ python 22101.py beginner master www.itdiffer.com - The file name: 22101.py - The number of argument 4 - The argument is: ['22101.py', 'beginner', 'master', 'www.itdiffer.com'] - -在这里用`sys.arg[1]`得到的就是`beginner`,依次类推。 - -###sys.exit() - -这个方法的意思是退出当前程序。 - - Help on built-in function exit in module sys: - - exit(...) - exit([status]) - - Exit the interpreter by raising SystemExit(status). - If the status is omitted or None, it defaults to zero (i.e., success). - If the status is an integer, it will be used as the system exit status. - If it is another kind of object, it will be printed and the system - exit status will be one (i.e., failure). - -从文档信息中可知,如果用`sys.exit()`退出程序,会返回`SystemExit`异常。这里先告知读者,还有另外一退出方式,是`os._exit()`,这两个有所区别。 - - #!/usr/bin/env python - # coding=utf-8 - - import sys - - for i in range(10): - if i == 5: - sys.exit() - else: - print i #Python 3: print(i) - -这段程序的运行结果就是: - - $ python 22102.py - 0 - 1 - 2 - 3 - 4 - -在大多数函数中会用到return,其含义是终止当前的函数,并向调用函数的位置返回相应值(如果没有就是None)。但是`sys.exit()`的含义是退出当前程序——不仅仅是函数,并发起`SystemExit`异常。这就是两者的区别了。 - -如果使用`sys.exit(0)`表示正常退出。若需要在退出的时候有一个对人友好的提示,可以用`sys.exit("I wet out at here.")`,那么字符串信息就被打印出来。 - -###sys.path - -`sys.path`已经不陌生了,它可以查找模块所在的目录,以列表的形式显示出来。如果用`append()`方法,就能够向这个列表增加新的模块目录。如前所演示。不在赘述。 - -###sys.stdout - -`sys.stdin`,`sys.stdout`,`sys.stderr`这三个有相似之处,它们所实现的都是类文件流,分别表示标准UNIX概念中的标准输入、标准输出和标准错误。 - -与Python中的函数功能对照,`sys.stdin`获得输入(等价于Python 2中的raw_input(),Python 3中的input()),`sys.stdout`负责输出。 - ->流是程序输入或输出的一个连续的字节序列,设备(例如鼠标、键盘、磁盘、屏幕、调制解调器和打印机)的输入和输出都是用流来处理的。程序在任何时候都可以使用它们。一般来讲,stdin(输入)并不一定来自键盘,stdout(输出)也并不一定显示在屏幕上,它们都可以重定向到磁盘文件或其它设备上。 - -此处仅就`sys.stdout`做一个简要说明。 - - >>> for i in range(3): - ... print i #Python 3: print(i) - ... - 0 - 1 - 2 - -`print`语句或者函数,你一定很熟悉,此前用的很多。并且,特别说明,在默认情况下,不管是语句还是函数,最后都是有`\n`换行的。这种输入,本质上是用`sys.stdout.write(object + '\n')`实现。 - - >>> import sys - >>> for i in range(3): - ... sys.stdout.write(str(i)) - ... - 012>>> - -跟前面的不同,是因为没有加上那个`\n`。 - - >>> for i in range(3): - ... sys.stdout.write(str(i) + '\n') - ... - 0 - 1 - 2 - -从这看出,两者是完全等效的。如果仅仅止于此,意义不大。关键是通过`sys.stdout`能够做到将输出内容从“控制台”转到“文件”,称之为重定向。这样也许控制台看不到(很多时候这个不重要),但是文件中已经有了输出内容。比如: - - >>> f = open("stdout.md", "w") - >>> sys.stdout = f - >>> print "Learn Python: From Beginner to Master" #Python 3: print("Learn Python: From Beginner to Master") - >>> f.close() - -当`sys.stdout = f`之后,就意味着将输出目的地转到了打开(建立)的文件中,如果使用`print`,即将内容输出到这个文件中,在控制台并无显现。 - -打开文件看看便知: - - $ cat stdout.md - Learn Python: From Beginner to Master - -以上,对标准库中的`sys`有了粗浅的了解。更详细内容,请读者运用本书已经反复使用的`dir()`、`help()`去探究,当然还有Google。 - -##copy - -前面对浅拷贝和深拷贝做了研究,这里再次提出,温故知新。 - - >>> import copy - >>> copy.__all__ - ['Error', 'copy', 'deepcopy'] - -这个模块中常用的就是copy和deepcopy。 - -为了具体说明,看这样一个例子,这个例子跟以前讨论浅拷贝和深拷贝略有不同,请读者认真推敲结果,并对照代码。 - - #!/usr/bin/env python - # coding=utf-8 - - import copy - - class MyCopy(object): #Python 3: class MyCopy: - def __init__(self, value): - self.value = value - - def __repr__(self): - return str(self.value) - - foo = MyCopy(7) - - a = ["foo", foo] - b = a[:] - c = list(a) - d = copy.copy(a) - e = copy.deepcopy(a) - - a.append("abc") - foo.value = 17 - - print "original: {0}\n slice: {1}\n list(): {2}\n copy(): {3}\n deepcopy(): {4}\n".forrmat(a,b,c,d,e) - #Python 3: - #print("original: {0}\n slice: {1}\n list(): {2}\n copy(): {3}\n deepcopy(): {4}\n".format(a,b,c,d,e)) - -保存并运行: - - $ python 22103.py - original: ['foo', 17, 'abc'] - slice: ['foo', 17] - list(): ['foo', 17] - copy(): ['foo', 17] - deepcopy(): ['foo', 7] - -尽在不言中,请读者认真对照上面的显示结果,体会深拷贝和浅拷贝。 - ------- - -[总目录](./index.md)   |   [上节:标准库(1)](./220.md)   |   [下节:标准库(3)](./222.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/222.md b/222.md deleted file mode 100644 index 5037539..0000000 --- a/222.md +++ /dev/null @@ -1,322 +0,0 @@ ->你们要谨慎行事,不要像愚昧人,当像智慧人。要爱惜光阴,因为现今的世代邪恶。不要作糊涂人,要明白主的旨意如何。不要醉酒,酒能使人放荡,乃要被圣灵充满。(EPHESIANS 5:15-18) - -#标准库(3) - -##OS - -os模块提供了访问操作系统服务的功能,它所包含的内容比较多,有时候感觉很神秘。 - - >>> import os - >>> dir(os) - ['EX_CANTCREAT', 'EX_CONFIG', 'EX_DATAERR', 'EX_IOERR', 'EX_NOHOST', 'EX_NOINPUT', 'EX_NOPERM', 'EX_NOUSER','EX_OK', 'EX_OSERR', 'EX_OSFILE', 'EX_PROTOCOL', 'EX_SOFTWARE', 'EX_TEMPFAIL', 'EX_UNAVAILABLE', 'EX_USAGE', 'F_OK', 'NGROUPS_MAX', 'O_APPEND', 'O_ASYNC', 'O_CREAT', 'O_DIRECT', 'O_DIRECTORY', 'O_DSYNC', 'O_EXCL', 'O_LARGEFILE', 'O_NDELAY', 'O_NOATIME', 'O_NOCTTY', 'O_NOFOLLOW', 'O_NONBLOCK', 'O_RDONLY', 'O_RDWR', 'O_RSYNC', 'O_SYNC', 'O_TRUNC', 'O_WRONLY', 'P_NOWAIT', 'P_NOWAITO', 'P_WAIT', 'R_OK', 'SEEK_CUR', 'SEEK_END', 'SEEK_SET', 'ST_APPEND', 'ST_MANDLOCK', 'ST_NOATIME', 'ST_NODEV', 'ST_NODIRATIME', 'ST_NOEXEC', 'ST_NOSUID', 'ST_RDONLY', 'ST_RELATIME', 'ST_SYNCHRONOUS', 'ST_WRITE', 'TMP_MAX', 'UserDict', 'WCONTINUED', 'WCOREDUMP', 'WEXITSTATUS', 'WIFCONTINUED', 'WIFEXITED', 'WIFSIGNALED', 'WIFSTOPPED', 'WNOHANG', 'WSTOPSIG', 'WTERMSIG', 'WUNTRACED', 'W_OK', 'X_OK', '_Environ', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '_copy_reg', '_execvpe', '_exists', '_exit', '_get_exports_list', '_make_stat_result', '_make_statvfs_result', '_pickle_stat_result', '_pickle_statvfs_result', '_spawnvef', 'abort', 'access', 'altsep', 'chdir', 'chmod', 'chown', 'chroot', 'close', 'closerange', 'confstr', 'confstr_names', 'ctermid', 'curdir', 'defpath', 'devnull', 'dup', 'dup2', 'environ', 'errno', 'error', 'execl', 'execle', 'execlp', 'execlpe', 'execv', 'execve', 'execvp', 'execvpe', 'extsep', 'fchdir', 'fchmod', 'fchown', 'fdatasync', 'fdopen', 'fork', 'forkpty', 'fpathconf', 'fstat', 'fstatvfs', 'fsync', 'ftruncate', 'getcwd', 'getcwdu', 'getegid', 'getenv', 'geteuid', 'getgid', 'getgroups', 'getloadavg', 'getlogin', 'getpgid', 'getpgrp', 'getpid', 'getppid', 'getresgid', 'getresuid', 'getsid', 'getuid', 'initgroups', 'isatty', 'kill', 'killpg', 'lchown', 'linesep', 'link', 'listdir', 'lseek', 'lstat', 'major', 'makedev', 'makedirs', 'minor', 'mkdir', 'mkfifo', 'mknod', 'name', 'nice', 'open', 'openpty', 'pardir', 'path', 'pathconf', 'pathconf_names', 'pathsep', 'pipe', 'popen', 'popen2', 'popen3', 'popen4', 'putenv', 'read', 'readlink', 'remove', 'removedirs', 'rename', 'renames', 'rmdir', 'sep', 'setegid', 'seteuid', 'setgid', 'setgroups', 'setpgid', 'setpgrp', 'setregid', 'setresgid', 'setresuid', 'setreuid', 'setsid', 'setuid', 'spawnl', 'spawnle', 'spawnlp', 'spawnlpe', 'spawnv', 'spawnve', 'spawnvp', 'spawnvpe', 'stat', 'stat_float_times', 'stat_result', 'statvfs', 'statvfs_result', 'strerror', 'symlink', 'sys', 'sysconf', 'sysconf_names', 'system', 'tcgetpgrp', 'tcsetpgrp', 'tempnam', 'times', 'tmpfile', 'tmpnam', 'ttyname', 'umask', 'uname', 'unlink', 'unsetenv', 'urandom', 'utime', 'wait', 'wait3', 'wait4', 'waitpid', 'walk', 'write'] - -这么多内容不能都介绍,列出来纯粹是要吓唬你一下,先混个脸熟,将来用到哪个了,可以到这里来找。 - -下面选择几个介绍一番,目的是不断强化我已经常用但是不知道你是否熟悉的学习方法,当然,还有最好的工具——google(内事不决问google,外事不明问谷歌,须梯子)。 - -###操作文件:重命名、删除文件 - -在对文件进行操作的时候,`open()`这个内建函数可以打开文件。但是,如果对文件进行改名、删除操作,就要是用os模块的方法了。 - -首先建立一个文件,文件名为22201.py,文件内容是: - - #!/usr/bin/env python - # coding=utf-8 - - print "This is a tmp file." - -然后将这个文件名称修改为别的名称。 - - >>> import os - >>> os.rename("22201.py", "newtemp.py") - -注意,我是先进入到了文件22201.py的目录,然后进入交互模式,所以,可以直接写文件名,如果不是这样,需要将文件名的路径写上。 - -`os.rename("22201.py", "newtemp.py")`中,第一个文件是原文件名称,第二个是打算修改成为的文件名。 - -然后查看,能够看到这个文件。 - - $ ls new* - newtemp.py - -文件内容可以用`cat newtemp.py`看看(这是在ubuntu系统,如果是windows系统,可以用其相应的编辑器打开文件看内容)。 - -除了修改文件名称,还可以修改目录名称。请注意阅读帮助信息。 - - Help on built-in function rename in module posix: - - rename(...) - rename(old, new) - - Rename a file or directory. - -另外一个os.remove(),首先看帮助信息,然后再实验。 - - Help on built-in function remove in module posix: - - remove(...) - remove(path) - - Remove a file (same as unlink(path)). - -为了测试,先建立一些文件。 - - $ pwd - /home/qw/Documents/VBS/StarterLearningPython/2code/rd - -这是我建立的临时目录,里面有几个文件: - - $ ls - a.py b.py c.py - -下面删除a.py文件 - - >>> import os - >>> os.remove("/home/qw/Documents/VBS/StarterLearningPython/2code/rd/a.py") - -看看删了吗? - - $ ls - b.py c.py - -果然管用呀。再来一个狠的: - - >>> os.remove("/home/qw/Documents/VBS/StarterLearningPython/2code/rd") - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - OSError: [Errno 21] Is a directory: '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' - -报错了。 - -我打算将这个目录下的所剩文件删光光,但这么做不行。注意帮助中一句话`Remove a file`,os.remove()就是用来删除文件的。并且从报错中也可以看到,错误的原因在于那个参数是一个目录。 - -要删除目录,还得继续向下学习。 - -###操作目录 - -**os.listdir**:显示目录中的内容(包括文件和子目录)。 - - Help on built-in function listdir in module posix: - - listdir(...) - listdir(path) -> list_of_strings - - Return a list containing the names of the entries in the directory. - - path: path of directory to list - - The list is in arbitrary order. It does not include the special - entries '.' and '..' even if they are present in the directory. - -看完帮助信息,读者一定觉得这是一个非常简单的方法,不过,特别注意它返回的值是列表,且不显示目录中某些隐藏文件或子目录。 - - >>> os.listdir("/home/qw/Documents/VBS/StarterLearningPython/2code/rd") - ['b.py', 'c.py'] - >>> files = os.listdir("/home/qw/Documents/VBS/StarterLearningPython/2code/rd") - >>> for f in files: - ... print f - ... - b.py - c.py - -**os.getcwd**:当前工作目录;**os.chdir**:改变当前工作目录 - -这两个函数怎么用?唯有通过`help()`看文档啦。请读者自行看看。就不贴出来了,仅演示一个例子: - - >>> cwd = os.getcwd() #当前目录 - >>> print cwd - /home/qw/Documents/VBS/StarterLearningPython/2code/rd - >>> os.chdir(os.pardir) #进入到上一级 - - >>> os.getcwd() #当前 - '/home/qw/Documents/VBS/StarterLearningPython/2code' - - >>> os.chdir("rd") #进入下级 - - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' - -`os.pardir`的功能是获得父级目录,相当于`..` - - >>> os.pardir - '..' - -**os.makedirs, os.removedirs**:创建和删除目录 - -直接上例子: - - >>> dir = os.getcwd() - >>> dir - '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' - >>> os.removedirs(dir) - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - File "/usr/lib/python2.7/os.py", line 170, in removedirs - rmdir(name) - OSError: [Errno 39] Directory not empty: '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' - -什么时候都不能得意忘形,一定要谦卑,从看文档开始一点一点地理解。看报错信息,要删除某个目录,那个目录必须是空的。 - - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code' - -这是当前目录,在这个目录下再建一个新的子目录: - - >>> os.makedirs("newrd") - >>> os.chdir("newrd") - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code/newrd' - -建立了一个。下面把刚刚建立的这个目录删除了,毫无疑问它是空的。 - - >>> os.listdir(os.getcwd()) - [] - >>> newdir = os.getcwd() - >>> os.removedirs(newdir) - -按照我的理解,这里应该报错。因为我是在当前工作目录删除当前工作目录。如果这样能够执行,总觉得有点别扭。但事实上行得通。就算是Python的规定吧。不过,让我来确定这个功能的话,还是习惯不能在本地删除本地。 - -按照上面的操作,再看当前的工作目录: - - >>> os.getcwd() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - OSError: [Errno 2] No such file or directory - -目录被删了,只能回到父级。 - - >>> os.chdir(os.pardir) - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code' - -有点不可思议,本来没有当前工作目录,怎么会有“父级”的呢?但显示就是这样。 - -补充一点,前面说的如果目录不空,就不能用`os.removedirs()`删除。但是,可以用模块`shutil`的`retree()`方法。 - - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code' - >>> os.chdir("rd") - >>> now = os.getcwd() - >>> now - '/home/qw/Documents/VBS/StarterLearningPython/2code/rd' - >>> os.listdir(now) - ['b.py', 'c.py'] - >>> import shutil - >>> shutil.rmtree(now) - >>> os.getcwd() - Traceback (most recent call last): - File "<stdin>", line 1, in <module> - OSError: [Errno 2] No such file or directory - -请读者注意的是,对于`os.makedirs()`还有这样的特点: - - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code' - >>> d0 = os.getcwd() - >>> d1 = d0+"/ndir1/ndir2/ndir3" #这是想建立的目录,但是中间的ndir1,ndir2也都不存在。 - >>> d1 - '/home/qw/Documents/VBS/StarterLearningPython/2code/ndir1/ndir2/ndir3' - >>> os.makedirs(d1) - >>> os.chdir(d1) - >>> os.getcwd() - '/home/qw/Documents/VBS/StarterLearningPython/2code/ndir1/ndir2/ndir3' - -不存在的目录也被建立起来,直到最右边的目录为止。与`os.makedirs()`类似的还有`os.mkdir()`,不过,`os.mkdir()`没有上面这个功能,它只能一层一层地建目录。`os.removedirs()`和`os.rmdir()`也类似,区别也类似上面。 - -###文件和目录属性 - -不管是哪种操作系统,都能看到文件或者目录的有关属性,那么,在os模块中,也有这样的一个方法:`os.stat()` - - >>> p = os.getcwd() #当前目录 - >>> p - '/home/qw/Documents/VBS/StarterLearningPython' - -显示这个目录的有关信息: - - >>> os.stat(p) - posix.stat_result(st_mode=16895, st_ino=4L, st_dev=26L, st_nlink=1, st_uid=0, st_gid=0, st_size=12288L, st_atime=1430224935, st_mtime=1430224935, st_ctime=1430224935) - -再指定一个文件: - - >>> pf = p + "/README.md" - -显示此文件的信息: - - >>> os.stat(pf) - posix.stat_result(st_mode=33279, st_ino=67L, st_dev=26L, st_nlink=1, st_uid=0, st_gid=0, st_size=50L, st_atime=1429580969, st_mtime=1429580969, st_ctime=1429580969) - -从结果中看,可能看不出什么来,先不用着急。这样的结果是对computer姑娘是友好的,但对读者可能不友好。如果用下面的方法,就友好多了: - - >>> fi = os.stat(pf) - >>> mt = fi[8] - -`fi[8]`就是`st_mtime`的值,它代表最后modified(修改)文件的时间。看结果: - - >>> mt - 1429580969 - -还是不友好,下面就用`time`模块来友好一下: - - >>> import time - >>> time.ctime(mt) - 'Tue Apr 21 09:49:29 2015' - -现在就对读者友好了。 - -用`os.stat()`能够查看文件或者目录的属性。如果要修改呢?比如在部署网站的时候,常常要修改目录或者文件的权限等。这种操作在Python的`os`模块能做到吗? - -要求越来越多了。在一般情况下,不在Python里做这个,当然,世界是复杂的,肯定有人会用到的,所以`os`模块提供了`os.chmod()`。 - -###操作命令 - -读者如果使用某种Linux系统,或者曾经用过DOS(恐怕很少),或者在Windows里面用过command,对敲命令都不陌生。通过命令来做事情的确是很酷的。比如,我是在Ubuntu中,要查看文件和目录,只需要`ls`就足够了。我并不是否认图形界面,对于某些人(比如程序员)在某些情况下,命令是不错的选项,甚至是离不开的。 - -`os`模块中提供了这样的方法,许可程序员在Python程序中使用操作系统的命令。(以下是在Ubuntu系统,如果读者是Windows,可以将命令换成DOS命令。) - - >>> p - '/home/qw/Documents/VBS/StarterLearningPython' - >>> command = "ls " + p - >>> command - 'ls /home/qw/Documents/VBS/StarterLearningPython' - -为了输入方便,采用了前面例子中已经有的那个目录,并且,用拼接字符串的方式,将要输入的命令(查看某文件夹下的内容)组装成一个字符串,赋值给变量command,然后: - - >>> os.system(command) - 01.md 101.md 105.md 109.md 113.md 117.md 121.md 125.md 129.md 201.md 205.md 209.md 213.md 217.md 221.md index.md - 02.md 102.md 106.md 110.md 114.md 118.md 122.md 126.md 130.md 202.md 206.md 210.md 214.md 218.md 222.md n001.md - 03.md 103.md 107.md 111.md 115.md 119.md 123.md 127.md 1code 203.md 207.md 211.md 215.md 219.md 2code README.md - 0images 104.md 108.md 112.md 116.md 120.md 124.md 128.md 1images 204.md 208.md 212.md 216.md 220.md 2images - 0 - -这样就列出来了该目录下的所有内容。 - -需要注意的是,`os.system()`是在当前进程中执行命令,直到它执行结束。如果需要一个新的进程,可以使用`os.exec`或者`os.execvp`。对此有兴趣详细了解的读者,可以查看帮助文档了解。另外,`os.system()`是通过shell执行命令,执行结束后将控制权返回到原来的进程,但是`os.exec()`及相关的函数,则在执行后不将控制权返回到原继承,从而使Python失去控制。 - -关于Python对进程的管理,此处暂不过多介绍,读者可以查阅有关专门资料。 - -`os.system()`是一个用途很多的方法。曾有一个朋友网上询问,用它来启动浏览器。不过,这个操作的确要非常仔细。为什么呢?演示一下就明白了。 - - >>> os.system("/usr/bin/firefox") - - (process:4002): GLib-CRITICAL **: g_slice_set_config: assertion 'sys_page_size == 0' failed - - (firefox:4002): GLib-GObject-WARNING **: Attempt to add property GnomeProgram::sm-connect after class was initialised - ...... - -我是在Ubuntu上操作的,浏览器的地址是`/usr/bin/firefox`,可是,那个朋友是Windows系统,那么就要非常小心了,因为在Windows里面,表示路径的斜杠是跟上面显示的是反着的,可是在Python中`\`代表转义。比较简单的一个方法是用`r"c:\user\firfox.exe"`的样式,因为在`r" "`中的,都被认为是原始字符。而且Windows系统中,一般情况下那个文件不是安装在我演示的那个简单样式的文件夹中,而是`C:\Program Files`,这中间还有空格,所以还要注意空格问题。读者按照这些提示,看看能不能完成用`os.system()`启动firefox的操作。 - -凡事感觉麻烦的东西,必然有另外简单的来替代。于是又有了一个`webbrowser`模块。可以专门用来打开指定网页。 - - >>> import webbrowser - >>> webbrowser.open("http://www.itdiffer.com") - True - -不管是什么操作系统,只要如上操作就能打开网页。 - -真是神奇的标准库,有如此多的工具,能不加速开发进程吗?能不降低开发成本吗?“人生苦短,我用python”! - ------- - -[总目录](./index.md)   |   [上节:标准库(2)](./221.md)   |   [下节:标准库(4)](./223.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/223.md b/223.md deleted file mode 100644 index a8e2db2..0000000 --- a/223.md +++ /dev/null @@ -1,238 +0,0 @@ ->凡事不可结党,不可贪图虚浮的荣耀,只要存心谦卑,各人看别人比自己强。各人不要单顾自己的事,也要顾别人的事。(PHILIPPIANS 2:3-4) - -#标准库(4) - -##heapq - -堆(heap),是一种数据结构,引用维基百科中的说明: - ->堆(英语:heap),是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。 - -对于这个新的概念,读者不要心慌意乱或者恐惧,因为它本质上不是新东西,而是在我们已经熟知的知识基础上的扩展出来的内容。 - -堆的实现是通过构造二叉堆,也就是一种二叉树。 - -###基本知识 - -这是一棵在苏州很常见的香樟树,马路两边、公园里随处可见,特别是在艳阳高照的时候,它的树荫能把路面遮盖。 - -![](./2images/22301.jpg) - -但是,在编程中,我们常说的树是这样的: - -![](./2images/22302.jpg) - -这是一棵“根”在上面树,也是编程中常说的树。为什么这样呢?我想主要是画着更方便吧。上面那棵树虽然根在上面了,还完全是写实的作品,本人做为一名隐姓埋名多年的抽象派画家,不喜欢这样的树,我画出来的是这样的: - -![](./2images/22303.jpg) - -这棵树有两根枝杈,可不要小看这两根枝杈哦,《道德经》上不是说“一生二,二生三,三生万物”。一就是下面那个干,二就是两个枝杈,每个枝杈还可以看做下一个一,然后再有两个枝杈,如此不断重复(这简直就是递归呀),就成为了一棵大树。 - -这棵树画成这样就更符合编程的习惯了,可以向下不断延伸。 - -![](./2images/22304.jpg) - -并且给它一个正规的名字:二叉树。 - -![](./2images/22305.jpg) - -这个也是二叉树,完全脱胎于我所画的后现代抽象主义作品。但是略有不同,这幅图在各个枝杈上显示的是数字。这种类型的“树”就编程语言中所说的二叉树,维基百科曰: - ->在计算机科学中,二叉樹(英语:Binary tree)是每個節點最多有兩個子樹的樹結構。通常子樹被稱作「左子樹」(left subtree)和「右子樹」(right subtree)。二叉樹常被用於實現二叉查找樹和二叉堆。 - -在上图的二叉树中,最顶端的那个数字就相当于树根,也就称作“根”。每个数字所在位置成为一个节点,每个节点向下分散出两个“子节点”。并不是所有节点都有两个子节点。这类二叉树又称为完全二叉树(Complete Binary Tree)。 - -也有的二叉树,所有的节点都有两个子节点,这类二叉树称作满二叉树(Full Binarry Tree),如下图: - -![](./2images/22306.jpg) - -下面讨论的对象是通过二叉树实现的,其具有如下特点: - -- 节点的值大于等于(或者小于等于)任何子节点的值。 -- 节点左子树和右子树是一个二叉堆。如果父节点的值总大于等于任何一个子节点的值,其为最大堆;若父节点值总小于等于子节点值,为最小堆。上面图示中的完全二叉树,就表示一个最小堆。 - -堆的类型还有别的,如斐波那契堆等,但很少用。所以,通常就将二叉堆也说成堆。下面所说的堆,就是二叉堆。而二叉堆又是用二叉树实现的。 - -堆用列表(有的语言中成为数组)来表示。如下图所示: - -![](./2images/22307.jpg) - -从图示中可以看出,将逻辑结构中的树的节点数字依次填入到存储结构中。看这个图,似乎是列表中按照顺序进行排列似的。但是,这仅仅由于那个树的特点造成的,如果是下面的树: - -![](./2images/22308.jpg) - -如果将上面的逻辑结构转换为存储结构,读者就能看出来了,不再是按照顺序排列的了。 - -关于堆的各种,如插入、删除、排序等,本节不会专门讲授编码方法,读者可以参与有关资料。但是,下面要介绍如何用Python中的模块`heapq`来实现这些操作。 - -###heapq模块 - -`heapq`中的heap是堆,q就是queue(队列)的缩写。此模块包括: - - >>> import heapq - >>> heapq.__all__ - ['heappush', 'heappop', 'heapify', 'heapreplace', 'merge', 'nlargest', 'nsmallest', 'heappushpop'] - -依次查看这些函数的使用方法。 - -**heappush(heap, x)**:将x压入堆heap - - Help on built-in function heappush in module _heapq: - - heappush(...) - heappush(heap, item) -> None. Push item onto heap, maintaining the heap invariant. - - - >>> import heapq - >>> heap = [] - >>> heapq.heappush(heap, 3) - >>> heapq.heappush(heap, 9) - >>> heapq.heappush(heap, 2) - >>> heapq.heappush(heap, 4) - >>> heapq.heappush(heap, 0) - >>> heapq.heappush(heap, 8) - >>> heap - [0, 2, 3, 9, 4, 8] - -请读者注意上面的操作,在向堆增加数值的时候并没有严格按照什么顺序,是随意的。但是,当查看堆的数据时,显示的是一个有一定顺序的数据结构。这种顺序不是按照从小到大,而是按照前面所说的完全二叉树的方式排列,显示的是存储结构,可以把它还原为逻辑结构,看看是不是一棵二叉树。 - -![](./2images/22309.jpg) - -由此可知,利用`heappush()`函数将数据放到堆里面之后,会自动按照二叉树的结构进行存储。 - -**heappop(heap)**:删除最小元素 - -承接上面的操作: - - >>> heapq.heappop(heap) - 0 - >>> heap - [2, 4, 3, 9, 8] - -用`heappop()`函数,从heap堆中删除了一个最小元素,并且返回该值。但是,这时候的heap显示顺序,并非简单地将0去除,而是按照完全二叉树的规范重新进行排列。 - -**heapify()**:将列表转换为堆 - -如果已经建立了一个列表,利用`heapify()`可以将列表直接转化为堆。 - - >>> hl = [2, 4, 6, 8, 9, 0, 1, 5, 3] - >>> heapq.heapify(hl) - >>> hl - [0, 3, 1, 4, 9, 6, 2, 5, 8] - -经过这样的操作,列表`hl`就变成了堆(堆的顺序和列表不同),可以对`hl`(堆)使用`heappop()`或者`heappush()`等函数了。否则,不可。 - - >>> heapq.heappop(hl) - 0 - >>> heapq.heappop(hl) - 1 - >>> hl - [2, 3, 5, 4, 9, 6, 8] - >>> heapq.heappush(hl, 9) - >>> hl - [2, 3, 5, 4, 9, 6, 8, 9] - -不要认为堆里面只能放数字,举例中之所以用数字,是因为对它的逻辑结构比较好理解。 - - >>> heapq.heappush(hl, "q") - >>> hl - [2, 3, 5, 4, 9, 6, 8, 9, 'q'] - >>> heapq.heappush(hl, "w") - >>> hl - [2, 3, 5, 4, 9, 6, 8, 9, 'q', 'w'] - -**heapreplace()** - -是`heappop()`和`heappush()`的联合,也就是删除一个,同时加入一个。例如: - - >>> heap - [2, 4, 3, 9, 8] - >>> heapq.heapreplace(heap, 3.14) - 2 - >>> heap - [3, 4, 3.14, 9, 8] - -先简单罗列关于堆的几个常用函数。那么堆在编程实践中的用途有哪些呢?排序是一个应用方面。一提到排序,读者肯定想到的是`sorted()`或者列表中的`sort()`,这两个都是常用的函数,而且在一般情况下已经足够使用了。但如果使用堆排序,相对于其他排序,也有自己的优势。不同的排序方法有不同的特点,读者可以自行深入研究不同排序的优劣。 - -##deque - -有这样一个问题:一个列表,比如是`[1, 2, 3]`,在最右边增加一个数字。 - -这也太简单了,不就是用`append()`追加一个吗? - -这是简单。但,得寸进尺,能不能在最左边增加一个数字呢? - -这个应该有办法,不过得想想了。读者在向下阅读之前候,能不能想出一个方法来? - - >>> lst = [1, 2, 3] - >>> lst.append(4) - >>> lst - [1, 2, 3, 4] - >>> nl = [7] - >>> nl.extend(lst) - >>> nl - [7, 1, 2, 3, 4] - -你或许还有别的方法。但是,Python为我们提供了一个更简单的模块,来解决这个问题。 - - >>> from collections import deque - -这次用这种引用方法是因为`collections`模块中东西很多,我们只用到`deque`。 - - >>> lst = [1, 2, 3, 4] - -还是这个列表,试试分别从右边和左边增加数字。 - - >>> qlst = deque(lst) - -这是必需的,将列表转化为deque。deque在汉语中有一个名字,叫做“双端队列”(double-ended queue)。 - - >>> qlst.append(5) #从右边增加 - >>> qlst - deque([1, 2, 3, 4, 5]) - >>> qlst.appendleft(7) #从左边增加 - >>> qlst - deque([7, 1, 2, 3, 4, 5]) - -这样操作多么容易呀。继续看删除: - - >>> qlst.pop() - 5 - >>> qlst - deque([7, 1, 2, 3, 4]) - >>> qlst.popleft() - 7 - >>> qlst - deque([1, 2, 3, 4]) - -删除也分左右。下面这个,请读者仔细观察。 - - >>> qlst.rotate(3) - >>> qlst - deque([2, 3, 4, 1]) - -rotate()的功能是将[1, 2, 3, 4]的首尾连起来,你就想象一个圆环,在上面有1, 2, 3, 4几个数字。如果一开始正对着你的是1,依顺时针方向排列,就是从1开始的数列,如下图所示: - -![](./2images/22310.jpg) - -经过`rotate()`,这个环就发生旋转了,如果是`rotate(3)`,表示每个数字按照顺时针方向前进三个位置,于是变成了: - -![](./2images/22311.jpg) - -请原谅我的后现代注意超级抽象派作图方式。从图中可以看出,数列变成了`[2, 3, 4, 1]`。`rotate()`作用就好像在拨转这个圆环。 - - >>> qlst - deque([3, 4, 1, 2]) - >>> qlst.rotate(-1) - >>> qlst - deque([4, 1, 2, 3]) - -如果参数是负数,那么就逆时针转。 - -在deque中,还有`extend()`和`extendleft()`方法。读者可自己调试。 - ------- - -[总目录](./index.md)   |   [上节:标准库(3)](./222.md)   |   [下节:标准库(5)](./224.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/224.md b/224.md deleted file mode 100644 index 6c90af4..0000000 --- a/224.md +++ /dev/null @@ -1,421 +0,0 @@ ->凡所行的,都不要发怨言、起争论,使你们无可指摘,诚实无伪,在这弯曲悖谬的世代作神无瑕疵的儿女。你们显在这世代中,好像明光照耀,将生命的道表明出来。(PHILIPPIANS 2:14-15) - -#标准库(5) - -“一寸光阴一寸金,寸金难买寸光阴”,时间是宝贵的。 - -在日常生活中,“时间”这个术语是比较笼统和含糊的。在物理学中,“时间”是一个非常明确的概念。在Python中,“时间”可以通过相关模块实现。 - -##calendar - - >>> import calendar - >>> cal = calendar.month(2015, 1) - >>> print cal - January 2015 - Mo Tu We Th Fr Sa Su - 1 2 3 4 - 5 6 7 8 9 10 11 - 12 13 14 15 16 17 18 - 19 20 21 22 23 24 25 - 26 27 28 29 30 31 - -轻而易举得到了2015年1月的日历,并且排列的还那么整齐。这就是`calendar`模块。读者可以用`dir()`去查看这个模块下的所有内容。为了让读者阅读方便,将常用的整理如下: - -**calendar(year,w=2,l=1,c=6)** - -返回year年的年历,3个月一行,间隔距离为c。 每日宽度间隔为w字符。每行长度为`21* w+18+2* c`。l是每星期行数。 - - >>> year = calendar.calendar(2015) - >>> print year - 2015 - - January February March - Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su - 1 2 3 4 1 1 - 5 6 7 8 9 10 11 2 3 4 5 6 7 8 2 3 4 5 6 7 8 - 12 13 14 15 16 17 18 9 10 11 12 13 14 15 9 10 11 12 13 14 15 - 19 20 21 22 23 24 25 16 17 18 19 20 21 22 16 17 18 19 20 21 22 - 26 27 28 29 30 31 23 24 25 26 27 28 23 24 25 26 27 28 29 - 30 31 - - April May June - Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su - 1 2 3 4 5 1 2 3 1 2 3 4 5 6 7 - 6 7 8 9 10 11 12 4 5 6 7 8 9 10 8 9 10 11 12 13 14 - 13 14 15 16 17 18 19 11 12 13 14 15 16 17 15 16 17 18 19 20 21 - 20 21 22 23 24 25 26 18 19 20 21 22 23 24 22 23 24 25 26 27 28 - 27 28 29 30 25 26 27 28 29 30 31 29 30 - - July August September - Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su - 1 2 3 4 5 1 2 1 2 3 4 5 6 - 6 7 8 9 10 11 12 3 4 5 6 7 8 9 7 8 9 10 11 12 13 - 13 14 15 16 17 18 19 10 11 12 13 14 15 16 14 15 16 17 18 19 20 - 20 21 22 23 24 25 26 17 18 19 20 21 22 23 21 22 23 24 25 26 27 - 27 28 29 30 31 24 25 26 27 28 29 30 28 29 30 - 31 - - October November December - Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su - 1 2 3 4 1 1 2 3 4 5 6 - 5 6 7 8 9 10 11 2 3 4 5 6 7 8 7 8 9 10 11 12 13 - 12 13 14 15 16 17 18 9 10 11 12 13 14 15 14 15 16 17 18 19 20 - 19 20 21 22 23 24 25 16 17 18 19 20 21 22 21 22 23 24 25 26 27 - 26 27 28 29 30 31 23 24 25 26 27 28 29 28 29 30 31 - 30 - -其它部分就是按照上面的样式,将2015年度的各个月份日历完全显示出来。 - -**isleap(year)** - -判断是否为闰年,是则返回true,否则false. - - >>> calendar.isleap(2000) - True - >>> calendar.isleap(2015) - False - -怎么判断一年是闰年,常常见诸于一些编程语言的练习题,现在用一个方法搞定。 - -**leapdays(y1, y2)** - -返回在y1,y2两年之间的闰年总数,包括y1,但不包括y2,这有点如同序列的切片一样。 - - >>> calendar.leapdays(2000, 2004) - 1 - >>> calendar.leapdays(2000, 2003) - 1 - -**month(year, month, w=2, l=1)** - -返回year年month月日历,两行标题,一周一行。每日宽度间隔为w字符。每行的长度为7* w+6,l是每星期的行数。 - - >>> print calendar.month(2015, 5) - May 2015 - Mo Tu We Th Fr Sa Su - 1 2 3 - 4 5 6 7 8 9 10 - 11 12 13 14 15 16 17 - 18 19 20 21 22 23 24 - 25 26 27 28 29 30 31 - -**monthcalendar(year,month)** - -返回一个列表,列表内的元素还是列表。每个子列表代表一个星期,都是从星期一到星期日,如果没有本月的日期,则为0。 - - >>> calendar.monthcalendar(2015, 5) - [[0, 0, 0, 0, 1, 2, 3], [4, 5, 6, 7, 8, 9, 10], [11, 12, 13, 14, 15, 16, 17], [18, 19, 20, 21, 22, 23, 24], [25, 26, 27, 28, 29, 30, 31]] - -读者可以将这个结果和`calendar.month(2015, 5)`去对照理解。 - -**monthrange(year, month)** - -返回一个元组,里面有两个整数。第一个整数代表着该月的第一天从星期几是(从0开始,依次为星期一、星期二,直到6代表星期日)。第二个整数是该月一共多少天。 - - >>> calendar.monthrange(2015, 5) - (4, 31) - -从返回值可知,2015年5月1日是星期五,这个月一共31天。这个结果,也可以从日历中看到。 - -**weekday(year,month,day)** - -输入年月日,知道该日是星期几(注意,返回值依然按照从0到6依次对应星期一到星期六)。 - - >>> calendar.weekday(2015, 5, 4) #星期一 - 0 - >>> calendar.weekday(2015, 6, 4) #星期四 - 3 - -##time - -**time()** - -`time`模块很常用,比如记录某个程序运行时间的长短等,下面一一道来其中的方法。 - -- `time()` - - >>> import time - >>> time.time() - 1430745298.391026 - -`time.time()`获得的是当前时间(严格说是时间戳),只不过这个时间对人不友好,它是以1970年1月1日0时0分0秒为计时起点,到当前的时间长度(不考虑闰秒)。 - ->UNIX時間,或稱POSIX時間是UNIX或類UNIX系統使用的時間表示方式:從協調世界時1970年1月1日0時0分0秒起至現在的總秒數,不考慮閏秒 - ->現時大部分使用UNIX的系統都是32位元的,即它們會以32位二進制數字表示時間。但是它們最多只能表示至協調世界時間2038年1月19日3時14分07秒(二進制:01111111 11111111 11111111 11111111,0x7FFF:FFFF),在下一秒二進制數字會是10000000 00000000 00000000 00000000,(0x8000:0000),這是負數,因此各系統會把時間誤解作1901年12月13日20時45分52秒(亦有說回歸到1970年)。這時可能會令軟體發生問題,導致系統癱瘓。 - ->目前的解決方案是把系統由32位元轉為64位元系統。在64位系統下,此時間最多可以表示到292,277,026,596年12月4日15時30分08秒。 - -有没有对人友好一点的时间显示呢? - -**localtime()** - - >>> time.localtime() - time.struct_time(tm_year=2015, tm_mon=5, tm_mday=4, tm_hour=21, tm_min=33, tm_sec=39, tm_wday=0, tm_yday=124, tm_isdst=0) - -这个就友好多了。得到的结果可以称之为时间元组(也有括号),其各项的含义是: - -|索引| 属性 |含义| -|----|----------|----| -|0 |tm_year| 年| -|1 |tm_mon| 月| -|2| tm_mday |日| -|3| tm_hour| 时| -|4| tm_min| 分| -|5| tm_sec| 秒| -|6| tm_wday| 一周中的第几天| -|7| tm_yday| 一年中的第几天| -|8| tm_isdst| 夏令时| - - >>> t = time.localtime() - >>> t[1] - 5 - -通过索引能够得到相应的属性,上面的例子中就得到了当前时间的月份。 - -其实,`time.localtime()`不是没有参数,它在默认情况下,以`time.time()`的时间戳为参数。言外之意就是说可以自己输入一个时间戳,返回那个时间戳所对应的时间(按照公元和时分秒计时)。例如: - - >>> time.localtime(100000) - time.struct_time(tm_year=1970, tm_mon=1, tm_mday=2, tm_hour=11, tm_min=46, tm_sec=40, tm_wday=4, tm_yday=2, tm_isdst=0) - -**gmtime()** - -localtime()得到的是本地时间,如果要国际化,就最好使用格林威治时间。可以这样: - - >>> import time - >>> time.gmtime() - time.struct_time(tm_year=2015, tm_mon=5, tm_mday=4, tm_hour=23, tm_min=46, tm_sec=34, tm_wday=0, tm_yday=124, tm_isdst=0) - ->格林威治標準時間(中國大陸翻譯:格林尼治平均時間或格林尼治標準時間,台、港、澳翻譯:格林威治標準時間;英语:Greenwich Mean Time,GMT)是指位於英國倫敦郊區的皇家格林威治天文台的標準時間,因為本初子午線被定義在通過那裡的經線。 - -还有更友好的,请继续阅读。 - -**asctime()** - - >>> time.asctime() - 'Mon May 4 21:46:13 2015' - -`time.asctime()`的参数为空时,默认是以`time.localtime()`的值为参数,所以得到的是当前日期时间和星期。当然,也可以自己设置参数: - - >>> h = time.localtime(1000000) - >>> h - time.struct_time(tm_year=1970, tm_mon=1, tm_mday=12, tm_hour=21, tm_min=46, tm_sec=40, tm_wday=0, tm_yday=12, tm_isdst=0) - >>> time.asctime(h) - 'Mon Jan 12 21:46:40 1970' - -注意,`time.asctime()`的参数必须是时间元组,类似上面那种。不是时间戳,通过`time.time()`得到的时间戳也可以转化为上面形式。 - -**ctime()** - - >>> time.ctime() - 'Mon May 4 21:52:22 2015' - -在没有参数的时候,事实上是以`time.time()`的时间戳为参数。也可以自定义一个时间戳。 - - >>> time.ctime(1000000) - 'Mon Jan 12 21:46:40 1970' - -跟前面得到的结果是一样的,只不过用了时间戳作为参数。 - -在前述函数中,通过`localtime()`、`gmtime()`得到的是时间元组,通过`time()`得到的是时间戳。有的函数如`asctime()`是以时间元组为参数,有的如`ctime()`是以时间戳为参数,这样做的目的是为了满足编程中多样化的需要。 - -**mktime()** - -mktime()也是以时间元组为参数,但是它返回的不是可读性更好的那种样式,而是: - - >>> lt = time.localtime() - >>> lt - time.struct_time(tm_year=2015, tm_mon=5, tm_mday=5, tm_hour=7, tm_min=55, tm_sec=29, tm_wday=1, tm_yday=125, tm_isdst=0) - >>> time.mktime(lt) - 1430783729.0 - -返回了时间戳。就类似于`localtime()`的逆过程(`localtime()`是以时间戳为参数)。 - -好像还缺点什么,因为在编程中,用的比较多的是“字符串”,似乎还没有将时间转化为字符串的函数。这个应该有。 - -**strftime()** - -函数格式稍微复杂一些。 - - Help on built-in function strftime in module time: - - strftime(...) - strftime(format[, tuple]) -> string - - Convert a time tuple to a string according to a format specification. - See the library reference manual for formatting codes. When the time tuple - is not present, current time as returned by localtime() is used. - -将时间元组按照指定格式要求转化为字符串。如果不指定时间元组,就默认为`localtime()`值。说复杂,是在于其format,需要用到下面的东西。 - -| 格式| 含义| 取值范围(格式)| -|------|-------|-------------------| -|%y |去掉世纪的年份 |00-99,如"15"| -|%Y |完整的年份| 如"2015" | -|%j |指定日期是一年中的第几天| 001-366| -| %m| 返回月份| 01-12| -|%b| 本地简化月份的名称| 简写英文月份| -|%B| 本地完整月份的名称| 完整英文月份| -|%d| 该月的第几日| 如5月1日返回"01"| -|%H| 该日的第几时(24小时制)| 00-23| -|%l| 该日的第几时(12小时制)| 01-12| -|%M| 分钟| 00-59| -|%S| 秒 |00-59| -|%U| 在该年中的第多少星期(以周日为一周起点)| 00-53| -|%W| 同上,只不过是以周一为起点|00-53| -|%w| 一星期中的第几天 |0-6| -|%Z| 时区|在中国大陆测试,返回CST,即China Standard Time| -|%x| 日期| 日/月/年| -|%X| 时间| 时:分:秒| -|%c| 详细日期时间| 日/月/年 时:分:秒| -|%%| ‘%’字符 |‘%’字符| -|%p| 上下午| AM or PM| - -简要列举如下: - - >>> time.strftime("%y,%m,%d") - '15,05,05' - >>> time.strftime("%y/%m/%d") - '15/05/05' - -分隔符可以自由指定。既然已经变成字符串了,就可以“随心所欲不逾矩”了。 - -**strptime()** - - Help on built-in function strptime in module time: - - strptime(...) - strptime(string, format) -> struct_time - - Parse a string to a time tuple according to a format specification. - See the library reference manual for formatting codes (same as strftime()). - -`strptime()`的作用是将字符串转化为时间元组。 - -请注意的是,其参数要指定两个,一个是时间字符串,另外一个是时间字符串所对应的格式,格式符号用上表中的。例如: - - >>> today = time.strftime("%y/%m/%d") - >>> today - '15/05/05' - >>> time.strptime(today, "%y/%m/%d") - time.struct_time(tm_year=2015, tm_mon=5, tm_mday=5, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=125, tm_isdst=-1) - -##datetime - -虽然`time`模块已经能够把有关时间方面的东西搞定了,但是,有时调用起来感觉不是很直接,于是又出来了一个`datetime`模块,供程序猿和程序媛们选择使用。 - -`datetime`模块中有几个类: - -- datetime.date:日期类,常用的属性有year/month/day -- datetime.time:时间类,常用的有hour/minute/second/microsecond -- datetime.datetime:日期时间类 -- datetime.timedelta:时间间隔,即两个时间点之间的时间长度 -- datetime.tzinfo:时区类 - -###`date`类 - -通过实例了解常用的属性: - - >>> import datetime - >>> today = datetime.date.today() - >>> today - datetime.date(2015, 5, 5) - -其实这里生成了一个日期对象,然后操作这个对象的各种属性。可以用`print`,以获得更佳视觉: - - >>> print today #Python 3: print(today) - 2015-05-05 - >>> print today.ctime() #Python 3: print(today.ctime()) - Tue May 5 00:00:00 2015 - >>> print today.timetuple() #Python 3: print(today.timetuple()) - time.struct_time(tm_year=2015, tm_mon=5, tm_mday=5, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=1, tm_yday=125, tm_isdst=-1) - >>> print today.toordinal() #Python 3: print(today.toordinal()) - 735723 - -特别注意,如果你妄图用`datetime.date.year()`,是会报错的,因为year不是一个方法,必须这样行: - - >>> print today.year - 2015 - >>> print today.month - 5 - >>> print today.day - 5 - -进一步看看时间戳与格式化时间格式的转换 - - >>> to = today.toordinal() - >>> to - 735723 - >>> print datetime.date.fromordinal(to) - 2015-05-05 - - >>> import time - >>> t = time.time() - >>> t - 1430787994.80093 - >>> print datetime.date.fromtimestamp(t) - 2015-05-05 - -还可以更灵活一些,修改日期。 - - >>> d1 = datetime.date(2015,5,1) - >>> print d1 - 2015-05-01 - >>> d2 = d1.replace(year=2005, day=5) - >>> print d2 - 2005-05-05 - -###time类 - -也要生成time对象 - - >>> t = datetime.time(1,2,3) - >>> print t - 01:02:03 - -它的常用属性: - - >>> print t.hour - 1 - >>> print t.minute - 2 - >>> print t.second - 3 - >>> t.microsecond - 0 - >>> print t.tzinfo - None - -###timedelta类 - -主要用来做时间的运算。比如: - - >>> now = datetime.datetime.now() - >>> print now #Python 3: print(now) - 2015-05-05 09:22:43.142520 - -没有讲述`datetime`类,因为在有了date和time类知识之后,这个类比较简单。 - -对`now`增加5个小时; - - >>> b = now + datetime.timedelta(hours=5) - >>> print b #Python 3: print(b) - 2015-05-05 14:22:43.142520 - -增加两周; - - >>> c = now + datetime.timedelta(weeks=2) - >>> print c #Python 3: print(c) - 2015-05-19 09:22:43.142520 - -计算时间差: - - >>> d = c - b - >>> print d #Python 3: print(d) - 13 days, 19:00:00 - ------- - -[总目录](./index.md)   |   [上节:标准库(4)](./223.md)   |   [下节:标准库(6)](./225.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/225.md b/225.md deleted file mode 100644 index 170d9d5..0000000 --- a/225.md +++ /dev/null @@ -1,312 +0,0 @@ ->弟兄们,我不是以为自己已经得着了,我只有一件事,就是忘记背后,努力面前的,向着标杆直跑,要得神在基督耶稣里从上面召我来得的奖赏。(PHILIPPIANS 3:13-14) - -#标准库(6) - -##urllib - -`urllib`模块用于读取来自网上(服务器上)的数据,比如不少人用Python做爬虫程序,就可以使用这个模块。先看一个简单例子: - -在Python 2中,这样操作: - - >>> import urllib - >>> itdiffer = urllib.urlopen("http://www.itdiffer.com") - -但是如果读者使用的是Python 3,必须换个姿势: - - >>> import urllib.request - >>> itdiffer = urllib.request.urlopen("http://www.itdiffer.com") - -这样就已经把我的网站[www.itdiffer.com](http://www.itdiffer.com)首页的内容拿过来了,得到了一个类似文件的对象。接下来的操作跟操作一个文件一样。 - - >>> print itdiffer.read() #Python 3: print(itdiffer.read()) - <!DOCTYPE HTML> - <html> - <head> - <title>I am Qiwsir - ....//因为内容太多,下面就省略了 - -这样就完成了对网页的抓取。当然,如果你真的要做爬虫程序,还不是仅仅如此。这里不介绍爬虫程序如何编写,仅说明`urllib`模块的常用属性和方法。 - -Python 2: - - >>> dir(urllib) - ['ContentTooShortError', 'FancyURLopener', 'MAXFTPCACHE', 'URLopener', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', '_asciire', '_ftperrors', '_have_ssl', '_hexdig', '_hextochr', '_hostprog', '_is_unicode', '_localhost', '_noheaders', '_nportprog', '_passwdprog', '_portprog', '_queryprog', '_safe_map', '_safe_quoters', '_tagprog', '_thishost', '_typeprog', '_urlopener', '_userprog', '_valueprog', 'addbase', 'addclosehook', 'addinfo', 'addinfourl', 'always_safe', 'base64', 'basejoin', 'c', 'ftpcache', 'ftperrors', 'ftpwrapper', 'getproxies', 'getproxies_environment', 'i', 'localhost', 'noheaders', 'os', 'pathname2url', 'proxy_bypass', 'proxy_bypass_environment', 'quote', 'quote_plus', 're', 'reporthook', 'socket', 'splitattr', 'splithost', 'splitnport', 'splitpasswd', 'splitport', 'splitquery', 'splittag', 'splittype', 'splituser', 'splitvalue', 'ssl', 'string', 'sys', 'test1', 'thishost', 'time', 'toBytes', 'unquote', 'unquote_plus', 'unwrap', 'url2pathname', 'urlcleanup', 'urlencode', 'urlopen', 'urlretrieve'] - -Python 3: - - >>> dir(urllib.request) - ['AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'AbstractHTTPHandler', 'BaseHandler', 'CacheFTPHandler', 'ContentTooShortError', 'DataHandler', 'FTPHandler', 'FancyURLopener', 'FileHandler', 'HTTPBasicAuthHandler', 'HTTPCookieProcessor', 'HTTPDefaultErrorHandler', 'HTTPDigestAuthHandler', 'HTTPError', 'HTTPErrorProcessor', 'HTTPHandler', 'HTTPPasswordMgr', 'HTTPPasswordMgrWithDefaultRealm', 'HTTPPasswordMgrWithPriorAuth', 'HTTPRedirectHandler', 'HTTPSHandler', 'MAXFTPCACHE', 'OpenerDirector', 'ProxyBasicAuthHandler', 'ProxyDigestAuthHandler', 'ProxyHandler', 'Request', 'URLError', 'URLopener', 'UnknownHandler', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '__version__', '_cut_port_re', '_ftperrors', '_have_ssl', '_localhost', '_noheaders', '_opener', '_parse_proxy', '_proxy_bypass_macosx_sysconf', '_randombytes', '_safe_gethostbyname', '_thishost', '_url_tempfiles', 'addclosehook', 'addinfourl', 'base64', 'bisect', 'build_opener', 'collections', 'contextlib', 'email', 'ftpcache', 'ftperrors', 'ftpwrapper', 'getproxies', 'getproxies_environment', 'getproxies_registry', 'hashlib', 'http', 'install_opener', 'io', 'localhost', 'noheaders', 'os', 'parse_http_list', 'parse_keqv_list', 'pathname2url', 'posixpath', 'proxy_bypass', 'proxy_bypass_environment', 'proxy_bypass_registry', 'quote', 're', 'request_host', 'socket', 'splitattr', 'splithost', 'splitpasswd', 'splitport', 'splitquery', 'splittag', 'splittype', 'splituser', 'splitvalue', 'ssl', 'sys', 'tempfile', 'thishost', 'time', 'to_bytes', 'unquote', 'unquote_to_bytes', 'unwrap', 'url2pathname', 'urlcleanup', 'urljoin', 'urlopen', 'urlparse', 'urlretrieve', 'urlsplit', 'urlunparse', 'warnings'] - -选几个常用的介绍,如果读者用到其它的,可以通过查看文档了解。 - -**urlopen()** - -`urlopen()`主要用于打开url文件,然后就获得指定url的数据,然后就如同在操作文件那样来操作。 - - Help on function urlopen in module urllib: - - urlopen(url, data=None, proxies=None) - Create a file-like object for the specified URL to read from. - -查看文档信息,在Python 2下使用`help(urllib.urlopen)`,在Python 3下使用`help(urllib.request.urlopen)`。两者查询结果略有差异,上述显示的是Python 2下的查询结果。 - -得到的对象被叫做类文件。从名字中也可以理解后面的操作了。先对参数说明一下: - -- url:远程数据的路径,常常是网址 -- data:如果使用post方式,这里就是所提交的数据 -- proxies:设置代理 - -关于参数的详细说明,还可以参考[Python的官方文档](https://docs.python.org/2/library/urllib.html),这里仅演示最常用的,如前面的例子那样。 - -当得到了类文件对象之后,即变量`itdiffer`引用了得到的类文件对象,依然可以用老办法`dir(itdiffer)`查看它的属性和方法,但在不同的Python版本下,显示结果是有所不同的,区别的原因是两个版本对文件对象的不同处理。 - -简单举例: - - >>> itdiffer.info() - - >>> itdiffer.getcode() - 200 - >>> itdiffer.geturl() - 'http://www.itdiffer.com' - -更多情况下,已经建立了类文件对象,通过对文件操作方法,获得想要的数据。 - -**对url编码、解码** - -url对其中的字符有严格的编码要求,要对url进行编码和解码。在进行web开发的时候特别要注意。`urllib`或者`urllib.request`模块提供这种功能。 - -- quote(string[, safe]):对字符串进行编码。参数safe指定了不需要编码的字符 -- urllib.unquote(string) :对字符串进行解码 -- quote_plus(string [ , safe ] ) :与urllib.quote类似,但这个方法用'+'来替换空格`' '`,而quote用'%20'来代替空格 -- unquote_plus(string ) :对字符串进行解码; -- urllib.urlencode(query[, doseq]):将dict或者包含两个元素的元组列表转换成url参数。例如{'name': 'laoqi', 'age': 40}将被转换为"name=laoqi&age=40" -- pathname2url(path):将本地路径转换成url路径 -- url2pathname(path):将url路径转换成本地路径 - -看例子就更明白了。下面的操作是在Python 2中进行的, - - >>> du = "http://www.itdiffer.com/name=python book" - >>> urllib.quote(du) - 'http%3A//www.itdiffer.com/name%3Dpython%20book' - >>> urllib.quote_plus(du) - 'http%3A%2F%2Fwww.itdiffer.com%2Fname%3Dpython+book' - -如果是Python 3的读者,请注意,该方法不在前述所引用的`urllib.request`中,尽管它里面有`quote()`方法,但最好的操作是`import urllib.parrse`,所以,Python 3下应该这么操作: - - >>> import urllib.parse - >>> du = 'http://www.itdiffer.com/name=python book' - >>> urllib.parse.quote(du) - 'http%3A//www.itdiffer.com/name%3Dpython%20book' - >>> urllib.parse.quote_plus(du) - 'http%3A%2F%2Fwww.itdiffer.com%2Fname%3Dpython+book' - -注意看空格的变化,一个被编码成`%20`,另外一个是`+` - -再看解码的,假如在google中搜索`零基础 python`,结果如下图: - -![](./2images/22501.jpg) - -我的教程可是在这次搜索中排列第一个哦。 - -这不是重点,重点是看url,它就是用`+`替代空格了。 - -Python 2: - - >>> dup = urllib.quote_plus(du) - >>> urllib.unquote_plus(dup) - 'http://www.itdiffer.com/name=python book' - -Python 3: - - >>> dup = urllib.parse.quote_plus(du) - >>> urllib.parse.unquote_plus(dup) - 'http://www.itdiffer.com/name=python book' - -从解码效果来看,比较完美地逆过程。 - -Python 2: - - >>> urllib.urlencode({"name":"qiwsir","web":"itdiffer.com"}) - 'web=itdiffer.com&name=qiwsir' - -Python 3: - - >>> urllib.parse.urlencode({"name":"qiwsir","web":"itdiffer.com"}) - 'name=qiwsir&web=itdiffer.com' - -如果将来你要做一个网站,上面的方法或许会用到。 - -**urlretrieve()** - -虽然urlopen()能够建立类文件对象,但是,那还不等于将远程文件保存在本地存储器中,`urlretrieve()`就是满足这个需要的。先看实例。 - -以下是在Python 2中的操作: - - >>> import urllib - >>> urllib.urlretrieve("http://www.itdiffer.com/images/me.jpg", "me.jpg") - ('me.jpg', ) - -如果在Python 3中,则要使用`urllib.request`: - - >>> import urllib.request - >>> urllib.request.urlretrieve("http://www.itdiffer.com/images/me.jpg", "me.jpg") - ('me.jpg', ) - -`me.jpg`是一张存在于服务器上的图片,地址是:http://www.itdiffer.com/images/me.jpg,把它保存到本地存储器中,并且仍旧命名为me.jpg。注意,如果只写这个名字,表示存在启动Python交互模式的那个目录中,否则,可以指定存储具体目录和文件名。 - -在urllib官方文档([Python 2文档](https://docs.python.org/2/library/urllib.html),[Python 3文档](https://docs.python.org/3/library/urllib.html))中有一大段相关说明,读者可以去认真阅读。这里仅简要介绍一下相关参数。 - -`urllib.urlretrieve(url[, filename[, reporthook[, data]]])` - -- url:文件所在的网址 -- filename:可选。将文件保存到本地的文件名,如果不指定,urllib会生成一个临时文件来保存 -- reporthook:可选。是回调函数,当链接服务器和相应数据传输完毕时触发本函数 -- data:可选。如果用post方式所发出的数据 - -函数执行完毕,返回的结果是一个元组(filename, headers),filename是保存到本地的文件名,headers是服务器响应头信息。 - - #!/usr/bin/env python - # coding=utf-8 - - import urllib - #Python 3 - #import urllib.request - - def go(a,b,c): - per = 100.0 * a * b / c - if per > 100: - per = 100 - print "%.2f%%" % per - - url = "http://ww2.sinaimg.cn/mw690/8e4023f8gw1f34gs20b4ij20qo0zkthw.jpg" - local = "/home/qw/Pictures/g.jpg" - urllib.urlretrieve(url, local, go) - #Python 3 - #urllib.request.urlrretrieve(url, local, go) - -这段程序就是要下载指定的图片,并且保存为本地指定位置的文件,同时要显示下载的进度。上述文件保存之后执行,显示如下效果: - - $ python 22501.py - 0.00% - 8.13% - 16.26% - 24.40% - 32.53% - 40.66% - 48.79% - 56.93% - 65.06% - 73.19% - 81.32% - 89.46% - 97.59% - 100.00% - -到相应目录中查看,能看到与网上地址一样的文件。我这里就不对结果截图了,读者自行查看(或许在本书出版的时候,这张什么的图片已经看不到了,你应该把这视为正常现象,可以换一张图片地址)。 - -##urllib2 - -urllib2是另外一个模块,它跟urllib有相似的地方——都是对url相关的操作,也有不同的地方。关于这方面,有一篇文章讲的不错:[Python: difference between urllib and urllib2](http://www.hacksparrow.com/python-difference-between-urllib-and-urllib2.html) - -我选取一段,供大家参考: - ->urllib2 can accept a Request object to set the headers for a URL request, urllib accepts only a URL. That means, you cannot masquerade your User Agent string etc. - ->urllib provides the urlencode method which is used for the generation of GET query strings, urllib2 doesn't have such a function. This is one of the reasons why urllib is often used along with urllib2. - -所以,有时候两个要同时使用,urllib模块和urllib2模块有的方法可以相互替代,有的不能。看下面的属性方法列表就知道了。 - - >>> dir(urllib2) - ['AbstractBasicAuthHandler', 'AbstractDigestAuthHandler', 'AbstractHTTPHandler', 'BaseHandler', 'CacheFTPHandler', 'FTPHandler', 'FileHandler', 'HTTPBasicAuthHandler', 'HTTPCookieProcessor', 'HTTPDefaultErrorHandler', 'HTTPDigestAuthHandler', 'HTTPError', 'HTTPErrorProcessor', 'HTTPHandler', 'HTTPPasswordMgr', 'HTTPPasswordMgrWithDefaultRealm', 'HTTPRedirectHandler', 'HTTPSHandler', 'OpenerDirector', 'ProxyBasicAuthHandler', 'ProxyDigestAuthHandler', 'ProxyHandler', 'Request', 'StringIO', 'URLError', 'UnknownHandler', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', '_cut_port_re', '_opener', '_parse_proxy', '_safe_gethostbyname', 'addinfourl', 'base64', 'bisect', 'build_opener', 'ftpwrapper', 'getproxies', 'hashlib', 'httplib', 'install_opener', 'localhost', 'mimetools', 'os', 'parse_http_list', 'parse_keqv_list', 'posixpath', 'proxy_bypass', 'quote', 'random', 'randombytes', 're', 'request_host', 'socket', 'splitattr', 'splithost', 'splitpasswd', 'splitport', 'splittag', 'splittype', 'splituser', 'splitvalue', 'sys', 'time', 'toBytes', 'unquote', 'unwrap', 'url2pathname', 'urlopen', 'urlparse', 'warnings'] - -比较常用的比如`urlopen()`跟`urllib.urlopen()`是完全类似的。 - -但是,要注意,上述言论仅仅是针对Python 2的,在Python 3中,已经没有`urllib2`这个模块了,取代它的是`urllib.request`。 - -**Request类** - -正如前面区别urllib和urllib2所讲,利用urllib2模块可以建立一个Request对象。方法就是: - -Python 2: - - >>> req = urllib2.Request("http://www.itdiffer.com") - -Python 3: - - >>> import urllib.request - >>> req = urllib.request.Request("http://www.itdiffer.com") - -建立了Request对象之后,它的最直接应用就是可以作为`urlopen()`方法的参数 - -Python 2: - - >>> response = urllib2.urlopen(req) - >>> page = response.read() - >>> print page - -Python 3: - - >>> response = urllib.request.urlopen(req) - >>> page = response.read() - >>> print(page) - -显示结果从略。但是,如果Request对象仅仅局限于此,似乎还没有什么太大的优势。因为刚才的访问仅仅是满足以get方式请求页面,并建立类文件对象。如果是通过post向某地址提交数据,也可以建立Request对象。 - -Python 2: - - import urllib - import urllib2 - - url = 'http://www.itdiffer.com/register.py' - - values = {'name' : 'qiwsir', 'location' : 'China', 'language' : 'Python' } - - data = urllib.urlencode(values) # 编码 - req = urllib2.Request(url, data) # 发送请求同时传data表单 - response = urllib2.urlopen(req) #接受反馈的信息 - the_page = response.read() #读取反馈的内容 - -Python 3: - - - import urllib.request - import urllib.parse - - url = 'http://www.itdiffer.com/register.py' - - values = {'name' : 'qiwsir', 'location' : 'China', 'language' : 'Python' } - - data = urllib.parse.urlencode(values) # 编码 - req = urllib.request.Request(url, data) # 发送请求同时传data表单 - response = urllib.request.urlopen(req) #接受反馈的信息 - the_page = response.read() #读取反馈的内容 - -如果读者照抄上面的程序,然后运行代码,肯定报错。因为那个url中没有相应的接受客户端post上去的data的程序文件,为了让程序运行,读者可以开发接受数据的程序。上面的代码只是以一个例子来显示Request对象的另外一个用途,并且在这个例子中是以post方式提交数据。 - -在网站中,有的会通过User-Agent来判断访问者是浏览器还是别的程序,如果通过别的程序访问,它有可能拒绝。这时候,我们编写程序去访问,就要设置headers了。设置方法是: - - user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)' - headers = { 'User-Agent' : user_agent } - -然后重新建立Request对象: - - req = urllib2.Request(url, data, headers) #Python 3: req = urllib.request.Request(url, data, headers) - -再用·urlopen()·方法访问: - - response = urllib2.urlopen(req) #Python 3: response = urllib.request.urlopen(req) - -除了上面演示之外,`urllib2`或者`urllib.request`的东西还很多,比如还可以: - -- 设置HTTP Proxy -- 设置Timeout值 -- 自动redirect -- 处理cookie - -等等。这些内容不再一一介绍,当需要用到的时候可以查看文档或者google。 - ------- - -[总目录](./index.md)   |   [上节:标准库(5)](./224.md)   |   [下节:标准库(7)](./226.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/226.md b/226.md deleted file mode 100644 index 359c5fc..0000000 --- a/226.md +++ /dev/null @@ -1,564 +0,0 @@ ->你们要靠主常常喜乐;我再说,你们要喜乐。当叫众人知道你们谦让的心。主已经近了。应当一无挂虑,只要凡事藉着祷告、祈求和感谢,将你们所要的告诉神。神所赐出人意外的平安,比在基督耶稣里面保守你们的心怀意念。(PHILIPPIANS 4:4-7) - -#标准库(7) - -##XML - -XML在软件领域用途非常广泛,有名人曰: - ->“当 XML(扩展标记语言)于 1998 年 2 月被引入软件工业界时,它给整个行业带来了一场风暴。有史以来第一次,这个世界拥有了一种用来结构化文档和数据的通用且适应性强的格式,它不仅仅可以用于 WEB,而且可以被用于任何地方。” - ->---《Designing With Web Standards Second Edition》, Jeffrey Zeldman - -如果要对XML做一个定义式的说明,就不得不引用w3school里面简洁而明快的说明: - -- XML 指可扩展标记语言(EXtensible Markup Language) -- XML 是一种标记语言,很类似 HTML -- XML 的设计宗旨是传输数据,而非显示数据 -- XML 标签没有被预定义。您需要自行定义标签。 -- XML 被设计为具有自我描述性。 -- XML 是 W3C 的推荐标准 - -如果读者要详细了解和学习XML,可以阅读[w3school的教程](http://www.w3school.com.cn/xml/xml_intro.asp) - -XML的重要在于它是用来传输数据的,因此,特别是在web编程中,经常要用到的。有了它让数据传输变得简单了。这么重要,Python当然支持。 - -一般来讲,一个引人关注的东西,总会有很多人从不同侧面去研究。在编程语言中也是如此,所以,对XML这个明星式的东西,Python提供了多种模块来处理。 - -- xml.dom.* 模块:Document Object Model。适合用于处理 DOM API。它能够将XML数据在内存中解析成一个树,然后通过对树的操作来操作XML。但是,这种方式由于将XML数据映射到内存中的树,导致比较慢,且消耗更多内存。 -- xml.sax.* 模块:simple API for XML。由于SAX以流式读取XML文件,从而速度较快,切少占用内存,但是操作上稍复杂,需要用户实现回调函数。 -- xml.parser.expat:是一个直接的,低级一点的基于 C 的 expat 的语法分析器。 expat接口基于事件反馈,有点像 SAX 但又不太像,因为它的接口并不是完全规范于 expat 库的。 -- xml.etree.ElementTree (以下简称 ET):元素树。它提供了轻量级的Python式的API,相对于DOM,ET快了很多 -,而且有很多令人愉悦的API可以使用;相对于SAX,ET也有ET.iterparse提供了 “在空中” 的处理方式,没有必要加载整个文档到内存,节省内存。ET的性能的平均值和SAX差不多,但是API的效率更高一点而且使用起来很方便。 - -所以,我用`xml.etree.ElementTree`。 - -`ElementTree`在标准库中有两种实现。一种是纯Python实现:`xml.etree.ElementTree` ,另外一种是速度快一点:`xml.etree.cElementTree` 。 - -如果读者使用的是Python 2,可以像这样引入模块: - - try: - import xml.etree.cElementTree as ET - except ImportError: - import xml.etree.ElementTree as ET - -如果是Python 3以上,就没有这个必要了,只需要一句话`import xml.etree.ElementTree as ET`即可,然后由模块自动来寻找适合的方式。显然Python 3相对Python 2有了很大进步。 - -###遍历查询 - -先要做一个XML文档。图省事,就用w3school中的一个例子: - -![](./2images/22601.jpg) - -这是一棵树,先把这棵树写成XML文档格式: - - - - Everyday Italian - Giada De Laurentiis - 2005 - 30.00 - - - Harry Potter - J K. Rowling - 2005 - 29.99 - - - Learning XML - Erik T. Ray - 2003 - 39.95 - - - -将其保存并命名为22601.xml的文件,接下来就是以它为对象,练习各种招数了。 - - >>> import xml.etree.ElementTree as ET - -如果读者使用Python 2,推荐使用如前所述的`try...except...`方式引入模块;如果是Python 3,按照刚才的方式引入即可。 - - >>> tree = ET.ElementTree(file="22601.xml") - >>> tree - - -建立起XML解析树对象。然后通过根节点向下开始读取各个元素(element对象)。 - -在上述XML文档中,根元素是,它没有属性,或者属性为空。 - - >>> root = tree.getroot() #获得根 - >>> root.tag - 'bookstore' - >>> root.attrib - {} - -要想将根下面的元素都读出来,可以: - - >>> for child in root: - ... print child.tag, child.attrib #Python 3: print(child.tag, child.attrib) - ... - book {'category': 'COOKING'} - book {'category': 'CHILDREN'} - book {'category': 'WEB'} - -也可以这样读取指定元素的信息: - - >>> root[0].tag - 'book' - >>> root[0].attrib - {'category': 'COOKING'} - >>> root[0].text #无内容 - '\n ' - -再深入一层,就有内容了: - - >>> root[0][0].tag - 'title' - >>> root[0][0].attrib - {'lang': 'en'} - >>> root[0][0].text - 'Everyday Italian' - -对于ElementTree对象,有一个`iter()`方法可以对指定名称的子节点进行深度优先遍历。例如: - - >>> for ele in tree.iter(tag="book"): #遍历名称为book的节点 - ... print ele.tag, ele.attrib #Python 3: print(ele.tag, ele.attrib) - ... - book {'category': 'COOKING'} - book {'category': 'CHILDREN'} - book {'category': 'WEB'} - - >>> for ele in tree.iter(tag="title"): #遍历名称为title的节点 - ... print ele.tag, ele.attrib, ele.text #Python 3: print(ele.tag, ele.attrib, ele.text) - ... - title {'lang': 'en'} Everyday Italian - title {'lang': 'en'} Harry Potter - title {'lang': 'en'} Learning XML - -如果不指定元素名称,就是将所有的元素遍历一边。 - - >>> for ele in tree.iter(): - ... print ele.tag, ele.attrib #Python 3: print(ele.tag, ele.attrib) - ... - bookstore {} - book {'category': 'COOKING'} - title {'lang': 'en'} - author {} - year {} - price {} - book {'category': 'CHILDREN'} - title {'lang': 'en'} - author {} - year {} - price {} - book {'category': 'WEB'} - title {'lang': 'en'} - author {} - year {} - price {} - -除了上面的方法,还可以通过路径搜索到指定的元素,读取其内容,这就是xpath。此处对xpath不详解,如果要了解可以到网上搜索有关信息。 - - >>> for ele in tree.iterfind("book/title"): - ... print ele.text #Python 3: print(ele.text) - ... - Everyday Italian - Harry Potter - Learning XML - -利用`findall()`方法,也可以是实现查找功能: - - >>> for ele in tree.findall("book"): - ... title = ele.find('title').text - ... price = ele.find('price').text - ... lang = ele.find('title').attrib - ... print title, price, lang #Python 3: print(title, price, lang) - ... - Everyday Italian 30.00 {'lang': 'en'} - Harry Potter 29.99 {'lang': 'en'} - Learning XML 39.95 {'lang': 'en'} - -###编辑 - -除了读取有关数据之外,还能对XML进行编辑,即增、删、改、查功能。还是以上面的XML文档为例: - - >>> root[1].tag - 'book' - >>> del root[1] - >>> for ele in root: - ... print ele.tag #Python 3: print(ele.tag) - ... - book - book - -如此,成功删除了一个节点。原来有三个book节点,现在就还剩两个了。打开源文件再看看,是不是正好少了第二个节点呢?一定很让你失望,源文件居然没有变化。 - -的确如此,源文件没有变化,因为至此的修改动作,还是停留在内存中,还没有将修改结果输出到文件。不要忘记,我们是在内存中建立的ElementTree对象。再这样做: - - >>> import os - >>> outpath = os.getcwd() - >>> file = outpath + "/22601.xml" - -把当前文件路径拼装好。然后: - - >>> tree.write(file) - -再看源文件,已经变成两个节点了。 - -除了删除,也能够修改: - - >>> for price in root.iter("price"): #原来每本书的价格 - ... print price.text #Python 3: print(pice.text) - ... - 30.00 - 39.95 - >>> for price in root.iter("price"): #每本上涨7元,并且增加属性标记 - ... new_price = float(price.text) + 7 - ... price.text = str(new_price) - ... price.set("updated","up") - ... - >>> tree.write(file) - -查看源文件: - - - - Everyday Italian - Giada De Laurentiis - 2005 - 37.0 - - - Learning XML - Erik T. Ray - 2003 - 46.95 - - - -不仅价格修改了,而且在price标签里面增加了属性标记。干得不错。 - -上面用`del`来删除某个元素,其实,在编程中用的不多,更喜欢用`remove()`方法。比如我要删除`price > 40`的书。可以这么做: - - >>> for book in root.findall("book"): - ... price = book.find("price").text - ... if float(price) > 40.0: - ... root.remove(book) - ... - >>> tree.write(file) - -于是就这样了: - - - - Everyday Italian - Giada De Laurentiis - 2005 - 37.0 - - - -接下来就要增加元素了。 - - >>> import xml.etree.ElementTree as ET - >>> tree = ET.ElementTree(file="22601.xml") - >>> root = tree.getroot() - >>> ET.SubElement(root, "book") #在root里面添加book节点 - - >>> for ele in root: - ... print ele.tag #Python 3: print(ele.tag) - ... - book - book - >>> b2 = root[1] #得到新增的book节点 - >>> b2.text = "python" #添加内容 - >>> tree.write("22601.xml") - -查看源文件: - - - - Everyday Italian - Giada De Laurentiis - 2005 - 37.0 - - python - - -###常用属性和方法总结 - -ET里面的属性和方法不少,这里列出常用的,供使用中备查。 - -**Element对象** - -常用属性: - -- tag:string,元素数据种类 -- text:string,元素的内容 -- attrib:dictionary,元素的属性字典 -- tail:string,元素的尾形 - -针对属性的操作 - -- clear():清空元素的后代、属性、text和tail也设置为None -- get(key, default=None):获取key对应的属性值,如该属性不存在则返回default值 -- items():根据属性字典返回一个列表,列表元素为(key, value) -- keys():返回包含所有元素属性键的列表 -- set(key, value):设置新的属性键与值 - -针对后代的操作 - -- append(subelement):添加直系子元素 -- extend(subelements):增加一串元素对象作为子元素 -- find(match):寻找第一个匹配子元素,匹配对象可以为tag或path -- findall(match):寻找所有匹配子元素,匹配对象可以为tag或path -- findtext(match):寻找第一个匹配子元素,返回其text值。匹配对象可以为tag或path -- insert(index, element):在指定位置插入子元素 -- iter(tag=None):生成遍历当前元素所有后代或者给定tag的后代的迭代器 -- iterfind(match):根据tag或path查找所有的后代 -- itertext():遍历所有后代并返回text值 -- remove(subelement):删除子元素 - -**ElementTree对象** - -- find(match) -- findall(match) -- findtext(match, default=None) -- getroot():获取根节点. -- iter(tag=None) -- iterfind(match) -- parse(source, parser=None):装载xml对象,source可以为文件名或文件类型对象. -- write(file, encoding="us-ascii", xml_declaration=None, default_namespace=None,method="xml")  - -###一个实例 - -最后,提供一个参考,这是一篇来自网络的文章:[Python xml属性、节点、文本的增删改](http://blog.csdn.net/wklken/article/details/7603071),本文的源码我也复制到下面,请读者参考: - -实现思想: - -使用ElementTree,先将文件读入,解析成树,之后,根据路径,可以定位到树的每个节点,再对节点进行修改,最后直接将其输出. - - #!/usr/bin/python - # -*- coding=utf-8 -*- - # author : wklken@yeah.net - # date: 2012-05-25 - # version: 0.1 - - from xml.etree.ElementTree import ElementTree,Element - - def read_xml(in_path): - ''' - 读取并解析xml文件 - in_path: xml路径 - return: ElementTree - ''' - tree = ElementTree() - tree.parse(in_path) - return tree - - def write_xml(tree, out_path): - ''' - 将xml文件写出 - tree: xml树 - out_path: 写出路径 - ''' - tree.write(out_path, encoding="utf-8",xml_declaration=True) - - def if_match(node, kv_map): - ''' - 判断某个节点是否包含所有传入参数属性 - node: 节点 - kv_map: 属性及属性值组成的map - ''' - for key in kv_map: - if node.get(key) != kv_map.get(key): - return False - return True - - #---------------search ----- - - def find_nodes(tree, path): - ''' - 查找某个路径匹配的所有节点 - tree: xml树 - path: 节点路径 - ''' - return tree.findall(path) - - def get_node_by_keyvalue(nodelist, kv_map): - ''' - 根据属性及属性值定位符合的节点,返回节点 - nodelist: 节点列表 - kv_map: 匹配属性及属性值map - ''' - result_nodes = [] - for node in nodelist: - if if_match(node, kv_map): - result_nodes.append(node) - return result_nodes - - #---------------change ----- - - def change_node_properties(nodelist, kv_map, is_delete=False): - ''' - 修改/增加 /删除 节点的属性及属性值 - nodelist: 节点列表 - kv_map:属性及属性值map - ''' - for node in nodelist: - for key in kv_map: - if is_delete: - if key in node.attrib: - del node.attrib[key] - else: - node.set(key, kv_map.get(key)) - - def change_node_text(nodelist, text, is_add=False, is_delete=False): - ''' - 改变/增加/删除一个节点的文本 - nodelist:节点列表 - text : 更新后的文本 - ''' - for node in nodelist: - if is_add: - node.text += text - elif is_delete: - node.text = "" - else: - node.text = text - - def create_node(tag, property_map, content): - ''' - 新造一个节点 - tag:节点标签 - property_map:属性及属性值map - content: 节点闭合标签里的文本内容 - return 新节点 - ''' - element = Element(tag, property_map) - element.text = content - return element - - def add_child_node(nodelist, element): - ''' - 给一个节点添加子节点 - nodelist: 节点列表 - element: 子节点 - ''' - for node in nodelist: - node.append(element) - - def del_node_by_tagkeyvalue(nodelist, tag, kv_map): - ''' - 同过属性及属性值定位一个节点,并删除之 - nodelist: 父节点列表 - tag:子节点标签 - kv_map: 属性及属性值列表 - ''' - for parent_node in nodelist: - children = parent_node.getchildren() - for child in children: - if child.tag == tag and if_match(child, kv_map): - parent_node.remove(child) - - - if __name__ == "__main__": - - #1. 读取xml文件 - tree = read_xml("./test.xml") - - #2. 属性修改 - #A. 找到父节点 - nodes = find_nodes(tree, "processers/processer") - - #B. 通过属性准确定位子节点 - result_nodes = get_node_by_keyvalue(nodes, {"name":"BProcesser"}) - - #C. 修改节点属性 - change_node_properties(result_nodes, {"age": "1"}) - - #D. 删除节点属性 - change_node_properties(result_nodes, {"value":""}, True) - - #3. 节点修改 - #A.新建节点 - a = create_node("person", {"age":"15","money":"200000"}, "this is the firest content") - - #B.插入到父节点之下 - add_child_node(result_nodes, a) - - #4. 删除节点 - #定位父节点 - del_parent_nodes = find_nodes(tree, "processers/services/service") - - #准确定位子节点并删除之 - target_del_node = del_node_by_tagkeyvalue(del_parent_nodes, "chain", {"sequency" : "chain1"}) - - #5. 修改节点文本 - #定位节点 - text_nodes = get_node_by_keyvalue(find_nodes(tree, "processers/services/service/chain"), {"sequency":"chain3"}) - change_node_text(text_nodes, "new text") - - #6. 输出到结果文件 - write_xml(tree, "./out.xml") - -操作对象(原始xml文件): - - - - - - - - - - - - - - - - - - - - - - - -执行程序之后,得到的结果文件: - - - - - - - - this is the firest content - - - this is the firest content - - - - - - - - - new text - - - - - ------- - -[总目录](./index.md)   |   [上节:标准库(6)](./225.md)   |   [下节:标准库(8)](./227.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/227.md b/227.md deleted file mode 100644 index 885b419..0000000 --- a/227.md +++ /dev/null @@ -1,148 +0,0 @@ ->所以你们既是神的选民,圣洁蒙爱的人,就要存怜悯、恩慈、谦虚、温柔、忍耐的心。倘若这人与那人有嫌隙,总要彼此包容,彼此饶恕;主怎么饶恕了你们,你们也要怎样饶恕人。在这一切之外,要存着爱心,爱心就是联络全德的。又要叫基督的平安在你们心里作主,你们也为此蒙召,归为一体,且要存感谢的心。(COLOSSIANS 3:12-15) - -#标准库(8) - -##JSON - -就传递数据而言,XML是一种选择,还有另外一种——JSON,它是一种轻量级的数据交换格式,如果读者要做web编程,则会用到它的。根据维基百科的相关内容,对JSON做如下简介: - ->JSON(JavaScript Object Notation)是一種由道格拉斯·克羅克福特構想設計、輕量級的資料交換語言,以文字為基礎,且易於讓人閱讀。儘管JSON是Javascript的一個子集,但JSON是獨立於語言的文本格式,並且採用了類似於C語言家族的一些習慣。 - -关于JSON更为详细的内容,可以参考其官方网站:http://www.json.org - -从上述网站摘取部分内容,了解一下JSON的结构: - -JSON建构于两种结构: - -- “名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组 (associative array)。 -- 值的有序列表(An ordered list of values)。在大部分语言中,它被理解为数组(array)。 - -python标准库中有JSON模块,主要是执行序列化和反序列化功能: - -- 序列化:encoding,把一个Python对象编码转化成JSON字符串 -- 反序列化:decoding,把JSON格式字符串解码转换为Python数据对象 - -###基本操作 - -JSON模块相对XML单纯了很多: - - >>> import json - >>> json.__all__ - ['dump', 'dumps', 'load', 'loads', 'JSONDecoder', 'JSONEncoder'] - #Python 3的显示结果如下: - ['dump', 'dumps', 'load', 'loads', 'JSONDecoder', 'JSONDecodeError', 'JSONEncoder'] - -**encoding: dumps()** - - >>> data = [{"name":"qiwsir", "lang":("python", "english"), "age":40}] - >>> data - [{'lang': ('python', 'english'), 'age': 40, 'name': 'qiwsir'}] - >>> data_json = json.dumps(data) - >>> data_json - '[{"lang": ["python", "english"], "name": "qiwsir", "age": 40}]' - -encoding的操作是比较简单的,请注意观察`data`和`data_json`的不同——lang的值从元组变成了列表,还有不同: - - >>> type(data_json) - - >>> type(data) - - -**decoding: loads()** - -decoding的过程也像上面一样简单: - - >>> new_data = json.loads(data_json) - >>> new_data - [{u'lang': [u'python', u'english'], u'age': 40, u'name': u'qiwsir'}] - -需要注意的是,解码之后,并没有将元组还原。 - -上面的data都不是很长,还能凑合阅读,如果很长了,阅读就有难度了。所以,JSON的`dumps()`提供了可选参数,利用它们能在输出上对人更友好(这对机器是无所谓的)。 - - >>> data_j = json.dumps(data, sort_keys=True, indent=2) - >>> print data_j #Python 3: print(data_j) - [ - { - "age": 40, - "lang": [ - "python", - "english" - ], - "name": "qiwsir" - } - ] - -`sort_keys=True`意思是按照键的字典顺序排序,`indent=2`是让每个键值对显示的时候,以缩进两个字符对齐。这样的视觉效果好多了。 - -###大json字符串 - -如果数据不是很大,上面的操作足够了。但现在是所谓“大数据”时代了,随便一个什么业务都在说自己是大数据,显然不能总让JSON很小,事实上真正的大数据,再“大”的JSON也不行了。前面的操作方法是将数据都读入内存,如果数据太大了就会内存溢出。怎么办?JSON提供了`load()`和`dump()`函数解决这个问题,注意,跟上面已经用过的函数相比,是不同的,请仔细观察。 - - >>> import tempfile #临时文件模块 - >>> data - [{'lang': ('python', 'english'), 'age': 40, 'name': 'qiwsir'}] - >>> f = tempfile.NamedTemporaryFile(mode='w+') - >>> json.dump(data, f) - >>> f.flush() - >>> print open(f.name, "r").read() #Python 3: print(open(f.name, "r").read()) - [{"lang": ["python", "english"], "age": 40, "name": "qiwsir"}] - -###自定义数据类型 - -一般情况下,用的数据类型都是Python默认的。但是,我们学习过类后,就知道,自己可以定义对象类型的。比如: - -以下代码参考:[Json概述以及python对json的相关操作](http://www.cnblogs.com/coser/archive/2011/12/14/2287739.html) - - #!/usr/bin/env python - # coding=utf-8 - - import json - - class Person(object): - def __init__(self,name,age): - self.name = name - self.age = age - - def __repr__(self): - return 'Person Object name : %s , age : %d' % (self.name,self.age) - - - def object2dict(obj): #convert Person to dict - d = {} - d['__class__'] = obj.__class__.__name__ - d['__module__'] = obj.__module__ - d.update(obj.__dict__) - return d - - def dict2object(d): #convert dict ot Person - if '__class__' in d: - class_name = d.pop('__class__') - module_name = d.pop('__module__') - module = __import__(module_name) - class_ = getattr(module, class_name) - args = dict((key.encode('ascii'), value) for key,value in d.items()) #get args - inst = class_(**args) #create new instance - else: - inst = d - return inst - - - if __name__ == '__main__': - p = Person('Peter',40) - print p - d = object2dict(p) - print d - o = dict2object(d) - print type(o), o - - dump = json.dumps(p, default=object2dict) - print dump - load = json.loads(dump, object_hook=dict2object) - print load - ------- - -[总目录](./index.md)   |   [上节:标准库(7)](./226.md)   |   [下节:第三方库](./228.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/228.md b/228.md deleted file mode 100644 index 8f3ae61..0000000 --- a/228.md +++ /dev/null @@ -1,186 +0,0 @@ ->你们要爱惜光阴,用智慧与外人交往。你们的言语要常常带着和气,好像用盐调和,就可知道怎样回答各人。(COLOSSIANS 4:5-6) - -#第三方库 - -标准库的内容已经非常多了,前面仅仅列举几个,但是Python给编程者的支持不仅仅在于标准库,它还有不可胜数的第三方库。因此,如果作为一个Pythoner,即使你达到了master的水平,在做某个事情之前最好在网上搜一下是否有标准库或者第三方库替你完成。因为,伟大的艾萨克·牛顿爵士说过: - ->如果我比别人看得更远,那是因为我站在巨人的肩上。 - -编程,就要站在巨人的肩上。标准库和第三方库及其提供者,就是巨人,我们本应当谦卑地向其学习,并应用其成果。 - -##安装第三方库 - -安装第三方库的方法有几种,不同方法有不同的优缺点,读者可以根据自己的喜好或者实际的工作情景来选择。 - -**方法一:利用源码安装** - -在github.com网站可以下载第三方库的源码(注意:github不是源码的唯一来源,只不过很多源码都在这个网站上,我也喜欢罢了),得到源码之后,在本地安装。 - -如果你下载的是一个文件包,即得到的源码格式为 zip 、 tar.zip、 tar.bz2的压缩文件,需要先解压缩,然后进入其目录;如果你能熟练使用git命令,可以直接从github中clone源码到本地计算机上,然后进入该目录。 - -通常会看见一个 setup.py 的文件。 - - python setup.py install - -在这里可能对某些操作系统的读者就漠视了,因为我用的是Ubuntu,读者可以根据自己的操作系统确定安装方法。 - -如此,就能把这个第三库安装到系统里。具体位置,要视操作系统和你当初安装Python环境时设置的路径而定。 - -这种安装方法有时候麻烦一些,但是比较灵活,主要体现在: - -- 可以下载安装自己选定的任意版本的第三方库,比如最新版,或者更早的某个版本,所以在某些有特殊需要的时候,常常使用这种方式安装。 -- 通过安装设置可以指定安装目录,自由度比较高。 - -有安装就要有卸载,卸载所安装的库非常简单,只需要到相应系统的site-packages目录,直接删掉库文件即卸载。 - -**方法二:pip** - -用源码安装,不是我推荐的,我推荐的是用第三方库的管理工具安装。 - -有一个网站,是专门用来存储第三方库的,所有在这个网站上的,都能用pip或者easy_install这种安装工具来安装。网站的地址:https://pypi.python.org/pypi - ->pip是一个以Python计算机程序语言写成的软件包管理系统,它可以安装和管理软件包,另外不少的软件包也可以在“Python软件包索引”(英语:Python Package Index,简称PyPI)中找到。(源自《维基百科》) - -首先,要安装pip。读者可以先检查一下,在你的操作系统中是否已经有了pip,因为有的操作系统,或者已经预先安装了,或者在安装Python的时候安装了。如果你确信没有安装,就要针对你的操作系统进行安装,例如在Ubutun中: - -Python 2: - - sudo apt-get install python-pip - -Python 3: - - sudo apt-get install python3-pip - -当然,也可以这里下载文件[get-pip.py](https://bootstrap.pypa.io/get-pip.py),然后执行`python get-pip.py`来安装。这个方法也适用于windows。 - -pip就这样安装好了,非常简单吧。 - -然后你就可以淋漓尽致地安装第三方库了,之所以如此,是因为只需要执行`pip install XXXXXX`(XXXXXX代表第三方库的名字)即可。当然前提是那个库已经在PyPI里面了。 - -当第三方库安装完毕,接下来的使用就如同前面标准库一样。 - -##举例:requests库 - -以requests模块为例,来说明第三方库的安装和使用。之所以选这个,是因为前面介绍了urllib和urllib2两个标准库的模块,与之有类似功能的第三方库中requests也是一个用于在程序中进行http协议下的get和post请求的模块,并且被网友说成“好用的要哭”。 - -**说明**:下面的内容是网友1world0x00提供,我仅做了适当编辑。 - -###安装 - -Python 2: - - pip install requests - -Python 3: - - pip3 install requests - -安装好之后,在交互模式下: - - >>> import requests - >>> dir(requests) - ['ConnectionError', 'HTTPError', 'NullHandler', 'PreparedRequest', 'Request', 'RequestException', 'Response', 'Session', 'Timeout', 'TooManyRedirects', 'URLRequired', '__author__', '__build__', '__builtins__', '__copyright__', '__doc__', '__file__', '__license__', '__name__', '__package__', '__path__', '__title__', '__version__', 'adapters', 'api', 'auth', 'certs', 'codes', 'compat', 'cookies', 'delete', 'exceptions', 'get', 'head', 'hooks', 'logging', 'models', 'options', 'packages', 'patch', 'post', 'put', 'request', 'session', 'sessions', 'status_codes', 'structures', 'utils'] - -从上面的列表中可以看出,在http中常用到的get,cookies,post等都赫然在目。 - -###get请求 - - >>> r = requests.get("http://www.itdiffer.com") - -得到一个请求的实例,然后: - - >>> r.cookies - <[]> - -这个网站对客户端没有写任何cookies内容。换一个看看: - - >>> r = requests.get("http://www.1world0x00.com") - >>> r.cookies - <[Cookie(version=0, name='PHPSESSID', value='buqj70k7f9rrg51emsvatveda2', port=None, port_specified=False, domain='www.1world0x00.com', domain_specified=False, domain_initial_dot=False, path='/', path_specified=True, secure=False, expires=None, discard=True, comment=None, comment_url=None, rest={}, rfc2109=False)]> - -仔细观察,是不是看到了cookie的name和value,结合对网络有关知识的理解,是不是有一种豁然开朗恍然大悟的感觉? - -继续,还有别的属性可以看看。 - - >>> r.headers - {'x-powered-by': 'PHP/5.3.3', 'transfer-encoding': 'chunked', 'set-cookie': 'PHPSESSID=buqj70k7f9rrg51emsvatveda2; path=/', 'expires': 'Thu, 19 Nov 1981 08:52:00 GMT', 'keep-alive': 'timeout=15, max=500', 'server': 'Apache/2.2.15 (CentOS)', 'connection': 'Keep-Alive', 'pragma': 'no-cache', 'cache-control': 'no-store, no-cache, must-revalidate, post-check=0, pre-check=0', 'date': 'Mon, 10 Nov 2014 01:39:03 GMT', 'content-type': 'text/html; charset=UTF-8', 'x-pingback': 'http://www.1world0x00.com/index.php/action/xmlrpc'} - - >>> r.encoding - 'UTF-8' - - >>> r.status_code - 200 - -这些都是在客户端看到的网页基本属性。 - -下面这个比较长,是网页的内容,仅仅截取部分显示: - - >>> print r.text - - - - - - - 1world0x00sec - - - - - - - - ...... - -请求发出后,requests会基于http头部对相应的编码做出有根据的推测,当你访问r.text之时,requests会使用其推测的文本编码。你可以找出requests使用了什么编码,并且能够使用r.coding属性来改变它。 - - >>> r.content - '\xef\xbb\xbf\xef\xbb\xbf\n\n \n \n \n 1world0x00sec\n \n >> import requests - >>> payload = {"key1":"value1","key2":"value2"} - >>> r = requests.post("http://httpbin.org/post") - >>> r1 = requests.post("http://httpbin.org/post", data=payload) - -r没有加data的请求,得到的效果是: - -![](http://wxpictures.qiniudn.com/requets-post1.jpg) - -r1为data提供了值,再看效果: - -![](http://wxpictures.qiniudn.com/requets-post2.jpg) - -新闻比较看才有意思,代码也如此。比较上面两个结果,发现后者当data被赋值之后,在结果中form的值即为data所传入的数据,它就是post给服务器的内容。喵... - -###http头部 - - >>> r.headers['content-type'] - 'application/json' - -注意,在引号里面的内容,不区分大小写(`'CONTENT-TYPE'`也可以)。 - -还能够自定义头部: - - >>> r.headers['content-type'] = 'adad' - >>> r.headers['content-type'] - 'adad' - -注意,当定制头部的时候,如果需要定制的项目有很多,一般用到字典类型的数据。 - -网上有一个更为详细叙述有关requests模块的网页,可以参考:[http://requests-docs-cn.readthedocs.org/zh_CN/latest/index.html](http://requests-docs-cn.readthedocs.org/zh_CN/latest/index.html) - -通过一个实例,展示第三方模块的应用方法,其实没有什么特殊的地方,只要安装了,就和用标注库模块一样了。 - -根据我的个人经验,第三方模块常常在某个方面做得更好,或者性能更优化,所以,不要将其放在我们的视野之外。 - ------- - -[总目录](./index.md)   |   [上节:标准库(8)](./227.md)   |   [下节:存入文件](./229.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/229.md b/229.md deleted file mode 100644 index a4a6605..0000000 --- a/229.md +++ /dev/null @@ -1,201 +0,0 @@ ->要常常喜乐,不住地祷告,凡事谢恩,因为这是神在基督耶稣里向你们所定的旨意。不要消灭圣灵的感动,不要藐视先知的讲论。但要凡事察验,善美的要持守,各样的恶事要禁戒不作。(1 THESSALONIANS 5:16-22) - -#将数据存入文件 - -在[《文件(1)》](./126.md)和[《文件(2)》](./127.md)中,已经学习了如何读写文件。 - -程序执行结果,就是产生一些数据,一般情况下,这些数据数据要保存到磁盘中,最简单的方法就是写入到某个文件。但是,如果仅仅是简单地把数据写入文件,不是最佳的存储机构。为此,就有了诸多不同的数据存储方式,这些方式不仅能够保证数据被存储,还能够让数据便于读取,此外,还有很多其它方面的优势。 - -简而言之,就是要将存储的对象格式化(或者叫做序列化),才好存好取。这就有点类似集装箱的作用。 - -##pickle - -pickle是标准库中的一个模块,在Python 2中还有一个cpickle,两者的区别就是后者更快。所以,下面操作中,不管是用`import pickle`,还是用`import cpickle as pickle`,在功能上都是一样的。 - -而在Python 3中,你只需要`import pickle`即可,因为它已经在Python 3中具备了Python 2中的cpickle同样的性能。 - - >>> import pickle - >>> integers = [1, 2, 3, 4, 5] - >>> f = open("22901.dat", "wb") - >>> pickle.dump(integers, f) - >>> f.close() - -用`pickle.dump(integers, f)`将数据integers保存到了文件22901.dat中。如果你要打开这个文件,看里面的内容,可能有点失望,但是,它对计算机是友好的。这个步骤可以称之为将对象序列化。用到的方法是:`pickle.dump(obj,file[,protocol])` - -- obj:序列化对象,在上面的例子中是一个列表,它是基本类型,也可以序列化自己定义的对象。 -- file:要写入的文件。可以更广泛地可以理解为为拥有`write()`方法的对象,并且能接受字符串为为参数,所以,它还可以是一个`StringIO`对象,或者其它自定义满足条件的对象。 -- protocol:可选项。默认为False(或者说0),是以ASCII格式保存对象;如果设置为1或者True,则以压缩的二进制格式保存对象。 - -换一种数据格式,并且做对比: - - >>> import pickle - >>> d = {} - >>> integers = range(9999) - >>> d["i"] = integers #下面将这个字典类型的对象存入文件 - - >>> f = open("22902.dat", "wb") - >>> pickle.dump(d, f) #文件中以ascii格式保存数据 - >>> f.close() - - >>> f = open("22903.dat", "wb") - >>> pickle.dump(d, f, True) #文件中以二进制格式保存数据 - >>> f.close() - - >>> import os - >>> s1 = os.stat("22902.dat").st_size #得到两个文件的大小 - >>> s2 = os.stat("22903.dat").st_size - - >>> print "%d, %d, %.2f%%" % (s1, s2, (s2+0.0)/s1*100) #Python 3: print("{0:d}, {1:d}, {2:.2f}".format (s1, s2, (s2+0.0)/s1*100)) - 68903, 29774, 43.21% - -比较结果发现,以二进制方式保存的文件比以ascii格式保存的文件小很多,前者约是后者的43%。 - -所以,在序列化的时候,特别是面对较大对象时,建议将`dump()`的参数True设置上,虽然现在存储设备的价格便宜,但是能省还是省点比较好。 - -将数据保存入文件,还有另外一个目标,就是要读出来,也称之为反序列化。 - - >>> integers = pickle.load(open("22901.dat", "rb")) - >>> print integers #Python 3: print(integers) - [1, 2, 3, 4, 5] - -再看看以二进制存入的那个文件: - - >>> f = open("22903.dat", "rb") - >>> d = pickle.load(f) - >>> print d - {'i': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, .... #省略后面的数字} - >>> f.close() - -如果是自己定义的对象,是否可以用上述方式存入文件并读出来呢?看下面的例子: - - >>> import cPickle as pickle #这是Python 2的引入方式,如果是Python 3,直接使用import pickle - >>> import StringIO #标准库中的一个模块,跟file功能类似,只不过是在内存中操作“文件” - - >>> class Book(object): #自定义一种类型 - ... def __init__(self,name): - ... self.name = name - ... def my_book(self): - ... print "my book is: ", self.name #Python 3: print("my book is: ", self.name) - ... - - >>> pybook = Book("") - >>> pybook.my_book() - my book is: - - >>> file = StringIO.StringIO() - >>> pickle.dump(pybook, file, 1) - >>> print file.getvalue() #查看“文件”内容,注意下面不是乱码 - ccopy_reg - _reconstructor - q(c__main__ - Book - qc__builtin__ - object - qNtRq}qUnameqUsb. - - >>> pickle.dump(pybook, file) #换一种方式,再看内容,可以比较一下 - >>> print file.getvalue() #视觉上,两者就有很大差异 - ccopy_reg - _reconstructor - q(c__main__ - Book - qc__builtin__ - object - qNtRq}qUnameqUsb.ccopy_reg - _reconstructor - p1 - (c__main__ - Book - p2 - c__builtin__ - object - p3 - NtRp4 - (dp5 - S'name' - p6 - S'' - p7 - sb. - -如果要从文件中读出来: - - >>> file.seek(0) #找到对应类型 - >>> pybook2 = pickle.load(file) - >>> pybook2.my_book() - my book is: - >>> file.close() - -##shelve - -`pickle`模块已经表现出它足够好的一面了。不过,由于数据的复杂性,`pickle`只能完成一部分工作,在另外更复杂的情况下,它就稍显麻烦了。于是,又有了`shelve`。 - -`shelve`模块也是标准库中的。先看一下基本写、读操作。 - - >>> import shelve - >>> s = shelve.open("22901.db") - >>> s["name"] = "www.itdiffer.com" - >>> s["lang"] = "python" - >>> s["pages"] = 1000 - >>> s["contents"] = {"first":"base knowledge","second":"day day up"} - >>> s.close() - -以上完成了数据写入的过程,其实,这很接近数据库的样式了。下面是读。 - - >>> s = shelve.open("22901.db") - >>> name = s["name"] - >>> print name #Python 3: print(name) - www.itdiffer.com - >>> contents = s["contents"] - >>> print contents #Python 3: print(contents) - {'second': 'day day up', 'first': 'base knowledge'} - -看到输出的内容,你一定想到,肯定可以用`for`语句来读,想到了就用代码来测试,这就是Python交互模式的便利之处。 - - >>> for k in s: - ... print k, s[k] - ... - contents {'second': 'day day up', 'first': 'base knowledge'} - lang python - pages 1000 - name www.itdiffer.com - -不管是写还是读,都似乎要简化了。所建立的对象被变量`s`所引用,就如同字典一样,可称之为类字典对象。所以,可以如同操作字典那样来操作它。 - -但是,要小心坑: - - >>> f = shelve.open("22901.db") - >>> f["author"] - ['qiwsir'] - >>> f["author"].append("Hetz") #试图增加一个 - >>> f["author"] #坑就在这里 - ['qiwsir'] - >>> f.close() - -当试图修改一个已有键的值时没有报错,但是并没有修改成功。要填平这个坑,需要这样做: - - >>> f = shelve.open("22901.db", writeback=True) #多一个参数True - >>> f["author"].append("Hetz") - >>> f["author"] #没有坑了 - ['qiwsir', 'Hetz'] - >>> f.close() - -还用`for`循环一下: - - >>> f = shelve.open("22901.db") - >>> for k,v in f.items(): - ... print k,": ",v #Python 3: print(k,": ",v) - ... - contents : {'second': 'day day up', 'first': 'base knowledge'} - lang : python - pages : 1000 - author : ['qiwsir', 'Hetz'] - name : www.itdiffer.com - -`shelve`更像数据库了。不过,它还不是真正的数据库。真正的数据库在后面。 - ------- - -[总目录](./index.md)   |   [上节:第三方库](./228.md)   |   [下节:mysql数据库(1)](./230.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/230.md b/230.md deleted file mode 100644 index ba58685..0000000 --- a/230.md +++ /dev/null @@ -1,219 +0,0 @@ ->我们在你们那里的时候,曾吩咐你们说,若有人不肯作工,就不可吃饭。因我们听说,在你们中间有人不按规矩而行,什么工都不作,反倒专管闲事。我们靠主耶稣基督,吩咐、劝解这样的人,要安静作工,吃自己的饭。(2 THESSALONIANS 3:10-12) - -#MySQL数据库(1) - -尽管用文件形式将数据保存到磁盘,已经是一种不错的方式。但是,人们还是发明了更具有格式化特点,并且写入和读取更快速便捷的东西——数据库(如果阅读港台的资料,称之为“资料库”)。维基百科对数据库有比较详细的说明: - ->数据库指的是以一定方式储存在一起、能为多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。 - -到目前为止,地球上的数据库主要有三种: - -- 关系型数据库:MySQL、Microsoft Access、SQL Server、Oracle、... -- 非关系型数据库:MongoDB、BigTable(Google)、... -- 键值数据库:Apache Cassandra(Facebook)、LevelDB(Google) ... - -##概况 - -MySQL是一个使用非常广泛的数据库,很多网站都使用它。关于这个数据库有很多传说,例如[维基百科上有这么一段:](http://zh.wikipedia.org/wiki/MySQL) - ->MySQL(官方发音为英语发音:/maɪ ˌɛskjuːˈɛl/ "My S-Q-L",[1],但也经常读作英语发音:/maɪ ˈsiːkwəl/ "My Sequel")原本是一个开放源代码的关系数据库管理系统,原开发者为瑞典的MySQL AB公司,该公司于2008年被升阳微系统(Sun Microsystems)收购。2009年,甲骨文公司(Oracle)收购升阳微系统公司,MySQL成为Oracle旗下产品。 - ->MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如维基百科、Google和Facebook等网站。非常流行的开源软件组合LAMP中的“M”指的就是MySQL。 - ->但被甲骨文公司收购后,Oracle大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目OpenSolaris的发展,因此导致自由软件社区们对于Oracle是否还会持续支持MySQL社区版(MySQL之中唯一的免费版本)有所隐忧,因此原先一些使用MySQL的开源软件逐渐转向其它的数据库。例如维基百科已于2013年正式宣布将从MySQL迁移到MariaDB数据库。 - -不管怎么着,MySQL依然是一个不错的数据库选择,足够支持读者完成一个不小的网站。 - -##安装 - -你的电脑或许不会天生就有MySQL,它本质上也是一个程序,若有必要,须安装。 - -我用Ubuntu操作系统演示,因为我相信读者将来在真正的工程项目中,多数情况下是要操作Linux系统的服务器,并且,我酷爱用Ubuntu。本书的目标是from beginner to master,不管是不是真的master,总要装得像,Linux能够给你撑门面,这也是推荐使用Ubuntu的原因。 - -第一步,在shell端运行如下命令: - - sudo apt-get install mysql-server - -运行完毕就安装好了这个数据库。是不是很简单呢?当然,还要进行配置。 - -第二步,配置MySQL。安装之后,运行: - - service mysqld start - -启动MySQL数据库,然后进行下面的操作,对其进行配置。 - -默认的MySQL安装之后根用户(root)是没有密码的,注意,这里有一个名词“根用户”,其用户名是:root。运行: - - $mysql -u root - -进入MySQL之后,会看到`>`符号开头,这就是MySQL的命令操作界面了。 - -下面设置MySQL中的root用户密码,否则,MySQL服务无安全可言了。 - - mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456"; - -用123456做为root用户的密码,应该是非常愚蠢的,如果在真正的项目中最好别这样做,要用大小写字母与数字混合的密码,且不少于8位。以后如果再登录数据库,就可以用刚才设置的密码了。 - -##运行 - -安装完就要运行它,并操作这个数据库。 - - $ mysql -u root -p - Enter password: - -输入数据库的密码,之后出现: - - Welcome to the MySQL monitor. Commands end with ; or \g. - Your MySQL connection id is 373 - Server version: 5.5.38-0ubuntu0.14.04.1 (Ubuntu) - - Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved. - - Oracle is a registered trademark of Oracle Corporation and/or its - affiliates. Other names may be trademarks of their respective - owners. - - Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. - - mysql> - -恭喜你,已经进入到数据库操作界面了,接下来就可以对这个数据进行操作。例如: - - mysql> show databases; - +--------------------+ - | Database | - +--------------------+ - | information_schema | - | carstore | - | cutvideo | - | itdiffer | - | mysql | - | performance_schema | - | test | - +--------------------+ - -`show databases;`(最后的半角分号别忘记了)命令表示列出当前已经有的数据库。 - -对数据库的操作,除了用命令之外,还可以使用一些可视化工具。比如phpmyadmin就是不错的。 - -更多数据库操作的知识,这里就不介绍了,读者可以参考有关书籍。 - -MySQL数据库已经安装好,但是Python还不能操作它,还要继续安装Python操作数据库的模块——`python-MySQLdb`。 - -##`python-MySQLdb`或`pymysql` - -`python-MySQLdb`是一个接口程序,Python通过它对MySQL数据实现各种操作。但是,这仅适用于Python 2,如果你使用Python 3,那就要用到`pymysql`了。 - -在编程中会遇到很多类似的接口程序,通过接口程序对另外一个对象进行操作。接口程序就好比钥匙,如果要开锁,直接用手指去捅肯定是不行的,必须借助工具插入到锁孔中,把锁打开,门开了,就可以操作门里面的东西了,那么打开锁的工具就是接口程序。谁都知道,用对应的钥匙开锁是最好的,如果用别的工具(比如锤子)或许不便利(当然,具有特殊开锁能力的人除外),也就是接口程序,编码水平等都是考虑因素。 - -`python-MySQLdb`/`pymysql`就是打开MySQL数据库的钥匙。 - -如果要源码安装,可以这里下载python-mysqldb:[https://pypi.python.org/pypi/MySQL-python/](https://pypi.python.org/pypi/MySQL-python/),下载之后就可以安装了。 - -在Ubuntu操作系统下还可以用软件仓库来安装。 - - sudo apt-get install build-essential python-dev libmysqlclient-dev - -然后可以: - - sudo apt-get install python-MySQLdb - -最推荐是使用pip: - - pip install mysql-python - -如果是Python 3,则要安装`pymysql`: - - pip3 install pymysql - -下面的演示中,我使用Python 2,如果读者使用Python 3,请自行`import pymysql`,其它函数部分,基本一致,所以就不重复写代码了。请读者务必注意。 - -安装之后,在Python 2交互模式下: - - >>> import MySQLdb - -如果不报错,恭喜你,已经安装好了。如果报错,那么恭喜你,可以借着错误信息提高自己的计算机水平了,请求助于google大神。 - -##连接数据库 - -要先找到老婆,才能谈如何养育自己的孩子,同理连接数据库之先要建立数据库。 - - $ mysql -u root -p - Enter password: - -进入到数据库操作界面: - - mysql> - -输入如下命令,建立一个数据库: - - mysql> create database qiwsirtest character set utf8; - Query OK, 1 row affected (0.00 sec) - -注意上面的指令,如果仅仅输入`create database qiwsirtest`也可以,但是我在后面增加了`character set utf8`,意思是所建立的数据库qiwsirtest,编码是utf-8,这样存入汉字就不是乱码了。 - -看到那一行提示:Query OK, 1 row affected (0.00 sec),说明这个数据库已经建立好了,名字叫qiwsirtest。 - -数据库建立之后,就可以用Python通过已经安装的`python-MySQLdb`来连接这个名字叫做qiwsirtest的库了。 - - >>> import MySQLdb - >>> conn = MySQLdb.connect(host="localhost",user="root",passwd="123123",db="qiwsirtest",port=3306,charset="utf8") - -下面逐个解释上述命令的含义: - -- host:等号的后面应该填写MySQL数据库的地址,因为就数据库就在本机上(也称作本地),所以使用localhost,注意引号。如果在其它的服务器上,这里应该填写IP地址。一般中小型的网站,数据库和程序都是在同一台服务器(计算机)上,就使用localhost了。 -- user:登录数据库的用户名,这里一般填写"root",还是要注意引号。当然,如果读者命名了别的用户名,就更改为相应用户。但是,不同用户的权限可能不同,所以,在程序中,如果要操作数据库,还要注意所拥有的权限。在这里用root,不过,这样种做法在大型系统中是应该避免的。 -- passwd:user账户登录MySQL的密码。例子中用的密码是"123123"。不要忘记引号。 -- db:就是刚刚通create命令建立的数据库,我建立的数据库名字是"qiwsirtest",还是要注意引号。看官如果建立的数据库名字不是这个,就写自己所建数据库名字。 -- port:一般情况,MySQLdb的默认端口是3306,当MySQLdb被安装到服务器之后,为了能够允许网络访问,服务器(计算机)要提供一个访问端口给它(服务器管理员可以进行端口配置)。 -- charset:这个设置,在很多教程中都不写,结果在真正进行数据存储的时候,发现有乱码。这里将qiwsirtest这个数据库的编码设置为utf-8格式,这样就允许存入汉字而无乱码了。注意,在MySQLdb设置中,utf-8写成utf8,没有中间的横线。但是在Python文件开头和其它地方设置编码格式的时候,要写成utf-8。 - -注:connect中的所有参数,可以只按照顺序把值写入。但是,我推荐读者还是按照上面的方式,以免出了乱子自己还糊涂。 - -其实,关于connect的参数还有别的,下面摘抄来自[mysqldb官方文档的内容](http://mysql-python.sourceforge.net/MySQLdb.html),把所有的参数都列出来,还有相关说明,请看官认真阅读。不过,上面几个是常用的,其它的看情况使用。 - ->connect(parameters...) - ->Constructor for creating a connection to the database. Returns a Connection Object. Parameters are the same as for the MySQL C API. In addition, there are a few additional keywords that correspond to what you would pass mysql_options() before connecting. Note that some parameters must be specified as keyword arguments! The default value for each parameter is NULL or zero, as appropriate. Consult the MySQL documentation for more details. The important parameters are: - -- host: name of host to connect to. Default: use the local host via a UNIX socket (where applicable) -- user: user to authenticate as. Default: current effective user. -- passwd: password to authenticate with. Default: no password. -- db: database to use. Default: no default database. -- port: TCP port of MySQL server. Default: standard port (3306). -- unix_socket: location of UNIX socket. Default: use default location or TCP for remote hosts. -- conv: type conversion dictionary. Default: a copy of MySQLdb.converters.conversions -- compress: Enable protocol compression. Default: no compression. -- connect_timeout: Abort if connect is not completed within given number of seconds. Default: no timeout (?) -- named_pipe: Use a named pipe (Windows). Default: don't. -- init_command: Initial command to issue to server upon connection. Default: Nothing. -- read_default_file: MySQL configuration file to read; see the MySQL documentation for mysql_options(). -- read_default_group: Default group to read; see the MySQL documentation for mysql_options(). -- cursorclass: cursor class that cursor() uses, unless overridden. Default: MySQLdb.cursors.Cursor. This must be a keyword parameter. -- use_unicode: If True, CHAR and VARCHAR and TEXT columns are returned as Unicode strings, using the configured character set. It is best to set the default encoding in the server configuration, or client configuration (read with read_default_file). If you change the character set after connecting (MySQL-4.1 and later), you'll need to put the correct character set name in connection.charset. - ->If False, text-like columns are returned as normal strings, but you can always write Unicode strings. - ->This must be a keyword parameter. - -- charset: If present, the connection character set will be changed to this character set, if they are not equal. Support for changing the character set requires MySQL-4.1 and later server; if the server is too old, UnsupportedError will be raised. This option implies use_unicode=True, but you can override this with use_unicode=False, though you probably shouldn't. - ->If not present, the default character set is used. - ->This must be a keyword parameter. - -- sql_mode: If present, the session SQL mode will be set to the given string. For more information on sql_mode, see the MySQL documentation. Only available for 4.1 and newer servers. - ->If not present, the session SQL mode will be unchanged. - ->This must be a keyword parameter. - -- ssl: This parameter takes a dictionary or mapping, where the keys are parameter names used by the mysql_ssl_set MySQL C API call. If this is set, it initiates an SSL connection to the server; if there is no SSL support in the client, an exception is raised. This must be a keyword parameter. - -至此,已经完成了数据库的连接。 - ------- - -[总目录](./index.md)   |   [上节:将数据存入文件](./229.md)   |   [下节:mysql数据库(2)](./231.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/231.md b/231.md deleted file mode 100644 index 1e1aaab..0000000 --- a/231.md +++ /dev/null @@ -1,334 +0,0 @@ ->"So do not worry about tomorrow, for tomorrow will bring worries of its own. Today's trouble is enought for today." (MATTHEW 7:34) - -#MySQL数据库(2) - -就数据库而言,连接之后就要对其操作。但是,目前名字叫作qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄维基百科对数据库表的简要解释。 - ->在关系数据库中,数据库表是一系列二维数组的集合,用来代表和储存数据对象之间的关系。它由纵向的列和横向的行组成,例如一个有关作者信息的名为 authors 的表中,每个列包含的是所有作者的某个特定类型的信息,比如“姓氏”,而每行则包含了某个特定作者的所有信息:姓、名、住址等等。 - ->对于特定的数据库表,列的数目一般事先固定,各列之间可以由列名来识别。而行的数目可以随时、动态变化,每行通常都可以根据某个(或某几个)列中的数据来识别,称为候选键。 - -在qiwsirtest中建立一个存储用户名、用户密码、用户邮箱的表,其结构用二维表格表现如下: - -|username|password|email| -|--------|--------|-----| -|qiwsir|123123|qiwsir@gmail.com| - -特别说明,这里为了简化细节,突出重点,对密码不加密,直接明文保存,虽然这种方式是很不安全的。据小道消息,有的网站居然用明文保存密码,这么做是比较可恶的。就让我在这里,仅仅在这里可恶一次。 - -##数据库表 - -因为直接操作数据库不是本书重点,但是关联到后面的操作,为了让读者在阅读上连贯,快速地说明建立数据库表并输入内容。 - - mysql> use qiwsirtest; - Database changed - mysql> show tables; - Empty set (0.00 sec) - -用`show tables`命令显示这个数据库中是否有数据表了,查询结果显示为空。 - -用如下命令建立一个数据表,这个数据表的内容就是上面所说明的。 - - mysql> create table users(id int(2) not null primary key auto_increment,username varchar(40),password text,email text)default charset=utf8; - Query OK, 0 rows affected (0.12 sec) - -建立的这个数据表名称是:users,其中包含上述字段,可以用下面的方式看一看这个数据表的结构。 - - mysql> show tables; - +----------------------+ - | Tables_in_qiwsirtest | - +----------------------+ - | users | - +----------------------+ - 1 row in set (0.00 sec) - -查询显示,在qiwsirtest这个数据库中,已经有一个表,它的名字是:users。 - - mysql> desc users; - +----------+-------------+------+-----+---------+----------------+ - | Field | Type | Null | Key | Default | Extra | - +----------+-------------+------+-----+---------+----------------+ - | id | int(2) | NO | PRI | NULL | auto_increment | - | username | varchar(40) | YES | | NULL | | - | password | text | YES | | NULL | | - | email | text | YES | | NULL | | - +----------+-------------+------+-----+---------+----------------+ - 4 rows in set (0.00 sec) - -显示表users的结构: - -特别提醒:上述所有字段设置仅为演示,在实际开发中,要根据具体情况来确定字段的属性。 - -如此就得到了一个空表。可以查询看看: - - mysql> select * from users; - Empty set (0.01 sec) - -向里面插入一条信息。 - - mysql> insert into users(username,password,email) values("qiwsir","123123","qiwsir@gmail.com"); - Query OK, 1 row affected (0.05 sec) - - mysql> select * from users; - +----+----------+----------+------------------+ - | id | username | password | email | - +----+----------+----------+------------------+ - | 1 | qiwsir | 123123 | qiwsir@gmail.com | - +----+----------+----------+------------------+ - 1 row in set (0.00 sec) - -这样就得到了一个有内容的数据库表。 - -##操作数据库 - -首先要连接数据库。 - - >>> import MySQLdb - >>> conn = MySQLdb.connect(host="localhost",user="root",passwd="123123",db="qiwsirtest",charset="utf8") - -Python建立了与数据库的连接,其实是建立了一个`MySQLdb.connect()`的实例对象,或者泛泛地称之为连接对象,Python就是通过连接对象和数据库对话。这个对象常用的方法有: - -- commit():如果数据库表进行了修改,提交保存当前的数据。当然,如果此用户没有权限就作罢了,什么也不会发生。 -- rollback():如果有权限,就取消当前的操作,否则报错。 -- cursor([cursorclass]):返回连接的游标对象。通过游标执行SQL查询并检查结果。游标比连接支持更多的方法,而且可能在程序中更好用。 -- close():关闭连接。此后,连接对象和游标都不再可用了。 - -Python和数据库之间的连接建立起来之后,若要操作它,就需要让Python对数据库执行SQL语句。 - -Python是通过游标执行SQL语句的,所以,连接建立之后,就要利用连接对象得到游标对象,方法如下: - - >>> cur = conn.cursor() - -此后,就可以利用游标对象的方法对数据库进行操作。那么还得了解游标对象的常用方法: - -|名称|描述| -|----|----| -|close()|关闭游标。之后游标不可用| -|execute(query[,args])|执行一条SQL语句,可以带参数| -|executemany(query, pseq)|对序列pseq中的每个参数执行sql语句| -|fetchone()|返回一条查询结果| -|fetchall()|返回所有查询结果| -|fetchmany([size])|返回size条结果| -|nextset()|移动到下一个结果| -|scroll(value,mode='relative')|移动游标到指定行,如果mode='relative',则表示从当前所在行移动value条,如果mode='absolute',则表示从结果集的第一行移动value条.| - -###插入 - -例如,要在数据表users中插入一条记录,使得username="python",password="123456",email="python@gmail.com",这样做: - - >>> cur.execute("insert into users (username,password,email) values (%s,%s,%s)",("python","123456","python@gmail.com")) - 1L - -没有报错,并且返回一个"1L"结果,说明有一行记录操作成功。不妨进入到"mysql>"交互方式查看。 - - mysql> select * from users; - +----+----------+----------+------------------+ - | id | username | password | email | - +----+----------+----------+------------------+ - | 1 | qiwsir | 123123 | qiwsir@gmail.com | - +----+----------+----------+------------------+ - 1 row in set (0.00 sec) - -咦,奇怪呀。怎么没有看到增加的那一条呢?哪里错了?可是上面也没有报错呀。 - -特别注意,通过`cur.execute()`对数据库进行操作之后,没有报错,完全正确,但是不等于数据就已经提交到数据库中了,还必须要用到"MySQLdb.connect"的一个方法:commit(),将数据提交上去,也就是进行了`cur.execute()`操作,要将数据提交才能有效改变数据库的内容。 - - >>> conn.commit() - -再到"mysql>"中运行`"select * from users"`试一试: - - mysql> select * from users; - +----+----------+----------+------------------+ - | id | username | password | email | - +----+----------+----------+------------------+ - | 1 | qiwsir | 123123 | qiwsir@gmail.com | - | 2 | python | 123456 | python@gmail.com | - +----+----------+----------+------------------+ - 2 rows in set (0.00 sec) - -果然如此。 - -这就如同编写一个文本一样,将文字写到文本上,并不等于文字已经保留在文本文件中了,必须执行`CTRL-S`才能保存。所有以`execute()`执行各种sql语句之后,要让已经执行的效果保存,必须运行连接对象的`commit()`方法。 - -再尝试一下插入多条的那个命令`executemany(query,args)`。 - - >>> cur.executemany("insert into users (username,password,email) values (%s,%s,%s)",(("google","111222","g@gmail.com"),("facebook","222333","f@face.book"),("github","333444","git@hub.com"),("docker","444555","doc@ker.com"))) - 4L - >>> conn.commit() - -到"mysql>"里面看结果: - - mysql> select * from users; - +----+----------+----------+------------------+ - | id | username | password | email | - +----+----------+----------+------------------+ - | 1 | qiwsir | 123123 | qiwsir@gmail.com | - | 2 | python | 123456 | python@gmail.com | - | 3 | google | 111222 | g@gmail.com | - | 4 | facebook | 222333 | f@face.book | - | 5 | github | 333444 | git@hub.com | - | 6 | docker | 444555 | doc@ker.com | - +----+----------+----------+------------------+ - 6 rows in set (0.00 sec) - -成功插入了多条记录。在"executemany(query, pseq)"中,query还是一条sql语句,但是`pseq`这时候是一个元组,特别注意括号——一环套一环的括号,这个元组里面的元素也是元组,每个元组分别对应sql语句中的字段列表。 - -除了插入命令,其它对数据操作的命令都可用类似上面的方式,比如删除、修改等。 - -###查询 - -如果要从数据库中查询数据,也用游标方法来操作了。 - - >>> cur.execute("select * from users") - 7L - -这说明从users表汇总查询出来了7条记录。但是,这似乎有点不友好,7条记录在哪里呢,如果在'mysql>'下操作查询命令,一下就把7条记录列出来了。怎么显示Python的查询结果呢? - -要用到游标对象的`fetchall()`、`fetchmany(size=None)`、`fetchone()`、`scroll(value, mode='relative')`等方法。 - - >>> cur.execute("select * from users") - 7L - >>> lines = cur.fetchall() - -至此已经将查询到的记录赋值给变量`lines`了。如果要把它们显示出来,就要用到曾经学习过的循环语句。 - - >>> for line in lines: - ... print line #Python 3: print(line) - ... - (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') - (2L, u'python', u'123456', u'python@gmail.com') - (3L, u'google', u'111222', u'g@gmail.com') - (4L, u'facebook', u'222333', u'f@face.book') - (5L, u'github', u'333444', u'git@hub.com') - (6L, u'docker', u'444555', u'doc@ker.com') - (7L, u'\u8001\u9f50', u'9988', u'qiwsir@gmail.com') - -很好,果然逐条显示出来了。请读者注意,第七条中的`u'\u8001\u95f5'`是汉字,只不过由于我的shell不能显示罢了,不必惊慌,不必搭理它。 - -只想查出第一条,可以吗?当然可以,再看下面: - - >>> cur.execute("select * from users where id=1") - 1L - >>> line_first = cur.fetchone() #只返回一条 - >>> print line_first #Python 3: print(line_first) - (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') - -为了对上述过程了解深入,做下面实验: - - >>> cur.execute("select * from users") - 7L - >>> print cur.fetchall() #Python 3: print(cur.fetchall()) - ((1L, u'qiwsir', u'123123', u'qiwsir@gmail.com'), (2L, u'python', u'123456', u'python@gmail.com'), (3L, u'google', u'111222', u'g@gmail.com'), (4L, u'facebook', u'222333', u'f@face.book'), (5L, u'github', u'333444', u'git@hub.com'), (6L, u'docker', u'444555', u'doc@ker.com'), (7L, u'\u8001\u9f50', u'9988', u'qiwsir@gmail.com')) - -原来,用`cur.execute()`从数据库查询出来的东西,被“保存在了cur所能找到的某个地方”,要找出这些被保存的东西,需要用`cur.fetchall()`(或者`fechone`等),并且找出来之后,作为对象存在。从上面的实验探讨发现,返回值是一个元组对象,里面的每个元素,都是一个一个的元组。因此,用`for`循环就可以一个一个拿出来了。 - -继续,可以看到神奇。接着上面的操作,再打印一遍。 - - >>> print cur.fetchall() #Python 3: print(cur.fetchall()) - () - -晕了!怎么什么是空?不是说作为对象已经存在了内存中了吗?难道这个内存中的对象是一次有效吗? - -不要着急,这就是神奇所在。 - -通过游标找出来的对象,在读取的时候有一个特点,就是那个游标会移动。在第一次操作了`print cur.fetchall()`后,因为是将所有的都打印出来,游标就从第一条移动到最后一条。当`print`结束之后,游标已经在最后一条的后面了。接下来如果再次打印,就空了,最后一条后面没有东西了。这如同什么?能不能与本书前面已经有的知识关联起来? - -下面还要实验,检验上面所说: - - >>> cur.execute('select * from users') - 7L - >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) - (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') - >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) - (2L, u'python', u'123456', u'python@gmail.com') - >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) - (3L, u'google', u'111222', u'g@gmail.com') - -这次不再一次性全部打印出来了,而是一次打印一条,从结果中看出来,果然那个游标在一条一条向下移动呢。注意,这次实验中重新运行了查询语句。 - -那么,既然操作存储在内存中的对象时游标会移动,能不能让游标向上移动,或者移动到指定位置呢?这就是那个`scroll()`。 - - >>> cur.scroll(1) - >>> print cur.fetchone() - (5L, u'github', u'333444', u'git@hub.com') - >>> cur.scroll(-2) - >>> print cur.fetchone() - (4L, u'facebook', u'222333', u'f@face.book') - -果然,能够移动游标,不过请仔细观察,上面的方式是让游标相对与当前位置向上或者向下移动。即`cur.scroll(n)`或者`cur.scroll(n,"relative")`,意思是相对当前位置向上或者向下移动,n为正数,表示向下(向前),n为负数,表示向上(向后)。 - -还有一种方式可以实现“绝对”移动,不是“相对”移动——增加一个参数"absolute"。 - -但在Python中,序列对象是的顺序是从0开始的。 - - >>> cur.scroll(2, "absolute") #回到序号是2,但指向第三条 - >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) - (3L, u'google', u'111222', u'g@gmail.com') - - >>> cur.scroll(1, "absolute") - >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) - (2L, u'python', u'123456', u'python@gmail.com') - - >>> cur.scroll(0, "absolute") #回到序号是0,即指向tuple的第一条 - >>> print cur.fetchone() #Python 3: print(cur.fetchone() ) - (1L, u'qiwsir', u'123123', u'qiwsir@gmail.com') - -至此,已经熟悉了`cur.fetchall()`和`cur.fetchone()`以及`cur.scroll()`几个方法,还有另外一个——`cur.fetchmany()`,在前面操作的基础上继续。 - - >>> cur.fetchmany(3) - ((2L, u'python', u'123456', u'python@gmail.com'), (3L, u'google', u'111222', u'g@gmail.com'), (4L, u'facebook', u'222333', u'f@face.book')) - -上面这个操作,就是实现了从当前位置(游标指向序号为1的位置,即第二条记录)开始,含当前位置,向下列出3条记录。 - -读取数据,好像有点啰嗦呀。细细琢磨,还是有道理的。 - -Python总是能够为我们着想的,在连接对象的游标方法中提供了一个参数,可以实现将读取到的数据变成字典形式,这样就提供了另外一种读取方式。 - - >>> cur = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor) - >>> cur.execute("select * from users") - 7L - >>> cur.fetchall() - ({'username': u'qiwsir', 'password': u'123123', 'id': 1L, 'email': u'qiwsir@gmail.com'}, {'username': u'mypython', 'password': u'123456', 'id': 2L, 'email': u'python@gmail.com'}, {'username': u'google', 'password': u'111222', 'id': 3L, 'email': u'g@gmail.com'}, {'username': u'facebook', 'password': u'222333', 'id': 4L, 'email': u'f@face.book'}, {'username': u'github', 'password': u'333444', 'id': 5L, 'email': u'git@hub.com'}, {'username': u'docker', 'password': u'444555', 'id': 6L, 'email': u'doc@ker.com'}, {'username': u'\u8001\u9f50', 'password': u'9988', 'id': 7L, 'email': u'qiwsir@gmail.com'}) - -这样,在元组里面的元素就是一个一个字典: - - >>> cur.scroll(0,"absolute") - >>> for line in cur.fetchall(): - ... print line["username"] #Python 3: print(line["username"]) - ... - qiwsir - mypython - google - ... - -根据字典对象的特点来读取了“键-值”。 - -###更新数据 - -熟悉了前面的操作,再到这里,一切都显得简单了,但仍要提醒的是,如果更新完毕,和插入数据一样,都需要`commit()`来提交保存。 - - >>> cur.execute("update users set username=%s where id=2",("mypython")) - 1L - >>> cur.execute("select * from users where id=2") - 1L - >>> cur.fetchone() - (2L, u'mypython', u'123456', u'python@gmail.com') - -从操作中看出来了,已经将数据库中第二条的用户名修改为mypython了,用的就是update语句。 - -不过,要真的实现在数据库中的更新,还要运行: - - >>> conn.commit() - -还有个小尾巴,当你操作数据完毕,不要忘记关门: - - >>> cur.close() - >>> conn.close() - -门锁好了,放心离开。 - ------- - -[总目录](./index.md)   |   [上节:mysql数据库(1)](./230.md)   |   [下节:mongodb数据库](./232.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/232.md b/232.md deleted file mode 100644 index 96a4061..0000000 --- a/232.md +++ /dev/null @@ -1,336 +0,0 @@ ->大哉!敬虔的奥秘,无人不以为然,就是:神在肉身显现,被圣灵称义,被天使看见,被传于外邦,被世人信服,被接在荣耀里。(1 TIMOTHY 3:16) - -#MongoDB数据库(1) - -MongoDB开始火了,这是时代发展的需要。为此,在这里也要探讨一下如何用Python来操作此数据库。考虑到读者对这种数据库的了解可能比关系型数据库陌生,所以,要用多一点的篇幅来介绍。 - -MongoDB是属于NoSql的。 - -NoSql(Not Only Sql)指的是非关系型的数据库。它是为了大规模Web应用而生的,其特征诸如模式自由、支持简易复制、简单的API、大容量数据等。 - -MongoDB是NoSql其一,选择它,主要是因为我喜欢,下面说说它的特点。 - -- 面向文档存储 -- 对任何属性可索引 -- 复制和高可用性 -- 自动分片 -- 丰富的查询 -- 快速就地更新 - -基于它的特点,擅长的领域就在于: - -- 大数据(太时髦了!以下可以都不看,有这么一条就足够了) -- 内容管理和交付 -- 移动和社交基础设施 -- 用户数据管理 -- 数据平台 - -##安装MongoDB - -先演示在Ubuntu系统中的安装过程: - - sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10 - echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list - sudo apt-get update - sudo apt-get install mongodb-10gen - -如此就安装完毕。上述安装流程可以参考:[Install MongoDB](http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/) - -如果你用的是其它操作系统,可以到官方网站下载安装程序:[http://www.mongodb.org/downloads](http://www.mongodb.org/downloads),该网站能满足各种操作系统。 - -![](./2images/23201.jpg) - -如果在安装过程中遇到了问题,建议去问Google大神(如果有读者心存疑虑或者愤愤不平,请不要发怒,这是我的个人建议,不同意可以略过,我当然也尊重读者的个人选择)。 - ->推荐几个资料,供参考: - ->[window平台安装 MongoDB](http://www.w3cschool.cc/mongodb/mongodb-window-install.html) - ->[NoSQL之【MongoDB】学习(一):安装说明](http://www.cnblogs.com/zhoujinyi/archive/2013/06/02/3113868.html) - ->[MongoDB 生产环境的安装与配置(Ubuntu)](https://ruby-china.org/topics/454) - ->[在Ubuntu中安装MongoDB](http://blog.fens.me/linux-mongodb-install/) - ->[在Ubuntu下进行MongoDB安装步骤](www.cnblogs.com/alexqdh/archive/2011/11/25/2263626.html) - -##启动 - -安装完毕就可以启动数据库。因为本书不是专门讲数据库,所以这里不涉及数据库的详细讲解,下面只是建立一个简单的库,并且说明MongoDB的基本要点,目的在于为后面用Python来操作它做个铺垫。 - -执行`mongo`启动shell,显示的也是`>`,有点类似mysql的状态。在shell中,可以实现与数据库的交互操作。 - -在shell中,有一个全局变量db,使用哪个数据库,那个数据库作为对象被赋给这个全局变量db,如果那个数据库不存在,就会新建。 - - > use mydb - switched to db mydb - > db - mydb - -除非向这个数据库中增加实质性的内容,否则它是看不到的。 - - > show dbs; - local 0.03125GB - -向这个数据库增加点东西。MongoDB的基本单元是文档,所谓文档,就类似与Python中的字典,以“键/值对”的方式保存数据。 - - > book = {"title":"from beginner to master", "author":"qiwsir", "lang":"python"} - { - "title" : "from beginner to master", - "author" : "qiwsir", - "lang" : "python" - } - > db.books.insert(book) - > db.books.find() - { "_id" : ObjectId("554f0e3cf579bc0767db9edf"), "title" : "from beginner to master", "author" : "qiwsir", "lang" : "python" } - -db指向了数据库mydb,books是这个数据库里面的一个集合(类似mysql里面的表),向集合books里面插入了一个文档(文档对应mysql里面的记录)。“数据库、集合、文档”构成了MongoDB数据库。 - -从上面操作还发现一个有意思的地方,并没有类似create之类的命令,用到数据库,就通过`use xxx`,如果不存在就建立;用到集合,就通过`db.xxx`来使用,如果没有就建立。可以总结为“随用随取随建立”。是不是简单的有点出人意料。 - - > show dbs - local 0.03125GB - mydb 0.0625GB - -当有了充实内容之后,会看到刚才用到的数据库mydb了。 - -在shell中,可以对数据进行“增删改查”等操作。但是,我们的目的是用Python来操作,所以,还是把力气放在后面用。 - -##安装pymongo - -要用Python来驱动MongoDB,必须要安装驱动模块,即pymongo,这跟操作mysql类似。安装方法推荐如下: - - $ sudo pip install pymongo - -如果顺利,就会看到最后的提示: - - Successfully installed pymongo - Cleaning up... - -写本书的时候,安装版本号如下,如果读者的版本不一样,也无大碍。 - - >>> import pymongo - >>> pymongo.version - '3.0.1' - -如果读者要指定版本,比如安装2.8版本的,可以: - - $ sudo pip install pymongo==2.8 - -安装好之后,进入到Python的交互模式: - - >>> import pymongo - -说明模块没有问题。 - -##连接 - -既然Python驱动MongoDB的模块pymongo业已安装完毕,接下来就是连接,即建立连接对象。 - - >>> pymongo.Connection("localhost",27017) - Traceback (most recent call last): - File "", line 1, in - AttributeError: 'module' object has no attribute 'Connection' - -报错!我在写本书之前做项目时,就是按照上面方法连接的,读者可以查一下,会发现很多教程是这么连接的。但是,眼睁睁地看到了报错。 - -所以,一定要注意这里的坑。 - -如果读者用的是旧版本的pymongo,比如2.8,仍然可以使用上面的连接方法。如果是像我一样,是用的新的(我安装时没有选版本),就得注意这个问题了。 - -经验主义害死人。必须看看下面有哪些方法可以用: - - >>> dir(pymongo) - ['ALL', 'ASCENDING', 'CursorType', 'DESCENDING', 'DeleteMany', 'DeleteOne', 'GEO2D', 'GEOHAYSTACK', 'GEOSPHERE', 'HASHED', 'IndexModel', 'InsertOne', 'MAX_SUPPORTED_WIRE_VERSION', 'MIN_SUPPORTED_WIRE_VERSION', 'MongoClient', 'MongoReplicaSetClient', 'OFF', 'ReadPreference', 'ReplaceOne', 'ReturnDocument', 'SLOW_ONLY', 'TEXT', 'UpdateMany', 'UpdateOne', 'WriteConcern', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '_cmessage', 'auth', 'bulk', 'client_options', 'collection', 'command_cursor', 'common', 'cursor', 'cursor_manager', 'database', 'errors', 'get_version_string', 'has_c', 'helpers', 'ismaster', 'message', 'mongo_client', 'mongo_replica_set_client', 'monitor', 'monotonic', 'network', 'operations', 'periodic_executor', 'pool', 'read_preferences', 'response', 'results', 'server', 'server_description', 'server_selectors', 'server_type', 'settings', 'son_manipulator', 'ssl_context', 'ssl_support', 'thread_util', 'topology', 'topology_description', 'uri_parser', 'version', 'version_tuple', 'write_concern'] - -瞪大我的那双浑浊迷茫、布满血丝、渴望惊喜的眼睛,透过近视镜的玻璃片,怎么也找不到`Connection()`这个方法。原来,刚刚安装的pymongo,“他变了”。 - -不过,我发现了`MongoClient()`,真乃峰回路转。 - - >>> client = pymongo.MongoClient("localhost", 27017) - -很好。Python已经和MongoDB建立了连接。 - -刚才已经建立了一个数据库mydb,并且在这个库里面有一个集合books,于是: - - >>> db = client.mydb - -或者 - - >>> db = client['mydb'] - -获得数据库mydb,并赋值给变量db(这个变量不是MongoDB的shell中的那个db,此处的db就是Python中一个寻常的变量)。 - - >>> db.collection_names() - [u'system.indexes', u'books'] - -查看集合,发现了我们已经建立好的那个books,于是再获取这个集合,并赋值给一个变量books: - - >>> books = db["books"] - -或者 - - >>> books = db.books - -接下来,就可以操作这个集合中的具体内容了。 - -###编辑 - -刚刚的books所引用的是一个MongoDB的集合对象,它就跟前面学习过的其它对象一样,有一些方法供我们来驱使。 - - >>> type(books) - - - >>> dir(books) - ['_BaseObject__codec_options', '_BaseObject__read_preference', '_BaseObject__write_concern', '_Collection__create', '_Collection__create_index', '_Collection__database', '_Collection__find_and_modify', '_Collection__full_name', '_Collection__name', '__call__', '__class__', '__delattr__', '__dict__', '__doc__', '__eq__', '__format__', '__getattr__', '__getattribute__', '__getitem__', '__hash__', '__init__', '__iter__', '__module__', '__ne__', '__new__', '__next__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_command', '_count', '_delete', '_insert', '_socket_for_primary_reads', '_socket_for_reads', '_socket_for_writes', '_update', 'aggregate', 'bulk_write', 'codec_options', 'count', 'create_index', 'create_indexes', 'database', 'delete_many', 'delete_one', 'distinct', 'drop', 'drop_index', 'drop_indexes', 'ensure_index', 'find', 'find_and_modify', 'find_one', 'find_one_and_delete', 'find_one_and_replace', 'find_one_and_update', 'full_name', 'group', 'index_information', 'initialize_ordered_bulk_op', 'initialize_unordered_bulk_op', 'inline_map_reduce', 'insert', 'insert_many', 'insert_one', 'list_indexes', 'map_reduce', 'name', 'next', 'options', 'parallel_scan', 'read_preference', 'reindex', 'remove', 'rename', 'replace_one', 'save', 'update', 'update_many', 'update_one', 'with_options', 'write_concern'] - -这么多方法不会一一介绍,只是按照“增删改查”的常用功能介绍几种。读者可以使用`help()`去查看每一种方法的使用说明。 - - >>> books.find_one() - {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} - -提醒读者注意的是,MongoDB的shell中的命令与pymongo中的方法有时候会稍有差别,务必小心。比如刚才这个,在shell中是这样子的: - - > db.books.findOne() - { - "_id" : ObjectId("554f0e3cf579bc0767db9edf"), - "title" : "from beginner to master", - "author" : "qiwsir", - "lang" : "python" - } - -请注意区分。 - -目前在集合books中,有一个文档,还想再增加,于是就进入到了“增删改查”的常规操作。 - -**新增和查询** - - >>> b2 = {"title":"physics", "author":"Newton", "lang":"english"} - >>> books.insert(b2) - ObjectId('554f28f465db941152e6df8b') - -成功地向集合中增加了一个文档。得看看结果(我们就是充满好奇心的小孩子,我记得女儿小时候,每次给她照相,每拍了一张,她总要看一看。现在我们似乎也是这样,如果不看看,总觉得不放心),看看就是一种查询。 - - >>> books.find().count() - 2 - -这是查看当前集合有多少个文档的方式,返回值为2,则说明有两条文档了。还是要看看内容。 - - >>> books.find_one() - {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} - -这个命令就不行了,因为它只返回第一条。必须要: - - >>> for i in books.find(): - ... print i #Python 3: print(i) - ... - {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} - {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} - -在books引用的对象中有`find()`方法,它返回的是一个可迭代对象,包含着集合中所有的文档。 - -由于文档是“键/值”对,不一定每条文档都要结构一样,比如,也可以在集合中插入这样的文档。 - - >>> books.insert({"name":"Hertz"}) - ObjectId('554f2b4565db941152e6df8c') - >>> for i in books.find(): - ... print i - ... - {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} - {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} - {u'_id': ObjectId('554f2b4565db941152e6df8c'), u'name': u'Hertz'} - -如果有多个文档,想一下子插入到集合中(在MySQL中,可以实现多条数据用一条命令插入到表里面),可以这么做: - - >>> n1 = {"title":"java", "name":"Bush"} - >>> n2 = {"title":"fortran", "name":"John Warner Backus"} - >>> n3 = {"title":"lisp", "name":"John McCarthy"} - >>> n = [n1, n2, n3] - >>> n - [{'name': 'Bush', 'title': 'java'}, {'name': 'John Warner Backus', 'title': 'fortran'}, {'name': 'John McCarthy', 'title': 'lisp'}] - >>> books.insert(n) - [ObjectId('554f30be65db941152e6df8d'), ObjectId('554f30be65db941152e6df8e'), ObjectId('554f30be65db941152e6df8f')] - -这样就完成了所谓的批量插入,查看一下文档条数: - - >>> books.find().count() - 6 - -提醒读者,批量插入的文档大小是有限制的,有人说不要超过20万条,有人说不要超过16MB,我没有测试过。在一般情况下,或许达不到上限,如果遇到极端情况,就请读者在使用时多注意了。 - -如果要查询,除了通过循环之外,能不能按照某个条件查呢?比如查找`'name'='Bush'`的文档: - - >>> books.find_one({"name":"Bush"}) - {u'_id': ObjectId('554f30be65db941152e6df8d'), u'name': u'Bush', u'title': u'java'} - -对于查询结果,还可以进行排序: - - >>> for i in books.find().sort("title", pymongo.ASCENDING): - ... print i #Python 3: print(i) - ... - {u'_id': ObjectId('554f2b4565db941152e6df8c'), u'name': u'Hertz'} - {u'_id': ObjectId('554f30be65db941152e6df8e'), u'name': u'John Warner Backus', u'title': u'fortran'} - {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} - {u'_id': ObjectId('554f30be65db941152e6df8d'), u'name': u'Bush', u'title': u'java'} - {u'_id': ObjectId('554f30be65db941152e6df8f'), u'name': u'John McCarthy', u'title': u'lisp'} - {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} - -这是按照"title"的值的升序排列的,注意`sort()`中的第二个参数,意思是升序排列。如果按照降序,就需要将参数修改为`pymongo.DESCEDING`,也可以指定多个排序键。 - - >>> for i in books.find().sort([("name",pymongo.ASCENDING),("name",pymongo.DESCENDING)]): - ... print i #Python 3: print(i) - ... - {u'_id': ObjectId('554f30be65db941152e6df8e'), u'name': u'John Warner Backus', u'title': u'fortran'} - {u'_id': ObjectId('554f30be65db941152e6df8f'), u'name': u'John McCarthy', u'title': u'lisp'} - {u'_id': ObjectId('554f2b4565db941152e6df8c'), u'name': u'Hertz'} - {u'_id': ObjectId('554f30be65db941152e6df8d'), u'name': u'Bush', u'title': u'java'} - {u'lang': u'python', u'_id': ObjectId('554f0e3cf579bc0767db9edf'), u'author': u'qiwsir', u'title': u'from beginner to master'} - {u'lang': u'english', u'title': u'physics', u'_id': ObjectId('554f28f465db941152e6df8b'), u'author': u'Newton'} - -如果读者看到这里,请务必注意,MongoDB中的每个文档,本质上都是“键/值”对的类字典结构。这种结构,一经Python读出来,就可以用字典中的各种方法来操作。与此类似的还有一个名为JSON的东西,但是,如果用Python读过来之后,无法直接用JSON中的`json.dumps()`方法操作文档。其中一种解决方法就是将文档中的`'_id'`“键/值”对删除(例如:`del doc['_id']`),然后使用`json.dumps()`即可。读者也可是使用`json_util`模块,因为它是“Tools for using Python’s json module with BSON documents”,请阅读[http://api.mongodb.org/python/current/api/bson/json_util.html](http://api.mongodb.org/python/current/api/bson/json_util.html)中的模块使用说明。 - -**更新** - -对于已有数据,更新是数据库中常用的操作。比如,要更新name为Hertz那个文档: - - >>> books.update({"name":"Hertz"}, {"$set": {"title":"new physics", "author":"Hertz"}}) - {u'updatedExisting': True, u'connectionId': 4, u'ok': 1.0, u'err': None, u'n': 1} - >>> books.find_one({"author":"Hertz"}) - {u'title': u'new physics', u'_id': ObjectId('554f2b4565db941152e6df8c'), u'name': u'Hertz', u'author': u'Hertz'} - -在更新的时候,用了一个`$set`修改器,它可以用来指定键值,如果键不存在,就会创建。 - -关于修改器,不仅仅是这一个,还有别的呢。 - -|修改器|描述| -|----|----| -|$set|用来指定一个键的值。如果不存在则创建它| -|$unset|完全删除某个键| -|$inc|增加已有键的值,不存在则创建(只能用于增加整数、长整数、双精度浮点数) -|$push|数组修改器只能操作值为数组,存在key在值末尾增加一个元素,不存在则创建一个数组| - -**删除** - -删除可以用`remove()`方法,稍一演示,读者必会。 - - >>> books.remove({"name":"Bush"}) - {u'connectionId': 4, u'ok': 1.0, u'err': None, u'n': 1} - >>> books.find_one({"name":"Bush"}) - >>> - -这是将那个文档全部删除。当然,也可以根据MongoDB的语法规则写个条件,按照条件删除。 - -**索引** - -索引的目的是为了让查询速度更快,当然,在具体的项目开发中,是否建立索引要视情况而定是否建立索引。因为建立索引也是有代价的。 - - >>> books.create_index([("title", pymongo.DESCENDING),]) - u'title_-1' - -这里仅仅是对pymongo模块做了一个非常简单的介绍,在实际使用过程中,上面知识是很有限的,所以需要读者根据具体应用场景再结合MongoDB的有关知识去尝试新的语句。 - ------- - -[总目录](./index.md)   |   [上节:mysql数据库(2)](./231.md)   |   [下节:sqlite数据库](./233.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/233.md b/233.md deleted file mode 100644 index a3e1ea7..0000000 --- a/233.md +++ /dev/null @@ -1,143 +0,0 @@ ->然而,敬虔加上知足的心便是大利了,因为我们没有带什么到世上来,也不能带什么去,只要有衣有食,就当知足。但那些想要发财的人,就陷在迷惑、落在网罗和许多无知有害的私欲里,叫人沉在败坏和灭亡中。贪财是万恶之根。有人贪恋钱财,就被引诱离了真道,用许多愁苦把自己刺透了。(1 TIMOTHY 6:6-10) - -#SQLite数据库 - -SQLite是一个小型的关系型数据库,它最大的特点在于不需要服务器、零配置。前面的两个数据库,不管是MySQL还是MongoDB,都需要“安装”,安装之后,运行起来,其实是已经有一个相应的服务器在跑着呢。 - -而SQLite不需要这样。首先Python已经将相应的驱动模块作为标准库一部分了,只要安装了Python,就可以使用;另外,它也不需要服务器,可以类似操作文件那样来操作SQLite数据库文件。还有一点也不错,SQLite源代码不受版权限制。 - -SQLite也是一个关系型数据库,所以SQL语句可以在里面使用。 - -跟操作MySQL数据库类似,对于SQLite数据库,也要通过以下几步: - -- 建立连接对象 -- 连接对象方法:建立游标对象 -- 游标对象方法:执行sql语句 - -##建立连接对象 - -由于SQLite数据库的驱动已经在Python里面了,所以,只要引用就可以直接使用。并且在学过MySQL的基础上,理解本节能容就容易多了。 - - >>> import sqlite3 - >>> conn = sqlite3.connect("23301.db") - -这样就得到了连接对象,是不是比MySQL连接要简化了很多呢。在`sqlite3.connect("23301.db")`中,如果已经有了那个数据库,就连接上它;如果没有,就新建一个。注意,这里的路径可以随意指定的。 - -不妨到目录中看一看,是否存在了刚才建立的数据库文件。 - - /2code$ ls 23301.db - 23301.db - -果然有了一个文件。连接对象建立起来之后,就要使用连接对象的方法继续工作了。 - - >>> dir(conn) - ['DataError', 'DatabaseError', 'Error', 'IntegrityError', 'InterfaceError', 'InternalError', 'NotSupportedError', 'OperationalError', 'ProgrammingError', 'Warning', '__call__', '__class__', '__delattr__', '__doc__', '__enter__', '__exit__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'commit', 'create_aggregate', 'create_collation', 'create_function', 'cursor', 'enable_load_extension', 'execute', 'executemany', 'executescript', 'interrupt', 'isolation_level', 'iterdump', 'load_extension', 'rollback', 'row_factory', 'set_authorizer', 'set_progress_handler', 'text_factory', 'total_changes'] - -##游标对象 - -这一步跟MySQL也类似,要建立游标对象。 - - >>> cur = conn.cursor() - -接下来对数据库内容的操作,都是用游标对象方法来实现: - - >>> dir(cur) - ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'arraysize', 'close', 'connection', 'description', 'execute', 'executemany', 'executescript', 'fetchall', 'fetchmany', 'fetchone', 'lastrowid', 'next', 'row_factory', 'rowcount', 'setinputsizes', 'setoutputsize'] - -看到熟悉的名称了:`close(), execute(), executemany(), fetchall()` - -###创建数据库表 - -面对SQLite数据库,读者曾经数据的sql指令都可以照样使用。 - - >>> create_table = "create table books (title text, author text, lang text) " - >>> cur.execute(create_table) - - -这样就在数据库23301.db中建立了一个表books。对这个表可以增加数据了。 - - >>> cur.execute('insert into books values ("from beginner to master", "laoqi", "python")') - - -为了保证数据能够保存,还要如下操作(这是多么熟悉的操作流程和命令呀): - - >>> conn.commit() - >>> cur.close() - >>> conn.close() - -在刚才建立的那个数据库中,已经有了一个表books,表中已经有了一条记录。 - -###查询 - -存进去了,总要看看,这算强迫症吗? - - >>> conn = sqlite3.connect("23301.db") - >>> cur = conn.cursor() - >>> cur.execute('select * from books') - - >>> print cur.fetchall() #Python 3: print(cur.fetchall()) - [(u'from beginner to master', u'laoqi', u'python')] - -###批量插入 - -多增加点内容,以便于做别的操作: - - >>> books = [("first book","first","c"), ("second book","second","c"), ("third book","second","python")] - -这回来一个批量插入: - - >>> cur.executemany('insert into books values (?,?,?)', books) - - >>> conn.commit() - -用循环语句打印查询结果: - - >>> rows = cur.execute('select * from books') - >>> for row in rows: - ... print row #Python 3: print(row) - ... - (u'from beginner to master', u'laoqi', u'python') - (u'first book', u'first', u'c') - (u'second book', u'second', u'c') - (u'third book', u'second', u'python') - -###更新 - -正如前面所说,在`cur.execute()`中,你可以写SQL语句来操作数据库。 - - >>> cur.execute("update books set title='physics' where author='first'") - - >>> conn.commit() - -按照条件查处来看一看: - - >>> cur.execute("select * from books where author='first'") - - >>> cur.fetchone() - (u'physics', u'first', u'c') - -###删除 - -删除也是操作数据库必须的动作。 - - >>> cur.execute("delete from books where author='second'") - - >>> conn.commit() - - >>> cur.execute("select * from books") - - >>> cur.fetchall() - [(u'from beginner to master', u'laoqi', u'python'), (u'physics', u'first', u'c')] - -不要忘记,在完成对数据库的操作后,一定要关门才能走人: - - >>> cur.close() - >>> conn.close() - -基本知识已经介绍差不多了。当然,在实践的编程中,或许会遇到问题,就请读者多参考官方文档:[https://docs.python.org/2/library/sqlite3.html](https://docs.python.org/2/library/sqlite3.html) - ------- - -[总目录](./index.md)   |   [上节:MongoDB数据库](./232.md)   |   [下节:电子表格](./234.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/234.md b/234.md deleted file mode 100644 index 42b7ebe..0000000 --- a/234.md +++ /dev/null @@ -1,277 +0,0 @@ ->人若自洁,脱离卑贱的事,就必作贵重的器皿,成为圣洁,合乎主用,预备行各样的善事。你要逃避少年的私欲,同那清心祷告主的人追求公义、信德、仁爱、和平。惟有那愚拙无学问的辩论,总要弃绝,因为知道这等事是起争竞的。(2 TIMOTHY 2:21-23) - -#电子表格 - -一提到电子表格,可能立刻想到的是excel。殊不知,电子表格“历史悠久”,比Word要长久多了。根据维基百科的记载整理一个简史: - ->VisiCalc是第一个电子表格程序,用于苹果II型电脑。由丹·布李克林(Dan Bricklin)和鮑伯·法蘭克斯頓(Bob Frankston)發展而成,1979年10月跟著蘋果二號電腦推出,成為蘋果二號電腦上的「殺手應用軟體」。 - ->接下来是Lotus 1-2-3,由Lotus Software(美國蓮花軟體公司)於1983年起所推出的電子試算表軟體,在DOS時期廣為個人電腦使用者所使用,是一套殺手級應用軟體。也是世界上第一个销售超过100万套的软件。 - ->然后微软也开始做电子表格,早在1982年,它推出了它的第一款電子制表軟件──Multiplan,並在CP/M系統上大獲成功,但在MS-DOS系統上,Multiplan敗給了Lotus 1-2-3。 - ->1985年,微软推出第一款Excel,但它只用於Mac系統;直到1987年11月,微软的第一款適用於Windows系統的Excel才诞生,不过,它一出来,就与Windows系统直接捆綁,由于此后windows大行其道,并且Lotus1-2-3遲遲不能適用於Windows系統,到了1988年,Excel的銷量超過了1-2-3。 - ->此后就是微软的天下了,Excel后来又并入了Office里面,成为了Microsoft Office Excel。 - ->尽管Excel已经发展了很多代,提供了大量的用戶界面特性,但它仍然保留了第一款電子制表軟件VisiCalc的特性:行、列組成單元格,數據、與數據相關的公式或者對其他單元格的絕對引用保存在單元格中。 - ->由于微软独霸天下,Lotus 1-2-3已经淡出了人们的视线,甚至于误认为历史就是从微软开始的。 - ->其实,除了微软的电子表格,在Linux系统中也有很好的电子表格,google也提供了不错的在线电子表格(可惜某国内不能正常访问)。 - -从历史到现在,电子表格都很广泛的用途。所以,Python也要操作一番电子表格,因为有些数据,就存在电子表格中。 - -##openpyxl - -openpyxl模块是解决Microsoft Excel 2007/2010之类版本中扩展名是Excel 2010 xlsx/xlsm/xltx/xltm的文件的读写的第三方库。 - -###安装 - -安装第三方库,当然用法力无边的pip install。 - - $ sudo pip install openpyxl - -如果最终看到下面的提示,恭喜你,安装成功。 - - Successfully installed openpyxl jdcal - Cleaning up... - -###workbook和sheet - -第一步,引入模块,用下面的方式: - - >>> from openpyxl import Workbook - -接下来就用`Workbook()`类里面的方法展开工作: - - >>> wb = Workbook() - -请回忆Excel文件,如果想不起来,就打开Excel,我们第一眼看到的是一个称之为工作簿(workbook)的东西,里面有几个sheet,默认是三个,当然可以随意增删。默认使用第一个sheet。 - - >>> ws = wb.active - -每个工作簿中,至少要有一个sheet,通过这条指令,就在当前工作簿中建立了一个sheet,并且它是当前正在使用的。 - -还可以在这个sheet后面追加: - - >>> ws1 = wb.create_sheet() - -甚至,还可以插队: - - >>> ws2 = wb.create_sheet(1) - -在第二个位置插入了一个sheet。 - -在Excel文件中一样,创建了sheet之后,默认都是以"Sheet1"、"Sheet2"样子来命名的,然后我们可以给其重新命名。在这里,依然可以这么做。 - - >>> ws.title = "python" - -`ws`所引用的sheet对象名字就是"python"了。 - -此时,可以使用下面的方式从工作簿对象中得到sheet。 - - >>> ws01 = wb['python'] #sheet和工作簿的关系,类似键值对的关系 - >>> ws is ws01 - True - -或者用这种方式 - - >>> ws02 = wb.get_sheet_by_name("python") #这个方法名字也太直接了,方法的参数就是sheet名字 - >>> ws is ws02 - True - -整理一下到目前为止我们已经完成的工作:建立了工作簿(wb),还有三个sheet。还是显示一下比较好: - - >>> print wb.get_sheet_names() #Python 3: print(wb.get_sheet_names()) - ['python', 'Sheet2', 'Sheet1'] - -Sheet2之所以排在了第二位,是因为在建立的时候,用了一个插队的方法。这跟在Excel中差不多少,如果Sheet命名了,就按照那个名字显示,否则就默认为名字是"Sheet1"形状的(注意,第一个字母大写)。 - -也可以用循环语句,把所有的Sheet名字打印出来。 - - >>> for sh in wb: - ... print sh.title #Python 3: print(sh.title) - ... - python - Sheet2 - Sheet1 - -如果读者`dir(wb)`工作簿对象的属性和方法,会发现它具有迭代的特征`__iter__`。说明,工作簿对象是可迭代的。 - -###cell - -为了能够清楚理解向电子表格中增加数据的过程,将电子表中约定的名称以下图方式说明: - -![](./2images/23401.jpg) - -对于sheet,其中的cell是它的下级单位。所以,要得到某个cell可以这样: - - b4 = ws['B4'] - -如果B4这个cell已经有了,用这种方法就是将它的值赋给了变量`b4`;如果sheet中没有这个cell,那么就创建这个cell对象。 - -请读者注意,当我们打开Excel,默认已经画好了好多cell。但是,在Python操作的电子表格的情况中,不会默认画好那样一个表格,一切都要创建之后才有。所以,如果按照前面的操作流程,上面就是创建了B4这个cell,并且把它作为一个对象被b4变量引用。 - -如果要给B4添加数据,可以这么做: - - >>> ws['B4'] = 4444 - -因为`b4`引用了一个cell对象,所以可以利用这个对象的属性来查看其值: - - >>> b4.value - 4444 - -要获得(或者建立并获得)某个cell对象,还可以使用下面方法: - - >>> a1 = ws.cell("A1") - -或者: - - >>> a2 = ws.cell(row = 2, column = 1) - -刚才已经提到,在建立了Sheet之后,内存中的它并没有cell,需要程序去建立。上面都是一个一个地建立,能不能一下建立多个呢?比如要类似下面的: - -|A1|B1|C1| -|----|----|---| -|A2|B2|C2| -|A3|B3|C3| - -就可以如同切片那样来操作: - - >>> cells = ws["A1":"C3"] - -可以用下面方法看看创建结果: - - >>> tuple(ws.iter_rows("A1:C3")) - ((, , ), - (, , ), - (, , )) - -这是按照横向顺序读过来的,即A1-B1-C1,作为一个元组,然后读下一横行,再组成一个元组。还可以用下面的循环方法,一个一个地读到每个cell对象: - - >>> for row in ws.iter_rows("A1:C3"): - ... for cell in row: - ... print cell #Python 3: print(cell) - ... - - - - - - - - - - -也可以用Sheet对象的`rows`属性,得到按照横向顺序依次排列的cell对象(注意观察结果,因为没有进行范围限制,所以是当前Sheet中所有的cell,前面已经建立到第四行了B4,所以,要比上面的操作多一个row): - - >>> ws.rows - ((, , ), - (, , ), - (, , ), - (, , )) - -用Sheet对象的`columns`属性,得到的是按照纵向顺序排列的cell对象(注意观察结果): - - >>> ws.columns - ((, , , ), - (, , , ), - (, , , )) - -不管用那种方法,只要得到了cell对象,接下来就可以依次赋值了。比如要将上面的表格中,依次填写上1,2,3,... - - >>> i = 1 - >>> for cell in ws.rows: - ... cell.value = i - ... i += 1 - ... - Traceback (most recent call last): - File "", line 2, in - AttributeError: 'tuple' object has no attribute 'value' - -报错了。关键是没有注意观察上面的结果。元组里面是以元组为元素,再里面才是cell对象。所以,必须要“时时警醒”,常常谨慎。 - - >>> for row in ws.rows: - ... for cell in row: - ... cell.value = i - ... i += 1 - ... - -如此,就给每个cell添加了数据。查看一下,不过可以换一个属性: - - >>> for col in ws.columns: - ... for cell in col: - ... print cell.value - ... - 1 - 4 - 7 - 10 - 2 - 5 - 8 - 11 - 3 - 6 - 9 - 12 - -虽然看着有点不舒服,但的确达到了前面的要求。 - -###保存 - -把辛苦工作的结果保存一下吧。 - - >>> wb.save("23401.xlsx") - -如果有同名文件存在,会覆盖。 - -此时,可以用Excel打开这个文件,看看可视化的结果: - -![](./2images/23402.jpg) - -###读取已有文件 - -如果已经有一个.xlsx文件,要读取它,可以这样来做: - - >>> from openpyxl import load_workbook - >>> wb2 = load_workbook("23401.xlsx") - >>> print wb2.get_sheet_names() #Python 3: print(wb2.get_sheet_names()) - ['python', 'Sheet2', 'Sheet1'] - >>> ws_wb2 = wb2["python"] - >>> for row in ws_wb2.rows: - ... for cell in row: - ... print cell.value #Python 3: print(cell.value) - ... - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 11 - 12 - -很好,就是这个文件。 - -##其它第三方库 - -针对电子表格的第三方库,除了上面这个openpyxl之外,还有别的,列出几个,供参考,使用方法大同小异。 - -- xlsxwriter:针对Excel 2010格式,如.xlsx,官方网站:[https://xlsxwriter.readthedocs.org/](https://xlsxwriter.readthedocs.org/),这个官方文档写的图文并茂。非常好读。 - -下面两个用来处理.xls格式的电子表表格。 - -- xlrd:网络文件:https://secure.simplistix.co.uk/svn/xlrd/trunk/xlrd/doc/xlrd.html?p=4966 -- xlwt:网络文件:http://xlwt.readthedocs.org/en/latest/ - ------- - -[总目录](./index.md)   |   [上节:SQLite数据库](./233.md)   |   [下节:实战-引](./300.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/235.md b/235.md deleted file mode 100644 index 63ff167..0000000 --- a/235.md +++ /dev/null @@ -1,332 +0,0 @@ ->要使人晓得智慧和训诲,分辨通达的言语。使人处事,领受智慧、仁义、公平、正直的训诲。使愚人灵明、使少年人有知识和谋略。使智慧人听见、增长学问、使聪明人得着智谋、使人明白箴言和譬喻、懂得智慧人的言词和谜语。敬畏耶和华使知识的开端,愚妄人藐视智慧和训诲。 - -#上下文管理器 - -在[《文件(1)》](./126.md)中提到,如果要打开文件,一种比较好的方法是使用`with`语句,因为这种方法,不仅结构简单,更重要的是不用再单独去判断某种异常情况,也不用专门去执行文件关闭的指令了。 - -本节对这个有点神奇的`with`进行深入剖析。 - -##概念 - -跟`with`相关的有一些概念,需要必须澄清。 - -**上下文管理** - -如果把它作为一个概念来阐述,似乎有点多余,因为从字面上也可以有一丝的体会,但是,我要说的是,那点直觉的体会不一定等于理性的严格定义,特别是周遭事物越来越复杂的时候。 - -“上下文”的英文是context,在网上检索了一下关于“上下文”的说法,发现没有什么严格的定义,另外,不同的语言环境,对“上下文管理”有不同的说法。根据我个人的经验和能看到的某些资料,窃以为可以把“上下文”理解为某一些语句构成的一个环境(也可以说是代码块),所谓“管理”就是要在这个环境中做一些事情,做什么事情呢?就Python而言,是要将前面某个语句(“上文”)干的事情独立成为对象,然后在后面(“下文”)中使用这个对象来做事情。 - -**上下文管理协议** - -英文是Context Management Protocol,既然是协议,就应该是包含某些方法的东西,大家都按照这个去做(协商好了的东西)。Python中的上下文管理协议中必须包含`__enter__()`和`__exit__()`两个方法。 - -看这个两个方法的名字,估计读者也能领悟一二了(名字不是随便取的,这个和某个岛国取名字的方法不同,当然,现在人家也不是随便取了)。 - -**上下文管理器** - -网上能够找到的最通常的说法是:上下文管理器是支持上下文管理协议的对象,这种对象实现了`__enter__()`和`__exit__()`方法。 - -这个简洁而准确的定义,一般情况下一些高手是理解了。如果读者有疑惑,就说明...,我还是要把一个高雅的定义通俗化更好一些。 - -在Python中,下面的语句,也存在上下文,但它们是一气呵成执行的。 - - >>> name = "laoqi" - >>> if name == "laoqi": - ... print name #Python 3: print(name) - ... - laoqi - >>> if name == "laoqi": - ... for i in name: - ... print i, #Python 3: print(i, end=',') - ... - l a o q i - -以上两个例子中,“上文”进行了判断,然后“下文”执行,从上而下,已经很通畅了。还有不那么通畅的,就是下面的情况。 - - >>> f = open("a.txt", "w") - >>> f.write("hello") - >>> f.write("python") - >>> f.close() - -在这个示例中,当`f = open("a.txt", "w")`之后,其实这句话并没有如同前面的示例中那样被“遗忘”,它是让计算机运行到一种状态——文件始终处于打开状态——然后在这种状态中进行后面的操作,直到`f.close()`为止,这种状态才结束。 - -在这种情况下,我们就可以使用“上下文管理器”(英文:Context Manager),用它来获得“上文”状态对象,然后在“下文”使用它,并在整个过程执行完毕来收场。 - -更Python一点的说法,可以说是在某任务执行之初,上下文管理器做好执行准备,当任务(代码块)执行完毕或者中间出现了异常,上下文管理器负责结束工作。 - -这么好的一个东西,是Python2.5以后才进来的。 - -##必要性 - -刚才那个向文件中写入hello和python两个单词的示例,如果你觉得在工程中也可以这样做,就大错特错了。因为它存在隐含的问题,比如在写入了hello之后,不知道什么原因,后面的python不能写入了,最能说服你的是恰好遇到了“磁盘已满”——虽然这种情况的概率可能比抓奖券还小,但作为严谨的程序员,是必须要考虑的,这也是程序复杂之原因,这时候后面的操作就出现了异常,无法执行,文件也不能close。解决这个问题的方法是用`try ... finally ...`语句,读者一定能写出来。 - -不错,的确解决了。 - -问题继续,如果要从一个文件读内容,写入到另外一个文件中,下面的样子你觉得如何? - -首先建立一个文件,名称为23501.txt,里面的内容如下: - - $ cat 23501.txt - hello laoqi - www.itdiffer.com - -然后写出下面的代码,实现上述目的: - - #!/usr/bin/env python - # coding=utf-8 - - read_file = open("23501.txt") - write_file = open("23502.txt", "w") - - try: - r = read_file.readlines() - for line in r: - write_file.write(line) - finally: - read_file.close() - write_file.close() - -如果你不知道“上下文管理器”,这样做无可厚非,可偏偏现在已经知道了,所以,从今以后这样做就不是最优的了,因为它可以用“上下文管理器”写的更好。所以,用`with`语句改写之后,就是很优雅的了。 - - with open("23501.txt") as read_file, open("23503.txt", "w") as write_file: - for line in read_file.readlines(): - write_file.write(line) - -跟前面的对比一下,是不是有点惊叹了?!所以,你可以理直气壮地说“我用Python”。 - -可见上下文管理器是必要的,因为它让代码优雅了,当然优雅只是表象,还有更深层次的含义,继续阅读下面的内容能有深入体会。 - -##深入理解 - -前面已经说了,上下文管理器执行了`__enter__()`和`__exit__()`方法,可是在`with`语句中哪里看到了这两个方法呢? - -为了解把这个问题解释清楚,需要先做点别的操作,虽然工程中一般不需要做。 - - #!/usr/bin/env python - # coding=utf-8 - - class ContextManagerOpenDemo(object): - - def __enter__(self): - print "Starting the Manager." #Python 3: print("Starting the Manager.") - - def __exit__(self, *others): - print "Exiting the Manager." #Python 3: print("Exiting the Manager.") - - with ContextManagerOpenDemo(): - print "In the Manager." #Python 3: print("In the Manager.") - -在上面的代码示例中,我们写了一个类`ContextManagerOpenDemo()`,你就把它理解为我自己写的`Open()`吧,当然使最简版本了。在这个类中,`__enter__()`方法和`__exit__()`方法都比较简单,就是要检测是否执行该方法。 - -然后用`with`语句来执行,目的是按照“上下文管理器”的解释那样,应该首先执行类中的`__enter__()`方法,它总是在进入代码块前被调用的,接着就执行代码块——`with`语句下面的内容,当代码块执行完毕,离开的时候又调用类中的`__exit__()`。 - -检验一下,是否按照上述理想路径执行。 - - $ python 23502.py - Starting the Manager. - In the Manager. - Exiting the Manager. - -果然如此。执行结果已经基本显示了上下文管理器的工作原理。 - -为了让它更接近`open()`,需要再进一步改写,让它能够接受参数,以便于指定打开的文件。 - - #!/usr/bin/env python - # coding=utf-8 - - class ContextManagerOpenDemo(object): - def __init__(self, filename, mode): - self.filename = filename - self.mode = mode - - def __enter__(self): - print "Starting the Manager." #Python 3: print("Starting the Manager.") - self.open_file = open(self.filename, self.mode) - return self.open_file - - def __exit__(self, *others): - self.open_file.close() - print "Exiting the Manager." #Python 3: print("Exiting the Manager.") - - with ContextManagerOpenDemo("23501.txt", 'r') as reader: - print "In the Manager." #Python 3: print("In the Manager.") - for line in reader: - print line #Python 3: print(line) - -这段代码的意图主要是: - -1. 通过`__init__()`能够读入文件名和打开模式,以使得看起来更接近`open()`; -2. 当进入语句块时,先执行`__enter__()`方法,把文件打开,并返回该文件对象; -3. 执行代码块内容,打印文件内容; -4. 离开代码块的时候,执行`__exit__()`方法,关闭文件。 - -运行结果是: - - $ python 23502.py - Starting the Manager. - In the Manager. - hello laoqi - - www.itdiffer.com - - Exiting the Manager. - -在上述代码中,我们没有显示地写捕获异常的语句,不管在代码块执行时候遇到什么异常,都是要离开代码块,那么就立刻让`__exit__()`方法接管了。 - -如果要把异常显现出来,也使可以,可以改写`__exit__()`方法。例如: - - def __exit__(self, exc_type, exc_value, exc_traceback): - return False - -当代码块出现异常,则由`__exit__()`负责善后清理,如果返回False,如上面的示例,则异常让`with`之外的语句逻辑来处理,这是通常使用的方法;如果返回True,意味着不对异常进行处理。 - -从上面我们自己写的类和方法中,已经了解了上下文管理器的运行原理了。那么,`open()`跟它有什么关系吗? - -为了能清楚地查看,我们需要建立一个文件对象,并且使用`dir()`来看看是否有我们所期盼的东西。 - - >>> f = open("a.txt") - >>> dir(f) - ['__class__', '__delattr__', '__doc__', '__enter__', '__exit__', '__format__', '__getattribute__', '__hash__', '__init__', '__iter__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', 'close', 'closed', 'encoding', 'errors', 'fileno', 'flush', 'isatty', 'mode', 'name', 'newlines', 'next', 'read', 'readinto', 'readline', 'readlines', 'seek', 'softspace', 'tell', 'truncate', 'write', 'writelines', 'xreadlines'] - -读者是否运用你那迷迷糊糊的火眼金睛看到了两个已经很面熟的方法名称了?如果你找到了,你就心知肚明了。 - -在`with`语句中还有一个`as`,虽然在上面示例中没有显示,但是一般我们还是不抛弃它的,它的作用就是将返回的对象付给一个变量,以便于以后使用。 - -##contextlib模块 - -Python中的这个模块使上下文管理中非常好用的东东,这也是标准库中的一员,不需要另外安装了。 - - >>> import contextlib - >>> dir(contextlib) - ['GeneratorContextManager', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'closing', 'contextmanager', 'nested', 'sys', 'warn', 'wraps'] - -常用的是`contextmanger`、`closing`和`nested`。 - -###contextlib.closing() - -要想知道`contextlib.closing()`的使用方法,最常用的方法就是`help()`,这是我们的一贯做法。 - - Help on class closing in module contextlib: - - class closing(__builtin__.object) - | Context to automatically close something at the end of a block. - | - | Code like this: - | - | with closing(.open()) as f: - | - | - -以上省略了部分内容。 - -有一种或许常用到的情景,就是连接数据库,并返回一个数据库对象,在使用完之后关闭数据库连接,其形状如下: - - with contextlib.closing(CreateDB()) as db: - db.query() - -以上不是可运行的代码,只是一个架势,读者如果在编码中使用,需要根据实际情况改写。 - -当数据库语句`db.query()`结束之后,数据库连接自动关闭。 - -###contextlib.nested() - -nested的汉语意思是“嵌套的,内装的”,从字面上读者也可能理解了,这个方法跟嵌套有关。前面有一个示例,是从一个文件读取,然后写入到另外一个文件。我不知道读者是否想过可以这么写: - - with open("23501.txt") as read_file: - with open("23503.txt", "w") as write_file: - for line in read_file.readlines(): - write_file.write(line) - -此种写法不是不行,但是不提倡,因为它太不Pythoner了。其实这里就涉及到了嵌套,因此可以使用`contextlib.nested`重写。 - - with contextlib.nested(open("23501.txt", "r"), open("23503.txt", "w")) as (read_file, write_file): - for line in read_file.readlines(): - write_file.write(line) - -这是一种不错的写法,当然,在本节最前面所用到的写法,也是可以的,只要不用刚才那种嵌套。 - -###contextlib.contextmanager - -contextlib.contextmanager是一个装饰器,它作用于生成器函数(也就是带有yield的函数),一旦生成器函数被装饰以后,就返回一个上下文管理器,即contextlib.contextmanager因为装饰了一个生成器函数而产生了`__enter__()`和`__exit__()`方法。例如: - -特别要提醒,被装饰的生成器函数只能产生一个值,否则就会抛出RuntimeError异常;如果有as子句,则所产生的值,会通过as子句赋给某个变量,就如同前面那样,例如下面的示例(本示例来自:http://www.ibm.com/developerworks/cn/opensource/os-cn-pythonwith/index.html)。 - - #!/usr/bin/env python - # coding=utf-8 - - from contextlib import contextmanager - - @contextmanager - def demo(): - print "before yield." - yield "contextmanager demo." - print "after yield." - - with demo() as dd: - print "the word is: %s" % dd - -尊重引用的文章,所以上述代码就不再注释Python 3下如何修改了。如果读者是使用Python 3的,可以自行将代码中的`print`语句修改为`print()`函数式样。 - -运行结果是: - - $ python 23504.py - before yield. - the word is: contextmanager demo. - after yield. - -为了好玩,再借用网上的一个示例,理解这个装饰器的作用(下面代码来自:http://preshing.com/20110920/the-python-with-statement-by-example ),代码中用到了`cairo`模块,该模块的安装方法是: - - sudo apt-get install libcairo2-dev - -如果是windows操作系统,可以到官方网站下载:[http://cairographics.org/](http://cairographics.org/) - -所执行的代码如下: - - #!/usr/bin/env python - # coding=utf-8 - - import cairo - from contextlib import contextmanager - - @contextmanager - def saved(cr): - cr.save() - try: - yield cr - finally: - cr.restore() - - def tree(angle): - cr.move_to(0, 0) - cr.translate(0, -65) - cr.line_to(0, 0) - cr.stroke() - cr.scale(0.72, 0.72) - if angle > 0.2: - for a in [-angle, angle]: - with saved(cr): - cr.rotate(a) - tree(angle * 0.75) - - surf = cairo.ImageSurface(cairo.FORMAT_ARGB32, 280, 204) - cr = cairo.Context(surf) - cr.translate(140, 203) - cr.set_line_width(5) - tree(0.75) - surf.write_to_png('fractal-tree.png') - -不过,我感到很奇怪,我得到的图片是这样的: - -![](./2code/fractal-tree.png) - -而原文中得到的图片是这样的: - -![](http://preshing.com/images/tree.png) - -请读者指正。 - --------- - -[总目录](./index.md)   |   [上节:生成器](./215.md)   |   [下节:错误和异常(1)](./216.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/236.md b/236.md deleted file mode 100644 index 53964b0..0000000 --- a/236.md +++ /dev/null @@ -1,99 +0,0 @@ ->因为耶和华赐人智慧,知识和聪明都由他口而出。他给正直人存留真智慧,给行为纯正的人作盾牌,为要保守公平人的路,护庇虔敬人的道。你也必明白仁义、公平、正直,一切的善道。智慧必入你心,你的灵要以知识为美。谋略必护卫你,聪明必保守你,要救你脱离恶道(注:或作“恶人的道”),脱离说乖谬话的人。(箴言书 2:6-12) - -#zip()补充 - -在[《语句(4)》](./124.md)中,对zip()进行了阐述,但是,由于篇幅限制,没有阐述的太完整。所以,本讲再次将它拿出来,希望能够有一个完成的独立阐述,以便学习者参考。 - -##内建函数zip() - -zip()是一个内建函数,对它的描述为: - ->zip(*iterables) - ->Make an iterator that aggregates elements from each of the iterables. - ->Returns an iterator of tuples, where the i-th tuple contains the i-th element from each of the argument sequences or iterables. The iterator stops when the shortest input iterable is exhausted. With a single iterable argument, it returns an iterator of 1-tuples. With no arguments, it returns an empty iterator. - -zip()的参数是可迭代对象。例如: - - >>> colors = ["red", "green", "blue"] - >>> values = [234, 12, 89, 65] - >>> for col, val in zip(colors, values): - ... print (col, val) #Python 3: print((col, val)) - ... - ('red', 234) - ('green', 12) - ('blue', 89) - -注意观察,zip()自动进行了匹配,并且抛弃不对应的项。 - -##参数`*iterables` - -这是`zip()`的雕虫小技。 - -文档中显示`zip()`的参数使`*iterables`,这是什么意思呢? - -在 [《函数(3)》](./203.md) 中,讲述“参数收集”和“另外一种传值”方法时,遇到过类似的参数,把其中一个例子再拿出来欣赏: - - >>> def add(x,y): - ... return x + y - ... - >>> add(2,3) - 5 - >>> bars = (2,3) - >>> add(*bars) - 5 - -`zip()`也类似上面示例中构造的那个`add()`函数。 - - >>> dots = [(1, 2), (3, 4), (5, 6)] - >>> x, y = zip(*dots) - >>> x - (1, 3, 5) - >>> y - (2, 4, 6) - -利用这个功能,就比较容易实现矩阵的转置了。补充:关于矩阵的知识,可以参阅维基百科词条:[矩阵](https://zh.wikipedia.org/zh/%E7%9F%A9%E9%98%B5) - - >>> m = [[1, 2], - [3, 4], - [5, 6]] - >>> zip(*m) #Python 3: list(zip(*m)) - [(1, 3, 5), - (2, 4, 6)] - -下面再看一个有点绚丽的: - - >>> seq = range(1, 10) - >>> zip(*[iter(seq)]*3) #Python 3: list(zip(*[iter(seq)]*3)) - [(1, 2, 3), (4, 5, 6), (7, 8, 9)] - -感觉有点太炫酷了,不是太好理解。其实,分解一下,就是: - - >>> x = iter(range(1, 10)) - >>> zip(x, x, x) # Python 3: list(zip(x, x, x) ) - [(1, 2, 3), (4, 5, 6), (7, 8, 9)] - -这种炫酷的代码,我不提倡应用到编程实践中,这里仅仅是展示一下`zip()`的使用罢了。 - -关于在字典中使用`zip()`就不做过多介绍了,因为在 [《语句(4)》](./124.md) 中已经做了完整阐述。 - -##更酷的示例 - -最后,展示一个来自网络的示例,或许在某些时候用一下,能够人前炫耀。 - - >>> a = [1, 2, 3, 4, 5] - >>> b = [2, 2, 9, 0, 9] - >>> map(lambda pair: max(pair), zip(a, b)) #Python 3: list(map(lambda pair: max(pair), zip(a, b))) - [2, 2, 9, 4, 9] - -参考: - -- http://pavdmyt.com/python-zip-fu/ -- https://bradmontgomery.net/blog/2013/04/01/pythons-zip-map-and-lambda/ - ------- - -[总目录](./index.md)   |   [上节:函数练习](./205.md)   |   [下节:命名空间](./241.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/237.md b/237.md deleted file mode 100644 index 15213f9..0000000 --- a/237.md +++ /dev/null @@ -1,286 +0,0 @@ ->Ever since the creation of the world his eternal power dan divine nature, invisible though they are , have been understood and seen through the things ha has made. So they are without excuse; for they knew God, they did not honor him as God or give thanks to him, but they became futile in their thinking, and their senseless minds were darkened. Claiming to be wise, they became fools; and they exchange the glory of the immorrtal God for images resembling a mortal human being or birds or four-footed animals or reptiles. (ROMANS 1:20-23) - -#函数(6) - -##几个特殊函数 - -在python中,有几个特别的函数,它们常常被看做是Python能够进行所谓“函数式编程”的见证,虽然我认为Python不可能走上那条发展道路。 - ->如果以前没有听过,等你开始进入编程界,也会经常听人说“函数式编程”、“面向对象编程”、“指令式编程”等属于。它们是什么呢?这个话题要从“编程范式”讲起。(以下内容源自维基百科) - ->编程范型或编程范式(英语:Programming paradigm),(范即模范之意,范式即模式、方法),是一类典型的编程风格,是指从事软件工程的一类典型的风格(可以对照方法学)。如:函数式编程、程序编程、面向对象编程、指令式编程等等为不同的编程范型。 - ->编程范型提供了(同时决定了)程序员对程序执行的看法。例如,在面向对象编程中,程序员认为程序是一系列相互作用的对象,而在函数式编程中一个程序会被看作是一个无状态的函数计算的串行。 - ->正如软件工程中不同的群体会提倡不同的“方法学”一样,不同的编程语言也会提倡不同的“编程范型”。一些语言是专门为某个特定的范型设计的(如Smalltalk和Java支持面向对象编程,而Haskell和Scheme则支持函数式编程),同时还有另一些语言支持多种范型(如Ruby、Common Lisp、Python和Oz)。 - ->编程范型和编程语言之间的关系可能十分复杂,由于一个编程语言可以支持多种范型。例如,C++设计时,支持过程化编程、面向对象编程以及泛型编程。然而,设计师和程序员们要考虑如何使用这些范型元素来构建一个程序。一个人可以用C++写出一个完全过程化的程序,另一个人也可以用C++写出一个纯粹的面向对象程序,甚至还有人可以写出杂揉了两种范型的程序。 - -不管读者是初学还是老油条,都建议将上面这段话认真读完,不管理解还是不理解,总能有点感觉的。 - -正如前面引文中所说的,Python是支持多种范型的语言,可以进行所谓函数式编程,其突出体现在有这么几个函数:filter、map、reduce、lambda、yield。 - -有了它们,最大的好处是程序更简洁;没有它们,程序也可以用别的方式实现,也不一定麻烦,或者相差无几。 - -因此,在编程实践中,可以不用这些特殊函数,但本着艺不压身的想法,还是要介绍,并且恰当地使用这几个函数,能让别人感觉你更牛X。 - -(注:本节不对yield进行介绍,请阅读[《生成器》](./215.md)) - -###lambda - -lambda函数,是一个只用一行就能解决问题的函数,听着是多么诱人呀。看下面的例子: - - >>> def add(x): - ... x += 3 - ... return x - ... - >>> numbers = range(10) - >>> numbers - [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] - - >>> new_numbers = [] - >>> for i in numbers: - ... new_numbers.append(add(i)) - ... - >>> new_numbers - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -在这个例子中,add()只是一个中间操作。当然,上面的例子完全可以用别的方式实现。比如: - - >>> new_numbers = [ i+3 for i in numbers ] - >>> new_numbers - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -首先说明,这种列表解析的方式是非常非常好的。 - -但是,我们偏偏要用lambda这个函数替代`add(x)`。 - - >>> lam = lambda x:x+3 - >>> n2 = [] - >>> for i in numbers: - ... n2.append(lam(i)) - ... - >>> n2 - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -这里的`lam`就相当于`add(x)`,这一行`lambda x:x+3`就完成`add(x)`函数体里面的两行。还可以写这样的例子: - - >>> g = lambda x, y: x + y - >>> g(3, 4) - 7 - >>> (lambda x : x ** 2)(4) #返回4的平方 - 16 - -通过上面例子,总结一下lambda函数的使用方法: - -- 在lambda后面直接跟变量 -- 变量后面是冒号 -- 冒号后面是表达式,表达式计算结果就是本函数的返回值 - -为了简明扼要,用一个式子表示是必要的: - - lambda arg1, arg2, ...argN : expression using arguments - -要特别提醒:虽然lambda 函数可以接收任意多个参数 (包括可选参数) 并且返回单个表达式的值,但是**lambda 函数不能包含命令,包含的表达式不能超过一个。不要试图向 lambda 函数中塞入太多的东西;如果你需要更复杂的东西,应该定义一个普通函数,然后想让它多长就多长。** - -就lambda而言,它并没有给程序带来性能上的提升,它带来的是代码的简洁。比如,要打印一列表,里面依次是某个数字的1次方,二次方,三次方,四次方。用lambda可以这样做: - - >>> lamb = [ lambda x:x, lambda x:x**2, lambda x:x**3, lambda x:x**4 ] - >>> for i in lamb: - ... print i(3), - ... - 3 9 27 81 - -lambda做为一个单行的函数,在编程实践中,可以选择使用。 - -##map - -先看一个例子,还是上面讲述lambda的时候第一个例子,用map也能够实现: - - >>> numbers = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] - - >>> map(add, numbers) - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - - >>> map(lambda x: x+3, numbers) #用lambda当然可以啦 - [3, 4, 5, 6, 7, 8, 9, 10, 11, 12] - -map()是python的一个内置函数,它的基本样式是`map(func,seq)`。 - -func是一个函数,seq是一个序列对象。在执行的时候,序列对象中的每个元素,按照从左到右的顺序,依次被取出来,塞入到func那个函数里面,并将func的返回值依次存到一个列表中。 - -在应用中,map的所能实现的,也可以用别的方式实现。比如: - - >>> items = [1,2,3,4,5] - >>> squared = [] - >>> for i in items: - ... squared.append(i**2) - ... - >>> squared - [1, 4, 9, 16, 25] - - >>> def sqr(x): return x**2 - ... - >>> map(sqr,items) - [1, 4, 9, 16, 25] - - >>> map(lambda x: x**2, items) - [1, 4, 9, 16, 25] - - >>> [ x**2 for x in items ] #这个我最喜欢了,一般情况下速度足够快,而且可读性强 - [1, 4, 9, 16, 25] - -条条大路通罗马,以上方法,在编程中,自己根据需要来选用啦。 - -在以上感性认识的基础上,在来浏览有关map()的官方说明,能够更明白一些。 - ->map(function, iterable, ...) - ->Apply function to every item of iterable and return a list of the results. If additional iterable arguments are passed, function must take that many arguments and is applied to the items from all iterables in parallel. If one iterable is shorter than another it is assumed to be extended with None items. If function is None, the identity function is assumed; if there are multiple arguments, map() returns a list consisting of tuples containing the corresponding items from all iterables (a kind of transpose operation). The iterable arguments may be a sequence or any iterable object; the result is always a list. - -理解要点: - -- 对可迭代对象中的每个元素,依次应用function的方法(函数)(这本质上就是一个for循环)。 -- 将所有结果返回一个列表。 -- 如果参数很多,则对那些参数并行执行function。 - -例如: - - >>> lst1 = [1, 2, 3, 4, 5] - >>> lst2 = [6, 7, 8, 9, 0] - >>> map(lambda x, y: x + y, lst1, lst2) #将两个列表中的对应项加起来,并返回一个结果列表 - [7, 9, 11, 13, 5] - -上面这个例子如果用for循环来写,还不是很难,如果扩展一下,下面的例子用for来改写,就要小心了: - - >>> lst1 = [1, 2, 3, 4, 5] - >>> lst2 = [6, 7, 8, 9, 0] - >>> lst3 = [7, 8, 9, 2, 1] - >>> map(lambda x,y,z: x+y+z, lst1, lst2, lst3) - [14, 17, 20, 15, 6] - -这才显示出map的简洁优雅。 - -##reduce - -首先声明:如果读者使用的是Python3,跟上面有点不一样,因为在Python3中,`reduce()`已经从全局命名空间中移除,放到了functools模块中,如果要是用,需要用`from functools import reduce`引入之。 - -再看这个: - - >>> reduce(lambda x,y: x+y,[1, 2, 3, 4, 5]) - 15 - -请仔细观察,是否能够看出是如何运算的呢?画一个图: - -![](./2images/20401.png) - -还记得map是怎么运算的吗?忘了?看代码: - - >>> list1 = [1,2,3,4,5,6,7,8,9] - >>> list2 = [9,8,7,6,5,4,3,2,1] - >>> map(lambda x,y: x+y, list1,list2) - [10, 10, 10, 10, 10, 10, 10, 10, 10] - -对比一下,就知道两个的区别了。原来map是上下运算,reduce是横着逐个元素进行运算。 - -权威的解释来自官网: - ->reduce(function, iterable[, initializer]) - ->Apply function of two arguments cumulatively to the items of iterable, from left to right, so as to reduce the iterable to a single value. For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates ((((1+2)+3)+4)+5). The left argument, x, is the accumulated value and the right argument, y, is the update value from the iterable. If the optional initializer is present, it is placed before the items of the iterable in the calculation, and serves as a default when the iterable is empty. If initializer is not given and iterable contains only one item, the first item is returned. Roughly equivalent to: - - def reduce(function, iterable, initializer=None): - it = iter(iterable) - if initializer is None: - try: - initializer = next(it) - except StopIteration: - raise TypeError('reduce() of empty sequence with no initial value') - accum_value = initializer - for x in it: - accum_value = function(accum_value, x) - return accum_value - -如果用我们熟悉的for循环来做上面reduce的事情,可以这样来做: - - >>> lst = range(1,6) - >>> lst - [1, 2, 3, 4, 5] - >>> r = 0 - >>> for i in range(len(lst)): - ... r += lst[i] - ... - >>> r - 15 - -for普世的,reduce是简洁的。 - -为了锻炼思维,看这么一个问题,有两个list,`a = [3,9,8,5,2]`,`b=[1,4,9,2,6]`,计算:a[0]*b[0]+a[1]*b[1]+...的结果。 - - >>> a = [3, 9, 8, 5, 2] - >>> b = [1, 4, 9, 2, 6] - - >>> zip(a,b) #复习一下zip,下面的方法中要用到 - [(3, 1), (9, 4), (8, 9), (5, 2), (2, 6)] - - >>> sum(x*y for x,y in zip(a,b)) #解析后直接求和 - 133 - - >>> new_list = [x*y for x,y in zip(a,b)] - - >>> #这样也可以:new_tuple = (x*y for x,y in zip(a,b)),与上面的区别,后续会讲到 - >>> new_list - [3, 36, 72, 10, 12] - >>> sum(new_list) #或者:sum(new_tuple) - 133 - - >>> reduce(lambda sum,(x,y): sum+x*y,zip(a,b),0) #这个方法是在耍酷呢吗? - 133 - - >>> from operator import add, mul #耍酷的方法也不止一个 - >>> reduce(add, map(mul, a, b)) - 133 - - >>> reduce(lambda x,y: x+y, map(lambda x,y: x*y, a,b)) #map,reduce,lambda都齐全了,更酷吗? - 133 - -在Python 2中,如果使用map/reduce之类,可能或遇到性能不稳定的情况,如果是Python 3,就放心多了,不仅性能稳定,而且速度足够快。 - -但是,我还是更推荐使用列表解析,因为它可读性更好,你无法保证队友都跟你一样。 - -##filter - -filter的中文含义是“过滤器”,在Python中,它就是起到了过滤器的作用。首先看官方说明: - ->filter(function, iterable) - ->Construct a list from those elements of iterable for which function returns true. iterable may be either a sequence, a container which supports iteration, or an iterator. If iterable is a string or a tuple, the result also has that type; otherwise it is always a list. If function is None, the identity function is assumed, that is, all elements of iterable that are false are removed. - ->Note that filter(function, iterable) is equivalent to [item for item in iterable if function(item)] if function is not None and [item for item in iterable if item] if function is None. - -这次真的不翻译了(好像以往也没有怎么翻译呀),而且也不解释要点了。请列位务必自己阅读上面的文字,并且理解其含义。英语,无论怎么强调都是不过分的,哪怕是做乞丐,说两句英语,没准还可以讨到英镑美元呢。 - -通过下面代码体会: - - >>> numbers = range(-5,5) - >>> numbers - [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4] - - >>> filter(lambda x: x>0, numbers) - [1, 2, 3, 4] - - >>> [x for x in numbers if x>0] #与上面那句等效 - [1, 2, 3, 4] - - >>> filter(lambda c: c!='i', 'qiwsir') #能不能对应上面文档说明那句话呢? - 'qwsr' #“If iterable is a string or a tuple, the result also has that type;” - -至此,介绍了几个函数,这些函数在对程序的性能提高上,并没有显著或者稳定预期,但是,在代码的简洁上,是有目共睹的。有时候是可以用来秀一秀,彰显python的优雅和自己耍酷。如何用、怎么用,看你自己的喜好了。 - -不过,编程的时候,往往不能靠单纯自己的喜好,还得考虑队友。 - ------- - -[总目录](./index.md)   |   [上节:函数(5)](./242.md)   |   [下节:函数练习](./205.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/238.md b/238.md deleted file mode 100644 index bf71fdc..0000000 --- a/238.md +++ /dev/null @@ -1,272 +0,0 @@ ->爱人不可虚假,恶要厌恶,善要亲近。爱弟兄,要彼此亲热;恭敬人,要彼此推让。殷勤不可懒惰。要心里火热,常常服侍主。在指望中要有喜乐,在患难中要有忍耐,祷告要恒切。圣徒缺乏要帮补,客要一味地款待。逼迫你们的,要给他们祝福,只要祝福,不可诅咒。与喜乐的人要同乐,与哀哭的人要同哭。要彼此同心,不要志气高大,倒要俯就卑微的人。不要自以为聪明。不要以恶报恶。众人以为美的事,要留心去作。(ROMANS 12:9-17) - -#类(4) - -##方法 - -在类里面,除了属性,就是方法,当然还有注释和文档,但计算机不看它们的,只是人看的。 - -关于方法,在通常情况下用实例调用。但是,跟方法有关的一些深入的话题,还需要辨析。 - -###绑定方法和非绑定方法 - -除了特殊方法,类中的其它的普通方法,是经常要用到的,所以,要对这些普通方法进行研究。 - - >>> class Foo: #Python 2: class Foo(object): - def bar(self): - print("This is a normal method of class.") #Python 2 使用print 语句 - - - >>> f = Foo() - >>> f.bar() - This is a normal method of class. - -在类`Foo`中,方法`bar()`本质上是一个函数,只不过这个函数的第一个参数必须是`self`——在类中给它另外一个名字,叫“方法”——跟函数相比,没有本质的不同。 - -当建立了实例之后,用实例开调用这个方法的时候,因为Python解释器把实例已经作为第一参数隐式地传给了该方法,所以就不需要显示地写出`self`参数了——这个观点反复强调,就是让读者理解`self`就是实例。 - -如果要把实例显示地传给方法,可以用下面的方式进行, - - >>> Foo.bar(f) - This is a normal method of class. - -用这种方式,跟证实了前述观点,即实例化之后,`self`和实例`f`是相同的。通常,我们在类里面使用`self`,类外面使用`f`这个实例,两者有分工。 - -如果在用类调用方法的时候,不传实例,会怎样? - - >>> Foo.bar() - -这样执行,不同的Python版本,报错信息有所不同。 - -Python 2的报错信息是: - - Traceback (most recent call last): - File "", line 1, in - Foo.bar() - TypeError: unbound method bar() must be called with Foo instance as first argument (got nothing instead) - -而Python 3下报错信息变成了: - - Traceback (most recent call last): - File "", line 1, in - Foo.bar() - TypeError: bar() missing 1 required positional argument: 'self' - -不管你是用什么版本,最好都阅读上述两个报错信息。在Python 2的报错信息中,告诉我们`bar()`是非绑定方法,它必须以`Foo`的实例作为第一个参数;Python 3的报错信息也是告诉我们`bar()`缺少一个必须的参数`self`,它也是一个实例。所以,不管哪个版本,都要传一个实例。 - -Python中一切皆对象——又是老生常谈,都是因为此观念之重要。类`Foo`的方法`bar()`也是对象——函数对象,那么,我们就可以像这样来获得该对象了。 - - >>> Foo.bar - #Python 3的显示结果: - -在Python 2的结果中,可以很清晰看出,通过类调用的方法对象,是一个非绑定方法——unbound method,又遇到这个词语了。 - -此外,还可以通过实例来得到该对象。 - - >>> f.bar - > - -用实例来得到这个方法对象,不管是Python 2还是Python 3,结果是一样的。在这里我们看到的是bound method——绑定方法。 - -下面就要逼近unbound method和bound method的概念本质了。 - -在类`Foo`的属性中,有一个`__dict__`的特殊属性,前文已经介绍过了。我们使用它,来窥探内部信息。 - - >>> Foo.__dict__['bar'] - #Python 3显示结果: - -从这个层面进一步说明`bar`是一个函数对象。 - -这个似乎是已经熟悉的了。 - -下面我们再看一个新的东西——描述器。 - -什么是描述器? - -Python中有几个特殊方法比较特殊,它们分别是`__get__()`、`__set__()`和`__delete__()`,简单地说,有这些方法的对象叫做描述器。 - -描述器是属性、实例方法、静态方法、类方法和继承中使用的`super`的背后实现机制,它在Python中使用广泛。这句话中的那些生疏的名词,以后都会用到,稍安勿躁。 - -如何使用? - -上述三个特殊方法,可以用下面的方式来使用——所谓的描述器协议。 - - descr.__get__(self, obj, type=None) --> value - - descr.__set__(self, obj, value) --> None - - descr.__delete__(self, obj) --> None - -关于描述器的内容,本节不重点阐述,这里提及它,目的是要解决“绑定方法”和“非绑定方法”的问题,所以,读者如果有兴趣深入了解描述器,可以去google。 - -弱水三千,只取一瓢。我们在这里也只看`__get__()`。 - - >>> Foo.__dict__['bar'].__get__(None, Foo) - #Python 3显示结果: - -对照描述器协议,我将`self`赋以了`None`,其返回结果和`Foo.bar`的返回结果是一样的。让`self`为`None`的意思就是没有给定的实例,因此该方法被认为非绑定方法(unbound method)。 - -如果给定一个实例呢? - - >>> Foo.__dict__['bar'].__get__(f, Foo) - > - -这时候的显示结果和`f.bar`是相同的。 - -综上所述,可以认为: - -- 当通过类来获取方法的时候,得到的是非绑定方法对象。 -- 当通过实例获取方法的时候,得到的是绑定方法对象。 - -所以,通常用实例调用的方法,都是绑定方法。那么非绑定方法在哪里会用到呢?当学习“继承”相关内容的时候,它会再次登场。 - -###静态方法和类方法 - -先看下面的代码 - - #!/usr/bin/env python - #coding:utf-8 - - class Foo(object): #Python 3: class Foo: - one = 0 - - def __init__(self): - Foo.one = Foo.one + 1 - - def get_class_attr(cls): - return cls.one - - if __name__ == "__main__": - f1 = Foo() - print "f1:",Foo.one #Python 3: print("f1:"+str(Foo.one)),下同,从略 - f2 = Foo() - print "f2:",Foo.one - - print get_class_attr(Foo) - -在上述代码中,有一个函数`get_class_attr()`,这个函数的参数我用`cls`,从函数体的代码中看,要求它引用的对象应该具有属性`one`,这就说明,不是随便一个对象就可以的。恰好,就是这么巧,我在前面定义的类`Foo`中,就有`one`这个属性。于是乎,我在调用这个函数的时候,就直接将该类对象传给了它`get_class_attr(Foo)`。 - -其运行结果如下: - - f1: 1 - f2: 2 - 2 - -在这个程序中,函数`get_class_attr()`写在了类的外面,但事实上,函数只能调用前面写的那个类对象,因为不是所有对象都有那个特别的属性的。所以,这种写法,使得类和函数的耦合性太强了,不便于以后维护。这种写法是应该避免的。避免的方法就是把函数与类融为一体。于是就有了下面的写法。 - - #!/usr/bin/env python - #coding:utf-8 - - class Foo(object): #Python 3: class Foo: - one = 0 - - def __init__(self): - Foo.one = Foo.one + 1 - - @classmethod - def get_class_attr(cls): - return cls.one - - if __name__ == "__main__": - f1 = Foo() - print "f1:",Foo.one - f2 = Foo() - print "f2:",Foo.one - - print f1.get_class_attr() - print "f1.one",f1.one - print Foo.get_class_attr() - - print "*"* 10 - f1.one = 8 - Foo.one = 9 - print f1.one - print f1.get_class_attr() - print Foo.get_class_attr() - -在这个程序中,出现了`@classmethod`——装饰器——在函数那部分遇到过了。需要注意的是`@classmethod`所装饰的方法的参数中,第一个参数不是`self`,这是和我们以前看到的类中的方法是有区别的。这里我使用了参数`cls`,你用别的也可以,只不过习惯用`cls`。 - -再看对类的使用过程。先贴出上述程序的执行结果: - - f1: 1 - f2: 2 - 2 - f1.one 2 - 2 - ********** - 8 - 9 - 9 - -分别建立两个实例,此后类属性`Foo.one`的值是2,然后分别通过实例和类来调用`get_class_attr()`方法(没有显示写`cls` 参数),结果都相同。 - -当修改类属性和实例属性,再次通过实例和类调用`get_class_attr()`方法,得到的依然是类属性的结果。这说明,装饰器`@classmethod`所装饰的方法,其参数`cls`引用的对象是类对象`Foo`。 - -至此,可以下一个定义了。 - -所谓类方法,就是在类里面定义的方法,该方法由装饰器`@classmethod`所装饰,其第一个参数`cls`所引用的是这个类对象,即将类本身作为引用对象传入到此方法中。 - -理解了类方法之后,用同样的套路理解另外一个方法——静态方法。还是先看代码——一个有待优化的代码。 - - #!/usr/bin/env python - #coding:utf-8 - - T = 1 - - def check_t(): - T = 3 - return T - - class Foo(object): #Python 3: class Foo: - def __init__(self,name): - self.name = name - - def get_name(self): - if check_t(): - return self.name - else: - return "no person" - - if __name__ == "__main__": - f = Foo("canglaoshi") - name = f.get_name() - print name #Python 3: print(name) - -先观察上面的程序,发现在类`Foo`里面使用了外面定义的函数`check_t()`。这种类和函数的关系,也是由于有密切关系,从而导致程序维护有困难,于是在和前面同样的理由之下,就出现了下面比较便于维护的程序。 - - #!/usr/bin/env python - #coding:utf-8 - - T = 1 - - class Foo(object): #Python 3: class Foo: - def __init__(self,name): - self.name = name - - @staticmethod - def check_t(): - T = 1 - return T - - def get_name(self): - if self.check_t(): - return self.name - else: - return "no person" - - if __name__ == "__main__": - f = Foo("canglaoshi") - name = f.get_name() - print name #Python 3: print(name) - -经过优化,将原来放在类外面的函数,移动到了类里面,也就是函数`check_t()`现在位于类`Foo`的命名空间之内了。但是,不是简单的移动,还要在这个函数的前面加上`@staticmethod`装饰器,并且要注意的是,虽然这个函数位于类的里面,跟其它的方法不同,它不以`self`为第一个参数。当使用它的时候,可以通过实例调用,比如`self.check_t()`;也可以通过类调用这个方法,比如`Foo.check_t()`。 - -从上面的程序可以看出,尽管`check_t()`位于类的命名空间之内,它却是一个独立的方法,跟类没有什么关系,仅仅是为了免除前面所说的维护上的困难,写在类的作用域内的普通函数罢了。但,它的存在也是有道理的,以上的例子就是典型说明。当然,在类的作用域里面的时候,前面必须要加上一个装饰器`@staticmethod`。我们将这种方法也给予命名,称之为静态方法。 - -方法,是类的重要组成部分。本节专门讲述了方法中的几种特殊方法,它们为我们使用类的方法提供了更多便利的工具。但是,类的重要特征之一——继承,还没有亮相。 - ------- - -[总目录](./index.md)   |   [上节:类(3)](./208.md)   |   [下节:类(5)](./209.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/239.md b/239.md deleted file mode 100644 index d402625..0000000 --- a/239.md +++ /dev/null @@ -1,255 +0,0 @@ ->Who are you to pass judgment on servants of anothers? It is before their own lord that they stand or fall. And they will be upheld, for the Lord is able to make them stand. - -#定制类 - -类是对象,类也是对象类型。字符串、列表、字典等是Python中内置的对象类型,除此之外,我们可以编写类,自定义对象类型。 - -##类和对象类型 - -如果时至今日,你还没有充分理解类和对象类型的问题,可以再看看如下内容。 - - >>> class C1(object): pass #Python 3: class C1: pass - - >>> class C2(object): pass #Python 3: class C2: pass - - >>> a = C1() - >>> b = C2() - >>> type(a) - - >>> type(b) - - -`type()`是我们已经知晓了的内建函数,它返回的是对象类型。`a = C1()`,是实例化,创建了一个实例,也是一个赋值语句,将变量`a`与类`C1()`建立了引用关系,这就和以前`a = 2`的效果是一样的。所以,我们可以通过`type(a)`来得到实例或者说是这个变量所引用对象的类型。 - -在Python中,还有一个函数,专门来判断一个对象是不是另一个给定类的实例。 - - >>> help(isinstance) - Help on built-in function isinstance in module __builtin__: - - isinstance(...) - isinstance(object, class-or-type-or-tuple) -> bool - - Return whether an object is an instance of a class or of a subclass thereof. - With a type as second argument, return whether that is the object's type. - The form using a tuple, isinstance(x, (A, B, ...)), is a shortcut for - isinstance(x, A) or isinstance(x, B) or ... (etc.). - -这是Python 2下的帮助文档信息,Python 3下的内容与之类似。 - -从`isinstance()`的名字上就能知道它是干什么的。 - -用它可以判断一个对象是否是一个类或者子类的实例,如果第二个参数是类型,也可以判断是否为该类型。 - - >>> isinstance(a, C1) - True - >>> isinstance(a, C2) - False - -`a`是类`C1`的实例,不是`C2` 的实例。类似操作,还可以这么做: - - >>> m = 1 - >>> isinstance(m, int) - True - >>> isinstance(m, float) - False - -用以前的话说,`m`所引用的对象是整数型,简说成`m`是整数型。但是,如果从`instance()`的操作中看,`m`和`a`是等效的,你可以认为`a`是C1类型的对象。 - -由此,我们进一步理解了类就是一种对象类型的。 - -##定制类 - -必须要定制类,因为这个世界太复杂。 - -定制类,就要用到类的特殊方法,比如初始化函数`__init__`,虽然用途很 广泛,但仅仅用它还嫌不够,还要用到其它的特殊方法。 - -在Python的官方网站上,专门有介绍[Special method names](https://docs.python.org/2/reference/datamodel.html#special-method-names)的章节,读者可以去仔细阅读。恕我不一一介绍。 - -本节中,仅根据例子中的问题,使用某个特殊方法。 - - #!/usr/bin/env python - - class RoundFloat(object): #Python 3: class RoundFloat: - def __init__(self, val): - assert isinstance(val, float), "value must be a float." - self.value = round(val, 2) - - def __str__(self): - return "{:.2f}".format(self.value) - - __repr__ = __str__ - - if __name__ == "__main__": - r = RoundFloat(2.185) - print r #Python 3: print(r) - print type(r) #Python 3: print(type(r)) - -上述程序中的类`RoundFloat`的作用是定义了一种两位小数的浮点数类型,利用这个类,能够得到两位小数的浮点数。 - -在初始化函数中`assert isinstance(val, float), "value must be a float."`是对输入的数据类型进行判断,如果不是浮点数就会抛出异常提示。关于`assert`(断言)可以参看后续内容。 - -方法`__str__()`是一个特殊方法。实现这个方法,目的就是能够得到打印的内容。这里就是将前面四舍五入保留了两位小数的浮点数,以小数点后有两位小数的形式输出。 - -`__repr__ = __str__` 的含义是在类被调用,即向变量提供`__str__()`里的内容。 - -执行程序,结果是: - - 2.19 - - -如果是`RoundFloat(2.185)`,返回的结果是`2.00`。 - -对比看,`int(2.34)`和`RoundFloat(2.185)`完全等效,即`int`是对象类型,也是数据转换的函数;`RoundFloat`具有同样的功能。`RoundFloat`就是我们新定义的对象类型。 - -仿照上面的做法,我们还可以定制一个专门显示分数的类。 - -如你所知,如果在Python中直接输入状如3/2,它不会是一个分数,而是按照除法进行处理。但,分数的显示和使用,是显而易见的,Python的内置对象类型中又没有分数类型(不仅Python,相当多的高级语言都没有)。所以,有必要自定义一个相关的类型。 - -仿照前面定制类的方式,写出这样一段代码。 - - #!/usr/bin/env python - #coding: utf-8 - - class Fraction(object): #Python 3: class Fraction: - def __init__(self, number, denom=1): - self.number = number - self.denom = denom - - def __str__(self): - return str(self.number) + '/' + str(self.denom) - - __repr__ = __str__ - - - if __name__ == "__main__": - f = Fraction(2, 3) - print f #Python 3: print(f) - - #output: 2/3 - -类`Fraction`就是自定义的分数类型。由此可见,自定义类是相当重要和必要的。 - -在这个基础上,继续将分数问题深入研究——分数相加。`1/2 + 1/3 = 5/6`,计算过程如下: - -1. 通分,即分母为原来两个分数的分母的最小公倍数,得到`3/6 + 2/6`; -2. 分子相加,得到上述两个分数的和。 - -这样,我们将问题分解,找出一个关键,就是“通分”,而通分的关键是找出两个整数的最小公倍数。 - -如何找最小公倍数?步骤如下: - -1. 计算两个数的最大公约数,假设a和b,最大公约数(greatest common divisor)用gcd(a, b)表示; -2. 最小公倍数和最大公约数的关系是:lcm(a, b) = |a * b| / gcd(a, b),lcm(a, b)表示这两个数的最小公倍数(lowest common multiple)。 - -读者不妨从新审视一番上述问题解决的思路。原始问题是计算两个分数的加法,然后将这个问题分解,再将分解之后的问题再分解。最终我们解决问题的基石是计算最大公约数。像这样解决问题的方法,我们称之为分治法,即一个复杂问题,分解为若干个简单问题,然后把简单问题组合起来,就解决了那个复杂问题——分而治之。 - -分解到最小的问题,就可以用编写函数的方式解决了。所以,先计算最大公约数和最小公倍数。 - - #!/usr/bin/env python - #coding: utf-8 - - def gcd(a, b): #最大公约数 - if not a > b: - a, b = b, a - while b != 0: - remainder = a % b - a, b = b, remainder - return a - - def lcm(a, b): #最小公倍数 - return (a * b) / gcd(a,b) - - if __name__ == "__main__": - print gcd(8, 20) #Python 3: print(gcd(8, 20)) - print lcm(8, 20) #Python 3: print(lcm(8, 20)) - - #output: - #4 - #40 - -如此,完成了最小公倍数的计算。然后,在前面定制的分数类的基础上,就可以制作两个分数相加的计算了。 - - #!/usr/bin/env python - #coding: utf-8 - def gcd(a, b): - if not a > b: - a, b = b, a - while b != 0: - remainder = a % b - a, b = b, remainder - return a - - def lcm(a, b): - return (a * b) / gcd(a,b) - - class Fraction(object): #Python 3: class Frraction: - def __init__(self, number, denom=1): - self.number = number - self.denom = denom - - def __str__(self): - return str(self.number) + '/' + str(self.denom) - - __repr__ = __str__ - - def __add__(self, other): - lcm_num = lcm(self.denom, other.denom) - number_sum = (lcm_num / self.denom * self.number) + (lcm_num / other.denom * other.number) - return Fraction(number_sum, lcm_num) - - if __name__ == "__main__": - m = Fraction(1, 3) - n = Fraction(1, 2) - s = m + n - print m,"+",n,"=",s - -较之以前,增加了一个特殊方法`__add__()`,它就是实现相加的特殊方法。在类中,有规定了加减乘除等运算的特殊方法。 - -在Python中,如果要实现某种运算,必须要有运算符,这是毫无疑问已经很熟悉的了。但是,这些运算符之所以能够被使用,都是因为有一些特殊方法才得以实现的。以下表格中列出几种常见运算符所对应的特殊方法,供参考。 - -|二元运算符 | 特殊方法| -|---------------------|-------------------| -| + | `__add__`, `__radd__` | -| - | `__sub__`, `__rsub__` | -| * | `__mul__` , `__rmul__` | -| / | `__div__` , `__rdiv__`, `__truediv__`, `__rtruediv__` | -| // | `__floordiv__`, `__rfloordiv__` | -| % | `__mod__`, `__rmod__` | -| ** | `__pow__`, `__rpow__` | -| << | `__lshift__`, `__rlshift__` | -| >> | ` __rshift__`, `__rrshift__` | -| & | `__and__`, `__rand__` | -| == | `__eq__` | -| !=,<> | `__ne__` | -| > | `__get__` | -| < | `__lt__` | -| >= | `__ge__` | -| <= | `__le__` | - -以“+”为例,不论是实现`1 + 2`还是`'abc' + 'xyz'`,都是要执行`1.__add__(2)`或者`'abc'.__add__('xyz')`操作。也就是两个对象是否能进行加法运算,首先就要看相应的对象是否有`__add__()`方法(读者不妨在交互模式中使用`dir()`,看一看整数、字符串是否有`__add__()`方法),一旦相应的对象有`__add__()`方法,即使这个对象从数学上不可加,我们都可以用加法的形式,来表达`obj.__add__()`所定义的操作。在Python中,运算符起到简化书写的功能,但它依靠特殊方法实现。 - -所以,在刚才自定义的类`Fraction`中,为了实现分数加法,我们重写了`__add__()`方法,也可以称之为运算符重载(对于Python是否支持重载,也是一个争论话题)。 - -就这样,我们解决了分数相加的问题。 - -但,上述加法还不是很完美,还可以有很多优化的地方,比如分数结果要化成最简分数等等。真正要做好一个分数运算的类,还有很多工作。 - -不过,在Python中,其实不用你自己做了,自由高手做好。标准库中就有相应模块解决此问题。 - - >>> from fractions import Fraction - >>> m, n = Fraction(1, 3), Fraction(1, 2) - >>> m + n - Fraction(5, 6) - >>> print m + n #Python 3: print(m + n) - 5/6 - >>> a, b = Fraction(1, 3), Fraction(1, 6) - >>> print a + b #Python 3: print(a + b) - 1/2 - -Python的魅力之一,就是它强大的标准库和第三方库,让你省心省力。 - ------- - -[总目录](./index.md)   |   [上节:多态和封装](./211.md)   |   [下节:黑魔法](./240.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/240.md b/240.md deleted file mode 100644 index c39d659..0000000 --- a/240.md +++ /dev/null @@ -1,282 +0,0 @@ ->我们既蒙怜悯,受了这职分,就不丧胆,乃将那些暗昧可耻的事弃绝了,不行诡诈,不谬讲神的道理,只将真理表明出来,好在神面前把自己荐与各人的良心。(2 CORINTHIANS 4:1-2) - -#黑魔法 - -围绕类的话题,真实说也说不完,仅特殊方法,除了前面遇到过的`__init__()`,`__new__()`,`__str__()`等之外,还有很多。虽然它们仅仅是在某些特殊情景中使用,但是,因为本教程是“From Beginner to Master”。当然,不是学习了类的更多特殊方法就能达到Master水平,但是这是通往Master的一步。 - -本节试图再介绍一些点“黑魔法”,既能窥探到Python的更高境界,也能感受到Master的未来能力。俗话说“艺不压身”,还是多学点好。 - -##优化内存的`__slots__` - -首先声明,`__slots__`能够限制属性的定义,但是这不是它存在终极目标,它存在的终极目标更应该是一个在编程中非常重要的方面:优化内存使用。 - - >>> class Spring(object): - ... __slots__ = ("tree", "flower") - ... - >>> dir(Spring) - ['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__slots__', '__str__', '__subclasshook__', 'flower', 'tree'] - -仔细看看`dir()`的结果,还有`__dict__`属性吗?没有了,的确没有了。也就是说`__slots__`把`__dict__`挤出去了,它进入了类的属性。 - - >>> Spring.__slots__ - ('tree', 'flower') - -这里可以看出,类Spring有且仅有两个属性。 - - >>> t = Spring() - >>> t.__slots__ - ('tree', 'flower') - -实例化之后,实例的`__slots__`与类的完全一样,这跟前面的`__dict__`大不一样了。 - - >>> Spring.tree = "liushu" - -通过类,先赋予一个属性值。然后,检验一下实例能否修改这个属性: - - >>> t.tree = "guangyulan" - Traceback (most recent call last): - File "", line 1, in - AttributeError: 'Spring' object attribute 'tree' is read-only - -看来,我们的意图不能达成,报错信息中显示,`tree`这个属性是只读的,不能修改了。 - - >>> t.tree - 'liushu' - -因为前面已经通过类给这个属性赋值了。不能用实例属性来修改。只能: - - >>> Spring.tree = "guangyulan" - >>> t.tree - 'guangyulan' - -用类属性修改。但是对于没有用类属性赋值的,可以通过实例属性赋值。 - - >>> t.flower = "haitanghua" - >>> t.flower - 'haitanghua' - -但此时: - - >>> Spring.flower - - -实例属性的值并没有传回到类属性,你也可以理解为新建立了一个同名的实例属性。如果再给类属性赋值,那么就会这样了: - - >>> Spring.flower = "ziteng" - >>> t.flower - 'ziteng' - -当然,此时在给`t.flower`重新赋值,就会爆出跟前面一样的错误了。 - - >>> t.water = "green" - Traceback (most recent call last): - File "", line 1, in - AttributeError: 'Spring' object has no attribute 'water' - -这里试图给实例新增一个属性,也失败了。 - -看来`__slots__`已经把实例属性牢牢地管控了起来,但更本质是的是优化了内存。诚然,这种优化会在大量的实例时候显出效果。 - -书接上回,不管是实例还是类,都用`__dict__`来存储属性和方法,可以笼统地把属性和方法称为成员或者特性,一句话概括,就是`__dict__`存储对象成员。但,有时候访问的对象成员没有存在其中,就是这样: - - >>> class A(object): - ... pass - ... - >>> a = A() - >>> a.x - Traceback (most recent call last): - File "", line 1, in - AttributeError: 'A' object has no attribute 'x' - -`x`不是实例的成员,用`a.x`访问,就出错了,并且错误提示中报告了原因:“'A' object has no attribute 'x'” - -在很多情况下,这种报错是足够的了。但是,在某种我现在还说不出的情况下,你或许不希望这样报错,或许希望能够有某种别的提示、操作等。也就是我们更希望能在成员不存在的时候有所作为,不是等着报错。 - -要处理类似的问题,就要用到本节中的知识了。 - -##属性拦截 - -有时候,访问某个类或者实例属性,它不存在,就会异常。对于异常,总是要处理的。就好像“寻隐者不遇”,却被童子“遥指杏花村”,将你“拦截”了,不至于因为“不遇”而垂头丧气。 - -在Python中,有一些方法就具有这种“拦截”能力。 - -- `__setattr__(self, name,value)`:如果要给name赋值,就调用这个方法。 -- `__getattr__(self, name)`:如果name被访问,同时它不存在的时候,此方法被调用。 -- `__getattribute__(self, name)`:当name被访问时自动被调用(注意:这个仅能用于新式类),无论name是否存在,都要被调用。 -- `__delattr__(self, name)`:如果要删除name,这个方法就被调用。 - -用例子说明。 - - >>> class A(object): #Python 3: class A: - ... def __getattr__(self, name): - ... print "You use getattr" #Python 3: print("You use getattr"),下同,从略 - ... def __setattr__(self, name, value): - ... print "You use setattr" - ... self.__dict__[name] = value - ... - -类`A`除了两个方法,没有别的了。 - - >>> a = A() - >>> a.x - You use getattr - -`a.x`这个实例属性,本来是不存在的,但是,由于类中有了`__getattr__(self, name)`方法,当发现属性`x`不存在于对象的`__dict__`中的时候,就调用了`__getattr__`,即所谓“拦截成员”。 - - >>> a.x = 7 - You use setattr - -给对象的属性赋值时候,调用了`__setattr__(self, name, value)`方法,这个方法中有一句`self.__dict__[name] = value`,通过这个语句,就将属性和数据保存到了对象的`__dict__`中,如果再调用这个属性: - - >>> a.x - 7 - -它已经存在于对象的`__dict__`之中。 - -在上面的类中,当然可以使用`__getattribute__(self, name)`,并且,只要访问属性就会调用它。例如: - - >>> class B(object): - ... def __getattribute__(self, name): - ... print "you are useing getattribute" - ... return object.__getattribute__(self, name) - -为了与前面的类区分,新命名一个类名字。需要提醒注意,在这里返回的内容用的是`return object.__getattribute__(self, name)`,而没有使用`return self.__dict__[name]`样式。因为如果用`return self.__dict__[name]`这样的方式,就是访问`self.__dict__`,只要访问这个属性,就要调用`__getattribute__``,这样就导致了无线递归下去(死循环)。要避免之。 - - >>> b = B() - >>> b.y - you are useing getattribute - Traceback (most recent call last): - File "", line 1, in - File "", line 4, in __getattribute__ - AttributeError: 'B' object has no attribute 'y' - >>> b.two - you are useing getattribute - Traceback (most recent call last): - File "", line 1, in - File "", line 4, in __getattribute__ - AttributeError: 'B' object has no attribute 'two' - -访问不存在的成员,可以看到,已经被`__getattribute__`拦截了,虽然最后还是要报错的。 - - >>> b.y = 8 - >>> b.y - you are useing getattribute - 8 - -当给其赋值后,意味着已经在`__dict__`里面了,再调用,依然被拦截,但是由于已经在`__dict__`内,会把结果返回。 - -当你看到这里,是不是觉得上面的方法有点魔力呢?不错,的确是“黑魔法”。但是,它有什么具体应用呢?看下面的例子,能给你带来启发。 - - #!/usr/bin/env python - # coding=utf-8 - - """ - study __getattr__ and __setattr__ - """ - - class Rectangle(object): #Python 3: class Rectangle: - """ - the width and length of Rectangle - """ - def __init__(self): - self.width = 0 - self.length = 0 - - def setSize(self, size): - self.width, self.length = size - def getSize(self): - return self.width, self.length - - if __name__ == "__main__": - r = Rectangle() - r.width = 3 - r.length = 4 - print r.getSize() #Python 3: print(r.getSize()) - r.setSize( (30, 40) ) - print r.width #Python 3: print(r.width) - print r.length #Python 3: print(r.length) - -上面代码来自《Beginning Python:From Novice to Professional,Second Edittion》(by Magnus Lie Hetland),根据本教程的需要,稍作修改。 - - $ python 21301.py - (3, 4) - 30 - 40 - -这段代码已经可以正确运行了。但是,作为一个精益求精的程序员。总觉得那种调用方式还有可以改进的空间。比如,要给长宽赋值的时候,必须赋予一个元组,里面包含长和宽。这个能不能改进一下呢? - - #!/usr/bin/env python - # coding=utf-8 - - """ - study __getattr__ and __setattr__ - """ - - class Rectangle(object): #Python 3: class Rectangle: - """ - the width and length of Rectangle - """ - def __init__(self): - self.width = 0 - self.length = 0 - - def setSize(self, size): - self.width, self.length = size - def getSize(self): - return self.width, self.length - - size = property(getSize, setSize) - - if __name__ == "__main__": - r = Rectangle() - r.width = 3 - r.length = 4 - print r.size - r.size = 30, 40 - print r.width - print r.length - -以上代码的运行结果同上。但是,因为加了一句`size = property(getSize, setSize)`,使得调用方法是不是更优雅了呢?原来用`r.getSize()`,现在使用`r.size`,就好像调用一个属性一样。难道你不觉得眼熟吗?在[《多态和封装》](./211.md)中已经用到过property函数了,虽然写法略有差别,但是作用一样。 - -本来,这样就已经足够了。但是,因为本节中出来了特殊方法,所以,一定要用这些特殊方法从新演绎一下这段程序。虽然重新演绎的不一定比原来的好,主要目的是演示本节的特殊方法应用。 - - #!/usr/bin/env python - # coding=utf-8 - - class NewRectangle(object): - def __init__(self): - self.width = 0 - self.length = 0 - - def __setattr__(self, name, value): - if name == "size": - self.width, self.length = value - else: - self.__dict__[name] = value - - def __getattr__(self, name): - if name == "size": - return self.width, self.length - else: - raise AttributeError - - if __name__ == "__main__": - r = NewRectangle() - r.width = 3 - r.length = 4 - print r.size #Python 3: print(r.size) - r.size = 30, 40 - print r.width #Python 3: print(r.width) - print r.length #Python 3: print(r.length) - -除了类的样式变化之外,调用样式没有变。结果是一样的。 - -如果要对于这种黑魔法有更深的理解,可以阅读:[Python Attributes and Methods](http://www.cafepy.com/article/python_attributes_and_methods/python_attributes_and_methods.html),读了这篇文章,对Python的对象属性和方法会有更深入的理解。 - -至此,是否注意到,我们使用了很多以双下划线开头和结尾的方法或者属性,比如`__dict__`,`__init__()`等。在Python中,用这种方法表示特殊的方法和属性,当然,这是一个惯例,之所以这样做,主要是确保这些特殊的名字不会跟你自己所定义的名称冲突,我们自己定义名称的时候,是绝少用双划线开头和结尾的。如果你需要重写这些方法,当然是可以的。 - ------- - -[总目录](./index.md)   |   [上节:定制类](./239.md)   |   [下节:迭代器](./214.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/241.md b/241.md deleted file mode 100644 index 0c7bad7..0000000 --- a/241.md +++ /dev/null @@ -1,179 +0,0 @@ ->Let the word of Christ dwell in you richly in all wisdom; teaching and admonishing one another in psalms and hymns and spiritual songs, singing with grrace in your hearts tto the Lord. And whatsoever ye do in word or deed, do all in the name of the Lord Jesus, giving thanks to God and the Father by him. (COLOSSIANS 3:14-15) - -#命名空间 - -命名空间,英语叫做namespace,是很多编程语言中都会出现的术语。所以,有必要了解。 - -##全局变量和局部变量 - -全局变量和局部变量,是理解命名空间的起始。 - -下面是一段代码,注意这段代码中有一个函数`funcx()`,这个函数里面有一个`x=9`,在函数的前面也有一个`x=2`。 - - x = 2 - - def funcx(): - x = 9 - print "this x is in the funcx:-->", x #Python 3请自动修改为print(),下同,从略 - - funcx() - print "--------------------------" - print "this x is out of funcx:-->", x - -这段代码输出的结果是什么呢?看: - - this x is in the funcx:--> 9 - -------------------------- - this x is out of funcx:--> 2 - -从输出中可以看出,运行`funcx()`,输出了`funcx()`里面的变量`x`引用的对象9;然后执行代码中的最后一行`print "this x is out of funcx:-->",x`。 - -特别要关注的是,前一个`x`输出的是函数内部的变量`x`;后一个`x`输出的是函数外面的变量`x`。两个变量彼此没有互相影响,虽然都是`x`。两个`x`各自在各自的领域内起到作用。 - -把那个只在函数体内(某个范围内)起作用的变量称之为**局部变量**。 - -有局部,就有对应的全部,在汉语中,全部变量,似乎有歧义,幸亏汉语丰富,于是又取了一个名词:**全局变量** - - x = 2 - def funcx(): - global x #跟上面函数的不同之处 - x = 9 - print "this x is in the funcx:-->",x - - funcx() - print "--------------------------" - print "this x is out of funcx:-->",x - -以上两段代码的不同之处在于,后者在函数内多了一个`global x`,这句话的意思是在声明`x`是全局变量,也就是说这个`x`跟函数外面的那个`x`同一个,接下来通过`x=9`将x的引用对象变成了9。所以,就出现了下面的结果。 - - this x is in the funcx:--> 9 - -------------------------- - this x is out of funcx:--> 9 - -好似全局变量能力很强悍,能够统统率函数内外。但是,要注意,这个东西要慎重使用,因为往往容易带来变量的混乱。内外有别,在程序中一定要注意的。 - -局部变量和全局变量是在不同的范围内起作用。所谓的不同范围,就是变量产生作用的区域,简称作用域。 - -##作用域 - -所谓作用域,是“名字与实体的绑定保持有效的那部分计算机程序”(引自《维基百科》),用直白的方式说,就是程序中变量与对象存在关联的那段程序。如果用前面的例子说明,`x = 2`和`x = 9`是处在两个不同的作用域中。 - -通常,把作用域还分为静态作用域和动态作用域两种,虽然Python是所谓的动态语言(不很严格的划分),但它的作用域属于静态作用域,意即Python中变量的作用域由它在程序中的位置决定,如同上面例子中的`x = 9`位于函数体内,它的作用域和`x = 2`就不同。 - -那么,Python的作用域是怎么划分的呢?可以划分为四个层级: - -1. Local:局部作用域,或称本地作用域 -2. Enclosing:嵌套作用域 -3. Global:全局作用域 -4. Built-in:内建作用域 - -对于一个变量,Python也是按照上述从前到后的顺序,在不同作用域中查找。在刚才的例子中,对于`x`,首先搜索的是函数体内的本地作用域,然后是函数体外的全局作用域。 - - #!/usr/bin/env python - #coding:utf-8 - - def outer_foo(): - a = 10 - def inner_foo(): - a = 20 - print "inner_foo,a=", a #a=20 - #Python 3的读者,请自行修改为print()函数形式,下同,从略 - inner_foo() - print "outer_foo,a=", a #a=10 - - a = 30 - outer_foo() - print "a=", a #a=30 - -运行结果 - - inner_foo,a= 20 - outer_foo,a= 10 - a= 30 - -仔细观察上述程序和运行结果,你会看出对变量在不同范围进行搜索的规律的。 - -在Python程序中,变量的作用域是有在函数、类中才能被改变,或者说,如果不是在函数或者类中,比如在循环或者条件语句中,变量都是在同一层级的作用域中。可以再次参考上述的示例,并且可以在上述示例中修改,检测你的理解。 - -##命名空间 - -“命名空间是对作用域的一种特殊的抽象”(引自《维基百科》)。下面就继续理解这种抽象。 - -先看来自《维基百科》的定义,这个定义通俗易懂。 - ->命名空间(英语:Namespace)表示标识符(identifier)的可见范围。一个标识符可在多个命名空间中定义,它在不同命名空间中的含义是互不相干的。这样,在一个新的命名空间中可定义任何标识符,它们不会与任何已有的标识符发生冲突,因为已有的定义都处于其它命名空间中。 - ->例如,设Bill是X公司的员工,工号为123,而John是Y公司的员工,工号也是123。由于两人在不同的公司工作,可以使用相同的工号来标识而不会造成混乱,这里每个公司就表示一个独立的命名空间。如果两人在同一家公司工作,其工号就不能相同了,否则在支付工资时便会发生混乱。 - ->这一特点是使用命名空间的主要理由。在大型的计算机程序或文档中,往往会出现数百或数千个标识符。命名空间(或类似的方法,见“命名空间的模拟”一节)提供一隱藏區域標識符的機制。通过将逻辑上相关的标识符组织成相应的命名空间,可使整个系统更加模块化。 - ->在编程语言中,命名空间是对作用域的一种特殊的抽象,它包含了处于该作用域内的标识符,且本身也用一个标识符来表示,这样便将一系列在逻辑上相关的标识符用一个标识符组织了起来。许多现代编程语言都支持命名空间。在一些编程语言(例如C++和Python)中,命名空间本身的标识符也属于一个外层的命名空间,也即命名空间可以嵌套,构成一个命名空间树,树根则是无名的全局命名空间。 - ->函数和类的作用域可被視作隱式命名空间,它們和可見性、可訪問性和对象生命周期不可分割的联系在一起。 - -在这段定义中,已经非常清晰地描述了命名空间的含义,特别是如果你已经理解了作用域之后,对命名空间就没有什么陌生感了。 - -为了凸显命名空间之对Python程序员的重要价值,请在交互模式下,输入:`import this`,可以看到: - - >>> import this - The Zen of Python, by Tim Peters - - Beautiful is better than ugly. - Explicit is better than implicit. - Simple is better than complex. - Complex is better than complicated. - Flat is better than nested. - Sparse is better than dense. - Readability counts. - Special cases aren't special enough to break the rules. - Although practicality beats purity. - Errors should never pass silently. - Unless explicitly silenced. - In the face of ambiguity, refuse the temptation to guess. - There should be one-- and preferably only one --obvious way to do it. - Although that way may not be obvious at first unless you're Dutch. - Now is better than never. - Although never is often better than *right* now. - If the implementation is hard to explain, it's a bad idea. - If the implementation is easy to explain, it may be a good idea. - Namespaces are one honking great idea -- let's do more of those! - -这就是所谓《python之禅》,请看最后一句: Namespaces are one honking great idea -- let's do more of those! - -简而言之,命名空间是从所定义的命名到对象的映射集合。 - -不同的命名空间,可以同时存在,当彼此相互独立互不干扰。 - -命名空间因为对象的不同,也有所区别,可以分为如下几种: - -1. 本地命名空间(Function&Class: Local Namespaces):模块中有函数或者类,每个函数或者类所定义的命名空间就是本地命名空间。如果函数返回了结果或者抛出异常,则本地命名空间也结束了。 -2. 全局命名空间(Module:Global Namespaces):每个模块创建它自己所拥有的全局命名空间,不同模块的全局命名空间彼此独立,不同模块中相同名称的命名空间,也会因为模块的不同而不相互干扰。 -3. 内置命名空间(Built-in Namespaces):Python运行起来,它们就存在了。内置函数的命名空间都属于内置命名空间,所以,我们可以在任何程序中直接运行它们,比如前面的id(),不需要做什么操作,拿过来就直接使用了。 - -从网上盗取了一张图,展示一下上述三种命名空间的关系 - -![](./2images/20803.png) - -那么程序在查询上述三种命名空间的时候,就按照从里到外的顺序,即:Local Namespaces --> Global Namesspaces --> Built-in Namesspaces - - >>> def foo(num,str): - ... name = "qiwsir" - ... print locals() - ... - >>> foo(221,"qiwsir.github.io") - {'num': 221, 'name': 'qiwsir', 'str': 'qiwsir.github.io'} - >>> - -这是一个访问本地命名空间的方法,用`print locals()` 完成,从这个结果中不难看出,所谓的命名空间中的数据存储结构和字典是一样的。 - -根据习惯,读者一定已经猜测到了,如果访问全局命名空间,可以使用 `print globals()`。 - -对于不同的命名空间,除了存在查找的顺序之外,还有不同的生命周期,即什么时候它存在,什么时候它消失了。对此,在理解上比较简单,那就是哪个部分被读入内存,它相应的命名空间就存在了。比如程序启动,内置命名空间就创建,一直到程序结束;而其它的,比如本地命名空间,就是在函数调用时开始创建,函数执行结束或者抛出异常时结束。 - -关于命名空间,读者还需要在日后的开发实践中慢慢体会,它会融会到你的编程过程中,有时候你是觉察不到的,正所谓“随风潜入夜,润物细无声”。 - ------- - -[总目录](./index.md)   |   [上节:zip()补充](./201.md)   |   [下节:类(1)](./206.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/242.md b/242.md deleted file mode 100644 index 853a935..0000000 --- a/242.md +++ /dev/null @@ -1,95 +0,0 @@ ->In the same way, husbands should love their wives as they do their own bodies. He who loves his wife loves himself. For no one ever hates his own body, but he nourishes and tenderly cares for it, just as Christ does for the church, because we are members of his body. "For this reason a man will leave his father and mother and be joined to his wife,and the two will become on flesh." This is a great mystery, and I am applying it to Christ and the church. Each of you, however, should love his wife as himself, and a wife should respect her husband. (EPHESIANS 6:28-33) - -#函数(5) - -“闭包”是一个很酷的名词,不是吗?你听说过“烧包”、“豆包”、“脓包”等词语,“闭包”跟它们比起来,更有点神秘色彩。 - -##什么是闭包 - -在数学上,有“闭包”,但此处讨论的是计算机高级语言中的“闭包”,维基百科上有这样的定义: - ->在计算机科学中,闭包(英语:Closure),又称词法闭包(Lexical Closure)或函数闭包(function closures),是引用了自由变量的函数。这个被引用的自由变量将和这个函数一同存在,即使已经离开了创造它的环境也不例外。所以,有另一种说法认为闭包是由函数和与其相关的引用环境组合而成的实体。闭包在运行时可以有多个实例,不同的引用环境和相同的函数组合可以产生不同的实例。 - ->闭包的概念出现于60年代,最早实现闭包的程序语言是Scheme。之后,闭包被广泛使用于函数式编程语言如ML语言和LISP。很多命令式程序语言也开始支持闭包。 - -上面的定义是很严格的,也是比较难理解的。所以,要用简单的例子来说明。 - -毋庸置疑,下面这段程序是能够顺利运行的。 - - a = 3 - - def foo(): - print a #Python 3: print(a) - - foo() - -`a = 3`定义的变量在函数里面能够被调用,但是反过来,如下所示: - - def foo(): - a = 3 - - print a #Python 3: print(a) - -这段程序会毋庸置疑地报错了。其原因就可以用变量的作用域来解释了,详细见[命名空间](./241.md)。 - -在函数`foo()`里面可以直接使用函数外面的`a = 3`,但是在函数`foo()`外面不能使用它里面的所定义的`a = 3`。根据作用域的关系,是合情合理的。然而,也许在某种特殊情况下,我们需要在函数外面使用函数里面的变量,怎么办? - - - def foo(): - a = 3 - def bar(): - return a - return bar - - f = foo() - print f() #Python 3: print(f()) - #output: - 3 - -用上面的方式,就实现了在函数外面得到函数里面所定义的对象。这种写法的本质就是[嵌套函数](./204.md)。 - -在函数`foo()`里面,有`a = 3`和另外一个函数`bar()`,它们两个都在函数`foo()`的环境里面,但是,它们两个是互不统属的,所以变量`a`相对函数`bar()`是自由变量,并且在函数`bar()`中应用了这个自由变量——函数`bar()`就是我们所定义的闭包。 - -闭包是一个函数,并且这个函数具有以下特点: - -- 定义在另外一个函数里面(嵌套函数) -- 引用其所在函数环境的自由变量 - -从上述代码的运行效果上看,通过闭包,能够在定义自由变量`a = 3`的环境`foo()`之外的地方得到该自由变量所引用的对象,或者说`foo()`执行完毕,但`a = 3`依然可以在`f()`即`bar()`函数中存在,而没有被收回。所以,`print f()`才得到了其结果。 - -##使用闭包 - -为什么要是用闭包? - -如果不使用必要,也能编程,这是确认无疑的。 - -只不过,在某些时候,需要对事务做更高层次的抽象,这就可能用到闭包。 - -比如要写一个关于抛物线的函数。如不使用闭包,对于读者来讲应该能够轻易完成,现在使用闭包的方式,可以这么做。 - - #!/usr/bin/env python - # coding:utf-8 - - def parabola(a, b, c): - def para(x): - return a*x**2 + b*x + c - return para - - p = parabola(2, 3, 4) - print p(5) #Python 3: print(p(5)) - -在上面的函数中,`p = parabola(2, 3, 4)`定义了一个抛物线的函数对象——状如y = 2x^2 + 3x + 4,如果要计算`x = 5`时,该抛物线函数的值,只需要`p(5)`即可。这种写法是不是让函数只用起来更简洁? - -读者在学习了[类](./206.md)的有关知识之后,再回来阅读这个闭包的应用,会认识到,此处以`p = parabola(2, 3, 4)`的形式,就如同类中创建实例一样。可以利用上面的函数创建多个实例,也就是得到多个不同的抛物线函数对象。 - -这就是闭包应用的典型案例之一。 - -另外,装饰器,本质上就是闭包的一种应用——可以再次阅读[装饰器](./204.md) - -当然,闭包在实践中还有其它方面的应用,作为入门教程,此处不做深究。读者如果有意愿,可以去Google有关内容,有不少大神在这方面撰写了文章。 - ------- - -[总目录](./index.md)   |   [上节:函数(4)](./204.md)   |   [下节:函数(6)](./237.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/300.md b/300.md deleted file mode 100644 index 5494831..0000000 --- a/300.md +++ /dev/null @@ -1,15 +0,0 @@ ->然而主的仆人不可争竞;只要温温和和地待众人,善于教导,存心忍耐,用温柔劝诫那抵挡的人,或者神给他们悔改的心,可以明白真道,叫他们这已经被魔鬼任意掳去的可以醒悟,脱离他的罗网。(2 TIMOTHY 2:24-26) - -#实战 - -通过前面的学习,已经掌握了python的基本内容,不少读者可能此时已经跃跃欲试,迫切地想用已经掌握的技术去搞点什么东西。 - -本季就是要出点一些实战的东西。 - -首先声明,因为仍然是教程,所以在实战中的所有例子,可能距离真正的工程代码要求还有一定的距离,比如可能没有非常优化、或者某些语句和方法使用还有进一步推敲之处。也盼望读者能够指出不足,必改正。 - ------- - -[总目录](./index.md)   |   [上节:电子表格](./234.md)   |   [下节:为做网站而准备](./301.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/301.md b/301.md deleted file mode 100644 index c5afbb2..0000000 --- a/301.md +++ /dev/null @@ -1,104 +0,0 @@ ->圣经都是神所默示的,于教训、督责、使人归正、教导人学义都是有益的,叫属神的人得以完全,预备行各样的善事。(2 TIMOTHY 3:16-17) - -#为做网站而准备 - -作为一个程序猿一定要会做网站。这也不一定吧,貌似是,但是,如果被人问及此事,如果说自己不会,的确羞愧难当呀。所以,本教程要讲一讲如何做网站。 - ->推荐阅读:[History of the World Wide Web](http://en.wikipedia.org/wiki/History_of_the_World_Wide_Web) - -首先,为自己准备一个服务器。这个要求似乎有点过分,作为一个普通的穷苦聊到的程序员,哪里有铜钿来购买服务器呢?没关系,不够买服务器也能做网站,可以购买云服务空间或者虚拟空间,这个在网上搜搜,很多。如果购买这个的铜钿也没有,还可以利用自己的电脑(这总该有了)作为服务器。我就是利用一台装有ubuntu操作系统的个人电脑作为本教程的案例演示服务器。 - -然后,要在这个服务器上做一些程序配置。一些必备的网络配置这里就不说了,比如我用的ubuntu系统,默认情况都有了。如果读者遇到一些问题,可以搜一下,网上资料多多。另外的配置就是python开发环境,这个应该也有了,前面已经在用了。 - -接下来,要安装一个框架。本教程中制作网站的案例采用tornado框架。 - -在安装这个框架之前,先了解一些相关知识。 - -##开发框架 - -对框架的认识,由于工作习惯和工作内容的不同,有很大差异,这里姑且截取[维基百科中的一种定义](http://zh.wikipedia.org/wiki/%E8%BB%9F%E9%AB%94%E6%A1%86%E6%9E%B6),之所以要给出一个定义,无非是让看官有所了解,但是是否知道这个定义,丝毫不影响后面的工作。 - ->软件框架(Software framework),通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。 - ->框架的功能类似于基础设施,与具体的软件应用无关,但是提供并实现最为基础的软件架构和体系。软件开发者通常依据特定的框架实现更为复杂的商业运用和业务逻辑。这样的软件应用可以在支持同一种框架的软件系统中运行。 - ->简而言之,框架就是制定一套规范或者规则(思想),大家(程序员)在该规范或者规则(思想)下工作。或者说就是使用别人搭好的舞台,你来做表演。 - -我比较喜欢最后一句的解释,别人搭好舞台,我来表演。这也就是说,如果在做软件开发的时候,能够减少工作量。就做网站来讲,其实需要做的事情很多,但是如果有了开发框架,很多底层的事情就不需要做了(都有哪些底层的事情呢?读者能否回答?)。 - -有高手工程师鄙视框架,认为自己编写的才是王道。这方面不争论,框架是开发中很流行的东西,我还是固执地认为用框架来开发,更划算。 - -##python框架 - -有人说php(什么是php,严肃的说法,这是另外一种语言,更高雅的说法,是某个活动的汉语拼音简称)框架多,我不否认,php的开发框架的确很多很多。不过,python的web开发框架,也足够使用了,列举几种常见的web框架: - -- Django:这是一个被广泛应用的框架。在网上搜索,会发现很多公司在招聘的时候就说要会这个。框架只是辅助,真正的程序员,用什么框架,都应该是根据需要而来。当然不同框架有不同的特点,需要学习一段时间。 -- Flask:一个用Python编写的轻量级Web应用框架。基于Werkzeug WSGI工具箱和Jinja2模板引擎。 -- Web2py:是一个为Python语言提供的全功能Web应用框架,旨在敏捷快速的开发Web应用,具有快速、安全以及可移植的数据库驱动的应用,兼容Google App Engine。 -- Bottle: 微型Python Web框架,遵循WSGI,说微型,是因为它只有一个文件,除Python标准库外,它不依赖于任何第三方模块。 -- Tornado:全称是Tornado Web Server,从名字上看就可知道它可以用作Web服务器,但同时它也是一个Python Web的开发框架。最初是在FriendFeed公司的网站上使用,FaceBook收购了之后便开源了出来。 -- webpy: 轻量级的Python Web框架。webpy的设计理念力求精简(Keep it simple and powerful),源码很简短,只提供一个框架所必须的东西,不依赖大量的第三方模块,它没有URL路由、没有模板也没有数据库的访问。 - -说明:以上信息选自:http://blog.jobbole.com/72306/ ,这篇文章中还有别的框架,由于不是web框架,我没有选摘,有兴趣的去阅读。 - -##Tornado - -本教程中将选择使用Tornado框架。此前有朋友建议我用Django,首先它是一个好东西。但是,我更愿意用Tornado,为什么呢?因为......,看下边或许是理由,或许不是。 - -Tornado全称Tornado Web Server,是一个用Python语言写成的Web服务器兼Web应用框架,由FriendFeed公司在自己的网站FriendFeed中使用,被Facebook收购以后框架以开源软件形式开放给大众。看来Tornado的出身高贵呀,对了,某国可能风闻有Facebook,但是要一睹其芳容,还要努力。 - -用哪个框架,一般是要结合项目而定。我之选用Tornado的原因,就是看中了它在性能方面的优异表现。 - -Tornado的性能是相当优异的,因为它试图解决一个被称之为“C10k”问题,就是处理大于或等于一万的并发。一万呀,这可是不小的量。(关于C10K问题,看官可以浏览:[C10k problem](http://en.wikipedia.org/wiki/C10k_problem)) - -下表是和一些其他Web框架与服务器的对比,供看官参考(数据来源: [https://developers.facebook.com/blog/post/301](https://developers.facebook.com/blog/post/301) ) - -条件:处理器为 AMD Opteron, 主频2.4GHz, 4核 - -|服务| 部署 | 请求/每秒| -|----|-------|-----------| -|Tornado| nginx, 4进程|8213| -|Tornado|1个单线程进程|3353| -|Django|Apache/mod_wsgi|2223| -|web.py|Apache/mod_wsgi|2066| -|CherryPy|独立|785| - -看了这个对比表格,还有什么理由不选择Tornado呢? - -就是它了——**Tornado** - -##安装Tornado - -Tornado的官方网站:[http://www.tornadoweb.org](http://www.tornadoweb.org/en/latest/) - -我在自己电脑中(是我目前使用的服务器),用下面方法安装,只需要一句话即可: - - pip install tornado - -这是因为Tornado已经列入PyPI,因此可以通过 pip 或者 easy_install 来安装。 - -如果不用这种方式安装,下面的页面中有可以供看官下载的最新源码版本和安装方式:[https://pypi.python.org/pypi/tornado/](https://pypi.python.org/pypi/tornado/) - -此外,在github上也有托管,看官可以通过上述页面进入到github看源码。 - -我没有在windows操作系统上安装过这个东西,不过,在官方网站上有一句话,可能在告诉读者一些信息: - ->Tornado will also run on Windows, although this configuration is not officially supported and is recommended only for development use. - -特别建议,在真正的工程中,网站的服务器还是用Linux比较好,你懂得(吗?)。 - -##技术准备 - -除了做好上述准备之外,还要有点技术准备: - -- HTML -- CSS -- JavaScript - -我们在后面实例中,不会搞太复杂的界面和JavaScript(JS)操作,所以,只需要基本知识即可。 - ------- - -[总目录](./index.md)   |   [上节:实战-引](./300.md)   |   [下节:分析Hello](./302.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/302.md b/302.md deleted file mode 100644 index 4a3cc57..0000000 --- a/302.md +++ /dev/null @@ -1,205 +0,0 @@ ->As he walked by the sea of Galilee, he saw two brothers, Simon, who is called Peter, and Andrew his brother, casting a net into the sea--for they were fishermen. And he said to them,"Follow me, and I will make you fish for people." Immediately they left their nets and followed him.(MATTHEW 5:18-20) - -#分析Hello - -打开你写python代码用的编辑器,不要问为什么,把下面的代码一个字不差地录入进去,并命名保存为hello.py(目录自己任意定)。 - - #!/usr/bin/env python - #coding:utf-8 - - import tornado.httpserver - import tornado.ioloop - import tornado.options - import tornado.web - - from tornado.options import define, options - define("port", default=8000, help="run on the given port", type=int) - - class IndexHandler(tornado.web.RequestHandler): - def get(self): - greeting = self.get_argument('greeting', 'Hello') - self.write(greeting + ', welcome you to read: www.itdiffer.com') - - if __name__ == "__main__": - tornado.options.parse_command_line() - app = tornado.web.Application(handlers=[(r"/", IndexHandler)]) - http_server = tornado.httpserver.HTTPServer(app) - http_server.listen(options.port) - tornado.ioloop.IOLoop.instance().start() - -进入到保存hello.py文件的目录,执行: - - $ python hello.py - -用python运行这个文件,其实就已经发布了一个网站,只不过这个网站太简单了。 - -接下来,打开浏览器,在浏览器中输入:http://localhost:8000,得到如下界面: - -![](./3images/30201.png) - -我在ubuntu的shell中还可以用下面方式运行: - - $ curl http://localhost:8000/ - Hello, welcome you to read: www.itdiffer.com - - $ curl http://localhost:8000/?greeting=Qiwsir - Qiwsir, welcome you to read: www.itdiffer.com - -此操作,读者可以根据自己系统而定。 - -恭喜你,迈出了决定性一步,已经可以用Tornado发布网站了。在这里似乎没有做什么部署,只是安装了Tornado。是的,不需要多做什么,因为Tornado就是一个很好的server,也是一个开发框架。 - -下面以这个非常简单的网站为例,对用tornado做的网站的基本结构进行解释。 - -##WEB服务器工作流程 - -任何一个网站都离不开Web服务器,这里所说的不是指那个更计算机一样的硬件设备,是指里面安装的软件,有时候初次接触的看官容易搞混。就连伟大的[维基百科都这么说](http://zh.wikipedia.org/wiki/%E6%9C%8D%E5%8A%A1%E5%99%A8): - ->有时,这两种定义会引起混淆,如Web服务器。它可能是指用于网站的计算机,也可能是指像Apache这样的软件,运行在这样的计算机上以管理网页组件和回应网页浏览器的请求。 - -在具体的语境中,看官要注意分析,到底指的是什么。 - -关于Web服务器比较好的解释,推荐看看百度百科的内容,我这里就不复制粘贴了,具体可以点击连接查阅:[WEB服务器](http://baike.baidu.com/view/460250.htm) - -在WEB上,用的最多的就是输入网址,访问某个网站。全世界那么多网站网页,如果去访问,怎么能够做到彼此互通互联呢。为了协调彼此,就制定了很多通用的协议,其中http协议,就是网络协议中的一种。关于这个协议的介绍,网上随处就能找到,请自己google. - -网上偷来的[一张图](http://kenby.iteye.com/blog/1159621)(从哪里偷来的,我都告诉你了,多实在呀。哈哈。),显示在下面,简要说明web服务器的工作过程 - -![](./3images/30202.png) - -偷个彻底,把原文中的说明也贴上: - -1. 创建listen socket, 在指定的监听端口, 等待客户端请求的到来 -2. listen socket接受客户端的请求, 得到client socket, 接下来通过client socket与客户端通信 -3. 处理客户端的请求, 首先从client socket读取http请求的协议头, 如果是post协议, 还可能要读取客户端上传的数据, 然后处理请求, 准备好客户端需要的数据, 通过client socket写给客户端 - -##引入模块 - - import tornado.httpserver - import tornado.ioloop - import tornado.options - import tornado.web - -这四个都是Tornado的模块,在本例中都是必须的。它们四个在一般的网站开发中,都要用到,基本作用分别是: - -- tornado.httpserver:这个模块就是用来解决web服务器的http协议问题,它提供了不少属性方法,实现客户端和服务器端的互通。Tornado的非阻塞、单线程的特点在这个模块中体现。 -- tornado.ioloop:这个也非常重要,能够实现非阻塞socket循环,不能互通一次就结束呀。 -- tornado.options:这是命令行解析模块,也常用到。 -- tornado.web:这是必不可少的模块,它提供了一个简单的Web框架与异步功能,从而使其扩展到大量打开的连接,使其成为理想的长轮询。 - -读者看到这里可能有点莫名其妙,对一些属于不理解。没关系,你可以先不用管它,如果愿意管,就把不理解属于放到google立面查查看。一定要硬着头皮一字一句地读下去,随着学习和实践的深入,现在不理解的以后就会逐渐领悟理解的。 - -还有一个模块引入,是用from...import完成的 - - from tornado.options import define, options - define("port", default=8000, help="run on the given port", type=int) - -这两句就显示了所谓“命令行解析模块”的用途了。在这里通过`tornado.options.define()`定义了访问本服务器的端口,就是当在浏览器地址栏中输入`http:localhost:8000`的时候,才能访问本网站,因为http协议默认的端口是80,为了区分,我在这里设置为8000,为什么要区分呢?因为我的计算机或许你的也是,已经部署了别(或许是Nginx、Apache)服务器了,它的端口是80,所以要区分开(也可能是故意不用80端口),并且,后面我们还会将tornado和Nginx联合起来工作,这样两个服务器在同一台计算机上,就要分开喽。 - -##定义请求-处理程序类 - - class IndexHandler(tornado.web.RequestHandler): - def get(self): - greeting = self.get_argument('greeting', 'Hello') - self.write(greeting + ', welcome you to read: www.itdiffer.com') - -所谓“请求处理”程序类,就是要定义一个类,专门应付客户端(就是你打开的那个浏览器界面)向服务器提出的请求(这个请求也许是要读取某个网页,也许是要将某些信息存到服务器上),服务器要有相应的程序来接收并处理这个请求,并且反馈某些信息(或者是针对请求反馈所要的信息,或者返回其它的错误信息等)。 - -于是,就定义了一个类,名字是IndexHandler,当然,名字可以随便取了,但是,按照习惯,类的名字中的单词首字母都是大写的,并且如果这个类是请求处理程序类,那么就最好用Handler结尾,这样在名称上很明确,是干什么的。 - -类IndexHandler继承`tornado.web.RequestHandler`,其中再定义`get()`和`post()`两个在web中应用最多的方法的内容(关于这两个方法的详细解释,可以参考:[HTTP GET POST的本质区别详解](https://github.com/qiwsir/ITArticles/blob/master/Tornado/DifferenceHttpGetPost.md),作者在这篇文章中,阐述了两个方法的本质)。 - -在本例中,只定义了一个`get()`方法。 - -用`greeting = self.get_argument('greeting', 'Hello')`的方式可以得到url中传递的参数,比如 - - $ curl http://localhost:8000/?greeting=Qiwsir - Qiwsir, welcome you to read: www.itdiffer.com - -就得到了在url中为greeting设定的值Qiwsir。如果url中没有提供值,就是Hello. - -官方文档对这个方法的描述如下: - ->RequestHandler.get_argument(name, default=, []strip=True) - ->Returns the value of the argument with the given name. - ->If default is not provided, the argument is considered to be required, and we raise a MissingArgumentError if it is missing. - ->If the argument appears in the url more than once, we return the last value. - ->The returned value is always unicode. - -接下来的那句`self.write(greeting + ',weblcome you to read: www.itdiffer.com)'`中,`write()`方法主要功能是向客户端反馈信息。也浏览一下官方文档信息,对以后正确理解使用有帮助: - ->RequestHandler.write(chunk)[source] - ->Writes the given chunk to the output buffer. - ->To write the output to the network, use the flush() method below. - ->If the given chunk is a dictionary, we write it as JSON and set the Content-Type of the response to be application/json. (if you want to send JSON as a different Content-Type, call set_header after calling write()). - -##main()方法 - -`if __name__ == "__main__"`,这个方法跟以往执行python程序是一样的。 - -`tornado.options.parse_command_line()`,这是在执行tornado的解析命令行。在tornado的程序中,只要import模块之后,就会在运行的时候自动加载,不需要了解细节,但是,在main()方法中如果有命令行解析,必须要提前将模块引入。 - -##Application类 - -下面这句是重点: - - app = tornado.web.Application(handlers=[(r"/", IndexHandler)]) - -将tornado.web.Application类实例化。这个实例化,本质上是建立了整个网站程序的请求处理集合,然后它可以被HTTPServer做为参数调用,实现http协议服务器访问。Application类的`__init__`方法参数形式: - - def __init__(self, handlers=None, default_host="", transforms=None,**settings): - pass - -在一般情况下,handlers是不能为空的,因为Application类通过这个参数的值处理所得到的请求。例如在本例中,`handlers=[(r"/", IndexHandler)]`,就意味着如果通过浏览器的地址栏输入根路径(`http://localhost:8000`就是根路径,如果是`http://localhost:8000/qiwsir`,就不属于根,而是一个子路径或目录了),对应着就是让名字为IndexHandler类处理这个请求。 - -通过handlers传入的数值格式,一定要注意,在后面做复杂结构的网站是,这里就显得重要了。它是一个list,list里面的元素是tuple,tuple的组成包括两部分,一部分是请求路径,另外一部分是处理程序的类名称。注意请求路径可以用正则表达式书写(关于正则表达式,后面会进行简要介绍)。举例说明: - - handlers = [ - (r"/", IndexHandlers), #来自根路径的请求用IndesHandlers处理 - (r"/qiwsir/(.*)", QiwsirHandlers), #来自/qiwsir/以及其下任何请求(正则表达式表示任何字符)都由QiwsirHandlers处理 - ] - -**注意** - -在这里我使用了`r"/"`的样式,意味着就不需要使用转义符,r后面的都表示该符号本来的含义。例如,\n,如果单纯这么来使用,就以为着换行,因为符号“\”具有转义功能(关于转义详细阅读[《字符串(1)》](./106.md)),当写成`r"\n"`的形式是,就不再表示换行了,而是两个字符,\和n,不会转意。一般情况下,由于正则表达式和 \ 会有冲突,因此,当一个字符串使用了正则表达式后,最好在前面加上'r'。 - -关于Application类的介绍,告一段落,但是并未完全讲述了,因为还有别的参数设置没有讲,请继续关注后续内容。 - -##HTTPServer类 - -实例化之后,Application对象(用app做为标签的)就可以被另外一个类HTTPServer引用,形式为: - - http_server = tornado.httpserver.HTTPServer(app) - -HTTPServer是tornado.httpserver里面定义的类。HTTPServer是一个单线程非阻塞HTTP服务器,执行HTTPServer一般要回调Application对象,并提供发送响应的接口,也就是下面的内容是跟随上面语句的(options.port的值在IndexHandler类前面通过from...import..设置的)。 - - http_server.listen(options.port) - -这种方法,就建立了单进程的http服务。 - -请看官牢记,如果在以后编码中,遇到需要多进程,请参考官方文档说明:http://tornado.readthedocs.org/en/latest/httpserver.html#http-server - -##IOLoop类 - -剩下最后一句了: - - tornado.ioloop.IOLoop.instance().start() - -这句话,总是在`__main()__`的最后一句。表示可以接收来自HTTP的请求了。 - -以上把一个简单的hello.py剖析。想必读者对Tornado编写网站的基本概念已经有了。 - -如果一头雾水,也不要着急,请将上面的内容多看几遍。对整体结构有一个基本了解,不要拘泥于细节或者某些词汇含义。然后即继续学习。 - ------- - -[总目录](./index.md)   |   [上节:为做网站而准备](./301.md)   |   [下节:用tornado做网站(1)](./303.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/303.md b/303.md deleted file mode 100644 index 7285bc9..0000000 --- a/303.md +++ /dev/null @@ -1,180 +0,0 @@ ->你要提醒众人,叫他们顺服作官的、掌权的,遵他的命,预备行各样的善事。不要毁谤,不要争竞,总要和平,向众人大显温柔。我们从前也是无知,悖逆,受迷惑,服侍各样私欲和宴乐,常存恶毒、嫉妒的心,是可恨的,又是彼此相恨。但到了神我们救主的恩慈和他向人所施的慈爱显明的时候,他便救了我们,并不是我们自己所行的义,乃是照着他的怜悯,藉着重生的洗和圣灵的更新。(TITUS 3:1-5) - -#用tornado做网站(1) - -从现在开始,做一个网站,当然,这个网站只能算是一个毛坯的,可能很简陋,但是网站的主要元素,它都会涉及到,读者通过此学习,能够了解网站的开发基本结构和内容,并且对前面的知识可以有综合应用。 - -##基本结构 - -下面是一个网站的基本结构 - -![](./3images/30301.png) - -**前端** - -这是一个不很严格的说法,但是在日常开发中,都这么说。在网站中,所谓前端就是指用浏览器打开之后看到的那部分,它是呈现网站传过来的信息的界面,也是用户和网站之间进行信息交互的界面。撰写前端,一般使用HTML/CSS/JS,当然,非要用python也不是不可以(例如上节中的例子,就没有用HTML/CSS/JS),但这势必造成以后维护困难。 - -MVC模式是一个非常好的软件架构模式,在网站开发中,也常常要求遵守这个模式。请阅读维基百科的解释: - ->MVC模式(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。 - ->MVC模式最早由Trygve Reenskaug在1978年提出,是施乐帕罗奥多研究中心(Xerox PARC)在20世纪80年代为程序语言Smalltalk发明的一种软件设计模式。MVC模式的目的是实现一种动态的程式设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部分分离的同时也赋予了各个基本部分应有的功能。专业人员可以通过自身的专长分组: - -- (控制器 Controller)- 负责转发请求,对请求进行处理。 -- (视图 View) - 界面设计人员进行图形界面设计。 -- (模型 Model) - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。 - -所谓“前端”,就对大概对应着View部分,之所以说是大概,因为MVC是站在一个软件系统的角度进行划分的,上图中的前后端,与其说是系统部分的划分,不如严格说是系统功能的划分。 - -前端所实现的功能主要有: - -- 呈现内容。这些内容是根据url,由后端从数据库中提取出来的。前端将其按照一定的样式呈现出来。另外,有一些内容,不是后端数据库提供的,是写在前端的。 -- 用户与网站交互。现在的网站,这是必须的,比如用户登录。当用户在指定的输入框中输入信息之后,该信息就是被前端提交给后端,后端对这个信息进行处理之后,在一般情况下都要再反馈给前端一个处理结果,然后前端呈现给用户。 - - -**后端** - -这里所说的后端,对应着MVC中的Controller和Model的部分或者全部功能,因为在我们的图中,“后端”是一个狭隘的概念,没有把数据库放在其内。 - -不在这些术语上纠结。 - -在我们这里,后端就是用python写的程序。主要任务就是根据需要处理由前端发过来的各种请求,根据请求的处理结果,一方面操作数据库(对数据库进行增删改查),另外一方面把请求的处理结果反馈给前端。 - -**数据库** - -工作比较单一,就是面对后端的python程序,任其增删改查。 - -关于python如何操作数据库,在本教程的第贰季第柒章中已经有详细的叙述,请读者阅览。 - -##一个基本框架 - -上节中,显示了一个只能显示一行字的网站,那个网站由于功能太单一,把所有的东西都写到一个文件中。在真正的工程开发中,如果那么做,虽然不是不可,但开发过程和后期维护会遇到麻烦,特别是不便于多人合作。 - -所以,要做一个基本框架。以后网站就在这个框架中开发。 - -建立一个目录,在这个目录中建立一些子目录和文件。 - - /. - | - handlers - | - methods - | - statics - | - templates - | - application.py - | - server.py - | - url.py - -这个结构建立好,就摆开了一个做网站的架势。有了这个架势,后面的事情就是在这个基础上添加具体内容了。当然,还可以用另外一个更好听的名字,称之为设计。 - -依次说明上面的架势中每个目录和文件的作用(当然,这个作用是我规定的,读者如果愿意,也可以根据自己的意愿来任意设计): - -- handlers:我准备在这个文件夹中放前面所说的后端python程序,主要处理来自前端的请求,并且操作数据库。 -- methods:这里准备放一些函数或者类,比如用的最多的读写数据库的函数,这些函数被handlers里面的程序使用。 -- statics:这里准备放一些静态文件,比如图片,css和javascript文件等。 -- templates:这里放模板文件,都是以html为扩展名的,它们将直接面对用户。 - -另外,还有三个python文件,依次写下如下内容。这些内容的功能,已经在上节中讲过,只是这里进行分门别类。 - -**url.py**文件 - - #!/usr/bin/env python - # coding=utf-8 - """ - the url structure of website - """ - - import sys #utf-8,兼容汉字 - reload(sys) - sys.setdefaultencoding("utf-8") - - from handlers.index import IndexHandler #假设已经有了 - - url = [ - (r'/', IndexHandler), - ] - -url.py文件主要是设置网站的目录结构。`from handlers.index import IndexHandler`,虽然在handlers文件夹还没有什么东西,为了演示如何建立网站的目录结构,假设在handlers文件夹里面已经有了一个文件index.py,它里面还有一个类IndexHandler。在url.py文件中,将其引用过来。 - -变量url指向一个列表,在列表中列出所有目录和对应的处理类。比如`(r'/', IndexHandler),`,就是约定网站根目录的处理类是IndexHandler,即来自这个目录的get()或者post()请求,均有IndexHandler类中相应方法来处理。 - -如果还有别的目录,如法炮制。 - -**application.py**文件 - - #!/usr/bin/env python - # coding=utf-8 - - from url import url - - import tornado.web - import os - - settings = dict( - template_path = os.path.join(os.path.dirname(__file__), "templates"), - static_path = os.path.join(os.path.dirname(__file__), "statics") - ) - - application = tornado.web.Application( - handlers = url, - **settings - ) - -从内容中可以看出,这个文件完成了对网站系统的基本配置,建立网站的请求处理集合。 - -`from url import url`是将url.py中设定的目录引用过来。 - -setting引用了一个字典对象,里面约定了模板和静态文件的路径,即声明已经建立的文件夹"templates"和"statics"分别为模板目录和静态文件目录。 - -接下来的application就是一个请求处理集合对象。请注意`tornado.web.Application()`的参数设置: - ->tornado.web.Application(handlers=None, default_host='', transforms=None, **settings) - -关于settings的设置,不仅仅是文件中的两个,还有其它,比如,如果填上`debug = True`就表示出于调试模式。调试模式的好处就在于有利于开发调试,但是,在正式部署的时候,最好不要用调试模式。其它更多的settings可以参看官方文档:[tornado.web-RequestHandler and Application classes](http://tornado.readthedocs.org/en/latest/web.html) - -**server.py**文件 - -这个文件的作用是将tornado服务器运行起来,并且囊括前面两个文件中的对象属性设置。 - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.ioloop - import tornado.options - import tornado.httpserver - - from application import application - - from tornado.options import define, options - - define("port", default = 8000, help = "run on the given port", type = int) - - def main(): - tornado.options.parse_command_line() - http_server = tornado.httpserver.HTTPServer(application) - http_server.listen(options.port) - - print "Development server is running at http://127.0.0.1:%s" % options.port - print "Quit the server with Control-C" - - tornado.ioloop.IOLoop.instance().start() - - if __name__ == "__main__": - main() - -此文件中的内容,在[上节](./302.md)已经介绍,不再赘述。 - -如此这般,就完成了网站架势的搭建。 - -后面要做的是向里面添加内容。 - ------- - -[总目录](./index.md)   |   [上节:分析Hello](./302.md)   |   [下节:用tornado做网站(2)](./304.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/304.md b/304.md deleted file mode 100644 index 191876a..0000000 --- a/304.md +++ /dev/null @@ -1,191 +0,0 @@ ->你们不要被那诸般怪异的教训勾引了去。因为人心靠恩得坚固才是好的,并不是靠饮食;那在饮食上专心的,从来没有得着益处。(HEBREWS 13:9) - -#用tornado做网站(2) - -既然摆好了一个网站的架势,下面就可以向里面填内容。 - -##连接数据库 - -要做的网站,有数据库支持,虽然这不是必须的,但是如果做一个功能强悍的网站,数据库就是必须的了。 - -接下来的网站,我暂且采用mysql数据库。 - -怎么连接mysql数据呢?其方法跟[《mysql数据库(1)》](./230.md)中的方法完全一致。为了简单,我也不新建数据库了,就利用已经有的那个数据库。 - -在上一节中已经建立的文件夹methods中建立一个文件db.py,并且参考[《mysql数据库(1)》](./230.md)和[《mysql数据库(2)》](./231.md)的内容,分别建立起连接对象和游标对象。代码如下: - - #!/usr/bin/env python - # coding=utf-8 - - import MySQLdb - - conn = MySQLdb.connect(host="localhost", user="root", passwd="123123", db="qiwsirtest", port=3306, charset="utf8") #连接对象 - - cur = conn.cursor() #游标对象 - -##用户登录 - -###前端 - -很多网站上都看到用户登录功能,这里做一个简单的登录,其功能描述为: - ->当用户输入网址,呈现在眼前的是一个登录界面。在用户名和密码两个输入框中分别输入了正确的用户名和密码之后,点击确定按钮,登录网站,显示对该用户的欢迎信息。 - -用图示来说明,首先呈现下图: - -![](./3images/30401.png) - -用户点击“登录”按钮,经过验证是合法用户之后,就呈现这样的界面: - -![](./3images/30402.png) - -先用HTML写好第一个界面。进入到templates文件,建立名为index.html的文件: - - - - - - Learning Python - - -

Login

-
-

UserName:

-

Password:

-

-
- - -这是一个很简单前端界面。要特别关注``,其目的在将网页的默认宽度(viewport)设置为设备的屏幕宽度(width=device-width),并且原始缩放比例为1.0(initial-scale=1),即网页初始大小占屏幕面积的100%。这样做的目的,是让在电脑、手机等不同大小的屏幕上,都能非常好地显示。 - -这种样式的网页,就是“自适应页面”。当然,自适应页面绝非是仅仅有这样一行代码就完全解决的。要设计自适应页面,也就是要进行“响应式设计”,还需要对CSS、JS乃至于其它元素如表格、图片等进行设计,或者使用一些响应式设计的框架。这个目前暂不讨论,读者可以网上搜索有关资料阅读。 - ->一提到要能够在手机上,读者是否想到了HTML5呢,这个被一些人热捧、被另一些人蔑视的家伙,毋庸置疑,现在已经得到了越来越广泛的应用。 - ->HTML5是HTML最新的修订版本,2014年10月由万维网联盟(W3C)完成标准制定。目标是取代1999年所制定的HTML 4.01和XHTML 1.0标准,以期能在互联网应用迅速发展的时候,使网络标准达到符合当代的网络需求。广义论及HTML5时,实际指的是包括HTML、CSS和JavaScript在内的一套技术组合。 - ->响应式网页设计(英语:Responsive web design,通常缩写为RWD),又称为自适应网页设计、回应式网页设计。 是一种网页设计的技术做法,该设计可使网站在多种浏览设备(从桌面电脑显示器到移动电话或其他移动产品设备)上阅读和导航,同时减少缩放、平移和滚动。 - -如果要看效果,可以直接用浏览器打开网页,因为它是.html格式的文件。 - -###引入jQuery - -虽然完成了视觉上的设计,但是,如果点击那个login按钮,没有任何反应。因为它还仅仅是一个孤立的页面,这时候需要一个前端交互利器——javascript。 - ->对于javascript,不少人对它有误解,总认为它是从java演化出来的。的确,两个有相像的地方。但javascript和java的关系,就如同“雷峰塔”和“雷锋”的关系一样。详细读一读来自维基百科的诠释。 - ->JavaScript,一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。然而现在JavaScript也可被用于网络服务器,如Node.js。 - ->在1995年时,由网景公司的布兰登·艾克,在网景导航者浏览器上首次设计实现而成。因为网景公司与昇阳公司合作,网景公司管理层希望它外观看起来像Java,因此取名为JavaScript。但实际上它的语义与Self及Scheme较为接近。 - ->为了获取技术优势,微软推出了JScript,与JavaScript同样可在浏览器上运行。为了统一规格,1997年,在ECMA(欧洲计算机制造商协会)的协调下,由网景、昇阳、微软和Borland公司组成的工作组确定统一标准:ECMA-262。因为JavaScript兼容于ECMA标准,因此也称为ECMAScript。 - -但是,我更喜欢用jQuery,因为它的确让我省了不少事。 - ->jQuery是一套跨浏览器的JavaScript库,简化HTML与JavaScript之间的操作。由约翰·雷西格(John Resig)在2006年1月的BarCamp NYC上发布第一个版本。目前是由Dave Methvin领导的开发团队进行开发。全球前10,000个访问最高的网站中,有65%使用了jQuery,是目前最受欢迎的JavaScript库。 - -在index.html文件中引入jQuery的方法有多种。 - -原则上将,可以在HTML文件的任何地方引入jQuery库,但是通常放置的地方在html文件的开头`...`中,或者在文件的末尾``以内。放在开头,如果所用的库比较大、比较多,在载入页面时时间相对长点。 - -第一种引入方法,是国际化的一种: - - - -这是直接从jQuery CDN(Content Delivery Network)上直接引用,好处在于如果这个库更新,你不用任何操作,就直接使用最新的了。但是,如果在你的网页中这么用了,如果在某个有很多自信的国家上网,并且没有梯子,会发现网页几乎打不开,就是因为连接上面那个地址的通道是被墙了。 - -当然,jQuery CDN不止一个,比如官方网站的: - - - -第二种引入方法,就是将jQuery下载下来,放在指定地方(比如,与自己网站在同一个存储器中,或者自己可以访问的另外服务器)。到官方网站([https://jqueryui.com/](https://jqueryui.com/))下载最新的库,然后将它放在已经建立的statics目录内,为了更清楚区分,可以在里面建立一个子目录js,jquery库放在js子目录里面。下载的时候,建议下载以min.js结尾的文件,因为这个是经过压缩之后,体积小。 - -我在`statics/js`目录中放置了下载的库,并且为了简短,更名为jquery.min.js。 - -本来可以用下面的方法引入: - - - -如果这样写,也是可以的。但是,考虑到tornado的特点,用下面方法引入,更具有灵活性: - - - -不仅要引入jquery,还需要引入自己写的js指令,所以要建立一个文件,我命名为script.js,也同时引用过来。虽然目前这个文件还是空的。 - - - -这里用的static_url是一个函数,它是tornado模板提供的一个函数。用这个函数,能够制定静态文件。之所以用它,而不是用上面的那种直接调用的方法,主要原因是如果某一天,将静态文件目录statics修改了,也就是不指定statics为静态文件目录了,定义别的目录为静态文件目录。只需要在定义静态文件目录那里修改(定义静态文件目录的方法请参看上一节),而其它地方的代码不需要修改。 - -###编写js - -先写一个测试性质的东西。 - -用编辑器打开statics/js/script.js文件,如果没有就新建。输入的代码如下: - - $(document).ready(function(){ - alert("good"); - $("#login").click(function(){ - var user = $("#username").val(); - var pwd = $("#password").val(); - alert("username: "+user); - }); - }); - -由于本教程不是专门讲授javascript或者jquery,所以,在js代码部分,只能一带而过,不详细解释。 - -上面的代码主要实现获取表单中id值分别为username和password所输入的值,alert函数的功能是把值以弹出菜单的方式显示出来。 - -##handlers里面的程序 - -是否还记得在上一节中,在url.py文件中,做了这样的设置: - - from handlers.index import IndexHandler #假设已经有了 - - url = [ - (r'/', IndexHandler), - ] - -现在就去把假设有了的那个文件建立起来,即在handlers里面建立index.py文件,并写入如下代码: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - - class IndexHandler(tornado.web.RequestHandler): - def get(self): - self.render("index.html") - -当访问根目录的时候(不论输入`localhost:8000`,还是`http://127.0.0.1:8000`,或者网站域名),就将相应的请求交给了handlers目录中的index.py文件中的IndexHandler类的get()方法来处理,它的处理结果是呈现index.html模板内容。 - -`render()`函数的功能在于向请求者反馈网页模板,并且可以向模板中传递数值。关于传递数值的内容,在后面介绍。 - -上面的文件保存之后,回到handlers目录中。因为这里面的文件要在别处被当做模块引用,所以,需要在这里建立一个空文件,命名为`__init__.py`。这个文件非常重要。在[编写模块](./219.md)一节中,介绍了引用模块的方法。但是,那些方法有一个弊端,就是如果某个目录中有多个文件,就显得麻烦了。其实python已经想到这点了,于是就提供了`__init__.py`文件,只要在该目录中加入了这个文件,该目录中的其它.py文件就可以作为模块被python引入了。 - -至此,一个带有表单的tornado网站就建立起来了。读者可以回到上一级目录中,找到server.py文件,运行它: - - $ python server.py - Development server is running at http://127.0.0.1:8000 - Quit the server with Control-C - -如果读者在前面的学习中,跟我的操作完全一致,就会在shell中看到上面的结果。 - -打开浏览器,输入`http://localhost:8000`或者`http://127.0.0.1:8000`,看到的应该是: - -![](./3images/30403.png) - -这就是script.js中的开始起作用了,第一句是要弹出一个对话框。点击“确定”按钮之后,就是: - -![](./3images/30404.png) - -在这个页面输入用户名和密码,然后点击Login按钮,就是: - -![](./3images/30405.png) - -一个网站有了雏形。不过,当提交表单的反应,还仅仅停留在客户端,还没有向后端传递客户端的数据信息。请继续学习下一节。 - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(1)](./303.md)   |   [下节:用tornado做网站(3)](./305.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/305.md b/305.md deleted file mode 100644 index 4d552d5..0000000 --- a/305.md +++ /dev/null @@ -1,167 +0,0 @@ ->你们要依从那些引导你们的,且要顺服,因为他们为你们的灵魂时刻警醒,好像那将来交账的人。你们要使他们交的时候有快乐,不至忧愁,若忧愁就与你们无益了。(HEBREWS 13:17) - -#用tornado做网站(3) - -##数据传输 - -在已经建立了前端表单之后,就要实现前端和后端之间的数据传递。在工程中,常用到一个被称之为ajax()的方法。 - -关于ajax的故事,需要浓墨重彩,因为它足够精彩。 - -ajax是“Asynchronous Javascript and XML”(异步JavaScript和XML)的缩写,在它的发展历程中,汇集了众家贡献。比如微软的IE团队曾经将XHR(XML HttpRequest)用于web浏览器和web服务器间传输数据,并且被W3C标准采用。当然,也有其它公司为Ajax技术做出了贡献,虽然它们都被遗忘了,比如Oddpost,后来被Yahoo!收购并成为Yahoo! Mail的基础。但是,真正让Ajax大放异彩的google是不能被忽视的,正是google在Gmail、Suggest和Maps上大规模使用了Ajax,才使得人们看到了它的魅力,程序员由此而兴奋。 - -技术总是在不断进化的,进化的方向就是用着越来越方便。 - -回到上一节使用的jQuery,里面就有ajax()方法,能够让程序员方便的调用。 - ->ajax()方法通过 HTTP 请求加载远程数据。 - ->该方法是jQuery底层AJAX实现。简单易用的高层实现见$.get, $.post等。$.ajax() 返回其创建的 XMLHttpRequest 对象。大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性。 - ->最简单的情况下,$.ajax() 可以不带任何参数直接使用。 - -在上文介绍Ajax的时候,用到了一个重要的术语——“异步”,与之相对应的叫做“同步”。我引用来自[阮一峰的网络日志](http://www.ruanyifeng.com/blog/2012/12/asynchronous%EF%BC%BFjavascript.html)中的通俗描述: - ->"同步模式"就是上一段的模式,后一个任务等待前一个任务结束,然后再执行,程序的执行顺序与任务的排列顺序是一致的、同步的;"异步模式"则完全不同,每一个任务有一个或多个回调函数(callback),前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则是不等前一个任务结束就执行,所以程序的执行顺序与任务的排列顺序是不一致的、异步的。 - ->"异步模式"非常重要。在浏览器端,耗时很长的操作都应该异步执行,避免浏览器失去响应,最好的例子就是Ajax操作。在服务器端,"异步模式"甚至是唯一的模式,因为执行环境是单线程的,如果允许同步执行所有http请求,服务器性能会急剧下降,很快就会失去响应。 - -看来,ajax()是前后端进行数据传输的重要角色。 - -承接上一节的内容,要是用ajax()方法,需要修改script.js文件内容即可: - - $(document).ready(function(){ - $("#login").click(function(){ - var user = $("#username").val(); - var pwd = $("#password").val(); - var pd = {"username":user, "password":pwd}; - $.ajax({ - type:"post", - url:"/", - data:pd, - cache:false, - success:function(data){ - alert(data); - }, - error:function(){ - alert("error!"); - }, - }); - }); - }); - -在这段代码中,`var pd = {"username":user, "password":pwd};`意即将得到的user和pwd值,放到一个json对象中(关于json,请阅读[《标准库(8)》](./227.md)),形成了一个json对象。接下来就是利用ajax()方法将这个json对象传给后端。 - -jQuery中的ajax()方法使用比较简单,正如上面代码所示,只需要`$.ajax()`即可,不过需要对立面的参数进行说明。 - -- type:post还是get。关于post和get的区别,可以阅读:[HTTP POST GET 本质区别详解](https://github.com/qiwsir/ITArticles/blob/master/Tornado/DifferenceHttpGetPost.md) -- url:post或者get的地址 -- data:传输的数据,包括三种:(1)html拼接的字符串;(2)json数据;(3)form表单经serialize()序列化的。本例中传输的就是json数据,这也是经常用到的一种方式。 -- cache:默认为true,如果不允许缓存,设置为false. -- success:请求成功时执行回调函数。本例中,将返回的data用alert方式弹出来。读者是否注意到,我在很多地方都用了alert()这个东西,目的在于调试,走一步看一步,看看得到的数据是否如自己所要。也是有点不自信呀。 -- error:如果请求失败所执行的函数。 - -##后端接受数据 - -前端通过ajax技术,将数据已json格式传给了后端,并且指明了对象目录`"/"`,这个目录在url.py文件中已经做了配置,是由handlers目录的index.py文件的IndexHandler类来出来。因为是用post方法传的数据,那么在这个类中就要有post方法来接收数据。所以,要在IndexHandler类中增加post(),增加之后的完善代码是: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - - class IndexHandler(tornado.web.RequestHandler): - def get(self): - self.render("index.html") - - def post(self): - username = self.get_argument("username") - password = self.get_argument("password") - self.write(username) - -在post()方法中,使用get_argument()函数来接收前端传过来的数据,这个函数的完整格式是`get_argument(name, default=[], strip=True)`,它能够获取name的值。在上面的代码中,name就是从前端传到后端的那个json对象的键的名字,是哪个键就获取该键的值。如果获取不到name的值,就返回default的值,但是这个值默认是没有的,如果真的没有就会抛出HTTP 400。特别注意,在get的时候,通过get_argument()函数获得url的参数,如果是多个参数,就获取最后一个的值。要想获取多个值,可以使用`get_arguments(name, strip=true)`。 - -上例中分别用get_argument()方法得到了username和password,并且它们都是unicode编码的数据。 - -tornado.web.RequestHandler的方法write(),即上例中的`self.write(username)`,是后端向前端返回数据。这里返回的实际上是一个字符串,也可返回json字符串。 - -如果读者要查看修改代码之后的网站效果,最有效的方式先停止网站(ctrl+c),在从新执行`python server.py`运行网站,然后刷新浏览器即可。这是一种较为笨拙的方法。一种灵巧的方法是开启调试模式。是否还记得?在设置setting的时候,写上`debug = True`就表示是调试模式了(参阅:[用tornado做网站(1)](./303.md))。但是,调试模式也不是十全十美,如果修改模板,就不会加载,还需要重启服务。反正重启也不麻烦,无妨啦。 - -看看上面的代码效果: - -![](./3images/30501.png) - -这是前端输入了用户名和密码之后,点击login按钮,提交给后端,后端再向前端返回数据之后的效果。就是我们想要的结果。 - -##验证用户名和密码 - -按照流程,用户在前端输入了用户名和密码,并通过ajax提交到了后端,后端借助于get_argument()方法得到了所提交的数据(用户名和密码)。下面要做的事情就是验证这个用户名和密码是否合法,其体现在: - -- 数据库中是否有这个用户 -- 密码和用户先前设定的密码(已经保存在数据库中)是否匹配 - -这个验证工作完成之后,才能允许用户登录,登录之后才能继续做某些事情。 - -首先,在methods目录中(已经有了一个db.py)创建一个文件,我命名为readdb.py,专门用来存储读数据用的函数(这种划分完全是为了明确和演示一些应用方法,读者也可以都写到db.py中)。这个文件的代码如下: - - #!/usr/bin/env python - # coding=utf-8 - - from db import * - - def select_table(table, column, condition, value ): - sql = "select " + column + " from " + table + " where " + condition + "='" + value + "'" - cur.execute(sql) - lines = cur.fetchall() - return lines - -上面这段代码,建议读者可以写上注释,以检验自己是否能够将以往的知识融会贯通地应用。恕我不再解释。 - -有了这段代码之后,就进一步改写index.py中的post()方法。为了明了,将index.py的全部代码呈现如下: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - import methods.readdb as mrd - - class IndexHandler(tornado.web.RequestHandler): - def get(self): - self.render("index.html") - - def post(self): - username = self.get_argument("username") - password = self.get_argument("password") - user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) - if user_infos: - db_pwd = user_infos[0][2] - if db_pwd == password: - self.write("welcome you: " + username) - else: - self.write("your password was not right.") - else: - self.write("There is no thi user.") - -特别注意,在methods目录中,不要缺少了`__init__.py`文件,才能在index.py中实现`import methods.readdb as mrd`。 - -代码修改到这里,看到的结果是: - -![](./3images/30502.png) - -这是正确输入用户名(所谓正确,就是输入的用户名和密码合法,即在数据库中有该用户名,且密码匹配),并提交数据后,反馈给前端的欢迎信息。 - -![](./3images/30503.png) - -如果输入的密码错误了,则如此提示。 - -![](./3images/30504.png) - -这是随意输入的结果,数据库中无此用户。 - -需要特别说明一点,上述演示中,数据库中的用户密码并没有加密。关于密码加密问题,后续要研究。 - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(2)](./304.md)   |   [下节:用tornado做网站(4)](./306.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/306.md b/306.md deleted file mode 100644 index a456d29..0000000 --- a/306.md +++ /dev/null @@ -1,262 +0,0 @@ ->我的弟兄们,你们落在百般试炼中,都要以为大喜乐;因为你们的信心经过试验,就生忍耐。但忍耐也当成功,使你们成全完备,毫无缺欠。你们中间若有缺少智慧的,应当求那厚赐与众人、也不斥责人的神,主就必赐给他。(JAMES 1:2-5) - -#用tornado做网站(4) - -##模板 - -已经基本了解前端向和后端如何传递数据,以及后端如何接收数据的过程和方法之后。我突然发现,前端页面写的太难看了。俗话说“外行看热闹,内行看门道”。程序员写的网站,在更多时候是给“外行”看的,他们可没有耐心来看代码,他们看的就是界面,因此界面是否做的漂亮一点点,是直观重要的。 - -其实,也不仅仅是漂亮的原因,因为前端页面,还要显示从后端读取出来的数据呢。 - -恰好,tornado提供比较好用的前端模板(tornado.template)。通过这个模板,能够让前端编写更方便。 - -###render() - -render()方法能够告诉tornado读入哪个模板,插入其中的模板代码,并返回结果给浏览器。比如在IndexHandler类中get()方法里面的`self.render("index.html")`,就是让tornado到templates目中找到名为index.html的文件,读出它的内容,返回给浏览器。这样用户就能看到index.html所规定的页面了。当然,在前面所写的index.html还仅仅是html标记,没有显示出所谓“模板”的作用。为此,将index.html和index.py文件做如下改造。 - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - import methods.readdb as mrd - - class IndexHandler(tornado.web.RequestHandler): - def get(self): - usernames = mrd.select_columns(table="users",column="username") - one_user = usernames[0][0] - self.render("index.html", user=one_user) - -index.py文件中,只修改了get()方法,从数据库中读取用户名,并且提出一个用户(one_user),然后通过`self.render("index.html", user=one_user)`将这个用户名放到index.html中,其中`user=one_user`的作用就是传递对象到模板。 - -提醒读者注意的是,在上面的代码中,我使用了`mrd.select_columns(table="users",column="username")`,也就是说必须要在methods目录中的readdb.py文件中有一个名为select_columns的函数。为了使读者能够理解,贴出已经修改之后的readdb.py文件代码,比上一节多了函数select_columns: - - #!/usr/bin/env python - # coding=utf-8 - - from db import * - - def select_table(table, column, condition, value ): - sql = "select " + column + " from " + table + " where " + condition + "='" + value + "'" - cur.execute(sql) - lines = cur.fetchall() - return lines - - def select_columns(table, column ): - sql = "select " + column + " from " + table - cur.execute(sql) - lines = cur.fetchall() - return lines - -下面是index.html修改后的代码: - - - - - - Learning Python - - -

登录页面

-

用用户名为:{{user}}登录

-
-

UserName:

-

Password:

-

-
- - - - -`

用用户名为:{{user}}登录

`,这里用了`{{ }}`方式,接受对应的变量引导来的对象。也就是在首页打开之后,用户应当看到有一行提示。如下图一样。 - -![](./3images/30601.png) - -图中箭头是我为了强调后来加上去的,箭头所指的,就是从数据库中读取出来的用户名,借助于模板中的双大括号`{{ }}`显示出来。 - -`{{ }}`本质上是占位符。当这个html被执行的时候,这个位置会被一个具体的对象(例如上面就是字符串qiwsir)所替代。具体是哪个具体对象替代这个占位符,完全是由render()方法中关键词来指定,也就是render()中的关键词与模板中的占位符包裹着的关键词一致。 - -用这种方式,修改一下用户正确登录之后的效果。要求用户正确登录之后,跳转到另外一个页面,并且在那个页面中显示出用户的完整信息。 - -先修改url.py文件,在其中增加一些内容。完整代码如下: - - #!/usr/bin/env python - # coding=utf-8 - """ - the url structure of website - """ - import sys - reload(sys) - sys.setdefaultencoding("utf-8") - - from handlers.index import IndexHandler - from handlers.user import UserHandler - - url = [ - (r'/', IndexHandler), - (r'/user', UserHandler), - ] - -然后就建立handlers/user.py文件,内容如下: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - import methods.readdb as mrd - - class UserHandler(tornado.web.RequestHandler): - def get(self): - username = self.get_argument("user") - user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) - self.render("user.html", users = user_infos) - -在get()中使用`self.get_argument("user")`,目的是要通过url获取参数user的值。因此,当用户登录后,得到正确返回值,那么js应该用这样的方式载入新的页面。 - -注意:上述的user.py代码为了简单突出本将要说明的,没有对user_infos的结果进行判断。在实际的编程中,这要进行判断或者使用try...except。 - - $(document).ready(function(){ - $("#login").click(function(){ - var user = $("#username").val(); - var pwd = $("#password").val(); - var pd = {"username":user, "password":pwd}; - $.ajax({ - type:"post", - url:"/", - data:pd, - cache:false, - success:function(data){ - window.location.href = "/user?user="+data; - }, - error:function(){ - alert("error!"); - }, - }); - }); - }); - -接下来是user.html模板。注意上面的代码中,user_infos引用的对象不是一个字符串了,也就是传入模板的不是一个字符串,是一个元组。对此,模板这样来处理它。 - - - - - - Learning Python - - -

Your informations are:

-
    - {% for one in users %} -
  • username:{{one[1]}}
  • -
  • password:{{one[2]}}
  • -
  • email:{{one[3]}}
  • - {% end %} -
- - -显示的效果是: - -![](./3images/30602.png) - -在上面的模板中,其实用到了模板语法。 - -###模板语法 - -在模板的双大括号中,可以写类似python的语句或者表达式。比如: - - >>> from tornado.template import Template - >>> print Template("{{ 3+4 }}").generate() - 7 - >>> print Template("{{ 'python'[0:2] }}").generate() - py - >>> print Template("{{ '-'.join(str(i) for i in range(10)) }}").generate() - 0-1-2-3-4-5-6-7-8-9 - -意即如果在模板中,某个地方写上`{{ 3+4 }}`,当那个模板被render()读入之后,在页面上该占位符的地方就显示`7`。这说明tornado自动将双大括号内的表达式进行计算,并将其结果以字符串的形式返回到浏览器输出。 - -除了表达式之外,python的语句也可以在表达式中使用,包括if、for、while和try。只不过要有一个语句开始和结束的标记,用以区分那里是语句、哪里是HTML标记符。 - -语句的形式:`{{% 语句 %}}` - -例如: - - {{% if user=='qiwsir' %}} - {{ user }} - {{% end %}} - -上面的举例中,第一行虽然是if语句,但是不要在后面写冒号了。最后一行一定不能缺少,表示语句块结束。将这一个语句块放到模板中,当被render读取此模板的时候,tornado将执行结果返回给浏览器显示,跟前面的表达式一样。实际的例子可以看上图输出结果和对应的循环语句。 - -##转义字符 - -虽然读者现在已经对字符转义问题不陌生了,但是在网站开发中,它还将是一个令人感到麻烦的问题。所谓转义字符(Escape Sequence)也称字符实体(Character Entity),它的存在是因为在网页中`<, >`之类的符号,是不能直接被输出的,因为它们已经被用作了HTML标记符了,如果在网页上用到它们,就要转义。另外,也有一些字符在ASCII字符集中没有定义(如版权符号“©”),这样的符号要在HTML中出现,也需要转义字符(如“©”对应的转义字符是“&copy;”)。 - -上述是指前端页面的字符转义,其实不仅前端,在后端程序中,因为要读写数据库,也会遇到字符转义问题。 - -比如一个简单的查询语句:`select username, password from usertable where username='qiwsir'`,如果在登录框中没有输入qiwsir,而是输入了`a;drop database;`,这个查询语句就变成了`select username, password from usertable where username=a; drop database;`,如果后端程序执行了这条语句会怎么样呢?后果很严重,因为会`drop database`,届时真的是欲哭无泪了。类似的情况还很多,比如还可以输入``,结果出现了一个输入框,如果是`
print语句,在python3中是print()函数,在进行程序调试的时候非常有用。经常用它把要看个究竟的东西打印出来。 - -自动转义是一个好事情,但是,有时候会不需要转义,比如想在模板中这样做: - - - - - - Learning Python - - -

登录页面

-

用用户名为:{{user}}登录

- -

UserName:

-

Password:

-

-
- {% set website = "
welcome to my website" %} - {{ website }} - - - - -这是index.html的代码,我增加了`{% set website = "welcome to my website" %}`,作用是设置一个变量,名字是website,它对应的内容是一个做了超链接的文字。然后在下面使用这个变量`{{ website }}`,本希望能够出现的是有一行字“welcome to my website”,点击这行字,就可以打开对应链接的网站。可是,看到了这个: - -![](./3images/30603.png) - -下面那一行,把整个源码都显示出来了。这就是因为自动转义的结果。这里需要的是不转义。于是可以将`{{ website }}`修改为: - - {% raw website %} - -表示这一行不转义。但是别的地方还是转义的。这是一种最推荐的方法。 - -![](./3images/30604.png) - -如果你要全不转义,可以使用: - - {% autoescape None %} - {{ website }} - -貌似省事,但是我不推荐。 - -##几个备查函数 - -下面几个函数,放在这里备查,或许在某些时候用到。都是可以使用在模板中的。 - -- escape(s):替换字符串s中的&、<、>为他们对应的HTML字符。 -- url_escape(s):使用urllib.quote_plus替换字符串s中的字符为URL编码形式。 -- json_encode(val):将val编码成JSON格式。 -- squeeze(s):过滤字符串s,把连续的多个空白字符替换成一个空格。 - -此外,在模板中也可以使用自己编写的函数。但不常用。所以本教程就不啰嗦这个了。 - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(3)](./305.md)   |   [下节:用tornado做网站(5)](./307.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/307.md b/307.md deleted file mode 100644 index 211d0f5..0000000 --- a/307.md +++ /dev/null @@ -1,286 +0,0 @@ ->卑微的弟兄升高,就该喜乐;富足的降卑,也该如此。因为他必要过去,如同草上的花一样,太阳出来,热风刮起,草就枯干,花也凋谢,美容就消没了;那富足的人在他所行的事上也要这样衰 残。(JAMES 1:9-11) - -#用tornado做网站(5) - -##模板继承 - -用前面的方法,已经能够很顺利地编写模板了。读者如果留心一下,会觉得每个模板都有相同的部分内容。在python中,有一种被称之为“继承”的机制(请阅读本教程第贰季第肆章中的[类(4)(./209.md)中有关“继承”讲述]),它的作用之一就是能够让代码重用。 - -在tornado的模板中,也能这样。 - -先建立一个文件,命名为base.html,代码如下: - - - - - - - Learning Python - - -
- {% block header %}{% end %} -
- - {% block body %}{% end %} - - - - - - - -接下来就以base.html为父模板,依次改写已经有的index.html和user.html模板。 - -index.html代码如下: - - {% extends "base.html" %} - - {% block header %} -

登录页面

-

用用户名为:{{user}}登录

- {% end %} - {% block body %} -
-

UserName:

-

Password:

-

-
- {% end %} - -user.html的代码如下: - - {% extends "base.html" %} - - {% block header %} -

Your informations are:

- {% end %} - - {% block body %} -
    - {% for one in users %} -
  • username:{{one[1]}}
  • -
  • password:{{one[2]}}
  • -
  • email:{{one[3]}}
  • - {% end %} -
- {% end %} - -看以上代码,已经没有以前重复的部分了。`{% extends "base.html" %}`意味着以base.html为父模板。在base.html中规定了形式如同`{% block header %}{% end %}`这样的块语句。在index.html和user.html中,分别对块语句中的内容进行了重写(或者说填充)。这就相当于在base.html中做了一个结构,在子模板中按照这个结构填内容。 - -##CSS - -基本上的流程已经差不多了,如果要美化前端,还需要使用css,它的使用方法跟js类似,也是在静态目录中建立文件即可。然后把下面这句加入到base.html的``中: - - - -当然,要在style.css中写一个样式,比如: - - body { - color:red; - } - -然后看看前端显示什么样子了,我这里是这样的: - -![](./3images/30701.png) - -关注字体颜色。 - -至于其它关于CSS方面的内容,本教程就不重点讲解了。读者可以参考关于CSS的资料。 - -至此,一个简单的基于tornado的网站就做好了,虽然它很丑,但是它很有前途。因为读者只要按照上述的讨论,可以在里面增加各种自己认为可以增加的内容。 - -建议读者在上述学习基础上,可以继续完成下面的几个功能: - -- 用户注册 -- 用户发表文章 -- 用户文章列表,并根据文章标题查看文章内容 -- 用户重新编辑文章 - -在后续教程内容中,也会涉及到上述功能。 - -##cookie和安全 - -cookie是现在网站重要的内容,特别是当有用户登录的时候。所以,要了解cookie。维基百科如是说: - ->Cookie(复数形態Cookies),中文名稱為小型文字檔案或小甜餅,指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。定義於RFC2109。是网景公司的前雇员Lou Montulli在1993年3月的發明。 - -关于cookie的作用,维基百科已经说的非常详细了(读者还能正常访问这么伟大的网站吗?): - ->因为HTTP协议是无状态的,即服务器不知道用户上一次做了什么,这严重阻碍了交互式Web应用程序的实现。在典型的网上购物场景中,用户浏览了几个页面,买了一盒饼干和两瓶饮料。最后结帐时,由于HTTP的无状态性,不通过额外的手段,服务器并不知道用户到底买了什么。 所以Cookie就是用来绕开HTTP的无状态性的“额外手段”之一。服务器可以设置或读取Cookies中包含信息,借此维护用户跟服务器会话中的状态。 - ->在刚才的购物场景中,当用户选购了第一项商品,服务器在向用户发送网页的同时,还发送了一段Cookie,记录着那项商品的信息。当用户访问另一个页面,浏览器会把Cookie发送给服务器,于是服务器知道他之前选购了什么。用户继续选购饮料,服务器就在原来那段Cookie里追加新的商品信息。结帐时,服务器读取发送来的Cookie就行了。 - ->Cookie另一个典型的应用是当登录一个网站时,网站往往会请求用户输入用户名和密码,并且用户可以勾选“下次自动登录”。如果勾选了,那么下次访问同一网站时,用户会发现没输入用户名和密码就已经登录了。这正是因为前一次登录时,服务器发送了包含登录凭据(用户名加密码的某种加密形式)的Cookie到用户的硬盘上。第二次登录时,(如果该Cookie尚未到期)浏览器会发送该Cookie,服务器验证凭据,于是不必输入用户名和密码就让用户登录了。 - -和任何别的事物一样,cookie也有缺陷,比如来自伟大的维基百科也列出了三条: - -1. cookie会被附加在每个HTTP请求中,所以无形中增加了流量。 -2. 由于在HTTP请求中的cookie是明文传递的,所以安全性成问题。(除非用HTTPS) -3. Cookie的大小限制在4KB左右。对于复杂的存储需求来说是不够用的。 - -对于用户来讲,可以通过改变浏览器设置,来禁用cookie,也可以删除历史的cookie。但就目前而言,禁用cookie的可能不多了,因为她总要在网上买点东西吧。 - -Cookie最让人担心的还是由于它存储了用户的个人信息,并且最终这些信息要发给服务器,那么它就会成为某些人的目标或者工具,比如有cookie盗贼,就是搜集用户cookie,然后利用这些信息进入用户账号,达到个人的某种不可告人之目的;还有被称之为cookie投毒的说法,是利用客户端的cookie传给服务器的机会,修改传回去的值。这些行为常常是通过一种被称为“跨站指令脚本(Cross site scripting)”(或者跨站指令码)的行为方式实现的。伟大的维基百科这样解释了跨站脚本: - ->跨网站脚本(Cross-site scripting,通常简称为XSS或跨站脚本或跨站脚本攻击)是一种网站应用程序的安全漏洞攻击,是代码注入的一种。它允许恶意用户将代码注入到网页上,其他用户在观看网页时就会受到影响。这类攻击通常包含了HTML以及用户端脚本语言。 - ->XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序。这些恶意网页程序通常是JavaScript,但实际上也可以包括Java, VBScript, ActiveX, Flash 或者甚至是普通的HTML。攻击成功后,攻击者可能得到更高的权限(如执行一些操作)、私密网页内容、会话和cookie等各种内容。 - -cookie是好的,被普遍使用。在tornado中,也提供对cookie的读写函数。 - -`set_cookie()`和`get_cookie()`是默认提供的两个方法,但是它是明文不加密传输的。 - -在index.py文件的IndexHandler类的post()方法中,当用户登录,验证用户名和密码后,将用户名和密码存入cookie,代码如下: - - def post(self): - username = self.get_argument("username") - password = self.get_argument("password") - user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) - if user_infos: - db_pwd = user_infos[0][2] - if db_pwd == password: - self.set_cookie(username,db_pwd) #设置cookie - self.write(username) - else: - self.write("your password was not right.") - else: - self.write("There is no thi user.") - -上面代码中,较以前只增加了一句`self.set_cookie(username,db_pwd)`,在回到登录页面,等候之后就成为: - -![](./3images/30702.png) - -看图中箭头所指,从左开始的第一个是用户名,第二个是存储的该用户密码。将我在登录是的密码就以明文的方式存储在cookie里面了。 - -明文存储,显然不安全。 - -tornado提供另外一种安全的方法:set_secure_cookie()和get_secure_cookie(),称其为安全cookie,是因为它以明文加密方式传输。此外,跟set_cookie()的区别还在于, set_secure_cookie()执行后的cookie保存在磁盘中,直到它过期为止。也是因为这个原因,即使关闭浏览器,在失效时间之间,cookie都一直存在。 - -要是用set_secure_cookie()方法设置cookie,要先在application.py文件的setting中进行如下配置: - - setting = dict( - template_path = os.path.join(os.path.dirname(__file__), "templates"), - static_path = os.path.join(os.path.dirname(__file__), "statics"), - cookie_secret = "bZJc2sWbQLKos6GkHn/VB9oXwQt8S0R0kRvJ5/xJ89E=", - ) - -其中`cookie_secret = "bZJc2sWbQLKos6GkHn/VB9oXwQt8S0R0kRvJ5/xJ89E="`是为此增加的,但是,它并不是这正的加密,仅仅是一个障眼法罢了。 - -因为tornado会将cookie值编码为Base-64字符串,并增加一个时间戳和一个cookie内容的HMAC签名。所以,cookie_secret的值,常常用下面的方式生成(这是一个随机的字符串): - - >>> import base64, uuid - >>> base64.b64encode(uuid.uuid4().bytes) - 'w8yZud+kRHiP9uABEXaQiA==' - -如果嫌弃上面的签名短,可以用`base64.b64encode(uuid.uuid4().bytes + uuid.uuid4().bytes)`获取。这里得到的是一个随机字符串,用它作为 cookie_secret值。 - -然后修改index.py中设置cookie那句话,变成: - - self.set_secure_cookie(username,db_pwd) - -从新跑一个,看看效果。 - -![](./3images/30703.png) - -啊哈,果然“密”了很多。 - -如果要获取此cookie,用`self.get_secure_cookie(username)`即可。 - -这是不是就安全了。如果这样就安全了,你太低估黑客们的技术实力了,甚至于用户自己也会修改cookie值。所以,还不安全。所以,又有了httponly和secure属性,用来防范cookie投毒。设置方法是: - - self.set_secure_cookie(username, db_pwd, httponly=True, secure=True) - -要获取cookie,可以使用`self.get_secure_cookie(username)`方法,将这句放在user.py中某个适合的位置,并且可以用print语句打印出结果,就能看到变量username对应的cookie了。这时候已经不是那个“密”过的,是明文显示。 - -用这样的方法,浏览器通过SSL连接传递cookie,能够在一定程度上防范跨站脚本攻击。 - -##XSRF - -XSRF的含义是Cross-site request forgery,即跨站请求伪造,也称之为"one click attack",通常缩写成CSRF或者XSRF,可以读作"sea surf"。这种对网站的攻击方式跟上面的跨站脚本(XSS)似乎相像,但攻击方式不一样。XSS利用站点内的信任用户,而XSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,XSRF攻击往往不大流行(因此对其 进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。 - -读者要详细了解XSRF,推荐阅读:[CSRF | XSRF 跨站请求伪造](http://www.cnblogs.com/lsk/archive/2008/05/26/1207467.html) - -对于防范XSRF的方法,上面推荐阅读的文章中有明确的描述。还有一点需要提醒读者,就是在开发应用时需要深谋远虑。任何会产生副作用的HTTP请求,比如点击购买按钮、编辑账户设置、改变密码或删除文档,都应该使用post()方法。这是良好的RESTful做法。 - ->又一个新名词:REST。这是一种web服务实现方案。伟大的维基百科中这样描述: - ->表徵性狀態傳輸(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。目前在三种主流的Web服务实现方案中,因为REST模式与复杂的SOAP和XML-RPC相比更加简洁,越来越多的web服务开始采用REST风格设计和实现。例如,Amazon.com提供接近REST风格的Web服务进行图书查找;雅虎提供的Web服务也是REST风格的。 - ->更详细的内容,读者可网上搜索来了解。 - -此外,在tornado中,还提供了XSRF保护的方法。 - -在application.py文件中,使用xsrf_cookies参数开启XSRF保护。 - - setting = dict( - template_path = os.path.join(os.path.dirname(__file__), "templates"), - static_path = os.path.join(os.path.dirname(__file__), "statics"), - cookie_secret = "bZJc2sWbQLKos6GkHn/VB9oXwQt8S0R0kRvJ5/xJ89E=", - xsrf_cookies = True, - ) - -这样设置之后,Tornado将拒绝请求参数中不包含正确的`_xsrf`值的post/put/delete请求。tornado会在后面悄悄地处理`_xsrf` cookies,所以,在表单中也要包含XSRF令牌以却表请求合法。比如index.html的表单,修改如下: - - {% extends "base.html" %} - - {% block header %} -

登录页面

-

用用户名为:{{user}}登录

- {% end %} - {% block body %} -
- {% raw xsrf_form_html() %} -

UserName:

-

Password:

-

-
- {% end %} - - `{% raw xsrf_form_html() %}`是新增的,目的就在于实现上面所说的授权给前端以合法请求。 - - 前端向后端发送的请求是通过ajax(),所以,在ajax请求中,需要一个_xsrf参数。 - - 以下是script.js的代码 - - function getCookie(name){ - var x = document.cookie.match("\\b" + name + "=([^;]*)\\b"); - return x ? x[1]:undefined; - } - - $(document).ready(function(){ - $("#login").click(function(){ - var user = $("#username").val(); - var pwd = $("#password").val(); - var pd = {"username":user, "password":pwd, "_xsrf":getCookie("_xsrf")}; - $.ajax({ - type:"post", - url:"/", - data:pd, - cache:false, - success:function(data){ - window.location.href = "/user?user="+data; - }, - error:function(){ - alert("error!"); - }, - }); - }); - }); - -函数getCookie()的作用是得到cookie值,然后将这个值放到向后端post的数据中`var pd = {"username":user, "password":pwd, "_xsrf":getCookie("_xsrf")};`。运行的结果: - -![](./3images/30704.png) - -这是tornado提供的XSRF防护方法。是不是这样做就高枕无忧了呢?没这么简单。要做好一个网站,需要考虑的事情还很多。特别推荐阅读[WebAppSec/Secure Coding Guidelines](https://wiki.mozilla.org/WebAppSec/Secure_Coding_Guidelines) - -常常听到人说做个网站怎么怎么简单,客户用这种说辞来压低价格,老板用这种说辞来缩短工时成本,从上面的简单叙述中,你觉得网站还是随便几个页面就完事了吗?除非那个网站不是给人看的,是在那里摆着的。 - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(4)](./306.md)   |   [下节:用tornado做网站(6)](./308.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/308.md b/308.md deleted file mode 100644 index de7b18d..0000000 --- a/308.md +++ /dev/null @@ -1,134 +0,0 @@ ->我亲爱的弟兄们,这是你们所知道的。但你们个人要快快地听,慢慢地说,慢慢地动怒,因为人的怒气并不成就神的义。所以,你们要脱去一切的污秽和盈余的邪恶,存温柔的心领受那所栽种的道,就是能救你们灵魂的道。(JAMES 1:19-21) - -#用tornado做网站(6) - -在[上一节](./307.md)中已经对安全问题进行了描述,另外一个内容是不能忽略的,那就是用户登录之后,对当前用户状态(用户是否登录)进行判断。 - -##用户验证 - -用户登录之后,当翻到别的目录中时,往往需要验证用户是否处于登录状态。当然,一种比较直接的方法,就是在转到每个目录时,都从cookie中把用户信息,然后传到后端,跟数据库验证。这不仅是直接的,也是基本的流程。但是,这个过程如果总让用户自己来做,框架的作用就显不出来了。tornado就提供了一种用户验证方法。 - -为了后面更工程化地使用tornado编程。需要将前面的已经有的代码进行重新梳理。我只是将有修改的文件代码写出来,不做过多解释,必要的有注释,相信读者在前述学习基础上,能够理解。 - -在handler目录中增加一个文件,名称是base.py,代码如下: - - #! /usr/bin/env python - # coding=utf-8 - - import tornado.web - - class BaseHandler(tornado.web.RequestHandler): - def get_current_user(self): - return self.get_secure_cookie("user") - -在这个文件中,目前只做一个事情,就是建立一个名为BaseHandler的类,然后在里面放置一个方法,就是得到当前的cookie。在这里特别要向读者说明,在这个类中,其实还可以写不少别的东西,比如你就可以将数据库连接写到这个类的初始化`__init__()`方法中。因为在其它的类中,我们要继承这个类。所以,这样一个架势,就为读者以后的扩展增加了冗余空间。 - -然后把index.py文件改写为: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.escape - import methods.readdb as mrd - from base import BaseHandler - - class IndexHandler(BaseHandler): #继承base.py中的类BaseHandler - def get(self): - usernames = mrd.select_columns(table="users",column="username") - one_user = usernames[0][0] - self.render("index.html", user=one_user) - - def post(self): - username = self.get_argument("username") - password = self.get_argument("password") - user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) - if user_infos: - db_pwd = user_infos[0][2] - if db_pwd == password: - self.set_current_user(username) #将当前用户名写入cookie,方法见下面 - self.write(username) - else: - self.write("-1") - else: - self.write("-1") - - def set_current_user(self, user): - if user: - self.set_secure_cookie('user', tornado.escape.json_encode(user)) #注意这里使用了tornado.escape.json_encode()方法 - else: - self.clear_cookie("user") - - class ErrorHandler(BaseHandler): #增加了一个专门用来显示错误的页面 - def get(self): #但是后面不单独讲述,读者可以从源码中理解 - self.render("error.html") - -在index.py的类IndexHandler中,继承了BaseHandler类,并且增加了一个方法set_current_user()用于将用户名写入cookie。请读者特别注意那个tornado.escape.json_encode()方法,其功能是: - ->tornado.escape.json_encode(value) -> JSON-encodes the given Python object. - -如果要查看源码,可以阅读:[http://www.tornadoweb.org/en/branch2.3/escape.html](http://www.tornadoweb.org/en/branch2.3/escape.html) - -这样做的本质是把user转化为json,写入到了cookie中。如果从cookie中把它读出来,使用user的值时,还会用到: - ->tornado.escape.json_decode(value) -> Returns Python objects for the given JSON string - -它们与[json模块中的dump()、load()](./227.md)功能相仿。 - -接下来要对user.py文件也进行重写: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - import tornado.escape - import methods.readdb as mrd - from base import BaseHandler - - class UserHandler(BaseHandler): - @tornado.web.authenticated - def get(self): - #username = self.get_argument("user") - username = tornado.escape.json_decode(self.current_user) - user_infos = mrd.select_table(table="users",column="*",condition="username",value=username) - self.render("user.html", users = user_infos) - -在get()方法前面添加`@tornado.web.authenticated`,这是一个装饰器,它的作用就是完成tornado的认证功能,即能够得到当前合法用户。在原来的代码中,用`username = self.get_argument("user")`方法,从url中得到当前用户名,现在把它注释掉,改用`self.current_user`,这是和前面的装饰器配合使用的,如果它的值为假,就根据setting中的设置,寻找login_url所指定的目录(请关注下面对setting的配置)。 - -由于在index.py文件的set_current_user()方法中,是将user值转化为json写入cookie的,这里就得用`username = tornado.escape.json_decode(self.current_user)`解码。得到的username值,可以被用于后一句中的数据库查询。 - -application.py中的setting也要做相应修改: - - #!/usr/bin/env python - # coding=utf-8 - - from url import url - - import tornado.web - import os - - setting = dict( - template_path = os.path.join(os.path.dirname(__file__), "templates"), - static_path = os.path.join(os.path.dirname(__file__), "statics"), - cookie_secret = "bZJc2sWbQLKos6GkHn/VB9oXwQt8S0R0kRvJ5/xJ89E=", - xsrf_cookies = True, - login_url = '/', - ) - - application = tornado.web.Application( - handlers = url, - **setting - ) - -与以前代码的重要区别在于`login_url = '/',`,如果用户不合法,根据这个设置,会返回到首页。当然,如果有单独的登录界面,比如是`/login`,也可以`login_url = '/login'`。 - -如此完成的是用户登录到网站之后,在页面转换的时候实现用户认证。 - -为了演示本节的效果,我对教程的源码进行修改。读者在阅读的时候,可以参照源码。 - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(5)](./307.md)   |   [下节:用tornado做网站(7)](./309.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/309.md b/309.md deleted file mode 100644 index d1b3c64..0000000 --- a/309.md +++ /dev/null @@ -1,177 +0,0 @@ ->我的弟兄们,你们信奉我们荣耀的主耶稣基督,便不可按着外貌待人。若有一个人带着金戒指,穿着华美衣服,进你们的会堂去,又有一个穷人,穿着肮脏衣服也进去;你们就重看那穿华美衣服的人说“请坐在这浩位上”,又对那穷人说“你站在那里”,或“坐在我脚蹬的下边”,这岂不是你们偏心待人,用恶意断定人吗?(JAMES 2:1-4) - -#用tornado做网站(7) - -到上一节结束,其实读者已经能够做一个网站了,但是,仅仅用前面的技术来做的网站,仅能算一个小网站,在[《为做网站而准备》](./301.md)中,说明之所以选tornado,就是因为它能够解决c10k问题,即能够实现大用户量访问。 - -要实现大用户量访问,必须要做的就是:异步。除非你是很土的土豪。 - -##相关概念 - -###同步和异步 - -有不少资料对这两个概念做了不同角度和层面的解释。在我来看,一个最典型的例子就是打电话和发短信。 - -- 打电话就是同步。张三给李四打电话,张三说:“是李四吗?”。当这个信息被张三发出,提交给李四,就等待李四的响应(一般会听到“是”,或者“不是”),只有得到了李四返回的信息之后,才能进行后续的信息传送。 -- 发短信是异步。张三给李四发短信,编辑了一句话“今晚一起看老齐的零基础学python”,发送给李四。李四或许马上回复,或许过一段时间,这段时间多长也不定,才回复。总之,李四不管什么时候回复,张三会以听到短信铃声为提示查看短信。 - -以上方式理解“同步”和“异步”不是很精准,有些地方或有牵强。要严格理解,需要用严格一点的定义表述(以下表述参照了[知乎](http://www.zhihu.com/question/19732473)上的回答): - ->同步和异步关注的是消息通信机制 (synchronous communication/ asynchronous communication) - ->所谓同步,就是在发出一个“调用”时,在没有得到结果之前,该“调用”就不返回。但是一旦调用返回,就得到返回值了。 -换句话说,就是由“调用者”主动等待这个“调用”的结果。 - ->而异步则是相反,“调用”在发出之后,这个调用就直接返回了,所以没有返回结果。换句话说,当一个异步过程调用发出后,调用者不会立刻得到结果。而是在“调用”发出后,“被调用者”通过状态、通知来通知调用者,或通过回调函数处理这个调用。 - -可能还是前面的打电话和发短信更好理解。 - -###阻塞和非阻塞 - -“阻塞和非阻塞”与“同步和异步”常常被换为一谈,其实它们之间还是有差别的。如果按照一个“差不多”先生的思维方法,你也可以不那么深究它们之间的学理上的差距,反正在你的程序中,会使用就可以了。不过,必要的严谨还是需要的,特别是我写这个教程,要装扮的让别人看来自己懂,于是就再引用[知乎](http://www.zhihu.com/question/19732473)上的说明(我个人认为,别人已经做的挺好的东西,就别重复劳动了,“拿来主义”,也不错。或许你说我抄袭和山寨,但是我明确告诉你来源了): - ->阻塞和非阻塞关注的是程序在等待调用结果(消息,返回值)时的状态. - ->阻塞调用是指调用结果返回之前,当前线程会被挂起。调用线程只有在得到结果之后才会返回。非阻塞调用指在不能立刻得到结果之前,该调用不会阻塞当前线程。 - -按照这个说明,发短信就是显然的非阻塞,发出去一条短信之后,你利用手机还可以干别的,乃至于再发一条“老齐的课程没意思,还是看PHP刺激”也是可以的。 - -关于这两组基本概念的辨析,不是本教程的重点,读者可以参阅这篇文章:[http://www.cppblog.com/converse/archive/2009/05/13/82879.html](http://www.cppblog.com/converse/archive/2009/05/13/82879.html),文章作者做了细致入微的辨析。 - -##tornado的同步 - -此前,在tornado基础上已经完成的web,就是同步的、阻塞的。为了更明显的感受这点,不妨这样试一试。 - -在handlers文件夹中建立一个文件,命名为sleep.py - - #!/usr/bin/env python - # coding=utf-8 - - from base import BaseHandler - - import time - - class SleepHandler(BaseHandler): - def get(self): - time.sleep(17) - self.render("sleep.html") - - class SeeHandler(BaseHandler): - def get(self): - self.render("see.html") - -其它的事情,如果读者对我在[《用tornado做网站(1)》](./303.md)中所讲述的网站框架熟悉,应该知道如何做了,不熟悉,请回头复习。 - -sleep.html和see.html是两个简单的模板,内容可以自己写。别忘记修改url.py中的目录。 - -然后的测试稍微复杂一点点,就是打开浏览器之后,打开两个标签,分别在两个标签中输入`localhost:8000/sleep`(记为标签1)和`localhost:8000/see`(记为标签2),注意我用的是8000端口。输入之后先不要点击回车去访问。做好准备,记住切换标签可以用“ctrl-tab”组合键。 - -1. 执行标签1,让它访问网站; -2. 马上切换到标签2,访问网址。 -3. 注意观察,两个标签页面,是不是都在显示正在访问,请等待。 -4. 当标签1不呈现等待提示(比如一个正在转的圆圈)时,标签2的表现如何?几乎同时也访问成功了。 - -建议读者修改sleep.py中的time.sleep(17)这个值,多试试。很好玩的吧。 - -当然,这是比较笨拙的方法,本来是可以通过测试工具完成上述操作比较的。怎奈要用别的工具,还要进行介绍,又多了一个分散精力的东西,故用如此笨拙的方法,权当有一个体会。 - -##异步设置 - -tornado本来就是一个异步的服务框架,体现在tornado的服务器和客户端的网络交互的异步上,起作用的是tornado.ioloop.IOLoop。但是如果的客户端请求服务器之后,在执行某个方法的时候,比如上面的代码中执行get()方法的时候,遇到了`time.sleep(17)`这个需要执行时间比较长的操作,耗费时间,就会使整个tornado服务器的性能受限了。 - -为了解决这个问题,tornado提供了一套异步机制,就是异步装饰器`@tornado.web.asynchronous`: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - from base import BaseHandler - - import time - - class SleepHandler(BaseHandler): - @tornado.web.asynchronous - def get(self): - tornado.ioloop.IOLoop.instance().add_timeout(time.time() + 17, callback=self.on_response) - def on_response(self): - self.render("sleep.html") - self.finish() - -将sleep.py的代码如上述一样改造,即在get()方法前面增加了装饰器`@tornado.web.asynchronous`,它的作用在于将tornado服务器本身默认的设置`_auto_fininsh`值修改为false。如果不用这个装饰器,客户端访问服务器的get()方法并得到返回值之后,两只之间的连接就断开了,但是用了`@tornado.web.asynchronous`之后,这个连接就不关闭,直到执行了`self.finish()`才关闭这个连接。 - -`tornado.ioloop.IOLoop.instance().add_timeout()`也是一个实现异步的函数,`time.time()+17`是给前面函数提供一个参数,这样实现了相当于`time.sleep(17)`的功能,不过,还没有完成,当这个操作完成之后,就执行回调函数`on_response()`中的`self.render("sleep.html")`,并关闭连接`self.finish()`。 - -过程清楚了。所谓异步,就是要解决原来的`time.sleep(17)`造成的服务器处理时间长,性能下降的问题。解决方法如上描述。 - -读者看这个代码,或许感觉有点不是很舒服。如果有这么一点感觉,是正常的。因为它里面除了装饰器之外,用到了一个回调函数,它让代码的逻辑不是平铺下去,而是被分割为了两段。第一段是`tornado.ioloop.IOLoop.instance().add_timeout(time.time() + 17, callback=self.on_response)`,用`callback=self.on_response`来使用回调函数,并没有如同改造之前直接`self.render("sleep.html")`;第二段是回调函数on_response(self)`,要在这个函数里面执行`self.render("sleep.html")`,并且以`self.finish()`结尾以关闭连接。 - -这还是执行简单逻辑,如果复杂了,不断地要进行“回调”,无法让逻辑顺利延续,那面会“眩晕”了。这种现象被业界成为“代码逻辑拆分”,打破了原有逻辑的顺序性。为了让代码逻辑不至于被拆分的七零八落,于是就出现了另外一种常用的方法: - - #!/usr/bin/env python - # coding=utf-8 - - import tornado.web - import tornado.gen - from base import BaseHandler - - import time - - class SleepHandler(tornado.web.RequestHandler): - @tornado.gen.coroutine - def get(self): - yield tornado.gen.Task(tornado.ioloop.IOLoop.instance().add_timeout, time.time() + 17) - #yield tornado.gen.sleep(17) - self.render("sleep.html") - -从整体上看,这段代码避免了回调函数,看着顺利多了。 - -再看细节部分。 - -首先使用的是`@tornado.gen.coroutine`装饰器,所以要在前面有`import tornado.gen`。跟这个装饰器类似的是`@tornado.gen.engine`装饰器,两者功能类似,有一点细微差别。请阅读[官方对此的解释](http://www.tornadoweb.org/en/stable/gen.html): - ->This decorator(指engine) is similar to coroutine, except it does not return a Future and the callback argument is not treated specially. - -`@tornado.gen.engine`是古时候用的,现在我们都使用`@tornado.gen.corroutine`了,这个是在tornado 3.0以后开始。在网上查阅资料的时候,会遇到一些使用`@tornado.gen.engine`的,但是在你使用或者借鉴代码的时候,就勇敢地将其修改为`@tornado.gen.coroutine`好了。有了这个装饰器,就能够控制下面的生成器的流程了。 - -然后就看到get()方法里面的yield了,这是一个生成器(参阅本教程[《生成器》](./215.md))。`yield tornado.gen.Task(tornado.ioloop.IOLoop.instance().add_timeout, time.time() + 17)`的执行过程,应该先看括号里面,跟前面的一样,是来替代`time.sleep(17)`的,然后是`tornado.gen.Task()`方法,其作用是“Adapts a callback-based asynchronous function for use in coroutines.”(由于怕翻译后遗漏信息,引用[原文](http://tornado.readthedocs.org/en/latest/gen.html))。返回后,最后使用yield得到了一个生成器,先把流程挂起,等完全完毕,再唤醒继续执行。要提醒读者,生成器都是异步的。 - -其实,上面啰嗦一对,可以用代码中注释了的一句话来代替`yield tornado.gen.sleep(17)`,之所以扩所,就是为了顺便看到`tornado.gen.Task()`方法,因为如果读者在看古老的代码时候,会遇到。但是,后面你写的时候,就不要那么啰嗦了,请用`yield tornado.gen.sleep()`。 - -至此,基本上对tornado的异步设置有了概览,不过,上面的程序在实际中没有什么价值。在工程中,要让tornado网站真正异步起来,还要做很多事情,不仅仅是如上面的设置,因为很多东西,其实都不是异步的。 - -##实践中的异步 - -以下各项同步(阻塞)的,如果在tornado中按照之前的方式只用它们,就是把tornado的非阻塞、异步优势削减了。 - -- 数据库的所有操作,不管你的数据是SQL还是noSQL,connect、insert、update等 -- 文件操作,打开,读取,写入等 -- time.sleep,在前面举例中已经看到了 -- smtplib,发邮件的操作 -- 一些网络操作,比如tornado的httpclient以及pycurl等 - -除了以上,或许在编程实践中还会遇到其他的同步、阻塞实践。仅仅就上面几项,就是编程实践中经常会遇到的,怎么解决? - -聪明的大牛程序员帮我们做了扩展模块,专门用来实现异步/非阻塞的。 - -- 在数据库方面,由于种类繁多,不能一一说明,比如mysql,可以使用[adb](https://github.com/ovidiucp/pymysql-benchmarks)模块来实现python的异步mysql库;对于mongodb数据库,有一个非常优秀的模块,专门用于在tornado和mongodb上实现异步操作,它就是motor。特别贴出它的logo,我喜欢。官方网站:[http://motor.readthedocs.org/en/stable/](http://motor.readthedocs.org/en/stable/)上的安装和使用方法都很详细。 - -![](./3images/30901.png) - -- 文件操作方面也没有替代模块,只能尽量控制好IO,或者使用内存型(Redis)及文档型(MongoDB)数据库。 -- time.sleep()在tornado中有替代:`tornado.gen.sleep()`或者`tornado.ioloop.IOLoop.instance().add_timeout`,这在前面代码已经显示了。 -- smtp发送邮件,推荐改为tornado-smtp-client。 -- 对于网络操作,要使用tornado.httpclient.AsyncHTTPClient。 - -其它的解决方法,只能看到问题具体说了,甚至没有很好的解决方法。不过,这里有一个列表,列出了足够多的库,供使用者选择:[Async Client Libraries built on tornado.ioloop](https://github.com/tornadoweb/tornado/wiki/Links),同时这个页面里面还有很多别的链接,都是很好的资源,建议读者多看看。 - -教程到这里,读者是不是要思考一个问题,既然对于mongodb有专门的motor库来实现异步,前面对于tornado的异步,不管是哪个装饰器,都感觉麻烦,有没有专门的库来实现这种异步呢?这不是异想天开,还真有。也应该有,因为这才体现python的特点。比如[greenlet-tornado](https://github.com/mopub/greenlet-tornado),就是一个不错的库。读者可以浏览官方网站深入了解(为什么对mysql那么不积极呢?按理说应该出来好多支持mysql异步的库才对)。 - -必须声明,前面演示如何在tornado中设置异步的代码,仅仅是演示理解设置方法。在工程实践中,那个代码的意义不大。为此,应该有一个近似于实践的代码示例。是的,的确应该有。当我正要写这样的代码时候,在网上发现一篇文章,这篇文章阻止了我写,因为我要写的那篇文章的作者早就写好了,而且我认为表述非常到位,示例也详细。所以,我不得不放弃,转而推荐给读者这篇好文章: - -举例:[http://emptysqua.re/blog/refactoring-tornado-coroutines/](http://emptysqua.re/blog/refactoring-tornado-coroutines/) - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(6)](./308.md)   |   [下节:为计算做准备](./310.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/310.md b/310.md deleted file mode 100644 index 41f67d9..0000000 --- a/310.md +++ /dev/null @@ -1,85 +0,0 @@ ->你们贪恋,还是得不着;你们杀害嫉妒,又斗殴争战,也不能得。你们得不着,是因为你们不求。你们求也得不着,是因为你们妄求,要浪费在你们得宴乐中。你们这些淫乱的人哪,岂不知与世俗为友就是与神为敌吗?所以凡想要与世俗为友的,就是与神为敌了。(JAMES 4:2-4) - -#为计算做准备 - -##闲谈 - -计算机姑娘是擅长进行科学计算的,本来她就是做这个的,只不过后来人们让她处理了很多文字内容罢了,乃至于现在有一些人认为她是用来打字写文章的(变成打字机了),忘记了她最擅长的计算。 - -每种编程语言都能用来做计算,区别在于编程过程中,是否有足够的工具包供给。比如用汇编,就得自己多劳动,如果用Fortran,就方便得多了。不知道读者是否听说过Fortran,貌似古老,现在仍被使用。(以下引文均来自维基百科) - ->Fortran语言是為了滿足数值计算的需求而發展出來的。1953年12月,IBM公司工程師約翰·巴科斯(J. Backus)因深深體會編寫程序很困難,而寫了一份備忘錄給董事長斯伯特·赫德(Cuthbert Hurd),建議為IBM704系統設計全新的電腦語言以提升開發效率。當時IBM公司的顾问冯·诺伊曼强烈反对,因為他認為不切實際而且根本不必要。但赫德批准了這項計劃。1957年,IBM公司开发出第一套FORTRAN语言,在IBM704電腦上運作。歷史上第一支FORTRAN程式在馬里蘭州的西屋貝地斯核電廠試驗。1957年4月20日星期五的下午,一位IBM軟體工程師決定在電廠內編譯第一支FORTRAN程式,當程式碼輸入後,經過編譯,印表機列出一行訊息:“原始程式錯誤……右側括號後面沒有逗號”,這讓現場人員都感到訝異,修正這個錯誤後,印表機輸出了正確結果。而西屋電氣公司因此意外地成為FORTRAN的第一個商業用戶。1958年推出FORTRAN Ⅱ,幾年後又推出FORTRAN Ⅲ,1962年推出FORTRAN Ⅳ後,開始廣泛被使用。目前最新版是Fortran 2008。 - -还有一个广为应用的不得不说,那就是matlab,一直以来被人称赞。 - ->MATLAB(矩阵实验室)是MATrix LABoratory的缩写,是一款由美国The MathWorks公司出品的商业数学软件。MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。除了矩阵运算、绘制函数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C++,Java,Python和FORTRAN)编写的程序。 - -但是,它是收费的商业软件,虽然在某国这个无所谓。 - -还有R语言,也是在计算领域被多多使用的。 - ->R语言,一種自由軟體程式語言與操作環境,主要用于统计分析、绘图、数据挖掘。R本來是由來自新西蘭奧克蘭大學的Ross Ihaka和Robert Gentleman開發(也因此稱為R),現在由“R開發核心團隊”負責開發。R是基于S语言的一个GNU計劃项目,所以也可以当作S语言的一种实现,通常用S语言编写的代码都可以不作修改的在R环境下运行。R的語法是來自Scheme。 - -最后要说的就是python,近几年使用python的领域不断扩张,包括在科学计算领域,它已经成为了一种趋势。在这个过程中,虽然有不少人诟病python的这个慢那个解释动态语言之类(这种说法是值得讨论的),但是,依然无法阻挡python在科学计算领域大行其道。之所以这样,就是因为它是python。 - -- 开源,就这一条就已经足够了,一定要用开源的东西。至于为什么,本教程前面都阐述过了。 -- 因为开源,所以有非常棒的社区,里面有相当多支持科学计算的库,不用还等待何时? -- 简单易学,这点对那些不是专业程序员来讲非常重要。我就接触到一些搞天文学和生物学的研究者,他们正在使用python进行计算。 -- 在科学计算上如果用了python,能够让数据跟其它的比如web无缝对接,这不是很好的吗? - -当然,最重要一点,就是本教程是讲python的,所以,在科学计算这块肯定不会讲Fortran或者R,一定得是python。 - -##安装 - -如果读者使用Ubuntu或者Debian,可以这样来安装: - - sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose - -一股脑把可能用上的都先装上。在安装的时候,如果需要其它的依赖,你会明显看到的。 - -如果是别的系统,比如windows类,请自己网上查找安装方法吧,这里内容不少,最权威的是看官方网站列出的安装:[http://www.scipy.org/install.html](http://www.scipy.org/install.html) - -##基本操作 - -在科学计算中,业界比较喜欢使用ipython notebook,前面已经安装。在shell中执行 - - ipython notebook --pylab=inline - -得到下图的界面,这是在浏览器中打开的: - -![](./3images/31001.png) - -在In后面的编辑去,可以写python语句。然后按下`SHIFT+ENTER`或者`CTRL+ENTER` 就能执行了,如果按下`ENTER`,不是执行,是在当前编辑区换行。 - -![](./3images/31002.png) - -Ipython Notebook是一个非常不错的编辑器,执行之后,直接显示出来输入内容和输出的结果。当然,错误是难免的,它会: - -![](./3images/31003.png) - -注意观察图中的箭头所示,直接标出有问题的行。返回编辑区,修改之后可继续执行。 - -![](./3images/31004.png) - -不要忽视左边的辅助操作,能够让你在使用ipython notebook的时候更方便。 - -![](./3images/31005.png) - -除了在网页中之外,如果你已经喜欢上了python的交互模式,特别是你用的计算机中有一个shell的东西,更是棒了。于是可以: - - $ ipython - -进入了一个类似于python的交互模式中,如下所示: - - In [1]: print "hello, pandas" - hello, pandas - - In [2]: - -或者说ipython同样是一个不错的交互模式。 - ------- - -[总目录](./index.md)   |   [上节:用tornado做网站(7)](./309.md)   |   [下节:Pandas使用(1)](./311.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/311.md b/311.md deleted file mode 100644 index 40f37ac..0000000 --- a/311.md +++ /dev/null @@ -1,224 +0,0 @@ ->你们蒙召原是为此,因基督也为你们受过苦,给你们留下榜样,叫你们跟随他的脚踪行。他并没有犯罪,口里也没有诡诈。他被骂不还口,受害不说威吓的话,只将自己交托那按公义审判人的主。他被挂在木头上,亲身担当了我们的罪,使我们既然在罪上死,就得以在义上活。因他受的鞭伤,你们便得了医治。你们从前好像迷路的羊,如今却归到你们灵魂的牧人监督了(PETER 2:21-25) - -#Pandas使用(1) - -Pandas是基于NumPy的一个非常好用的库,正如名字一样,人见人爱。之所以如此,就在于不论是读取、处理数据,用它都非常简单。 - -##基本的数据结构 - -Pandas有两种自己独有的基本数据结构。读者应该注意的是,它固然有着两种数据结构,因为它依然是python的一个库,所以,python中有的数据类型在这里依然适用,也同样还可以使用类自己定义数据类型。只不过,Pandas里面又定义了两种数据类型:Series和DataFrame,它们让数据操作更简单了。 - -以下操作都是基于: - -![](./3images/31101.png) - -为了省事,后面就不在显示了。并且如果你跟我一样是使用ipython notebook,只需要开始引入模块即可。 - -###Series - -Series就如同列表一样,一系列数据,每个数据对应一个索引值。比如这样一个列表:[9, 3, 8],如果跟索引值写到一起,就是: - -|data| 9 | 3 | 8 | -|-------|---|----|----| -|index|0 | 1 | 2 | - -这种样式我们已经熟悉了,不过,在有些时候,需要把它竖过来表示: - -|index|data| -|---------|-------| -| 0 | 9 | -| 1 | 3 | -| 2 | 8 | - -上面两种,只是表现形式上的差别罢了。 - -Series就是“竖起来”的list: - -![](./3images/31102.png) - -另外一点也很像列表,就是里面的元素的类型,由你任意决定(其实是由需要来决定)。 - -这里,我们实质上创建了一个Series对象,这个对象当然就有其属性和方法了。比如,下面的两个属性依次可以显示Series对象的数据值和索引: - -![](./3images/31103.png) - -列表的索引只能是从0开始的整数,Series数据类型在默认情况下,其索引也是如此。不过,区别于列表的是,Series可以自定义索引: - -![](./3images/31104.png) - -![](./3images/31105.png) - -自定义索引,的确比较有意思。就凭这个,也是必须的。 - -每个元素都有了索引,就可以根据索引操作元素了。还记得list中的操作吗?Series中,也有类似的操作。先看简单的,根据索引查看其值和修改其值: - -![](./3images/31106.png) - -这是不是又有点类似dict数据了呢?的确如此。看下面就理解了。 - -读者是否注意到,前面定义Series对象的时候,用的是列表,即Series()方法的参数中,第一个列表就是其数据值,如果需要定义index,放在后面,依然是一个列表。除了这种方法之外,还可以用下面的方法定义Series对象: - -![](./3images/31108.png) - -现在是否理解为什么前面那个类似dict了?因为本来就是可以这样定义的。 - -这时候,索引依然可以自定义。Pandas的优势在这里体现出来,如果自定义了索引,自定的索引会自动寻找原来的索引,如果一样的,就取原来索引对应的值,这个可以简称为“自动对齐”。 - -![](./3images/31110.png) - -在sd中,只有`'python':8000, 'c++':8100, 'c#':4000`,没有"java",但是在索引参数中有,于是其它能够“自动对齐”的照搬原值,没有的那个"java",依然在新Series对象的索引中存在,并且自动为其赋值`NaN`。在Pandas中,如果没有值,都对齐赋给`NaN`。来一个更特殊的: - -![](./3images/31109.png) - -新得到的Series对象索引与sd对象一个也不对应,所以都是`NaN`。 - -Pandas有专门的方法来判断值是否为空。 - -![](./3images/31111.png) - -此外,Series对象也有同样的方法: - -![](./3images/31112.png) - -其实,对索引的名字,是可以从新定义的: - -![](./3images/31117.png) - -对于Series数据,也可以做类似下面的运算(关于运算,后面还要详细介绍): - -![](./3images/31107.png) - -![](./3images/31113.png) - -上面的演示中,都是在ipython notebook中进行的,所以截图了。在学习Series数据类型同时了解了ipyton notebook。对于后面的所有操作,读者都可以在ipython notebook中进行。但是,我的讲述可能会在python交互模式中进行。 - -###DataFrame - -DataFrame是一种二维的数据结构,非常接近于电子表格或者类似mysql数据库的形式。它的竖行称之为columns,横行跟前面的Series一样,称之为index,也就是说可以通过columns和index来确定一个主句的位置。(有人把 DataFrame翻译为“数据框”,是不是还可以称之为“筐”呢?向里面装数据嘛。) - -![](./3images/31118.png) - -下面的演示,是在python交互模式下进行,读者仍然可以在ipython notebook环境中测试。 - - >>> import pandas as pd - >>> from pandas import Series, DataFrame - - >>> data = {"name":["yahoo","google","facebook"], "marks":[200,400,800], "price":[9, 3, 7]} - >>> f1 = DataFrame(data) - >>> f1 - marks name price - 0 200 yahoo 9 - 1 400 google 3 - 2 800 facebook 7 - -这是定义一个DataFrame对象的常用方法——使用dict定义。字典的“键”("name","marks","price")就是DataFrame的columns的值(名称),字典中每个“键”的“值”是一个列表,它们就是那一竖列中的具体填充数据。上面的定义中没有确定索引,所以,按照惯例(Series中已经形成的惯例)就是从0开始的整数。从上面的结果中很明显表示出来,这就是一个二维的数据结构(类似excel或者mysql中的查看效果)。 - -上面的数据显示中,columns的顺序没有规定,就如同字典中键的顺序一样,但是在DataFrame中,columns跟字典键相比,有一个明显不同,就是其顺序可以被规定,向下面这样做: - - >>> f2 = DataFrame(data, columns=['name','price','marks']) - >>> f2 - name price marks - 0 yahoo 9 200 - 1 google 3 400 - 2 facebook 7 800 - -跟Series类似的,DataFrame数据的索引也能够自定义。 - - >>> f3 = DataFrame(data, columns=['name', 'price', 'marks', 'debt'], index=['a','b','c','d']) - Traceback (most recent call last): - File "", line 1, in - File "/usr/lib/pymodules/python2.7/pandas/core/frame.py", line 283, in __init__ - mgr = self._init_dict(data, index, columns, dtype=dtype) - File "/usr/lib/pymodules/python2.7/pandas/core/frame.py", line 368, in _init_dict - mgr = BlockManager(blocks, axes) - File "/usr/lib/pymodules/python2.7/pandas/core/internals.py", line 285, in __init__ - self._verify_integrity() - File "/usr/lib/pymodules/python2.7/pandas/core/internals.py", line 367, in _verify_integrity - assert(block.values.shape[1:] == mgr_shape[1:]) - AssertionError - -报错了。这个报错信息就太不友好了,也没有提供什么线索。这就是交互模式的不利之处。修改之,错误在于index的值——列表——的数据项多了一个,data中是三行,这里给出了四个项(['a','b','c','d'])。 - - >>> f3 = DataFrame(data, columns=['name', 'price', 'marks', 'debt'], index=['a','b','c']) - >>> f3 - name price marks debt - a yahoo 9 200 NaN - b google 3 400 NaN - c facebook 7 800 NaN - -读者还要注意观察上面的显示结果。因为在定义f3的时候,columns的参数中,比以往多了一项('debt'),但是这项在data这个字典中并没有,所以debt这一竖列的值都是空的,在Pandas中,空就用NaN来代表了。 - -定义DataFrame的方法,除了上面的之外,还可以使用“字典套字典”的方式。 - - >>> newdata = {"lang":{"firstline":"python","secondline":"java"}, "price":{"firstline":8000}} - >>> f4 = DataFrame(newdata) - >>> f4 - lang price - firstline python 8000 - secondline java NaN - -在字典中就规定好数列名称(第一层键)和每横行索引(第二层字典键)以及对应的数据(第二层字典值),也就是在字典中规定好了每个数据格子中的数据,没有规定的都是空。 - - >>> DataFrame(newdata, index=["firstline","secondline","thirdline"]) - lang price - firstline python 8000 - secondline java NaN - thirdline NaN NaN - -如果额外确定了索引,就如同上面显示一样,除非在字典中有相应的索引内容,否则都是NaN。 - -前面定义了DataFrame数据(可以通过两种方法),它也是一种对象类型,比如变量f3引用了一个对象,它的类型是DataFrame。承接以前的思维方法:对象有属性和方法。 - - >>> f3.columns - Index(['name', 'price', 'marks', 'debt'], dtype=object) - -DataFrame对象的columns属性,能够显示素有的columns名称。并且,还能用下面类似字典的方式,得到某竖列的全部内容(当然包含索引): - - >>> f3['name'] - a yahoo - b google - c facebook - Name: name - -这是什么?这其实就是一个Series,或者说,可以将DataFrame理解为是有一个一个的Series组成的。 - -一直耿耿于怀没有数值的那一列,下面的操作是统一给那一列赋值: - - >>> f3['debt'] = 89.2 - >>> f3 - name price marks debt - a yahoo 9 200 89.2 - b google 3 400 89.2 - c facebook 7 800 89.2 - -除了能够统一赋值之外,还能够“点对点”添加数值,结合前面的Series,既然DataFrame对象的每竖列都是一个Series对象,那么可以先定义一个Series对象,然后把它放到DataFrame对象中。如下: - - >>> sdebt = Series([2.2, 3.3], index=["a","c"]) #注意索引 - >>> f3['debt'] = sdebt - -将Series对象(sdebt变量所引用) 赋给f3['debt']列,Pandas的一个重要特性——自动对齐——在这里起做用了,在Series中,只有两个索引("a","c"),它们将和DataFrame中的索引自动对齐。于是乎: - - >>> f3 - name price marks debt - a yahoo 9 200 2.2 - b google 3 400 NaN - c facebook 7 800 3.3 - -自动对齐之后,没有被复制的依然保持NaN。 - -还可以更精准的修改数据吗?当然可以,完全仿照字典的操作: - - >>> f3["price"]["c"]= 300 - >>> f3 - name price marks debt - a yahoo 9 200 2.2 - b google 3 400 NaN - c facebook 300 800 3.3 - -这些操作是不是都不陌生呀,这就是Pandas中的两种数据对象。 - ------- - -[总目录](./index.md)   |   [上节:为计算做准备](./310.md)   |   [下节:Pandas使用(2)](./312.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/312.md b/312.md deleted file mode 100644 index e3f809c..0000000 --- a/312.md +++ /dev/null @@ -1,180 +0,0 @@ ->总而言之,你们都要同心,彼此体恤,相爱如弟兄,存慈怜谦卑的心。不要以恶报恶、以辱骂还辱骂,倒要祝福,因你们是为此蒙召,好叫你们承受福气。因为经上说:“人若爱生命,愿享美福,须要禁止舌头不出恶言,嘴唇不说诡诈的话;也要离恶行善,寻求和睦,一心追赶。因为主的眼看顾义人,主的耳听他们的祷告;惟有行恶的人,主向他们变脸”。(1 PTETER 3:8-12) - -#Pandas使用(2) - -特别向读者生命,本教程因为篇幅限制,不能将有关pandas的内容完全详细讲述,只能“抛砖引玉”,向大家做一个简单介绍,说明其基本使用方法。当读者在实践中使用的时候,如果遇到问题,可以结合相关文档或者google来解决。 - -##读取csv文件 - -###关于csv文件 - -csv是一种通用的、相对简单的文件格式,在表格类型的数据中用途很广泛,很多关系型数据库都支持这种类型文件的导入导出,并且excel这种常用的数据表格也能和csv文件之间转换。 - ->逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须象二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。通常,所有记录都有完全相同的字段序列。 - -从上述维基百科的叙述中,重点要解读出“字段间分隔符”“最常见的是逗号或制表符”,当然,这种分隔符也可以自行制定。比如下面这个我命名为marks.csv的文件,就是用逗号(必须是半角的)作为分隔符: - - name,physics,python,math,english - Google,100,100,25,12 - Facebook,45,54,44,88 - Twitter,54,76,13,91 - Yahoo,54,452,26,100 - -其实,这个文件要表达的事情是(如果转化为表格形式): - -![](./3images/31006.png) - -###普通方法读取 - -最简单、最直接的就是open()打开文件: - - >>> with open("./marks.csv") as f: - ... for line in f: - ... print line - ... - name,physics,python,math,english - - Google,100,100,25,12 - - Facebook,45,54,44,88 - - Twitter,54,76,13,91 - - Yahoo,54,452,26,100 - - -此方法可以,但略显麻烦。 - -python中还有一个csv的标准库,足可见csv文件的使用频繁了。 - - >>> import csv - >>> dir(csv) - ['Dialect', 'DictReader', 'DictWriter', 'Error', 'QUOTE_ALL', 'QUOTE_MINIMAL', 'QUOTE_NONE', 'QUOTE_NONNUMERIC', 'Sniffer', 'StringIO', '_Dialect', '__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', 'excel', 'excel_tab', 'field_size_limit', 'get_dialect', 'list_dialects', 're', 'reader', 'reduce', 'register_dialect', 'unregister_dialect', 'writer'] - -什么时候也不要忘记这种最佳学习方法。从上面结果可以看出,csv模块提供的属性和方法。仅仅就读取本例子中的文件: - - >>> import csv - >>> csv_reader = csv.reader(open("./marks.csv")) - >>> for row in csv_reader: - ... print row - ... - ['name', 'physics', 'python', 'math', 'english'] - ['Google', '100', '100', '25', '12'] - ['Facebook', '45', '54', '44', '88'] - ['Twitter', '54', '76', '13', '91'] - ['Yahoo', '54', '452', '26', '100'] - - 算是稍有改善。 - -###用Pandas读取 - -如果对上面的结果都有点不满意的话,那么看看Pandas的效果: - - >>> import pandas as pd - >>> marks = pd.read_csv("./marks.csv") - >>> marks - name physics python math english - 0 Google 100 100 25 12 - 1 Facebook 45 54 44 88 - 2 Twitter 54 76 13 91 - 3 Yahoo 54 452 26 100 - -看了这样的结果,你还不感觉惊讶吗?你还不喜欢上Pandas吗?这是多么精妙的显示。它是什么?它就是一个DataFrame数据。 - -还有另外一种方法: - - >>> pd.read_table("./marks.csv", sep=",") - name physics python math english - 0 Google 100 100 25 12 - 1 Facebook 45 54 44 88 - 2 Twitter 54 76 13 91 - 3 Yahoo 54 452 26 100 - -如果你有足够的好奇心来研究这个名叫DataFrame的对象,可以这样: - - >>> dir(marks) - ['T', '_AXIS_ALIASES', '_AXIS_NAMES', '_AXIS_NUMBERS', '__add__', '__and__', '__array__', '__array_wrap__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dict__', '__div__', '__doc__', '__eq__', '__floordiv__', '__format__', '__ge__', '__getattr__', '__getattribute__', '__getitem__', '__getstate__', '__gt__', '__hash__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__module__', '__mul__', '__ne__', '__neg__', '__new__', '__nonzero__', '__or__', '__pow__', '__radd__', '__rdiv__', '__reduce__', '__reduce_ex__', '__repr__', '__rfloordiv__', '__rmul__', '__rpow__', '__rsub__', '__rtruediv__', '__setattr__', '__setitem__', '__setstate__', '__sizeof__', '__str__', '__sub__', '__subclasshook__', '__truediv__', '__weakref__', '__xor__', '_agg_by_level', '_align_frame', '_align_series', '_apply_broadcast', '_apply_raw', '_apply_standard', '_auto_consolidate', '_bar_plot', '_boolean_set', '_box_item_values', '_clear_item_cache', '_combine_const', '_combine_frame', '_combine_match_columns', '_combine_match_index', '_combine_series', '_combine_series_infer', '_compare_frame', '_consolidate_inplace', '_constructor', '_count_level', '_cov_helper', '_data', '_default_stat_axis', '_expand_axes', '_from_axes', '_get_agg_axis', '_get_axis', '_get_axis_name', '_get_axis_number', '_get_item_cache', '_get_numeric_data', '_getitem_array', '_getitem_multilevel', '_helper_csvexcel', '_het_axis', '_indexed_same', '_init_dict', '_init_mgr', '_init_ndarray', '_is_mixed_type', '_item_cache', '_ix', '_join_compat', '_reduce', '_reindex_axis', '_reindex_columns', '_reindex_index', '_reindex_with_indexers', '_rename_columns_inplace', '_rename_index_inplace', '_sanitize_column', '_series', '_set_axis', '_set_item', '_set_item_multiple', '_shift_indexer', '_slice', '_unpickle_frame_compat', '_unpickle_matrix_compat', '_verbose_info', '_wrap_array', 'abs', 'add', 'add_prefix', 'add_suffix', 'align', 'append', 'apply', 'applymap', 'as_matrix', 'asfreq', 'astype', 'axes', 'boxplot', 'clip', 'clip_lower', 'clip_upper', 'columns', 'combine', 'combineAdd', 'combineMult', 'combine_first', 'consolidate', 'convert_objects', 'copy', 'corr', 'corrwith', 'count', 'cov', 'cummax', 'cummin', 'cumprod', 'cumsum', 'delevel', 'describe', 'diff', 'div', 'dot', 'drop', 'drop_duplicates', 'dropna', 'dtypes', 'duplicated', 'fillna', 'filter', 'first_valid_index', 'from_csv', 'from_dict', 'from_items', 'from_records', 'get', 'get_dtype_counts', 'get_value', 'groupby', 'head', 'hist', 'icol', 'idxmax', 'idxmin', 'iget_value', 'index', 'info', 'insert', 'irow', 'iteritems', 'iterkv', 'iterrows', 'ix', 'join', 'last_valid_index', 'load', 'lookup', 'mad', 'max', 'mean', 'median', 'merge', 'min', 'mul', 'ndim', 'pivot', 'pivot_table', 'plot', 'pop', 'prod', 'product', 'quantile', 'radd', 'rank', 'rdiv', 'reindex', 'reindex_axis', 'reindex_like', 'rename', 'rename_axis', 'reorder_levels', 'reset_index', 'rmul', 'rsub', 'save', 'select', 'set_index', 'set_value', 'shape', 'shift', 'skew', 'sort', 'sort_index', 'sortlevel', 'stack', 'std', 'sub', 'sum', 'swaplevel', 'tail', 'take', 'to_csv', 'to_dict', 'to_excel', 'to_html', 'to_panel', 'to_records', 'to_sparse', 'to_string', 'to_wide', 'transpose', 'truncate', 'unstack', 'values', 'var', 'xs'] - -一个一个浏览一下,通过名字可以直到那个方法或者属性的大概,然后就可以根据你的喜好和需要,试一试: - - >>> marks.index - Int64Index([0, 1, 2, 3], dtype=int64) - >>> marks.columns - Index([name, physics, python, math, english], dtype=object) - >>> marks['name'][1] - 'Facebook' - -这几个是让你回忆一下上一节的。从DataFrame对象的属性和方法中找一个,再尝试: - - >>> marks.sort(column="python") - name physics python math english - 1 Facebook 45 54 44 88 - 2 Twitter 54 76 13 91 - 0 Google 100 100 25 12 - 3 Yahoo 54 452 26 100 - -按照竖列"python"的值排队,结果也是很让人满意的。下面几个操作,也是常用到的,并且秉承了python的一贯方法: - - >>> marks[:1] - name physics python math english - 0 Google 100 100 25 12 - >>> marks[1:2] - name physics python math english - 1 Facebook 45 54 44 88 - >>> marks["physics"] - 0 100 - 1 45 - 2 54 - 3 54 - Name: physics - -可以说,当你已经掌握了通过dir()和help()查看对象的方法和属性时,就已经掌握了pandas的用法,其实何止pandas,其它对象都是如此。 - -##读取其它格式数据 - -csv是常用来存储数据的格式之一,此外常用的还有MS excel格式的文件,以及json和xml格式的数据等。它们都可以使用pandas来轻易读取。 - -###.xls或者.xlsx - -在下面的结果中寻觅一下,有没有跟excel有关的方法? - - >>> dir(pd) - ['DataFrame', 'DataMatrix', 'DateOffset', 'DateRange', 'ExcelFile', 'ExcelWriter', 'Factor', 'HDFStore', 'Index', 'Int64Index', 'MultiIndex', 'Panel', 'Series', 'SparseArray', 'SparseDataFrame', 'SparseList', 'SparsePanel', 'SparseSeries', 'SparseTimeSeries', 'TimeSeries', 'WidePanel', '__builtins__', '__doc__', '__docformat__', '__file__', '__name__', '__package__', '__path__', '__version__', '_engines', '_sparse', '_tseries', 'concat', 'core', 'crosstab', 'datetime', 'datetools', 'debug', 'ewma', 'ewmcorr', 'ewmcov', 'ewmstd', 'ewmvar', 'ewmvol', 'fama_macbeth', 'groupby', 'info', 'io', 'isnull', 'lib', 'load', 'merge', 'notnull', 'np', 'ols', 'pivot', 'pivot_table', 'read_clipboard', 'read_csv', 'read_table', 'reset_printoptions', 'rolling_apply', 'rolling_corr', 'rolling_corr_pairwise', 'rolling_count', 'rolling_cov', 'rolling_kurt', 'rolling_max', 'rolling_mean', 'rolling_median', 'rolling_min', 'rolling_quantile', 'rolling_skew', 'rolling_std', 'rolling_sum', 'rolling_var', 'save', 'set_eng_float_format', 'set_printoptions', 'sparse', 'stats', 'tools', 'util', 'value_range', 'version'] - -虽然没有类似`read_csv()`的方法(在网上查询,有的资料说有`read_xls()`方法,那时老黄历了),但是有`ExcelFile`类,于是乎: - - >>> xls = pd.ExcelFile("./marks.xlsx") - Traceback (most recent call last): - File "", line 1, in - File "/usr/lib/pymodules/python2.7/pandas/io/parsers.py", line 575, in __init__ - from openpyxl import load_workbook - ImportError: No module named openpyxl - -我这里少了一个模块,看报错提示,用pip安装openpyxl模块:`sudo pip install openpyxl`。继续: - - >>> xls = pd.ExcelFile("./marks.xlsx") - >>> dir(xls) - ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_parse_xls', '_parse_xlsx', 'book', 'parse', 'path', 'sheet_names', 'use_xlsx'] - >>> xls.sheet_names - ['Sheet1', 'Sheet2', 'Sheet3'] - >>> sheet1 = xls.parse("Sheet1") - >>> sheet1 - 0 1 2 3 4 - 0 5 100 100 25 12 - 1 6 45 54 44 88 - 2 7 54 76 13 91 - 3 8 54 452 26 100 - -结果中,columns的名字与前面csv结果不一样,数据部分是同样结果。从结果中可以看到,sheet1也是一个DataFrame对象。 - -对于单个的DataFrame对象,如何通过属性和方法进行操作,如果读者理解了本教程从一开始就贯穿进来的思想——利用dir()和help()或者到官方网站,看文档!——此时就能比较轻松地进行各种操作了。下面的举例,纯属是为了增加篇幅和向读者做一些诱惑性广告,或者给懒惰者看看。当然,肯定是不完全,也不能在实践中照搬。基本方法还在刚才交代过的思想。 - -如果遇到了json或者xml格式的数据怎么办呢?直接使用本教程第贰季第陆章中[《标准库(7)](./226.md)和[《标准库(8)》](./227.md)中的方法,再结合Series或者DataFrame数据特点读取。 - -此外,还允许从数据库中读取数据,首先就是使用本教程第贰季第柒章中阐述的各种数据库([《MySQL数据库(1)》](./230.md),[《MongoDB数据库》](./232.md),[《SQLite数据库》](./233.md))连接和读取方法,将相应数据查询出来,并且将结果(结果通常是列表或者元组类型,或者是字符串)按照前面讲述的Series或者DataFrame类型数据进行组织,然后就可以对其操作。 - ------- - -[总目录](./index.md)   |   [上节:Pandas使用(1)](./311.md)   |   [下节:Pandas使用(3)](./313.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 diff --git a/313.md b/313.md deleted file mode 100644 index 43f8cfd..0000000 --- a/313.md +++ /dev/null @@ -1,60 +0,0 @@ ->神阻挡骄傲的人,赐恩给谦卑的人。(1 PETER 5:5) - -#处理股票数据 - -这段时间某国股市很火爆,不少砖家在分析股市火爆的各种原因,更有不少人看到别人挣钱眼红了,点钞票杀入股市。不过,我还是很淡定的,因为没钱,所以不用担心任何股市风险临到。 - -但是,为了体现本人也是与时俱进的,就以股票数据为例子,来简要说明pandas和其它模块在处理数据上的应用。 - -##下载yahoo上的数据 - -或许你稀奇,为什么要下载yahoo上的股票数据呢?国内网站上不是也有吗?是有。但是,那时某国内的。我喜欢yahoo,因为她曾经吸引我,注意我说的是[www.yahoo.com](http://www.yahoo.com),不是后来被阿里巴巴收购并拆散的那个。 - -![](./3images/31301.png) - -虽然yahoo的世代渐行渐远,但她终究是值得记忆的。所以,我要演示如何下载yahoo财经栏目中的股票数据。 - - In [1]: import pandas - In [2]: import pandas.io.data - - In [3]: sym = "BABA" - - In [4]: finace = pandas.io.data.DataReader(sym, "yahoo", start="2014/11/11") - In [5]: print finace.tail(3) - Open High Low Close Volume Adj Close - Date - 2015-06-17 86.580002 87.800003 86.480003 86.800003 10206100 86.800003 - 2015-06-18 86.970001 87.589996 86.320000 86.750000 11652600 86.750000 - 2015-06-19 86.510002 86.599998 85.169998 85.739998 10207100 85.739998 - -下载了阿里巴巴的股票数据(自2014年11月11日以来),并且打印最后三条。 - -##画图 - -已经得到了一个DataFrame对象,就是前面已经下载并用finace变量引用的对象。 - - In[6]: import matplotlib.pyplot as plt - In [7]: plt.plot(finace.index, finace["Open"]) - Out[]: [] - - In [8]: plt.show() - -于是乎出来了下图: - -![](./3images/31302.png) - -从图中可以看出阿里巴巴的股票自从2014年11月11日到2015年6月19日的股票开盘价变化。看来那个所谓的“光棍节”得到了股市的认可,所以,在此我郑重地建议阿里巴巴要再造一些节日,比如3月3日、4月4日,还好,某国还有农历,阳历用完了用农历。可以维持股票高开高走了。 - -阿里巴巴的事情,我就不用操心了。 - -上面指令中的`import matplotlib.pyplot as plt`是个此前没有看到的。`matplotlib`模块是python中绘制二维图形的模块,是最好的模块。本教程在这里展示了它的一个小小地绘图功能,读者就一下看到阿里巴巴“光棍节”的力量,难道还不能说明matplotlib的强悍吗?很可惜,matplotlib的发明者——John Hunter已经于2012年8月28日因病医治无效英年早逝,这真是天妒英才呀。为了缅怀他,请读者访问官方网站:[matplotlib.org](http://matplotlib.org),并认真学习这个模块的使用。 - -经过上面的操作,读者可以用`dir()`这个以前常用的法宝,来查看finace所引用的DataFrame对象的方法和属性等。只要运用此前不断向大家演示的方法——`dir+help`——就能够对这个对象进行操作,也就是能够对该股票数据进行各种操作。 - -再次声明,本课程仅仅是稍微演示一下相关操作,如果读者要深入研习,恭请寻找相关的专业书籍资料阅读学习。 - ------- - -[总目录](./index.md)   |   [上节:Pandas使用(2)](./312.md)   |   [下节:网络爬虫(1)](./314.md) - -如果你认为有必要打赏我,请通过支付宝:**qiwsir@126.com**,不胜感激。 \ No newline at end of file diff --git a/newcodes/__pycache__/pm.cpython-34.pyc b/newcodes/__pycache__/pm.cpython-34.pyc new file mode 100644 index 0000000000000000000000000000000000000000..23ac35bb35b00aa7df62f1f33fe455930ef80302 GIT binary patch literal 218 zcmX|*u?oU45QZkjB?Noapt;mErF8ab99$iJkgo1NfRm|% z$NeA2-Otax nd30-3jx=T4U%DWy4mQO?$|OfWeIxjKfpDug&X`M4^8 zg%mVOGD~t&6-rVoN^}$wOG`5Hi=dpG#JqGcQxlXonV1hTGv8o7%G}4?M~Tx$^^S(X zXb4ak0w#F$OW=?bWMYvP=P$^pEY3_WPRlGRE=g8nWU&^POe@OIRY*!r&&2K@5q} zg8&GC00@8p2!H?xfB*=900@8p2+Sh^Qx6(30|5@;pa?(*&;fLSc>o`P55NcD1MmU( z0DJ&GuwXt=&So{+)bV;RJ2+U&;)6cd#Xky5)cT!%-`xb)Gb-Q!4*B^3JwOl8L!Q9j z=;8FP*6KTccT2B-73!8gjl=q-Q?aPNG<#gHI6G=f47l$optE{6U4mee&wVu^8xYG2zjK8RH?%uu#-x+Y0^MCb@RMdEi>bLdu+H42DY-$cQVsP{iITXeJ zxBFEZpBQ$XQko=*;*nuQ*J^{PM!^_}dFcm9pSxWy%ISR~POV&F*eg`Sbw;Mz;-RR-mRfg%aAKSb bmR1#B5_zF0Ir);tm!h=KV;;&YQRdbMK4}>l literal 0 HcmV?d00001 diff --git a/newfiles/txtfile.txt b/newfiles/txtfile.txt index ff6bbf8..efeffad 100644 --- a/newfiles/txtfile.txt +++ b/newfiles/txtfile.txt @@ -1,2 +1 @@ -Life is short, you need python. -Aha, I like program. \ No newline at end of file +do you know canglaoshi? From 386b88e81be487b4bc627b9670ffae0ba4cceaf1 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 12 Oct 2016 10:01:47 +0800 Subject: [PATCH 271/288] re --- README.md | 2 ++ 1 file changed, 2 insertions(+) mode change 100644 => 100755 README.md diff --git a/README.md b/README.md old mode 100644 new mode 100755 index 4fd40b6..b7e5620 --- a/README.md +++ b/README.md @@ -14,6 +14,8 @@ From beginner to master. 此处的在线版与上述印刷的版本有所不同。在印刷出来之后,又发觉有一些地方需要修改,于是就对一部分进行了重写,并且在和朋友们交流后,也会吸收很多意见和建议,用之于修改在线版。其中改动最大的在于,本教程不再包括“实战”部分,而是专门叫做面向零基础的“入门教程”。对于实战部分,我会在适当时候专门撰写。 +##注意:以下仅仅是部分目录,原文已经删除。原因见:[https://qiwsir.github.io](https://qiwsir.github.io)中的说明。 + #第壹季 基础 ##第零章 预备 From dea750ab34b77829fe3bf2bcd7f440afebbe51c0 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 6 Jun 2017 15:23:29 +0800 Subject: [PATCH 272/288] some function of fibonacci sque --- fib/.fib02.py.swp | Bin 0 -> 12288 bytes fib/fib01.py | 14 ++++++++++++++ fib/fib02.py | 11 +++++++++++ fib/fib03.py | 12 ++++++++++++ fib/fib04.py | 12 ++++++++++++ 5 files changed, 49 insertions(+) create mode 100644 fib/.fib02.py.swp create mode 100644 fib/fib01.py create mode 100644 fib/fib02.py create mode 100644 fib/fib03.py create mode 100644 fib/fib04.py diff --git a/fib/.fib02.py.swp b/fib/.fib02.py.swp new file mode 100644 index 0000000000000000000000000000000000000000..1f28301ce57c7f8cac5ad8d040123819acf2a52e GIT binary patch literal 12288 zcmeI&PfEi;6bA5D5jP@=;(pq0l1Q7j);|b6fLcM23SEVSCUzE?rqhYijiRUU93H>} z=qYsRDST7gjf+Z`#c$wan9Q3A^V@|?RJ%UC5J%M}aoZw#IX~>~HrMFcBO1!Pk<@l# ze#@g=nS6eYoxT6r(7!UFHnDEUp;l7eT#ikDp!`HeHnm1I8~?o*Dj)!X1q5=FRE{?~ z`;B_dt}2&`VrRRvzy>IV00bZa0SG_<0uX=z1eRUEWCeQQL##{>vOet#zxwGA9Rwf% z0SG_<0uX=z1Rwwb2tWV=ODGWbh*md=+8q1;fA;0f}nIllR_PvTr1%?^}W$h8|T1vJx_^>aO#!m10K7s?=-mgW;N7{lgSH|%Nr$n nkcu=keIe6qppCF)eA8D 0: + a, b = b, a + b + n -= 1 + return a + +if __name__ == "__main__": + print(fib(4)) From a15890976933d85a1db8c8306b81cb546a375bed Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 6 Jun 2017 16:12:40 +0800 Subject: [PATCH 273/288] dock test --- newcodes/docktest.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 newcodes/docktest.py diff --git a/newcodes/docktest.py b/newcodes/docktest.py new file mode 100644 index 0000000..ea4a74a --- /dev/null +++ b/newcodes/docktest.py @@ -0,0 +1,23 @@ +class Cat: + def speak(self): + print("meow!") + +class Dog: + def speak(self): + print("woof!") + +class Bob: + def bow(self): + print("thank you, thank you!") + def speak(self): + print("hello, welcome to the neighborhood!") + def drive(self): + print("beep, beep!") + +def command(pet): + pet.speak() + +pets = [ Cat(), Dog(), Bob() ] + +for pet in pets: + command(pet) From bd8e77c71ccb8c7b8099adf99024599763d72676 Mon Sep 17 00:00:00 2001 From: Chee Wei Date: Tue, 26 Jun 2018 19:23:43 +0800 Subject: [PATCH 274/288] rewite two .py --- 1code/helloworld.py | 3 +-- 1code/simplemath.py | 1 - 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/1code/helloworld.py b/1code/helloworld.py index 8178faa..de111d0 100644 --- a/1code/helloworld.py +++ b/1code/helloworld.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python -# coding=utf-8 +# coding:utf-8 print("Hello, World") diff --git a/1code/simplemath.py b/1code/simplemath.py index ad248f6..78d2133 100644 --- a/1code/simplemath.py +++ b/1code/simplemath.py @@ -1,4 +1,3 @@ -#!/usr/bin/env python #coding: utf-8 """ From dcc96e30c78a154b885b39b05fda2a1748172312 Mon Sep 17 00:00:00 2001 From: Chee Wei Date: Thu, 5 Jul 2018 13:26:30 +0800 Subject: [PATCH 275/288] judge number --- .vscode/settings.json | 3 +++ 1code/nameage.py | 6 ++++-- python3code/chapter02/judgenumber.py | 17 +++++++++++++++++ 3 files changed, 24 insertions(+), 2 deletions(-) create mode 100644 .vscode/settings.json create mode 100644 python3code/chapter02/judgenumber.py diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..bd53818 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "python.pythonPath": "/Library/Frameworks/Python.framework/Versions/3.6/bin/python3" +} \ No newline at end of file diff --git a/1code/nameage.py b/1code/nameage.py index c9ad92c..cf9847a 100644 --- a/1code/nameage.py +++ b/1code/nameage.py @@ -1,5 +1,7 @@ -#!/usr/bin/env python -# coding=utf-8 +# coding:utf-8 +''' +filename: nameage.py +''' name = input("What is your name?") age = input("How old are you?") diff --git a/python3code/chapter02/judgenumber.py b/python3code/chapter02/judgenumber.py new file mode 100644 index 0000000..68e59e2 --- /dev/null +++ b/python3code/chapter02/judgenumber.py @@ -0,0 +1,17 @@ +#coding:utf-8 +''' +filename: judgenumber.py +''' + +print("请输入任意一个整数数字:") +number = int(input()) + +if number == 10: + print("您输入的数字是:{}".format(number)) + print("You are SMART.") +elif number > 10: + print("您输入的数字是:{}".format(number)) + print("This number is more than 10.") +else: + print("您输入的数字是:{}".format(number)) + print("This number is less than 10.") From f9e2eb4c6bb981e05c90cbfcd68787675faa450b Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 5 Jul 2018 19:49:52 +0800 Subject: [PATCH 276/288] new stance of program --- python3code/chapter02/aliquot.py | 12 +++++++++++ python3code/chapter02/evenbreak.py | 13 ++++++++++++ python3code/chapter02/evencontinue.py | 13 ++++++++++++ python3code/chapter02/forelse.py | 15 ++++++++++++++ python3code/chapter02/guessnumber.py | 30 +++++++++++++++++++++++++++ python3code/chapter02/whileelse.py | 11 ++++++++++ 6 files changed, 94 insertions(+) create mode 100644 python3code/chapter02/aliquot.py create mode 100644 python3code/chapter02/evenbreak.py create mode 100644 python3code/chapter02/evencontinue.py create mode 100644 python3code/chapter02/forelse.py create mode 100644 python3code/chapter02/guessnumber.py create mode 100644 python3code/chapter02/whileelse.py diff --git a/python3code/chapter02/aliquot.py b/python3code/chapter02/aliquot.py new file mode 100644 index 0000000..5aaca44 --- /dev/null +++ b/python3code/chapter02/aliquot.py @@ -0,0 +1,12 @@ +#coding:utf-8 +''' +filename: aliquot.py +''' + +aliquot = [] + +for n in range(1,100): + if n % 3 == 0: + aliquot.append(n) + +print(aliquot) \ No newline at end of file diff --git a/python3code/chapter02/evenbreak.py b/python3code/chapter02/evenbreak.py new file mode 100644 index 0000000..e65cf99 --- /dev/null +++ b/python3code/chapter02/evenbreak.py @@ -0,0 +1,13 @@ +#coding:utf-8 +''' +filename: evenbreak.py +''' + +a = 8 +while a: + if a%2 == 0: + break + else: + print("{} is odd number".format(a)) + a -= 1 +print("{} is even number".format(a)) diff --git a/python3code/chapter02/evencontinue.py b/python3code/chapter02/evencontinue.py new file mode 100644 index 0000000..39b7d82 --- /dev/null +++ b/python3code/chapter02/evencontinue.py @@ -0,0 +1,13 @@ +#coding:utf-8 +''' +filename: evencontinue.py +''' + +a = 9 +while a: + if a%2 == 0: + a -=1 + continue #如果是偶数,就返回循环的开始 + else: + print("{} is odd number".format(a)) #如果是奇数,就打印出来 + a -=1 diff --git a/python3code/chapter02/forelse.py b/python3code/chapter02/forelse.py new file mode 100644 index 0000000..daac13a --- /dev/null +++ b/python3code/chapter02/forelse.py @@ -0,0 +1,15 @@ +# coding:utf-8 +''' +filename: forelse.py +''' + +from math import sqrt + +for n in range(99, 1, -1): + root = sqrt(n) + if root == int(root): + print(n) + break + +else: + print("Nothing.") diff --git a/python3code/chapter02/guessnumber.py b/python3code/chapter02/guessnumber.py new file mode 100644 index 0000000..b6f272e --- /dev/null +++ b/python3code/chapter02/guessnumber.py @@ -0,0 +1,30 @@ +#coding:utf-8 +''' +filename: guessnumber.py +''' + +import random + +number = random.randint(1,100) + +guess = 0 + +while True: + + num_input = input("please input one integer that is in 1 to 100:") + guess += 1 + + if not num_input.isdigit(): + print("Please input interger.") + elif int(num_input) < 0 or int(num_input) >= 100: + print("The number should be in 1 to 100.") + else: + if number == int(num_input): + print("OK, you've done well.It is only %d, then you succeed." % guess) + break + elif number > int(num_input): + print("your number is smaller.") + elif number < int(num_input): + print("your number is bigger.") + else: + print("There is something bad, I will not work") diff --git a/python3code/chapter02/whileelse.py b/python3code/chapter02/whileelse.py new file mode 100644 index 0000000..c793fac --- /dev/null +++ b/python3code/chapter02/whileelse.py @@ -0,0 +1,11 @@ +#coding:utf-8 +''' +filename: whileelse.py +''' + +count = 0 +while count < 5: + print(count, " is less than 5") + count = count + 1 +else: + print(count, " is not less than 5") From 4f0dae96f4449210cbd46af1fdeefc81708a5d7d Mon Sep 17 00:00:00 2001 From: qiwsir Date: Fri, 6 Jul 2018 18:16:43 +0800 Subject: [PATCH 277/288] function text --- python3code/chapter02/my.txt | 3 +++ python3code/chapter02/py.txt | 5 +++++ python3code/chapter02/txtfile.txt | 2 ++ python3code/chapter03/decorate.py | 19 +++++++++++++++++++ python3code/chapter03/fibs.py | 13 +++++++++++++ python3code/chapter03/fibs_rec.py | 15 +++++++++++++++ python3code/chapter03/firstfunc.py | 14 ++++++++++++++ python3code/chapter03/parabola.py | 9 +++++++++ python3code/chapter03/weight.py | 15 +++++++++++++++ 9 files changed, 95 insertions(+) create mode 100644 python3code/chapter02/my.txt create mode 100644 python3code/chapter02/py.txt create mode 100644 python3code/chapter02/txtfile.txt create mode 100644 python3code/chapter03/decorate.py create mode 100644 python3code/chapter03/fibs.py create mode 100644 python3code/chapter03/fibs_rec.py create mode 100644 python3code/chapter03/firstfunc.py create mode 100644 python3code/chapter03/parabola.py create mode 100644 python3code/chapter03/weight.py diff --git a/python3code/chapter02/my.txt b/python3code/chapter02/my.txt new file mode 100644 index 0000000..2a9f22f --- /dev/null +++ b/python3code/chapter02/my.txt @@ -0,0 +1,3 @@ +learn python +http://itdiffer.com +qq group: 26913719 diff --git a/python3code/chapter02/py.txt b/python3code/chapter02/py.txt new file mode 100644 index 0000000..82914be --- /dev/null +++ b/python3code/chapter02/py.txt @@ -0,0 +1,5 @@ +Learn python with qiwsir. +There is free python course. +The website is: +http://qiwsir.github.io +Its language is Chinese. \ No newline at end of file diff --git a/python3code/chapter02/txtfile.txt b/python3code/chapter02/txtfile.txt new file mode 100644 index 0000000..ff6bbf8 --- /dev/null +++ b/python3code/chapter02/txtfile.txt @@ -0,0 +1,2 @@ +Life is short, you need python. +Aha, I like program. \ No newline at end of file diff --git a/python3code/chapter03/decorate.py b/python3code/chapter03/decorate.py new file mode 100644 index 0000000..67886d6 --- /dev/null +++ b/python3code/chapter03/decorate.py @@ -0,0 +1,19 @@ +# coding:utf-8 + +def p_decorate(func): + def wrapper(name): + return "

{0}

".format(func(name)) + return wrapper + +def div_decorate(func): + def wrapper(name): + return "
{0}
".format(func(name)) + return wrapper + +@div_decorate +@p_decorate +def book(name): + return "the name of my book is {0}".format(name) + +result = book("PYTHON") +print(result) diff --git a/python3code/chapter03/fibs.py b/python3code/chapter03/fibs.py new file mode 100644 index 0000000..8248864 --- /dev/null +++ b/python3code/chapter03/fibs.py @@ -0,0 +1,13 @@ +# coding=utf-8 +''' +filename: fibs.py +''' + +def fibs(n): + result = [0,1] + for i in range(n-2): + result.append(result[-2] + result[-1]) + return result + +lst = fibs(10) +print(lst) diff --git a/python3code/chapter03/fibs_rec.py b/python3code/chapter03/fibs_rec.py new file mode 100644 index 0000000..2f6b31b --- /dev/null +++ b/python3code/chapter03/fibs_rec.py @@ -0,0 +1,15 @@ +# coding:utf-8 + +def fib(n): + """ + This is Fibonacci by Recursion. + """ + if n==0: + return 0 + elif n==1: + return 1 + else: + return fib(n-1) + fib(n-2) + +f = fib(10) +print(f) diff --git a/python3code/chapter03/firstfunc.py b/python3code/chapter03/firstfunc.py new file mode 100644 index 0000000..e5cced5 --- /dev/null +++ b/python3code/chapter03/firstfunc.py @@ -0,0 +1,14 @@ +#coding:utf-8 +''' +filename: firstfunc.py +''' + +def add_function(a, b): + ''' + add two objects. + ''' + c = a + b + return c + +result = add_function(2, 3) +print(result) diff --git a/python3code/chapter03/parabola.py b/python3code/chapter03/parabola.py new file mode 100644 index 0000000..37a9047 --- /dev/null +++ b/python3code/chapter03/parabola.py @@ -0,0 +1,9 @@ +# coding:utf-8 + +def parabola(a, b, c): + def para(x): + return a*x**2 + b*x + c + return para + +p = parabola(2, 3, 4) +print(p(5)) diff --git a/python3code/chapter03/weight.py b/python3code/chapter03/weight.py new file mode 100644 index 0000000..aebd06e --- /dev/null +++ b/python3code/chapter03/weight.py @@ -0,0 +1,15 @@ +# coding:utf-8 + +def weight(g): + def cal_mg(m): + return m * g + return cal_mg + +w = weight(10) #g=10 +mg = w(10) +print(mg) + +g0 = 9.78046 #赤道海平面上的重力加速度 +w0 = weight(g0) +mg0 = w0(10) +print(mg0) From ded6d8159b359cf51c895c6fef00f1fd3fc8d245 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 9 Jul 2018 10:41:58 +0800 Subject: [PATCH 278/288] chapter04 --- python3code/chapter04/about_self.py | 23 +++++++++++++++++ python3code/chapter04/fibsiterator.py | 24 ++++++++++++++++++ python3code/chapter04/schoolwork.py | 36 +++++++++++++++++++++++++++ 3 files changed, 83 insertions(+) create mode 100644 python3code/chapter04/about_self.py create mode 100644 python3code/chapter04/fibsiterator.py create mode 100644 python3code/chapter04/schoolwork.py diff --git a/python3code/chapter04/about_self.py b/python3code/chapter04/about_self.py new file mode 100644 index 0000000..9e8ab5f --- /dev/null +++ b/python3code/chapter04/about_self.py @@ -0,0 +1,23 @@ +# coding:utf-8 + +class Person: + def __init__(self, name): + self.name = name + + def get_name(self): + return self.name + + def breast(self, n): + self.breast = n + + def color(self, color): + print("{0} is {1}".format(self.name, color)) + + def how(self): + print("{0} breast is {1}".format(self.name, self.breast)) + +girl = Person('canglaoshi') +girl.breast(90) + +girl.color("white") +girl.how() diff --git a/python3code/chapter04/fibsiterator.py b/python3code/chapter04/fibsiterator.py new file mode 100644 index 0000000..ac37c6b --- /dev/null +++ b/python3code/chapter04/fibsiterator.py @@ -0,0 +1,24 @@ +# coding:utf-8 +''' +filename: fibsiterator.py +''' + +class Fibs: + def __init__(self, max): + self.max = max + self.a = 0 + self.b = 1 + + def __iter__(self): + return self + + def __next__(self): + fib = self.a + if fib > self.max: + raise StopIteration + self.a, self.b = self.b, self.a + self.b + return fib + +fibs = Fibs(10000) +lst = [fibs.__next__() for i in range(10)] +print(lst) \ No newline at end of file diff --git a/python3code/chapter04/schoolwork.py b/python3code/chapter04/schoolwork.py new file mode 100644 index 0000000..784d876 --- /dev/null +++ b/python3code/chapter04/schoolwork.py @@ -0,0 +1,36 @@ +#coding:utf-8 +''' + filename: schoolwork.py +''' + +class Student: + def __init__(self, name, grade, subject): + self.name = name + self.grade = grade + self.subject = subject + def do_work(self, time): + if self.grade > 3 and time > 2: + return True + elif self.grade < 3 and time > 0.5: + return True + else: + return False + +class Teacher: + def __init__(self, name, subject): + self.name = name + self.subject = subject + def evaluate(self, result=True): + if result: + return "You are great." + else: + return "You should work hard" + +stu_zhang = Student('zhang', 5, 'math') +tea_wang = Teacher('wang', 'math') +teacher_said = tea_wang.evaluate(stu_zhang.do_work(1)) +print("Teacher {0} said: {1}, {2}".format(tea_wang.name, stu_zhang.name, teacher_said)) + +stu_newton = Student('Newton', 6, 'physics') +teacher_newton = tea_wang.evaluate(stu_newton.do_work(4)) +print("Teacher {0} said: {1}, {2}".format(tea_wang.name, stu_newton.name, teacher_newton)) From 83f2277b796041c32b0c025061ee86e4b14c98f1 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Mon, 9 Jul 2018 18:12:01 +0800 Subject: [PATCH 279/288] add chapter01 and 06 --- python3code/chapter01/helloworld.py | 3 ++ python3code/chapter01/nameage.py | 13 ++++++++ python3code/chapter01/simplemath.py | 8 +++++ .../__pycache__/moduleexample.cpython-36.pyc | Bin 0 -> 857 bytes python3code/chapter06/exit_file.py | 12 ++++++++ python3code/chapter06/moduleexample.py | 29 ++++++++++++++++++ python3code/chapter06/sys_file.py | 10 ++++++ 7 files changed, 75 insertions(+) create mode 100644 python3code/chapter01/helloworld.py create mode 100644 python3code/chapter01/nameage.py create mode 100644 python3code/chapter01/simplemath.py create mode 100644 python3code/chapter06/__pycache__/moduleexample.cpython-36.pyc create mode 100644 python3code/chapter06/exit_file.py create mode 100644 python3code/chapter06/moduleexample.py create mode 100644 python3code/chapter06/sys_file.py diff --git a/python3code/chapter01/helloworld.py b/python3code/chapter01/helloworld.py new file mode 100644 index 0000000..9835d02 --- /dev/null +++ b/python3code/chapter01/helloworld.py @@ -0,0 +1,3 @@ +# coding:utf-8 + +print("Hello, World") \ No newline at end of file diff --git a/python3code/chapter01/nameage.py b/python3code/chapter01/nameage.py new file mode 100644 index 0000000..5ad40b9 --- /dev/null +++ b/python3code/chapter01/nameage.py @@ -0,0 +1,13 @@ +# coding:utf-8 +''' +filename: nameage.py +''' + +name = input("What is your name?") +age = input("How old are you?") + +print("Your name is: ", name) +print("You are " + age + " years old.") + +after_ten = int(age) + 10 +print("You will be " + str(after_ten) + " years old after ten years.") \ No newline at end of file diff --git a/python3code/chapter01/simplemath.py b/python3code/chapter01/simplemath.py new file mode 100644 index 0000000..f683985 --- /dev/null +++ b/python3code/chapter01/simplemath.py @@ -0,0 +1,8 @@ +#coding:utf-8 + +""" +请计算:19+2*4-8/2 +""" + +a = 19 + 2 * 4 - 8 / 2 +print(a) \ No newline at end of file diff --git a/python3code/chapter06/__pycache__/moduleexample.cpython-36.pyc b/python3code/chapter06/__pycache__/moduleexample.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..0d0dc87b09c9b232c7cc3f1ceaaa3037dc5fa253 GIT binary patch literal 857 zcmZ8fy>8nu5GE-~rq#IZ&Ocr0?I_WYO-g7Ic&hU< zeI>4$`T$)z^^U5II49ikNFMop-%%&CS^V?Q+4o0E$Rl}T0pzFPHiMu@PCgMu6?-6x zZCOrLp!fsHnGRHV!^~$*RkWo!*Zex%l04EA4RcB~QxjMhFc&yi;*uoO`*}PETU51f zi$=enH=P=4t#6BFRqNx`U0ed{-WX)3;C2o{6F>)KMe{&06#xsaxC&tmRRp(B96#&2 z8yBta`m3%j@iZEa=;z=zhOnUxID<{30fV;cuRPv)b5n zUH!0?NiVu`Xms1#^t@Brrk8zTdTqYw!n9Sp{OXa@k-$j_C24t8tf1oUyY#tMC#0;} zs+V$#%sgFsKSK@2yPXoA#~Y65UPJ`RhFtFic)|%a9F{%nF<_MwOWjNC^%2YtF?Ksy z5+M~VlG4Rejzl3pl5#y1_5U4S7wyta5JVgzVW$kj8Kj7b#ULnWBJgVmI`)r&*KFYT zdV@+>_8T`mcX$+f`&>$}=(<;U_t+_eITCM*ss*xPU3BZp%wRQ3rfwpo>Pjg+ystIb zX5%ps*u5B^$qRSk%2aLd;%2C&(RQf&C-8fHPJ9@f^AUS(Uqj&R Date: Mon, 9 Jul 2018 18:50:21 +0800 Subject: [PATCH 280/288] modify the code of chapter03 --- python3code/chapter03/decorate.py | 3 +++ python3code/chapter03/fibsbetter.py | 15 +++++++++++++++ python3code/chapter03/foo1.py | 10 ++++++++++ python3code/chapter03/foo2.py | 11 +++++++++++ python3code/chapter03/weight.py | 4 +++- 5 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 python3code/chapter03/fibsbetter.py create mode 100644 python3code/chapter03/foo1.py create mode 100644 python3code/chapter03/foo2.py diff --git a/python3code/chapter03/decorate.py b/python3code/chapter03/decorate.py index 67886d6..359d17e 100644 --- a/python3code/chapter03/decorate.py +++ b/python3code/chapter03/decorate.py @@ -1,4 +1,7 @@ # coding:utf-8 +''' +filename: decorate.py +''' def p_decorate(func): def wrapper(name): diff --git a/python3code/chapter03/fibsbetter.py b/python3code/chapter03/fibsbetter.py new file mode 100644 index 0000000..2fdcfb6 --- /dev/null +++ b/python3code/chapter03/fibsbetter.py @@ -0,0 +1,15 @@ +# coding:utf-8 +""" +the better Fibonacci +filename: fibsbetter.py +""" + +m = {0:0, 1:1} + +def fib(n): + if not n in m: + m [n] = fib(n-1) + fib(n-2) + return m[n] + +f = fib(10) +print(f) diff --git a/python3code/chapter03/foo1.py b/python3code/chapter03/foo1.py new file mode 100644 index 0000000..2d351f3 --- /dev/null +++ b/python3code/chapter03/foo1.py @@ -0,0 +1,10 @@ +#coding:utf-8 +''' +filename: foo1.py +''' +def foo(): + def bar(): + print("bar() is running") + print("foo() is running") + +foo() #调用函数 diff --git a/python3code/chapter03/foo2.py b/python3code/chapter03/foo2.py new file mode 100644 index 0000000..fbbce8a --- /dev/null +++ b/python3code/chapter03/foo2.py @@ -0,0 +1,11 @@ +#coding:utf-8 +''' +filename: foo2.py +''' +def foo(): + def bar(): + print("bar() is running") + bar() #显示调用内嵌函数 + print("foo() is running") + +foo() diff --git a/python3code/chapter03/weight.py b/python3code/chapter03/weight.py index aebd06e..49be676 100644 --- a/python3code/chapter03/weight.py +++ b/python3code/chapter03/weight.py @@ -1,5 +1,7 @@ # coding:utf-8 - +''' +filename: weight.py +''' def weight(g): def cal_mg(m): return m * g From d73fb7a82f16a12b1b3da9ba64b131202081587e Mon Sep 17 00:00:00 2001 From: qiwsir Date: Wed, 11 Jul 2018 15:28:02 +0800 Subject: [PATCH 281/288] add code of 04 --- python3code/chapter03/parabola.py | 3 ++ python3code/chapter04/addfractions.py | 36 ++++++++++++++++++++++ python3code/chapter04/convert2g.py | 13 ++++++++ python3code/chapter04/definefraction.py | 18 +++++++++++ python3code/chapter04/fibsyield.py | 16 ++++++++++ python3code/chapter04/gcdlcm.py | 19 ++++++++++++ python3code/chapter04/mro.py | 27 +++++++++++++++++ python3code/chapter04/multi_inhance.py | 23 ++++++++++++++ python3code/chapter04/myrange.py | 24 +++++++++++++++ python3code/chapter04/private.py | 18 +++++++++++ python3code/chapter04/rectangle1.py | 26 ++++++++++++++++ python3code/chapter04/rectangle2.py | 30 +++++++++++++++++++ python3code/chapter04/roundfloat.py | 18 +++++++++++ python3code/chapter04/simdict.py | 28 +++++++++++++++++ python3code/chapter04/simlist.py | 17 +++++++++++ python3code/chapter04/singleton.py | 20 +++++++++++++ python3code/chapter04/temperature.py | 40 +++++++++++++++++++++++++ 17 files changed, 376 insertions(+) create mode 100644 python3code/chapter04/addfractions.py create mode 100644 python3code/chapter04/convert2g.py create mode 100644 python3code/chapter04/definefraction.py create mode 100644 python3code/chapter04/fibsyield.py create mode 100644 python3code/chapter04/gcdlcm.py create mode 100644 python3code/chapter04/mro.py create mode 100644 python3code/chapter04/multi_inhance.py create mode 100644 python3code/chapter04/myrange.py create mode 100644 python3code/chapter04/private.py create mode 100644 python3code/chapter04/rectangle1.py create mode 100644 python3code/chapter04/rectangle2.py create mode 100644 python3code/chapter04/roundfloat.py create mode 100644 python3code/chapter04/simdict.py create mode 100644 python3code/chapter04/simlist.py create mode 100644 python3code/chapter04/singleton.py create mode 100644 python3code/chapter04/temperature.py diff --git a/python3code/chapter03/parabola.py b/python3code/chapter03/parabola.py index 37a9047..b282ffe 100644 --- a/python3code/chapter03/parabola.py +++ b/python3code/chapter03/parabola.py @@ -1,4 +1,7 @@ # coding:utf-8 +''' +filename: parabola.py +''' def parabola(a, b, c): def para(x): diff --git a/python3code/chapter04/addfractions.py b/python3code/chapter04/addfractions.py new file mode 100644 index 0000000..b6cee91 --- /dev/null +++ b/python3code/chapter04/addfractions.py @@ -0,0 +1,36 @@ +#coding:utf-8 +''' +filename: addfractions.py +''' + +def gcd(a, b): + if not a > b: + a, b = b, a + while b != 0: + remainder = a % b + a, b = b, remainder + return a + +def lcm(a, b): + return (a * b) / gcd(a,b) + +class Fraction: + def __init__(self, number, denom=1): + self.number = number + self.denom = denom + + def __str__(self): + return str(self.number) + '/' + str(self.denom) + + __repr__ = __str__ + + def __add__(self, other): + lcm_num = lcm(self.denom, other.denom) + number_sum = (lcm_num / self.denom * self.number) + (lcm_num / other.denom * other.number) + return Fraction(number_sum, lcm_num) + +if __name__ == "__main__": + m = Fraction(1, 3) + n = Fraction(1, 2) + s = m + n + print(m,"+",n,"=",s) diff --git a/python3code/chapter04/convert2g.py b/python3code/chapter04/convert2g.py new file mode 100644 index 0000000..83bd243 --- /dev/null +++ b/python3code/chapter04/convert2g.py @@ -0,0 +1,13 @@ +#coding:utf-8 +''' +filename: convert2g.py +''' + +class ToGram(float): + def __new__(cls, jin=0.0): + gram = jin / 2 * 1000 + return float.__new__(cls, gram) + +jin = 2.3 +value = ToGram(jin) +print("{0}jin = {1:.2f}g".format(jin, value)) diff --git a/python3code/chapter04/definefraction.py b/python3code/chapter04/definefraction.py new file mode 100644 index 0000000..ec89f7d --- /dev/null +++ b/python3code/chapter04/definefraction.py @@ -0,0 +1,18 @@ +#coding:utf-8 +''' +filename: definefraction.py +''' +class Fraction: + def __init__(self, number, denom=1): + self.number = number + self.denom = denom + + def __str__(self): + return str(self.number) + '/' + str(self.denom) + + __repr__ = __str__ + + +if __name__ == "__main__": + f = Fraction(2, 3) + print(f) diff --git a/python3code/chapter04/fibsyield.py b/python3code/chapter04/fibsyield.py new file mode 100644 index 0000000..4849b2c --- /dev/null +++ b/python3code/chapter04/fibsyield.py @@ -0,0 +1,16 @@ +# coding:utf-8 +''' +filename: fibsyield.py +''' + +def fibs(max): + n, a, b = 0, 0, 1 + while n < max: + yield b + a, b = b, a + b + n = n + 1 + +if __name__ == "__main__": + f = fibs(10) + for i in f: + print(i, end=',') diff --git a/python3code/chapter04/gcdlcm.py b/python3code/chapter04/gcdlcm.py new file mode 100644 index 0000000..cbfb8a3 --- /dev/null +++ b/python3code/chapter04/gcdlcm.py @@ -0,0 +1,19 @@ +#coding:utf-8 +''' +filename: gcdlcm.py +''' + +def gcd(a, b): #最大公约数 + if not a > b: + a, b = b, a + while b != 0: + remainder = a % b + a, b = b, remainder + return a + +def lcm(a, b): #最小公倍数 + return (a * b) / gcd(a,b) + +if __name__ == "__main__": + print(gcd(8, 20)) + print(lcm(8, 20)) diff --git a/python3code/chapter04/mro.py b/python3code/chapter04/mro.py new file mode 100644 index 0000000..210c489 --- /dev/null +++ b/python3code/chapter04/mro.py @@ -0,0 +1,27 @@ +# coding:utf-8 + +class K1: + def foo(self): + print("K1-foo") + +class K2: + def foo(self): + print("K2-foo") + def bar(self): + print("K2-bar") + +class J1(K1, K2): + pass + +class J2(K1, K2): + def bar(self): + print("J2-bar") + +class C(J1, J2): + pass + +if __name__ == "__main__": + print(C.__mro__) + m = C() + m.foo() + m.bar() diff --git a/python3code/chapter04/multi_inhance.py b/python3code/chapter04/multi_inhance.py new file mode 100644 index 0000000..bc49c3c --- /dev/null +++ b/python3code/chapter04/multi_inhance.py @@ -0,0 +1,23 @@ +# coding:utf-8 + +class Person: + def eye(self): + print("two eyes") + + def breast(self, n): + print("The breast is: ",n) + +class Girl: + age = 28 + def color(self): + print("The girl is white") + +class HotGirl(Person, Girl): + pass + +if __name__ == "__main__": + kong = HotGirl() + kong.eye() + kong.breast(90) + kong.color() + print(kong.age) diff --git a/python3code/chapter04/myrange.py b/python3code/chapter04/myrange.py new file mode 100644 index 0000000..f3dd1b8 --- /dev/null +++ b/python3code/chapter04/myrange.py @@ -0,0 +1,24 @@ +# coding:utf-8 +''' +filename: myrange.py +''' + +class MyRange: + def __init__(self, n): + self.i = 1 + self.n = n + + def __iter__(self): + return self + + def __next__(self): + if self.i <= self.n: + i = self.i + self.i += 1 + return i + else: + raise StopIteration() + +if __name__ == "__main__": + x = MyRange(7) + print([i for i in x]) diff --git a/python3code/chapter04/private.py b/python3code/chapter04/private.py new file mode 100644 index 0000000..54d2d95 --- /dev/null +++ b/python3code/chapter04/private.py @@ -0,0 +1,18 @@ +# coding:utf-8 + +class ProtectMe: + def __init__(self): + self.me = "qiwsir" + self.__name = "kivi" + + def __python(self): + print("I love Python.") + + def code(self): + print("Which language do you like?") + self.__python() + +if __name__ == "__main__": + p = ProtectMe() + print(p.me) + print(p.__name) diff --git a/python3code/chapter04/rectangle1.py b/python3code/chapter04/rectangle1.py new file mode 100644 index 0000000..0159663 --- /dev/null +++ b/python3code/chapter04/rectangle1.py @@ -0,0 +1,26 @@ +# coding:utf-8 +''' +filename: rectangle1.py +''' + +class Rectangle: + """ + the width and length of Rectangle + """ + def __init__(self): + self.width = 0 + self.length = 0 + + def setSize(self, size): + self.width, self.length = size + def getSize(self): + return self.width, self.length + +if __name__ == "__main__": + r = Rectangle() + r.width = 3 + r.length = 4 + print(r.getSize()) + r.setSize( (30, 40) ) + print(r.width) + print(r.length) diff --git a/python3code/chapter04/rectangle2.py b/python3code/chapter04/rectangle2.py new file mode 100644 index 0000000..c94ec91 --- /dev/null +++ b/python3code/chapter04/rectangle2.py @@ -0,0 +1,30 @@ +# coding:utf-8 +''' +filename: rectangle2.py +''' + +class NewRectangle: + def __init__(self): + self.width = 0 + self.length = 0 + + def __setattr__(self, name, value): + if name == "size": + self.width, self.length = value + else: + self.__dict__[name] = value + + def __getattr__(self, name): + if name == "size": + return self.width, self.length + else: + raise AttributeError + +if __name__ == "__main__": + r = NewRectangle() + r.width = 3 + r.length = 4 + print(r.size) + r.size = 30, 40 + print(r.width) + print(r.length) diff --git a/python3code/chapter04/roundfloat.py b/python3code/chapter04/roundfloat.py new file mode 100644 index 0000000..aadb715 --- /dev/null +++ b/python3code/chapter04/roundfloat.py @@ -0,0 +1,18 @@ +# coding:utf-8 +''' +filename: roundfloat.py +''' +class RoundFloat: + def __init__(self, val): + assert isinstance(val, float), "value must be a float." + self.value = round(val, 2) + + def __str__(self): #① + return "{:.2f}".format(self.value) + + __repr__ = __str__ #② + +if __name__ == "__main__": + r = RoundFloat(2.185) + print(r) + print(type(r)) diff --git a/python3code/chapter04/simdict.py b/python3code/chapter04/simdict.py new file mode 100644 index 0000000..d56cab0 --- /dev/null +++ b/python3code/chapter04/simdict.py @@ -0,0 +1,28 @@ +#coding:utf-8 +''' +filename: simdict.py +''' + +class SimDit: + def __init__(self, k, v): + self.dct = dict([(k, v)]) + + def __setitem__(self, k, v): + self.dct[k] = v + + def __getitem__(self, k): + return self.dct[k] + + def __len__(self): + return len(self.dct) + + def __delitem__(self, k): + del self.dct[k] + +d = SimDit('name', 'Laoqi') +d['lang'] = 'python' +d['city'] = 'Soochow' +print(d['city']) +print(len(d)) +del d['city'] +print(d.dct) diff --git a/python3code/chapter04/simlist.py b/python3code/chapter04/simlist.py new file mode 100644 index 0000000..052091a --- /dev/null +++ b/python3code/chapter04/simlist.py @@ -0,0 +1,17 @@ +#coding:utf-8 +''' +filename: simlist.py +''' + +class SimLst: + def __init__(self, total): + self.__num = [None] * total + def __setitem__(self, n, data): + self.__num[n] = data + def __getitem__(self, n): + return self.__num[n] + def __len__(self): + return len(self.__num) + +slst = SimLst(3) +print(len(slst)) diff --git a/python3code/chapter04/singleton.py b/python3code/chapter04/singleton.py new file mode 100644 index 0000000..ad39fe1 --- /dev/null +++ b/python3code/chapter04/singleton.py @@ -0,0 +1,20 @@ +#coding:utf-8 +''' +filename: singleton.py +''' +class Singleton: + _instance = None + def __new__(cls, *args, **kwargs): + if not cls._instance: + cls._instance = super().__new__(cls) + return cls._instance + +class MyClass(Singleton): + a = 1 + +x = MyClass() +y = MyClass() + +print(x) +print(y) +print("x is y: ", x is y) diff --git a/python3code/chapter04/temperature.py b/python3code/chapter04/temperature.py new file mode 100644 index 0000000..f1c2b81 --- /dev/null +++ b/python3code/chapter04/temperature.py @@ -0,0 +1,40 @@ +#coding:utf-8 +''' +filename: temperature.py +''' + +class Temperature: + coefficient = {"c": (1.0, 0.0, -273.15), "f": (1.8, -273.15, 32.0)} + def __init__(self, **kargs): + assert set(kargs.keys()).intersection("kfcKFC"), "invalid arguments {0}".format(kargs) + name, value = kargs.popitem() + name = name.lower() + setattr(self, name, float(value)) + + def __getattr__(self, name): + try: + eq = self.coefficient[name.lower()] + except KeyError: + raise AttributeError(name) + return (self.k + eq[1]) * eq[0] + eq[2] + + def __setattr__(self, name, value): + name = name.lower() + if name in self.coefficient: + eq = self.coefficient[name] + self.k = (value - eq[2]) / eq[0] - eq[1] + elif name == 'k': + object.__setattr__(self, name, value) + else: + raise AttributeError(name) + + def __str__(self): + return "{0}K".format(self.k) + + def __repr__(self): + return "Temperature(K={0}".format(self.k) + +t = Temperature(c=64) +print("c=64, f=", t.f) +t.f = 23 +print("f=23, c=", t.c) From 5b9bfcd28691ad4928e33e2b4bb2506c95eefb4c Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 28 Aug 2018 10:44:52 +0800 Subject: [PATCH 282/288] python3code --- README.md | 157 ++++-------------- python-book1.png | Bin 0 -> 268763 bytes python3code/chapter05/account.py | 26 +++ python3code/chapter05/calculator.py | 17 ++ python3code/chapter05/customexception.py | 26 +++ python3code/chapter05/try_except.py | 37 +++++ python3code/chapter05/tryelse.py | 17 ++ python3code/chapter05/tryexceptccb.py | 19 +++ python3code/chapter06/exampleimport.py | 10 ++ python3code/chapter06/mypackage/A/__init__.py | 0 .../A/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 180 bytes .../A/__pycache__/abasic.cpython-36.pyc | Bin 0 -> 378 bytes .../A/__pycache__/apython.cpython-36.pyc | Bin 0 -> 358 bytes python3code/chapter06/mypackage/A/abasic.py | 14 ++ python3code/chapter06/mypackage/A/apython.py | 8 + python3code/chapter06/mypackage/B/__init__.py | 0 .../B/__pycache__/__init__.cpython-36.pyc | Bin 0 -> 180 bytes .../B/__pycache__/brust.cpython-36.pyc | Bin 0 -> 264 bytes python3code/chapter06/mypackage/B/brust.py | 6 + python3code/chapter06/mypackage/__init__.py | 0 .../__pycache__/__init__.cpython-36.pyc | Bin 0 -> 178 bytes python3code/chapter06/pp.py | 14 ++ 22 files changed, 228 insertions(+), 123 deletions(-) create mode 100644 python-book1.png create mode 100644 python3code/chapter05/account.py create mode 100644 python3code/chapter05/calculator.py create mode 100644 python3code/chapter05/customexception.py create mode 100644 python3code/chapter05/try_except.py create mode 100644 python3code/chapter05/tryelse.py create mode 100644 python3code/chapter05/tryexceptccb.py create mode 100644 python3code/chapter06/exampleimport.py create mode 100644 python3code/chapter06/mypackage/A/__init__.py create mode 100644 python3code/chapter06/mypackage/A/__pycache__/__init__.cpython-36.pyc create mode 100644 python3code/chapter06/mypackage/A/__pycache__/abasic.cpython-36.pyc create mode 100644 python3code/chapter06/mypackage/A/__pycache__/apython.cpython-36.pyc create mode 100644 python3code/chapter06/mypackage/A/abasic.py create mode 100644 python3code/chapter06/mypackage/A/apython.py create mode 100644 python3code/chapter06/mypackage/B/__init__.py create mode 100644 python3code/chapter06/mypackage/B/__pycache__/__init__.cpython-36.pyc create mode 100644 python3code/chapter06/mypackage/B/__pycache__/brust.cpython-36.pyc create mode 100644 python3code/chapter06/mypackage/B/brust.py create mode 100644 python3code/chapter06/mypackage/__init__.py create mode 100644 python3code/chapter06/mypackage/__pycache__/__init__.cpython-36.pyc create mode 100644 python3code/chapter06/pp.py diff --git a/README.md b/README.md index b7e5620..2d15805 100755 --- a/README.md +++ b/README.md @@ -1,125 +1,36 @@ -#This is for everyone. - >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《跟老齐学Python》(入门教程) - -From beginner to master. - -针对零基础的学习者,试图实现从基础到精通,还要看自己的造化。 - -原名叫做《零基础学Python》,后来由于图书出版,更名为《跟老齐学Python》。 - -《跟老齐学Python》一书已经由电子工业出版社出版,于2016年3月1日起,陆续在亚马逊、京东、当当、淘宝等网站发售,请关注,并感谢支持。 - -此处的在线版与上述印刷的版本有所不同。在印刷出来之后,又发觉有一些地方需要修改,于是就对一部分进行了重写,并且在和朋友们交流后,也会吸收很多意见和建议,用之于修改在线版。其中改动最大的在于,本教程不再包括“实战”部分,而是专门叫做面向零基础的“入门教程”。对于实战部分,我会在适当时候专门撰写。 - -##注意:以下仅仅是部分目录,原文已经删除。原因见:[https://qiwsir.github.io](https://qiwsir.github.io)中的说明。 - -#第壹季 基础 - -##第零章 预备 - -1. [关于python的故事](./01.md) -2. [从小工到专家](./02.md) -3. [安装python的开发环境](./03.md) -4. [集成开发环境](./101.md)==>集成开发环境;python的IDE - -##第壹章 基本数据类型 - -1. [数和四则运算](./102.md)==>整数和浮点数;变量;整数溢出问题; -2. [除法](./103.md)==>整数、浮点数相除;`from __future__ import division`;余数;四舍五入; -3. [常用数学函数和运算优先级](./104.md)==>math模块,求绝对值,运算优先级 -4. [写一个简单程序](./105.md)==>程序和语句,注释 -5. [字符串(1)](./106.md)==>字符串定义,转义符,字符串拼接,str()与repr()区别 -6. [字符串(2)](./107.md)==>raw_input,print,内建函数,原始字符串,再做一个小程序 -7. [字符串(3)](./108.md)==>字符串和序列,索引,切片,基本操作 -8. [字符串(4)](./109.md)==>字符串格式化,常用的字符串方法 -9. [字符编码](./110.md)==>编码的基础知识,python中避免汉字乱码 -10. [列表(1)](./111.md)==>列表定义,索引和切片,列表反转,元素追加,基本操作 -11. [列表(2)](./112.md)==>列表append/extend/index/count方法,可迭代的和判断方法,列表原地修改 -12. [列表(3)](./113.md)==>列表pop/remove/reverse/sort方法 -13. [回顾列表和字符串](./114.md)==>比较列表和字符串的相同点和不同点 -14. [元组](./115.md)==>元组定义和基本操作,使用意义 -15. [字典(1)](./116.md)==>字典创建方法、基本操作(长度、读取值、删除值、判断键是否存在) -16. [字典(2)](./117.md)==>字典方法:copy/deepcopy/clear/get/setdefault/items/iteritems/keys/iterkeys/values/itervalues/pop/popitem/update/has_key -17. [集合(1)](./118.md)==>创建集合,集合方法:add/update,pop/remove/discard/clear,可哈希与不可哈希 -18. [集合(2)](./119.md)==>不可变集合,集合关系 - -##第贰章 语句和文件 - -1. [运算符](./120.md)==>算数运算符,比较运算符,逻辑运算符/布尔类型 -2. [语句(1)](./121.md)==>print, import, 赋值语句、增量赋值 -3. [语句(2)](./122.md)==>if...elif...else语句,三元操作 -4. [语句(3)](./123.md)==>for循环,range(),循环字典 -5. [语句(4)](./124.md)==>并行迭代:zip(),enumerate(),list解析 -6. [语句(5)](./125.md)==>while循环,while...else,for...else -7. [文件(1)](./126.md)==>文件打开,读取,写入 -8. [文件(2)](./127.md)==>文件状态,read/readline/readlines,大文件读取,seek -9. [迭代](./128.md)==>迭代含义,iter() -10. [练习](./129.md)==>通过四个练习,综合运用以前所学 -11. [自省](./130.md)==>自省概念,联机帮助,dir(),文档字符串,检查对象,文档 - -##第叁章 函数 - -1. [函数(1)](./201.md)==>定义函数方法,调用函数方法,命名方法,使用函数注意事项 -2. [函数(2)](./202.md)==>函数返回值,函数文档,形参和实参 -3. [函数(3)](./203.md)==>收集参数:`*`和`**`,及其逆过程,复习参数知识 -4. [函数(4)](./204.md)==>递归、传递函数、嵌套函数和装饰器 -5. [函数(5)](./242.md)==>闭包 -6. [函数(5)](./237.md)==>filter、map、reduce、lambda、yield -7. [函数练习](./205.md)==>解一元二次方程,统计考试成绩,找素数 -8. [zip()补充](./236.md)==>对zip()函数的用法进行补充说明 -9. [命名空间](./241.md)==>全局变量和局部变量,作用域,命名空间 - -#第贰季 进阶 - -##第肆章 类 - -1. [类(1)](./206.md)==>类的初步认识和基本概念理解:问题空间、对象、面向对象、类和实例化类 -2. [类(2)](./207.md)==>新式类和旧式类,初步创建类和实例化 -3. [类(3)](./208.md)==>类属性、创建实例、实例属性、self作用、类内外数据流转 -4. [类(4)](./238.md)==>绑定方法和非绑定方法,类方法和静态方法 -5. [类(5)](./209.md)==>继承,super,多重继承 -6. [多态和封装](./211.md)==>多态,封装和私有化 -7. [定制类](./239.md)==>类和类型,定制类 -8. [黑魔法](./240.md)==>优化内存的`__slots__`,属性拦截 -9. [迭代器](./214.md)==>迭代器方法`__iter__`,`netx()` -11. [生成器](./215.md)==>生成器定义,yield,生成器方法 -12. [上下文管理器](./235.md)==>上下文管理器的基本概念,使用方法和contextlib模块 - -##第伍章 错误和异常 - -1. [错误和异常(1)](./216.md)==>什么是错误和异常,常见异常类型,处理异常(try...except...) -2. [错误和异常(2)](./217.md)==>处理多个异常,else子句,finally子句 -3. [错误和异常(3)](./218.md)==>assert断言,异常小结 - -##第陆章 模块 - -1. [编写模块](./219.md)==>模块是程序,模块的位置 -2. [标准库(1)](./220.md)==>引用模块的方式,dir()查看属性和方法,模块文档和帮助 -3. [标准库(2)](./221.md)==>sys,copy -4. [标准库(3)](./222.md)==>os模块:操作文件、目录,查看修改属性,执行系统命令,打开网页 -5. [标准库(4)](./223.md)==>堆的基本知识,heapq模块,deque模块 -6. [标准库(5)](./224.md)==>calendar模块、time模块、datetime模块 -7. [标准库(6)](./225.md)==>urllib模块、urllib2模块 -8. [标准库(7)](./226.md)==>xml.etree.ElementTree模块:遍历查询、增删改查xml,应用实例 -9. [标准库(8)](./227.md)==>json模块:dumps(),loads(),dump(),load(),自定义类型数据的json编码和解码 -10. [第三方库](./228.md)==>第三方库的模块安装方法,以requests模块为例说明 - -##第柒章 保存数据 - -1. [将数据存入文件](./229.md)==>pickle模块,shelve模块 -2. [MySQL数据库(1)](./230.md)==>MySQL概况,安装,python连接MySQL模块和方法 -3. [MySQL数据库(2)](./231.md)==>连接对象方法,游标对象方法:数据库的增删改查基本操作 -4. [MongoDB数据库](./232.md)==>mongodb的安装启动,pymongo模块:连接客户端,数据库的增删改查操作 -5. [SQLite数据库](./233.md)==>通过sqlite3模块操作SQLite数据库:连接对象方法,游标对象方法,数据库增删改查 -6. [电子表格](./234.md)==>python操作Excel文件的第三方库openpyxl使用方法,以及其它与Excel相关的第三方库 - -##附:网络文摘 - -1. [如何成为python高手](./n001.md) -2. [ASCII、Unicode、GBK和UTF-8字符编码的区别联系](./n002.md) -3. [大数据全栈式开发语言 – Python](./n003.md) -4. [机器学习编程语言之争,Python夺魁](./n004.md) -5. [Python 2.7.x 和 3.x 版本的重要区别](./n005.md) +#《跟老齐学Python:轻松入门》 + +本项目为《跟老齐学Python:轻松入门》一书的相关代码。此书是为初学Python的朋友而作,在各大网店有售。 + +![](./python-book1.png) + +# 相关资源 + +## 个人网站 + +[itdiffer.com](http://www.itdiffer.com) + +## QQ群:26913719 + +说明:此QQ群是读者交流,而非作者答疑区,请特别注意。如果读者有问题,可以在群里面跟其它读者交流。作者没有答疑的义务。恕不接待任何形式的答疑。 + +关于本QQ群的更多说明: + + 加入本群,收费1元,目的是免群主审核,并且拦住广告发布人。如果对此有异议,请不要加入。 + 因为设置了上述功能,群主无法单独邀请用户加入了(这是QQ方面的规定),所以,不要让群主邀请。 + 更不要通过其它途径给群主一块钱,然后让群主想办法把你加到群里,群主表示做不到。 + +再次提醒:对入群收费1元,有异议者请不要加入。 + +# 本书配套小程序 + +小程序名称:跟老齐学 + +![](https://raw.githubusercontent.com/qiwsir/DjangoPracticeProject/master/smallprogramming.jpg) + +# Python学习资源推荐: + + 系列图书《跟老齐学Python:Django实战》、《跟老齐学Python:数据分析》,各大网店和书店有售 + 在线课程:[Python3入门和能力提升](https://www.cctalk.com/m/course/111302) diff --git a/python-book1.png b/python-book1.png new file mode 100644 index 0000000000000000000000000000000000000000..5ec8ad1ed45f4de457dcce0431e463b3883c0020 GIT binary patch literal 268763 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 QRR91007*qoM6N<$f^~QEga7~l literal 0 HcmV?d00001 diff --git a/python3code/chapter05/account.py b/python3code/chapter05/account.py new file mode 100644 index 0000000..8b65239 --- /dev/null +++ b/python3code/chapter05/account.py @@ -0,0 +1,26 @@ +# coding:utf-8 +''' +filename: account.py +''' +class Account(object): + def __init__(self, number): + self.number = number + self.balance = 0 + + def deposit(self, amount): + try: + assert amount > 0 + self.balance += amount + except: + print("The money should be bigger than zero.") + + def withdraw(self, amount): + assert amount > 0 + if amount <= self.balance: + self.balance -= amount + else: + print("balance is not enough.") + +if __name__ == "__main__": + a = Account(1000) + a.deposit(-10) diff --git a/python3code/chapter05/calculator.py b/python3code/chapter05/calculator.py new file mode 100644 index 0000000..a5a6683 --- /dev/null +++ b/python3code/chapter05/calculator.py @@ -0,0 +1,17 @@ +# coding=utf-8 + +class Calculator(object): + is_raise = False + def calc(self, express): + try: + return eval(express) + except ZeroDivisionError: + if self.is_raise: + return "zero can not be division." + else: + raise + +if __name__ == "__main__": + c = Calculator() + c.is_raise = True + print(c.calc("8/0")) diff --git a/python3code/chapter05/customexception.py b/python3code/chapter05/customexception.py new file mode 100644 index 0000000..bc49d3d --- /dev/null +++ b/python3code/chapter05/customexception.py @@ -0,0 +1,26 @@ +# coding:utf-8 +''' +filename: customexception.py +''' + +class NegativeAgeException(RuntimeError): + def __init__(self, age): + super().__init__() + self.age = age + +def enterage(age): + if age < 0: + raise NegativeAgeException("Only positive integers are allowed") + + if age % 2 == 0: + print("age is even") + else: + print("age is odd") + +try: + num = int(input("Enter your age: ")) + enterage(num) +except NegativeAgeException: + print("Only integers are allowed") +except: + print("something is wrong") diff --git a/python3code/chapter05/try_except.py b/python3code/chapter05/try_except.py new file mode 100644 index 0000000..759f496 --- /dev/null +++ b/python3code/chapter05/try_except.py @@ -0,0 +1,37 @@ +# coding:utf-8 +''' +filename: try_except.py +''' + +# while 1: +# print("this is a division program.") +# c = input("input 'c' continue, otherwise logout:") +# if c == 'c': +# a = input("first number:") +# b = input("second number:") +# try: +# print(float(a)/float(b)) +# print("*************************") +# except ZeroDivisionError: +# print("The second number can't be zero!") +# print("*************************") +# except ValueError: +# print("please input number.") +# print("************************") +# else: +# break + +while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except (ZeroDivisionError, ValueError) as e: + print(e) + print("********************") + else: + break diff --git a/python3code/chapter05/tryelse.py b/python3code/chapter05/tryelse.py new file mode 100644 index 0000000..d61fd78 --- /dev/null +++ b/python3code/chapter05/tryelse.py @@ -0,0 +1,17 @@ +# coding:utf-8 +''' +filename: tryelse.py +''' + +while 1: + try: + x = input("the first number:") + y = input("the second number:") + + r = float(x)/float(y) + print(r) + except Exception as e: + print(e) + print("try again.") + else: + break diff --git a/python3code/chapter05/tryexceptccb.py b/python3code/chapter05/tryexceptccb.py new file mode 100644 index 0000000..75b2df8 --- /dev/null +++ b/python3code/chapter05/tryexceptccb.py @@ -0,0 +1,19 @@ +# coding:utf-8 +''' +filename: tryexceptccb.py +''' + +while 1: + print("this is a division program.") + c = input("input 'c' continue, otherwise logout:") + if c == 'c': + a = input("first number:") + b = input("second number:") + try: + print(float(a)/float(b)) + print("*************************") + except ZeroDivisionError: + print("The second number can't be zero!") + print("*************************") + else: + break diff --git a/python3code/chapter06/exampleimport.py b/python3code/chapter06/exampleimport.py new file mode 100644 index 0000000..974992f --- /dev/null +++ b/python3code/chapter06/exampleimport.py @@ -0,0 +1,10 @@ +#coding:utf-8 +''' +filename: exampleimport.py +''' + +from mypackage.A import abasic + +if __name__ == "__main__": + r = abasic.basic + print(r) diff --git a/python3code/chapter06/mypackage/A/__init__.py b/python3code/chapter06/mypackage/A/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python3code/chapter06/mypackage/A/__pycache__/__init__.cpython-36.pyc b/python3code/chapter06/mypackage/A/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6d948b5233f663edba7a3087f4ffe1522429b71c GIT binary patch literal 180 zcmXr!<>hkU;ug&S1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuSEUO;?$yI{ld)h z;>;p_m;B_?+|<01VtwcQl+5<*B3OBfR;%@C6!>|qf{zLc$y&Nw>k~gH%gv@KVwC zG*4Qewi=MOrk_Zi!CME%fIVrcG<%ERb*$J;9#*N$O3hZekeYcVSEW?@;*50)>SUFMx4A`~Q25eVOK>O5~LRp4tSUWPk_c2Okk=)&Kwi literal 0 HcmV?d00001 diff --git a/python3code/chapter06/mypackage/A/__pycache__/apython.cpython-36.pyc b/python3code/chapter06/mypackage/A/__pycache__/apython.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6bd9e2c72cf6343a9250b48abcd6e0641c590412 GIT binary patch literal 358 zcmXr!<>flR#Vxvwfq~&M5W@izkmUfx#R5Pgg&~R|g)xPxg&~SDg*li(lcmazO92Q9 z5=%0y6!i3SD+>~nvlG)(^&RyS3o1)8^7HfxD#1$9GK+Fj^AdAYtrU=Cl7Xhe0V9y* z48+AOKq7?^Xg-tQEw+Hj5D$O9l?+87ryz)53HqVMsYS*5g_-5WnML|8`N^fZsd**E z`p)?&sm1!iC5c5PsYO1iiA8ytdFcUQ$LK@cWSk6CqMw|RSO8REV1~olx7Z-6*+EVM xS>ARSl0jm literal 0 HcmV?d00001 diff --git a/python3code/chapter06/mypackage/A/abasic.py b/python3code/chapter06/mypackage/A/abasic.py new file mode 100644 index 0000000..5a049b2 --- /dev/null +++ b/python3code/chapter06/mypackage/A/abasic.py @@ -0,0 +1,14 @@ +#coding:utf-8 +''' + path: ./mypackage/A/abasic.py + filename: abasic.py +''' + +from . import apython +from ..B import brust + +basic = "BASIC-" + apython.python() + "-" + brust.rust + +#it will be Error! +if __name__ == "__main__": + print(basic) diff --git a/python3code/chapter06/mypackage/A/apython.py b/python3code/chapter06/mypackage/A/apython.py new file mode 100644 index 0000000..a545deb --- /dev/null +++ b/python3code/chapter06/mypackage/A/apython.py @@ -0,0 +1,8 @@ +#coding:utf-8 +''' + path: ./mypackage/A/apython.py + firlename: apython.py +''' + +def python(): + return "PYTHON" diff --git a/python3code/chapter06/mypackage/B/__init__.py b/python3code/chapter06/mypackage/B/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python3code/chapter06/mypackage/B/__pycache__/__init__.cpython-36.pyc b/python3code/chapter06/mypackage/B/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..2217899287fcb2bc9c6f941455af7e86fae455ea GIT binary patch literal 180 zcmXr!<>iXl;ug&S1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuSEUO;?$yI{ld)h z;>;p_m;B_?+|<01VtwcQl+lJ5#VtCTfq~&M5W@i@kmUfx#XLYFg&~R|g)xdTg(;Xplex;0O92Q95=%0y z6!i3SD+>~nvlG)(^_}#Sib{)1^a?7$3eqxjQu7jXQ>_%>!cipSPCq!#N3mn0UI zq!#(4CKlyo=A{QzmSp7T=@)=0<7A)`{p5_q0-y>5GpugA#bJ}1pHiBWYR3xl9}|#Z GVFUn%Q%v9h literal 0 HcmV?d00001 diff --git a/python3code/chapter06/mypackage/B/brust.py b/python3code/chapter06/mypackage/B/brust.py new file mode 100644 index 0000000..22e7ccd --- /dev/null +++ b/python3code/chapter06/mypackage/B/brust.py @@ -0,0 +1,6 @@ +#coding:utf-8 +''' + path: ./mypackage/B/brust.py + filename: brust.py +''' +rust = 'RUST' \ No newline at end of file diff --git a/python3code/chapter06/mypackage/__init__.py b/python3code/chapter06/mypackage/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/python3code/chapter06/mypackage/__pycache__/__init__.cpython-36.pyc b/python3code/chapter06/mypackage/__pycache__/__init__.cpython-36.pyc new file mode 100644 index 0000000000000000000000000000000000000000..bf9e02cba2a448bc9aab8a8bea768946123a55bc GIT binary patch literal 178 zcmXr!<>j*4;ug&S1dl-k3@`#24nSPY0whuxf*CX!{Z=v*frJsnuXz2?;?$yI{ld)h z;>;p_m;B_?+|<01VtwcQl+2KczG$)edBFF%UBV07W@4rvLx| literal 0 HcmV?d00001 diff --git a/python3code/chapter06/pp.py b/python3code/chapter06/pp.py new file mode 100644 index 0000000..a94deb4 --- /dev/null +++ b/python3code/chapter06/pp.py @@ -0,0 +1,14 @@ +# coding:utf-8 +''' +filename: pp.py +''' +__all__ = ['_private_variable', 'public_teacher'] + +public_variable = "Hello, I am a public variable." +_private_variable = "Hi, I am a private variable." + +def public_teacher(): + print("I am a public teacher, I am from JP.") + +def _private_teacher(): + print("I am a private teacher, I am from CN.") From e3a48e7454448a1105aad215293ed38139d5239b Mon Sep 17 00:00:00 2001 From: qiwsir Date: Tue, 28 Aug 2018 10:48:57 +0800 Subject: [PATCH 283/288] python3code --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 2d15805..979a993 100755 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ >In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) -#《跟老齐学Python:轻松入门》 +# 《跟老齐学Python:轻松入门》 本项目为《跟老齐学Python:轻松入门》一书的相关代码。此书是为初学Python的朋友而作,在各大网店有售。 @@ -18,9 +18,9 @@ 关于本QQ群的更多说明: - 加入本群,收费1元,目的是免群主审核,并且拦住广告发布人。如果对此有异议,请不要加入。 - 因为设置了上述功能,群主无法单独邀请用户加入了(这是QQ方面的规定),所以,不要让群主邀请。 - 更不要通过其它途径给群主一块钱,然后让群主想办法把你加到群里,群主表示做不到。 +- 加入本群,收费1元,目的是免群主审核,并且拦住广告发布人。如果对此有异议,请不要加入。 +- 因为设置了上述功能,群主无法单独邀请用户加入了(这是QQ方面的规定),所以,不要让群主邀请。 +- 更不要通过其它途径给群主一块钱,然后让群主想办法把你加到群里,群主表示做不到。 再次提醒:对入群收费1元,有异议者请不要加入。 @@ -28,9 +28,9 @@ 小程序名称:跟老齐学 -![](https://raw.githubusercontent.com/qiwsir/DjangoPracticeProject/master/smallprogramming.jpg) + # Python学习资源推荐: - 系列图书《跟老齐学Python:Django实战》、《跟老齐学Python:数据分析》,各大网店和书店有售 - 在线课程:[Python3入门和能力提升](https://www.cctalk.com/m/course/111302) +- 系列图书《跟老齐学Python:Django实战》、《跟老齐学Python:数据分析》,各大网店和书店有售 +- 在线课程:[Python3入门和能力提升](https://www.cctalk.com/m/course/111302) From de0fb5ee4211785456f1ac5980ad49ac3060c511 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 14 Feb 2019 14:49:00 +0800 Subject: [PATCH 284/288] video lesson code --- videolesson/arithmetic.py | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 videolesson/arithmetic.py diff --git a/videolesson/arithmetic.py b/videolesson/arithmetic.py new file mode 100644 index 0000000..b7f2ce5 --- /dev/null +++ b/videolesson/arithmetic.py @@ -0,0 +1,22 @@ +#coding:utf-8 + +''' +lesson 07-6 +filename: arithmetic.py +''' + +print('Please input two int:') +a = input('a number:') +b = input('another number:') +a = int(a) +b = int(b) + +add_result = a + b +sub_result = a - b +mul_result = a * b +div_result = a / b + +print(a, " + ", b, ' = ', add_result) +print(a, " - ", b, ' = ', sub_result) +print(a, " * ", b, ' = ', mul_result) +print(a, " / ", b, ' = ', div_result) \ No newline at end of file From de40299eef0e6fae286ea8a16d78f60d5ef61a69 Mon Sep 17 00:00:00 2001 From: qiwsir Date: Sat, 9 Mar 2019 16:03:30 +0800 Subject: [PATCH 285/288] some modified --- README.md | 8 ++------ videolesson/country.py | 12 ++++++++++++ videolesson/judge_input.py | 13 +++++++++++++ videolesson/newton.py | 12 ++++++++++++ videolesson/odd_even.py | 16 ++++++++++++++++ 5 files changed, 55 insertions(+), 6 deletions(-) create mode 100644 videolesson/country.py create mode 100644 videolesson/judge_input.py create mode 100644 videolesson/newton.py create mode 100644 videolesson/odd_even.py diff --git a/README.md b/README.md index 979a993..bb7552f 100755 --- a/README.md +++ b/README.md @@ -18,11 +18,7 @@ 关于本QQ群的更多说明: -- 加入本群,收费1元,目的是免群主审核,并且拦住广告发布人。如果对此有异议,请不要加入。 -- 因为设置了上述功能,群主无法单独邀请用户加入了(这是QQ方面的规定),所以,不要让群主邀请。 -- 更不要通过其它途径给群主一块钱,然后让群主想办法把你加到群里,群主表示做不到。 - -再次提醒:对入群收费1元,有异议者请不要加入。 +- 入群回答问题,答案是:5。 # 本书配套小程序 @@ -33,4 +29,4 @@ # Python学习资源推荐: - 系列图书《跟老齐学Python:Django实战》、《跟老齐学Python:数据分析》,各大网店和书店有售 -- 在线课程:[Python3入门和能力提升](https://www.cctalk.com/m/course/111302) +- 在线视频课程:[Python3入门和提升](https://itdiffer.com/course/47) diff --git a/videolesson/country.py b/videolesson/country.py new file mode 100644 index 0000000..2e11dfc --- /dev/null +++ b/videolesson/country.py @@ -0,0 +1,12 @@ +#coding:utf-8 + +''' +lesson 15-3 +filename: country.py +''' + +country = {"CHINA": "BEIJING", 'CANADA': "OTTAWA", 'GREECE': 'ATHENS', 'ITALY': 'ROME'} + +name = input("input the name of country:") +capital = country[name] +print(name, "-->", capital) \ No newline at end of file diff --git a/videolesson/judge_input.py b/videolesson/judge_input.py new file mode 100644 index 0000000..0c6a52f --- /dev/null +++ b/videolesson/judge_input.py @@ -0,0 +1,13 @@ +#coding:utf-8 +''' + lesson 19-03 + filename: judge_input.py +''' +input_char = input("Input something: ") +if input_char.isdigit(): + result = int(input_char) * 10 + print("You input {0}. Output is {1}".format(input_char, result)) +elif input_char.isalpha(): + print(input_char + "@python") +else: + print(input_char) \ No newline at end of file diff --git a/videolesson/newton.py b/videolesson/newton.py new file mode 100644 index 0000000..a35f0e3 --- /dev/null +++ b/videolesson/newton.py @@ -0,0 +1,12 @@ +#coding: utf-8 +''' + calculate the square root by Newton's method. + lesson 22-1 + filename: newton.py +''' +value = 23 #f(x) = x^2 - 23 +epsilon = 0.001 +result = value / 2 +while abs(result*result - value) >= epsilon: + result = result - ((result*result - value) / (2 * result)) +print("The square root of {0} is about {1}".format(value, result)) \ No newline at end of file diff --git a/videolesson/odd_even.py b/videolesson/odd_even.py new file mode 100644 index 0000000..f2f83f1 --- /dev/null +++ b/videolesson/odd_even.py @@ -0,0 +1,16 @@ +#coding:utf-8 +''' + lesson 19-04 + filename: odd_even.py +''' +lst = [1,2,3,4,5,6,7,8,9,10] +odd = [] +even = [] +for i in lst: + if i % 2 == 0: + even.append(i) + else: + odd.append(i) + +print("odd: ", odd) +print("even: ", even) \ No newline at end of file From f4b974fdd9168e400b2432cca9de31728bbb01ef Mon Sep 17 00:00:00 2001 From: qiwsir Date: Thu, 30 Apr 2020 10:41:20 +0800 Subject: [PATCH 286/288] modify readme --- README.md | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index bb7552f..b9286cf 100755 --- a/README.md +++ b/README.md @@ -8,25 +8,22 @@ # 相关资源 -## 个人网站 - -[itdiffer.com](http://www.itdiffer.com) - -## QQ群:26913719 +## 读者QQ群:26913719 说明:此QQ群是读者交流,而非作者答疑区,请特别注意。如果读者有问题,可以在群里面跟其它读者交流。作者没有答疑的义务。恕不接待任何形式的答疑。 -关于本QQ群的更多说明: - -- 入群回答问题,答案是:5。 +## 微信公众号:老齐教室 -# 本书配套小程序 +![](https://public-tuchuang.oss-cn-hangzhou.aliyuncs.com/officialaccounts_20200311104512.png) -小程序名称:跟老齐学 +## 与本书相关的其他资源: - +- 勘误与修订:https://itdiffer.com/2020/04/30/learn-python-with-laoqi/ +- 推荐相关视频课程: + - CSDN学院:[《Python零基础轻松入门》](https://edu.csdn.net/course/detail/26676) + - 网易云课堂:[《Python全栈工程师》](https://mooc.study.163.com/smartSpec/detail/1202847601.htm) +- 更多文章:[Python编程文章汇总](https://mp.weixin.qq.com/s/zkfCSuyMndWXkUashl3peg) -# Python学习资源推荐: +## 购买地址 -- 系列图书《跟老齐学Python:Django实战》、《跟老齐学Python:数据分析》,各大网店和书店有售 -- 在线视频课程:[Python3入门和提升](https://itdiffer.com/course/47) +各大电商平台有售。 \ No newline at end of file From 44c5e448f40b893aef1fa8de438a313a298d8fc5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 11 Jan 2024 08:30:51 +0800 Subject: [PATCH 287/288] Update README.md --- README.md | 22 +--------------------- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/README.md b/README.md index b9286cf..547f1ac 100755 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ ->In the begning when God created the heavens and the earth. the earth was a formless void and darkness covered the face of the deep, while a wind from God swept over the face of the waters. Then God said,"Let there be light"; and there was light. And God saw that the light was good; and God separated the light from the darkness. (GENESIS 1:1-4) +# 注意:本书已经印刷,请学习者,转到:《Python完全自学教程》中学习,这是一本开源免费的在线读物,地址:https://github.com/qiwsir/PythonBook # 《跟老齐学Python:轻松入门》 @@ -7,23 +7,3 @@ ![](./python-book1.png) # 相关资源 - -## 读者QQ群:26913719 - -说明:此QQ群是读者交流,而非作者答疑区,请特别注意。如果读者有问题,可以在群里面跟其它读者交流。作者没有答疑的义务。恕不接待任何形式的答疑。 - -## 微信公众号:老齐教室 - -![](https://public-tuchuang.oss-cn-hangzhou.aliyuncs.com/officialaccounts_20200311104512.png) - -## 与本书相关的其他资源: - -- 勘误与修订:https://itdiffer.com/2020/04/30/learn-python-with-laoqi/ -- 推荐相关视频课程: - - CSDN学院:[《Python零基础轻松入门》](https://edu.csdn.net/course/detail/26676) - - 网易云课堂:[《Python全栈工程师》](https://mooc.study.163.com/smartSpec/detail/1202847601.htm) -- 更多文章:[Python编程文章汇总](https://mp.weixin.qq.com/s/zkfCSuyMndWXkUashl3peg) - -## 购买地址 - -各大电商平台有售。 \ No newline at end of file From 635e5a974d3fc16bcc43a2b3b12232e1f3fce01d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=80=81=E9=BD=90?= Date: Thu, 11 Jan 2024 08:31:26 +0800 Subject: [PATCH 288/288] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 547f1ac..ae4e10b 100755 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# 注意:本书已经印刷,请学习者,转到:《Python完全自学教程》中学习,这是一本开源免费的在线读物,地址:https://github.com/qiwsir/PythonBook +# 注意:本书已经停止印刷,请学习者转到:《Python完全自学教程》中学习,这是一本开源免费的在线读物,地址:https://github.com/qiwsir/PythonBook # 《跟老齐学Python:轻松入门》