什么是内建函数

在Python的手册中,名叫build-in Functions,中文可以称为内建函数。
内建函数就像dos系统的内部命令,他不依赖于外部模块,也就是说:
内建函数就是:安装好Python后就可以直接使用的函数,不需要import任何模块

内建函数列表

以Python2.7.5版本为例,其所有的内建函数如下表所示:
可以看到有80个左右的内建函数,下面挑选其中
经常被用到的一些接口加以说明

常用内建函数


bin

 此函数用于将一个整形数据转换为二进制格式的字符串(形式为“0b1001001110”)
示例:bin(127)
结果:'0b1111111'

bool

 此函数用于将一个对象转换为boolean类型数对象
示例:bool(1)
结果:True

bytearray

 此函数将一个对象(列表,字符串,迭代)转换为字节数组
示例1:bytearray('abcdef', 'utf_8')
结果:bytearray(b'abcdef')

示例2:bytearray([96, 97, 98, 99])
结果:bytearray(b'`abc')
在操作文件或通信协议时,这个bytearray函数是非常有用的。
当参数是字符串是,需要指定字符串的编码格式,所有的编码名称请参考另一篇日志。
但参数是列表或迭代时,需要注意其元素的数值必须是0~255之间

chr

 此函数将一个整数转换为字符,参数必须是0~255之间的整数
示例:chr(99)
结果:'c'

cmp

 比较两个对象,相等返回0,不等则返回非0
示例:cmp('a',chr(97))
结果:0

eval

 此函数用于执行python表达式
>>> x = 1
>>> print eval('x+1')
2

float

 此函数将字符串或数字转换为浮点数类型
>>> float('1.01')
1.01
>>> float(1)
1.0

globals

 此函数返回当前全局符号
>>> 'i' in globals()
True

hash

 此函数计算对象的哈希值,可方便的用于不同类型的数值比较
 
>>> hash(1) == hash(1.0)
True

hex

 此函数将数值对象转换为hex字符串
>>> hex(96)
'0x60'

isinstance

 此函数判断对象是否为指定的类型
>>> a = 'hello'
>>> isinstance(a, str)
True

len

 返回对象的长度,对象必须是列表,数组或迭代
>>> a = [1,2,3,4,5]
>>> len(a)
5

list

 将对象拆散为列表,如将一个字符串拆散为一个一个字母组成的列表
>>> list('abcdefg')
['a', 'b', 'c', 'd', 'e', 'f', 'g']

locals

 当前的本地符号列表
用法可参考globals

max

 获取列表中的最大值
>>> max([100,200,102,103,80])
200

min

 获取列表中的最小值
用法参考max

oct

 此函数将整数转换为8进制字符串
>>> oct(0x80)
'0200'

open

 此函数用于打开一个文件,返回一个file对象
f = open('c:\\test.txt', 'wb')

ord

 此函数返回字符的实际数值,是chr的逆运算
>>> ord('r')
114

print

 此函数用于打印字符串到文件中,默认为打印到控制台
>>> print('Hello world!')
Hello world!

range

 此函数用于产生一个范围的列表,经常被用在for语句中
 
>>> a = 0
>>> for i in range(0,101):
a = a + i

>>> print a
5050
需注意,range产生数值是指定范围的前闭后开范围,即range(a, b) 产生的列表中的元素x的范围是:   a<=x<b

raw_input

 此函数用于从标准输入设备中读取输入内容
>>> x = raw_input('Input 1 number: ')
Input 1 number:

>>> print x
5
红色的5是用户手动输入的内容

reload

 此函数用于重新加载之前已经被加载过的模块,这样可以不用退出程序但能使用已经更新的模块
import os
reload(os)
此功能可能被用在软件不间断版本更新的功能上

repr

 此函数用于将对象转换为可打印字符串
>>> x = [1,2,3,4,5]
>>> y = repr(x)
>>> type(y)
<type 'str'>
>>> print y
[1, 2, 3, 4, 5]


str

 此函数将对象转换为可以打印的字符串对象
>>> x = [1,2,3,4,'5']
>>> print(str(x))
[1, 2, 3, 4, '5']

sum

 此函数将集合对象(如列表,迭代等)进行数值求和运算
>>> x = range(0,101)
>>> sum(x)
5050

tuple

 此函数产生一个元组对象
>>> tuple('abcdef')
('a', 'b', 'c', 'd', 'e', 'f')
注意:元组(tuple)与列表(list)的区别在于元组生成后不可改,而列表可以随时增删元素

type

 此函数返回对象的类型
>>> x = tuple('abcdef')
>>> type(x)
<type 'tuple'>

unichr

 此函数类似
chr,由整数转换为对应的unicode字符
>>> unichr(97)
u'a'

xrange

 此函数用法类似range,但产生的是一个xrange对象而不是一个列表
>>> range(0,5,1)
[0, 1, 2, 3, 4]
>>> xrange(0,5,1)
xrange(5)
相比与range每次都生成所有元素对象,xrange不会一次生成所有对象,它只在使用时产生对象,这样在数值范围较大时,可以有效减小内存使用

其他的内建函数本文不做详细讲解,需要使用时再参考python帮助文档吧


Python基础 - 内建函数的更多相关文章

  1. Python基础学习笔记(五)常用字符串内建函数

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-strings.html 3. http://www.liaoxu ...

  2. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  3. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  4. python基础——map/reduce

    python基础——map/reduce Python内建了map()和reduce()函数. 如果你读过Google的那篇大名鼎鼎的论文“MapReduce: Simplified Data Pro ...

  5. Python基础:函数式编程

    一.概述 Python是一门多范式的编程语言,它同时支持过程式.面向对象和函数式的编程范式.因此,在Python中提供了很多符合 函数式编程 风格的特性和工具. 以下是对 Python中的函数式编程 ...

  6. Python基础教程【读书笔记】 - 2016/7/14

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第六波:第2章  列表和元组 [总览]  数据结构,是通过某种方式组织在一起的数据元素的集合,数据元素可以使数字或字符串 ...

  7. Python基础教程【读书笔记】 - 2016/7/7

    希望通过博客园持续的更新,分享和记录Python基础知识到高级应用的点点滴滴! 第四波:第5章  条件.循环和其他语句 [总览]  深入介绍条件语句和循环语句,随后会看到列表推导式如何扮演循环和条件语 ...

  8. Python 基础三 文件 函数

    今天回顾一下之前学的文件操作相关知识点,对于文件的操作,主要有一下几部分构成: 一.文件的基础知识 1.文件操作的基本流程 文件操作其实可以分成三大部分: 1.打开文件,获取文件句柄并赋予一个变量 2 ...

  9. Python 基础 一

    Python 基础  一 一.关于Python的介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum),这一两年在国内很流行,应用很广泛. 二.Python的基础知识(1) 1 ...

随机推荐

  1. 使用BAT方法结束进程

    @echo off taskkill /f /im GAM.exe taskkill /f /im GCL10.exe http://www.cnblogs.com/FKdelphi/p/501540 ...

  2. VMware machine里的文件

    .nvram——虚拟机BIOS或EFI配置文件. .vmdk——虚拟磁盘特性文件,是存放虚拟磁盘当前状况和上次执行快照时的状况之间的差异的快照文件. .vmsd——虚拟机快照,包含虚拟机快照信息的数据 ...

  3. boost中asio网络库多线程并发处理实现,以及asio在多线程模型中线程的调度情况和线程安全。

    1.实现多线程方法: 其实就是多个线程同时调用io_service::run for (int i = 0; i != m_nThreads; ++i)        {            boo ...

  4. h和.cpp文件的区别

    关于头文件和源文件的分别 首先,我们可以将所有东西都放在一个.cpp文件内. 然后编译器就将这个.cpp编译成.obj,obj是什么东西? 就是编译单元了.一个程序,可以由一个编译单元组成, 也可以有 ...

  5. 可执行程序的入口点在那里?(强化概念:程序真正的入口是mainCRTstartup)

    今天终于有时间来研究一下一个很大很大的工程编译成一个exe和若干dll后,程序是如果执行它的第一条指令的?操作系统以什么规则来找到应该执行的第一条指令(或说如何找到第一个入口函数的)? 我们以前写wi ...

  6. 在linux下如何编译C++程序

    一.GCC(GNU Compiler Collection)是linux下最主要的编译工具,GCC不仅功能非常强大,结构也异常灵活.它可以通过不同的前端模块来支持各种语言,如Java.Fortran. ...

  7. Web前端性能优化的14条规则

    1.减少Http请求 使用图片地图 使用CSS Sprites 合并JS和CSS文件 这个是由于浏览器对同一个host有并行下载的限制,http请求越多,总体下载速度越慢 2.使用CDN(内容发布网络 ...

  8. 网页 css

    css---- 层叠样式表(Cascading Style Sheet) 一,层叠样式表的分类 1,外部样式表:在外部定义样式表,然后在页面head里面附加该样式表 2,内嵌样式表:直接在网页head ...

  9. LEAVE LIST-PROCESSING和LEAVE TO LIST-PROCESSING事件的作用

    START-OF-SELECTION. MESSAGE '屏幕报错' TYPE 'S' DISPLAY LIKE 'E'. LEAVE LIST-PROCESSING. 这样子的话 报错会返回包选择屏 ...

  10. 利用ScktSrvr打造多功能Socket服务器

    Socket服务端编程中最重要的也是最难处理的工作便是客户请求的处理和数据的接收和发送,如果每一个Socket服务器应用程序的开发都要从头到尾处理这些事情的话,人将会很累,也会浪费大量时间.试想,如果 ...