1.Python内置函数

2.Python内置函数举例

2.1 数学运算

abs,计算绝对值;

  1. >>> abs(-1)
  2. 1
  3. >>> abs(3)
  4. 3

round,四舍五入;

  1. >>> round(2.9)
  2. 3.0
  3. >>> round(2.45)
  4. 2.0
  5. >>> round(-1.2)
  6. -1.0
  7. >>> round(-1.6)
  8. -2.0

pow,计算幂;

  1. >>> pow(2,3)#2**3
  2. 8
  3. >>> pow(2,3,5)#2**3%5
  4. 3

cmp,比较两个数大小,返回0,表示相等,返回-1;表示左边数值小于右边数值;返回1,表示左边数值大于右边数值;

  1. >>> cmp(2.3,2.3)
  2. 0
  3. >>> cmp(2.3,2.4)
  4. -1
  5. >>> cmp(2.3,2.2)
  6. 1

divmod,返回除法的结果和余数;

  1. >>> divmod(9,4)
  2. (2, 1)
  3. >>> divmod(9,3)
  4. (3, 0)

max,求最大值;

  1. >>> max([1,2,3,-1,0])
  2. 3

min,求最小值;

  1. >>> min([1,2,3,-1,0])
  2. -1

sum,求和;

  1. >>> sum([1,2,3,4,5])
  2. 15

2.2 类型转换

int,转换为整数,integer;

  1. >>> int("32")
  2. 32
  3. >>> int("-2")
  4. -2
  5. >>> int("-1.2")
  6. Traceback (most recent call last):
  7. File "<input>", line 1, in <module>
  8. int("-1.2")
  9. ValueError: invalid literal for int() with base 10: '-1.2'

float,转换为浮点型,float;

  1. >>> float("-1.2")
  2. -1.2
  3. >>> float("-1.20")
  4. -1.2
  5. >>> float("-0.3")
  6. -0.3
  7. >>> float("1")
  8. 1.0

long,转换为长整型,long integer;

  1. >>> long("1234567890")
  2. 1234567890L

str,转换为字符串类型,string;

  1. >>> str(123)
  2. '123'

complex,转换为复数类型;

  1. >>> complex(3,2)
  2. (3+2j)

ord,转换为字符对应的数值;

  1. >>> ord('a')
  2. 97

chr,转换为字符对应的数值;

  1. >>> chr(97)
  2. 'a'

unichr,转换为数值对应的unicode字符;

  1. >>> unichr(97)
  2. u'a'

bool,转换为相应的真假值;

  1. >>> bool(0)
  2. False
  3. >>> bool(1)
  4. True

bin,返回一个字符串,表示一个数值的二进制数;

  1. >>> bin(31)
  2. '0b11111'

hex,返回一个字符串,表示一个一个数值的十六进制数;

  1. >>> hex(31)
  2. '0x1f'

oct,返回一个字符串,表示一个数值的八进制数;

  1. >>> oct(31)
  2. '037'

list,转换为列表;

  1. >>> list((1,2,3,4))
  2. [1, 2, 3, 4]

tuple,转换为定值表;

  1. >>> tuple([1,2,3,4])
  2. (1, 2, 3, 4)

slice,构建下标对象;

  1. >>> a = [1,2,3,4,5]
  2. >>> slices = slice(0,4,2)
  3. >>> a[slices]
  4. [1, 3]

dict,构建词典;

  1. >>> dict(a=1,b=[1,2],c='hello')
  2. {'a': 1, 'c': 'hello', 'b': [1, 2]}

2.3 序列操作

all,所有元素都相当与True;

  1. >>> a = range(0,4)
  2. >>> b = range(1,4)
  3. >>> a
  4. [0, 1, 2, 3]
  5. >>> b
  6. [1, 2, 3]
  7. >>> all(a)
  8. False
  9. >>> all(b)
  10. True

any,是否有任意一个元素相当于True;

  1. >>> a = [0]
  2. >>> b = range(0,4)
  3. >>> a
  4. [0]
  5. >>> b
  6. [0, 1, 2, 3]
  7. >>> any(a)
  8. False
  9. >>> any(b)
  10. True

sorted,返回排序后的序列,默认是递增序列,如果指定reverse为True,则返回递减序列;

  1. >>> a = [1,4,3,2]
  2. >>> sorted(a)
  3. [1, 2, 3, 4]
  4. >>> sorted(a,reverse=False)
  5. [1, 2, 3, 4]
  6. >>> sorted(a,reverse=True)
  7. [4, 3, 2, 1]

reversed,返回反序的序列;

  1. >>> a = [1,4,3,2]
  2. >>> b = [ele for ele in reversed(a)]
  3. >>> b
  4. [2, 3, 4, 1]

2.4 类,对象,属性

hasattr,检查对象是否拥有某个属性;

getattr,返回某属性;

setattr,将对象中的属性设置为新的属性;

delattr,删除对象中的属性;

isinstance,判断对象是否为类生成的对象;

issubclass,判断类是否为某类的子类;

  1. class A(object):
  2. def __init__(self):
  3. # 定义属性value
  4. self.value = [2,3,0]
  5. # 定义属性min,为built-in中的min函数
  6. self.min = min
  7. def getValue(self):
  8. return self.value
  9. def minValue(self):
  10. return self.min(self.value)
  11. # 定义对象Aobject
  12. Aobject = A()
  13. # 获取Aobject所有的属性
  14. print dir(Aobject)
  15. # ['__class__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'getValue', 'min', 'minValue', 'value']
  16. # 判断Aobject是否有value属性
  17. print hasattr(Aobject,"value")
  18. # True
  19. # 获取Aobject的vallue属性
  20. print getattr(Aobject,"value")
  21. # [2, 3, 0]
  22. # 将Aobject的min属性修改为max
  23. setattr(Aobject,"min",max)
  24. # 调用minValue,将会返回列表的最大值
  25. print Aobject.minValue()
  26. # 3
  27. # 删除Aobject的value属性
  28. delattr(Aobject,"value")
  29. # 判断Aobject是否有value属性
  30. print hasattr(Aobject,"value")
  31. # False
  32. # 判断Aobject是否为类A的实例
  33. print isinstance(Aobject,A)
  34. # True
  35. # 判断A是否为object的子类
  36. print issubclass(A,object)
  37. # True

2.5 编译,执行

repr,返回对象的字符串表达式;

  1. class A(object):
  2. def __init__(self):
  3. # 定义属性value
  4. self.value = [2,3,0]
  5. # 定义属性min,为built-in中的min函数
  6. self.min = min
  7. def getValue(self):
  8. return self.value
  9. def minValue(self):
  10. return self.min(self.value)
  11. # 定义对象Aobject
  12. Aobject = A()
  13. b = repr(Aobject)
  14. print b

compile,编译字符串成为code对象;

  1. testCode = compile("for i in range(10): print i,","",'exec')
  2. exec testCode
  3. print ""
  4. testCode2 = compile("3 * 4 + 5",'','eval')
  5. print eval(testCode2)

eval,解释字符串表达式,参数也可以是compile()返回的code对象;

  1. >>> eval("1+3")
  2. 4

exec,解释并执行字符串,参数也可以是compile()返回的code对象;

  1. >>> exec("print ('hello world')")
  2. hello world

2.6 其它

input,等待输入;

raw_input,等待输入;

  1. >>> input("please input:")
  2. please input:"sting"
  3. 'sting'
  4. >>> raw_input("please input:")
  5. please input:string
  6. u'string'

raw_input()直接读取控制台的输入(任何类型的的输入它都可以接收);

input(),希望能够读取一个合法的python表达式,即你输入字符串的时候,必须使用引号将它括起来,否则会引发一个SyntaxError。

input()本质上还是使用raw_input()函数来实现,只是调用完raw_input()之后,在调用eval()函数,所以,你甚至可以将表达式作为input()的参数,并且它会计算表达式的值并返回它。

除非对input()有特别需要,否则一般情况下我们都是推荐使用raw_input()来与用户交互。

例如,

  1. >>> raw_input("please:")
  2. please:1+2
  3. '1+2'
  4. >>> input("please:")
  5. please:1+2
  6. 3
  7. >>> raw_input("please:")
  8. please:'a'
  9. "'a'"
  10. >>> input("please:")
  11. please:'a'
  12. 'a'
  13. >>> raw_input("please:")
  14. please:
  15. ''
  16. >>> input("please:")
  17. please:
  18. Traceback (most recent call last):
  19. File "<input>", line 1, in <module>
  20. File "<string>", line 0
  21. ^
  22. SyntaxError: unexpected EOF while parsing

globals,返回全局命名空间,比如全局变量名,全局函数名;

locals,返回局部命名空间;

3.Reference

2. Built-in Functions

python函数: 内置函数

Python标准模块--built-ins函数的更多相关文章

  1. Python标准模块--threading

    1 模块简介 threading模块在Python1.5.2中首次引入,是低级thread模块的一个增强版.threading模块让线程使用起来更加容易,允许程序同一时间运行多个操作. 不过请注意,P ...

  2. Python标准模块--logging

    1 logging模块简介 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设置不同 ...

  3. Python标准模块--importlib

    作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 1 模块简介 Python提供了importlib包作为标准库的一 ...

  4. Thread类的其他方法,同步锁,死锁与递归锁,信号量,事件,条件,定时器,队列,Python标准模块--concurrent.futures

    参考博客: https://www.cnblogs.com/xiao987334176/p/9046028.html 线程简述 什么是线程?线程是cpu调度的最小单位进程是资源分配的最小单位 进程和线 ...

  5. python 全栈开发,Day42(Thread类的其他方法,同步锁,死锁与递归锁,信号量,事件,条件,定时器,队列,Python标准模块--concurrent.futures)

    昨日内容回顾 线程什么是线程?线程是cpu调度的最小单位进程是资源分配的最小单位 进程和线程是什么关系? 线程是在进程中的 一个执行单位 多进程 本质上开启的这个进程里就有一个线程 多线程 单纯的在当 ...

  6. 【转】Python标准模块--importlib

    [转]Python标准模块--importlib 作者:zhbzz2007 出处:http://www.cnblogs.com/zhbzz2007 欢迎转载,也请保留这段声明.谢谢! 1 模块简介 P ...

  7. Python标准模块--logging(转载)

    转载地址:http://www.cnblogs.com/zhbzz2007/p/5943685.html#undefined Python标准模块--logging 1 logging模块简介 log ...

  8. python全栈开发,Day42(Thread类的其他方法,同步锁,死锁与递归锁,信号量,事件,条件,定时器,队列,Python标准模块--concurrent.futures)

    昨日内容回顾 线程 什么是线程? 线程是cpu调度的最小单位 进程是资源分配的最小单位 进程和线程是什么关系? 线程是在进程中的一个执行单位 多进程 本质上开启的这个进程里就有一个线程 多线程 单纯的 ...

  9. Python标准模块--itertools

    1 模块简介 Python提供了itertools模块,可以创建属于自己的迭代器.itertools提供的工具快速并且节约内存.开发者可以使用这些工具创建属于自己特定的迭代器,这些特定的迭代器可以用于 ...

  10. python标准模块(一)

    本文会涉及到的模块: time datetime sys os random re hashlib 模块,用若干代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能 ...

随机推荐

  1. SQL Server on Linux 理由浅析

    SQL Server on Linux 理由浅析 今天的爆炸性新闻<SQL Server on Linux>基本上在各大科技媒体上刷屏了 大家看到这个新闻都觉得非常震精,而美股,今天微软开 ...

  2. 如何在高并发环境下设计出无锁的数据库操作(Java版本)

    一个在线2k的游戏,每秒钟并发都吓死人.传统的hibernate直接插库基本上是不可行的.我就一步步推导出一个无锁的数据库操作. 1. 并发中如何无锁. 一个很简单的思路,把并发转化成为单线程.Jav ...

  3. css实现单行,多行文本溢出显示省略号……

    1.单行文本溢出显示省略号我们可以直接用text-overflow: ellipsis 实现方法: <style> .div_text{width: 300px; padding:10px ...

  4. npm package.json属性详解

    概述 本文档是自己看官方文档的理解+翻译,内容是package.json配置里边的属性含义.package.json必须是一个严格的json文件,而不仅仅是js里边的一个对象.其中很多属性可以通过np ...

  5. 一个诡异的COOKIE问题

    今天下午,发现本地的测试环境突然跑不动了,thinkphp直接跑到异常页面,按照正常的排错思路,直接看thinkphp的log 有一条 [ error ] [2]setcookie() expects ...

  6. ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存

    ASP.Net MVC4+Memcached+CodeFirst实现分布式缓存 part 1:给我点时间,允许我感慨一下2016年 正好有时间,总结一下最近使用的一些技术,也算是为2016年画上一个完 ...

  7. FullCalendar日历插件说明文档

    FullCalendar提供了丰富的属性设置和方法调用,开发者可以根据FullCalendar提供的API快速完成一个日历日程的开发,本文将FullCalendar的常用属性和方法.回调函数等整理成中 ...

  8. javascript有用小功能总结(未完待续)

    1)javascript让页面标题滚动效果 代码如下: <title>您好,欢迎访问我的博客</title> <script type="text/javasc ...

  9. OpenDigg前端开源项目周报1219

    由OpenDigg 出品的前端开源项目周报第二期来啦.我们的前端开源周报集合了OpenDigg一周来新收录的优质的前端开发方面的开源项目,方便前端开发人员便捷的找到自己需要的项目工具等.react-f ...

  10. Atitit.研发团队与公司绩效管理的原理概论的attilax总结

    Atitit.研发团队与公司绩效管理的原理概论的attilax总结 1. 四个理念 1 1.1. 绩效管理的三个目的.四个环节.五个关键2 1.2. 绩效目标smart2 2. 考核对象2 3. 绩效 ...