什么是内建函数

在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. FastDFS的学习与使用(大量帖子)

    http://www.oschina.net/p/fastdfs http://bbs.chinaunix.net/forum-240-1.html

  2. WCF技术剖析之十一:异步操作在WCF中的应用(下篇)

    原文:WCF技术剖析之十一:异步操作在WCF中的应用(下篇) 说完了客户端的异步服务调用(参阅WCF技术剖析之十一:异步操作在WCF中的应用(上篇)),我们在来谈谈服务端如何通过异步的方式为服务提供实 ...

  3. 在Ubuntu下编译Assimp库

    在Ubuntu下编译Assimp库 怎样在Ubuntu下编译Assimp库?这是我曾经编译成功后做的笔记,供參考. 1.去以下的站点去下载Assimp库: http://assimp.sourcefo ...

  4. asp.net2.0安全性(1)--用户角色篇(起篇)--转载来自车老师

    安全管理的解决方案在.net1.1中几乎为一片空白,对于应用程序的验证与授权大部分的工作是开发人员自己编写代码,或者是借助企业库等工具来实现,此可谓.net1.1中的一大缺憾.在.net2.0中微软为 ...

  5. Merkaartor,Marble,QGIS等等

    Merkaartor介绍 Merkaartor是Qt开发开源的OpenStreetMap(下简称osm)数据的编辑器,这里简单列出相关资源.方面基于osm数据的开发. Merkaartor支持osm地 ...

  6. 单选按钮、复选按钮——axure线框图部件库介绍

    有时候发现这做事情坚持下来是一件很不容易的,写教程也一样,不过听到很多朋友对我说 这个全部是图片的教程 对他们入门帮助很多,我就想想 在坚持坚持把基础部分先完善了! 1. 简单的问卷调查: 您的性别? ...

  7. POJ 2762推断单个联通(支撑点甚至通缩+拓扑排序)

    Going from u to v or from v to u? Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 14789 ...

  8. 自绘XP风格菜单

    这是以前写的代码,自绘XP风格的菜单,硬盘坏了后以为没了,最后写的一个软件要自定义风格,“翻箱倒柜”的终于在我可爱的古董机^_^上找到了一个应用的例子.还是把它放到Blog上来,即可共享又可作为备用 ...

  9. Qt Style Sheets Examples(QT真是有很全的文档)

    http://doc.qt.io/qt-5/stylesheet-examples.html http://doc.qt.io/qt-4.8/stylesheet.html

  10. python 调用shell命令三种方法

    #!/usr/bin/python是告诉操作系统执行这个脚本的时候,调用/usr/bin下的python解释器: #!/usr/bin/env python这种用法是为了防止操作系统用户没有将pyth ...