python 内置函数

1.abs()

   作用:函数返回数字的绝对值。

   实例:

abs(-45) :  45
abs(100.12) :  100.12
abs(119L) :  119

2.all()

    作用:用于判断给定的可迭代参数 iterable 中的所有元素是否都为 TRUE,如果是返回 True,否则返回 False。

元素除了是 0、空、None、False 外都算 True。

    实例:

>>> all(['a', 'b', 'c', 'd'])  # 列表list,元素都不为空或0
True
>>> all(['a', 'b', '', 'd'])   # 列表list,存在一个为空的元素
False
>>> all([0, 1,2, 3])          # 列表list,存在一个为0的元素
False
>>> all(('a', 'b', 'c', 'd'))  # 元组tuple,元素都不为空或0
True
>>> all(('a', 'b', '', 'd'))   # 元组tuple,存在一个为空的元素
False
>>> all((0, 1, 2, 3))          # 元组tuple,存在一个为0的元素
False
>>> all([])             # 空列表
True
>>> all(())             # 空元组
True

3.any()

    作用:用于判断给定的可迭代参数 iterable 是否全部为 False,则返回 False,如果有一个为 True,则返回 True。

元素除了是 0、空、FALSE 外都算 TRUE。        **************      其和all()函数相反     *************。

    实例:

>>>any(['a', 'b', 'c', 'd'])  # 列表list,元素都不为空或0
True
>>> any(['a', 'b', '', 'd'])   # 列表list,存在一个为空的元素
True
>>> any([0, '', False])        # 列表list,元素全为0,'',false
False
>>> any(('a', 'b', 'c', 'd'))  # 元组tuple,元素都不为空或0
True
>>> any(('a', 'b', '', 'd'))   # 元组tuple,存在一个为空的元素
True
>>> any((0, '', False))        # 元组tuple,元素全为0,'',false
False
>>> any([]) # 空列表
False
>>> any(()) # 空元组
False

4.bin()

    作用:返回一个整数 int 或者长整数 long int 的二进制表示。

    实例:

>>>bin(10)
'0b1010'
>>> bin(20)
'0b10100'

5.bool()

    作用:用于将给定参数转换为布尔类型,如果没有参数,返回 False。

6.callable()

    作用:用于检查一个对象是否是可调用的。如果返回 True,object 仍然可能调用失败;但如果返回 False,调用对象 object 绝对不会成功。

7.chr()和ord()  

    作用:前者数字转字符串,后者字符串转数字

    实例:

>>>  print(chr(100))
>>>  d

>>>  print(ord('A'))
>>>  65

8.operator运算符,

    作用:cmp():用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1,在python3.X废弃,改为operator

    实例:

from operator import *
a,b=1,2
print(lt(a,b))   :True
print(le(a,b))   :True
print(eq(a,b))   :False
print(ne(a,b))   :True
print(gt(a,b))   :False
print(ge(a,b))   :False

9.dir()

    作用:返回当前范围内的变量、方法和定义的类型列表。

    实例:

print(abs.__dir__())
print(dir([]))
>>> ['__doc__', '__subclasshook__', '__hash__', '__call__', '__getattribute__', '__new__', ......]
>>> ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__',......]

10.divmod()        divmod  -->  divide model

    作用:把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。

    实例:

>>>divmod(7, 2)
(3, 1)
>>> divmod(8, 2)
(4, 0)
>>> divmod(1+2j,1+0.5j)
((1+0j), 1.5j)

11.enumberate()

    作用:用于将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

    实例:

>>> for index,number in enumerate([1,2,3],1):
        print(f"{index}:{number}")
>>> 1:1
    2:2
    3:3

11.eval()和int()

    作用:eval用来执行一个字符串表达式,并返回表达式的值;int格式化字符串和数字,但是不会保留小数。

    实例:

>>> x = 7 
>>> print(eval( '3 * x' ))     -> 21
>>> print(eval('pow(2,2)'))    -> 4
>>> print(eval('x + 2'))       -> 9
>>> print(eval('123.1'))       -> 123.1
>>> print(eval(123.1))         -> error,eval只能转化字符串
>>> print(int(123.1))          -> 123
>>> print(int( '3 ' ))         -> 3

12.execfile()

    作用:execfile() 函数可以用来执行一个文件。

    实例:

>>>execfile('hello.py')
hello

13.format()

    作用:用于格式化函数

    实例:

>>>"{} {}".format("hello", "world")    # 不设置指定位置,按默认顺序
'hello world'
 
>>> "{0} {1}".format("hello", "world")  # 设置指定位置
'hello world'
 
>>> "{1} {0} {1}".format("hello", "world")  # 设置指定位置
'world hello world'

print("网站名:{name}, 地址 {url}".format(name="菜鸟教程", url="www.runoob.com"))
 
# 通过字典设置参数
site = {"name": "教程", "url": "www.baidu.com"}
print("网站名:{name}, 地址 {url}".format(**site))
 
# 通过列表索引设置参数
my_list = ['教程', 'www.baidu.com']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list))  # "0" 是必须的

14.globals()

    作用:函数会以字典类型返回当前位置的全部全局变量。

    实例:

>>>a='hello'
>>> print(globals()) # globals 函数返回一个全局变量的字典,包括所有导入的变量。
{'__builtins__': <module '__builtin__' (built-in)>, '__name__': '__main__', '__doc__': None, 'a': 'hello', '__package__': None}

15.hasattr()、getattr()和setattr()

    作用:hasattr()如果对象有该属性返回 True,否则返回 False;

              getattr()如果对象有该属性返回对象属性值,否则报错;

              setattr()设置属性值。

    实例:

class Coordinate:
    x = 10
    y = -5
 
point1 = Coordinate()  
print(hasattr(point1, 'x'))      判断属性是否存在
print(hasattr(point1, 'y'))
print(getattr(point1 , 'x'))     获取属性
setattr(point1 , 'z', 5)         设置属性

16.hash()

    作用:用于获取取一个对象(字符串或者数值等)的哈希值。

    实例:

>>>hash('test')            # 字符串
2314058222102390712
>>> hash(1)                 # 数字
1
>>> hash(str([1,2,3]))      # 集合
1335416675971793195
>>> hash(str(sorted({'1':1}))) # 字典
7666464346782421378
>>>

17.help()

    作用:用于查看函数或模块用途的详细说明。

    实例:

>>  help('sys')             # 查看 sys 模块的帮助
……显示帮助信息……
 
>>> help('str')             # 查看 str 数据类型的帮助
……显示帮助信息……
 
>>> a = [1,2,3]
>>> help(a)                 # 查看列表 list 帮助信息
……显示帮助信息……
 
>>> help(a.append)          # 显示list的append方法的帮助
……显示帮助信息……

18.hex()

    作用:用于将10进制整数转换成16进制,以字符串形式表示。

    实例:

>>> hex(255)
'0xff'
>>> hex(-42)
'-0x2a'
>>> hex(1L)
'0x1L'

19.id()

    作用:用于获取对象的内存地址

    实例:

>>> a = 'runoob'
>>> id(a)
4531887632
>>> b = 1
>>> id(b)
140588731085608

20.isinstance()和type()

    作用:isinstance() 函数来判断一个对象是否是一个已知的类型,类似 type()。

    实例:

>>> a = 2
>>> isinstance (a,int)
True
>>> isinstance (a,str)
False
>>> isinstance (a,(str,int,list))    # 是元组中的一个返回 True
True

  type() 与 isinstance()区别:

 isinstance() 与 type() 区别:

  •  type() 不会认为子类是一种父类类型,不考虑继承关系。

  •  isinstance() 会认为子类是一种父类类型,考虑继承关系。

 如果要判断两个类型是否相同推荐使用 isinstance()。

class A:
    pass
 
class B(A):
    pass
 
isinstance(A(), A)    # returns True
type(A()) == A        # returns True
isinstance(B(), A)    # returns True
type(B()) == A        # returns False

基本的classinfo :int,float,bool,complex,str(字符串),list,dict(字典),set,tuple

21.issubclass()

    作用:用于判断参数 class 是否是类型参数 classinfo 的子类。

    实例:

class A:
    pass
class B(A):
    pass
    
print(issubclass(B,A))    # 返回 True

22.iter()

    作用:用来生成迭代器,传入的参数必须是可迭代对象。

    实例:

>>> lst = [1, 2, 3]
>>> for i in iter(lst):
        print(i)

1
2
3

23.locals()

    作用:返回当前位置的全部局部变量。

    实例:

>>>  def runoob(arg):    # 两个局部变量:arg、z
        z = 1
        print (locals())
 
>>>  runoob(4)
{'z': 1, 'arg': 4}      # 返回一个名字/值对的字典

24.max()和min()

    作用:max返回给定参数的最大值,参数可以为序列,min则返回最小值。

    实例:

>>> a='1,2,3,4'
>>> type(a)             #类型为字符串
<type 'str'>
>>> max(a)              #max 返回了最大值
'4'
>>> a=[1,2,3,4]
>>> type(a)             #类型是列表
<type 'list'>
>>> max(a)              #max函数也返回了最大值
4
>>>
>>>
>>> a=[(1,2),(2,3),(3,4)]                #假设列表里面是元组构成元素呢
>>> max(a)                                     #按照元素里面元组的第一个元素的排列顺序,输出最大值(如果第一个元素相同,则比较第二个元素,输出最大值)据推理是按ascii码进行排序的
(3, 4)
>>> a=[('a',1),('A',1)]                     #实验推测是按ascii码进行排序,比较  a  和   A 的值,得出a > A   ,  因为ascii 码里面,按照排列顺序 小 a在 A的后面
>>> max(a)
('a', 1)
>>> a=[(1,2),(2,3),(3,1)]
>>> a=[(1,3),(2,2),(3,1)]                #列表里面的元素都由元组构成,元组都由数字组成,输出最大值
>>> max(a)
(3, 1)
>>> a=[(1,3),(2,2),(3,1),(3,1)]
>>> max(a)
(3, 1)
>>> a=[(1,3),(2,2),(3,1),(3,2)]
>>> max(a)
(3, 2)
>>> 
>>> a=[(1,3),(2,2),(3,1),(3,'b'),('a',1)]
>>> max(a)
('a', 1)
>>> a=[(1,3),(2,2),(3,1),(3,'b'),('a',1),('f',3)]
>>> max(a)
('f', 3)
>>> 
>>> a={1:2,2:2,3:1,4:'aa'}                  #比较字典里面的最大值,会输出最大的键值
>>> max(a)
4

示例: 返回一个字符串里按字母表排序的最长子字符串

import re

reg = re.compile('a*b*c*d*e*f*g*h*i*j*k*l*m*n*o*p*q*r*s*t*u*v*w*x*y*z*')
#返回一个字符串里按字母表排序的最长子字符串
def longest(s):
    print reg.findall(s)
#['abcde', 'ap', 'bcdef', '']
    return max(reg.findall(s), key=len)
#加或不加效果相同
print longest('abcdeapbcdef')

25.next()

    作用:返回迭代器的下一个项目。   

 next(iterator[, default])  
  • default -- 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。

    实例:

# 首先获得Iterator对象:
it = iter([1, 2, 3, 4, 5])
# 循环:
while True:
    try:
        # 获得下一个值:
        x = next(it)
        print(x)
    except StopIteration:
        # 遇到StopIteration就退出循环
        break

26.oct()

    作用:将一个整数转换成8进制字符串。

    实例:

>>> oct(10)
'012'
>>> oct(20)
'024'
>>> oct(15)
'017'

27.file()

    作用:文件相关操作。

  • file.read([size]):size 未指定则返回整个文件,如果文件大小 >2 倍内存则有问题,f.read()读到文件尾时返回""(空字串)。

  • file.readline():返回一行。

  • file.readlines([size]) :返回包含size行的列表, size 未指定则返回全部行。

  • for line in f: print line :通过迭代器访问。

  • f.write("hello\n"):如果要写入字符串以外的数据,先将他转换为字符串。

  • f.tell():返回一个整数,表示当前文件指针的位置(就是到文件头的比特数)。

  • f.seek(偏移量,[起始位置]):用来移动文件指针。

    • 偏移量: 单位为比特,可正可负
    • 起始位置: 0 - 文件头, 默认值; 1 - 当前位置; 2 - 文件尾
  • f.close() 关闭文件

28.print()

    作用:打印

    实例:

>>> print("www","runoob","com",sep=".")  # 设置间隔符
>>> www.runoob.com

>>> for x in [1,2,3,4]:
    print(x ,end='') # 设置结束符
>>> 1234

29.range()

  作用:可创建一个整数列表,一般用在 for 循环中。

  range(start, stop[, step])

  • start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
  • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
  • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

 实例:

如果起始值大于结束值,步长为负,为正则输出为空,反正亦然。

>>> for x in range(11,5,-2):
        print(x)
>>> 11
    9
    7

30.reduce()

    作用:会对参数序列中元素进行累积

    实例:

方法一:
>>> from functools import reduce
>>> def add(x,y):
        return x + y

>>> print (reduce(add, range(1, 101)))
>>> 5050

方法二:
>>> print(reduce(lambda x,y:x+y,range(1, 101)))
>>> 5050

31.reload()

    作用: 用于重新载入之前载入的模块。

    实例:

>>>import sys
>>> sys.getdefaultencoding()            # 当前默认编码
'ascii'
>>> reload(sys)                         # 使用 reload
<module 'sys' (built-in)>
>>> sys.setdefaultencoding('utf8')      # 设置编码
>>> sys.getdefaultencoding()
'utf8'

32.reverse()

    作用: 函数用于反向列表中元素。

    实例:

>>> aList = [123, 'xyz', 'zara', 'abc', 'xyz']
>>> print(aList.reverse())
>>> ['xyz', 'abc', 'zara', 'xyz', 123]

33.round()

    作用: 返回浮点数x的四舍五入值

    实例:

>>> round(80.23456, 2) :  80.23
>>> round(100.000056, 3) :  100.0
>>> round(-100.000056, 3) :  -100.0

34.slice()

    作用: 切片操作

35.sorted()和sort()

   作用: 对所有可迭代的对象进行排序操作。

   区别:

   sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

   list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

    实例:

>>>a = [5,7,6,3,4,1,2]
>>> b = sorted(a)       # 保留原列表
>>> a 
[5, 7, 6, 3, 4, 1, 2]
>>> b
[1, 2, 3, 4, 5, 6, 7]
 
>>> L=[('b',2),('a',1),('c',3),('d',4)]
>>> sorted(L, cmp=lambda x,y:cmp(x[1],y[1]))   # 利用cmp函数
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
>>> sorted(L, key=lambda x:x[1])               # 利用key
[('a', 1), ('b', 2), ('c', 3), ('d', 4)]
 
>>> students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]
>>> sorted(students, key=lambda s: s[2])            # 按年龄排序
[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]
 
>>> sorted(students, key=lambda s: s[2], reverse=True)       # 按降序
[('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]

36.sum()

    作用: 求和。

    实例:

>>>sum([0,1,2])  
3  
>>> sum((2, 3, 4), 1)        # 元组计算总和后再加 1
10
>>> sum([0,1,2,3,4], 2)      # 列表计算总和后再加 2
12

37.tuple()

    作用: 将列表转换为元组。

    实例:

>>>tuple([1,2,3,4])
(1, 2, 3, 4)
 
>>> tuple({1:2,3:4})    #针对字典 会返回字典的key组成的tuple
(1, 3)
 
>>> tuple((1,2,3,4))    #元组会返回元组自身
(1, 2, 3, 4)

资料参考:http://www.runoob.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值