python3-常用方法和函数总结(字符串)

2023-11-15

方法与函数的差别
调用方式 作用域
方法

对象.方法名

不释放空间
函数 函数名() 自动释放空间

字符串常用函数与方法
函数/方法 说明 举例
capitalize()方法 将首字母变为大写(非首字母变为小写)

str = 'hEllo'

print(str.capitalize()) ==> Hello

count()方法

统计字符串中某字符出现的次数。

str.count(target, start=0,end=len(str))

参数说明:默认从首个字母开始搜索目标值target,即start=0;

默认搜索目标值target到最后一个字母结束,即end=len(str)

str = 'asdbfgzxc vbabb'

print(str.count('b')) ==> 4

str = 'asdbfgzxc vbabb'

print(str.count('b', 4)) ==> 3(从第4个字母开始统计到结束)

str = 'asdbfgzxc vbabb'

print(str.count('b', 4, 10)) ==>0(从第4个字母开始,第10个字母结束)

find()方法

检查字符串中是否包含子字符串,包含则返回首次查找到的子字符串的首字母位置,不包含返回-1。

str.find(target, start=0,end=len(str))

str = 'hello world, hello python3!'

print(str.find('llo')) ==> 2

str = 'hello world, hello python3!'

print(str.find('llo', 4)) ==> 15

str = 'hello world, hello python3!'

print(str.find('llo', 4, 17)) ==> -1

index()方法

同find()方法功能、用法一致,只是当不包含时报一个异常。

str.index(target, start=0,end=len(str))

str = 'hello world, hello python3!'

print(str.find('llo')) ==> 2

str = 'hello world, hello python3!'

print(str.find('llo', 4)) ==> 15

str = 'hello world, hello python3!'

print(str.find('llo', 4, 17)) ==> ValueError: substring not found

title()方法 标题化,所有首字母大写。具体看举例说明。

str = 'hello world, hello python3!'

print(str.title()) ==> Hello World, Hello Python3!

str = 'hello 520python666pyhton!'

print(str.title()) ==> 

Hello 520Python666Pyhton!

str = 'abc1a2b3c'

print(str.title()) ==> Abc1A2B3C

istitle()方法 判断字符串中所有的单词拼写首字母是否为大写,且其他字母为小写。是,则返回True;不是,则返回False。

str1 = 'Abc1A2B3C'

str2 = 'Abc1a2b3C'

str3 = 'Hello pyhton3'

str4 = 'Hello Pyhton3'

print(str1.istitle()) ==> True

print(str2.istitle()) ==> False

print(str3.istitle()) ==> False

print(str4.istitle()) ==> True

islower()方法 判断字符串中所有字母均为小写。是,则返回True;不是,则返回False。

str1 = 'Abc'

str2 = 'abc'

str3 = 'a123 bcd'

print(str1.islower()) ==> False

print(str2.islower()) ==> True

print(str3.islower()) ==> True

isupper()方法 判断字符串中所有字母均为大写。是,则返回True;不是,则返回False。

str1 = 'Abc'

str2 = 'ABC'

str3 = 'A123 ABC'

str4 = 'A123 aBc'

print(str1.isupper()) ==> False

print(str2.isupper()) ==> True

print(str3.isupper()) ==> True

print(str4.isupper()) ==> False

isspace()方法 判断字符串中是否只包含空格。是,则返回True;不是,则返回False。

str1 = '          '

str2 = 'hi   a'

print(str1.isspace()) ==> True

print(str2.isspace()) ==> False

join()方法

将字符串中的元素以指定的字符(分隔符)连接生成一个新的字符串。

语法:‘分隔符’.join(列表)

str1 = 'A123 aBc'

print('-'.join(str1)) ==> A-1-2-3- -a-B-c

len()函数 获取字符串长度。

str= 'A123 aBc,'

print(len(str)) ==> 9

replace()方法

字符替换。

str.replace(old, new, num)

参数说明:old为字符串中的某个字符;new为替换old的字符;num为替换的次数,不填写默认为全部。

str1 = 'aBc,aa -'

print(str1.replace('a', '0')) ==> 0Bc,00 -

str2 = 'aBc,aa -'

print(str2.replace('a', '0', 2)) ==> 0Bc,0a -

max()函数

获取字符串中最大的字符。根据ASCII码值大小比较。

str = 'ac, -YyZ'

print(max(str)) ==> y

str = 'ac, -YyZ~'

print(max(str)) ==> ~

min()函数 获取字符串中最小的字符。根据ASCII码值大小比较。

str = 'ac, -YyZ'

print(min(str)) ==> '  '(空格)

str = 'acAYyZ'

print(min(str)) ==> A

rstrip()方法

删除字符串末尾的指定字符。默认为空白格,包括空格、制表符、换行、回车。

str = 'hello python3!    '

print(str.rstrip()) ==> 'hello python3!'

str = 'hello python3! '

print(str.rstrip('3 !')) ==> 'hello python'

str = 'hello python3!    '

print(str.rstrip('3!')) ==> 'hello python3!    '

lstrip()方法 删除字符串首部的指定字符。默认为空白格,包括空格、制表符、换行、回车。

str = '    hello python3!    '

print(str.lstrip()) ==> 'hello python3!    '

str = '    hello python3!    '

print(str.lstrip('e hol')) ==> 'python3!    '

str = '    hello python3!    '

print(str.lstrip('h o')) ==> 'ello python3!    '

strip()方法 删除字符串首尾的指定字符。默认为空白格,包括空格、制表符、换行、回车。

str = '    hello python3! hello    '

print(str.strip('h lo')) ==> ‘ello python3! he’

字符串取值操作同列表切片操作一致,通过索引取值,0为开始值,-1为末尾值。

a = 'abc123-*'
print("字符串长度:",len(a))
print("第一个字符:",a[0])
print("最后一个字符:",a[-1])
print("第四个字符(包含)开始到结束:",a[3:])
print("开始到最后一个字符(不包含)):",a[:-1])
print("第四个字符(包含)开始到第六个字符(不包含):",a[3:5])
print("从第一个开始取字符串间隔为2的字符:",a[::2])
print("反转字符串:",a[::-1])

运行结果:

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python3-常用方法和函数总结(字符串) 的相关文章

  • Django:模拟模型上的字段

    如何将模拟对象分配给该模型上的用户字段 无论如何都要绕过 SomeModel user 必须是 User 实例 检查吗 class SomeModel models Model user models ForeignKey User 我不会
  • xlrd.biffh.XLRDError:Excel xlsx 文件;不支持[重复]

    这个问题在这里已经有答案了 我正在尝试使用读取启用宏的 Excel 工作表pandas read excel与 xlrd 库 它在本地运行良好 但是当我尝试将其推送到 PCF 时 我收到此错误 2020 12 11T21 09 53 441
  • Kivy - 文本换行工作错误

    我正在尝试在 Kivy 1 8 0 应用程序中换行文本 当没有太多文字时 一切正常 但如果文本很长并且窗口不是很大 它只是剪切文本 这是示例代码 vbox BoxLayout orientation vertical size hint y
  • boto3 资源(例如 DynamoDB.Table)的类型注释

    The boto3库提供了几种返回资源的工厂方法 例如 dynamo boto3 resource dynamodb Table os environ DYNAMODB TABLE 我想注释这些资源 以便我可以获得更好的类型检查和完成 但我
  • 为什么我的代码不能根据字典解码加密字符串?

    我有一本字典 其中包含代表字母的键和值 例如一个简单的 DICT CODE b g n a p o x d t y 我收到了一个加密代码 并将该字符串转换为一个列表 其中每个项目都是一个单词 我需要根据字典中的项目来解决它 代码示例是 wo
  • Tweepy StreamListener 到 CSV

    我是 python 新手 我正在尝试开发一个应用程序 使用 Tweepy 和 Streaming API 从 Twitter 检索数据并将数据转换为 CSV 文件 问题是此代码不会创建输出 CSV 文件 也许是因为我应该将代码设置为在实现例
  • 更新 Sqlalchemy 中的多个列

    我有一个在 Flask 上运行的应用程序 并使用 sqlalchemy 与数据库交互 我想用用户指定的值更新表的列 我正在使用的查询是 def update table value1 value2 value3 query update T
  • 当我在 Pandas 中使用 df.corr 时,我的一些列丢失了

    这是我的代码 import numpy as np import pandas as pd import seaborn as sns import matplotlib pyplot as plt data pd read csv dea
  • 根据开始列和结束列扩展数据框(速度)

    我有一个pandas DataFrame含有start and end列 加上几个附加列 我想将此数据框扩展为一个时间序列 从start值并结束于end值 但复制我的其他专栏 到目前为止 我想出了以下内容 import pandas as
  • Python Pandas 根据另一列的总计从另一个数据帧中选择值

    我下面有一个 DataFrame 但我需要根据取消和订单列从每个代码中选择行 假设代码 xxx 的阶数为 6 1 5 1 阶数为 11 我需要一种算法 可以选择满足总共 11 行的行 阶数为 6 5 如果没有行匹配 则选择最接近的 id 并
  • 使用 scipy curve_fit 拟合噪声指数的建议?

    我正在尝试拟合通常按以下方式建模的数据 def fit eq x a b c d e return a 1 np exp x b c np exp x d e x np arange 0 100 0 001 y fit eq x 1 1 1
  • Pandas 滚动窗口 Spearman 相关性

    我想使用滚动窗口计算 DataFrame 两列之间的 Spearman 和 或 Pearson 相关性 我努力了df corr df col1 rolling P corr df col2 P为窗口尺寸 但我似乎无法定义该方法 添加meth
  • `list()` 被认为是一个函数吗?

    list显然是内置类型 https docs python org 3 library stdtypes html list在Python中 我看到底下有一条评论this https stackoverflow com a 53645813
  • 如何使用 Keras ImageDataGenerator 预测单个图像?

    我已经训练 CNN 对图像进行 3 类分类 在训练模型时 我使用 keras 的 ImageDataGenerator 类对图像应用预处理功能并重新缩放它 现在我的网络在测试集上训练得非常准确 但我不知道如何在单图像预测上应用预处理功能 如
  • 更改 Python Cmd 模块处理自动完成的方式

    我有一个 Cmd 控制台 设置为自动完成 Magic the Gathering 收藏管理系统的卡牌名称 它使用文本参数在数据库中查询卡片 并使用结果自动完成 建议卡片 然而 这些卡片名称有多个单词 Cmd 会从last到行尾的空间 例如
  • 如何在单元测试中使用 JSON 发送请求

    我的 Flask 应用程序中有在请求中使用 JSON 的代码 我可以像这样获取 JSON 对象 Request request get json 这一直工作得很好 但是我正在尝试使用 Python 的 unittest 模块创建单元测试 但
  • 如何循环遍历字典列表并打印特定键的值?

    我是 Python 新手 有一个问题 我知道这是一个非常简单的问题 运行Python 3 4 我有一个需要迭代并提取特定信息的列表 以下是列表 称为部分 的示例 已截断 数千个项目 state DEAD id phwl type name
  • 长/宽数据到宽/长

    我有一个数据框 如下所示 import pandas as pd d decil 1 decil 1 decil 2 decil 2 decil 3 decil 3 decil kommune AA BB AA BB AA BB 2010
  • 使用 urllib 编码时保持 url 参数有序

    我正在尝试用 python 模拟 get 请求 我有一个参数字典 并使用 urllib urlencode 对它们进行 urlencode 我注意到虽然字典的形式是 k1 v1 k2 v2 k3 v3 urlencoding 后参数的顺序切
  • 缓存 Flask-登录 user_loader

    我有这个 login manager user loader def load user id None return User query get id 在我引入 Flask Principal 之前它运行得很好 identity loa

随机推荐

  • 计算机网络第六章——应用层(下)

    等闲变却故人心 却道故人心易变 文章目录 用户代理就是用户和电子邮件系统之间的一个接口 通常都是运行在电脑中的一个程序 用户代理又可以称为电子邮件客户端软件 用户代理可以为用户提供一个比较友好的接口 邮件服务器作为一个服务器就需要长时间的工
  • 责任链模式(Chain of Responsibility) Java实现

    责任链模式 责任链模式 Chain of Responsibility 定义 责任链模式是一种对象的行为模式 在责任链模式里 很多对象由每一个对象对其下家的引用而连接起来形成一条链 请求在这个链上传递 直到链上的某一个对象决定处理此请求 发
  • 以太网(Ethernet)相关基础知识

    最近正好在学习以太网 感觉非常有用 进行一个总结 欢迎指正 如今 以太网已在现实中大量使用 低廉的价格和较快的速度都是它从许多网络中存活下来的因素 学校 公司中大多用得都是以太网 目录 以太网电缆 Ethernet Cabling 曼彻斯特
  • 移动端点击(click)事件延迟问题的解决方法

    移动端 click 事件会有 300ms 的延时 原因是移动端屏幕双击会缩放 double tap to zoom 页面 解决方案 1 禁用缩放 浏览器禁用默认的双击缩放行为并且去掉300ms 的点击延迟 2 利用touch事件自己封装这个
  • (mac)配置vue

    安装参考 https www jianshu com p cc722eba1f46 1 安装brew 一个安装 卸载软件的程序 https blog csdn net poppy rain article details 88406390
  • Java面试题第一季学习笔记

    Java面试题第一季 1 自增变量 2 单例设计 2 1 什么是Singleton 2 2 代码示例 3 类初始化 3 1 代码 3 2 考点 3 3 Override 重写 和Overload 重载 区别 4 方法的传递机制 4 1 代码
  • java 反射中的method.invoke()方法详解

    public class TestReflect public static void main String args String names tom tim allen alice Class
  • java关于ArrayList,Vector,LinkedList,Set及其面试题+LeetCode136两种方式实现

    ArrayList ArrayList的遍历补充 将list转换为数组 使用toArray 方法将列表转换为数组 再对数组进行遍历 Test void test01 List
  • vue3实现鼠标左键拖拽画矩形框框选功能

    vue3 elementuiPlus 实现鼠标左键拖拽画矩形框 框选列表功能 仿照桌面框选功能 效果如图 vue3鼠标框选 代码
  • Hibernate的核心配置

    Hibernate的设计思路 Hibernate是一种全自动化管理持久化对象的ORM框架 既提供了完全面向对象的封装完整的对象持久化接口 屏蔽db层的差异化 提升代码可移植性 也提供了操作HQL和SQL的半自动化DB访问接口 提供复杂查询的
  • JSVC的配置与使用详解

    JSVC是apache出的所谓common daemon的一个工具套件 他利用一个daemon程序 从而使tomcat这样的程序能在开机的时候自动启动 而且能使tomcat被 chkconfig这样的工具所管理 在之前的一篇文章中对jsvc
  • 算法岗面试问题总结(二)

    文章目录 1 SVM的loss是啥 2 kmeans聚类如何选择初始点 3 RF和GBDT谁更容易过拟合 偏差和方差 4 xgb的分类树也是用残差吗 不是的话是什么 5 讲讲数据倾斜怎么处理 6 请你说说SVM的优缺点 7 LR和SVM的联
  • C++中的typeInfo用法总结

    最近在做测试 在大型程序中 模板类型加上继承关系搞得我混乱 还好有tpyeinfo帮助捋顺关系 typeInfo与typeid简单总结说明 和sizeof这类的操作符一样 typeid是C 的关键字之一 typeid操作符的返回结果是名为t
  • jenkins学习笔记第十六篇 jenkins权限控制

    创建用户 对用户进行权限控制 在实际项目中 根据不同的用户 大致可分为 测试用户 开发用户 运维用户等 这时就需要给不同的用户赋予不能的权限 首选需要安装插件 Role based Authorization Strategy 这个插件主要
  • ctfshow-WEB-web14( 利用数据库读写功能读取网站敏感文件)

    ctf show WEB模块第14关是一个SQL注入漏洞 绕过switch循环后可以拿到一个登录界面 登录界面存在SQL注入 脱库以后会提示flag在另一个文件中 利用数据库的文件读写功能读取文件内容即可拿到flag 开局是一个switch
  • 智能优化算法之遗传算法(GA)的实现(基于二进制编码,Python附源码)

    文章目录 一 遗传算法的实现思路 二 基于二进制编码方式的遗传算法的实现 1 库的导入 2 目标函数 3 个体编码函数 4 个体解码函数 5 选择函数 6 交叉函数 7 变异函数 8 算法主流程 一 遗传算法的实现思路 遗传算法 Genet
  • Android4种网络连接方式HttpClient、HttpURLConnection、OKHttp和Volley优缺点和性能对比

    比较的指标 1 cpu 2 流量 3 电量 4 内存占用 5 联网时间 功能点 1 重试机制 2 提供的扩展功能 3 易用性 4 是否https 5 是否支持reflect api OkHttp有配套方法 6 缓存 重试 7 cookie支
  • Python音视频开发:消除抖音短视频Logo和去电视台标的实现详解

    前往老猿Python博文目录 一 引言 对于带Logo 如抖音Logo 电视台标 的视频 有三种方案进行Logo消除 直接将对应区域用对应图像替换 直接将对应区域模糊化 通过变换将要去除部分进行填充 其中 方法1又可以使用三种方法 一是使用
  • C++之vector深度剖析

    C 之vector深度剖析 1 vector的介绍及使用 1 1 vector的介绍 1 2 vector的使用 1 2 1 vector的定义 1 2 2 vector iterator 的使用 1 2 3 vector 空间增长问题 1
  • python3-常用方法和函数总结(字符串)

    方法与函数的差别 调用方式 作用域 方法 对象 方法名 不释放空间 函数 函数名 自动释放空间 字符串常用函数与方法 函数 方法 说明 举例 capitalize 方法 将首字母变为大写 非首字母变为小写 str hEllo print s