math模块篇(六)

文章目录

  • math.log(x[, base])
  • math.log1p(x)
  • math.log2(x)
  • math.log10(x)
  • math.pow(x, y)
  • math.sqrt(x)
  • math.acos(x)
  • math.asin(x)
  • math.atan(x)
  • math.atan2(y, x)
  • math.cos(x)

math.log(x[, base])

math.log(x[, base]) 是 Python 中 math 模块的一个函数,用于计算一个数的自然对数或指定底数的对数。

当只提供一个参数 x 时,math.log(x) 默认计算的是 x 的自然对数,即底数为自然对数的底数 e(约等于 2.71828)的对数。这等价于计算 math.log(x, e)。

当提供两个参数 x 和 base 时,math.log(x, base) 计算的是 x 以 base 为底的对数。

例如:

  • math.log(10) 计算的是以 e 为底 10 的对数,即 ln(10)。
  • math.log(100, 10) 计算的是以 10 为底 100 的对数,即 log10(100),结果为 2。

以下是使用 math.log 函数的例子:

import math# 计算自然对数
natural_log = math.log(10)
print(natural_log)  # 输出 ln(10) 的值# 计算以 10 为底的对数
log_base_10 = math.log(100, 10)
print(log_base_10)  # 输出 2.0

请注意,math.log 函数只能接受正数作为输入,因为对数函数在负数或零上没有定义。如果 x 不是正数,函数将引发 ValueError 异常。

此外,对于非自然对数的计算,还可以使用 math.log2(x) 来计算以 2 为底的对数,以及 math.log10(x) 来计算以 10 为底的对数。这两个函数是 math.log(x, base) 的特殊形式,分别对应于 base 参数为 2 和 10 的情况。

math.log1p(x)

math.log1p(x) 是 Python 中 math 模块的一个函数,用于计算 (1 + x) 的自然对数(即底数为 e 的对数),它提供了在计算接近 1 的数的对数时更高的数值稳定性。

在数学上,log1p(x) 等于 log(1 + x),但 math.log1p 提供了专门的实现,以便在 x 接近于 0 时减少计算误差。对于 x 的绝对值很小的情况,直接使用 math.log(1 + x) 可能会导致精度损失,因为 1 + x 的计算结果可能正好是 1,而对 1 取对数在数学上是未定义的(或者说结果是负无穷大)。math.log1p 通过特殊的算法处理这种情况,提供了更精确的结果。

这里是一个使用 math.log1p 的例子:

import mathx = 1e-9  # 一个小数
result = math.log1p(x)print(result)  # 输出接近 x 的值,因为 log(1 + x) 在 x 接近 0 时约等于 x

在这个例子中,由于 x 是一个很小的数,math.log1p(x) 的结果将非常接近 x 的值,而直接使用 math.log(1 + x) 可能会得到不精确的结果。

注意,math.log1p 只能接受 x 的值在 -1 和 +∞ 之间,因为 log1p(x) 是在 x 大于 -1 时有定义的。如果 x 小于或等于 -1,math.log1p 将引发 ValueError 异常。

math.log2(x)

math.log2(x) 是 Python 中 math 模块的一个函数,用于计算一个数的以 2 为底的对数。换句话说,它返回的是 x 的二进制对数。

数学上,对于任意正数 x,math.log2(x) 的值等于 log_2(x),即满足 2^y = x 的 y 值。

例如:

  • math.log2(4) 将返回 2.0,因为 2^2 = 4。
  • math.log2(8) 将返回 3.0,因为 2^3 = 8。

这个函数在需要计算二进制对数时非常有用,例如在计算机科学中,它经常用于计算数据的大小(以位或字节为单位)或者进行某些类型的对数转换。

下面是一个使用 math.log2 的例子:

import math# 计算以 2 为底的对数
log_base_2 = math.log2(8)
print(log_base_2)  # 输出 3.0# 计算数据大小(以字节为单位),并转换为以 2 为底的对数
data_size_bytes = 1024  # 1 KB
log_data_size = math.log2(data_size_bytes)
print(log_data_size)  # 输出 10.0,因为 2^10 = 1024

请注意,math.log2 只能接受正数作为输入。如果 x 不是正数,函数将引发 ValueError 异常。此外,对于非常大的 x 值,结果可能为正无穷大 (inf),而对于非常小的正数 x,结果可能为负无穷大 (-inf)。

math.log10(x)

math.log10(x) 是 Python 中 math 模块的一个函数,用于计算一个数的以 10 为底的对数。换句话说,它返回的是 x 的十进制对数。

数学上,对于任意正数 x,math.log10(x) 的值等于 log_10(x),即满足 10^y = x 的 y 值。

例如:

  • math.log10(100) 将返回 2.0,因为 10^2 = 100。
  • math.log10(1000) 将返回 3.0,因为 10^3 = 1000。

这个函数在需要计算十进制对数时非常有用,例如在科学计算、工程或日常生活中,我们经常需要用到以 10 为底的对数来表示数量级或进行对数转换。

下面是一个使用 math.log10 的例子:

import math# 计算以 10 为底的对数
log_base_10 = math.log10(1000)
print(log_base_10)  # 输出 3.0# 转换声音频率的赫兹值到对数单位(分贝)
frequency_hz = 10000
decibels = 10 * math.log10(frequency_hz / 10)
print(decibels)  # 输出 40.0,这是将频率转换为分贝的标准公式

请注意,math.log10 只能接受正数作为输入。如果 x 不是正数,函数将引发 ValueError 异常。此外,对于 x 等于 0 的情况,由于以 10 为底的对数在 x 为 0 时是未定义的,因此也会引发 ValueError 异常。

在实际应用中,当处理可能包含零或负数的数据时,通常需要先对数据进行适当的处理或转换,以避免在计算对数时出现错误。

math.pow(x, y)

math.pow(x, y) 是 Python 中 math 模块的一个函数,用于计算 x 的 y 次幂。换句话说,它返回 x 乘以自己 y 次的结果。

这个函数在数学运算中非常有用,特别是当你需要计算一个数的指数时。

下面是一个使用 math.pow 的例子:

import math# 计算 2 的 3 次幂
result = math.pow(2, 3)
print(result)  # 输出 8.0# 计算 10 的 -2 次幂(即 10 的倒数的平方)
result = math.pow(10, -2)
print(result)  # 输出 0.01# 计算一个数的分数次幂
result = math.pow(8, 1/3)
print(result)  # 输出 2.0,因为 2 的 3 次幂是 8

math.pow 函数接受两个参数:

  • 第一个参数 x 是底数,可以是任何实数。
  • 第二个参数 y 是指数,也可以是任何实数。如果 y 是负数,则结果将是 x 的倒数的正指数幂。如果 y 是分数,则结果将是 x 的该分数的指数幂。

请注意,如果 x 是 0 并且 y 小于或等于 0,math.pow 将引发 ValueError 异常,因为 0 的负指数幂在数学上是未定义的。此外,如果 x 是负数并且 y 不是整数,结果将是复数,但 math.pow 只返回实数部分,并可能引发 OverflowError 或 ValueError 异常。

如果你需要处理复数或需要更全面的数学运算功能,可以考虑使用 cmath 模块或 numpy 库。

math.sqrt(x)

math.sqrt(x) 是 Python 中 math 模块的一个函数,用于计算一个非负数的平方根。换句话说,它返回的是 x 的算术平方根。

数学上,对于任意非负数 x,math.sqrt(x) 的值等于一个数 y,满足 y * y = x。

例如:

  • math.sqrt(4) 将返回 2.0,因为 2.0 * 2.0 = 4。
  • math.sqrt(9) 将返回 3.0,因为 3.0 * 3.0 = 9。

如果你尝试使用负数作为参数调用 math.sqrt,它将引发 ValueError 异常,因为负数的平方根在数学上是未定义的。

下面是一个使用 math.sqrt 的例子:

import math# 计算平方根
square_root = math.sqrt(9)
print(square_root)  # 输出 3.0# 计算一个数的平方根并打印结果
number = 25
root = math.sqrt(number)
print(f"The square root of {number} is {root}")  # 输出 The square root of 25 is 5.0

如果你需要计算复数的平方根,你应该使用 cmath 模块中的 sqrt 函数,它可以处理负数平方根的情况,并返回复数结果。

import cmath# 计算负数的平方根
complex_root = cmath.sqrt(-9)
print(complex_root)  # 输出 3j,其中 j 是虚数单位

在 cmath 中,sqrt 函数能够处理任何复数的平方根,并返回相应的复数结果。

math.acos(x)

math.acos(x) 是 Python 中 math 模块的一个函数,用于计算一个数值 x 的反余弦(arccosine)值。反余弦函数是余弦函数的逆运算,它接受一个介于 -1 和 1 之间(包括 -1 和 1)的数值作为输入,并返回一个介于 0 和 π 弧度(即 0 到 180 度)之间的角度值。

数学上,math.acos(x) 返回的是满足 cos(y) = x 的 y 值,其中 y 的范围是在 [0, π] 弧度或 [0, 180] 度。

例如:

  • math.acos(1) 将返回 0.0,因为余弦 0 度是 1。
  • math.acos(0) 将返回 1.5707963267948966(即 π/2 弧度,或 90 度),因为余弦 90 度是 0。
  • math.acos(-1) 将返回 3.141592653589793(即 π 弧度,或 180 度),因为余弦 180 度是 -1。

请注意,如果 x 的值不在 -1 到 1 的范围内(包括 -1 和 1),math.acos 会引发 ValueError 异常。

下面是一个使用 math.acos 的例子:

import math# 计算反余弦值
angle_in_radians = math.acos(0.5)
print(angle_in_radians)  # 输出反余弦值(弧度)# 将弧度转换为度
angle_in_degrees = math.degrees(angle_in_radians)
print(angle_in_degrees)  # 输出反余弦值(度)

输出结果将是 acos(0.5) 的弧度和对应的角度值。

math.acos 在三角学、几何学和某些物理计算中非常有用,特别是在需要求解三角形角度或进行向量分析时。

math.asin(x)

math.asin(x) 是 Python 中 math 模块的一个函数,用于计算一个数值 x 的反正弦(arcsine)值。反正弦函数是正弦函数的逆运算,它接受一个介于 -1 和 1 之间(包括 -1 和 1)的数值作为输入,并返回一个介于 -π/2 和 π/2 弧度(即 -90 度到 90 度)之间的角度值。

数学上,math.asin(x) 返回的是满足 sin(y) = x 的 y 值,其中 y 的范围是在 [-π/2, π/2] 弧度或 [-90, 90] 度。

例如:

  • math.asin(0) 将返回 0.0,因为正弦 0 度是 0。
  • math.asin(1) 将返回 1.5707963267948966(即 π/2 弧度,或 90 度),因为正弦 90 度是 1。
  • math.asin(-1) 将返回 -1.5707963267948966(即 -π/2 弧度,或 -90 度),因为正弦 -90 度是 -1。

请注意,如果 x 的值不在 -1 到 1 的范围内(包括 -1 和 1),math.asin 会引发 ValueError 异常。

下面是一个使用 math.asin 的例子:

import math# 计算反正弦值
angle_in_radians = math.asin(0.5)
print(angle_in_radians)  # 输出反正弦值(弧度)# 将弧度转换为度
angle_in_degrees = math.degrees(angle_in_radians)
print(angle_in_degrees)  # 输出反正弦值(度)

输出结果将是 asin(0.5) 的弧度和对应的角度值。

math.asin 在三角学、几何学和某些物理计算中非常有用,特别是在需要求解三角形角度或进行向量分析时。

math.atan(x)

math.atan(x) 是 Python 中 math 模块的一个函数,用于计算一个数值 x 的反正切(arctangent)值。反正切函数是正切函数的逆运算,它接受任何实数作为输入,并返回一个介于 -π/2 和 π/2 弧度(即 -90 度到 90 度)之间的角度值。

数学上,math.atan(x) 返回的是满足 tan(y) = x 的 y 值,其中 y 的范围是在 [-π/2, π/2] 弧度或 [-90, 90] 度。

例如:

  • math.atan(0) 将返回 0.0,因为正切 0 度是 0。
  • math.atan(1) 将返回 0.7853981633974483(即 π/4 弧度,或 45 度),因为正切 45 度是 1。
  • math.atan(-1) 将返回 -0.7853981633974483(即 -π/4 弧度,或 -45 度),因为正切 -45 度是 -1。

请注意,math.atan 可以接受任何实数作为输入,包括无穷大和 NaN(不是一个数字)。对于无穷大,它将返回 π/2 或 -π/2;对于 NaN,它将返回 NaN。

下面是一个使用 math.atan 的例子:

import math# 计算反正切值
angle_in_radians = math.atan(1)
print(angle_in_radians)  # 输出反正切值(弧度)# 将弧度转换为度
angle_in_degrees = math.degrees(angle_in_radians)
print(angle_in_degrees)  # 输出反正切值(度)

输出结果将是 atan(1) 的弧度和对应的角度值。

math.atan 在三角学、几何学和某些物理计算中非常有用,特别是在需要求解三角形角度或进行向量分析时。此外,它还经常用于计算复数的角度表示。

math.atan2(y, x)

math.atan2(y, x) 是 Python 中 math 模块的一个函数,它返回从 x 轴正半轴到点 (x, y) 的角度(以弧度为单位),这个角度的范围是 -π 到 π(-180 度到 180 度)。math.atan2 与 math.atan 的主要区别在于它接受两个参数,即 y 和 x,而不仅仅是一个比值。

math.atan2 函数在二维平面上确定一个点 (x, y) 相对于 x 轴的角度时非常有用。它考虑了四个象限,并返回正确的符号,使得结果始终在 -π 到 π 的范围内。

以下是 math.atan2 函数的一些例子:

  • math.atan2(1, 1) 将返回 0.7853981633974483(即 π/4 弧度,或 45 度),因为在第一象限中,从 x 轴正半轴到点 (1, 1) 的角度是 45 度。
  • math.atan2(1, -1) 将返回 2.356194490192345(即 3π/4 弧度,或 135 度),因为在第二象限中,从 x 轴正半轴到点 (1, -1) 的角度是 135 度。
  • math.atan2(-1, -1) 将返回 -0.7853981633974483(即 -π/4 弧度,或 -45 度),因为在第三象限中,从 x 轴正半轴到点 (-1, -1) 的角度是 -45 度。
  • math.atan2(-1, 1) 将返回 -2.356194490192345(即 -3π/4 弧度,或 -135 度),因为在第四象限中,从 x 轴正半轴到点 (-1, 1) 的角度是 -135 度。

当 x 和 y 都是 0 时,math.atan2(0, 0) 会引发 ValueError 异常,因为这种情况在数学上是不确定的。

下面是一个使用 math.atan2 的例子:

import math# 计算从 x 轴正半轴到点 (y, x) 的角度
angle_in_radians = math.atan2(y, x)
print(angle_in_radians)  # 输出角度(弧度)# 将弧度转换为度
angle_in_degrees = math.degrees(angle_in_radians)
print(angle_in_degrees)  # 输出角度(度)

在这个例子中,y 和 x 是你要计算角度的点的坐标。math.atan2 函数会返回这个点相对于 x 轴正半轴的角度,并且这个角度是在 -π 到 π 的范围内。

math.cos(x)

math.cos(x) 是 Python 的 math 模块中的一个函数,用于计算角度 x 的余弦值。x 应该是以弧度为单位的角度,而函数的返回值是 -1 到 1 之间的一个浮点数,表示对应角度的余弦值。

数学上,余弦函数表示一个角 x 在直角三角形中的邻边长度与斜边长度之比。在三角函数中,余弦函数是周期函数,周期为 2 * pi 弧度或 360 度。

这里是一些 math.cos 的示例:

  • math.cos(0) 将返回 1.0,因为在 0 度(或 0 弧度)时,余弦值是 1。
  • math.cos(math.pi / 2) 将返回 0.0,因为在 90 度(或 π/2 弧度)时,余弦值是 0。
  • math.cos(math.pi) 将返回 -1.0,因为在 180 度(或 π 弧度)时,余弦值是 -1。

math.cos 函数接受一个弧度值作为参数,如果你有一个以度为单位的角度,你需要先将它转换为弧度,可以使用 math.radians 函数进行转换。同样地,如果你需要将弧度值转换为度,可以使用 math.degrees 函数。

下面是一个使用 math.cos 的例子:

import math# 计算 45 度角的余弦值
angle_in_degrees = 45
angle_in_radians = math.radians(angle_in_degrees)  # 将角度转换为弧度cosine_value = math.cos(angle_in_radians)
print(cosine_value)  # 输出余弦值# 将弧度值转换回角度值
angle_back_in_degrees = math.degrees(angle_in_radians)
print(angle_back_in_degrees)  # 输出转换后的角度值

在这个例子中,我们首先计算了 45 度角的余弦值。由于 math.cos 需要弧度作为输入,我们使用 math.radians 函数将角度转换为弧度。然后,我们使用 math.degrees 函数将计算后的弧度值转换回角度值,以验证转换的正确性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/777467.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

react-navigation:

我的仓库地址:https://gitee.com/ruanjianbianjing/bj-hybrid react-navigation: 学习文档:https://reactnavigation.org 安装核心包: npm install react-navigation/native 安装react-navigation/native本身依赖的相关包: react-nativ…

开源 | 电动自行车充换电解决方案,从智能硬件到软件系统,全部自主研发

文章目录 一、产品功能部分截图1.手机端(小程序、安卓、ios)2.PC端 二、小程序体验账号以及PC后台体验账号1.小程序体验账号2.PC后台体验账号关注公众号获取最新资讯 三、产品简介?1. 充电桩云平台(含硬件充电桩)&…

Codeforces Round 841 (Div. 2) C. Even Subarrays

题目 思路&#xff1a; #include <bits/stdc.h> using namespace std; #define int long long #define pb push_back #define fi first #define se second #define lson p << 1 #define rson p << 1 | 1 const int maxn 1e6 5, inf 1e9, maxm 4e4 5; co…

Java学习之方法

目录 方法 方法声明格式&#xff1a; 调用方式&#xff1a; 详细说明 示例 --方法的声明及调用 语句块 练习 方法的重载(overload) 构成条件 示例 --方法重载 递归结构 缺陷 方法 方法(method)&#xff1a;一段用于完成特定功能的代码片段&#xff0c;类似于其他语…

--内部类

目录 1. 成员内部类 2. 静态内部类 3. 局部内部类 4. 匿名内部类 在Java中&#xff0c;内部类是定义在其他类内部的类。内部类有以下几种形式&#xff1a;成员内部类、静态内部类、局部内部类和匿名内部类。 1. 成员内部类 概念 成员内部类是定义在外部类的成员位置上的类。…

Zigbee技术在智能农业领域的应用研究

Zigbee技术在智能农业领域的应用研究 **摘要&#xff1a;**随着现代信息技术的飞速发展&#xff0c;智能农业已成为当今农业发展的新趋势。Zigbee技术作为一种低功耗、低成本的无线通信技术&#xff0c;在智能农业领域具有广泛的应用前景。本文深入分析了Zigbee技术的原理和特…

opencv 十九 python下实现多线程间rtsp直播流的复用

在多线程拉流的任务场景中&#xff0c;有时需要将一个rtsp拉取多次&#xff0c;每重新打开一次rtsp视频流就要多消耗一次带宽&#xff0c;为此基于类的静态对象实现rtsp视频流的复用。 1、实现代码 import threading import cv2,time #接收摄影机串流影像&#xff0c;采用多线…

【嵌入式机器学习开发实战】(七)—— 政安晨:通过ARM-Linux掌握基本技能【环境准备:树莓派】

ARM-Linux是一种针对ARM架构的操作系统&#xff0c;它的设计目标是在低功耗、低成本的硬件平台上运行。ARM-Linux可以运行在多种ARM处理器上&#xff0c;包括树莓派。 树莓派&#xff08;Raspberry Pi&#xff09;是一款基于ARM架构的单板计算机&#xff0c;由英国的树莓派基金…

【系统架构师】-第12章-信息系统架构

信息系统架构(ISA)是指对某一特定内容里的信息进行统筹、规划、设计、安排等一系列有机处理的活动。 为了更好地理解信息系统架构的定义&#xff0c; 特作如下说明: (1)架构是对系统的抽象&#xff0c;它通过描述元素、元素的外部可见属性及元素之间的关系来反映这种抽象。因此…

open_clip仓库成分与模型文件model.py 介绍

起因&#xff1a; 在DA-CLIP的开源库的DA-CLIP.md中自述该项目基于CLIP 和open_clip&#xff0c;在之前的退化类型检测中 我一度以为仓库只是使用了CLIP 的源码&#xff0c; 然而当发现缺少da-clip的模型名称时&#xff0c;我发现DA-CLIP使用的完全是open_clip的代码版本&#…

16.JRE和JDK

程序员在编写代码的时候其实是需要一些环境&#xff0c;例如我们之前写的HelloWorld。我们需要的东西有JVM、核心类库、开发工具。 1、JVM&#xff08;Java Virtual Machine&#xff09;&#xff1a;Java虚拟机&#xff0c;真正运行Java程序的地方。没有虚拟机&#xff0c;代码…

【微服务篇】分布式事务方案以及原理详解

分布式事务是指事务参与者、资源服务器、事务管理器分布在不同的分布式系统的多个节点之上的事务。在微服务架构、大型分布式系统和云计算等环境中&#xff0c;由于系统间调用和资源访问的复杂性&#xff0c;分布式事务变得尤为重要。 应用场景 跨系统交易&#xff1a;当交易…

C语言例4-9:格式字符s的使用例子

代码如下&#xff1a; //格式字符s的使用例子 #include<stdio.h> int main(void) {printf("%s,%5s,%-5s\n","Internet","Internet","Internet");//以三种不同格式&#xff0c;输出字符串printf("%10.5s,%-10.5s,%4.5s\n&q…

JAVA 100道题(22)

22.实现一个生产者-消费者问题&#xff0c;使用Java的线程同步机制。 生产者-消费者问题是一个经典的并发编程问题&#xff0c;其中生产者产生数据&#xff08;或产品&#xff09;&#xff0c;消费者消费这些数据。在Java中&#xff0c;我们可以使用wait()和notify()方法或者Bl…

2024年03月CCF-GESP编程能力等级认证C++编程五级真题解析

本文收录于专栏《C++等级认证CCF-GESP真题解析》,专栏总目录:点这里。订阅后可阅读专栏内所有文章。 一、单选题(每题 2 分,共 30 分) 第1题 唯一分解定理描述的内容是( )? A. 任意整数都可以分解为素数的乘积 B. 每个合数都可以唯一分解为一系列素数的乘积 C. 两个不…

rtthread studio 基于bsp生成代码stm32l475正点原子潘多拉,以及硬件配置

1、基于bsp生成代码 rtthread studio 很强大的一个功能就是可以根据芯片或者bsp 生成驱动代码&#xff0c;而且rtthread内核 已经集成到了代码中&#xff01;&#xff01;只需要关注于如何使用硬件和设备完成我们想要的功能就可以&#xff1b; 它的官网文档也特别详细&#x…

实用有趣的宝藏网站推荐!【第二期】

上次给大家推荐了10个宝藏网站&#xff08;http://t.csdnimg.cn/qcRWY&#xff09;&#xff0c;这次我又来啦&#xff01; 话不多说&#xff0c;直接开始&#xff01; 先收藏&#xff0c;防止以后找不到了&#xff01; 整理不易&#xff0c;顺便把赞留下吧&#xff01; 1. 爱…

江苏开放大学2024年春《市政管理学050011》第一次形考作业参考答案

答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 答案&#xff1a;更多答案&#xff0c;请关注【电大搜题】微信公众号 电大搜题 多的用不完的题库&#xff0c;支持文字、图片搜题…

代码随想录算法训练营Day55 ||leetCode 583. 两个字符串的删除操作 || 72. 编辑距离

583. 两个字符串的删除操作 这道题的状态方程比上一题简单一些 初始化如下 class Solution { public:int minDistance(string word1, string word2) {vector<vector<int>> dp(word1.size() 1, vector<int>(word2.size() 1));for (int i 0; i < word1…

数学错误总是越走越远,因为对前人一概不敢否定

最近整理了一下我以前对Erds-Turn猜想研究做的分析&#xff0c;得到的结论是&#xff1a;1927年产生的van der Waerden的结果尚未被正确证明&#xff0c;现存几个证明都有问题&#xff0c;特别地[F]的方法中无法证明在那个定义下的度量产生的拓扑里某些闭集是紧致集&#xff08…