python 内置函数(2)

2018-09-26 18:13:35   最后更新: 2018-10-12 13:32:26   访问数量:52




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

元素除了是 0、空、FALSE 外都算 TRUE。

函数等价于:

def any(iterable):

for element in iterable:

if element:

return True

return False

 

Python 2.5 以上版本可用。

 

语法

以下是 any() 方法的语法:

any(iterable)

 

 

参数

  • iterable -- 元组或列表。

 

返回值

如果都为空、0、false,则返回false,如果不都为空、0、false,则返回true。

 

实例

以下展示了使用 any() 方法的实例:

>>>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

 

 

语法

divmod(a, b)

 

 

参数说明:

  • a: 数字
  • b: 数字

 

示例

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

 

 

id() 函数用于获取对象的内存地址。

 

语法

id 语法:

id([object])

 

 

参数说明:

  • object -- 对象。

 

返回值

返回对象的内存地址。

 

实例

以下实例展示了 id 的使用方法:

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

 

 

sorted() 函数对所有可迭代的对象进行排序操作。

 

sort 与 sorted 区别:

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

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

 

语法

sorted 语法:

sorted(iterable, key=None, reverse=False)

 

 

参数说明:

  • iterable -- 可迭代对象。
  • key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
  • reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

 

返回值

返回重新排序的列表。

 

实例

以下实例展示了 sorted 的最简单的使用方法:

>>>sorted([5, 2, 3, 1, 4]) [1, 2, 3, 4, 5] # 默认为升序

 

 

你也可以使用 list 的 list.sort() 方法。这个方法会修改原始的 list(返回值为None)。通常这个方法不如sorted()方便-如果你不需要原始的 list,list.sort()方法效率会稍微高一些。

>>>a=[5,2,3,1,4] >>> a.sort() >>> a [1,2,3,4,5]

 

 

另一个区别在于list.sort() 方法只为 list 定义。而 sorted() 函数可以接收任何的 iterable。

>>>sorted({1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'}) [1, 2, 3, 4, 5]

 

 

利用key进行倒序排序

>>>example_list = [5, 0, 6, 1, 2, 7, 3, 4] >>> result_list = sorted(example_list, key=lambda x: x*-1) >>> print(result_list) [7, 6, 5, 4, 3, 2, 1, 0] >>>

 

 

要进行反向排序,也通过传入第三个参数 reverse=True:

>>>example_list = [5, 0, 6, 1, 2, 7, 3, 4] >>> sorted(example_list, reverse=True) [7, 6, 5, 4, 3, 2, 1, 0]

 

 

ascii() 函数类似 repr() 函数, 返回一个表示对象的字符串, 但是对于字符串中的非 ASCII 字符则返回通过 repr() 函数使用 \x, \u 或 \U 编码的字符。 生成字符串类似 Python2 版本中 repr() 函数的返回值。

 

语法

以下是 ascii() 方法的语法:

ascii(object)

 

 

参数

  • object -- 对象。

 

返回值

返回字符串。

 

实例

以下展示了使用 ascii() 方法的实例:

>>> ascii('runoob') "'runoob'"

 

 

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

语法

以下是 enumerate() 方法的语法:

enumerate(sequence, [start=0])

 

 

参数

  • sequence -- 一个序列、迭代器或其他支持迭代对象。
  • start -- 下标起始位置。

 

返回值

返回 enumerate(枚举) 对象。

 

实例

以下展示了使用 enumerate() 方法的实例:

>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter'] >>>list(enumerate(seasons)) [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] >>>list(enumerate(seasons, start=1)) # 小标从 1 开始 [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

 

 

普通的 for 循环

>>>i = 0 >>>seq = ['one', 'two', 'three'] >>>for element in seq: ... print(i, seq[i]) ... i += 1 ... 0 one 1 two 2 three

 

 

for 循环使用 enumerate

>>>seq = ['one', 'two', 'three'] >>>for i, element in enumerate(seq): ... print(i, seq[i]) ... 0 one 1 two 2 three >>>

 

 

函数语法

input([prompt])

 

 

参数说明

  • prompt: 提示信息

 

实例

input() 需要输入 python 表达式

>>>a = input("input:") input:123 # 输入整数 >>> type(a) <type 'int'> # 整型 >>> a = input("input:") input:"runoob" # 正确,字符串表达式 >>> type(a) <type 'str'> # 字符串 >>> a = input("input:") input:runoob # 报错,不是表达式 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<string>", line 1, in <module> NameError: name 'runoob' is not defined <type 'str'>

 

 

raw_input() 将所有输入作为字符串看待

>>>a = raw_input("input:") input:123 >>> type(a) <type 'str'> # 字符串 >>> a = raw_input("input:") input:runoob >>> type(a) <type 'str'> # 字符串 >>>

 

 

 

oct() 函数将一个整数转换成8进制字符串。

 

语法

oct 语法:

oct(x)

 

 

参数说明:

  • x -- 整数。

 

返回值

返回8进制字符串。

 

实例

以下实例展示了 oct 的使用方法:

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

 

 

python staticmethod 返回函数的静态方法。

该方法不强制要求传递参数,如下声明一个静态方法:

class C(object): @staticmethod def f(arg1, arg2, ...): ...

 

以上实例声明了静态方法 f,类可以不用实例化就可以调用该方法 C.f(),当然也可以实例化后调用 C().f()。

 

函数语法

staticmethod(function)

 

 

实例

#!/usr/bin/python # -*- coding: UTF-8 -*- class C(object): @staticmethod def f(): print('runoob'); C.f(); # 静态方法无需实例化 cobj = C() cobj.f() # 也可以实例化后调用

 

 

 

bin() 返回一个整数 int 或者长整数 long int 的二进制表示。

 

语法

以下是 bin() 方法的语法:

bin(x)

 

 

参数

  • x -- int 或者 long int 数字

 

返回值

字符串。

 

实例

以下展示了使用 bin 函数的实例:

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

 

 






读书笔记      技术帖      龙潭书斋      python      python3     


京ICP备15018585号