python中字符串切片与字符串函数

1.字符串切片

切片格式:[起始索引:结束索引:[步长]]

注意:

  1. 步长可以省略,默认为1
  2. 包括开头不包括结尾

正向索引与逆向索引

#正向索引与逆向索引
"hello world"
h   e   l   l  o     w  o  r  l  d
0   1   2   3  4  5  6  7  8  9  10
-11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1
#逆向索引
s="hello world"
print(s[-1:-8:-1])
print(s[-1::-1])
print(s[:-8:-2])

正向索引与结论

s="hello world"
#全部省略即全部截取
print(s[:])
print(s[::])
#步长为1,起始索引到结束索引挨个截取,但是不包括结束索引
print(s[0:8:1])
#起始索引到结束索引挨个截取,但是不包括结束索引
print(s[0:8])
#结论:步长为1跟没有步长的效果是一样的
#步长为2,起始索引到结束索引隔一个字符取一个字符,但是不包括结束索引
print(s[0:8:2)
#起始索引到结束索引隔一个字符取一个字符,但是不包括结束索引
print(s[0:8])
#结论:步长非1的结果跟没有步长的结果是不一样的#运行结果:
#hello world
#hello world
#hello wo
#hello wo
#********************
#hlow
#hello wo
********************

逆向索引跟正向是大同小异的就不写结论了!!!

#逆向索引
s="hello world"
print(s[-1:-8:-1])
print("*"*20)
print(s[-1::-1])
print(s[:-8:-2])
print("*"*20)#运行结果:
#dlrow o
#********************
#dlrow olleh
#drwo
#********************

综合:

s="hello world"
print(s[-1:-8])
print(s[-2:-8:3])
print(s[-2:2:2])
#运行结果:

可以看到什么结果都没有为什么呢?
解释:
当切片步数为正时只能左边的数字小于右边的数字并在s的范围内有输出,如果不符合,输出为空或只有部分输出
当切片步数为负时只能左边的数字大于右边的数字并在s的范围内有输出,如果不符合,输出为空或只有部分输出。
字符串的查找

方法 功能
find 查找,返回从左第一个指定字符的索引,找不到返回-1
rfind 查找,返回从右第一个指定字符的索引,找不到返回-1
index 查找,返回从左第一个指定字符的索引,找不到报错
rindex 查找,返回从右第一个指定字符的索引,找不到报错
count 计数功能,返回自定字符在字符串当中的个数

代码示例:

str="--python--"
print(str.find("查找"))print(str.rfind("p"))print(str.index("p"))print(str.rindex("p"))print(str.count("-"))
#运行结果:
#-1
#2
#2
#2
#4

字符串的拆分

方法 描述
partition 把mystr以str分割成三部分,str前,str自身和str后
splitlines 按照行分隔,返回一个包含各行作为元素的列表,按照换行符分割
split 按照指定的内容进行分割,maxsplit:默认将指定的所有的内容进行分割, 可以指定 maxsplit的值,如果maxsplit=1 表示只按照第一个指定内容进行分割, 后面剩余的不分割。
str="this\nis\ngril"print(str.splitlines())
print(type(str.splitlines()))print(str.split("/n"))
print(type(str.split("/n")))print(str.partition("/n"))
print(type(str.partition("/n")))
#运行结果
#['this', 'is', 'gril']
#<class 'list'>
#['this\nis\ngril']
#<class 'list'>
#('this\nis\ngril', '', '')
#<class 'tuple'>

字符串的替换

方法 描述
replace 从左到右替换指定的元素,可以指定替换的个数,默认全部替换
translate 按照对应关系来替换内容 from string import maketrans
str="this\nis\ngril"
print(str.replace("\n","-"))#运行结果
#this-is-gril

字符串的修饰

方法 描述
center 让字符串在指定的长度居中,如果不能居中左短右长,可以指定填充内容, 默认以空格填充
ljust 让字符串在指定的长度左齐,可以指定填充内容,默认以空格填充
rjust v
zfill 将字符串填充到指定的长度,不足地方用0从左开始补充
format 按照顺序,将后面的参数传递给前面的大括号
strip 默认去除两边的空格,去除内容可以指定
rstrip 默认去除右边的空格,去除内容可以指定
lstrip 默认去除左边的空格,去除内容可以指定
str="python"
print(str.center(20,"*"))print(str.ljust(20,"*"))print(str.rjust(20,"*"))print(str.zfill(20))str="  python  "
print(str.strip())print(str.rstrip())print(str.lstrip())#运行结果:
#*******python*******
#python**************
#**************python
#00000000000000python
#python
#  python
#python

字符串格式化-百分号

格式 描述
%% %s 字
%s 字符串
%d 有符号整数(十进制)
%f 浮点数字(用小数点符号)

这里就随意写几句格式化的不同姿势把!

print("我从{}来,我到{}去,我是{}".format("天堂","地狱","小丑"))
print("我从{0}来,我到{1}去,我是{2}".format("天堂","地狱","小丑"))
print("我从{heaven}来,我到{hell}去,我是{clown}".format(heaven="天堂",hell="地狱",clown="小丑"))
print("我从%s来,我到%s去,我是%s"%("天堂","地狱","小丑"))
print("我从%(heaven)s来,我到%(hell)s去,我是%(clown)s"%{"heaven":"天堂","hell":"地狱","clown":"小丑"})
#运行结果:
#我从天堂来,我到地狱去,我是小丑
#我从天堂来,我到地狱去,我是小丑
#我从天堂来,我到地狱去,我是小丑
#我从天堂来,我到地狱去,我是小丑
#我从天堂来,我到地狱去,我是小丑

字符串变形

方法 描述
upper 将字符串当中所有的字母转换为大写
lower 将字符串当中所有的字母转换为小写
swapcase 将字符串当中所有的字母大小写互换
title 将字串符当中的单词首字母大写,单词以非字母划分
capitalize 只有字符串的首字母大写
expandtabs 把字符串中的 tab 符号(’\t’)转为空格,tab 符号(’\t’)默认的空格数是 8
str="   python  "
print(str.upper())print(str.lower())print(str.swapcase())print(str.title())print(str.capitalize())print(str.expandtabs())
#运行结果
#PYTHON
#   python
#   PYTHON
#   Python
#   python
#   python

字符串判断

方法 描述
isalnum 判断字符串是否完全由字母或数字组成
isalpha 判断字符串是否完全由字母组成
isdigit 判断字符串是否完全由数字组成
isdigit 判断字符串当中的字母是否完全是大写
islower 判断字符串当中的字母是否完全是小写
istitle 判断字符串是否满足title格式
isspace 判断字符串是否完全由空格组成
startswith 判断字符串的开头字符,也可以截取判断
endswith 判断字符串的结尾字符,也可以截取判断
split 判断字符串的分隔符切片
str="python"
print(str.isdigit())print(str.isalpha())print(str.isalnum())print(str.isupper())print(str.islower())print(str.istitle())print(str.isspace())print(str.startswith("p"))print(str.endswith("n"))
#运行结果
#False
#True
#True
#False
#True
#False
#False
#True
#True

就到这把!!!

来一波,推送吧!
群号:781121386
群名:人生苦短,我学编程
欢迎大家加入我们,一起交流技术!!!

python字符串及其函数相关推荐

  1. Python字符串处理函数

    Python字符串处理函数简明 返回被去除指定字符的字符串 默认去除空白字符 删除首尾字符:str.strip([char]) 删除首字符:str.lstrip([char]) 删除尾字符str.st ...

  2. python字符串find函数-python字符串查找函数的用法详解

    python字符串查找函数的使用 打开Python开发工具IDLE,新建"findstr.py'文件,并写代码如下: s ='/ab/bx,.s' print (s.find('/x')) ...

  3. python字符串find函数-Python内置的字符串处理函数整理

    str='python String function' 生成字符串变量str='python String function' 字符串长度获取:len(str) 例:print '%s length ...

  4. python字符串find函数-Python字符串的方法,查找和替换

    Python数字 整型 int 如:1 4 8 浮点型 float 如:1.0 3.6 78.9 长整型 long 如:1L 37565846588L(在一个整数后面加上L就是长整型,理论上长整型的长 ...

  5. python字符串find函数-python常见字符串处理函数与用法汇总

    本文实例讲述了python常见字符串处理函数与用法.分享给大家供大家参考,具体如下: 1.find 作用:在一个较长字符串中查找子串.返回子串所在位置的最左端索引,如果没有找到则返回-1.如果指定 b ...

  6. python字符串title函数_python字符串内建函数-capitalize、title、upper

    python字符串内建函数-capitalize.title.upper 6.capitalize 函数功能:该函数用于将字符串的第一个字母变成大写,其他字母变成小写. 返回值:该函数的返回值是一个首 ...

  7. python字符串处理函数总结

    现将相关字符串的函数总结下来如下: 在历史上string类在python中经历了一段轮回的历史.在最开始的时候,python有一个专门的string的module,要使用string的方法要先impo ...

  8. python字符串split()函数

    python字符串函数用法大全链接 split()函数 描述:拆分字符串.通过指定分隔符sep对字符串进行分割,并返回分割后的字符串列表 语法: str.split(sep=None, maxspli ...

  9. python字符串isalnum()函数

    python字符串函数用法大全链接 isalnum()函数 描述:检测字符串是否由字母和数字组成. 语法:str.isalnum()  -> bool  返回值为布尔类型(True,False) ...

  10. [转载] python字符串处理函数汇总

    参考链接: Python字符串| max 1.find  作用:在一个较长字符串中查找子串.返回子串所在位置的最左端索引,如果没有找到则返回-1.如果指定 beg(开始) 和 end(结束) 范围,则 ...

最新文章

  1. BZOJ2208:[JSOI2010]连通数——题解
  2. Net.Core导入EXCel文件里的数据
  3. 重要更新,Office Add-in将全面支持Webview2
  4. oracle utf8 varchar,Oracle中字符集的类型决定varchar2的字符长度
  5. document.addeventlistener方法不执行_JUnit 5 测试方法的执行优先级
  6. aspx 修改了样式但是在点击按钮后被刷新_geoserver地图发布服务教程---4.使用udig获取sld样式...
  7. [蓝桥杯]试题 基础练习 芯片测试
  8. 当程序员是我最大的遗憾
  9. 编程语言的通用概念[共同特征]
  10. 机器学习与深度学习视频讲解
  11. 最实用的Linux命令大全
  12. Ubuntu1604上使用Qt远程调试arm开发板
  13. QT5.1标准对话框按钮显示英文问题解决办法
  14. 【牛腩新闻】——首页图片加载不出来
  15. r5 5500参数 r5 5500有核显吗 锐龙r5 5500相当于i几
  16. 商务工作人员用什么邮箱,超好用的商务邮箱申请攻略!
  17. 硬盘突然变raw格式_硬盘突然变为RAW格式解决办法
  18. 300个韩国网站欣赏
  19. 2018.06.27Firing(最大权闭合子图)
  20. 秒杀系统防止超卖解决方案

热门文章

  1. 第19章、 认识与分析登录档
  2. Web Cache原理,你真的造吗?
  3. 高等数学 上册 第四章 不定积分
  4. linux系统man手册,Linux中man手册的使用
  5. unity3d导入xlua
  6. [附源码]java毕业设计中小企业人事管理系统
  7. 【仿穷游项目】无缝连续滚动特效
  8. 基于麻雀算法改进的无线传感器网络Dv-hop定位算法 - 附代码
  9. CentOS系统下使用vsftpd成功搭建了FTP服务器,
  10. Java 的业务逻辑验证框架 fluent-validator