python基础(序列)+字符串+格式化

序列

序列包含:字符串,元组,列表

可以进行的操作

在这里插入图片描述

索引和切片
s='hello'
print(s[0])#h
print(s[1:3])#el
print(s[:])#hello
print(s[-5:0])#hello
print(s[-5:-1])#hello

序列共同支持的函数

在这里插入图片描述

s1="abc"
s2="abd"
s3="das"
s4=[1,2,3]
print(len(s1))#  字符串长度
print(max(s1))#寻找序列中最大的
print(sorted(s3))#['a', 'd', 's']
print(sum(s4))# 求和

原始字符串

对于一些转义的字符串不进行转义,而是按照原来的样子打印出来

s1="asdd\nsad"
s2=r"asdd\nsad"
print(s1)
print(s2)

打印结果为:
asdd
sad
asdd\nsad
如果不在字符串前面加个r,就会对于转义字符进行转义,加了r就会按照原来的字符串进输出

格式化操作符

在这里插入图片描述
代码:

s='I Love %s'%"China"
print(s)#I Love China
s2="ASCII(%c)-67"%67 #  ASCII值为67的为C
print(s2)#ASCII(C)-67

格式化辅助符

在这里插入图片描述

s="%5.2f" %3.1415926
print(s)#3.14
s2="%#x"%45
print(s2)#0x2d

对于宽度m,和小数点后面的数的个数n可以用(*号)动态带入这两个变量,换句话说就是把m,n用星号表示,然后在后面加入即可,看代码体会一下,就知道了,很好理解

s="%.*f"%(5,2.3)
print(s)# 2.30000
s2="%*.*f"%(5,2,3.1415)
print(s2)#  3.14

字符串内建函数

(1)字符串去空格

s='   abc   '
s2='abca'
print(s.strip())#abc
print(s.rstrip())#   abc  去除右边的空格
print(s.lstrip())#abc     去除左边的空格
print(s2.strip('a'))#  去除a  bc
print(s2.lstrip('a'))#  去除左边的a  bca
print(s2.rstrip('a'))#  去除右边的a  abc

(2)连接字符串
join与+的区别
在这里插入图片描述

a="hello"
print(a.join('ab'))#ahellob
print(a)#hello
b="".join('ab')
print(b)# ab
str = "-";
seq = ("a", "b", "c")  #字符串序列
print (str.join(seq))#a-b-c
print("%s%s%s"%(a,'ab','cd'))# helloabcd

这里值得注意的是,使用%可以字典将非字符串的转换成字符串,而join则不会,会报错

在这里插入图片描述

(3)分割和组合

b="I Am a student"
print(b.split(" "))#['I', 'Am', 'a', 'student']
print(b.split(" ",2))#['I', 'Am', 'a student']
print(b.rsplit(" ",2))#['I Am', 'a', 'student']

(3)查询

b="I Am a student"
print(b.split(" "))#['I', 'Am', 'a', 'student']
print(b.split(" ",2))#['I', 'Am', 'a student']
print(b.rsplit(" ",2))#['I Am', 'a', 'student']
print(b.find('I'))#0
print(b.find('st'))#7返回第一个查到的字符
print(b.find('s',0,4))#-1   从下表0到4
print(b.index('a'))# 5
print(b.index('a',0,3))#
ValueError: #substring not found

index与find方法唯一的区别就是,当index查找时,如果查不到就会报错,而find方法找不到会返回-1
(4)统计字符数量

b="I Am a student  heihei"
print(b.count('e'))#3
print(b.count('e',0,12))#1

字符替换

b="I Am a student  heihei"
print(b.replace('e','a'))#I Am a studant  haihai
print(b.replace('e','a',1))#替换次数不超过1次   #I Am a studant  heihei

字符串的测试,判断函数

判断是否以某个字符开头

b="I Am a student  heihei"
print(b.startswith('I'))#True
print(b.startswith('Am',2,4))#True

判断是否以某个字符结尾

b="I Am a student  heihei"
print(b.endswith('hei'))#True
print(b.endswith('hie',3,6))#False

其他方法

在这里插入图片描述

发布了63 篇原创文章 · 获赞 12 · 访问量 4029

猜你喜欢

转载自blog.csdn.net/qq_45353823/article/details/104338886