python之把字符串形式的函数编译执行
实现效果:执行字符串形式的函数
代码如下
# name = 'aaa'
# data = [18,32,33]
# def hellocute():
# return "name %s ,age %d" %(name,data[0])
# a = hellocute()
# print(a)
namespace = {'name':'aaa','data':[18,32,33]}
code = """def hellocute():return "name %s ,age %d" %(name,data[0])"""
fun = compile(code,'<string>','exec')
exec(fun,namespace)
print(namespace)
ret = namespace['hellocute']()
print(ret)
python之把字符串形式的函数编译执行的更多相关文章
- Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助
		Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ... 
- python源码探秘:用户函数的执行过程
		脚本函数编译后如何执行?脚本编译后是pyc码,pycodeobject对象的串行化.import时是对pyc文件反系列化.函数编译后会生成函数对象,函数对象的TP_call对应的是function_c ... 
- python中的字符串的种种函数
		1.连接list:为了将任意包含字符串的 list 连接成单个字符串,可以使用字符串对象的 join 方法. join 只能用于元素是字符串的 list:它不进行任何的强制类型转换.连接一个存在一个或 ... 
- python之以字符串形式导入模块
		示例 调用方法 class CorsMiddleware: def process(self): print('from auth.cors.CorsMiddleware.process') cors ... 
- python一个文件里面多个函数同时执行(多进程的方法,并发)
		#coding=utf-8 import timefrom selenium import webdriverimport threading def fun1(a): print a def fun ... 
- Python学习总结17:exec和eval执行求值字符串
		有些时候可能会需要动态地创造Python代码,然后将其作为语句执行或作为表达式计算. 1. exec >>>exec "print 'Hello, world!'" ... 
- python之commands和subprocess入门介绍(可执行shell命令的模块)
		一.commands模块 1.介绍 当我们使用Python进行编码的时候,但是又想运行一些shell命令,去创建文件夹.移动文件等等操作时,我们可以使用一些Python库去执行shell命令. com ... 
- divmod(a,b)函数是实现a除以b,然后返回商与余数的元组、eval可以执行一个字符串形式的表达式、exec语句用来执行储存在字符串或文件中的Python语句
		#!/usr/bin/env python a = 10/3 print(a) #divmod计算商与余数 r = divmod(10001,20) print(r) #eval可以执行一个字符串形式 ... 
- Python列表、元组、字典和字符串的常用函数
		Python列表.元组.字典和字符串的常用函数 一.列表方法 1.ls.extend(object) 向列表ls中插入object中的每个元素,object可以是字符串,元组和列表(字符串“abc”中 ... 
随机推荐
- 把ajax包装成promise的形式(3)
			概述 为了体验promise的原理,我打算自己把ajax包装成promise的形式.主要希望实现下列功能: // 1.使用success和error进行链式调用,并且可以在后面加上无限个 promis ... 
- odoo开发笔记--from视图隐藏顶部&tree视图保留
			场景描述: 开发过程中,有时候我们需要去除odoo自带的一些样式, 比如,form视图,要集成自定义的界面时,就希望把顶部的服务动作 和 分页按钮 隐藏掉. 处理方式: 分两种情况: 1. 保留顶部区 ... 
- java多线程(1)---线程创建、start、run
			线程创建.start.run 一.创建线程方式 java创建线程的方式,主要有三种:类Thread.接口Runnable.接口Callable. 1.Thread和Runnable进行比较 他们之间的 ... 
- 西安活动 | 9月15号 "拥抱开源, 又见.NET" 线下交流活动
			随着.NET Core的发布和开源,.NET又重新回到了人们的视野.除了开源.跨平台.高性能以及优秀的语言特性,越来越多的第三方开源库也出现在了github上——包括ML.NET机器学习.Xamari ... 
- 一次Linux自动化部署尝试
			最近做一个项目临近测试,购买的是阿里云的服务器,每次部署都是手动打包war,然后上传到服务器,然后修改配置文件,不仅繁琐,而且费时,就思索着找一个一键式的部署方式,今天终于腾出时间来做这件事,记录一下 ... 
- 使用Laya引擎开发微信小游戏(上)
			本文由云+社区发表 使用一个简单的游戏开发示例,由浅入深,介绍了如何用Laya引擎开发微信小游戏. 作者:马晓东,腾讯前端高级工程师. 微信小游戏的推出也快一年时间了,在IEG的游戏运营活动中,也出现 ... 
- kubernetes 安装kong、kong-ingress-controlor
			一.关于kong的详细内容这里不再赘述,可以查看官网. kong升级到1.0以后功能越来越完善,并切新版本的kong可以作为service-mesh使用,并可以将其作为kubernetes的ingre ... 
- 如何像Python高手(Pythonista)一样编程
			最近在网上看到一篇介绍Pythonic编程的文章:Code Like a Pythonista: Idiomatic Python,其实作者在2006的PyCon会议后就写了这篇文章,写这篇文章的主要 ... 
- 关于 Uboot 中有趣的 0xdeadbeef 填充
			在 Uboot 的 Start.S 中存在以下源码: .globl _start _start: b start_code ldr pc, _undefined_instruction ldr pc, ... 
- Linux使用mailx发送邮件--技术流ken
			前言 最近想要监控系统服务运行情况并实现自动发送邮件报警,zabbix虽然也可以实现这样的功能,但是这里使用一个非常简单的办法就可以实现.需要安装mailx工具,mailx是一个小型的邮件发送程序 ... 
