美文网首页
python中的split,rsplit,splitlines

python中的split,rsplit,splitlines

作者: 莫辜负自己的一世韶光 | 来源:发表于2018-09-28 15:02 被阅读0次
    • 三个函数的原型
    s1 = "1,2,3,g,y,m"
    
    
    # 将s1按照逗号,分隔放到列表中
    def f1():
        lst = list(s1.split(","))
        print(lst)  # ['1', '2', '3', '4', '5', '6']
    
    
    # 如果是想得到['1','2','3','gym']
    def f2():
        # 首先是将字符串分隔三次,取最后一个元素再按逗号分隔,然后用空串拼接
        s = "".join(s1.split(",", 3)[-1].split(","))
        # 先得到返回之后的列表,改变最后一项的值就可
        lst = s1.split(",", 3)
        lst[3] = s
        print(lst)  # ['1', '2', '3', 'gym']
    
    
    # 应用场景,分隔路径和文件名
    s2 = "/a/b/c/a.txt"
    
    
    def f3():
        # 如果要获取a.txt的文件夹路径,可以利用rsplit进行分隔,倒序分隔,只分隔一次
        # 可以使用序列赋值,右边是一个列表,只有两项
        path, file = s2.rsplit("/", 1)
        print(path, file)  # /a/b/c a.txt
    
    
    # 按照空格分隔,并且保留空格
    s3 = 'ab c\n\nde fg\rkl\r\n'
    
    
    def f4():
        # 按照空格分隔字符串,并且可以保留空格.如果有多个连续的空格,则以最后一个空格为基准
        s = s3.splitlines(keepends=True)
        print(s) # ['ab c\n', '\n', 'de fg\r', 'kl\r\n']
    
    
    if __name__ == '__main__':
        f1()
        f2()
        f3()
        f4()
    
    
    • 总结

    一般情况下split就可以满足所有的需求了,rsplit的使用场景是,从后向前分隔,而splitlines的使用场景是按空格进行分隔,所有的空格都适用,并且它还可以控制分隔后的字符串要不要保留空格.

    相关文章

      网友评论

          本文标题:python中的split,rsplit,splitlines

          本文链接:https://www.haomeiwen.com/subject/xeouoftx.html