【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
实时数仓Hologres,5000CU*H 100GB 3个月
简介: 本篇将详细介绍Python中的字符串类型及其常见操作,包括字符串的定义、转义字符的使用、字符串的连接与格式化、字符串的重复和切片、不可变性、编码与解码以及常用内置方法等。通过本篇学习,用户将掌握字符串的操作技巧,并能灵活处理文本数据。

本篇将详细介绍Python中的字符串类型及其常见操作,包括字符串的定义、转义字符的使用、字符串的连接与格式化、字符串的重复和切片、不可变性、编码与解码以及常用内置方法等。通过本篇学习,用户将掌握字符串的操作技巧,并能灵活处理文本数据。


一、字符串的定义与基本使用

1.1 字符串的定义
  1. 单引号和双引号字符串

    greeting1 = '你好,Python!'
    greeting2 = "欢迎学习Python"
    print(type(greeting1), type(greeting2))
    

    输出

    <class 'str'> <class 'str'>
    
  2. 多行字符串

    description = """这是一段多行字符串的例子。
    它可以跨越多行,
    不需要额外的换行符。"""
    print(description)
    

    输出

    这是一段多行字符串的例子。
    它可以跨越多行,
    不需要额外的换行符。
    
  3. 包含中文字符的字符串

    s1 = "欢迎来到Python编程世界"
    print(s1)
    

    输出

    欢迎来到Python编程世界
    

1.2 字符串的不可变性

在Python中,字符串是不可变的,这意味着字符串一旦创建就无法修改。

s = "hello"
# s[0] = "H"  # 会报错,因为字符串不可变
new_s = "H" + s[1:]  # 创建一个新的字符串
print(new_s)  # 输出 'Hello'

二、转义字符

2.1 常见转义字符
字符 Hex值 说明
\n 0A 换行(Line Feed)
\t 09 水平制表符(Tab)
\r 0D 回车符(Carriage Return)
\' 27 单引号
\" 22 双引号
\\ 5C 反斜杠符号
\v 0B 垂直定位
\f 0C 换页(Form Feed)
\a 07 响铃
\b 08 退格符(Backspace)
  1. 转义字符示例

    s = "你好,\nPython"
    print(s)
    

    输出

    你好,
    Python
    
2.2 使用 r 取消转义

通过在字符串前加上 rR,可以取消转义字符的效果,使其原样输出。

s1 = '欢迎使用\nPython'
s2 = r'欢迎使用\nPython'
print('普通字符串:', s1)
print('原始字符串:', s2)

输出

普通字符串: 欢迎使用
Python
原始字符串: 欢迎使用\nPython

三、字符串的常见操作

3.1 字符串的长度

使用 len() 函数获取字符串的长度。

str1 = 'Python编程'
print(len(str1))  # 输出 6

3.2 字符串连接
  1. 使用 + 拼接

    part1 = 'Python'
    part2 = '编程'
    combined = part1 + ' ' + part2
    print(combined)
    

    输出

    Python 编程
    
  2. 使用 join() 拼接

    parts = ['Python', '是', '最流行的编程语言']
    print(' '.join(parts))
    

    输出

    Python 是 最流行的编程语言
    

3.3 格式化字符串
  1. 使用 % 格式化

    name = 'Python'
    year = 2024
    print('%s 是 21世纪最流行的编程语言之一,年 %d' % (name, year))
    
  2. 使用 f-string

    language = 'Python'
    level = '初级'
    print(f"{language} 是一门 {level} 编程语言")
    

四、字符串的其他操作

4.1 重复字符串
repeat = "学编程 "
print(repeat * 3)

输出

学编程 学编程 学编程

4.2 字符串切片

通过切片操作获取字符串的子字符串。

s = "Python编程基础"
print(s[0:6])  # 输出 'Python'
print(s[6:])   # 输出 '编程基础'
print(s[::2])  # 输出 'Pto编基'

4.3 反转字符串
s = "Python"
print(s[::-1])  # 输出 'nohtyP'

4.4 判断字符串包含
s = "Python编程"
print("编程" in s)  # True
print("Java" not in s)  # True

五、字符串内置方法

  1. 大小写转换

    s = "Python"
    print(s.upper())  # 输出 'PYTHON'
    print(s.lower())  # 输出 'python'
    
  2. 查找子字符串

    s = "Python编程"
    print(s.find("编程"))  # 输出 6
    
  3. 去除两端空白字符

    s = "  Python编程  "
    print(s.strip())  # 输出 'Python编程'
    
  4. 拆分与合并

    s = "Python,Java,C++"
    languages = s.split(",")
    print("-".join(languages))
    

六、编码与解码

s = "Python"
s_utf8 = s.encode('utf-8')
print(s_utf8)  # b'Python'

print(s_utf8.decode('utf-8'))  # 'Python'

七、小结

本篇详细介绍了Python中的字符串类型,包括字符串的定义、不可变性、转义字符、字符串拼接与格式化、重复与切片操作,还补充了内置方法与编码解码技巧。通过本篇学习,用户将掌握各种字符串操作技巧,并灵活应对文本处理需求。


上一篇: 「Mac上学Python 10」基础篇4 - 布尔类型详解

下一篇: 「Mac上学Python 12」基础篇6 - 输入输出与格式化详解


目录
相关文章
|
2月前
|
Python
在 Python 中,如何将日期时间类型转换为字符串?
在 Python 中,如何将日期时间类型转换为字符串?
128 64
|
25天前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
64 8
|
29天前
|
存储 测试技术 Python
Python 中别再用 ‘+‘ 拼接字符串了!
通过选择合适的字符串拼接方法,可以显著提升 Python 代码的效率和可读性。在实际开发中,根据具体需求和场景选择最佳的方法,避免不必要的性能损失。
44 5
|
1月前
|
Python
使用Python计算字符串的SHA-256散列值
使用Python计算字符串的SHA-256散列值
40 7
|
2月前
|
Python
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
在 Python 中,如何将字符串中的日期格式转换为日期时间类型?
41 6
|
2月前
|
Python
在 Python 中实现各种类型的循环判断
在 Python 中实现各种类型的循环判断
34 2
|
3月前
|
Java 索引 Python
【10月更文挑战第19天】「Mac上学Python 30」基础篇11 - 高级循环技巧与应用
本篇将介绍更深入的循环应用与优化方法,重点放在高级技巧和场景实践。我们将讲解enumerate()与zip()的妙用、迭代器与生成器、并发循环以及性能优化技巧。这些内容将帮助您编写更高效、结构更合理的代码。
75 5
|
3月前
|
数据安全/隐私保护 Python
【10月更文挑战第17天】「Mac上学Python 28」基础篇9 - 条件语句与逻辑判断
在Python中,条件语句和逻辑判断是控制程序执行流程的关键工具,帮助程序在不同条件下做出不同决策。通过本篇的学习,您将掌握单选、双分支、多选结构、单行条件表达式、条件嵌套、条件判断的类型和逻辑运算符的用法,从而更灵活地控制程序执行流程。
62 5
|
3月前
|
Python
【10月更文挑战第18天】「Mac上学Python 29」基础篇10 - 循环结构与迭代控制
在Python中,循环结构是控制程序执行的重要工具。通过学习本篇内容,您将掌握如何使用for循环和while循环来高效地处理重复任务,并了解break、continue和else的使用方式。同时,我们还会探索嵌套循环和典型应用场景中的实际应用。
47 2
|
3月前
|
存储 算法 Python
【10月更文挑战第16天】「Mac上学Python 27」小学奥数篇13 - 动态规划入门
本篇将通过 Python 和 Cangjie 双语介绍动态规划的基本概念,并解决一个经典问题:斐波那契数列。学生将学习如何使用动态规划优化递归计算,并掌握编程中的重要算法思想。
114 3