热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python基础知识之字符串

字符串凡是用引号(包括单引号、双引号、三引号引起来的都是字符串,其中单引号和双引号没有任何区别,可嵌套使用,多因好用于创建多行字符串,并且可赋值给变量)字符串的索引与切片a‘abc

字符串

凡是用引号(包括单引号、双引号、三引号引起来的都是字符串,其中单引号和双引号没有任何区别,可嵌套使用,多因好用于创建多行字符串,并且可赋值给变量)

字符串的索引与切片

a = ‘abcdefghijklmn’

print(a[2])

字符串的索引从0开始,所以输出c

print(a[0:3])

可以进行切片操作,就是通过索引(开始位置:结束位置:步长)截取字符串的一段,形成新的字符串(左闭合,不包括结束位置的字母)

print(a[4:])

可以省略右边,省略时截取后面全部

print(a[:7])

也可以省略左边,从开始截取

print(a[1:6:2])

可以添加步长

print(a[::4])

甚至开始位置和结束位置省略,只保留步长

print(a[-1:2:-2])

-1代表最后一个字符,字段为-2表示逆向以步长为2的方式截取 此时输出为“倒序”
字符串的常用方法:

x = ‘good JOB’

capitalize

print(x.capitalize())
输出Good job,首字母大写

swapcase

print(x.swapcase())
输出GOOD job,大小写翻转

title

print(x.title())
Good Job,每个单词的首字母大写

center

print(x.center(20,'&'))
&&&&&&good JOB&&&&&&,居中功能,前面参数定义输出总长度,后面参数定义以指定字符填补剩余部分

count

print(x.count('o'))
计算字符串中指定字符的个数,可以切片查询(x.count('o',0,5))
x = 'a\tbcwww\tabcdefghiaaww\twee'

expandtabs

print(x.expandtabs())
如果\t前面的字符长度不足8个,则补全8个,如果\t前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。

startswith

print(x.startswith('w',4,10))
判断是否是以'w'开头,可以添加切片参数(4,10)从索引4到10(包括4,但不包括10),结果返回布尔值

endswith

print(x.endswith('sss',15,-3))
判断是否以'sss'结尾,从索引15到-3(-3表示倒数第3个字符,不包括它本身)

find

print(x.find('u1gf',0,15))
查找字符串中是否含有字符"ugf",可以添加切片参数,返回起始索引位置,如果找不到则返回-1

index

print(x.index('hnd'))
返回找到的元素的索引,找不到则会报错
x = 'how,old,are,you'

split

print(x.split(','))
['how', 'old', 'are', 'you'],以指定字符分割字符串,结果返回一个列表,列表中不含指定的字符
print(x.split(',',1))
['how', 'old,are,you'],可以设定以第几个指定的字符来进行分割

format

x = '刘先生'
y = '李女士'
print('{}深爱着{}'.format(x,y))
刘先生深爱着李女士,字符串格式化,{}的数量要与format()括号中元素个数相同
print('{0}深爱着{1},但是{1}并不是真心爱{0}'.format(x,y))
刘先生深爱着李女士,但是李女士并不是真心爱刘先生,可以添加索引,此时{}个数不要求与format的参数个数相同
print('{name1}深爱着{name2},并且{name2}也深爱着{name1}'.format(name1='刘先生',name2='李女士'))
刘先生深爱着李女士,并且李女士也深爱着刘先生,可以用指定键值的方式来设定参数,要注意name1不加引号,刘先生必须加引号
print('%s深爱着%s'%('刘先生','李女士'))
刘先生深爱着李女士,也可以用%s....%(参数)的格式来格式化字符串

strip

print(x.strip())
去掉字符串两边的空格
print(x.strip('ab '))
去掉字符串两边的空格和字母a、b
print(x.lstrip('ab '))
去掉字符串左边的空格和字母a、b
print(x.rstrip('ab '))
去掉字符串右边的空格和字母a、b

replace

print(x.replace('我','刘先生'))
将字符串中的“我”字替换成“刘先生”
print(x.replace('我','刘先生',1))
只将第一个“我”字替换成刘先生

is*

print(x.isalnum())

检查字符串是否由字母或者数字组成,返回真或假,注意:全字母也返回真

print(x.isalpha())

检查字符串是否由字母组成

print(x.isdigit())

检查字符串是否由数字组成

推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 解决Cydia数据库错误:could not open file /var/lib/dpkg/status 的方法
    本文介绍了解决iOS系统中Cydia数据库错误的方法。通过使用苹果电脑上的Impactor工具和NewTerm软件,以及ifunbox工具和终端命令,可以解决该问题。具体步骤包括下载所需工具、连接手机到电脑、安装NewTerm、下载ifunbox并注册Dropbox账号、下载并解压lib.zip文件、将lib文件夹拖入Books文件夹中,并将lib文件夹拷贝到/var/目录下。以上方法适用于已经越狱且出现Cydia数据库错误的iPhone手机。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • 本文整理了Java中org.apache.solr.common.SolrDocument.setField()方法的一些代码示例,展示了SolrDocum ... [详细]
  • 本文总结了Java中日期格式化的常用方法,并给出了示例代码。通过使用SimpleDateFormat类和jstl fmt标签库,可以实现日期的格式化和显示。在页面中添加相应的标签库引用后,可以使用不同的日期格式化样式来显示当前年份和月份。该文提供了详细的代码示例和说明。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • 自动轮播,反转播放的ViewPagerAdapter的使用方法和效果展示
    本文介绍了如何使用自动轮播、反转播放的ViewPagerAdapter,并展示了其效果。该ViewPagerAdapter支持无限循环、触摸暂停、切换缩放等功能。同时提供了使用GIF.gif的示例和github地址。通过LoopFragmentPagerAdapter类的getActualCount、getActualItem和getActualPagerTitle方法可以实现自定义的循环效果和标题展示。 ... [详细]
  • 本文介绍了机器学习手册中关于日期和时区操作的重要性以及其在实际应用中的作用。文章以一个故事为背景,描述了学童们面对老先生的教导时的反应,以及上官如在这个过程中的表现。同时,文章也提到了顾慎为对上官如的恨意以及他们之间的矛盾源于早年的结局。最后,文章强调了日期和时区操作在机器学习中的重要性,并指出了其在实际应用中的作用和意义。 ... [详细]
  • WhenIusepythontoapplythepymysqlmoduletoaddafieldtoatableinthemysqldatabase,itdo ... [详细]
  • IjustinheritedsomewebpageswhichusesMooTools.IneverusedMooTools.NowIneedtoaddsomef ... [详细]
  • 【shell】网络处理:判断IP是否在网段、两个ip是否同网段、IP地址范围、网段包含关系
    本文介绍了使用shell脚本判断IP是否在同一网段、判断IP地址是否在某个范围内、计算IP地址范围、判断网段之间的包含关系的方法和原理。通过对IP和掩码进行与计算,可以判断两个IP是否在同一网段。同时,还提供了一段用于验证IP地址的正则表达式和判断特殊IP地址的方法。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
author-avatar
万梅同芳正当时
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有