如何将racket中的definetype转换为python

2024-09-28 23:37:20 发布

您现在位置:Python中文网/ 问答频道 /正文

在球拍上

#lang plai
(define-type human
     [European  (age number?)
                (gender string?)]
     [American (age number?)
               (gender string?)]
     [Asian (age number?)
            (gender string?)])

(define h1 (American 35 "male"))
(American? h1)
(American-age h1)
(human? h1)

结果:

#t
35
#t

但是,我想用python实现这个类型定义。 我不知道如何预先定义类型

例如在Python中

a = "35, male, American"
def test(p):
     ~~~
     ~~~
     return x   # x is only human type

print(test(a))

我想要的结果是:

American 35 "male"

如何仅转换人类类型

上课


Tags: test类型numberlangagestringtypegender