理解为什么我们在Python中使用字符串上的方法

时间:2017-11-24 01:50:21

标签: python python-3.x

我刚刚开始学习Python,我已经到了一点,我对我们使用.upper()的原因感到有些困惑,例如print("Hello, World!".upper())。我已经阅读了类似的 stackoverflow 问题提供的一些答案,其中包括所有一般主题,“你使用符号.upper()进行方法”。

根据我的理解,方法只是属于类的函数的特例。如果是这种情况,为什么我们会在.upper()之类的简单字符串上使用.title().isalhpa()"Hello, World!"之类的内容,如果它们不属于某个类?

2 个答案:

答案 0 :(得分:1)

正如其他人所指出的那样,因为在python字符串中,我所知道的所有其他类型都是对象。字符串特别是str类的对象。您可以查看here了解更多信息。

方法通常也指向绑定到对象的函数。关于方法如何在python上运行的这个优秀的post可能会让你感兴趣。

答案 1 :(得分:1)

熟悉的好处是检查不同对象的类型和方法。 E.g。

>>> stringy = 'Hello world!'
>>> type(stringy)
str

然后获取有关字符串类型对象的信息:

>>> help(str)
class str(object)
# <A description of the class will be here>

Methods defined here:
# <various methods>
upper(...)
    S.upper() -> str

    Return a copy of S converted to uppercase.

所以我们在第一行中实际做的是创建str()类的对象:

stringy = str('Hello world!')

希望有道理:-)