问题描述:Python计算机二级中常考的内置函数有哪些?
问题解答:
第一个表格
这里是这些内置函数的英文全称:
abs(x)
:Absolute Value,即绝对值。divmod(a, b)
:Division and Modulus,即除法和取模。pow(x, y)
:Power,即幂运算。round(n)
:Round,即四舍五入。
1.abs(x)
:返回参数 x
(数值)的绝对值。
2.divmod(a, b)
:返回一个由商和余数组成的元组,商是参数 a
除以参数 b
的结果,余数是参数 a
对参数 b
取余的结果。
3.pow(x, y)
:返回 x
的 y
次幂的结果。相当于 x ** y
。
4.round(n)
:返回参数 n
的四舍五入值。如果有两个最接近的整数,返回偶数的整数。print (round (5.2367,2)),当然也可以具有两个参数,表示小数点后保留两位小数。
第二个表格
all(x)
:
- 英文全称:All
- 用法:返回
x
中所有元素都为真(或等价于 True)的布尔值 True;如果x
是空的,则返回 True。用法示例:
any(x)
:
- 英文全称:Any
- 用法:返回
x
中至少有一个元素为真(或等价于 True)的布尔值 True;如果x
是空的,则返回 False。用法示例:
reversed(ls)
:
- 英文全称:Reversed
- 用法:返回一个反向迭代器,用于迭代
ls
中的元素,从最后一个到第一个。用法示例:
sorted(x)
:
- 英文全称:Sorted
- 用法:返回一个排序后的列表,对参数
x
进行排序。用法示例:
sum(x)
:
- 英文全称:Sum
- 用法:返回参数
x
中所有元素的总和。
这些函数在 Python 中是内置函数,可直接调用,用于执行各种常用操作。
注意:
(1)reversed(ls)函数返回的不是一个列表,返回的是一个能够迭代的对象。如果需要返回列表,需要进行强制转换,使用list(reversed(ls))。list(reversed())的作用和ls[::-1]相同。
(2)sorted(ls)注意是从小到大排序,不是从大到小排序。
第三部分
最常用eval(s)和range(a,b,s)
首先抛出一个问题。如何将一个列表形式的字符串转为列表,直接用list()函数行吗?
s = "[1, 2, 3, 5, 6]"
ls = list(s)
print(ls)
#结果
['[', '1', ',', ' ', '2', ',', ' ', '3', ',', ' ', '5', ',', ' ', '6', ']']
#解析
在这个代码片段中,s 是一个字符串,包含了一个看起来像列表的文本。
当你使用 list() 函数将字符串转换为列表时,它会将字符串视为一个可迭代对象,并将字符串中的每个字符作为列表的一个元素。因此,如果你执行 list(s),你将得到一个包含了字符串中每个字符的列表。
即列表 ls 包含了字符串 s 中的每个字符作为一个独立的元素。
这时候就需要用eval(ls)
s = "[1, 2, 3, 5, 6]"
ls =eval(s)
print(ls)
#结果
[1, 2, 3, 5, 6]
#解析
在这段代码中,使用 eval() 函数对字符串 s 进行了求值。eval() 函数会将字符串作为有效的 Python 表达式进行求值,并返回结果。
因此,当你执行 eval(s),它会将字符串 s 解释为一个列表,并返回该列表。
即列表 ls 包含了字符串 s 中表示的列表的内容。
exex()函数把赋值语句中左右两边的字符串去掉,形成一个python认识的赋值语句并执行掉。
exec("a=1+999")
print (a)
#结果是1000
不常考、不常用。
exec() 函数接受一个字符串作为参数,该字符串包含了有效的 Python 代码。当调用 exec() 函数时,Python 解释器会将这个字符串中的代码进行解析并执行。
对于赋值语句,exec() 函数会解析字符串中的赋值操作,并在执行时创建相应的变量并赋予相应的值。例如,对于字符串 "a = 1 + 999",exec() 函数会将其解析为一个赋值语句,将变量 a 赋值为 1 + 999 的结果,即 1000。然后,这个赋值语句会被执行,使得变量 a 在 exec() 函数的作用域中得到了赋值。
在这个示例中,exec() 函数解析了字符串 "a = 1 + 999" 中的赋值操作,并在执行时创建了变量 a 并赋予了值 1000。然后,在后续的 print(a) 中,可以正确地打印出变量 a 的值。
range()函数用法
print(list(range(1, 5))) # 输出 [1, 2, 3, 4]
print(list(range(1, 10, 2))) # 输出 [1, 3, 5, 7, 9]
for i in range(100):
print(i)
这样才能正确地打印出从 0 到 99 的数字。注意不包含最后一个数字。
总结:
eval(s)
:
- 英文全称:Evaluate
- 用法:将字符串
s
当作有效的 Python 表达式进行求值,并返回结果。
exec(s)
:
- 英文全称:Execute
- 用法:将字符串
s赋值语句
当作有效的 Python 代码进行执行。
range(a, b, s)
:
- 英文全称:Range
- 用法:生成一个整数序列,起始值为
a
,终止值为b
,不包含b,步长为s
(默认为1)。
这些函数在 Python 中是内置函数,可直接调用,用于执行各种常用操作。