#每天一点Python——66 #字符串的分隔 #如图:
#方法①split()从左开始分隔,默认空格为分割字符,返回值是一个列表
s='hello world jisuanji'#首先创建一个字符串
list1=s.split()
print(list1)
#输出结果是:['hello', 'world', 'jisuanji']
'''
注意他这种分隔是根据你字符串里面有什么来分隔的
默认是空格,那么你新建的字符串里面就必须要有空格
他才会分隔成三个部分’hello‘ ’world‘ ’jisuanji‘
如果没有空格就不会分隔
'''
#我们来设置一个没有空格的字符串
s1='hellowordjisuanji'
print(s1.split())
'''
那么他的输出结果就是:['hellowordjisuanji']
因为它里面没有空格,那就不会分隔了
'''
#为了更好地理解这种分隔,我们通过调用参数seq()指定分隔符
#通过参数sep指定分隔符
s2='hello world jisuanji'
print(s2.split())#split()里面没有写字符,默认空格分隔
#输出结果是:['hello', 'world', 'jisuanji']
#如果要使用*为分隔符,那么在split()里面要填入split(sep='*')
print(s2.split(sep='*'))
#你会发现他还是原模原样的输出来了,没有一点列表分隔,而是一串为整个列表
#现在我们使用字符串里面的字母’e‘分割
print(s2.split(sep='e'))
'''
他的输出结果为:['h', 'llo world jisuanji']
你会发现e没有了
这里的e做为分隔符,隔开了h和llo world jisuanji
'''
#所以分隔符是将字符串里面的隔开,然后转换成列表输出
#我们再来看一个来体会一下
s3='hello*world*jisuanji'
print(s3.split(sep='*'))
#输出结果为:['hello', 'world', 'jisuanji'],能体会了吗?O(∩_∩)O哈哈~
#使用参数maxsplit参数指定分隔字符串的最大分隔次数,分隔次数达到最大以后,剩下的字符串部分不会载分而是会单独成为一部分
s4='hello*world*computer'
print(s4.split(sep='*',maxsplit=1))#分隔符为*,只分一次
#输出结果:['hello', 'world*computer']
#你会发现他只分隔一次,后面就不分了
#方法②rsplit()从右开始分隔,默认空格为分割字符,返回值是一个列表
'''
r就是right右侧的意思
'''
#用例子体会一下
a1='hello*world*computer'
print(a1.split(sep='*'))
print(a1.rsplit(sep='*'))
#你会发现左右分隔没什么变化。但是你限定分隔次数
print(a1.split(sep='*',maxsplit=1))
print(a1.rsplit(sep='*',maxsplit=1))
'''
他的输出结果:
['hello', 'world*computer']
['hello*world', 'computer']
一个是从左开始
一个是从右开始
这就是split与rsplit的区别
'''