# Python 中的字符串函数记录 (部分)
开始前,我们要先了解 什么是字符串函数?
Python 字符串函数是 Python 编程语言中用于处理字符串的内置函数。它们是 Python 提供的一组预定义函数,用于对字符串进行各种操作和转换。
Python 字符串函数可以用于处理单个字符串,也可以用于处理字符串的集合(如字符串列表)。它们允许您执行各种任务,例如查找子字符串、替换字符串中的字符、拆分字符串、连接多个字符串、转换字符串的大小写等。
以下是今天的 Python 字符串函数的示例:
max(str)
:用于返回字符串 str 中最大的字母。min(str)
: 用于返回字符串 str 中最小的字母。string.strip()
: 用于从字符串两端删除指定的字符(默认为空格)。string.swapcase()
: 用于将字符串中的大小写字母进行互换。string.capitalize()
: 用于将字符串的第一个字符转换为大写字母,其余字符转换为小写字母。
这只是一小部分 Python 字符串函数的示例,还有很多其他函数可用于字符串处理。大家可以根据需要查阅 Python 官方文档或其他教程来了解更多关于 Python 字符串函数的详细信息和用法。
# 1.max (str) 函数
函数 max(str)
返回字符串 str
中最大的字母的过程:
+-------------------+ | |
| max(str)函数 | | |
+-------------------+ | |
| | |
V | |
+----------+ | |
| 输入str | | |
+----------+ | |
| | |
V | |
+-------------------+ | |
| 初始化max_char | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 遍历字符串str | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 当前字符 > max_char? | | |
+-------------------+ | |
| | |
V | |
+----------------------+ | |
| 更新max_char为当前字符 | | |
+----------------------+ | |
| | |
V | |
+-------------------+ | |
| 返回max_char | | |
+-------------------+ |
该思维导图描述了 max(str)
函数的基本思路:
输入字符串
str
。初始化变量
max_char
,用于存储最大的字母。遍历字符串
str
的每个字符。对于每个字符,判断是否大于
max_char
。如果当前字符大于
max_char
,则更新max_char
为当前字符。循环结束后,返回
max_char
作为结果,即字符串str
中最大的字母。
根据思维导图,以下是一个实现 max(str)
函数的代码示例:
def max(str): # 定义一个名为 max 的函数,接受一个参数 str | |
max_char = '' # 创建一个变量 max_char,用于存储最大的字符,初始为空字符串 | |
for char in str: # 遍历字符串中的每个字符,将当前字符赋值给变量 char | |
if char > max_char: # 如果当前字符大于 max_char | |
max_char = char # 将当前字符赋值给 max_char,更新最大字符 | |
print("最大字符为:", max_char) # 添加打印输出语句 | |
return max_char # 返回最大字符 | |
result = max("Hello World") # 调用函数并传入字符串参数 |
这段代码实现了 max(str)
函数的功能:
- 输入一个字符串
str
作为参数。 - 初始化变量
max_char
为空字符,用于存储当前找到的最大字符。 - 遍历字符串
str
中的每个字符。 - 如果当前字符大于
max_char
,则将max_char
更新为当前字符。 - 循环结束后,返回
max_char
作为结果,即字符串str
中的最大字符。
请注意,为了避免与 Python 内置函数 max()
冲突,这里将函数名改为 max(str)
# 2.min (str) 函数
函数 min(str)
返回字符串 str
中最小的字母的过程:
+-------------------+ | |
| min(str)函数 | | |
+-------------------+ | |
| | |
V | |
+----------+ | |
| 输入str | | |
+----------+ | |
| | |
V | |
+-------------------+ | |
| 初始化min_char | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 遍历字符串str | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 当前字符 < min_char? | | |
+-------------------+ | |
| | |
V | |
+----------------------+ | |
| 更新min_char为当前字符 | | |
+----------------------+ | |
| | |
V | |
+-------------------+ | |
| 返回min_char | | |
+-------------------+ |
该思维导图描述了 min(str)
函数的基本思路:
- 输入字符串
str
。 - 初始化变量
min_char
,用于存储最小的字母。 - 遍历字符串
str
的每个字符。 - 对于每个字符,判断是否小于
min_char
。 - 如果当前字符小于
min_char
,则更新min_char
为当前字符。 - 循环结束后,返回
min_char
作为结果,即字符串str
中最小的字母。
根据思维导图,以下是一个实现 min(str)
函数的代码示例:
def min(str): # 定义一个名为 min 的函数,接受一个参数 str | |
min_char = '' # 创建一个变量 min_char,用于存储最小的字符,初始为空字符串 | |
for char in str: # 遍历字符串中的每个字符,将当前字符赋值给变量 char | |
if char < min_char or min_char == '': # 如果当前字符小于 min_char 或者 min_char 为空字符串 | |
min_char = char # 将当前字符赋值给 min_char,更新最小字符 | |
print("最小字符为:", min_char) # 添加打印输出语句 | |
return min_char # 返回最小字符 | |
# 调用函数并传入字符串参数 | |
result = min("abhdk") |
这段代码实现了 min(str)
函数的功能:
- 输入一个字符串
str
作为参数。 - 初始化变量
min_char
为空字符,用于存储当前找到的最小字符。 - 遍历字符串
str
中的每个字符。 - 如果当前字符小于
min_char
或者min_char
为空字符(初始情况),则将min_char
更新为当前字符。 - 循环结束后,返回
min_char
作为结果,即字符串str
中的最小字符。
请注意,为了避免与 Python 内置函数 min()
冲突,这里将函数名改为 min(str)
。
# 3.string.strip () 函数
string.strip()
是用于去除字符串两端指定字符(或字符集合)的函数。
string.strip()
函数的基本思路:
+-------------------+
| string.strip([obj]) |
+-------------------+
|
V
+----------------+
| 输入字符串str |
+----------------+
|
V
+----------------------+
| 初始化新字符串new_str |
+----------------------+
|
V
+-------------------+
| 去除左端指定字符obj |
+-------------------+
|
V
+-------------------+
| 去除右端指定字符obj |
+-------------------+
|
V
+-------------------+
| 返回new_str |
+-------------------+
该思维导图描述了 string.strip()
函数的基本思路:
- 输入字符串
str
。 - 初始化变量
new_str
,用于存储处理后的新字符串。 - 去除字符串
str
左端的指定字符obj
。 - 去除字符串
str
右端的指定字符obj
。 - 返回
new_str
作为结果,即去除两端指定字符后的新字符串。
请注意, string.strip()
函数并不返回字符串中最大的字母。如果您需要找到字符串中最大的字母,请使用之前提到的 max(str)
函数。
根据思维导图,以下是一个实现 string.strip()
函数的代码示例:
def strip(str, obj=None): # 定义一个名为 strip 的函数,接受两个参数 str 和 obj(可选) | |
new_str = str # 创建一个变量 new_str,将输入的字符串赋值给它 | |
if obj is None: # 如果 obj 参数为空 | |
print("使用默认的strip函数进行字符串去除空白字符操作") # 添加打印输出语句 | |
return new_str.strip() # 使用默认的 strip 函数去除字符串两端的空白字符,并返回结果 | |
else: # 如果 obj 参数不为空 | |
print("使用自定义的strip函数进行字符串去除操作,去除的字符为:", obj) # 添加打印输出语句 | |
new_str = new_str.lstrip(obj) # 使用 lstrip 函数去除字符串开头的指定字符 | |
new_str = new_str.rstrip(obj) # 使用 rstrip 函数去除字符串末尾的指定字符 | |
return new_str # 返回去除指定字符后的字符串 | |
# 调用函数并传入字符串参数和可选的 obj 参数 | |
result = strip(" Hello, World! ", "! ") |
这段代码实现了 string.strip()
函数的功能:
- 输入一个字符串
str
作为参数。 - 初始化变量
new_str
为输入字符串str
。 - 如果
obj
参数未提供(为None
),则直接调用new_str.strip()
,去除字符串两端的空白字符,并返回结果。 - 如果
obj
参数提供了指定字符,则先调用new_str.lstrip(obj)
,去除字符串左端指定字符obj
,然后再调用new_str.rstrip(obj)
,去除字符串右端指定字符obj
,并返回结果。
请注意,为了避免与 Python 内置函数 strip()
冲突,这里将函数名改为 strip(str, obj=None)
。如果 obj
参数未提供,代码将默认去除字符串两端的空白字符。
# 4.string.swapcase () 函数
string.swapcase
用于将字符串中的大写字母转换为小写字母,将小写字母转换为大写字母。
函数 string.swapcase()
的功能和用法:
+-------------------+ | |
| string.swapcase() | | |
+-------------------+ | |
| | |
V | |
+----------------+ | |
| 输入字符串str | | |
+----------------+ | |
| | |
V | |
+----------------------+ | |
| 初始化新字符串new_str | | |
+----------------------+ | |
| | |
V | |
+-------------------+ | |
| 遍历字符串str | | |
+-------------------+ | |
| | |
V | |
+----------------------+ | |
| 如果字符是大写字母,则转换为小写字母 | | |
+----------------------+ | |
| | |
V | |
+----------------------+ | |
| 如果字符是小写字母,则转换为大写字母 | | |
+----------------------+ | |
| | |
V | |
+-------------------+ | |
| 将转换后的字符添加到new_str中 | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 返回new_str | | |
+-------------------+ |
该思维导图描述了 string.swapcase()
函数的基本思路:
- 输入字符串
str
。 - 初始化变量
new_str
,用于存储转换后的新字符串。 - 遍历字符串
str
的每个字符。 - 如果字符是大写字母,则将其转换为小写字母。
- 如果字符是小写字母,则将其转换为大写字母。
- 将转换后的字符添加到
new_str
中。 - 循环结束后,返回
new_str
作为结果,即大小写互换后的新字符串。
这样, string.swapcase()
函数可以用于将字符串中的大写字母转换为小写字母,将小写字母转换为大写字母。
根据思维导图,以下是一个实现 string.swapcase()
函数的代码示例:
def swapcase(str): # 定义一个名为 swapcase 的函数,接受一个参数 str | |
new_str = '' # 创建一个变量 new_str,用于存储转换后的字符串,初始为空字符串 | |
for char in str: # 遍历字符串中的每个字符,将当前字符赋值给变量 char | |
if char.isupper(): # 如果当前字符是大写字母 | |
new_str += char.lower() # 将当前字符转换为小写字母,并追加到 new_str 中 | |
elif char.islower(): # 如果当前字符是小写字母 | |
new_str += char.upper() # 将当前字符转换为大写字母,并追加到 new_str 中 | |
else: # 如果当前字符不是字母 | |
new_str += char # 直接将当前字符追加到 new_str 中 | |
print("转换后的字符串为:", new_str) # 添加打印输出语句 | |
return new_str # 返回转换后的字符串 | |
# 调用函数并传入字符串参数 | |
result = swapcase("Hello, World!") |
这段代码实现了 string.swapcase()
函数的功能:
- 输入一个字符串
str
作为参数。 - 初始化变量
new_str
为空字符串,用于存储转换后的字符串。 - 遍历字符串
str
中的每个字符。 - 如果字符是大写字母(通过
char.isupper()
判断),则将其转换为小写字母,并将转换后的字符添加到new_str
中。 - 如果字符是小写字母(通过
char.islower()
判断),则将其转换为大写字母,并将转换后的字符添加到new_str
中。 - 如果字符不是字母,则直接将其添加到
new_str
中。 - 循环结束后,返回
new_str
作为结果,即转换后的字符串。
请注意,为了避免与 Python 内置函数 swapcase()
冲突,这里将函数名改为 swapcase(str)
。
# 5.string.capitalize () 函数
string.capitalize()
用于将字符串的第一个字符转换为大写字母,同时将其余字符转换为小写字母。
函数 string.capitalize()
的功能和用法:
+-------------------+ | |
| string.capitalize() | | |
+-------------------+ | |
| | |
V | |
+----------------+ | |
| 输入字符串str | | |
+----------------+ | |
| | |
V | |
+----------------------+ | |
| 初始化新字符串new_str | | |
+----------------------+ | |
| | |
V | |
+-------------------+ | |
| 获取字符串str的第一个字符 | | |
+-------------------+ | |
| | |
V | |
+----------------------+ | |
| 将第一个字符转换为大写字母 | | |
+----------------------+ | |
| | |
V | |
+-------------------+ | |
| 将转换后的字符添加到new_str中 | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 将字符串str的剩余字符转换为小写字母并添加到new_str中 | | |
+-------------------+ | |
| | |
V | |
+-------------------+ | |
| 返回new_str | | |
+-------------------+ |
该思维导图描述了 string.capitalize()
函数的基本思路:
- 输入字符串
str
。 - 初始化变量
new_str
,用于存储处理后的新字符串。 - 获取字符串
str
的第一个字符。 - 将第一个字符转换为大写字母。
- 将转换后的字符添加到
new_str
中。 - 将字符串
str
的剩余字符转换为小写字母,并添加到new_str
中。 - 返回
new_str
作为结果,即首字母大写,其余字母小写的新字符串。
这样, string.capitalize()
函数可以用于将字符串的第一个字符转换为大写字母,同时将其余字符转换为小写字母。
根据思维导图,以下是一个实现 string.capitalize()
函数的代码示例:
def capitalize(str): # 定义一个名为 capitalize 的函数,接受一个参数 str | |
new_str = '' # 创建一个变量 new_str,用于存储转换后的字符串,初始为空字符串 | |
if len(str) > 0: # 如果字符串长度大于 0 | |
first_char = str[0] # 获取字符串的第一个字符,并将其赋值给变量 first_char | |
new_str += first_char.upper() # 将第一个字符转换为大写字母,并追加到 new_str 中 | |
new_str += str[1:].lower() # 将剩余部分的字符转换为小写字母,并追加到 new_str 中 | |
print("转换后的字符串为:", new_str) # 添加打印输出语句 | |
return new_str # 返回转换后的字符串 | |
# 调用函数并传入字符串参数 | |
result = capitalize("hello, world!") |
这段代码实现了 string.capitalize()
函数的功能:
- 输入一个字符串
str
作为参数。 - 初始化变量
new_str
为空字符串,用于存储转换后的字符串。 - 如果输入字符串
str
的长度大于 0,则执行以下步骤;否则,直接返回空字符串。 - 获取字符串
str
的第一个字符,存储在变量first_char
中。 - 将第一个字符转换为大写字母,并将转换后的字符添加到
new_str
中。 - 将字符串
str
的剩余字符(除第一个字符外)转换为小写字母,并将转换后的字符添加到new_str
中。 - 返回
new_str
作为结果,即首字母大写、其余字母小写的字符串。
请注意,为了避免与 Python 内置函数 capitalize()
冲突,这里将函数名改为 capitalize(str)
。
# 结语
通过分析以上 5 个简单的 Python 内置函数的实现原理,我们了解了该函数的功能以及实现该函数的思路。
同时,我们也可以看到,Python 内置函数的实现原理并不复杂,主要通过循环、条件判断等基本语法来实现。
所以,如果想要学习 Python,建议从最简单的语法开始,逐步深入,掌握 Python 的语法和基本概念,并逐步掌握 Python 的内置函数。
多勤快做笔记,多思考多总结,相信在不久的将来,你一定会成为 Python 大神。