前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python 字符串常用操作

python 字符串常用操作

作者头像
py3study
发布2018-08-02 16:02:47
7410
发布2018-08-02 16:02:47
举报
文章被收录于专栏:python3

字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。

首字母大写

代码语言:javascript
复制
name = "zhangbichen"
print(name.capitalize())

执行输出 Zhangbichen

统计关键字出现的次数

代码语言:javascript
复制
print(name.count("h"))

执行输出 2

居中显示

代码语言:javascript
复制
print(name.center(20,"-"))

表示总共要输出20个字符串,字符串居中显示,如果不够20个,用-补充。

执行输出:

----zhangbichen-----

判断以什么结尾

代码语言:javascript
复制
print(name.endswith("en"))

如果条件符合,返回True,否则返回false

执行输出 True

查找字符串的索引位置

代码语言:javascript
复制
print(name.find("gb"))

从左向右数,gb在第4个位置

执行输出 4

切片

字符串的切片方法和列表切片,方法是一样的

代码语言:javascript
复制
print(name[name.find("gb"):9])

执行输出 gbich

格式化

format针对变量进行赋值

代码语言:javascript
复制
name = "{user} is {year} years old this year"
print(name.format(user='zhangbichen',year=29))

执行输出

zhangbichen is 29 years old this year

format_map 可以传一个字典

代码语言:javascript
复制
name = "{user} is {year} years old this year"
print(name.format_map({'user':'zhangbichen','year':29}))

执行输出,同上

判断是否是阿拉伯数字加字母

如果还有其他字符,返回false

代码语言:javascript
复制
print('abc123'.isalnum())

执行输出 True

判断是否是纯英文字符

包含大写

代码语言:javascript
复制
print('abc123'.isalpha())

执行输出 False

判断是否是一个十进制数

代码语言:javascript
复制
print('abc123'.isdecimal())

执行输出 False

判断是否是一个整数,比较常用

代码语言:javascript
复制
print('123.3'.isdigit())

执行输出 False

判断是否是一个合法的标识符

合法的标识符相当于,一个合法的变量名

代码语言:javascript
复制
print('a 1A'.isidentifier())

执行输出 False

判断是否是一个小写字母

代码语言:javascript
复制
print('abc'.islower())

执行输出 True

判断是否是一个纯数字

不允许有点或者其他字符

代码语言:javascript
复制
print('333.33'.isnumeric())

执行输出 False

判断是否是一个空格

代码语言:javascript
复制
print('333.33'.isspace())

执行输出 False

判断是否是一个标题

代码语言:javascript
复制
print('My name is xubing'.istitle())

执行输出 False

istitle() 必须要求每个字母,首字母大写

代码语言:javascript
复制
print('My Name Is Xubing'.istitle())

执行输出 True

判断是否可以打印

代码语言:javascript
复制
print('My Name Is Xubing'.isprintable())

执行输出 True

一般的字符串,符号都可以打印。什么文件不能打印呢?比如linux的tty文件,它是linux的驱动文件,不能打印的。

判断是否是纯大写字母

代码语言:javascript
复制
print('My Name Is Xubing'.isupper())

执行输出 False

字符串拼接join(),这个方法比较常用

代码语言:javascript
复制
print('+'.join(['1','2','3']))

join可以将一个列表转换为字符串

执行输出 1+2+3

字符串填充,左对齐

代码语言:javascript
复制
name = "zhangbichen"
print(name.ljust(20,'*'))

执行输出 zhangbichen*********

字符串填充,右对齐

代码语言:javascript
复制
name = "zhangbichen"
print(name.rjust(20,'*'))

执行输出 *********zhangbichen

将大写字母变成小写

代码语言:javascript
复制
name = "ZhangBiChen"
print(name.lower())

执行输出 zhangbichen

将小写字母变成大写

代码语言:javascript
复制
name = "ZhangBiChen"
print(name.upper())

执行输出 ZHANGBICHEN

去除左边的空格和回车符

代码语言:javascript
复制
name = "\nZhangBiChen"
print(name.lstrip())

执行输出 ZhangBiChen

去除右边的空格和回车符

代码语言:javascript
复制
name = "\nZhangBiChen\n"
print(name.rstrip())

执行输出

ZhangBiChen

去除左右两边的空格和回车符,这个用的比较多

代码语言:javascript
复制
name = "   \nZhangBiChen\n   "
print(name.strip())

执行输出 ZhangBiChen

maketrans() 方法用于创建字符映射的转换表,对于接受两个参数的最简单的调用方式,第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标。

注:两个字符串的长度必须相同,为一一对应的关系。

代码语言:javascript
复制
p = str.maketrans("abcdef",'123456')
print("zhangbichen".translate(p))

由于a对应数字1,b对应数字2,后面的依此类推

执行输出 zh1ng2i3h5n

替换

代码语言:javascript
复制
name = "zhangbichen"
print(name.replace("h","H"))

将h替换成H

执行输出 zHangbicHen

如果不想全部替换,可以接第3个参数

代码语言:javascript
复制
name = "zhangbichen"
print(name.replace("h","H",1))

只替换一次

执行输出 zHangbichen

从左向右查找关键字最后一次出现的位置

代码语言:javascript
复制
name = "zhangbichen"
print(name.rfind("h"))

执行输出 8

按照分隔符拆分成列表,这个比较常用

默认是按照空格拆分

代码语言:javascript
复制
name = "zhang bi chen"
print(name.split())

执行输出

['zhang', 'bi', 'chen']

提取数字部分

代码语言:javascript
复制
name = "1+2+3+4"
print(name.split("+"))

执行输出

['1', '2', '3', '4']

按照换行符拆分字符串,这个比较常用

代码语言:javascript
复制
name = "1+2\n+3+4"
print(name.splitlines())

执行输出

['1+2', '+3+4']

swapcase() 方法用于对字符串的大小写字母进行转换。

代码语言:javascript
复制
name = "ZhangBiChen"
print(name.swapcase())

大写字母统一转换为小写

小写字母统一转换为大写

执行输出 zHANGbIcHEN

zfill() 方法返回指定长度的字符串,原字符串右对齐,前面填充0。

代码语言:javascript
复制
name = "ZhangBiChen"
print(name.zfill(20))

执行输出 000000000ZhangBiChen

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018/02/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档