Перегрузка и переопределение

Попробуйте это:

for name_grp, df_grp in df.groupby(["TYPE", "RESV"]):
    df1 = df_grp[['WELL', 'RESV', 'TYPE', 'X1', 'Y1', 'TD2']]
    df2 = df_grp[['WELL', 'X2', 'Y2']]
    df2.columns = ['WELL', 'X1', 'Y1'] 
    df3 = pd.concat([df1, df2], sort=True).sort_values(['WELL', 'TD2']).fillna(method='ffill')
    df3 = df3.reset_index(drop = True)[['WELL', 'RESV', 'TYPE', 'X1', 'Y1', 'TD2']]
    for i, x in df3.groupby('WELL'):
        x.to_csv(str(i) + '.csv')
101
задан Kirill Kobelev 4 September 2012 в 21:13
поделиться

3 ответа

Перегрузка

Перегрузка состоит в том, когда у Вас есть несколько методов в том же объеме с тем же именем, но различными подписями.

//Overloading
public class test
{
    public void getStuff(int id)
    {}
    public void getStuff(string name)
    {}
}

Переопределение

Переопределение является принципом, который позволяет Вам изменять функциональность метода в дочернем классе.

//Overriding
public class test
{
        public virtual void getStuff(int id)
        {
            //Get stuff default location
        }
}

public class test2 : test
{
        public override void getStuff(int id)
        {
            //base.getStuff(id);
            //or - Get stuff new location
        }
}
213
ответ дан user3885927 24 November 2019 в 04:37
поделиться
  • Перегружаясь = Несколько сигнатур методов, то же имя метода
  • Переопределение = Та же сигнатура метода (объявленный виртуальным), реализованный в sub классах

Проницательный интервьюер добился бы:

Каково различие между переопределением и затенением?

9
ответ дан Community 24 November 2019 в 04:37
поделиться

Поскольку Michael сказал:

  • Перегружаясь = Несколько сигнатур методов, то же имя метода
  • Переопределение = Та же сигнатура метода (объявленный виртуальным), реализованный в sub классах

и

  • Затенение =, Если рассматривается как DerivedClass, это использовало полученный метод, если как BaseClass это использует базовый метод.
4
ответ дан Migol 24 November 2019 в 04:37
поделиться
Другие вопросы по тегам:

Похожие вопросы: