python之字符串

Posted zz洲神在此

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python之字符串相关的知识,希望对你有一定的参考价值。

字符串

何为字符串:用于存储一些少量的数据,在Pyhton当中只要是用引号引起来的就是字符串,字符串中的每个单独的字母汉字都是一个元素.(python的基础数据类型之一)

字符串乘

字符串的乘法就是将多个字符串拼接到一起,乘法的规则:只能是字符串和数字相乘

a = \'洲神\'
print(a * 5)
结果:
洲神洲神洲神洲神洲神

索引(下标)

大家在上学每个人都有个学号,其实学校就是为了防止重名找错人,学号就是一种能够保证唯一且准确的手段,这种手段在计算机中存在,这种手段叫做索引,也有人称之为下标.

图上就是对"meet"字符串进行索引排号,其实图上有一点大家不难看出m对应的是数字0,计算机中数数确实要从0开始数

name = \'meet\'
# 索引  0123
print(name[0])
结果:
m

细心的同学们会发现这[ ]是干啥的,这个是一个查找,里边放这索引的编号,例如是1 结果就是e,字符串的长度决定索引最大值,不能超过字符串的长度,就像上例,不能输出索引4及以上

name = \'meet\'
# 索引 -4-3-2-1
print(name[-1])
结果:
t

索引也可以倒序排,从-1开始,依旧是不能超过字符串的长度!

切片

切片又是什么呢?我们先来看一个示例:

name = \'meet\'
# 索引  0123
print(name[0:3])
结果:
mee

[第一个位置是开始:第二个位置是终止]中间必须使用冒号,这样的写法就是从索引0开始获取到索引3结束
估计同学们在想为什么不是meet四个元素,这是因为切片,顾头不顾腚,意思是开始索引没有问题,但是结尾索引要-1,所以只取到了三位,mee
次当看到切片中终止位置的时候把这个数减一就ok啦

字符串的常用方法

1.全部大写

name ="zhoushen"
new_name = name.upper()
print(new_name)
结果:"ZHOUSHEN"  
说明:把这个字符串全部变成大写

2.全部小写

name ="ZHOuSHen"
new_name = name.lower()
print(new_name)
结果:"zhoushen"
说明:将字符串全部小写,如果字符串有小写则不会改变

3.以什么开头

name = \'alex\'
new_name = name.startswith(\'a\')   返回True或Flase
if new_name:
    print(\'是以a开头\')      # 判断这是不是字符串是不是以a开头的

name = \'alex\'
new_name = name.startswith(\'e\',2,5)   返回True或Flase
if new_name:
    print(\'是以e开头\')      # 我们可以指定从哪个位置开始哪个位置结束

4.以什么结尾

name = \'alex\'
new_name = name.endswith(\'x\')    返回True或Flase
if new_name:
    print(\'是以x结尾\')     # 判断这是不是字符串是不是以x结尾的

name = \'alex\'
new_name = name.endswith(\'x\',2,5)   返回True或Flase
if new_name:
    print(\'是以x结尾\')     # 判断这是不是字符串是不是以x结尾的

5.统计出现的次数

name = \'zhoushen\'
new_name = name.count(\'h\')
print(new_name)   #结果为 2
说明:统计name这个字符串中a出现的次数

6.字符串替换

name = \'zhoushenzhoushen\'
new_name = name.replace(\'shen\',\'ge\',1)
print(new_name)
结果:zhougezhoushen  
说明:替换字符串中的内容以外 我们可以指定要替换的次数,如果不指定次数会全部替换

7.去除头尾两边的空格,换行符/制表符

name = \' zhoushen   \'
new_name = name.strip()
print(new_name)
结果 "zhoushen"

8.分割

name = \'zhoushenszzz\'
new_name = name.split("s",1)
print(new_name)     结果:[\'zhou\', \'henszzz\']   
new_name = name.split("s",1)
print(new_name)     结果:[\'zhou\', \'hen\', \'zzz\']
说明:以"s"分隔,后面的1是次数,如果不写次数,会以s分隔所有! 列表这种数据类型后续更新!!

字符串的is系列

1.判断是不是十进制的数字,返回的是布尔值

name = \'1234\'
new_name = name.isdecimal()
print(new_name)
结果:True

2.判断是不是数字和字母以及中文,返回的是布尔值

name = \'zhoushen\'
new_name = name.isalnum()
print(new_name)
结果:True

3.是不是字母和汉字,返回的是布尔值

name = \'zhoushen\'
new_name = name.isalpha()
print(new_name)
结果:True

以上是关于python之字符串的主要内容,如果未能解决你的问题,请参考以下文章

Python之如何优雅的重试

Python学习笔记之正则表达式

48个值得掌握的JavaScript代码片段(上)

Python代码阅读(第25篇):将多行字符串拆分成列表

python之模块和包

python之模块和包