Python中的子函数

时间:2014-05-07 07:40:22

标签: python function

我正在用Python编写基本程序。 在程序中,有一个名为abc的数组。该数组包含以下数据: 生日和名字。

而不是使用:  ABC [1] 我想创建子功能,如: abc.name() 这将返回abc [1]

的值

如何创建这样的函数(带点)?谢谢!

2 个答案:

答案 0 :(得分:0)

你会想要使用这样的类:

class abc():

    def __init__(self, birthday, name):

        self.__birthday = birthday
        self.__name = name

    def birthday(self):
        return self.__birthday

    def name(self):
        return self.__name

现在只需创建abc

person = abc('5/04/1984', 'Nick Stone')

获得如下数据:

bday = person.birthday()
name = person.name()

答案 1 :(得分:0)

如上所述,您不能在您的值中添加这样的“函数”,如果需要使用.dot表示法,则需要创建类定义。基本示例:

class abc():

    # constructor, initializing object state 
    def __init__(self,item):
        self.item=item

    # here you define name and body of your function         
    def name(self):
        # return just second item from our "item" value (string, array, list, etc.)
        return self.item[1]

现在,您可以创建类abc的对象并将其命名为'name function':

> myData=abc('123')
> myData.name()
'2'
> myData=abc(['birth','name'])
> myData.name()
'name'