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

news2024/12/23 10:34:20

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm=1001.2014.3001.5501

用户在输入数据时,可能会无意中输入多余的空格,或在一些情况下,字符串前后不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符。例如,图13中“HELLO”这个字符串前后都有一个空格。可以使用Python中提供的strip()方法去除字符串左右两边的空格和特殊字符,也可以使用lstrip()方法去除字符串左边的空格和特殊字符,使用rstrip()方法去除字符串中右边的空格和特殊字符。

H

E

L

L

O

图13  前后包含空格的字符串

说明:这里的特殊字符是指制表符\t、回车符\r、换行符\n等。

(1)strip()方法

strip()方法用于去掉字符串左、右两侧的空格和特殊字符,语法格式如下:

str.strip([chars])

参数说明:

l  str:为要去除空格的字符串。

l  chars:为可选参数,用于指定要去除的字符,可以指定多个。如果设置chars为“@.”,则去除左、右两侧包括的“@”或“.”。如果不指定chars参数,默认将去除空格、制表符“\t”、回车符“\r”、换行符“\n”等。

例如,先定义一个字符串,首尾包括空格、制表符、换行符和回车符等,然后去除空格和这些特殊字符;再定义一个字符串,首尾包括“@”或“.”字符,最后去掉“@”和“.”,代码如下:

str1 = ' http://www.mingrisoft.com  \t\n\r'

print('原字符串str1:' + str1 + '。')

print('字符串:' + str1.strip() + '。')           # 去除字符串首尾的空格和特殊字符

str2 = '@明日科技.@.'

print('原字符串str2:' + str2 + '。')

print('字符串:' + str2.strip('@.') + '。')      # 去除字符串首尾的“@”“.”

上面的代码运行后,将显示如图14所示的结果。

图14  strip()方法示例

(2)lstrip()方法

lstrip()方法用于去掉字符串左侧的空格和特殊字符,语法格式如下:

str.lstrip([chars])

参数说明:

l  str:为要去除空格的字符串。

l  chars:为可选参数,用于指定要去除的字符,可以指定多个,如果设置chars为“@.”,则去除左侧包括的“@”或“.”。如果不指定chars参数,默认将去除空格、制表符“\t”、回车符“\r”、换行符“\n”等。

例如,先定义一个字符串,左侧包括一个制表符和一个空格,然后去除空格和制表符;再定义一个字符串,左侧包括一个@符号,最后去掉@符号,代码如下:

str1 = '\t http://www.mingrisoft.com'

print('原字符串str1:' + str1 + '。')

print('字符串:' + str1.lstrip() + '。')         # 去除字符串左侧的空格和制表符

str2 = '@明日科技'

print('原字符串str2:' + str2 + '。')

print('字符串:' + str2.lstrip('@') + '。')      # 去除字符串左侧的@

上面的代码运行后,将显示如图15所示的结果。

图15  lstrip()方法示例

(3)rstrip()方法

rstrip()方法用于去掉字符串右侧的空格和特殊字符,语法格式如下:

str.rstrip([chars])

参数说明:

l  str:为要去除空格的字符串。

l  chars:为可选参数,用于指定要去除的字符,可以指定多个,如果设置chars为“@.”,则去除右侧包括的“@”或“.”。如果不指定chars参数,默认将去除空格、制表符“\t”、回车符“\r”、换行符“\n”等。

例如,先定义一个字符串,右侧包括一个制表符和一个空格,然后去除空格和制表符;再定义一个字符串,右侧包括一个“,”,最后去掉“,”,代码如下:

str1 = ' http://www.mingrisoft.com\t '

print('原字符串str1:' + str1 + '。')

print('字符串:' + str1.rstrip() + '。')         # 去除字符串右侧的空格和制表符

str2 = '明日科技,'

print('原字符串str2:' + str2 + '。')

print('字符串:' + str2.rstrip(',') + '。')      # 去除字符串右侧的逗号

上面的代码运行后,将显示如图16所示的结果。

图16  rstrip()方法示例

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1715671.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端应用开发实验:表单控件绑定

目录 实验目的相关知识点实验内容代码实现效果 实验目的 (1)熟练掌握应用v-model指令实现双向数据绑定的方法,学会使用 v-model指令绑定文本框、复选框、单选按钮、下拉菜单; (2)学会值绑定(将…

【Unity2D 2022:Particle System】添加粒子特效

一、创建粒子系统游戏物体 1. 创建粒子系统游戏物体Smog Effect 2. 给粒子特效添加精灵贴图 (1)启用Texture Sheet Animation(纹理表动画) (2)点击加号添加一个纹理,并将两张厌恶图片导入到纹理…

【文献阅读】极端事件、经济不确定性、原油期货价格泡沫投机

Extreme events, economic uncertainty and speculation on occurrences of price bubbles in crude oil futures 极端事件、经济不确定性、原油期货价格泡沫投机 本文考察了极端事件、经济不确定性和投机行为对原油期货价格泡沫的影响。为了更好地预测和估计原油期货的正/负价…

MySQL之创建高性能的索引(六)

创建高性能的索引 选择合适的索引列顺序 当使用前缀索引的时候,在某些条件值的基数比正常值高的时候,问题就来了。例如,在某些应用程序中,对于没有登录的用户,都将其用户名记录为"guest",在记录…

ChatGPT的基本原理是什么?又该如何提高其准确性?

在深入探索如何提升ChatGPT的准确性之前,让我们先来了解一下它的工作原理吧。ChatGPT是一种基于深度学习的自然语言生成模型,它通过预训练和微调两个关键步骤来学习和理解自然语言。 在预训练阶段,ChatGPT会接触到大规模的文本数据集&#x…

【Python】解决Python报错:TypeError: ‘xxx‘ object does not support item assignment

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

opencascade 笔记

opencascade 画一个无限大的面 在 OpenCascade 中&#xff0c;要绘制一个无限大的面&#xff0c;你可以使用 gp_Pln 类来定义一个平面&#xff0c;然后将其绘制出来。这里是一个示例代码&#xff0c;演示如何在 OpenCascade 中绘制一个无限大的平面&#xff1a; #include <…

设计模式详解(六):适配器模式——Adapter

目录导航 适配器模式及其作用现实生活举例 适配器模式的好处适配器模式的实现关系图实现步骤 适配器模式的适用场景适配器模式示例 适配器模式及其作用 适配器模式是一种结构型设计模式。所谓结构型是指在代码结构方面的设计模式。适配器模式作为中间层&#xff0c;可以让交互…

论文笔记 Explicit Visual Prompting for Low-Level Structure Segmentations

通俗地解释视觉中的prompt 在视觉中的“prompt”&#xff08;提示&#xff09;可以用一种比较通俗的方式来理解&#xff1a; 什么是视觉中的提示&#xff1f; 想象一下&#xff0c;你有一个已经接受过大量训练的超级助手&#xff08;类似于预训练的模型&#xff09;&#xf…

SpringBoot注解--09--idea创建spring boot项目,java版本只能选择17和21

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 idea创建spring boot项目1.问题描述2.原因3.解决方法方案一&#xff1a;升级JDK版本至17或更高方案二&#xff1a;替换Spring初始化的源https://start.aliyun.com i…

【YOLOv10】2024年5月最新的YOLO系列模型Yolov10(论文阅读笔记) + 完整创新点说明 + 总结

&#x1f680;&#x1f680;&#x1f680; YOLOv10: 实时端到端的目标检测。YOLOv10比最先进的YOLOv9延迟时间更低&#xff0c;测试结果可以与YOLOv9媲美&#xff0c;可能会成为YOLO系列模型部署的“新选择”。 官方论文地址&#xff1a;https://arxiv.org/pdf/2405.14458 官方…

2024了,还有人在问为甚死锁?

大家好&#xff0c;我是javapub。 接上篇提到了锁&#xff0c;《InnoDB有哪些锁类型》。这么多的锁&#xff0c;你有遇到过死锁吗&#xff1f; 死锁是在事务数据库中会发生的一种特殊现象&#xff0c;多个事务在执行过程中&#xff0c;相互等待对方持有的资源&#xff0c;导致…

【Python编程实践2/3】Python图像处理模块(上)

目录 引言 目标 安装模块 Windows系统 macOS系统 路径 Windows路径 ​编辑macOS路径 windows路径报错 windows路径前的r 示例代码 windows快速查看路径 macOS快速查看路径 打开图片 展示图片 下节预告 总结 引言 欢迎各位大佬垂阅本篇Python实践博客&a…

Java Class类简介

一、类图&#xff1a; 二、基本介绍&#xff1a; 1. Class也是类&#xff0c;因此也继承了Object类。 2. Class类的对象不是new出来的&#xff0c;是系统创建的。 类加载器ClassLoader有个方法LoadClass()&#xff0c;将某个类对应的Class对象生成在堆中。 通过调试可以发现&am…

电脑显示由于找不到msvcr110.dll 无法继续执行如何处理?最简单的修复msvcr110.dll文件方法

电脑显示由于找不到msvcr110.dll 无法继续执行&#xff1f;当你看到这种提示的时候&#xff0c;请不要紧张&#xff0c;这种是属于dll文件丢失&#xff0c;解决起来还是比较简单的&#xff0c;下面会详细的列明多种找不到msvcr110.dll的解决方法。 一.找不到msvcr110.dll是怎么…

cesium绘制编辑区域

npm 安装也是可以的 #默认安装最新的 yarn add cesium#卸载插件 yarn remove cesium#安装指定版本的 yarn add cesium1.96.0#安装指定版本到测试环境 yarn add cesium1.96.0 -D yarn install turf/turf <template><div id"cesiumContainer"></div…

【Windows配置nginx开机自启】

Windows配置nginx开机自启 方式一&#xff1a;将nginx加入到windows服务中方式二&#xff1a;通过windows任务计划设定nginx开机自启 方式一&#xff1a;将nginx加入到windows服务中 下载window service wraper&#xff08;https://github.com/winsw/winsw/releases&#xff0…

【环境配置】windows的磁盘分区、VMware下的ubuntu20的安装、虚拟机系统界面过小的处理

这段时间在折腾自己的笔记本&#xff0c;刚好也有同学新买台式机咨询安装VMware软件&#xff0c;就顺便记录下windows的环境的一些操作。方便自己需要时查阅。 1 windows磁盘分区 在Windows系统中&#xff0c;磁盘分区和管理可以通过【磁盘管理】工具进行。要打开磁盘管理&…

【5.基础知识和程序编译及调试】

一、GCC概述&#xff1a;是GUN推出的多平台编译器&#xff0c;可将C/C源程序编译成可执行文件。编译流程分为以下四个步骤&#xff1a; 1、预处理 2、编译 3、汇编 4、链接 注&#xff1a;编译器根据程序的扩展名来分辨编写源程序所用的语言。根据不同的后缀名对他们进行相…

IDEA 2024.1.2安装与破解

官网下载 官网地址 安装 直接下一步 破解 破解网站 第一步 第二步 第三步 第四步 第五步