跳到内容

坐标

pydantic_extra_types.coordinate 模块提供了 LatitudeLongitudeCoordinate 数据类型。

纬度

基类: float

纬度值应在 -90 到 90 之间,包括 -90 和 90。

from pydantic import BaseModel
from pydantic_extra_types.coordinate import Latitude

class Location(BaseModel):
    latitude: Latitude

location = Location(latitude=41.40338)
print(location)
#> latitude=41.40338

经度

基类: float

经度值应在 -180 到 180 之间,包括 -180 和 180。

from pydantic import BaseModel

from pydantic_extra_types.coordinate import Longitude

class Location(BaseModel):
    longitude: Longitude

location = Location(longitude=2.17403)
print(location)
#> longitude=2.17403

坐标 dataclass

Coordinate(latitude: Latitude, longitude: Longitude)

基类: Representation

坐标解析纬度和经度。

您可以使用 Coordinate 数据类型来存储坐标。坐标可以使用以下格式之一定义

  1. 元组: (Latitude, Longitude)。例如: (41.40338, 2.17403)
  2. Coordinate 实例: Coordinate(latitude=Latitude, longitude=Longitude)
from pydantic import BaseModel

from pydantic_extra_types.coordinate import Coordinate

class Location(BaseModel):
    coordinate: Coordinate

location = Location(coordinate=(41.40338, 2.17403))
#> coordinate=Coordinate(latitude=41.40338, longitude=2.17403)