最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

python通过字符串调用对象属性或方法

来源:动视网 责编:小OO 时间:2020-11-27 14:22:01
文档

python通过字符串调用对象属性或方法

有时候需要将属性或方法作为参数传入,这个时候可以通过以下几种方式用字符串调用对象属性或方法。1、eval;In [634]: def getmethod(x,char=';just for test';): ...: return eval(';str.%s';% x)(char) ...。In [635]: getmethod(';upper';)Out[635]: ';JUST FOR TEST'。2、getattr;In [650]: def getmethod2(x.char=';just for test';): ...: return getattr(char.x)() ...。
推荐度:
导读有时候需要将属性或方法作为参数传入,这个时候可以通过以下几种方式用字符串调用对象属性或方法。1、eval;In [634]: def getmethod(x,char=';just for test';): ...: return eval(';str.%s';% x)(char) ...。In [635]: getmethod(';upper';)Out[635]: ';JUST FOR TEST'。2、getattr;In [650]: def getmethod2(x.char=';just for test';): ...: return getattr(char.x)() ...。


下面为大家分享一篇python 通过字符串调用对象属性或方法的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起过来看看吧

有时候需要将属性或方法作为参数传入,这个时候可以通过以下几种方式用字符串调用对象属性或方法

1、eval

In [634]: def getmethod(x,char='just for test'):
 ...: return eval('str.%s' % x)(char)
 ...:
In [635]: getmethod('upper')
Out[635]: 'JUST FOR TEST'

2、getattr

In [650]: def getmethod2(x, char='just for test'):
 ...: return getattr(char, x)()
 ...:
In [651]: getmethod2('upper')
Out[651]: 'JUST FOR TEST'

3、利用内置库operator

In [8]: def getmethod3(x, char='just for test'):
 ...: return operator.methodcaller(x, char)(str)
 ...:
In [9]: getmethod3('upper')
Out[9]: 'JUST FOR TEST'

文档

python通过字符串调用对象属性或方法

有时候需要将属性或方法作为参数传入,这个时候可以通过以下几种方式用字符串调用对象属性或方法。1、eval;In [634]: def getmethod(x,char=';just for test';): ...: return eval(';str.%s';% x)(char) ...。In [635]: getmethod(';upper';)Out[635]: ';JUST FOR TEST'。2、getattr;In [650]: def getmethod2(x.char=';just for test';): ...: return getattr(char.x)() ...。
推荐度:
标签: 对象 字符串 属性
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top