目录
1、map
语法:
map(function, iterable, ...)
function:函数;
iterable:一个或多个序列;
作用 / 返回值:
根据提供的函数对指定序列做映射;
以参数序列中的每一个元素调用function序列,返回包含每次function函数返回值的新列表(python3返回迭代器);
代码演示:
a = map(lambda x: x ** 2, [1, 2, 3, 4, 5])
for j in a:
print(j, end=' ')
print()
b = map(lambda x, y: x + y, [1, 2, 3, 4, 5], [6, 7, 8, 9, 10])
for j in b:
print(j, end=' ')
2、repr
语法:
repr(object)
object:对象;
作用 / 返回值:
将对象转化为供解释器读取的形式;
返回对象的string格式;
代码演示:
print(repr("zhangsan"))
print(repr('lisi'))
print(repr({"a": "aa", "b": "bb", "c": "cc"}))
3、xrange
语法:
xrange(start, stop[, step])
start:计数从start开始(默认从0开始);
stop:计数到stop结束,但不包括stop;
step:步长,默认为1;
作用 / 返回值:
python3中使用range即可;
代码演示:
for i in range(5):
print(i)
4、cmp
语法:
python3中将使用以下函数代替cmp函数:
operator.lt(a, b)【a<b】
operator.le(a, b)【a<=b】
operator.eq(a, b)【a==b】
operator.ne(a, b)【a!=b】
operator.ge(a, b)【a>=b】
operator.gt(a, b)【a>b】
这些函数在模块operator中;
作用 / 返回值:
比较两个对象;
返回布尔值;
代码演示:
from operator import lt, le, eq, ne, ge, gt
print('1、', lt(1, 2))
print('2、', le(2, 2))
print('3、', eq('abc', 'abc'))
print('4、', ne('abc', 'acb'))
print('5、', ge('z', 'a'))
print('6、', gt(0, 0))
5、globals
语法:
globals()
作用 / 返回值:
以字典类型返回当前位置的全部全局变量;
代码演示:
a = 1
b = 2
print(globals())
返回值截取部分如下:
6、zip
语法:
zip([iterable, ...])
iterable:一个或多个迭代器;
作用 / 返回值:
将可迭代的对象作为参数,将对象中对应元素打包成一个个元组,然后返回由这些元组组成的列表(python3中返回的是一个对象);
若各个迭代器元素个数不一致,则返回的列表(对象)长度与最短的对象相同;
利用 * ,可以将元组解压为列表;
代码演示:
a_list = [1, 2, 3]
b_list = [4, 5, 6]
c_list = [7, 8, 9, 10]
print('1、', list(zip(a_list, b_list)))
print('2、', list(zip(a_list, c_list)))
print('3、', list(zip(*zip(a_list, b_list))))
7、compile
语法:
compile(source, filename, mode[, flags[, dont_inherit]])
source:字符串或AST(Abstract Syntax Trees)对象;
filename:代码文件名称,若不是从文件读取代码则传递一些可辨认的值;
mode:指定编译代码的种类(如:exec、eval、single);
flags:变量作用域,局部命名空间,若被提供,可以使任何映射对象;
flags 和 dont_inherit 是用来控制编译源码的标志;
作用 / 返回值:
将一个字符串编译成字节代码;
返回表达式执行结果;
代码演示:
str1 = 'for i in range(5):print(i)'
a1 = compile(str1, '', 'exec')
exec(a1)
print('-' * 50)
str2 = '1 + 2 * 3'
a2 = compile(str2, '', 'eval')
print(eval(a2))
8、hasattr
语法:
hasattr(object, name)
object:对象;
name:字符串,属性名;
作用 / 返回值:
用于判断对象是否包含对应属性(返回布尔值);
代码演示:
class A:
x = 1
y = 2
z = 3
a = A()
print(hasattr(a, 'x'))
print(hasattr(a, 'y'))
print(hasattr(a, 'q'))
9、memoryview
语法:
memoryview(obj)
obj:对象;
作用 / 返回值:
返回给定参数的内存查看对象(元组列表);
内存查看对象:对支持缓冲区协议的数据进行包装,在不需要复制对象基础上允许python代码访问;
代码演示:
a = memoryview(b'abcdefg')
print(a[1]) # 返回第二个字符的Unicode
print(a[2:5].tobytes())
10、round
语法:
round(x[, n])
x、n 均为数值表达式;
作用 / 返回值:
返回浮点数 x 的四舍五入值(保留n位小数);
代码演示:
print(round(10.02551651, 4))
print(round(-123.524216815, 6))
print(round(100.000056, 4))