-3

具体来说,我想将 StringType 更改为 NoneType。我知道如何使用 int() 和 str() 在 IntType 和 StringType 之间进行转换,但是我找不到针对 NoneType 的类似解决方案。除了使用 int 和 str 等内置函数之外,还有更简单的解决方案吗?

抱歉,这很模棱两可,我有一个程序将字符串'print(“check”)'输入python shell,我需要将它转换为函数。我假设因为函数具有 NoneType 类型,因此只需将字符串转换为 NoneType 即可使其可用。有任何想法吗?

eval() 非常适合我的目的 Cairnarvon,谢谢!

4

2 回答 2

3

如果要删除变量,只需将其删除。

>>> a = 10
>>> print a
10
>>> del a
>>> print a
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'a' is not defined

如果您希望您的变量为 None ,那么只需将 None 分配给它。

>>> a = 10
>>> print a
10
>>> type(a)
<type 'int'>
>>> a = None
>>> print a
None
>>> type(a)
<type 'NoneType'>

希望这可以帮助。

于 2013-05-13T00:25:12.823 回答
2

您可以简单地定义自己的函数来执行此操作:

def none(*args):
    """Converts any arguments to None."""
    return None

但这很没有意义。只需在需要时使用文字None即可。


至于您的说明,您正在寻找的可能evalast模块,尽管您应该认真考虑您希望完成的工作;eval,尤其是会给您带来比它可能解决的问题更多的问题。

于 2013-05-13T00:25:29.863 回答