python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(2)

简介: python中字符串数据处理的那些方法------=为了面试武装到牙齿=----==《《满满的硬货》》-----====实用派(2)

4、strip()

4.1 strip()用法

strip()的用法简单点来说就是去除字符串两边的空格、换行符、制表符,得到一个新的字符串

print("好的")

结果:

image.png

可以发现除了打印出来的 好的 还打印出来了一行换空格,产生空格的原因是因为print()函数,那么想要去除怎么办呢,先用strip()试试。

ok="好的"
a=ok.strip()    #strip 只能针对字符串进行操作  print打印的空格无法解决
print(a)

结果:

image.png

我们可以发现空格还在。所以strip() 只能针对字符串进行操作 print打印的空格无法解决。当然也不是没有解决的方法,end就可以解决

ok="好的"
a=ok.strip()    #strip 只能针对字符串进行操作  print打印的空格无法解决
print(a,end="")

结果

image.png

可以发现问题解决,空格去除了。


ok,下面的就不详细讲解了,不清楚的可以评论区或者私信我,我看见都会解答的。下面的代码主要就是想说明strip()只能去除两边的空格、制表符之类的,不能去除中间的,下面会讲解字符串中间的怎么去除。

ok="好的\nhello\ngoodbye"
ok.strip()
print(ok)
oks="\n好的hellogoodbye\n"
oks.strip()
print(oks)
okss="好的\n\thello\ngoodbye"  #\t制表符  == 四个空格 ==tab键
print(okss.strip())
oksss="\n\t好的hellogoodbye\n"
print(oksss.strip())

结果:

image.png

4.2、lstrip()

image.png

rstrip()删除字符串右侧空白字符

hi="www       "
print(hi.rstrip())

结果:

image.png

我们发现就是删除右边的空格,空格是因为print()函数输出原因。意思上**rstrip() <==> right-strip()**

4.3、rstrip()

rstrip()删除字符串右侧空白字符

hi="www       "
print(hi.rstrip())

结果:

image.png

5.replace()

replace("旧字符串",”新字符串“,替换次数) 特殊字符换程正常的,一般使用在爬虫中,将一些稀奇古怪的符号换掉

首先我们引入一首诗,但是诗人的出生时代错了该怎么办?

mydemo="      静夜思"    \
       "     宋  李白    " \
       "床前明月光,疑是地上霜。" \
       "举头望明月,低头思故乡。"
print(mydemo)
top=mydemo.replace("宋","唐")
print(top)

结果:

image.png

是不是,是不是,是不是用replace()将诗人的出生年代宋换成了唐,并非只能换诗的年代,诗中的任何字都能换。

还是以这首诗为例,将诗中的“月”换成“陶”,诗的水平是不是有提高了【坏笑】【坏笑】

mydemo="      静夜思"    \
       "     宋  李白    " \
       "床前明月光,疑是地上霜。" \
       "举头望明月,低头思故乡。"
print(mydemo)
top=mydemo.replace("月","陶")
print(top)

结果:

image.png

g)根据结果可以发现诗中的 “月” 全部换成了 “陶”

再反问一下,难道只能一下子全换吗,不能只换一个吗?

答案是肯定的,当然能

mydemo="      静夜思"    \
       "     宋  李白    " \
       "床前明月光,疑是地上霜。" \
       "举头望明月,低头思故乡。"
print(mydemo)
top=mydemo.replace("月","陶",1)
print(top)

结果:

image.png

还是上面的例子,我们发现只是添加了一个参数,就得到了不一样的结果。是不是又学到了

出自之外还有更牛的,多个字符串换多个字符串

mydemo="      静夜思"    \
       "     宋  李白    " \
       "床前明月光,疑是地上霜。" \
       "举头望明月,低头思故乡。"
print(mydemo)
top=mydemo.replace("低头思故乡","陶同学666")
print(top)

结果:

image.png那么垃圾字符又怎么处理呢,诗中的字符串是不是使诗看起来非常糟糕,下面就来看一下怎么处理吧

mydemo="      静夜思"    \
       "     宋  李白    " \
       "床$¥……?“&*……前明月光,疑是地$¥……?“&*……上霜。" \
       "举头望$¥……?“&*……明月,$¥……?“&*……低头思故乡。"
print(mydemo)
top=mydemo.replace("$¥……?“&*……","")
print(top)

结果:image.png是不是看起来非常的舒服

6、split() 分割字符串

就我个人来看,strip()、replace()和下面要说的spilt()可以称作为字符串处理三剑客

我们还是用静夜思来讲解split()的用法。

当静夜思从网上爬取下来的,或者应为自己的原因不是以",(逗号)"分割的,看起来很乱怎么办?当然是找split()

mydemo="      静夜思,"    \
       "|宋|李白|" \
       "床前明月光|疑是地上霜|。" \
       "举头望明月|低头思故乡。"
print(mydemo)
top=mydemo.split("|")
print(top)

结果:image.png是不是很好的切开了有人问为什么静夜思前面还有空格呢,能去掉吗?image.png看上面的图,你认为能不能去掉呢?【疑问】【疑问】

好了,文章最后,三兄弟该一起上场了,还是以静夜思来进行演示

mydemo="      静夜思,"    \
       "$宋#李白$" \
       "床#前明#月光#疑是地上霜$。" \
       "举头望#明月$低头思故乡。     "
print(mydemo)
top=mydemo.replace("#","").strip().split("$")
print(top)

结果:image.png三兄弟,大哥replace()先将文章中的#全部换掉(双引号之间什么也没剩,等价于delete),二哥strip()上场将文中首位端的空格全部去掉(注意只能去除首位的空格,中间的没法去除,如果想去除可以通过大哥replace(" “,”")将空格替换掉,最后小弟split()上场将古诗通过$分割就得到上图的结果了。怎么样,三兄弟是不是很猛

目录
相关文章
|
11天前
|
JSON 数据可视化 API
Python 中调用 DeepSeek-R1 API的方法介绍,图文教程
本教程详细介绍了如何使用 Python 调用 DeepSeek 的 R1 大模型 API,适合编程新手。首先登录 DeepSeek 控制台获取 API Key,安装 Python 和 requests 库后,编写基础调用代码并运行。文末包含常见问题解答和更简单的可视化调用方法,建议收藏备用。 原文链接:[如何使用 Python 调用 DeepSeek-R1 API?](https://apifox.com/apiskills/how-to-call-the-deepseek-r1-api-using-python/)
|
28天前
|
人工智能 自然语言处理 算法
随机的暴力美学蒙特卡洛方法 | python小知识
蒙特卡洛方法是一种基于随机采样的计算算法,广泛应用于物理学、金融、工程等领域。它通过重复随机采样来解决复杂问题,尤其适用于难以用解析方法求解的情况。该方法起源于二战期间的曼哈顿计划,由斯坦尼斯拉夫·乌拉姆等人提出。核心思想是通过大量随机样本来近似真实结果,如估算π值的经典示例。蒙特卡洛树搜索(MCTS)是其高级应用,常用于游戏AI和决策优化。Python中可通过简单代码实现蒙特卡洛方法,展示其在文本生成等领域的潜力。随着计算能力提升,蒙特卡洛方法的应用范围不断扩大,成为处理不确定性和复杂系统的重要工具。
69 21
|
24天前
|
Java 程序员 调度
Java 高级面试技巧:yield() 与 sleep() 方法的使用场景和区别
本文详细解析了 Java 中 `Thread` 类的 `yield()` 和 `sleep()` 方法,解释了它们的作用、区别及为什么是静态方法。`yield()` 让当前线程释放 CPU 时间片,给其他同等优先级线程运行机会,但不保证暂停;`sleep()` 则让线程进入休眠状态,指定时间后继续执行。两者都是静态方法,因为它们影响线程调度机制而非单一线程行为。这些知识点在面试中常被提及,掌握它们有助于更好地应对多线程编程问题。
55 9
|
26天前
|
数据挖掘 数据处理 开发者
Python3 自定义排序详解:方法与示例
Python的排序功能强大且灵活,主要通过`sorted()`函数和列表的`sort()`方法实现。两者均支持`key`参数自定义排序规则。本文详细介绍了基础排序、按字符串长度或元组元素排序、降序排序、多条件排序及使用`lambda`表达式和`functools.cmp_to_key`进行复杂排序。通过示例展示了如何对简单数据类型、字典、类对象及复杂数据结构(如列车信息)进行排序。掌握这些技巧可以显著提升数据处理能力,为编程提供更强大的支持。
32 10
|
29天前
|
安全 Java 程序员
Java面试必问!run() 和 start() 方法到底有啥区别?
在多线程编程中,run和 start方法常常让开发者感到困惑。为什么调用 start 才能启动线程,而直接调用 run只是普通方法调用?这篇文章将通过一个简单的例子,详细解析这两者的区别,帮助你在面试中脱颖而出,理解多线程背后的机制和原理。
60 12
|
1月前
|
存储 人工智能 Python
[oeasy]python061_如何接收输入_input函数_字符串_str_容器_ 输入输出
本文介绍了Python中如何使用`input()`函数接收用户输入。`input()`函数可以从标准输入流获取字符串,并将其赋值给变量。通过键盘输入的值可以实时赋予变量,实现动态输入。为了更好地理解其用法,文中通过实例演示了如何接收用户输入并存储在变量中,还介绍了`input()`函数的参数`prompt`,用于提供输入提示信息。最后总结了`input()`函数的核心功能及其应用场景。更多内容可参考蓝桥、GitHub和Gitee上的相关教程。
16 0
|
2月前
|
安全
Python-打印99乘法表的两种方法
本文详细介绍了两种实现99乘法表的方法:使用`while`循环和`for`循环。每种方法都包括了步骤解析、代码演示及优缺点分析。文章旨在帮助编程初学者理解和掌握循环结构的应用,内容通俗易懂,适合编程新手阅读。博主表示欢迎读者反馈,共同进步。
|
2月前
|
缓存 安全 Java
【JavaEE】——单例模式引起的多线程安全问题:“饿汉/懒汉”模式,及解决思路和方法(面试高频)
单例模式下,“饿汉模式”,“懒汉模式”,单例模式下引起的线程安全问题,解锁思路和解决方法
|
存储 iOS开发 MacOS
100 个基本 Python 面试问题第四部分(57-68)
100 个基本 Python 面试问题第四部分
171 0
100 个基本 Python 面试问题第四部分(57-68)
|
监控 大数据 Python
100 个基本 Python 面试问题第七部分(91-100)
100 个基本 Python 面试问题第七部分
185 0

热门文章

最新文章

推荐镜像

更多