Bootstrap

基本的python内置函数ord(x)_python基础教程:内置函数(一)

Python解释器内置了很多函数和类型,可以随时随地在编程中使用。其实,我们在前面的学习中已经接触过好多内置函数。

cf2c6abbe539a8dc69feecc8ff003412.png

这里把它们总结成下面的表格,方便我们学习它们的使用:

da23fcf5bb9335ccd3ebab3d60c903df.png

说明:

上面这个表格包含的有“内置函数”和“内置类型”,其中的内置类型可以作为函数使用,把其它类型的对象转变为该类型的对象。比如int是一个内置类型,int('123')就是把字符串转换成整数。两者在使用上没有什么区别,官方文档中也是把内置类型当做内置函数介绍的。

通过ipython,我们可以查看表格中的是函数还是类型。比如:

In [14]: abs?

Signature: abs(x, /)

Docstring: Return the absolute value of the argument.

Type: builtin_function_or_method

In [15]: int?

Init signature: int(self, /, *args, **kwargs)

Docstring:

int(x=0) -> integer

int(x, base=10) -> integer

Convert a number or string to an integer, or return 0 if no arguments

are given. If x is a number, return x.__int__(). For floating point

numbers, this truncates towards zero.

If x is not a number or if base is given, then x must be a string,

bytes, or bytearray instance representing an integer literal in the

given base. The literal can be preceded by '+' or '-' and be surrounded

by whitespace. The base defaults to 10\. Valid bases are 0 and 2-36.

Base 0 means to interpret the base from the string as an integer literal.

>>> int('0b100', base=0)

4

Type: type

Subclasses: bool, IntEnum, IntFlag, _NamedIntConstant

在ipython里面通过问号?来查看其对应的说明,其中的Type就是它的类型,可以看到abs是一个内置函数builtin_function_or_method,而int是一个类型type。

我们把这些内置函数(类型)分成几类进行介绍。

数值型操作

abs(x)

求x的绝对值。x可以是整数或浮点数,如果是复数则返回它的模。

bin(x)

将一个整数转变为一个前缀为0b的二进制字符串。结果是一个合法的 Python 表达式。如果 x 不是 Python 的 int 对象,那它需要定义 index() 方法返回一个整数。比如:

In [26]: bin(5)

Out[26]: '0b101'

In [27]: bin(-5)

Out[27]: '-0b101'

x 不能是浮点数,否则会报错。

还可以通过format()函数来进行转换:

In [30]: format(5, '#b')

Out[30]: '0b101'

In [31]: format(5, 'b')

Out[31]: '101'

还可以用f-string格式化来转换:

In [32]: f'{5:#b}'

Out[32]: '0b101'

In [33]: f'{5:b}'

Out[33]: '101'

chr(i)

返回 Unicode 码位为整数 i 的字符的字符串格式。例如,chr(97) 返回字符串 ‘a’,chr(20013) 返回字符串 ‘中’。这是 ord() 的逆函数。

实参的合法范围是 0 到 1,114,111(16 进制表示是 0x10FFFF)。如果 i 超过这个范围,会触发 ValueError 异常。

divmod(a, b)

它将两个(非复数)数字作为实参,并在执行整数除法时返回一对商和余数。对于混合操作数类型,适用双目算术运算符的规则。对于整数,结果和 (a // b, a % b) 一致。对于浮点数,结果是 (q, a % b) ,q 通常是 math.floor(a / b) 但可能会比 1 小。在任何情况下, q * b + a % b 和 a 基本相等;如果 a % b 非零,它的符号和 b 一样,并且 0

;