组成字符串的两种方式
a = 'lao'
b = 'wang'
d = a + b
e = "===%s===" % (a+b) #a与b必须都是字符串
print(d)
print(e)
字符串下标
name = 'abcdef'
print(name[0])
print(name[5])
print(name[len(name)-1])
print(name[-1])
字符串切片
name = 'abcdefABCDEF'
#切片语法:string[起始位置:终止位置:步长]
print(name[2:5]) #cde
print(name[2:]) #cdefABCDEF
print(name[2:-2]) #cdefABCD
print(name[2:-1:2]) #ceACE
print(name[0:])
#以下写法将字符串逆序
print(name[-1::-1]) #FEDCBAfedcba
print(name[::-1]) #前面两个都省略,关键看后面的步长
字符串函数
#coding=utf-8
myStr = "hello world and we are the world"
print(myStr.count("world")) #2
#统计字符串出现的次数,如果没有则返回0
print(myStr.replace("world","WORLD")) #hello WORLD and we are the WORLD
#注意:replace不会对原字符串产生任何影响
print(myStr.replace("world","xxxxx",1)) #hello xxxxx and we are the world
#replace第一个参数为:要替换的字符串,第二个参数为:替换成什么字符串,第三个参数为:如果要替换的字符串出现多次那么要替换的个数
print(myStr.split(" ")) #['hello', 'world', 'and', 'we', 'are', 'the', 'world']
print(myStr.capitalize()) #Hello world and we are the world
file_name = "xxxxx.txt"
print(file_name.endswith(".txt")) #True
#ljust , rjust , center
lyric = "Tonight , I feel close to you"
print(lyric.center(50)) # Tonight , I feel close to you
print(lyric.ljust(50))
print(lyric.rjust(50))
#lstrip , rstrip , strip
name = " who are you "
print(name.lstrip())
print(name.rstrip())
print(name.strip())
#partition , rpatition
print(myStr.partition("world")) #('hello ', 'world', ' and we are the world')
print(myStr.rpartition("world")) #('hello world and we are the ', 'world', '')
#spliteline 按照换行符进行分隔
content = "hello\nworld\nxxx\nyyy"
print(content.splitlines()) #['hello', 'world', 'xxx', 'yyy']
#isalpha 判断是否是纯字母
#isdigit 判断是否是纯数字
#isalnum 判断是否是字母与数字
#join
a = ['aaa','bbb','ccc']
b = '='
print(b.join(a)) #aaa=bbb=ccc
b = ' '
print(b.join(a)) #aaa bbb ccc
面试题:给定一个字符串str,返回使用空格或者'\t'分割后的倒数第二个子串
str = "haha nihao a \t heihei \t woshi nide \t hao \npenyou"
print(str)
sstr = str.split()
print(sstr) #['haha', 'nihao', 'a', 'heihei', 'woshi', 'nide', 'hao', 'penyou']
print(' '.join(sstr))