首页 > 其他分享 >5. 字符串的相关操作和函数

5. 字符串的相关操作和函数

时间:2023-05-09 17:14:03浏览次数:43  
标签:函数 res 截取 print 索引 字符串 操作 strvar

一. 相关操作

1.1 字符串的拼接 +

var1 = "你好,"
var2 = "世界"
res = var1 + var2
print(res)

运行结果
image.png

1.2. 字符串的重复 *

res1 = "=" * 3
print(res1)

运行结果
image.png

1.3. 字符串的跨行拼接 \

strvar = "sadfsdafsdfklskldfjklsadfjklsjdklfsjkladfjksahdfjkshakdfhskladhfj" \
"你好你好你好"
print(strvar)

运行结果
image.png

1.4. 字符串的索引

#         0 1 2 3 4 5 6 7 8 9  正向索引
strvar = "黑夜给了我黑色的眼睛"
#         -10-9-8-7-6-5-4-3-2-1  逆袭索引
print(strvar[-2])
print(strvar[8])

1.5. 字符串的切片(切片就是截取的意思)

切片不改变类型,哪怕是没有切到

语法 => 字符串[::]  完整格式:[开始索引:结束索引:间隔值]
	(1)[开始索引:]  从开始索引截取到字符串的最后
	(2)[:结束索引]  从开头截取到结束索引之前(结束索引-1)
	(3)[开始索引:结束索引]  从开始索引截取到结束索引之前(结束索引-1)
	(4)[开始索引:结束索引:间隔值]  从开始索引截取到结束索引之前按照指定的间隔截取字符
	(5)[:]或[::]  截取所有字符串

strvar = "我爱你亲爱的姑凉,见到你我就心慌,魂不守舍,魂牵梦绕"

[开始索引:] 从开始索引截取到字符串的最后

res = strvar[3:]
print(res)

运行结果
image.png

[:结束索引] 从开头截取到结束索引之前(结束索引-1)

res = strvar[:8]
print(res)

运行结果
image.png

[开始索引:结束索引] 从开始索引截取到结束索引之前(结束索引-1)

res = strvar[9:12]
print(res)

运行结果
image.png

[开始索引:结束索引:间隔值] 从开始索引截取到结束索引之前按照指定的间隔截取字符

res = strvar[1:10:2]
print(res)

运行结果
image.png

开始和结束索引都不写,默认从开始截取到最后

res = strvar[::]
print(res)

运行结果
image.png

[:]或[::] 截取所有字符串

res = strvar[:]
print(res)

运行结果
image.png

二. 字符串的相关函数

2.1 capitalize 字符串首字母大写

strvar = "we are FamilY"
res = strvar.capitalize()
print(res)

运行结果
image.png

2.2 upper 将所有字母变成大写

strvar = "we are FamilY"
res = strvar.upper()
print(res)

运行结果
image.png

2.3 lower 将所有字母变成小写

strvar = "we are FamilY"
res = strvar.lower()
print(res)

运行结果
image.png

2.4 swapcase 大小写互换

strvar = "we are FamilY"
res = strvar.swapcase()
print(res)

运行结果
image.png

2.5 len 计算字符串的长度

strvar = "we are FamilY"
res = len(strvar)
print(res)

运行结果
image.png

2.6 count 统计字符串中某个元素的数量

strvar = "we are FamilY"
res = strvar.count("a")
print(res)

运行结果
image.png

2.7 find 查找某个字符串第一次出现的索引位置

strvar = "oh Father this is my Favorite girl"
res = strvar.find("F")
res1 = strvar.find("Father") #还是按照F所在的位置找出索引
res2 = strvar.find("F",4)    #第4个F出现位置索引
res3 = strvar.find("my",19,21) #从第19号索引开始(包含19,不包含20)

index 与 find 功能相同 find找不到返回-1,index找不到数据直接报错

2.8 startswith 判断是否以某个字符或字符串为开头

strvar = "oh Father this is my Favorite girl"
res  =strvar.startswith("1232oh")
res  =strvar.startswith("is",15) #表示从第15号索引开始是不是以is开头
print(res)

2.9 endswith 判断是否以某个字符或字符串结尾

strvar = "oh Father this is my Favorite girl"
res = strvar.endswith("girl")
# this
res = strvar.endswith("is",10,14)
print(res)

2.10 isalpha 判断字符串是否由字母和文字组成

strvar = "sdfsdfs你好"
res = strvar.isalpha()
print(res)

2.11 split 按某字符将字符串分割成列表(默认字符是空格)

返回的是一个列表
split 从左向右分割
split(按照什么分割的字符,可选择分割几次)

strvar = "you can you up no can no bb"
res = strvar.split()
print(res)

运行结果
image.png

指定分隔符

strvar = "you,can,you,up,no,can,no,bb"
res = strvar.split(",")

运行结果
image.png

指定分割次数

strvar = "you,can,you,up,no,can,no,bb"
res = strvar.split(",",4) # 可以选择分割的次数.
print(res)

运行结果
image.png

2.12 rsplit 从右向左分割,用法和split一样.

strvar = "you-can-you-up-no-can-no  bb"
res = strvar.rsplit("-",2)
print(res)

运行结果
image.png

2.13 join 按某字符将列表拼接成字符串(容器类型都可)

字符.join(容器类型数据)

lst = ['you', 'can', 'you', 'up', 'no', 'can', 'no', 'bb']
res = '&'.join(lst)
print(res)

运行结果
image.png

2.14 center 填充字符串,原字符居中 (默认填充空格)

strvar = "你号啊"
res = strvar.center(5)
print(res)
字符串 5 :填充的符号加上原字符 一共长度是5

运行结果
image.png

2.15 strip 默认去掉首尾两边的空白符

strvar = "               123             "
res = strvar.strip()
print(res)

image.png

2.16 replace()

功能:   把字符串的旧字符换成新字符
格式:   字符串.replace('旧字符','新字符'[, 限制替换的次数])
返回值: 替换之后的字符串

示例

strvar = "可爱的小狼狗喜欢吃肉,有没有,有没有,还有没有"
res = strvar.replace("有没有","真没有")
print(res)

image.png
指定替换次数

strvar = "可爱的小狼狗喜欢吃肉,有没有,有没有,还有没有"
res = strvar.replace("有没有","真没有",2)
print(res)

image.png

标签:函数,res,截取,print,索引,字符串,操作,strvar
From: https://www.cnblogs.com/yufc/p/17385645.html

相关文章

  • pycharm-自动生成函数注释
    pycharm添加自动注释设置方法:File》Settings》Tools 设置完成后,可直接在func函数下面输入三个单引号/双引号,换行就自动生成注释了......
  • 统计类内成员函数调用次数(mutable 的一种用法)
    #include<iostream>classStudent{public:Student(conststd::string&name_,unsignedage_);~Student(){}voidoutput()const{std::cout<<this->name<<""<<this->age<<std::en......
  • 基础-字符串驻留池
    字符串驻留池(stringinternpool)是指,对于某些编程语言,相同的字符串字面值(即具有相同文本内容的字符串)在程序运行时只会被在内存中存储一份,即只保存一个字符串实例。这样做可以减少内存占用,并提高程序执行的效率。在Java中,字符串驻留池是一个存储字符串的缓存,它存储在运行时常量......
  • MySQL之json数据操作
    来源于:转载于:https://blog.csdn.net/asd529735325/article/details/107205214/目录1MySQL之JSON数据1.1建表添加数据1.2基础查询操作1.2.1一般json查询1.2.2多个条件查询1.2.3json中多个字段关系查询1.2.4关联表查询1.3JSON函数操作1.3.1官方json函数1......
  • 关于反三角函数及其导数
     反三角函数是基本初等函数的重要组成部分,但似乎又是许多人常问的主体之一。为了方便理解和查询,本文总结了以下内容:常见的六种三角函数对应的反三角函数的定义、定义域、值域,并给出对应三角形图示汇总、对应图象汇总利用反函数求导法则完成了上述所有反三角函数的导数公式的......
  • 【JUC】原子操作
     juc包下的原子类针对基础类型地原子性读写而设计的原子类:AtomicBooleanAtomicIntegerAtomicIntegerArrayAtomicIntegerFieldUpdater<T>AtomicLongAtomicLongArrayAtomicLongFieldUpdater<T>针对引用类型地原子性读写而设计的原子类:......
  • python操作redis集群
    1基础环境分析redis版本:redis-5.0.14 2脚本示例说明:向redis集群里面写入10000000条数据,再查询下这些数据#!/usr/bin/python3importrandomimportstringimporthashlibfromredisclusterimportRedisClusterimportdatetime"""使用redis的方式向redis集群中写入......
  • 【bat】bat如何删除某个目录下文件名包含abc字符串的文件
    【1】需求有10000多个文件,分布在一个大文件夹下的众多子目录,要删除文件名中包含指定字符集的文件。如下图:我要删除test目录下包含所有子文件夹的所有 文件名中带有s1/s2/s3的文件。这个需要匹配的字符串已经写到config.txt文件中【2】bat代码之前想用%er......
  • jquery select 操作
    //jQuery获取Select选择的Text和Value:varcheckText=jQuery("#select_id").find("option:selected").text();//获取Select选择的TextvarcheckValue=jQuery("#select_id").val();//获取Select选择的optionValuevarcheckIndex=jQuery("#sel......
  • SAP HANA 基本操作
    su-hdbadm--创建租户数据库hdbsql-uSYSTEM-p'P@ssw0rd'-i00-dSYSTEMDB'CREATEDATABASETESTSYSTEMUSERPASSWORD"P@ssw0rd"'--备份系统库以及租户库hdbsql-dSYSTEMDB-uSYSTEM-p'P@ssw0rd'-i00"BACKUPDATAUSINGFIL......