跳到内容

语言

基于 ISO 639-3ISO 639-5 的语言定义。

LanguageInfo dataclass

LanguageInfo(
    alpha2: Union[str, None], alpha3: str, name: str
)

LanguageInfo 是一个包含语言信息的数据类。

参数

名称 类型 描述 默认值
alpha2 Union[str, None]

采用 ISO 639-1 alpha-2 格式的语言代码。

必需
alpha3 str

采用 ISO 639-3 alpha-3 格式的语言代码。

必需
名称 str

语言名称。

必需

LanguageAlpha2

基类:str

LanguageAlpha2 解析采用 ISO 639-1 alpha-2 格式的语言代码。

from pydantic import BaseModel

from pydantic_extra_types.language_code import LanguageAlpha2

class Movie(BaseModel):
    audio_lang: LanguageAlpha2
    subtitles_lang: LanguageAlpha2

movie = Movie(audio_lang='de', subtitles_lang='fr')
print(movie)
#> audio_lang='de' subtitles_lang='fr'

alpha3 property

alpha3: str

采用 ISO 639-3 alpha-3 格式的语言代码。

name property

name: str

语言名称。

LanguageName

基类:str

LanguageName 解析采用 ISO 639-3 标准格式列出的语言名称。

from pydantic import BaseModel

from pydantic_extra_types.language_code import LanguageName

class Movie(BaseModel):
    audio_lang: LanguageName
    subtitles_lang: LanguageName

movie = Movie(audio_lang='Dutch', subtitles_lang='Mandarin Chinese')
print(movie)
#> audio_lang='Dutch' subtitles_lang='Mandarin Chinese'

alpha2 property

alpha2: Union[str, None]

采用 ISO 639-1 alpha-2 格式的语言代码。并非所有语言都存在。

alpha3 property

alpha3: str

采用 ISO 639-3 alpha-3 格式的语言代码。

ISO639_3

基类:str

ISO639_3 解析采用 ISO 639-3 alpha-3 格式的语言。

from pydantic import BaseModel

from pydantic_extra_types.language_code import ISO639_3

class Language(BaseModel):
    alpha_3: ISO639_3

lang = Language(alpha_3='ssr')
print(lang)
# > alpha_3='ssr'

ISO639_5

基类:str

ISO639_5 解析采用 ISO 639-5 alpha-3 格式的语言。

from pydantic import BaseModel

from pydantic_extra_types.language_code import ISO639_5

class Language(BaseModel):
    alpha_3: ISO639_5

lang = Language(alpha_3='gem')
print(lang)
# > alpha_3='gem'