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 来使用。

相关推荐
小程故事多_80几秒前
Kthena 引爆云原生推理革命:K8s 分布式架构破解 LLM 编排困局,吞吐狂飙 273%
人工智能·分布式·云原生·kubernetes·aigc
程序员-周李斌几秒前
LinkedList 源码深度分析(基于 JDK 8)
java·开发语言·数据结构·list
csuzhucong4 分钟前
4种棋盘魔方(三A、三B、五A、五B)
人工智能
腾飞开源5 分钟前
05_Spring AI 干货笔记之 Advisors API
人工智能·可观测性·检索增强生成·spring ai·advisors api·对话记忆·提示词增强
chéng ௹6 分钟前
前端转编码(encodeURIComponent)以及解码(decodeURIComponent)
开发语言·前端·javascript
bbq粉刷匠7 分钟前
java刷题-day1
java·开发语言
2301_795167208 分钟前
Python 高手编程系列九:上下文管理器 — with 语句
数据库·python·mysql
讓丄帝愛伱11 分钟前
excel导出实例
java·python·excel
老欧学视觉12 分钟前
ubuntu20.04系统下安装SlowFast行为检测项目并跑通训练
python·深度学习·计算机视觉
温轻舟16 分钟前
禁毒路上,任重道远 | HTML页面
开发语言·前端·javascript·css·html·温轻舟