Python学习(25):Python执行环境
转自 http://www.cnblogs.com/BeginMan/p/3191856.html
一、python特定的执行环境
在当前脚本继续进行
创建和管理子进程
执行外部命令或程序
执行需要输入的命令
通过网络来调用命令
执行命令来创建需要处理的输出
动态生成Python语句
导入Python模块
这些都可通过内建或外部模块实现。
二、可调用对象
调用方式:可调用对象后紧跟操作符()
4种可调用对象:函数、方法、类以及一些类的实例
1、函数
分三种不同类型的函数对象
(1)、内建函数(BIF),是Built-in Function缩写,由C/C++编写导入Python编辑器的。
(2)、用户自定义函数(UDF)
(3)、lambda函数
2、方法
有类方法,还有内建方法(BIM),如列表,字典的。
class C(object):
def foo(self):pass #定义类方法,或叫用户自定义方法(UDM)
c=C()
print type(C) #类的类别,输出<type 'type'>
print type(c) #实例的类别,输出<class '__main__.C'>
print type(C.foo) #非绑定方法的类别,输出<type 'instancemethod'>
print type(c.foo) #绑定方法的类别,输出<type 'instancemethod'>
print C.foo #非绑定方法对象,输出<unbound method C.foo>
print c.foo #绑定方法对象,输出<bound method C.foo of <__main__.C object at 0x0130D830>>
3、类
4、类的实例
通过类的__call__()特殊方法,必须在类中定义这个方法才行。
class C(object):
def __call__(self,*args):
return u'可调用实例' c = C()
print callable(c) #True
print c() #调用实例输出,"可调用实例"
三、代码对象
代码对象是编译过的Python 源代码片段,它是可执行对象。通过调用内建函数compile()可以得到代码对象。代码对象可以被 exec 命令或 eval_r()内建函数来执行。
参考:http://www.cnblogs.com/btchenguang/archive/2012/08/29/2662571.html
四、可执行对象的声明与内建函数
其他见《Python核心编程2》
Python学习(25):Python执行环境的更多相关文章
- Python学习-25.Python中的分数
在Python中,不止有浮点数(float),而且还有分数(Fraction)这个类型. 要使用分数,必须引入一个模块. import fractions 然后就可以声明一个分数了 x = fract ...
- Python之PyFrameObject动态执行环境
Python虚拟机中的执行环境 Python的虚拟机实际上是在模拟操作系统运行可执行文件的过程,首先,我们先来讲一下普通的x86的机器上,可执行文件是以一种什么方式运行的. 图1-1 图1-1所展示的 ...
- Python学习day09 - Python进阶(3)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day05 - Python基础(3) 格式化输出和基本运算符
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- python学习Day2 python 、pycharm安装及环境变量配置
复习 进制转换:二进制&十六进制转换(从左往右1248机制,每四位二进制对应一位16进制) 二进制&十进制转换 2n-1幂次方相加 十进制到二进制转化 将十进制除以2,把余数记下 ...
- python学习之简介与环境安装
[转自]http://www.cnblogs.com/wupeiqi/articles/5433925.html --Python可以应用于众多领域 如:数据分析.组件集成.网络服务.图像处理.数值计 ...
- python学习第一天_环境的搭建
Python linux环境的安装: 1.https://www.python.org/ftp/python/ 大家可以在这里下载自己所需的linux下的版本 ,这里我下载的2.6.6版本: 2.在C ...
- Python基础:27执行环境
一:可调用对象 可调用对象,是任何能通过函数操作符“()”来调用的对象.Python 有4 种可调用对象:函数,方法,类,以及一些类的实例. 1:函数 python 有 3 种不同类型的函数对象. a ...
- Python学习总结 01 配置环境
1 查看python的版本 ubuntu16.04 LTS系统下默认安装了python2.7.12 和python3.5.2, 她们在/usr/bin/下可以找到, 默认用python2.7.8 1) ...
随机推荐
- 第三百七十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapyd部署scrapy项目
第三百七十二节,Python分布式爬虫打造搜索引擎Scrapy精讲—scrapyd部署scrapy项目 scrapyd模块是专门用于部署scrapy项目的,可以部署和管理scrapy项目 下载地址:h ...
- JDBC Like子句实例
在本教程将演示如何在JDBC应用程序中,从数据库表中查询数据记录, 在查询选择记录时使用Like子句添加其他条件. 在执行以下示例之前,请确保您已经准备好以下操作: 具有数据库管理员权限,以在给定模式 ...
- C# int转string 每三位加一个逗号
; Console.WriteLine(aaaa.ToString("N0")); Console.WriteLine()); Console.WriteLine("架构 ...
- Process和Thread在指定CPU运行
最近帮朋友写了一个多线程程序,他那边一运行多线程就出错,我这边却没有任何问题,找了好久才找到解决方法,原来是CPU的问题,有朋友遇到同样的问题,可以一起参考 //进程与指定cpu绑定 SetProce ...
- MyBatis批量添加和删除
一.批量插入 二.批量删除
- 移动端控制在input里输入的值只能是数字
<input type='text' oninput="(this.v=function(){this.value=this.value.replace(/[^0-9-]+/,''); ...
- centos 离线安装Ambari
1.首先要下载它们的安装包,别尝试着在yum来下,特别慢,最好的方式是通过建立本地资源的方式来安装. http://public-repo-1.hortonworks.com/HDP/centos6/ ...
- 浮点数向偶数舍入的问题 Round-to-Even for Floating Point
Round-To-Even在于To-Up , To-Down, To-towards-Zero对比中,在一定数据量基础上,更加精准.To-Up的平均值比真实数值偏大,To-Down偏小. 例如有效 ...
- php解析mpp文件中的前置任务
获取层级的project任务 参考 启动javabridge java -jar JavaBridge.jar SERVLET_LOCAL:8089 1.读取mpp文件 $file_path = & ...
- Android开发学习笔记-显示对话框
private void ShowUpdateDialog() { Log.i("version", "shengji"); AlertDialog.Build ...