首页 > 编程语言 >Python-VBA函数之旅-abs()函数

Python-VBA函数之旅-abs()函数

时间:2024-04-07 19:32:36浏览次数:23  
标签:10 VBA 函数 输出 Python 3.14 abs 绝对值

        abs函数绝对值函数(absolute value function)的缩写,在编程中有多种实际应用场景,因为它能够方便地处理需要忽略数值符号的情况。常见的应用场景有:

1、数值处理:在数据分析和科学计算中,经常需要处理各种数值。使用abs函数可以确保获得的数值是非负的,从而避免产生错误结果或无效数据。例如,在Python中,当我们需要计算一组数的总和或平均值时,如果这组数包含负数,使用abs函数可以确保结果是非负的。

2、距离计算:在计算机视觉、机器学习和模式识别等领域,经常需要计算两个向量或点之间的距离。通过将绝对值应用于差值,我们可以得到正确的距离值。例如,使用abs(x2-x1)和abs(y2-y1)可以计算二维平面上两点之间的距离。

3、数值排序:在排序算法中,可能需要按照数值的大小对数据进行排序。使用abs函数可以将负数转换为正数,从而确保排序的准确性。

4、数据库查询:在SQL查询中,abs函数也发挥着重要作用。例如,当我们想要找出最大的订单金额而不考虑其正负时,可以使用abs函数对订单金额取绝对值。同样,当比较工资或其他数值字段时,abs函数可以帮助我们忽略符号差异,只关注数值的大小。

5、信号处理:在信号处理领域,abs函数常用于计算信号的幅值,即信号的绝对值。这对于分析信号的强度和变化非常有用。

6、逻辑操作:在某些逻辑操作中,我们可能希望忽略数值的符号。使用abs函数可以确保比较或计算操作基于数值的绝对值进行。

7、数据验证:在处理数据时,abs函数还可以用于验证数据的偏差或变化范围。例如,通过计算数据点与平均值的绝对差值,我们可以评估数据的离散程度。

        综上所述,abs函数在编程中的实际应用场景非常广泛,涉及数据分析、科学计算、图像处理、信号处理等多个领域。

 

1、abs函数:
1-1、Python:
# 1.函数:abs(absolute value function,取绝对值函数前3个字母命名)
# 2.功能:用于计算一个数的绝对值
# 3.语法:abs(x)
# 4.参数:
# 4-1. x是计算绝对值的数值表达式,这个表达式可以是任何返回数值类型的Python表达式,包括变量、常量、算术表达式或函数调用等.
# 4-2. x可以是整数、浮点数或复数.
# 5.返回值:返回x参数的绝对值.
# 6.说明:需要注意的是,如果你尝试对不能转换为数值类型的对象使用abs(x)函数(例如字符串或列表),
#        Python会抛出一个TypeError异常,因为abs()函数只能接受数值类型的参数.
# 7.示例:
# 整数
positive_int = 10
negative_int = -10
print(abs(positive_int))  # 输出: 10
print(abs(negative_int))  # 输出: 10

# 浮点数
positive_float = 3.14
negative_float = -2.71
print(abs(positive_float))  # 输出: 3.14
print(abs(negative_float))  # 输出: 2.71

# 零
zero = 0
print(abs(zero))  # 输出: 0

# 复数(返回复数的模,即绝对值)
complex_num = 3 + 4j
print(abs(complex_num))  # 输出: 5.0(即sqrt(3^2 + 4^2))

# 使用变量
num = -10
absolute_value = abs(num)
print(absolute_value)  # 输出: 10

# 使用常量
print(abs(-3.14))  # 输出: 3.14

# 使用算术表达式
print(abs(4 - 9))  # 输出: 5

# 使用函数返回值
def get_negative_number():
    return -5
print(abs(get_negative_number()))  # 输出: 5

# 使用非数值类型,发出的报警信息
# print(abs("myelsa"))
# TypeError: bad operand type for abs(): 'str'
# 8.运行结果:
# 10
# 10
# 3.14
# 2.71
# 0
# 5.0
# 10
# 3.14
# 5
# 5
1-2、VBA:
' 1.函数:Abs(Absolute Value Function,取绝对值函数前3个字母命名)
' 2.功能:用于计算一个数的绝对值
' 3.语法:Abs(x)
' 4.参数:
' 4-1. x是计算绝对值的数值表达式,这个表达式可以是任何返回数值类型的表达式,包括变量、常量、算术表达式或函数调用等.
' 4-2. x可以是整数、浮点数或复数.
' 5.返回值:返回x参数的绝对值.
' 6.说明:需要注意的是,如果你尝试对不能转换为数值类型的对象使用Abs(x)函数(例如字符串或列表),VBA会抛出一个TypeError异常,因为Abs(x)函数只能接受数值类型的参数.
'         此外,在VBA中,函数的命名通常遵循Pascal命名法(即每个单词的首字母大写),而不是Python中的小写加下划线风格。因此,在VBA中我们使用Abs(x),而不是abs(x).
' 7.示例:
'--------------------------------------------------------------------------------------------------------------------------------------------------------------
Rem 自定义函数,功能:返回值供其他过程调用
Function GetNegativeNumber() As Integer
    GetNegativeNumber = -5
End Function
Rem 自定义函数,功能:计算复数的模
Function ComplexModulus(realPart As Double, imagPart As Double) As Double
    ' 计算复数的模(sqrt(realPart^2 + imagPart^2))并返回结果
    ComplexModulus = Sqr(realPart * realPart + imagPart * imagPart)
End Function
Rem 执行过程,功能:演示Abs(x)函数传不同参数类型所得到的结果
Sub TestRun()
    ' 定义整数变量
    Dim positive_int As Integer
    Dim negative_int As Integer
    ' 定义浮点数变量
    Dim positive_float As Double
    Dim negative_float As Double
    ' 定义整数变量,用于存储零
    Dim zero As Integer
    ' 定义整数变量,用于后续计算
    Dim num As Integer
    ' 定义双精度浮点数变量,用于存储绝对值
    Dim absolute_value As Double
    ' 定义双精度浮点数变量,用于存储复数的实部
    Dim realPart As Double
    ' 定义双精度浮点数变量,用于存储复数的虚部
    Dim imagPart As Double
    ' 定义双精度浮点数变量,用于存储复数的模
    Dim modulus As Double
    ' 定义字符串变量
    Dim str1 As String
        
    ' 整数部分
    ' 赋值为正整数10
    positive_int = 10
    ' 赋值为负整数-10
    negative_int = -10
    ' 输出正整数的绝对值,结果为10
    Debug.Print Abs(positive_int) ' 输出: 10
    ' 输出负整数的绝对值,结果为10
    Debug.Print Abs(negative_int) ' 输出: 10
        
    ' 浮点数部分
    ' 赋值为正浮点数3.14
    positive_float = 3.14
    ' 赋值为负浮点数-2.71
    negative_float = -2.71
    ' 输出正浮点数的绝对值,结果为3.14
    Debug.Print Abs(positive_float) ' 输出: 3.14
    ' 输出负浮点数的绝对值,结果为2.71
    Debug.Print Abs(negative_float) ' 输出: 2.71
        
    ' 零的处理
    ' 赋值为0
    zero = 0
    ' 输出0的绝对值,结果为0
    Debug.Print Abs(zero) ' 输出: 0
        
    ' 使用变量计算绝对值
    ' 赋值为-10
    num = -10
    ' 计算num的绝对值并存储在absolute_value中
    absolute_value = Abs(num)
    ' 输出absolute_value的值,结果为10
    Debug.Print absolute_value ' 输出: 10
        
    ' 使用常量计算绝对值
    ' 输出-3.14的绝对值,结果为3.14
    Debug.Print Abs(-3.14) ' 输出: 3.14
        
    ' 使用算术表达式计算绝对值
    ' 输出4 - 9的结果的绝对值,结果为5
    Debug.Print Abs(4 - 9) ' 输出: 5
    
    ' 输出GetNegativeNumber()返回值的绝对值,结果为5
    Debug.Print Abs(GetNegativeNumber()) ' 输出: 5
        
    ' 定义复数的实部和虚部
    realPart = 3
    imagPart = 4
        
    ' 调用ComplexModulus函数计算复数的模
    modulus = ComplexModulus(realPart, imagPart)
        
    ' 输出结果,显示复数3 + 4j的模
    Debug.Print "复数" & realPart & " + " & imagPart & "j的模: " & modulus
    
    ' 使用字符串计算绝对值,弹出警示对话框:类型不匹配
    str1 = "Myelsa"
    Debug.Print Abs(str1)
End Sub
'结果输出:
'10
'10
' 3.14
' 2.71
'0
'10
' 3.14
'5
'5
'复数3 + 4j的模: 5
2、相关文章:

2-1、Python-VBA编程500例-033(入门级)

Myelsa的Python算法之旅(高铁直达):Myelsa的Python算法之旅(高铁直达)-CSDN博客
Myelsa的Python函数之旅(高铁直达):Myelsa的Python函数之旅(高铁直达)
欢迎访问个人主页:非风V非雨-CSDN博客
欢迎志同道合者一起交流学习,我的QQ:94509325/微信:

标签:10,VBA,函数,输出,Python,3.14,abs,绝对值
From: https://blog.csdn.net/ygb_1024/article/details/137471988

相关文章

  • pandas中cummin() 函数的应用
    cummin()函数用于计算DataFrame或Series中数值型数据的累积最小值。它将沿着指定的轴(行或列)对数据进行累积求最小值,并返回一个具有相同形状的DataFrame或Series。下面是一个示例,说明如何使用cummin()函数:        importpandasaspd#创建一个DataFram......
  • Python大作业 金融股票公告对股市影响(96分)——blog6
    这个其实是会计专业财务管理学的期末大作业,作业展现形式可以多样。由于授课老师除了财务管理学,还开设了python量化交易课程,投其所好,于是我就选择了python编程序,再录视频讲解的方法,最终获得96的最高分。我的大作业主要使用ajax请求下的增量爬虫,爬取公告内容,使用词云筛选分析公......
  • Python——__init__.py文件
    在Python中,__init__.py文件是一个特殊的文件,常用于将一个普通的文件夹变成一个Python包。这个文件的存在告诉Python解释器,该文件夹应该被视为一个Python包或模块,从而可以导入其中的模块或子包。__init__.py的用途:初始化包:__init__.py文件将一个目录标识为Python包,允许......
  • python计算机毕设【附源码】汉服文化管理系统(django+mysql+论文)
    本系统(程序+源码)带文档lw万字以上  文末可获取本课题的源码和程序系统程序文件列表系统的选题背景和意义选题背景:汉服,作为中国古代汉族传统服饰的总称,承载了丰富的历史文化遗产和审美价值。近年来,随着国民文化自信心的提升和传统文化复兴的浪潮,汉服文化逐渐走进了公众的......
  • 分享一个Python爬虫入门实例(有源码,学习使用)
    一、爬虫基础知识Python爬虫是一种使用Python编程语言实现的自动化获取网页数据的技术。它广泛应用于数据采集、数据分析、网络监测等领域。以下是对Python爬虫的详细介绍:架构和组成:下载器:负责根据指定的URL下载网页内容,常用的库有Requests和urllib。解析器:用于解析......
  • Python随机波动性SV模型:贝叶斯推断马尔可夫链蒙特卡洛MCMC分析英镑/美元汇率时间序列
    全文链接:https://tecdat.cn/?p=33885原文出处:拓端数据部落公众号本文描述了帮助客户使用马尔可夫链蒙特卡洛(MCMC)方法通过贝叶斯方法估计基本的单变量随机波动模型,就像Kim等人(1998年)所做的那样。定义模型以及从条件后验中抽取样本的函数的代码也在Python脚本中提供。  ......
  • DS2500 Python实践问题
    2024年春季Python分级指南在DS2500中,您将有一个项目、实验室、家庭作业和Python实践问题(PPP),所有这些都有助于您的成绩。对于这项工作中的一些,你的分数将完全基于正确性,而对于其他工作,你的编码/可视化风格将发挥重要作用。正确性:实验室和PPP实验室和购买力平价是自动评分的,如果自动......
  • 身份证真伪查询接口、身份证实名认证一行python代码即可实现,实时数据
    互联网多元化的发展使得互联网金融、O2O、交友等新型商业形式不断的兴起与创新,也正因如此,互联网企业对于实名认证接口的需求也在不断的增多,对数据形式,可靠性也有了更高的需求,对此衍生了身份证实名认证接口业务,那么如何通过一行python代码来实现实名认证呢?以翔云身份证实......
  • memset()函数及其作用
    一、memset()memset()函数是C/C++语言中的一个标准库函数,用于将一块内存空间的内容设置为指定的值。其函数原型为:void*memset(void*ptr,intvalue,size_tnum);参数说明:-ptr:指向要设置数值的内存块的指针。-value:要设置的值,通常是一个无符号字符。-num:要设......
  • Python爬虫小白入门学习
    最近,被人吐槽最多的莫过于不管打开什么软件,几乎都会不小心跳转到购物网页。于是,“本来想去XXX,结果一打开就跳转到淘宝”,也成了当下刷屏的互联网热梗——别人:条条大路通罗马我:所有APP都能通淘宝更有网友调侃:什么时候我的人生也能像淘宝一样,随便怎么跳转都能成功。虽然这......