社区
脚本语言
帖子详情
急问:python中问题
hft19850423
2009-04-18 10:16:28
请问如何将从xml解析出的函数名(字符串类型)作为函数存入到tuple类型变量中,谢谢!
例如:
a="fun1" #fun1是我定义的一个函数
...全文
243
15
打赏
收藏
急问:python中问题
请问如何将从xml解析出的函数名(字符串类型)作为函数存入到tuple类型变量中,谢谢! 例如: a="fun1" #fun1是我定义的一个函数
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
15 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kiuyongfa218
2009-04-28
打赏
举报
回复
使用反射机制,globals或是locals,通过定义这个命名空间,反射到相应的函数。
globals()['fun1']
或
locals()['fun1']
kiuyongfa218
2009-04-23
打赏
举报
回复
同意7楼的哥们,用locals或globals将表示函数的字符串映射为函数名字,使用起来很方便,特别是在需要动态声明变量,并动态使用时,很方便。
CDSoftwareWj
2009-04-23
打赏
举报
回复
同意9楼 嘿嘿
不得闲
2009-04-21
打赏
举报
回复
使用lxml来处理xml的分析很容易的哦
sharp_future
2009-04-21
打赏
举报
回复
def ppt(request):
pc = Home.objects.get(id=1).ppt_count
ppt = Ppt.objects.all()[:pc]
return render_to_response('ppt.xml', {'ppt':ppt,})
自己调用
DDGG
2009-04-20
打赏
举报
回复
上面如果要让b成为一个tuple,需要在行末括号前加个逗号,遗漏了呵呵。
DDGG
2009-04-20
打赏
举报
回复
def fun1(s):
print "fun1(%s) ..." % s
a='fun1'
b= (locals()[a])
print b
b("1234")
---------------
<function fun1 at 0x00A56D30>
fun1(1234) ...
chg_lele
2009-04-19
打赏
举报
回复
没太理解清你的想法,不过我按照自己理解的给你提供点思路。
你解析出func1这个字符串,但想存在字典中的是他的函数,是这个意思么?
如果是这样的话,可以先定义一个字典,类似于:
{"func1": func1,} #func1为函数所生成的对象,之后在解析XML后,在稍微转换一下
[Quote=引用 6 楼 hft19850423 的回复:]
其实就是这样的
这是xml文件
<?xml version="1.0" encoding="UTF-8"?>
<rulelist>
<rule>
<key>asdf </key>
<hook>func1 </hook>
<level>4 </level>
<warning>this is warning </warning>
<suggestion>Consider using another </suggestion>
<category>buffer </category>
<url> </url>
<other>
<a>12 </a>
<b>23 </b>
</other>
</rul…
[/Quote]
hft19850423
2009-04-19
打赏
举报
回复
补充上贴:
func1是自己定义的函数,level, a, b标签里都是整数类型
url和other标签里可能为空
hft19850423
2009-04-19
打赏
举报
回复
其实就是这样的
这是xml文件
<?xml version="1.0" encoding="UTF-8"?>
<rulelist>
<rule>
<key>asdf</key>
<hook>func1</hook>
<level>4</level>
<warning>this is warning</warning>
<suggestion>Consider using another</suggestion>
<category>buffer</category>
<url></url>
<other>
<a>12</a>
<b>23</b>
</other>
</rule>
</rulelist>
需要解析成下面的格式
c_dict={"asdf":(func1, 4, "this is warning", "Consider using another", "buffer", "", {'a':12, 'b':23}}
请大家帮帮忙,小弟刚开始学python,时间有点急!谢谢
duzif
2009-04-18
打赏
举报
回复
不太明白你的意思,是问怎么实现动态调用?用getattr
比如使用list对象的append方法你可以这样:
getattr(list, 'append')('hello')
guzl86
2009-04-18
打赏
举报
回复
学习
hft19850423
2009-04-18
打赏
举报
回复
我是想作为函数对象存入一个tuple中,想用的时候直接取用即可。
例如:
def fun1()
从xml里面解析出来a='fun1'
b是一个tuple类型的变量
想达到效果是b(fun1,)
请问大家该怎样实现?谢谢啦
lixq2000
2009-04-18
打赏
举报
回复
路过学习
iambic
2009-04-18
打赏
举报
回复
首先要保证把函数都写在一个module里(非必要,但是推荐)。然后import这个module,然后获得函数:
func = getattr(module, func_name)
python
入门灵魂5问–
python
学习路线,
python
教程,
python
学哪些,
python
怎么学,
python
学到什么程度
对于刚接触
python
编程或者想学习
python
自动化的人来说,基本都会有以下
python
入门灵魂5问–
python
学习路线,
python
教程,
python
学哪些,
python
怎么学,
python
学到什么程度?,需要学习哪些内容才能征服
python
这条...
零基础
Python
入门三连问:
Python
可以干什么?
Python
如何兼职接单?如何快速入门
Python
?
Python
因为其优越的特性广泛应用于 Web 开发、网络爬虫、数据分析、人工...对于学习
Python
语言,很多人都有一些
问题
和疑惑: 学习
Python
可以干什么?
Python
如何兼职接单? 如何快速入门
Python
? 一,学习
百倍加速:
Python
量化策略的算法性能提升指南
随着用户越来越多,
Python
语言的性能
问题
也就逐渐成为整个社区关注的重点,经常遇到新手问:
Python
写的量化交易程序是不是很慢啊? 在他们心
中
,
Python
估计是这个样子: (即使作为破旧自行车,我也深表怀疑这辆...
猫头虎分享:
Python
库 Twisted 的简介、安装、用法详解入门教程
今天猫头虎要和大家聊聊一个
Python
里非常强大、...很多粉丝都问过猫哥:如何在
Python
中
处理复杂的异步网络请求?Twisted 就是答案之一。今天这篇文章会深入讲解它的安装、基本用法,并分享一些常见
问题
的解决方法。
猫头虎分享:
Python
库 Invoke 的简介、下载、安装、用法详解入门教程
Invoke 是一个用于简化任务自动化的
Python
库,特别适合日常开发
中
需要频繁执行脚本、管理服务、打包项目等任务的场景。本文将从以下几个方面展开讨论: Invoke 是什么? 安装与环境配置 如何编写任务文件及常
脚本语言
37,741
社区成员
34,213
社区内容
发帖
与我相关
我的任务
脚本语言
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
复制链接
扫一扫
分享
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
试试用AI创作助手写篇文章吧
+ 用AI写文章