Python超详细的字符串用法大全 !

Python如何判断一个列表是否包含某个字符串?本文将为大家介绍几种实用的方法。 any()函数的作用是判断一个可迭代对象中是否有任意一个元素为True,可以用于判断列表中是否存在符合条件的元素。filter()函数是Python内置的过滤函数,可以根据自定义条件筛选出符合条件的元素。通过for循环遍历列表中的每一个元素,然后使用in关键字判断该元素是否包含目标字符串。以上三种方法均可以有效地判断列表中是否包含某个字符串。Python如何判断一个列表是否包含某个字符串?本文将为大家介绍几种实用的方法。方法三:使用filter函数。方法二:使用any函数。方法一:循环遍历判断。 阅读详情

本文要点

  • 字符串拼接
  • 拆分含有多种分隔符的字符串
  • 判读字符串a是否以字符串b开头或结尾
  • 调整字符串中文本的格式
  • 对字符串进行左,右,居中对齐
  • 删除字符串中不需要的字符

字符串拼接

Python资源共享群:484031800

实际场景:把列表中的数据拼接成一个字符串

解决方案:使用 str.join() 方法

>>> li = ['cxk', 'cxk', 'kk', 'caibi']
>>> ''.join([str(i) for i in li])
'cxkcxkkkcaibi'

推荐使用生成器表达式,如果列表很大,可以节省很多内存空间

>>> ''.join(str(i) for i in li)
'3cxkkkcaibi'

 

拆分含有多种分隔符的字符串

实际场景:把某个字符串依据分割符号拆分不同的字段,该字符串包含多种不同的分隔符

s = "ab;fd/ft|fs,f\tdf.fss*dfd;fs:uu}fsd"

 

1.使用 python 中的 split() 方法,由于 split 一次处理一个分隔符,例如:

>>> res = s.split(';')
>>> res
['ab', 'fd/ft|fs,f\tdf.fss*dfd', 'fs:uu}fsd']

所以我们需要根据字符串中的分隔符,依次分割,可以是 map 函数!

>>> list(map(lambda x: x.split("|"), res))
[['ab'], ['fd/ft', 'fs,f\tdf.fss*dfd'], ['fs:uu}fsd']]

结果变成了一个二维列表,而我们想要的结果是一维列表,怎么办?

创建一个临时列表保存结果。

>>> t = []
>>> list(map(lambda x: t.extend(x.split("|")), res))
[None, None, None]
>>> t
['ab', 'fd/ft', 'fs,f\tdf.fss*dfd', 'fs:uu}fsd']

结果符合我们的预期!接下来继续处理剩余的分隔符,重复动作,用 for 循环搞定!

最终代码如下:

def my_split(s, ds):
    res = [s]
    for d in ds:
        t = []
        list(map(lambda x: t.extend(x.split(d)), res))
        res = t
    return res

将字符串和字符串中所有的分隔符传入,结果如下:

s = "ab;fd/ft|fs,f\tdf.fss*dfd;fs:uu}fsd"
print(my_split(s, ";/|,.}:*\t"))

运行结果:['ab', 'fd', 'ft', 'fs', 'f', 'df', 'fss', 'dfd', 'fs', 'uu', 'fsd']

2.使用 re 模块的中 split() 方法

re() 也给我们提供了 split() 方法,可以一次性分隔字符串!

import re
s = "ab;fd/ft|fs,f\tdf.fss*dfd;fs:uu}fsd"
print(re.split('[;/|,.}:*\t]', s))

结果一致,是不是很简单粗暴!

判读字符串a是否以字符串b开头或结尾

实际场景:比如某目录下有一系列文件:

 

 

 

 

编写程序给其中所有 .txt 文件和 .py 文件加上用户可执行权限

解决方案:

使用字符串 str.startswith() 和 str.endswith()

找出以 .txt 和 .py 结尾的文件,其接受一个元组

>>> import os
>>> os.listdir(".")
['app', 'config', 'requirements.txt', 'run.py', '__pycache__', 'gunicorn.conf.py', 'chromedriver', 'login_after2.png', 'readme.txt', 'slide.png', 'test.py', 'logs', 'chrome-linux.zip', 'gunicorn.pid', 'asgi.py', 'chrome-linux']
>>> [name for name in os.listdir(".") if name.endswith((".txt", ".py"))]
['requirements.txt', 'run.py', 'gunicorn.conf.py', 'readme.txt', 'test.py', 'asgi.py']

调整字符串中文本的格式

实际案列:例如在日志文件中,其中日期格式为'yyyy-mm-dd':

 

 

 

 

我们想把其中的日期改为美国日期格式'mm/dd/yyyy'.比如 2019-06-12 改成 06/12/2019 格式

解决方案:使用 re 中的 sub() 方法做字符串替换

利用正则表达式中的捕获组,捕获每个部分的内容,然后在替换在替换的字符串中调整各个捕获组的顺序!

代码如下:

import re
with open("info.log", "r", encoding="utf-8") as f:
    file = f.read()
print(re.sub('(\d{4})-(\d{2})-(\d{2})', r'\2/\3/\1', file))

捕获组中每组需要用括号括起来,然后默认从左至右分为组1, 组2…

下一个参数是我们要替换的格式,用 1,2,3 分别表示组1, 组2…

运行结果如下:

 

 

 

 

对字符串进行左,右,居中对齐

解决方案:

1.使用字符串中的 str.ljust(), str.rjust(), str.center() 进行左右居中对齐!

以上三种方法的基本用法:

>>> s = 'abc'
>>> s.ljust(20, '=')
'abc================='
>>> s.ljust(20)
'abc           '

三种方法都可以设置默认填充值

2.使用内置的 format() 方法

>>> format(s, ">20")
'                 abc'
>>> format(s, "<20")
'abc                 '
>>> format(s, "^20")
'        abc         '

删除字符串中不需要的字符

实际案例:

  1. 过滤掉用户输入中前后多余的空白字符:“  nick2008@gmail.com  ”
  2. 过滤掉某 windows 下编辑文本中的 “\r” :“hello world \r\n”
  3. 去掉文本中的 unicode 组合符号(音调):nǐ hǎo mā

解决方案:

  • 使用 str.strip(), str.lstrip(), str.rstrip() 方法去掉字符串两端字符
  • 使用 str.replace() 或者正则中的 re.sub()
  • 使用字符串中 str.translate() 方法,可以同时删除多个不同的字符
Python如何判断列表中是否包含字符串? 本文介绍了三种Python判断列表中是否包含字符串的方法,分别是使用in操作符、count()方法和for循环。另外,需要注意的是,以上三种方法都只能判断该字符串在列表中是否存在,无法获取该字符串在列表中的索引位置。以上代码输出结果同样为"Yes, ‘banana’ is in the fruits list",表明’banana’字符串在列表中存在。在Python编程中,我们经常需要对列表进行操作,其中一个常见的问题是如何判断列表中是否包含特定的字符串。如果存在相等的情况,则说明目标字符串在列表中存在。 阅读详情

相关推荐

Python如何判断一个列表是否包含某个字符串?

any()函数的作用是判断一个可迭代对象中是否有任意一个元素为True,可以用于判断列表中是否存在符合条件的元素。filter()函数是Python内置的过滤函数,可以根据自定义条件筛选出符合条件的元素。以上三种方法均可以有效地判断列表中是否包含某个字符串。读者可根据具体需求选择使用。中的每一个元素,然后使用in关键字判断该元素是否包含目标字符串。

weixin_50547796的博客 1494

关于字符串处理,你真的全掌握了吗?

字符串处理是 Python 中最基本的操作之一了,但其实有些用法你真的可能没有注意到,这里分享一篇关于 Python 字符串处理的总结文章,希望对大家有帮助。转载来源公众...

静觅 605

【CANoe16安装教程】亲测安装成功

CANoe16安装教程

qq_45302638的博客 2万+

split()函数的用法

split():拆分字符串。 通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list) 语法:str.split(str="",num=string.count(str))[n] 参数说明: str:表示为分隔符,默认为空格,但是不能为空(’’)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素 例如:s.split(’’)是不合法的表达 num:表示分割次数。如果存在参数num...

qq_44846758的博客 3471

国产系统迁移实战:在银河麒麟V10上搞定Wine32位支持,让老Windows软件跑起来

本文详细介绍了在银河麒麟V10操作系统上构建Wine32位支持的全过程,帮助用户解决Windows应用迁移难题。从系统架构差异分析到Wine环境配置,再到实战应用部署与优化,提供了一套完整的解决方案,确保老Windows软件在国产系统上稳定运行。

weixin_32288959的博客 649

Open5GS实战指南:Ubuntu 22.04环境下的5G核心网快速部署

本文提供Open5GS在Ubuntu 22.04环境下部署5G核心网的实战指南,涵盖环境准备、MongoDB配置、核心组件安装、WebUI部署及网络调优等关键步骤。通过详细的安装教程和常见问题解决方案,帮助开发者快速搭建开源5G核心网测试环境。

weixin_29202213的博客 540

Python字符串总结大全

目录 操作符 标准类型操作符 对象值的比较 布尔类型 序列操作符切片([]和[:]) 成员操作符(in,not in) 连接符(+) 运行时刻字符串连接 编译时字符串连接 普通字符串转化为Unicode字符串 重复操作符(*) 只适用于字符串的操作符 格式化操作符(%) 字符串模板:更简单的替代品 原始字符串操作符(r/R) Unicode字符串操作符(u/U) 常见的转义字符 字符串索引 编解码 内建函数 序列类型函数 len() max()和min() en

Jennifer_Love_Frank的博客 6万+

Keil 5安装教程(C51与MDK共存)

目录前言MDK的安装C51的安装安装完成后的验证新建C51工程添加C51程序文件编译测试总结 前言 本篇文章将介绍嵌入式开发工具Keil 5的安装方法,并使MDK(Microcontroller Development Kit,开发stm32时会用到)和C51(51单片机C语言软件开发系统)共存。今后使用Keil 5可同时开发51单片机程序和ARM单片机程序,便于学习与从51到32的过渡。 注: 为防止商业纠纷,本篇文章不涉及文中软件的注册破解,请支持正版。 同时为了便于今后更深入的学习,本文不会介绍软件的

xushu_me的博客 6万+

超详细的字符串用法大全

导语你千万别跟任何人谈任何事情。你只要一谈起,就会想念起每一个人来,我只知道我很想念我所谈到的每一个人。 ——J·D·塞林格《麦田里的守望者》本文要点字符串拼接拆分含有...

aaz913648653的博客 1460

《供应链金融风控模型设计:多维度数据整合与动态风险预警机制》

注:方案突出供应链金融「三流合一」(资金流、物流、信息流)的风控逻辑,通过多维度数据整合与动态预警,解决传统风控中中小企业信用评估难、链条风险传导监测滞后的问题。◦ 构建供应链拓扑图,计算「核心企业违约对上下游企业的影响系数」(如某电子厂商违约时,其前五大供应商的风险权重自动提升40%)• 区块链应用:将核心企业应付账款上链存证,防止「一票多融」欺诈(如某供应商用同一应收账款在多家银行融资)◦ 财务数据:核心企业审计报告、上下游企业纳税数据(增值税发票频次/金额)

2501_91651383的博客 1551

[SaaS] 阿里妈妈-万相营造

有controlnet的介入,我们是默认controlnet会介入,在inapinting时会把带有商品的画布做一点扩充,然后走inapinting和controlnet,其实也做了一点outpainting的工作。基于阿里妈妈营销平台,提供从图文到视频再到落地页的素材级智能化创意支持,是您营销创意数字资产累积和升值的阵地,最大化提升营销的效率和效果。目前看来抠图基本都是sam了,现在weshop也是,都有一个预扣好的主体,但是一点进去也会重新sam。atomovideo->图生视频。

liguandong 524

来不及解释!python字符串常用方法大全,先收藏再说

目录 1.0 capitalize()函数 2.0 title()函数 3.0swapcase()函数 4.0 lower()函数 5.0upper()函数 6.0 casefold()函数 7.0 center()函数 8.0ljust()函数 9.0 rjust()函数 10.0 zfill()函数 11.0 count()函数 12.0 encode()...

九天小牛 3万+

嵌入式u-boot最全面试题及参考答案(5万字长文持续更新)

例如,在一个便携式设备中,U-Boot 在启动时初始化电源控制器,将输出电压设置为合适的值。命令是u-boot构建过程中用于配置u-boot选项的命令。在嵌入式系统中,启动画面(也称为启动Logo或Splash Screen)是展示给用户的第一印象,它可以包含公司的标志、产品的名称或其他相关信息。u-boot允许通过环境变量来进行配置,这使得开发者可以根据不同的硬件平台和项目需求灵活地调整u-boot的行为。写入操作可以是字节级别的,也可以是块级别的,具体取决于设备的性能和操作系统的需求。

大模型大数据攻城狮的专栏 1001

python代码大全和用法,python编程常用代码

大家好,本文将围绕python代码大全和用法展开说明,python编程常用代码是一个很多人都想弄明白的事情,想搞清楚python常用代码大全需要先了解以下几个事情。

Clt216的博客 1042

雷达参数的设置

采样率又可以叫做采样速率或者,顾名思义就是每秒采集的次数。该值越高,单位时间内对信号的采集越多,采样率的单位可以用Hz或者sps表示(sps是采样率,是每秒采样点的数量,sp表示采样点数),一般1sps=1Hz。采样时间是采样点数和采样周期的乘积得到的结果。假设实际采样率为4560ksps,采样点数为256,那么采样周期为1/4560(ms),那么ADC的采样时间就为256*(1/4560)(ms)=0.056ms=56微秒。

qq_50974341的博客 1914

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

python字符串函数用法大全

python字符串函数用法大全 置顶 九天小牛 2018-10-12 21:19:12 9202 已收藏 176 分类专栏: python基础语法 python字符串 python基础语法 版权 目录 1.0 capitalize()函数 2.0 title()函数 3.0 swapcase()函数 4.0 lower()函数 5.0 upper()函数 6.0 casefold()函数 7.0 center()函数 8.0 ljust()函数 9.0 rjust()函数

best_ding的博客 3910

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

【Python学习】字符串的各种用法大全

【Python学习】字符串的各种用法大全

user_from_future的博客 1116

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

python代码大全和用法,python代码大全简单

这篇文章主要介绍了python代码大全和用法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。大家好,本文将围绕python编程常用代码展开说明,python常用代码大全是一个很多人都想弄明白的事情,想搞清楚python的常用代码需要先了解以下几个事情。作者 | 快学Python来源 | https://github.com/jackzhenguo/python-small-examples。

npy199331的博客 1047

python split()方法_Python超详细的字符串用法大全

字符串拼接实际场景:把列表中的数据拼接成一个字符串解决方案:使用 str.join() 方法>>> li = ['cxk', 'cxk', 'kk', 'caibi']>>> ''.join([str(i) for i in li])'cxkcxkkkcaibi'推荐使用生成器表达式,如果列表很大,可以节省很多内存空间>>> ''.join(s...

weixin_39926402的博客 8278

Python超详细的字符串用法大全

字符串拼接 实际场景:把列表中的数据拼接成一个字符串 解决方案:使用 str.join() 方法 >>> li = ['cxk', 'cxk', 'kk', 'caibi'] >>> ''.join([str(i) for i in li]) 'cxkcxkkkcaibi' 推荐使用生成器表达式,如果列表很大,可以节省很多内存空间 >>> '...

Python热爱者的博客 453

list包含某个字符串_Python超详细的字符串用法大全

本文要点字符串拼接拆分含有多种分隔符的字符串判读字符串a是否以字符串b开头或结尾调整字符串中文本的格式对字符串进行左,右,居中对齐删除字符串中不需要的字符字符串拼接实际场景:把列表中的数据拼接成一个字符串解决方案:使用 str.join() 方法>>>li=['cxk','cxk','kk','caibi']>>>''.join([str...

weixin_39620151的博客 2614

python split 多个分隔符_超详细Python字符串用法大全

本文要点字符串拼接拆分含有多种分隔符的字符串判读字符串a是否以字符串b开头或结尾调整字符串中文本的格式对字符串进行左,右,居中对齐删除字符串中不需要的字符字符串拼接实际场景:把列表中的数据拼接成一个字符串解决方案:使用 str.join() 方法>>>li=['cxk','cxk','kk','caibi']>>>''.join([str...

weixin_39631445的博客 3371

python代码大全和用法,python的代码怎么写

大家好,给大家分享一下python代码大全和用法,很多人还不知道这一点。下面详细解释一下。现在让我们来看看!

a17348的博客 612
上一篇: 用Python执行SQL、Excel常见任务?10个方法全搞定!
下一篇: 媲美Pandas?Python的Datatable包怎么用?
普通网友
博客等级 码龄7年 438粉丝 263原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值