百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

python入门到脱坑 字符串——运算符

off999 2025-06-13 16:08 3 浏览 0 评论

在Python中,字符串支持多种运算符操作,使得字符串处理更加灵活高效。以下是字符串运算符的全面详解:


一、字符串基本运算符

1. 拼接运算符+

s1 = "Hello"
s2 = "Python"
result = s1 + " " + s2  # "Hello Python"

2. 重复运算符*

s = "Hi"
print(s * 3)  # "HiHiHi"

3. 成员运算符in/not in

text = "Python编程"
print("Py" in text)     # True
print("Java" not in text)  # True

二、比较运算符

字符串按字典序(ASCII/Unicode值)逐个字符比较:

print("apple" < "banana")   # True(比较首字母ASCII码)
print("A" < "a")           # True(A:65 < a:97)
print("中" > "美")          # 比较Unicode编码(中:20013 > 美:32654)

常见比较场景:

运算符

说明

示例

==

内容完全相同

"hi" == "hi" → True

!=

内容不同

"A" != "a" → True

>

字典序大于

"b" > "a" → True

<

字典序小于

"A" < "B" → True

三、索引与切片运算符[]

1. 索引访问

s = "Python"
print(s[0])   # 'P'(正向索引,从0开始)
print(s[-1])  # 'n'(负向索引,-1表示最后一个)

2. 切片操作[start:end:step]

print(s[1:4])    # 'yth'(1到3号字符)
print(s[:3])     # 'Pyt'(从头开始到2号字符)
print(s[::2])    # 'Pto'(步长2)
print(s[::-1])   # 'nohtyP'(反转字符串)

四、格式化运算符%(旧式)

name = "Alice"
age = 25
print("%s is %d years old" % (name, age))  # "Alice is 25 years old"

占位符

类型

示例

%s

字符串

"%s" % "hi"

%d

整数

"%03d" % 5 → "005"

%f

浮点数

"%.2f" % 3.1415 → "3.14"

五、字符串方法 vs 运算符

1. 拼接对比

# + 运算符
s = "a" + "b"  

# join()方法(更高效处理多字符串)
parts = ["a", "b", "c"]
s = "".join(parts)  # "abc"

2. 包含判断对比

# in 运算符
if "Py" in "Python": ...

# find()方法(可获取位置)
pos = "Python".find("Py")  # 返回0(索引位置)

六、运算符优先级

字符串运算符优先级(从高到低):

  1. [](索引/切片)
  2. * +(重复/拼接)
  3. in not in == != 等比较运算符

示例:

print("a" + "b" * 2)  # "abb"(先执行乘法)
print(("a" + "b") * 2)  # "abab"(括号优先)

七、实用技巧

1. 快速构建分隔线

line = "-" * 30  # "------------------------------"

2. 密码掩码显示

password = "secret"
masked = password[:1] + "*" * (len(password)-1)  # "s*****"

3. 多条件判断

if "admin" in username or "root" in username:
    print("管理员账户")

八、注意事项

  1. 不可变性:所有运算符操作都返回新字符串
s = "hello"
s[0] = "H"  # 报错!字符串不可直接修改

性能考虑

  • 避免循环中使用 + 拼接字符串(推荐 join())
  • 频繁切片操作不影响性能(字符串不可变,切片共享内存)

编码问题

print("á" == "a") # False(看似相同,但Unicode组合方式不同)



掌握这些运算符后,你可以更高效地处理字符串操作

相关推荐

面试官:来,讲一下枚举类型在开发时中实际应用场景!

一.基本介绍枚举是JDK1.5新增的数据类型,使用枚举我们可以很好的描述一些特定的业务场景,比如一年中的春、夏、秋、冬,还有每周的周一到周天,还有各种颜色,以及可以用它来描述一些状态信息,比如错...

一日一技:11个基本Python技巧和窍门

1.两个数字的交换.x,y=10,20print(x,y)x,y=y,xprint(x,y)输出:102020102.Python字符串取反a="Ge...

Python Enum 技巧,让代码更简洁、更安全、更易维护

如果你是一名Python开发人员,你很可能使用过enum.Enum来创建可读性和可维护性代码。今天发现一个强大的技巧,可以让Enum的境界更进一层,这个技巧不仅能提高可读性,还能以最小的代价增...

Python元组编程指导教程(python元组的概念)

1.元组基础概念1.1什么是元组元组(Tuple)是Python中一种不可变的序列类型,用于存储多个有序的元素。元组与列表(list)类似,但元组一旦创建就不能修改(不可变),这使得元组在某些场景...

你可能不知道的实用 Python 功能(python有哪些用)

1.超越文件处理的内容管理器大多数开发人员都熟悉使用with语句进行文件操作:withopen('file.txt','r')asfile:co...

Python 2至3.13新特性总结(python 3.10新特性)

以下是Python2到Python3.13的主要新特性总结,按版本分类整理:Python2到Python3的重大变化Python3是一个不向后兼容的版本,主要改进包括:pri...

Python中for循环访问索引值的方法

技术背景在Python编程中,我们经常需要在循环中访问元素的索引值。例如,在处理列表、元组等可迭代对象时,除了要获取元素本身,还需要知道元素的位置。Python提供了多种方式来实现这一需求,下面将详细...

Python enumerate核心应用解析:索引遍历的高效实践方案

喜欢的条友记得关注、点赞、转发、收藏,你们的支持就是我最大的动力源泉。根据GitHub代码分析统计,使用enumerate替代range(len())写法可减少38%的索引错误概率。本文通过12个生产...

Python入门到脱坑经典案例—列表去重

列表去重是Python编程中常见的操作,下面我将介绍多种实现列表去重的方法,从基础到进阶,帮助初学者全面掌握这一技能。方法一:使用集合(set)去重(最简单)pythondefremove_dupl...

Python枚举类工程实践:常量管理的标准化解决方案

本文通过7个生产案例,系统解析枚举类在工程实践中的应用,覆盖状态管理、配置选项、错误代码等场景,适用于Web服务开发、自动化测试及系统集成领域。一、基础概念与语法演进1.1传统常量与枚举类对比#传...

让Python枚举更强大!教你玩转Enum扩展

为什么你需要关注Enum?在日常开发中,你是否经常遇到这样的代码?ifstatus==1:print("开始处理")elifstatus==2:pri...

Python枚举(Enum)技巧,你值得了解

枚举(Enum)提供了更清晰、结构化的方式来定义常量。通过为枚举添加行为、自动分配值和存储额外数据,可以提升代码的可读性、可维护性,并与数据库结合使用时,使用字符串代替数字能简化调试和查询。Pytho...

78行Python代码帮你复现微信撤回消息!

来源:悟空智能科技本文约700字,建议阅读5分钟。本文基于python的微信开源库itchat,教你如何收集私聊撤回的信息。[导读]Python曾经对我说:"时日不多,赶紧用Python"。于是看...

登录人人都是产品经理即可获得以下权益

文章介绍如何利用Cursor自动开发Playwright网页自动化脚本,实现从选题、写文、生图的全流程自动化,并将其打包成API供工作流调用,提高工作效率。虽然我前面文章介绍了很多AI工作流,但它们...

Python常用小知识-第二弹(python常用方法总结)

一、Python中使用JsonPath提取字典中的值JsonPath是解析Json字符串用的,如果有一个多层嵌套的复杂字典,想要根据key和下标来批量提取value,这是比较困难的,使用jsonpat...

取消回复欢迎 发表评论: