python 通过字符串调用对象属性或方法的实例讲解


Posted in Python onApril 21, 2018

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

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 [648]: def getmethod3(x, char='just for test'):
  ...:  return operator.methodcaller(x, char)(str)
  ...:
In [649]: getmethod3('upper')
Out[649]: 'JUST FOR TEST'

以上这篇python 通过字符串调用对象属性或方法的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现类继承实例
Jul 04 Python
仅用50行Python代码实现一个简单的代理服务器
Apr 08 Python
matplotlib简介,安装和简单实例代码
Dec 26 Python
Python实现将照片变成卡通图片的方法【基于opencv】
Jan 17 Python
python实现求解列表中元素的排列和组合问题
Mar 15 Python
对python3 urllib包与http包的使用详解
May 10 Python
详解Django中间件执行顺序
Jul 16 Python
selenium + python 获取table数据的示例讲解
Oct 13 Python
pytorch forward两个参数实例
Jan 17 Python
django执行数据库查询之后实现返回的结果集转json
Mar 31 Python
有关pycharm登录github时有的时候会报错connection reset的问题
Sep 15 Python
在python中对于bool布尔值的取反操作
Dec 11 Python
python 限制函数调用次数的实例讲解
Apr 21 #Python
python装饰器-限制函数调用次数的方法(10s调用一次)
Apr 21 #Python
对Python中的@classmethod用法详解
Apr 21 #Python
python3+dlib实现人脸识别和情绪分析
Apr 21 #Python
Python通过属性手段实现只允许调用一次的示例讲解
Apr 21 #Python
使用Python和xlwt向Excel文件中写入中文的实例
Apr 21 #Python
使用pandas读取csv文件的指定列方法
Apr 21 #Python
You might like
搜索引擎技术核心揭密
2006/10/09 PHP
ThinkPHP2.0读取MSSQL提示Incorrect syntax near the keyword 'AS'的解决方法
2014/06/25 PHP
php基于Snoopy解析网页html的方法
2015/07/09 PHP
php采用session实现防止页面重复刷新
2015/12/24 PHP
利用php操作memcache缓存的基础方法示例
2017/08/02 PHP
php生成毫秒时间戳的实例讲解
2017/09/22 PHP
详解php命令注入攻击
2019/04/06 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
JTrackBar水平拖动效果
2007/07/15 Javascript
20个非常棒的Jquery实用工具 国外文章
2010/01/01 Javascript
js实现滑动到页面底部自动加载更多功能
2017/02/15 Javascript
jQuery简单实现遍历单选框的方法
2017/03/06 Javascript
vue数据双向绑定的注意点
2017/06/23 Javascript
vue2利用Bus.js如何实现非父子组件通信详解
2017/08/25 Javascript
jQuery使用bind函数实现绑定多个事件的方法
2017/10/11 jQuery
微信小程序用户自定义模版用法实例分析
2017/11/28 Javascript
Flutter部件内部状态管理小结之实现Vue的v-model功能
2019/06/11 Javascript
layer.open 获取不到表单信息的解决方法
2019/09/26 Javascript
JavaScript forEach中return失效问题解决方案
2020/06/01 Javascript
Vue时间轴 vue-light-timeline的用法说明
2020/10/29 Javascript
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
一个超级简单的python web程序
2014/09/11 Python
python实现画五角星和螺旋线的示例
2019/01/20 Python
Python完成毫秒级抢淘宝大单功能
2019/06/06 Python
selenium 安装与chromedriver安装的方法步骤
2019/06/12 Python
使用Python的datetime库处理时间(RPA流程)
2019/11/24 Python
python利用paramiko实现交换机巡检的示例
2020/09/22 Python
天猫国际进口超市直营:官方直采,一站购齐
2017/12/11 全球购物
澳大利亚一站式数码相机商店:CameraPro
2020/03/09 全球购物
Lancer Skincare官方网站:抗衰老皮肤护理
2020/11/20 全球购物
简单说下OSPF的操作过程
2014/08/13 面试题
测绘工程个人的自我评价
2013/11/10 职场文书
党员干部批评与自我批评反四风思想汇报
2014/09/21 职场文书
社区艾滋病宣传活动总结
2015/05/07 职场文书
Python 中 Shutil 模块详情
2021/11/11 Python
Vue.js中v-for指令的用法介绍
2022/03/13 Vue.js