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

相关推荐
踏着七彩祥云的小丑4 小时前
pytest——Mark标记
开发语言·python·pytest
Dream of maid5 小时前
Python12(网络编程)
开发语言·网络·php
W23035765735 小时前
经典算法:最长上升子序列(LIS)深度解析 C++ 实现
开发语言·c++·算法
网教盟人才服务平台5 小时前
“方班预备班盾立方人才培养计划”正式启动!
大数据·人工智能
Y4090015 小时前
【多线程】线程安全(1)
java·开发语言·jvm
芯智工坊5 小时前
第15章 Mosquitto生产环境部署实践
人工智能·mqtt·开源
菜菜艾5 小时前
基于llama.cpp部署私有大模型
linux·运维·服务器·人工智能·ai·云计算·ai编程
不爱吃炸鸡柳5 小时前
Python入门第一课:零基础认识Python + 环境搭建 + 基础语法精讲
开发语言·python
TDengine (老段)6 小时前
TDengine IDMP 可视化 —— 分享
大数据·数据库·人工智能·时序数据库·tdengine·涛思数据·时序数据
小真zzz6 小时前
搜极星:第三方多平台中立GEO洞察专家全面解析
人工智能·搜索引擎·seo·geo·中立·第三方平台