python(入门)map内置函数及import模块导入,as别名

map()

在Python中, map() 是一个内置的高阶函数,它接受一个函数和一个或多个可迭代对象作为参数,将函数应用到每个可迭代对象的对应元素上,并返回一个迭代器。

map() 函数的基本语法是: map(function, iterable1[, iterable2,...])

以下是关于 map() 函数的一些要点和示例:

对单个可迭代对象应用函数:

python 复制代码
numbers = [1, 2, 3, 4, 5]
# 将列表中的每个元素乘以 2
result = list(map(lambda x: x * 2, numbers))
print(result)

在这个例子中, lambda x: x * 2 是一个匿名函数, map 函数将这个函数应用到 numbers 列表的每个元素上,然后 list() 将返回的迭代器转换为列表,得到 [2, 4, 6, 8, 10] 。

对多个可迭代对象应用函数:

python 复制代码
nums1 = [1, 2, 3]
nums2 = [4, 5, 6]
# 将两个列表对应位置的元素相加
sum_result = list(map(lambda x, y: x + y, nums1, nums2))
print(sum_result)

这里 map 函数接受了 lambda x, y: x + y 函数以及 nums1 和 nums2 两个列表作为参数,将函数应用到两个列表对应位置的元素上,最终得到 [5, 7, 9] 。

使用自定义函数与 map :

python 复制代码
  def square(x):
    return x ** 2

values = [1, 2, 3, 4]
squared_values = list(map(square, values))
print(squared_values)

先定义了一个 square 函数,然后 map 函数将 square 函数应用到 values 列表的每个元素上,得到 [1, 4, 9, 16] 。

总之, map() 函数是一种很方便的方式,可以对可迭代对象的元素批量应用函数,提高代码的简洁性和效率。

模块导入:

在Python中,模块导入是使用其他代码(函数、类、变量等)的一种方式,主要有以下几种导入方式:

import 模块名:

使用 import 关键字直接导入整个模块。导入后,可以通过 模块名.对象名 的方式来访问模块中的函数、类或变量。

python 复制代码
import math

print(math.sqrt(16))

使用math模块中的sqrt函数计算平方根

在这个例子中,导入了 math 模块,然后通过 math.sqrt() 调用了该模块中的平方根计算函数。

from 模块名 import 对象名:

从模块中导入特定的对象(函数、类、变量等),这样在使用时就不需要通过模块名来调用,直接使用对象名即可。

python 复制代码
from math import pi

print(pi) 

直接使用导入的pi变量

这里从 math 模块中导入了 pi 变量,然后直接打印该变量。

**from 模块名 import ***:

导入模块中的所有对象,但不推荐在大型项目中使用,因为可能会导致命名冲突。

python 复制代码
from math import *

print(sqrt(25))

直接使用sqrt函数

此例从 math 模块中导入了所有内容,然后直接调用了 sqrt 函数。

import 模块名

**as 别名:

为导入的模块指定一个别名,当模块名较长或者避免与当前命名空间中的其他名称冲突时很有用。**

python 复制代码
python
  
import numpy as np
arr = np.array([1, 2, 3])  # 使用numpy模块的别名np来创建数组
print(arr)

这里将 numpy 模块导入并命名为 np ,然后使用 np 来调用 numpy 模块中的函数。

from 模块名 import 对象名 as 别名:

为从模块中导入的特定对象指定别名。

python 复制代码
  
from math import sqrt as square_root
print(square_root(9))  # 使用别名square_root调用sqrt函数
 

在这个例子中,从 math 模块导入 sqrt 函数,并将其命名为 square_root 来使用。

相关推荐
梵得儿SHI2 小时前
Java 反射机制实战:对象属性复制与私有方法调用全解析
java·开发语言·java反射机制的实际应用·对象属性复制·反射调用私有方法·私有字段·类型兼容性和敏感字段忽略
sulikey2 小时前
C++的STL:深入理解 C++ 的 std::initializer_list
开发语言·c++·stl·list·initializerlist·c++标准库
Jump 不二2 小时前
百度 PaddleOCR 3.0 深度测评:与 MinerU 的复杂表格识别对决
人工智能·深度学习·百度·ocr
用户5191495848452 小时前
Flutter应用设置插件 - 轻松打开iOS和Android系统设置
人工智能·aigc
liu****3 小时前
19.map和set的封装
开发语言·数据结构·c++·算法
孤廖3 小时前
C++ 模板再升级:非类型参数、特化技巧(含全特化与偏特化)、分离编译破解
linux·服务器·开发语言·c++·人工智能·后端·深度学习
润 下3 小时前
C语言——回调函数的典型示例(分析详解)
c语言·开发语言·人工智能·经验分享·笔记·程序人生