使用 Uszipcode 模块在 Python 中获取位置的邮政编码


Python 的 Uszipcode 模块是一个功能强大的工具,用于在 Python 中处理美国邮政编码。此模块提供了一套全面的函数和类,用于处理邮政编码,包括搜索邮政编码、识别与邮政编码关联的位置以及计算两个邮政编码之间的距离。

在本文中,我们将详细概述 Python Uszipcode 模块及其如何用于解决各种问题。

什么是 Python Uszipcode 模块?

Python Uszipcode 模块是一个用于处理美国邮政编码的 Python 库。它旨在简化在 Python 中处理邮政编码的操作,并提供了一系列函数和类,用于搜索邮政编码、识别与邮政编码关联的位置以及计算两个邮政编码之间的距离。

该模块构建于大型的美国邮政编码信息数据库之上,该数据库包含在模块中,并用于提供有关邮政编码的准确和最新的信息。该数据库包含有关每个邮政编码位置的信息,包括城市、州以及纬度和经度坐标。

如何安装 Python Uszipcode 模块

要使用 Python Uszipcode 模块,您首先需要安装它。该模块在 PyPI(Python 包索引)上可用,因此您可以使用 pip 安装它。为此,请打开终端或命令提示符并输入以下命令:

pip install uszipcode

这将安装 Python Uszipcode 模块及其所有依赖项。安装完成后,您就可以将该模块导入到 Python 代码中并开始使用它。

导入和使用 Uszipcode 模块

要使用 Uszipcode python 模块根据不同的条件搜索邮政编码,它提供了 SearchEngine,它是其主要类之一。您可以使用以下代码片段导入 SearchEngine 类。它还提供了一个简单的示例来使用邮政编码进行搜索:

示例

from uszipcode import SearchEngine
engine = SearchEngine()
zipcode = engine.by_zipcode(43215)
print(zipcode.zipcode, zipcode.major_city)

输出

它将产生以下输出:

43215 Columbus

Uszipcode 模块中的各种搜索方法

根据您的用例,您可以使用 Uszipcode 模块搜索美国邮政编码。Uszipcode python 模块提供了以下方法,您可以使用它们进行搜索:

by_zipcode()

假设您已经拥有该地点的邮政编码,但需要了解其他一些信息,例如城市名称、人口等,您可以使用 by_zipcode() 方法。以下示例将演示它:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcode = eng.by_zipcode(85083)
print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将给出以下输出:

85083 Phoenix 18104

by_city_and_state()

顾名思义,此方法接受城市名称和州名称作为参数,以提供搜索结果。让我们看一个示例来演示它:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_city_and_state(city="Phoenix", state="arizona")
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

85003 Phoenix 9369
85004 Phoenix 4965
85006 Phoenix 25742
85007 Phoenix 14040
85008 Phoenix 56145

by_coordinates()

此方法提供在半径内包含的所有邮政编码。它接受纬度、经度和半径作为参数。以下是一个示例:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_coordinates(33.4484, -80.6589, radius=60)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

29047 Elloree 3683
29018 Bowman 3749
29030 Cameron 1967
29142 Santee 4890
29133 Rowesville 1044

by_city()

顾名思义,此方法使用城市名称作为参数,以提供有关该城市的信息。让我们查看下面的示例:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_city(city="New York")
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

10001 New York 21102
10002 New York 81410
10003 New York 56024
10004 New York 3089
10005 New York 7135

by_state()

此方法使用州名称作为参数,以提供有关该州的信息。让我们查看下面的示例:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_state(state="Ohio")
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

43001 Alexandria 2400
43003 Ashley 2917
43004 Blacklick 22727
43006 Brinkhaven 822
43009 Cable 2135

by_prefix()

我们可以找到所有以给定前缀开头的邮政编码。让我们查看下面的示例:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_prefix("35")
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

35004 Moody 10427
35005 Adamsville 7942
35006 Adger 3121
35007 Alabaster 26225
35010 Alexander City 20816

by_population()

我们可以找到所有人口在较低限制和较高限制范围内的邮政编码。限制设置为 -1 和 2147483648 之间。让我们查看下面的示例:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_population(lower=500, upper=20000)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

24151 Rocky Mount 20000
19061 Marcus Hook 19997
83835 Hayden 19990
92377 Rialto 19989
29170 West Columbia 19988

by_population_density()

我们还可以使用人口密度(即每平方英里的居民数)查找邮政编码。它还将较低限制和较高限制作为参数。以下是一个示例:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_population_density(lower=50, upper=800)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

70807 Baton Rouge 20377
15317 Canonsburg 36535
08050 Manahawkin 24285
76135 Fort Worth 20684
25139 Mount Carbon 440

by_land_area_in_sqmi()

此方法使用平方英里面积的下限和上限查找邮政编码,如下所示:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_land_area_in_sqmi(lower=50, upper=8000)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

99743 Healy 1069
97910 Jordan Valley 641
99901 Ketchikan 13508
99737 Delta Junction 5011
99701 Fairbanks 19019

by_water_area_in_sqmi()

此方法使用平方英里水域面积的下限和上限查找邮政编码,如下所示:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_water_area_in_sqmi(lower=50, upper=8000)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

99615 Kodiak 12899
99901 Ketchikan 13508
99664 Seward 4932
99686 Valdez 4005
70091 Venice 278

by_housing_units()

此方法使用特定区域内住房单元的下限和上限查找邮政编码,如下所示:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_housing_units(lower=50, upper=500)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

26208 Camden On Gauley 973
26273 Huttonsville 2041
34739 Kenansville 793
45889 Van Buren 1351
47529 Elnora 1042

by_occupied_housing_units()

此方法使用特定区域内已占用住房单元的下限和上限查找邮政编码,如下所示:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_occupied_housing_units(lower=50, upper=500)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

46730 Corunna 1381
52144 Fort Atkinson 1261
61465 New Windsor 1213
65771 Walnut Shade 1398
70645 Hackberry 1262

by_median_home_value()

此方法使用特定区域内房屋中位数价值的下限和上限查找邮政编码,如下所示:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_median_home_value(lower=500000, upper=2000000)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

24011 Roanoke 219
29482 Sullivans Island 1791
29941 Sheldon 497
33109 Miami Beach 594
59055 Melville 59

by_median_household_income()

此方法使用特定区域内家庭收入中位数的下限和上限查找邮政编码,如下所示:

示例

from uszipcode import SearchEngine
eng = SearchEngine()
zipcodes = eng.by_median_household_income(lower=5000, upper=2000000)
for zipcode in zipcodes:
   print(zipcode.zipcode, zipcode.major_city, zipcode.population)

输出

它将产生以下输出:

81335 Yellow Jacket 131
82063 Jelm 100
97028 Government Camp 217
21405 Annapolis 544
10282 New York 4783

结论

总之,USZIPCODE Python 模块是用于在 Python 中处理美国邮政编码的有用工具。它允许您在特定位置的给定半径内搜索邮政编码,检索有关特定邮政编码的详细信息,以及执行与邮政编码相关的各种其他任务。

该模块构建在 USPS 邮政编码 API 之上,该 API 提供对美国邮政编码及其关联位置数据的最新信息的访问。

凭借其广泛的功能和易于使用的界面,USZIPCODE 模块可以成为任何涉及邮政编码处理的 Python 项目的宝贵补充。无论您需要搜索邮政编码、检索有关它们的信息,还是执行任何其他与邮政编码相关的任务,USZIPCODE 模块都能满足您的需求。

更新于: 2023 年 8 月 21 日

1000+ 次查看

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告