小编nim*_*shr的帖子

如何通过调用__init__方法中的方法在python中引入对象的属性?

作为一个简单的例子,让我们假设我们想要创建许多Earthquake实例,其名称,原始时间和震源坐标属性来自编码为strings("Nepal 25-4-2015T11:56:26 28.14 84.71 15.0")的其他源.

class Earthquake(object):
    def __init__(self, strline):
        ....
Run Code Online (Sandbox Code Playgroud)

所以,我们必须做的是:

  1. 解析字符串以接收名称,日期,时间,纬度,经度和深度.

  2. Earthquake通过将这些值传递给初始化调用来实例化__init__.

想象一下,第一部分是通过一个简单的函数完成的:

import datetime as dt

def myfunc(strline):
    items = line.split()
    name = items[0]
    otime = dt.datetime.strptime(items[1], "%d-%m-%YT%H:%M:%S")
    lat, lon, depth = map(float, items[2:])
Run Code Online (Sandbox Code Playgroud)

现在我想使用这个类class Earthquake来创建Earthquake,每个对象具有属性的对象的方式Earthquake.name,Earthquake.otime,Earthquake.lat,Earthquake.lonEarthquake.depth.

如何调用类myfunc中的__init__方法来初始化具有上述属性的对象?

python oop

3
推荐指数
1
解决办法
88
查看次数

标签 统计

oop ×1

python ×1