python-字符串
Posted yanzi-anqi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-字符串相关的知识,希望对你有一定的参考价值。
字符串特征
1.字符串是由字符组成的
2.任意数据类型都可以转化成字符串
字符串取值
1.字符串取值是根据字符串的索引取值,索引从0开始,例如:
name = "learner"
print(name[2]) #结果为"a"
print(name[100]) #超出索引范围,报错,IndexError
字符串切片
1.字符串切片,取左边的元素不取右边的元素,例如:
name = "learner"
print(name[1:3]) #结果为"ea"
print(name[:3]) #前面省略不写,代表从0开始,结果为"lea"
print(name[1:]) #后面的省略不写,代表取到末尾,结果为"earner"
print(name[:]) #前后都省却不写,代表从头取到尾,相当于复制结果为"learner"
new_name = name
print(new_name) #也是字符串的复制
print(name[0:100]) #取出所有值,切片超出了范围也不会报错,非切片操作超出索引范围会报错
print(name[::-1]) #从右到左取值
print(name[::2]) #步长为2,取索引值为0,2,4,6……的值
PS:步长是负数,就是从右到左取值;步长为正数,就是从左到右取值,(末尾位置-开始位置与步长符号一致可以取值)
字符串格式化输出
1.第一种方式
name = "yanzi"
age = 18
print("""
name:%s
age:%d
"""%(name,age))
2.第二种方式
print("""name:{}
age:{}""".format(name,age))
字符串的内置函数
1.大小写互换
print(name.lower()) #小写
print(name.upper()) #大写
print(name.title()) #每个单词的首字母大写
print(name.capitalize()) #字符串最开始的单词大写
2.查找,find,index,count
print(name.find("y")) #查找y元素所在的索引值,没有找到就返回-1
print(name.find("y")) #查找y元素所在的索引值,没有找到就报错
print(name.count("y")) #统计y元素出现的次数
3.替换
print(name.replace("y","KKK")) #y是旧值,"KKK"是要替换的新值
4.join,字符串拼接
# 对列表进行操作
seq = ['hello', 'good', 'boy', 'doiido']
print(" ".join(seq)) #hello good boy doiido
# # 对字符串进行操作
seq2 = "hello good boy doiido"
print(":".join(seq2)) #h:e:l:l:o: :g:o:o:d: :b:o:y: :d:o:i:i:d:o
# # 对元组进行操作
seq3 = ('hello', 'good', 'boy', 'doiido')
print(":".join(seq3)) #hello:good:boy:doiido
# # 对字典进行操作,只对key进行连接
seq4 = {'hello': 1, 'good': 2, 'boy': 3, 'doiido': 4}
print(":".join(seq4)) #hello:good:boy:doiido
# # 合并目录
import os
print(os.path.join('/hello/', 'good/boy/', 'doiido')) #/hello/good/boy/doiido
5.strip 可以剔除
print(' a f '.strip()) #剔除左右两边的空格
print("ad".strip("a")) #指定字符进行剔除
6.split()分割字符串
print("i love you".split(" "))
print("i/love/you".split("/"))
7.isdigit 判断是不是一个正整数
print(name.isdigit()) #false
print("1.1".isdigit()) #false
print("-1".isdigit()) #false
print("222".isdigit()) #True
以上是关于python-字符串的主要内容,如果未能解决你的问题,请参考以下文章