首页 > 其他分享 >字符串的相关操作

字符串的相关操作

时间:2023-11-13 19:58:20浏览次数:37  
标签:alex s13 print ret sylar 相关 字符串 操作

字符串

  切记,字符串是不可变对象,所以任何操作对原字符串不会有任何影响。

一,字符串的大小写

 1 s="jikn"
 2 s.capitalize()
 3 print(s)  # 输出发现并没有任何的变化. 因为这⾥的字符串本身是不会发⽣改变的. 需要我们重新获取
 4 
 5 s1=s.capitalize()  #将首字母大写,感觉有点鸡肋
 6 print(s1)
 7 
 8 s2=s.lower()
 9 print(s2) #全部转化为小写
10 
11 s3= s.swapcase() # ⼤⼩写互相转换
12 print(s3)
13 # 不常⽤
14 s4= s.casefold() # 转换成⼩写, 和lower的区别: lower()对某些字符⽀持不够好.casefold()对所有字⺟都有效. ⽐如东欧的⼀些字⺟
15 print(s4)
16 s5="БBß" # 俄美德三种语言的B
17 print(s5)
18 print(s5.lower())
19 print(s5.casefold())
20 # 每个被特殊字符隔开的字⺟⾸字⺟⼤写
21 s6= "alex eggon,taibai*yinwang_麻花藤"
22 
23 s7=s6.title() #将句子中单词首字母都大写。
24 print(s7)
25 # 中⽂也算是特殊字符
26 s4 = "alex⽼男孩wusir" # Alex⽼男孩Wusir
27 print(s4.title())

二,字符串的切来切去 

 1 # 居中
 2 s1 = "周杰伦"
 3 ret = s1.center(10, "*") # 拉⻓成10, 把原字符串放中间.其余位置补*,*号也可以用空格
 4 print(ret)
 5 
 6 # 去空格
 7 s2 = " alex wusir haha "
 8 ret = s2.strip() # 去掉左右两端的空格
 9 print(ret)
10 ret = s2.lstrip() # 去掉左边空格
11 print(ret)
12 ret = s2.rstrip() # 去掉右边空格
13 print(ret)
14 
15 # 应⽤, 模拟⽤户登录. 忽略⽤户输⼊的空格
16 username = input("请输⼊⽤户名:").strip()
17 password = input("请输⼊密码: ").strip()
18 if username == 'alex' and password == '123':
19  print("登录成功")
20 else:
21  print("登录失败")
22  
23 s3= "abcdefgabc"
24 print(s3.strip("abc")) # defg 也可以指定去掉的元素,可以用空的字符串替代,达到删除的效果

三,字符串替换与切割

 1 # 字符串替换
 2 s1= "sylar_alex_taibai_wusir_eggon"
 3 ret = s1.replace('alex', '⾦⻆⼤王') # 把alex替换成⾦⻆⼤王
 4 print(s1) # sylar_alex_taibai_wusir_eggon 切记, 字符串是不可变对象. 所有操作都是产⽣新字符串返回
 5 print(ret) # sylar_⾦⻆⼤王_taibai_wusir_eggon
 6 ret = s1.replace('i', 'SB', 2) # 把i替换成SB, 替换2个
 7 print(ret) # sylar_alex_taSBbaSB_wusir_eggon
 8 
 9 # 字符串切割
10 s2= "alex,wusir,sylar,taibai,eggon"
11 lst =s2.split(",") # 字符串切割, 根据,进⾏切割
12 print(lst)
13 
14 s="今天天气真好"
15 s2=s.split("今天天气真好呀呀呀呀") #因为找不到这个字符串,而不进行任何切割

四,格式化输出

1 # 格式化输出
2 s12 = "我叫%s, 今年%d岁了, 我喜欢%s" % ('sylar', 18, '周杰伦') # 之前的写法

格式为%[(name)][flags][width].[precision]typecode

[(name)]可选,用于选择指定的key

[flag]可选,可供选择的值为:

+,右对齐,正数前加正号,负数前加负号

-,左对齐,正数前无符号,负数前加负号

空格,右对齐,正数前加空格,负数前加负号

0,右对齐,正数前无符号,负数前加负号,用0填充空白

[width]可选,占有宽度

.[precision]可选,小数点后保留两位

typecode,必选,有以下三种:

  • s,将对象变为字符串类型
  • d,将对象转化为整数
  • f,将对象变为浮数,默认保留六位小数点后面
3 print(s12)
4 s12 = "我叫{}, 今年{}岁了, 我喜欢{}".format("周杰伦", 28, "周润发") # 按位置格式化
5 print(s12)
6 s12 = "我叫{0}, 今年{2}岁了, 我喜欢{1}".format("周杰伦", "周润发", 28) # 指定位置
7 print(s12)
8 s12 = "我叫{name}, 今年{age}岁了, 我喜欢{singer}".format(name="周杰伦", singer="周润发", age=28) # 指定关键字
9 print(s12)

五,查找

 1  
 2 s13 = "我叫sylar, 我喜欢python, java, c等编程语⾔."
 3 ret1 = s13.startswith("sylar") # 判断是否以sylar开头
 4 print(ret1)
 5 ret2 = s13.startswith("我叫sylar") # 判断是否以我叫sylar开头
 6 print(ret2)
 7 ret3 = s13.endswith("语⾔") # 是否以'语⾔'结尾
 8 print(ret3)
 9 ret4 = s13.endswith("语⾔.") # 是否以'语⾔.'结尾
10 print(ret4)
11 ret7 = s13.count("a") # 查找"a"出现的次数
12 print(ret7)
13 ret5 = s13.find("sylar") # 查找'sylar'出现的位置
14 print(ret5)
15 ret6 = s13.find("tory") # 查找'tory'的位置, 如果没有返回-1
16 print(ret6)
17 ret7 = s13.find("a", 8, 22) # 切⽚找
18 print(ret7)
19 ret8 = s13.index("sylar") # 求索引位置. 注意. 如果找不到索引. 程序会报错
20 print(ret8)

六,条件判断

 1 # 条件判断
 2 s14 = "123.16"
 3 
 4 # 是否由字⺟和数字组成
 5 print(s14.isalnum())
 6 
 7 # 是否由字⺟组成
 8 print(s14.isalpha())
 9 
10 # 是否由数字组成, 不包括⼩数点
11 print(s14.isdigit())
12 print(s14.isdecimal())
13 print(s14.isnumeric()) # 这个⽐较⽜B. 中⽂都识别.

七,迭代(就是遍历)

for 变量 in 可迭代对象: in有两种⽤法: 1. 在for中. 是把每⼀个元素获取到赋值给前⾯的变量. 2. 不在for中. 判断xxx是否出现在str中.(不可以在数字中迭代)  

标签:alex,s13,print,ret,sylar,相关,字符串,操作
From: https://www.cnblogs.com/zuishaui/p/17829983.html

相关文章

  • .NET之默认依赖注入 注入方式(构造函数注入、FromServices操作注入)和 获取服务(Contr
    .NET之默认依赖注入注入方式(构造函数注入、FromServices操作注入)和获取服务(Controller构造函数中注入获取、IServiceProvider获取、statrup中获取服务)介绍领券https://www.cps3.cn/不要依赖于具体的实现,应该依赖于抽象,高层模块不应该依赖于底层模块,二者应该依赖于抽......
  • mysql函数(二)之常见的字符串函数
    mysql常见字符串函数MySQL提供了许多用于处理字符串的函数,以下是一些常见的字符串函数及其作用:一、常用字符串函数CHAR_LENGTH(s);返回字符串s的字符数SELECTCHAR_LENGTH("abcdefg");->7//返回字符串abcdefg的字符数 CONCAT(s1,s2…sn);字符串s1,s2等多个字符串......
  • mysql函数(二)之常见字符串函数
    1、CONCAT(str1,str2,…)函数CONCAT()将多个字符串连接成一个字符串,如果该函数中的任何参数为NULL,返回结果为NULL,使用示例如下: 2、SUBSTRING(str,pos,len)函数SUBSTRING()从字符串中提取子字符串,起始位置为pos,长度为len,使用示例如下: 3、REPLACE(str,from_str,to_str......
  • 如何下载全国水系、铁路、土地、交通设施和运输相关数据?
    ​    通过以下方法可以将全国水系、铁路、土地、交通设施和运输相关数据下载到本机。 方法/步骤下载GIS地图下载器http://www.geosaas.com/download/mapdownloader.exe,安装完成后桌面上出现”GIS地图下载器“图标。        2、双击桌面图标打开......
  • Linux信息系统相关命令
    查看进程及关闭进程命令1、通过ps命令查看mysql进程:ps -aux |grep mysql2、通过top命令查看当前系统中CPU占用前三的进程:top   按shift+p3、通过kill命令杀死进程:kill   -9    进程号 查看系统监听端口查端口、进程号:netstat -anptu | grep......
  • 传递参数或查询字符串给_Layout.cshtml中的顶部导航在ASP.NET中的实现方式
    在ASP.NET中,你可以通过多种方式将参数或查询字符串传递给_Layout.cshtml中的顶部导航。以下是两种常见的方法:1.使用ViewBag:ViewBag是ASP.NETMVC框架中的一个特性,它允许你在视图和控制器之间传递数据。你可以在控制器中设置ViewBag的值,然后在_Layout.cshtml中使用这些值。示例代码......
  • WordPress主题警告:侧边栏字符串偏移非法
    "侧边栏字符串偏移非法"警告通常是由于在WordPress主题的侧边栏中使用了不正确的代码或字符引起的。这可能是一个语法错误、字符编码问题或标签的闭合问题。要解决这个问题,可以尝试以下几个步骤:1.检查语法错误:打开你的WordPress主题文件,找到侧边栏的相关代码,并确保没有任何语法错......
  • 使用br工具备份到local的一些操作
    作者:hellogitee背景最近业务有一个需求,为防止机房级别的故障,想要在异地机房新搭建一套TiDB集群做备用,以便能随时进行机房级别的切换。这种需求当然是要用TiCDC来同步啦,第一要步就是通过br工具进行备份,然后再来同步。官方文档&FAQ备份存储的选择官方文档建议使用S3或者NFS,如果......
  • 问题解答:SAP OData V2 和 V4 里针对日期类型的字段进行过滤操作(filter)的正确语法试
    我的知识星球里有朋友咨询一个问题:我测试了一个S/4HANAcloud的purchaseorder的API,这个是ODATAV4格式的。在对CreationDate做filter后运行有报错Invalidparametertypeusedwithfunction'eq'.对datetime字段做filter,一直搞不清楚格式。请帮忙看一下。本文就安排这......
  • 素数相关
    筛法埃氏筛\(O(n\log\logn)\)inlinevoidprimes(intn){memset(v,0,sizeofv);for(inti=2;i<=n;i++){if(v[i])continue;p.push_back(i);for(intj=i;j<=n/i;j++)v[j*i]=1;}}线性筛\(O(n)\)inlinevoidxxs(i......