当前位置: 首页 > news >正文

Python编程陷阱(五)

陷阱16:不要使用in运算符来判断一个字符串是否包含另一个字符串

  • 字符串是Python中的一种基本的数据类型,它可以表示文本或其他符号序列。
  • 有时候,我们需要判断一个字符串是否包含另一个字符串,比如判断一个网址是否包含某个域名,或者判断一个单词是否包含某个字母。
  • 但是,如果我们使用in运算符来判断一个字符串是否包含另一个字符串,就可能导致一些意想不到的结果,甚至引发错误。

错误的代码

# 定义一个字符串,表示一个网址
url = "https://www.bing.com/search?q=python"# 使用in运算符来判断字符串是否包含"bing",期望得到 True
print("bing" in url) # True# 使用in运算符来判断字符串是否包含"google",期望得到 False
print("google" in url) # False# 使用in运算符来判断字符串是否包含"python",期望得到 True
print("python" in url) # True# 使用in运算符来判断字符串是否包含"py",期望得到 True
print("py" in url) # True

为什么会出错呢?

  • 因为使用in运算符来判断一个字符串是否包含另一个字符串,会返回True,如果这个字符串是另一个字符串的子串,也就是说,它在另一个字符串中连续出现,而不管它是否是一个单独的单词或部分。

相关文章:

  • 【Java并发编程二】线程的基本知识
  • YOLOv7独家原创改进:最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度
  • MSYS2介绍及工具安装
  • SELinux零知识学习十七、SELinux策略语言之类型强制(2)
  • excel用RAND函数、或者RAND.NV函数生成随机数、这两个函数的区别
  • NFTScan 正式上线 Viction NFTScan 浏览器和 NFT API 数据服务
  • OpenCV+特征检测
  • FDM(傅里叶分解)
  • 基于springboot实现私人健身与教练预约管理系统项目【项目源码+论文说明】
  • Pytorch np.arange函数
  • C#实现将Mysql数据迁移到SQL数据库
  • js制作九宫格抽奖功能
  • 如何在WPF应用程序中全局捕获异常
  • 路径操作 合法路径名
  • QT小记:警告Use multi-arg instead
  • 11111111
  • DOM的那些事
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • gops —— Go 程序诊断分析工具
  • IIS 10 PHP CGI 设置 PHP_INI_SCAN_DIR
  • JAVA之继承和多态
  • nginx 配置多 域名 + 多 https
  • 从0到1:PostCSS 插件开发最佳实践
  • 基于 Babel 的 npm 包最小化设置
  • 区块链分支循环
  • 如何合理的规划jvm性能调优
  • 手写一个CommonJS打包工具(一)
  • 腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
  • 学习使用ExpressJS 4.0中的新Router
  • 一个完整Java Web项目背后的密码
  •  一套莫尔斯电报听写、翻译系统
  • 用quicker-worker.js轻松跑一个大数据遍历
  • 追踪解析 FutureTask 源码
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • 微龛半导体获数千万Pre-A轮融资,投资方为国中创投 ...
  • # MySQL server 层和存储引擎层是怎么交互数据的?
  • #DBA杂记1
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (四)鸿鹄云架构一服务注册中心
  • (转)3D模板阴影原理
  • (转)Android学习笔记 --- android任务栈和启动模式
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)Linux下编译安装log4cxx
  • .Net - 类的介绍
  • .NET Framework与.NET Framework SDK有什么不同?
  • .net framwork4.6操作MySQL报错Character set ‘utf8mb3‘ is not supported 解决方法
  • .Net MVC4 上传大文件,并保存表单
  • .net 使用ajax控件后如何调用前端脚本
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式(二)...
  • .NET开发人员必知的八个网站
  • .Net面试题4
  • [ 云计算 | AWS ] AI 编程助手新势力 Amazon CodeWhisperer:优势功能及实用技巧
  • [ArcPy百科]第三节: Geometry信息中的空间参考解析