最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

Python字符串

来源:博客园

1.replace替换

#replace实现字符串替换a="sjbfnjajjkdgbnv"a=a.replace("f","里")print(a)out:sjb里njajjkdgbnv
  • 整个过程,实际是创建了新的字符串对象,并指向了变量a,并非改变了以前的字符串

2.split分割和join合并

  • split基于指定分隔符将字符串分割为多个子字符串(存储到列表里),若不指定分隔符,则默认使用空白符
#split分割a="it is a cute cat"print(a.split())print(a.split("is"))out:["it", "is", "a", "cute", "cat"]["it ", " a cute cat"
  • join作用和split作用相反,将一系列子字符串连接起来
#join合并a=["y","yx","yxz"]print("*".join(a))out:y*yx*yxz
  • 使用‘+’字符串拼接符,会生成新的字符串对象,join函数在拼接前会计算所有字符串的长度,然后注意拷贝,仅新建一次对

3.字符串驻留机制

字符串驻留:仅保存一份相同且不可变的字符串的方法,不同的值被放在字符串驻留池中,对于符合标识符规则的字符串(仅包含下划线、字母、数字)会启用字符串驻留机制

4.字符串常用方法

常用查找方法

a="我是一名大学生,希望在毕业前能够熟练使用python,这并不是一个伟大的梦想,我想我可以实现"print(len(a))print(a.startswith("我是"))#以指定字符串开头print(a.endswith("熟练使用python"))print(a.find("一"))#第一次出现指定字符串的位置print(a.rfind("一"))#最后一次出现指定字符串的位置print(a.count("大"))#指定字符出现了几次print(a.isalnum())#所有字符全是字母或数字

去除首尾信息


(资料图片)

print("*s*x*t*".strip("*"))#去除首尾指定字符print("*s*x*t*".lstrip("*"))#去除开头指定字符print("*s*x*t*".rstrip("*"))#去除尾部指定字符print("  s*x*t  ".strip())#去除首尾空格

大小写转换

a="xiaoming love studying,LOVE PYTHON"print(a.capitalize())#产生新的字符串,首字母大写print(a.title())#产生新的字符串,每个单词都首字母大写print(a.upper())#产生新的字符串,所有字符全部转成大写print(a.lower())#产生新的字符串,所有字符全部转成小写print(a.swapcase())#产生新的字符串,所有字符大小写转换out:Xiaoming love studying,love pythonXiaoming Love Studying,Love PythonXIAOMING LOVE STUDYING,LOVE PYTHONxiaoming love studying,love pythonXIAOMING LOVE STUDYING,love python

格式排版

a="pyt"print(a.center(10,"*"))#"pyt’居中,剩下的‘*’号填充print(a.center(10))#"pyt"居中,剩下的空格填充print(a.ljust(10,"*"))#‘pyt"左对齐,剩下的’*"号填充out:***pyt****   pyt    pyt*******

其他方法

isalnum()#是否字母或数字isalpha()#检测字符串是否只有字母组成(含汉字)isdigit()#检测字符串是否只有数字组成isspace()#检测是否为空白键isupper()#是否为大写字母islower()#是否为小写字母

5.字符串格式化

format()基本用法

通过{索引}/{参数名}直接映射参数值,实现对字符串的格式化

a="我的名字是:{0},年龄是{1}"print(a.format("小明",18))b="我的名字是{name},年龄是{age}"print(b.format(age=20,name="小明"))out:我的名字是:小明,年龄是18我的名字是小明,年龄是20

填充和对齐

^、<、>分别是居中、左对齐、右对齐,后面带宽度

:后面带填充的字符,只能是一个字符,不指定默认用空格填充

print("我是{name},我的年龄是{age:!^8}".format(name="小明",age=18))out:我是小明,我的年龄是!!!18!!!

数字格式化

浮点数通过f,整数通过d进行需要的格式化

a="{0}的值是{1:.2f}"print(a.format("圆周率",3.1415926))out:圆周率的值是3.14

6.可变字符串

Python中,字符串属于不可变对象,不支持原地修改,若要修改,可使用io.StringIO对象或array模块

import ios="hello World"sio=io.StringIO(s)#可变的对象print(sio.seek(1))sio.write("v")print(sio.getvalue())out:1hvllo World

关键词: 不是一个 字符串连接