口译员:Python内置函数未定义吗?

回复

我正在研究Python的基础知识,并测试了解释器中的一些内置函数。我正在查看的文档正在谈论Python 3 ...我正在使用Python 2.7.3。

>>> x = '32456'
>>> x
'32456'
>>> isalpha(x)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'isalpha' is not defined

我做了一些研究,似乎并不仅isalpha()限于Python3。sin(3.3)即使这样做,我也无法使用import math

那么,为什么我会看到一个错误?为了使这些功能正常工作,我还需要导入其他模块吗?

达米安·耶里克(Damian Yerrick)

isalpha()不是函数,而是str类型的方法如果需要,可以将其提取为未绑定的方法,并以函数名称命名:

>>> "hello".isalpha()
True
>>> "31337".isalpha()
False
>>> isalpha = str.isalpha
>>> isalpha("hello")
True
>>> isalpha("31337")
False

导入模块中的功能是该模块的成员。要将函数拉入主名称空间,请使用以下from语句:

>>> import math
>>> math.sin(3.3)
-0.1577456941432482
>>> from math import cos
>>> cos(3.3)
-0.9874797699088649

现在,为什么Python会这样工作?无论是math模块和logging模块有一个调用的函数log(),但他们做的非常不同的事情。

>>> import math, logging
>>> help(math.log)

log(...)
    log(x[, base])

    Return the logarithm of x to the given base.
    If the base not specified, returns the natural logarithm (base e) of x.

>>> help(logging.log)

log(level, msg, *args, **kwargs)
    Log 'msg % args' with the integer severity 'level' on the root logger. If
    the logger has no handlers, call basicConfig() to add a console handler
    with a pre-defined format.

如果所有导入的符号都像您执行操作时那样直接进入主命名空间from math import *,则程序将无法使用这两个模块的log()功能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试将CPS应用于口译员

来自分类Dev

我需要学习什么来构建口译员?

来自分类Dev

爱好Prolog口译员应该瞄准的现代流行标准Prolog是什么?

来自分类Dev

可以扩展免费的monad口译员吗?

来自分类Dev

口译员在翻译语言时应如何“工作”?

来自分类Dev

用Restangulars扩展函数添加的函数未定义吗?

来自分类Dev

我什么时候要使用免费的Monad +口译员模式?

来自分类Dev

常规Lua口译员vs LuaJIT口译员?

来自分类Dev

阅读SICP时使用什么口译员?

来自分类Dev

python口译员的.py和.txt有什么区别?

来自分类Dev

通过免费Monad和Coproduct进行口译员自动选择

来自分类Dev

口译员

来自分类Dev

Perl根据shebang行派遣到其他口译员吗?

来自分类Dev

在OCaml中编写口译员

来自分类Dev

麻省理工学院计划在口译员中使用特殊字符

来自分类Dev

Flake8抱怨内置函数的“未定义变量”

来自分类Dev

在Haskell中为命令式语言编写口译员

来自分类Dev

函数未定义(Selenium / python)

来自分类Dev

如何制作功能齐全的Brainf * ck口译员?

来自分类Dev

与计划口译员打交道的困难

来自分类Dev

口译员在翻译语言时应如何“工作”?

来自分类Dev

PyDev内容辅助:“找到的口译员位置不存在。”

来自分类Dev

常规Lua口译员vs LuaJIT口译员?

来自分类Dev

口译员的最佳优化

来自分类Dev

口译员

来自分类Dev

在Haskell练习CIS194中实施口译员

来自分类Dev

Python,错误:“未定义函数”,

来自分类Dev

无法访问Zeppelin中的口译员设置

来自分类Dev

Python 函数未定义