【100天精通python】Day22:字符串常用操作大全

简介: 【100天精通python】Day22:字符串常用操作大全

专栏导读

a50b69cc81bb4be29749f2dca96b2f56.png

专栏订阅地址:https://blog.csdn.net/qq_35831906/category_12375510.html

f8d8821388dc41358195b24b9133d6b0.png

53138d93145c4010a08a85d824c7ab17.png

一、 字符串常用操作

1 拼接字符串

使用 “ +”运算符将多个字符串拼接在一起。

示例:

string1 = "Hello"
string2 = "World"
result = string1 + " " + string2
print(result)  # Output: "Hello World"

2 计算字符串长度

可以使用len()函数来计算字符串的长度,即其中字符的个数。

string = "Hello, Python!"
length = len(string)
print(length)  # Output: 15

3 截取字符串

使用切片操作截取字符串的一部分。

string = "Hello, Python!"
substring = string[0:5]
print(substring)  # Output: "Hello"

4 分割合并字符串

使用split()方法可以将一个字符串按照指定的分隔符分割成多个部分。使用join()方法可以将多个字符串合并成一个。

string = "apple,orange,banana"
fruits_list = string.split(",")
print(fruits_list)  # Output: ['apple', 'orange', 'banana']
fruits = "-".join(fruits_list)
print(fruits)  # Output: "apple-orange-banana"

5 检索字符串

使用find()方法或index()方法来检索子字符串在原字符串中的位置。

find()方法会返回第一次出现的位置,如果没有找到则返回-1;而index()方法会在找不到子字符串时抛出异常。

string = "Hello, Python!"
position1 = string.find("Python")
print(position1)  # Output: 7
position2 = string.index("World")  # Raises ValueError: substring not found

6 字母的大小写转换

Python中有几个方法可以实现字母的大小写转换。upper()方法将所有字母转换为大写,lower()方法将所有字母转换为小写,capitalize()方法将首字母转换为大写。

string = "Hello, Python!"
upper_string = string.upper()
lower_string = string.lower()
capitalized_string = string.capitalize()
print(upper_string)  # Output: "HELLO, PYTHON!"
print(lower_string)  # Output: "hello, python!"
print(capitalized_string)  # Output: "Hello, python!"

7 去除字符串的空格和特殊字符

       可以使用strip()方法去除字符串两端的空格(包括换行符等空白字符)。

       如果想去除指定字符,可以使用strip()方法的参数指定要去除的字符。

string = "   Hello, Python!   "
trimmed_string = string.strip()
print(trimmed_string)  # Output: "Hello, Python!"
string_with_special_chars = "!@#$Hello, Python!%^&*"
cleaned_string = string_with_special_chars.strip("!@#$%^&*") #去除指定字符
print(cleaned_string)  # Output: "Hello, Python!"

8 格式化字符串

       在Python中,你可以使用多种方式来格式化字符串。其中一种常用的方式是使用format()方法,它允许将变量的值插入到字符串中的占位符位置。

name = "Alice"
age = 30
# 使用位置参数插入
formatted_string1 = "My name is {} and I am {} years old.".format(name, age)
# 使用关键字参数插入
formatted_string2 = "My name is {n} and I am {a} years old.".format(n=name, a=age)
print(formatted_string1)  # Output: "My name is Alice and I am 30 years old."
print(formatted_string2)  # Output: "My name is Alice and I am 30 years old."

此外,还有一种更简洁的方式是使用f-string(格式化字符串字面值)。

示例:

name = "Alice"
age = 30
# 使用f-string
formatted_string = f"My name is {name} and I am {age} years old."
print(formatted_string)  # Output: "My name is Alice and I am 30 years old."

二 、字符串编码转换

       在Python中,字符串编码转换涉及将字符串从一种字符编码格式转换为另一种字符编码格式。常见的字符编码格式包括UTF-8、ASCII、ISO-8859-1等。

2.1 使用encode()方法编码

       在Python中,字符串对象有一个encode()方法,可以将字符串转换为指定的字符编码格式。该方法返回一个字节对象(bytes类型)。

original_string = "Hello, 你好!"
# 将字符串编码为UTF-8格式
encoded_bytes = original_string.encode('utf-8')
print(encoded_bytes)  # Output: b'Hello, \xe4\xbd\xa0\xe5\xa5\xbd!'
# 将字符串编码为ASCII格式
encoded_bytes_ascii = original_string.encode('ascii', errors='ignore')
print(encoded_bytes_ascii)  # Output: b'Hello, !'

2.2 使用decoder()方法编码

       对于已经编码为字节对象(bytes类型)的字符串,我们可以使用decode()方法将其解码为指定的字符编码格式。

encoded_bytes = b'Hello, \xe4\xbd\xa0\xe5\xa5\xbd!'
# 将字节对象解码为UTF-8格式
decoded_string = encoded_bytes.decode('utf-8')
print(decoded_string)  # Output: "Hello, 你好!"
# 将字节对象解码为ASCII格式
decoded_string_ascii = encoded_bytes.decode('ascii', errors='ignore')
print(decoded_string_ascii)  # Output: "Hello, !"

        需要注意的是,在进行编码和解码时,要确保目标编码格式能够表示原始字符串中的所有字符,否则会出现异常。

       在使用encode()和decode()方法时,可以指定一个errors参数来处理编码和解码过程中的错误。常见的errors参数值有:

  • 'strict'(默认值):如果出现非法字符,抛出UnicodeEncodeError(编码)或UnicodeDecodeError(解码)异常。
  • 'ignore':忽略非法字符,直接忽略它们。
  • 'replace':用Unicode Replacement Character(U+FFFD)替代非法字符。
  • 'xmlcharrefreplace':用XML字符引用替代非法字符。

要确保正确地处理不同编码之间的转换,需要了解原始字符串的编码格式以及目标编码格式,并根据需要选择合适的转换方式。通常情况下,推荐使用UTF-8编码,因为它能够表示几乎所有的字符,而且在多平台和多语言环境中广泛使用。

下一篇介绍正则表达式


目录
相关文章
|
21天前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
205 100
|
21天前
|
开发者 Python
Python中的f-string:高效字符串格式化的利器
Python中的f-string:高效字符串格式化的利器
249 99
|
24天前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
|
24天前
|
开发者 Python
Python f-strings:更优雅的字符串格式化技巧
Python f-strings:更优雅的字符串格式化技巧
|
24天前
|
开发者 Python
Python f-string:高效字符串格式化的艺术
Python f-string:高效字符串格式化的艺术
|
1月前
|
Python
使用Python f-strings实现更优雅的字符串格式化
使用Python f-strings实现更优雅的字符串格式化
|
2月前
|
Python
Python中的f-string:更简洁的字符串格式化
Python中的f-string:更简洁的字符串格式化
218 92
|
2月前
|
索引 Python
python 字符串的所有基础知识
python 字符串的所有基础知识
197 0
|
2月前
|
Python
Python字符串center()方法详解 - 实现字符串居中对齐的完整指南
Python的`center()`方法用于将字符串居中,并通过指定宽度和填充字符美化输出格式,常用于文本对齐、标题及表格设计。

热门文章

最新文章

  • 1
    Python零基础爬取东方财富网股票行情数据指南
    46
  • 2
    解析Python爬虫中的Cookies和Session管理
    48
  • 3
    Python日志模块配置:从print到logging的优雅升级指南
    39
  • 4
    【可视化大屏】全流程讲解用python的pyecharts库实现拖拽可视化大屏的背后原理,简单粗暴!
    40
  • 5
    (Pandas)Python做数据处理必选框架之一!(二):附带案例分析;刨析DataFrame结构和其属性;学会访问具体元素;判断元素是否存在;元素求和、求标准值、方差、去重、删除、排序...
    45
  • 6
    (Pandas)Python做数据处理必选框架之一!(一):介绍Pandas中的两个数据结构;刨析Series:如何访问数据;数据去重、取众数、总和、标准差、方差、平均值等;判断缺失值、获取索引...
    72
  • 7
    (numpy)Python做数据处理必备框架!(二):ndarray切片的使用与运算;常见的ndarray函数:平方根、正余弦、自然对数、指数、幂等运算;统计函数:方差、均值、极差;比较函数...
    42
  • 8
    (numpy)Python做数据处理必备框架!(一):认识numpy;从概念层面开始学习ndarray数组:形状、数组转置、数值范围、矩阵...
    62
  • 9
    (Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
    32
  • 10
    (Python基础)新时代语言!一起学习Python吧!(三):IF条件判断和match匹配;Python中的循环:for...in、while循环;循环操作关键字;Python函数使用方法
    54
  • 推荐镜像

    更多