C 通過屬性名字串獲取 設定物件屬性值

2022-02-10 22:21:03 字數 1437 閱讀 9026

目錄#獲取物件的所有屬性名稱及型別

#判斷物件是否包含某個屬性

0、定義乙個類

public class user

public string name

public string age

}

1、通過屬性名(字串)獲取物件屬性值
user u = new user();

u.name = "lily";

var propname = "name";

var propnameval = u.gettype().getproperty(propname).getvalue(u, null);

console.writeline(propnameval);// "lily"

2、通過屬性名(字串)設定物件屬性值
user u = new user();

u.name = "lily";

var propname = "name";

var newval = "meimei";

u.gettype().getproperty(propname).setvalue(u, newval);

console.writeline(propnameval);// "meimei"

user u = new user();

foreach (var item in u.gettype().getproperties())

,proptype:");

}// propname: id,proptype: int32

// propname:name,proptype: string

// propname:age,proptype: string

foreach (var item in typeof(user).getproperties())

,proptype:");

}// propname: id,proptype: int32

// propname:name,proptype: string

// propname:age,proptype: string

static void main(string args)

public static bool containproperty( object instance, string propertyname)

return false;

}

public static class extendlibrary

return false;

}}

static void main(string args)

python通過字串獲取物件的屬性

有時候需要通過配置檔案的字串來獲取某個物件的屬性。舉個例子,假設在配置檔案中可以指定資料集名稱dataset name cococaptions 需要使用torchvision提供的資料集,但是其提供的資料集很多,如 lsun lsunclass fakedata cococaptions coco...

通過同名字串來呼叫函式

相信使用python的各位童鞋,總會有這樣的需求 通過乙個同名的字串來呼叫乙個函式。其他的語言是如何實現,不太清楚。但是python提供乙個強大的內建函式getattr 可以實現這樣的功能。getattr 的函式原型為 getattr object,str name 其返回物件object中名字為s...

Python物件屬性的獲取和設定 通過修飾器

提供setter之前必須提供getter class person def init self,name,age self.name name self.age age 這個property裝飾器用來將get方法轉化為物件的屬性 新增了property可以像調屬性一樣調方法 property def...