字符串(Python day 9)

字符串(一)

字符串索引(查找)

name='my name is zhangsan!'
char=name[0]
print(char)
char1=name[-1]
print(char1)

结果:
字符串(Python day 9)

字符串切片
格式是:格式:[起始索引:结束索引:[步长]]

s='hello world'
print(1,s[0:8:1])
print(2,s[0:8:2])
print(3,s[0:9])
print(4,s[0:])
print(5,s[:8])
print(6,s[:])
print(7,s[::2])
print(8,s[:8:2])
print(9,s[4::2])
print(10,s[0:8:-1])
print(11,s[::-1])
print(12,s[-8:5])
print(13,s[0:-8])
print(14,s[-1:-8:-2])

这里的(1, ) ,(2,)…(14,)只是单纯的为了分辨
字符串(Python day 9)
遍历字符串与字符串的拼接

#遍历字符串
for s in 'tom':
    print(s)
else:
    print('程序执行完成')

#字符串拼接
name='zhang'+'san'
print(name)
#'*'的拼接
print('$'*5)
s='$'
s1=s*3
print(s1)

字符串(Python day 9)

多赋值
(多赋值是同时赋值)
格式是:变量1,变量2= 赋值1,赋值2
数字对应

s1,s2='zhangsan','lisi'
print(s1)
print(s2)

字符串(Python day 9)

字符串的切片
split的切片是不保留被切字符的

g='wo are friends'
print(g.split('e'))
g.count('e')
g.rfind('e')
g.rfind('b')
g.index('r')

字符串(Python day 9)

字符串再切片
partition是分成三部分,保留切片自身
splitlines按行分隔,返回一个包含各行元素的列表[ ]

g='wo are friends'
print(g.split('e'))
print(g.partition('e'))
g='wo are fri \t ends'
print(g.splitlines())

字符串(Python day 9)

字符串的替换
replace是从左到右替换指定的元素,可指定个数,默认全部替换
translate是按照对应关系替换内容
语法:makestrans()
a=str.makestrans(x,y)第一个参数是字符串,表示需要转换的字符,第二个参数也是字符串表示转换的目标,替换字符串个数是相等的

v='what is you name'
print(v.replace('o','23333')) #前面的是要被替换的,后面的是要替换的
print(v.replace('a','23333',1) )#1是代表替换掉直到第一个
s6='hello world'
intab='world'
outtab='python'
str_tab=str.maketrans(intab,outtab)
print(s6.translate(str_tab))

字符串(Python day 9)

字符串的修饰

#字符串的修饰
s7='hello'
print(s7.center(10))
print(s7.center(10,'*'))
print(s7.ljust(10,'`'))
print(s7.rjust(10,'`'))
print(s7.zfill(10))#00000hello

s8='  hello python  '
print(s8.strip())
s9='``hello python``'
print(s9.strip('`'))
print(s9.rsplit('`'))
print(s9.lstrip('`'))

#字符串格式化 format() 使用位置参数
msg='你好,我叫{},今年{}'
print(msg.format('阿衰',18))
msg='你好,我叫{0}!,我叫{0}!,我叫{0}!,今年{1}!,今年{1}!,今年{1}!'
print(msg.format('阿衰',10))
print('我叫{},今年{},身高{},沉{}'.format('张三',5,96,6,13))
print('我叫{0},今年{1},我叫{2},今年{1}'.format('张三',1,'李四',5,4))
#使用关键字参数
msg='打搅好,我叫{name}!我叫{name}!我叫{name}今年{age}'
print(msg.format(name='zs',age=21))
print(msg.format(age=21,name='ls'))

#精度与进制
print('长方形的宽是{:.2f},长{:.3f},求面积'.format(2/3,5/2))
print('二进制{:b}'.format(10))
print('八进制{:o}'.format(10))
print('十六进制{:x}'.format(10))

字符串(Python day 9)