首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

Python-VBA编程500例-019-01(入门级)

  • 25-03-03 08:02
  • 3519
  • 8995
blog.csdn.net

目录

1、找不同(限定添加字符):

1-1、Python:

1-2、VBA:

2、相关文章:

Python算法之旅:http://iyenn.com/rec/1699032.html?spm=1001.2014.3001.5502

个人主页:非风V非雨-CSDN博客

欢迎志同道合者一起交流学习,我的QQ:94509325/微信

        找不同(Find The Difference)(也被称为“找茬”或“差异识别”)是一种训练观察力和注意力的技能,它可以在多个领域中找到实际应用。常见的应用场景有:

1、教育领域:在幼儿园和小学教育中,找不同游戏常被用来帮助孩子们锻炼他们的观察力和专注力;在艺术和设计课程中,学生可能需要找出两幅相似画作中的细微差别,以培养对细节的关注。

2、测试和质量控制:在制造业中,找不同技能用于产品质量检查,确保产品符合预定的标准和规格;在软件测试中,测试人员需要找出新版本软件与旧版本之间的差异,确保所有功能正常工作。

3、法律和调查:在法医学中,专家可能需要比较不同照片或证据以找出关键差异,帮助解决犯罪案件;在审计和财务调查中,找不同技能有助于发现财务报表或记录中的不一致之处。

4、游戏和娱乐:找不同游戏是休闲活动的一种形式,可以在家庭聚会、朋友聚会或在线平台上进行,为人们提供娱乐和放松。

5、广告和市场营销:在广告创意中,找不同游戏或挑战可以用来吸引公众的注意力,增加品牌曝光度;在产品推广中,通过展示产品的新旧版本差异,可以强调产品的升级和改进。

6、科学研究:在生物学中,研究人员可能需要比较不同物种或基因序列的差异,以了解它们的进化关系;在天文学中,科学家通过比较不同时间点的观测数据来寻找宇宙中的变化或新发现。

7、安全和情报分析:在安全监控中,分析师需要识别监控录像中的异常行为或变化;在情报分析中,找不同技能有助于发现情报信息中的不一致之处或隐藏线索。

        总之,找不同这项技能在日常生活和工作中都有广泛的应用,它可以帮助人们更准确地识别差异,提高观察和判断能力。

1、找不同(限定添加字符):
1-1、Python:
  1. # 1.问题描述:
  2. # 给定字符串str1和str2,字符串str2由随机打乱字符顺序的字符串str1在任意位置添加一个字符生成,找出在str2中添加的那个字符.
  3. # 2.问题示例:
  4. # 输入str1 = "myelsa",str2 = "myealsa",输出a.
  5. # 3.代码实现:
  6. class Solution:
  7. # 参数str1:原始字符串
  8. # 参数str2:添加字符后的字符串
  9. # 返回值:添加的字符
  10. def find_the_difference(self, str1, str2):
  11. # 遍历两个字符串
  12. for i in range(len(str1)):
  13. # 如果发现不同的字符,直接返回该字符
  14. if str1[i] != str2[i]:
  15. return str2[i]
  16. # 如果遍历完str1后还没有找到不同的字符,那么str2中剩下的最后一个字符就是添加的字符
  17. return str2[-1]
  18. # 主函数
  19. if __name__ == '__main__':
  20. # 对str1/str2两个参数进行赋值
  21. str1 = "myelsa"
  22. str2 = "myealsa"
  23. # 实例化Solution类并调用自定义函数
  24. solution = Solution()
  25. # 打印结果
  26. print("原始字符串:", str1)
  27. print("添加字符后的字符串:", str2)
  28. print("输出插入的字符:", solution.find_the_difference(str1, str2))
  29. # 4.运行结果:
  30. # 原始字符串: myelsa
  31. # 添加字符后的字符串: myealsa
  32. # 输出插入的字符: a
1-2、VBA:
  1. Rem 自定义函数,功能:找不同(限定添加字符)
  2. Function FindTheDifference(str1 As String, str2 As String) As String
  3. Dim i As Integer
  4. ' 遍历两个字符串直到达到str1的长度
  5. For i = 1 To Len(str1)
  6. ' 如果发现不同的字符,直接返回该字符
  7. If mid(str1, i, 1) <> mid(str2, i, 1) Then
  8. FindTheDifference = mid(str2, i, 1)
  9. Exit Function
  10. End If
  11. Next i
  12. ' 如果遍历完str1后还没有找到不同的字符
  13. If Len(str1) < Len(str2) Then
  14. ' str2中剩下的最后一个字符就是添加的字符
  15. FindTheDifference = mid(str2, Len(str1) + 1, 1)
  16. ElseIf Len(str1) = Len(str2) Then
  17. ' 如果两个字符串长度相同但内容不同,则没有多余的字符
  18. ' 这里返回一个空字符串,因为str2并非在str1基础上增加一个字符衍生而来
  19. FindTheDifference = ""
  20. MsgBox "字符串 " & str2 & " 与 " & str1 & " 长度相同但内容不同,不符合要求", vbExclamation, "警告"
  21. Else
  22. ' 如果str1长度大于str2,这是不符合逻辑的,理论上str2应至少多一个字符
  23. ' 抛出错误或进行其他处理
  24. MsgBox "字符串 " & str2 & " 的长度不应该小于 " & str1, vbExclamation, "错误"
  25. ' 函数返回错误值或进行其他处理
  26. FindTheDifference = "Error"
  27. End If
  28. End Function
  29. Rem 执行过程,功能:调用自定义函数FindTheDifference,在立即窗口中输出结果
  30. Sub TestRun()
  31. ' 定义变量
  32. Dim str1 As String
  33. Dim str2 As String
  34. Dim result As String
  35. ' 对str1和str2两个参数进行赋值
  36. str1 = "myelsa"
  37. str2 = "myelsar"
  38. ' 调用自定义函数
  39. result = FindTheDifference(str1, str2)
  40. ' 打印结果
  41. Debug.Print "原始字符串: " & str1
  42. Debug.Print "添加字符后的字符串: " & str2
  43. Debug.Print "输出插入的字符: " & IIf(result <> "Error", result, "无有效字符或发生错误")
  44. End Sub
  45. '结果输出:
  46. '原始字符串: myelsa
  47. '添加字符后的字符串: myelsar
  48. '输出插入的字符: r

 注意:1-2中的代码需粘贴到你的VBA编辑器中,按F5执行TestRun程序,在立即窗口中输出结果。

2、相关文章:

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

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

2-3、Python-VBA编程500例-019-02(入门级) 

2-4、Python-VBA编程500例-020-01(入门级) 

Python算法之旅:http://iyenn.com/rec/1699032.html?spm=1001.2014.3001.5502
个人主页:非风V非雨-CSDN博客
欢迎志同道合者一起交流学习,我的QQ:94509325/微信:

文章知识点与官方知识档案匹配,可进一步学习相关知识
算法技能树首页概览60120 人正在系统学习中
遨游码海,我心飞扬
微信名片
注:本文转载自blog.csdn.net的神奇夜光杯的文章"https://myelsa1024.blog.csdn.net/article/details/137025912"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top