三、字符串常见操作

一、字符串的下标

[root@node5 data]# cat test.py 
#!/usr/bin/python3

str1 = 'helloworld'
print(str1[0])
print(str1[1])
print(str1[2])

[root@node5 data]# ./test.py 
h
e
l

二、字符串的切片

#!/usr/bin/python3

str1 = 'helloworld'
print(str1[0:3])
print(str1[:3])
print(str1[3:])

[root@node5 data]# ./test.py 
hel
hel
loworld

三、字符串的常见操作

1.获取字符串的长度len()

#!/usr/bin/python3

str1 = 'helloworld'
print(len(str1))

2.获取字符的下标find() index()

#!/usr/bin/python3

str1 = 'helloworld'

print(str1.find('d'))
print(str1.index('d'))

[root@node5 data]# ./test.py 
9
9

3.find和index的区别:

find没有找到字符返回-1
index没有找到字符直接报错

四、字符串查找和判断

1.判断字符串是以什么开头

#!/usr/bin/python3

str1 = 'helloworld'

print(str1.startswith('h'))
print(str1.startswith('hello'))

[root@node5 data]# ./test.py 
True
True


#!/usr/bin/python3

str1 = 'helloworld'

print(str1.startswith('x'))
print(str1.startswith('H'))


[root@node5 data]# ./test.py 
False
False

2.判断字符串是以什么结尾

#!/usr/bin/python3

str1 = 'helloworld'

print(str1.endswith('d'))
print(str1.endswith('ld'))
print(str1.endswith('x'))

[root@node5 data]# ./test.py 
True
True
False

五、替换字符串replace

#!/usr/bin/python3

str1 = 'helloworld'

str1 = str1.replace('l','x')
print(str1)

[root@node5 data]# ./test.py 
hexxoworxd

六、字符串分割

1.split

#!/usr/bin/python3
str1 = 'http://www.baidu.com'
print(str1.split('//'))

[root@node5 data]# ./test.py 
['http:', 'www.baidu.com']

七、字符串大写小

1.upper将字符串转为全大写

2.lower将字符串转为全小写

#!/usr/bin/python3

t1 = 'hello'
print(t1.upper())

t2 = 'HELLO'
print(t1.lower())


[root@node5 data]# ./test.py 
HELLO
hello

3.title 每个单词首字母大写

#!/usr/bin/python3
t = 'hello world'
print(t.title())

[root@node5 data]# ./test.py 
Hello World

八、空格处理

1.ljust

让字符串以指定的宽度显示,和C中的print %5s 效果一样

#!/usr/bin/python3

t = 'hello world'
#字符串显示为50个字符串宽度,不够用空格补齐
print(t.ljust(50))

#字符串显示为50个字符串宽度,不够用*补齐
print(t.ljust(50,'*'))

[root@node5 data]# ./test.py 
hello world                                       
hello world***************************************

2.center 字符串居中显示

#!/usr/bin/python3

t = 'hello world'
print(t.center(50,'*'))

[root@node5 data]# ./test.py 
*******************hello world********************

3.strip 去除字符串中的空格

注意:只能去掉开头或者末尾连续的空格,中间的不可以

#!/usr/bin/python3

t = 'hel l o w o  r   l   d'
print(t.strip())

t1 = '    hello world     '
print(t1.strip())


[root@node5 data]# ./test.py 
hel l o w o  r   l   d
hello world

八、字符串格式化输出format

#!/usr/bin/python3

name = 'zhangsan'
age = 20
print('名字 = %s' % name)
print('名字 = %s,年龄 = %d' % (name,age))


[root@node5 data]# ./test.py 
名字 = zhangsan
名字 = zhangsan,年龄 = 20

但是这种以上方式需要考虑传递的数据类型,而format不需要考虑

1.直接传递

#!/usr/bin/python3
print('大家好我的叫{},我今年{}岁了'.format('zhangsan',20))

[root@node5 data]# ./test.py 
大家好我的叫zhangsan,我今年20岁了

2.根据位置传递

#!/usr/bin/python3
print('大家好我的叫{0},我今年{1}岁了'.format('zhangsan',20))

[root@node5 data]# ./test.py 
大家好我的叫zhangsan,我今年20岁了

3.对应传递

#!/usr/bin/python3

print('大家好我的叫{name},我今年{age}岁了'.format(name='zhangsan',age=20))

[root@node5 data]# ./test.py 
大家好我的叫zhangsan,我今年20岁了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值