python 字符串(基础2)学习笔记

目录

字符串的判断操作

字符串的替换与合并

 字符串的比价操作

字符串的切片操作:

格式化字符串的方法:

1,用%来格式化,类似与c语言

 2,format方法 使用位置一一对应

 3,f-string

相信这点难度,难不到大家,那么我们现在进入最后的例题()

案例1:

​编辑

​编辑​编辑 

 案例2

案例三

多多点赞哦 


字符串的判断操作

1,isidentifier(),判断指定的字符串是不是合法的表示符

s='game,word,time'
print(s.isidentifier() )  # 因为','不是合法的标识符所以,输出结果为false

2,isspace(),判断指定字符串是否全部由空白字符组成(回车,换行,水平制表符)

s='eh'
a='' \
  ' '
print(a.isspace())
print(s.isspace())  # s字符串不是由上述要求组成,而a字符串全为以上元素所构成,所以前为ture,后为false

 3,isalpha(),判断指定的字符串是否全部由字母组成

s='fafj'
a='13sfs'
print(s.isalpha())
print(a.isalpha()) 

 4,isdecimal(),判断指定的字符串是否全是由十进制的数字组成

s='fafj'
a='13sfs'
print(s.isalpha())
print(a.isalpha())

 5,isnumeric(),判断指定的字符串是否全部由数字组成

s='afaf'
a='dq234'
q='12345'
print(s.isnumeric())
print(a.isnumeric())
print(q.isnumeric())

6,isalnum(),判断指定字符串是否全有字母和数字组成,包括中文(文字)和罗马数字等其他数字,以上同

s='afaf'
a='dq234'
q='12345'
z='__1321ED'
print(s.isalnum())
print(a.isalnum())
print(q.isalnum())
print(z.isalnum())   #单独全部由数字和字母都可以。

字符串的替换与合并

1,字符串的替换,replace(),第一个参数被替换的子串,第二个参数指定替换子串的字符串,该方法返回替换后得到的字符串,替换前得到字符串不发生变化,调用该方法时可以通过第三个参数指定最大的替换次数。

s = 'hello world'
print(s.replace('world','java'))
s = 'hello,world,world,world'
print(s.replace('world','java',3))

2,字符串的合并,join(),将列表或元组中的字符串合并成为一个字符串

s = 'c','c++','java','python','sql'
print('|'.join(s)) 

 字符串的比价操作

1,使用运算符(>,>=,<,<=,==,!=)比较规则,就是两个字符串的元素分别依次比较,当第一次出现两个元素不相等的时候,比较结束,比较的结果就是这两个不同元素的结果。 比较原理:元素比较时,比较的是其原始值(ordinal value),调用内置函数ord可以得到指定字符的原始值。与内置函数ord对应的内置函数 chr,调用内置函数chr可以得到原始值所对应的字符。 原始值的前120位皆为ascll

注意: is与==的区别,is比较的是两个的地址,而==比较的是两个的元素。但由于驻留机制的存在,对于字符串常量来说,一般元素相同的,地址也相同。

字符串的切片操作:

字符串是不可变类型 不具备增删改的操作,所以当进行切片过程时则会产生新的对象 格式 [start:end:step] 与字符串的切片类似,start规定切的起始位置,end切片的结束位置。注意结束是到end-1的位置,不包含end。,step,每次切间隔的距离。

s = 'hello,world'
a=s[1:6:1]
c=s[1:9:3]
d=s[-1:-9:-1]
print(a)
print(c)
print(d)
关于step是负数的情况,如果step是负数的话,start和end也得是负数,否则输出空白,其次如果step是负数,按照逆排序,得到的是倒着的输出。

格式化字符串的方法:

1,用%来格式化,类似与c语言

a = 12
b = 45
print('bob is %d years old, john is %d' %(a,b))
 2,format方法 使用位置一一对应
print('{} asked {} to do something'.format('egon', 'lili'))
 # 结果:egon asked lili to do something 
print('{} asked {} to do something'.format('lili', 'egon'))
# 结果:lili asked egon to do something

a,使用索引对应

name = 'bob' number = '17' print('hello i am {0}, {1} years old '.format(name,number))

0,1,是所站位元素所要替换的变量的位置。

b,使用字典来配合

format a={'age':28,'name':'bob'} print('{name} is {age}'.format(**a))

c,填充与格式化

# 先取到值,然后在冒号后设定填充格式:[填充字符][对齐方式][宽度]

# *<10:左对齐,总共10个字符,不够的用*号填充 print('{0:*<10}'.format('开始执行')) # 开始执行******

# *>10:右对齐,总共10个字符,不够的用*号填充 print('{0:*>10}'.format('开始执行')) # ******开始执行

# *^10:居中显示,总共10个字符,不够的用*号填充 print('{0:*^10}'.format('开始执行')) # ***开始执行*** 可以当做模版使用

精度问题

print('{salary:.3f}'.format(salary=1232132.12351)) #精确到小数点后3位,四舍五入,结果为:1232132.124

print('{0:b}'.format(123)) # 转成二进制,结果为:1111011

print('{0:o}'.format(9)) # 转成八进制,结果为:11

print('{0:x}'.format(15)) # 转成十六进制,结果为:f

print('{0:,}'.format(99812939393931)) #千分位格式化,结果为:99,812,939,393,931
 3,f-string

带有f/F的字符串 age='18' name='bob' print(f'{name} is {age} ')

当{}中为表达式时 # 可以在{}中放置任意合法的Python表达式,会在运行时计算

# 比如:数学表达式 print(f'{3*3/2}') # 4.5

python 字符串(基础2)学习笔记_第1张图片python 字符串(基础2)学习笔记_第2张图片

相信这点难度,难不到大家,那么我们现在进入最后的例题()

案例1:

a=input()
b=a[0:10:1]
print(b)

python 字符串(基础2)学习笔记_第3张图片python 字符串(基础2)学习笔记_第4张图片 

 案例2

 

name = input()
print(name.lower())
print(name.upper())
print(name.title())

python 字符串(基础2)学习笔记_第5张图片

案例三

 

a = input()
b = input()
print("".join([a,b]))

多多点赞哦 

python 字符串(基础2)学习笔记_第6张图片

你可能感兴趣的:(python,学习,笔记,开发语言)