Python 超高频常见字符操作【建议收藏】

这篇具有很好参考价值的文章主要介绍了Python 超高频常见字符操作【建议收藏】。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


前言

为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章中如果有记录错误,欢迎读者朋友们批评指正。
(博客的参考源码可以在我主页的资源里找到,如果在学习的过程中有什么疑问欢迎大家在评论区向我提出)

发现宝藏

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。

1. 字符串截取

在 Python 中,可以使用切片(slicing)来截取字符串。切片的语法是 string[start:end],其中 start 是截取的起始位置(包含),而 end 是截取的结束位置(不包含)。以下是一些示例:

string = "Hello, World!"

# 截取字符串的前五个字符
substring = string[0:5]
print(substring)  # 输出: Hello

# 截取字符串的第六个字符到倒数第二个字符
substring = string[5:-1]
print(substring)  # 输出: , World

# 截取字符串的最后五个字符
substring = string[-5:]
print(substring)  # 输出: World!

# 截取字符串的所有字符,步长为2
substring = string[::2]
print(substring)  # 输出: Hlo Wrd

# 倒序截取字符串的所有字符
substring = string[::-1]
print(substring)  # 输出: !dlroW ,olleH
  • 请注意,切片操作并不会修改原始字符串,而是返回一个新的截取后的字符串。如果不指定起始位置或结束位置,切片操作将默认使用字符串的开头和结尾作为起始位置和结束位置
  • 此外,还可以使用函数来截取字符串例如 string.split() 可以将字符串拆分为多个子字符串,并返回一个列表还可以使用正则表达式来匹配和提取所需部分的字符串。这里提供的是一种常见的基本方式,而根据具体的需求,可能还有其他更适用的方法。

2. 字符串拼接

在 Python 中,可以使用多种方式进行字符串的连接。下面是一些常用的方法:

  • 使用 + 操作符:可以使用 + 操作符将两个字符串连接在一起。
str1 = 'Hello'
str2 = 'World'
result = str1 + ', ' + str2
print(result)  # 输出: Hello, World
  • 使用 += 操作符:可以使用 += 操作符将一个字符串连接到另一个字符串上,相当于在原始字符串的末尾追加另一个字符串。
str1 = 'Hello'
str1 += ', World'
print(str1)  # 输出: Hello, World
  • 使用 str.join() 方法:是一个字符串方法,用于将多个字符串连接起来,通过指定一个可迭代对象作为参数。语法格式如下:
str.join(iterable)

str 是要用作分隔符的字符串,iterable 是一个可迭代对象,可以是列表、元组、字符串等。

str_list = ['Hello', 'World']
result = ', '.join(str_list)
print(result)  # 输出: Hello, World
  • 使用 str.format() 方法:可以使用 str.format() 方法将一个或多个字符串插入到另一个字符串的特定位置。语法格式如下:
str.format(*args, **kwargs)

其中,str 是要进行格式化的字符串,args 是位置参数(可选),kwargs 是关键字参数(可选)

str1 = 'Hello'
str2 = 'World'
result = '{}, {}'.format(str1, str2)
print(result)  # 输出: Hello, World
  • 使用 f-strings(格式化字符串字面值):f-strings(格式化字符串字面值)是 Python 3.6 引入的一种字符串格式化方法,它提供了一种简洁、直观和易于阅读的方式来将变量、表达式等嵌入到字符串中。f-strings 的语法格式如下:
f"string {expression}"

在这里,string 是普通字符串,而 {expression} 是一个表达式,它会被计算并插入到字符串中。

str1 = 'Hello'
str2 = 'World'
result = f'{str1}, {str2}'
print(result)  # 输出: Hello, World
  • 这些方法中,使用 f-strings 通常是最简洁和推荐的方法。但根据具体的需求和 Python 的版本,选择合适的方法进行字符串连接即可。

3. 字符串搜索

要判断一个字符串是否包含另一个字符串,你可以使用 Python 中的 in 关键字或者字符串的 find() 方法。下面是两种判断字符串包含的方法示例:

  • 方法一:使用 in 关键字进行判断
string = "Hello, World!"

# 使用 `in` 关键字判断是否包含某字符串
if "World" in string:
    print("包含")
else:
    print("不包含")

在上述示例中,我们使用 in 关键字判断字符串 “World” 是否存在于变量 string 中。如果存在,则输出 “包含”;否则,输出 “不包含”。

  • 方法二:使用 find() 方法进行判断
string = "Hello, World!"

# 使用 `find()` 方法判断是否包含某字符串
if string.find("World") != -1:
    print("包含")
else:
    print("不包含")

在上述示例中,我们使用字符串的 find() 方法查找子字符串 “World” 在变量 string 中的位置。如果返回的索引不为 -1,则说明存在子字符串,输出 “包含”;否则,输出 “不包含”。
两种方法的选择取决于你具体的需求,in 关键字更简洁直观,而 find() 方法可以获取匹配的位置信息。

4. 字符串格式化

字符串格式化是一种将变量或数据插入到字符串中的方法,以创建具有特定格式的文本。在Python中,字符串格式化可以通过多种方式实现。

1. 百分号(%)操作符
一种常用的字符串格式化方式是使用百分号(%)操作符。这种方法使用占位符来表示要插入的变量,并在%操作符后面提供相应的值。例如:

name = "Alice"
age = 25
message = "My name is %s and I am %d years old." % (name, age)
print(message)

输出结果将是:

My name is Alice and I am 25 years old.

在上面的例子中,%s是字符串占位符,%d是整数占位符。%操作符后的括号中依次提供了要插入的变量(name和age)。

2. python字符串格式化符号:

符 号 描述
%c 格式化字符及其ASCII码
%s 格式化字符串
%d 格式化整数
%u 格式化无符号整型
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数字,可指定小数点后的精度
%e 用科学计数法格式化浮点数
%E 作用同%e,用科学计数法格式化浮点数
%g %f和%e的简写
%G %f 和 %E 的简写
%p 用十六进制数格式化变量的地址

3. 格式化操作符辅助指令:

符号 功能
* 定义宽度或者小数点精度
- 用做左对齐
+ 在正数前面显示加号( + )
< sp > 在正数前面显示空格
# 在八进制数前面显示零(‘0’),在十六进制前面显示’0x’或者’0X’(取决于用的是’x’还是’X’)
0 显示的数字前面填充’0’而不是默认的空格
% ‘%%‘输出一个单一的’%’
(var) 映射变量(字典参数)
m.n. m 是显示的最小总宽度,n 是小数点后的位数(如果可用的话)

4. format方法

另一种字符串格式化的方式是使用 format() 方法。这种方法使用 {} 和 : 来代替以前的 % 。
format 函数可以接受不限个参数,位置可以不按顺序。并使用format()方法提供要插入的值。例如:

name = "Bob"
age = 30
message = "My name is {} and I am {} years old.".format(name, age)
print(message)

输出结果将是:

My name is Bob and I am 30 years old.

在这个例子中,大括号{}表示占位符,format()方法中依次提供了要插入的变量。

5. 数字格式化

下表展示了 str.format() 格式化数字的多种方法:

>>> print("{:.2f}".format(3.1415926))
3.14
数字 格式 输出 描述
3.1415926 {:.2f} 3.14 保留小数点后两位
3.1415926 {:+.2f} +3.14 带符号保留小数点后两位
-1 {:-.2f} -1.00 带符号保留小数点后两位
2.71828 {:.0f} 3 不带小数
5 {:0>2d} 05 数字补零 (填充左边, 宽度为2)
5 {:x<4d} 5xxx 数字补x (填充右边, 宽度为4)
10 {:x<4d} 10xx 数字补x (填充右边, 宽度为4)
1000000 {:,} 1,000,000 以逗号分隔的数字格式
0.25 {:.2%} 25.00% 百分比格式
1000000000 {:.2e} 1.00e+09 指数记法
13 {:>10d} 13 右对齐 (默认, 宽度为10)
13 {:<10d} 13 左对齐 (宽度为10)
13 {:^10d} 13 中间对齐 (宽度为10)
11 ‘{:b}’.format(11)‘{:d}’.format(11)‘{😮}’.format(11)‘{:x}’.format(11)‘{:#x}’.format(11)‘{:#X}’.format(11) 1011 11 13 b 0xb 0XB 进制
  • ^, <, > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。

  • + 表示在正数前显示 +,负数前显示 -; (空格)表示在正数前加空格

  • b、d、o、x 分别是二进制、十进制、八进制、十六进制。

  • 此外我们可以使用大括号 {} 来转义大括号,如下实例:
    实例

#!/usr/bin/python
# -*- coding: UTF-8 -*-
 
print ("{} 对应的位置是 {{0}}".format("runoob"))

输出结果为:

runoob 对应的位置是 {0}

6. f-string方法

还有一种更简洁的字符串格式化方式是使用 f-string(格式化字符串字面值)。这种方法使用在字符串前加上字母"f",并在大括号中直接引用变量。例如:

name = "Charlie"
age = 35
message = f"My name is {name} and I am {age} years old."
print(message)

输出结果将是:

My name is Charlie and I am 35 years old.

f-string直接在大括号{}中引用了变量name和age,无需使用额外的格式化方法。
以上是Python中常用的字符串格式化方法。根据具体的需求,可以选择使用其中一种或多种方式来实现字符串格式化。

5. 字符串替换

在 Python 中,有几种常见的方法用于字符串替换。下面是其中几种常用的方法:

1.replace() 方法:

该方法用于替换字符串中的指定子字符串为新的字符串。

   text = "Hello, World!"
   new_text = text.replace("World", "Python")
   print(new_text)  # 输出:Hello, Python!

2.re.sub() 方法:

该方法使用正则表达式进行字符串替换。

   import re

   text = "Hello, World!"
   new_text = re.sub(r"World", "Python", text)
   print(new_text)  # 输出:Hello, Python!

3.str.translate() 方法:

该方法使用转换表进行字符替换。可以使用 str.maketrans() 函数创建转换表。

   table = str.maketrans("W", "P")
   text = "Hello, World!"
   new_text = text.translate(table)
   print(new_text)  # 输出:Hello, Porld!

6. 字符串去除空格

在 Python 中,有几种方法可以去除字符串中的空格。以下是几种常见的方法:

1.strip() 方法:

该方法用于去除字符串开头和结尾的空格。

   text = "   Hello, World!   "
   stripped_text = text.strip()
   print(stripped_text)  # 输出:Hello, World!

2.lstrip() 和 rstrip() 方法:

lstrip() 方法用于去除字符串开头的空格,rstrip() 方法用于去除字符串结尾的空格。

   text = "   Hello, World!   "
   left_stripped_text = text.lstrip()
   right_stripped_text = text.rstrip()
   print(left_stripped_text)  # 输出:Hello, World!   
   print(right_stripped_text)  # 输出:   Hello, World!

3.replace() 方法:

该方法可以用来替换空格字符为空字符串。

   text = "   Hello, World!   "
   replaced_text = text.replace(" ", "")
   print(replaced_text)  # 输出:Hello,World!

4.split() 和 join() 方法组合使用:

将字符串拆分成单词列表,再使用空字符串连接单词来移除空格。

   text = "   Hello, World!   "
   words = text.split()
   joined_text = "".join(words)
   print(joined_text)  # 输出:Hello,World!

这些方法可以根据你的需求选择合适的方式去除字符串中的空格。请注意,以上方法都返回新的字符串,原始字符串不会被修改。

7. 字符串截取

在 Python 中,有几种方法可以对字符串进行分割(拆分)操作。以下是几种常见的方法:

1.split() 方法:

该方法根据指定的分隔符将字符串拆分成子字符串,并返回一个列表。

   text = "Hello, World!"
   words = text.split(",")  # 使用逗号作为分隔符
   print(words)  # 输出:['Hello', ' World!']

2.rsplit() 方法:

该方法与 split() 方法类似,但从字符串的末尾开始进行拆分。

   text = "Hello, World!"
   words = text.rsplit(",", 1)  # 从右侧使用逗号作为分隔符拆分一次
   print(words)  # 输出:['Hello', ' World!']

3.splitlines() 方法:

该方法按照换行符 \n 分割字符串,并返回一个包含各行内容的列表。

   text = "Hello\nWorld\nPython"
   lines = text.splitlines()
   print(lines)  # 输出:['Hello', 'World', 'Python']

4.正则表达式分割:

使用 re.split() 函数可以根据正则表达式进行字符串分割。

   import re

   text = "Hello, World! Python"
   words = re.split(r"\W+", text)  # 使用非字母数字字符作为分隔符
   print(words)  # 输出:['Hello', 'World', 'Python']

这些方法可以根据具体需求选择合适的方式来对字符串进行分割操作。请注意,以上方法返回的是包含拆分后子字符串的列表。

8. 字符串反转

在 Python 中,可以使用几种方法来反转字符串。以下是其中几种常见的方法:

1.使用切片操作:

  text = "Hello, World!"
   reversed_text = text[::-1]
   print(reversed_text)  # 输出:!dlroW ,olleH

2.使用 reversed() 函数与 join() 方法:

   text = "Hello, World!"
   reversed_text = "".join(reversed(text))
   print(reversed_text)  # 输出:!dlroW ,olleH

3.使用循环遍历法:

   text = "Hello, World!"
   reversed_text = ""
   for char in text:
       reversed_text = char + reversed_text
   print(reversed_text)  # 输出:!dlroW ,olleH

这些方法都可以用来反转字符串,你可以根据自己的喜好和需求选择其中一种。需要注意的是,以上方法返回的是一个新的反转后的字符串,原始字符串本身并没有被修改。

总结

欢迎各位留言交流以及批评指正,如果文章对您有帮助或者觉得作者写的还不错可以点一下关注,点赞,收藏支持一下。
(博客的参考源码可以在我主页的资源里找到,如果在学习的过程中有什么疑问欢迎大家在评论区向我提出)文章来源地址https://www.toymoban.com/news/detail-714372.html

到了这里,关于Python 超高频常见字符操作【建议收藏】的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 软件测试面试,一定要准备的7个高频面试题(附答案,建议收藏)

    问题1:请自我介绍下? 核⼼要素: 个⼈技能优势+⼯作背景+经验亮点 参考回答: 第一种:基本信息+离职理由 ⾯试官您好,我叫张三,来⾃番茄市,在软件测试⾏业有 3 年的⼯作经验。做过 Web/APP及⼩程序项⽬的测试⼯作,有独⽴负责整个项⽬的测试经验。 由于个⼈原因从

    2024年02月06日
    浏览(42)
  • 科研中论文常见数学符号及其含义(科研必备,建议收藏)

    返回论文和资料目录 数学符号在数学领域是非常重要的。在论文中,使用数学符号可以使得论文更加简洁明了,同时也能够准确地描述各种概念和理论。在本篇博客中,我将介绍一些常见的数学符号及其含义(省去特别简单的符号),希望能够帮助读者更好地理解数学论文。

    2023年04月25日
    浏览(29)
  • Docker 容器常见故障排查及处理,超好用,建议收藏

    Docker是一种相对使用较简单的容器,我们可以通过以下几种方式获取信息: 1、通过docker run执行命令,查看返回信息 2、通过docker logs 去获取日志,做有针对性的筛选 3、通过systemctl status docker查看docker服务状态 4、通过journalctl -u docker.service 查看日志 以下是整理的docker容器类

    2024年02月04日
    浏览(34)
  • 浅谈字符串的定义(c++)非常详细,建议收藏

    C++ 有一个新的数据类型——字符串类型。这里的 string 是 C++ 所独有的,C语言没有。 定义一个值为 Initial string 的字符串 s s s ,包括空格。 定义一个空字符串 s s s 。 定义一个 s 0 s0 s 0 字符串的copy字符串 s s s 。 定义一个字符串 s 3 s3 s 3 ,该字符串的值为从 s 0 s0 s 0 的第 8

    2024年02月08日
    浏览(42)
  • Pandas高级操作,建议收藏(一)

    在数据分析和数据建模的过程中需要对数据进行清洗和整理等工作,有时需要对数据增删字段。下面为大家介绍Pandas对数据的复杂查询、数据类型转换、数据排序的使用。   复杂查询 实际业务需求往往需要按照一定的条件甚至复杂的组合条件来查询数据,接下来为大家介绍如

    2023年04月09日
    浏览(24)
  • 密码爆破漏洞详解——黑客必修入门操作( 建议收藏 )

    隔壁老张: “狗剩啊, 隔壁xx村的王姐家的女娃好漂亮,我想盗她qq啊, 你帮我个忙呗!” 狗剩: “我不会呀!” 村里大妈:“那个狗剩啊, 连盗个qq号都不会,他妈还好意思说他是学网络安全当黑客的” 密码爆破又叫 暴力猜解 , 简单来说就是将密码逐个尝试, 直到找出真正的密

    2024年02月07日
    浏览(39)
  • 【Linux】Shell脚本之函数的操作+实战详解(建议收藏⭐)

    🍁 博主简介   🏅云计算领域优质创作者   🏅华为云开发者社区专家博主   🏅阿里云开发者社区专家博主 💊 交流社区: 运维交流社区 欢迎大家的加入! 函数是一段可以重复利用有组织的代码;可以减少代码,提高代码利用率,使脚本结构更加清晰。 这样只是写

    2024年02月05日
    浏览(37)
  • 5种Python雪花飘落代码(建议收藏)

    前言 本文章向大家介绍用 Python 实现雪花飘落效果,运行以下代码,你将会看到一个美丽的雪花效果。你可以根据自己的需求,调整代码中的参数值以及其他细节。 第一种 普通雪花代码: 第二种 随机下落的雪花: 第三种 随机颜色代码: 使用了turtle模块和random模块,会在黑

    2024年02月11日
    浏览(64)
  • python萌新爬虫学习笔记【建议收藏】

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【宝藏入口】。 为了巩固所学的知识,作者尝试着开始发布一些学习笔记类的博客,方便日后回顾。当然,如果能帮到一些萌新进行新技术的学习那也是极好的。作者菜菜一枚,文章

    2024年02月08日
    浏览(32)
  • 【建议收藏】50 道硬核的 Python 面试题!

    还有更多python面试题,文末领取 题目001: 在Python中如何实现单例模式。 点评 :单例模式是指让一个类只能创建出唯一的实例,这个题目在面试中出现的频率极高,因为它考察的不仅仅是单例模式,更是对Python语言到底掌握到何种程度,建议大家用装饰器和元类这两种方式来

    2024年02月10日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包