python处理不同的类型

时间:2013-08-30 08:24:22

标签: python types naming

我是python的新手,只有一个问题:

Python不需要声明变量类型。例如,当我们使用函数时,我们不会声明应该传入哪种类型。所以有时候,我无法确定传入参数的实际类型,或者传入无效参数。

例如,名为:run_date的参数,其类型可以是字符串或日期时间或日期。我必须从代​​码中找到它......

有没有办法解决这个问题? 我想我应该做好命名。但是如何?

我不是要检查代码中的类型。我只是在编码时对函数参数感到困惑......我总是忘记参数的类型......

2 个答案:

答案 0 :(得分:1)

Python使用所谓的“Duck Typing”,即如果它看起来像一只鸭子,它听起来像一只鸭子,你可以把它称为鸭子。

您可以使用:

  1. 参数类型检查,
  2. 参数转换,
  3. 例外&
  4. <强>文档

答案 1 :(得分:0)

嗯......欢迎来到蟒蛇世界:)。

您可以定义如下函数:

def value_type(x):
    # for type of dictionary
    if isinstance(x, dict):
        return list(set(x.values()))
    # for type of string including unicode 
    elif isinstance(x, str) or isinstance(x, unicode):
        mpla mpla...
    # for type of integer
    elif isinstance(x, int):
        mpla mpla...
    else:
        return None