关于join函数和split函数

来源:互联网 发布:水滴互助源码 编辑:程序博客网 时间:2024/06/07 07:06

之前一直对join函数和split函数因为在字符串里和os模块里作用分不清,特此总结一下,做个备忘录。


join函数有2个,一个是string.join,一个是os.path.join


string.join:     'seq1'.join('seq2')     seq1为分隔符,可以为空,seq2为即将要被分隔的字符串,整体是要以seq1为分隔符来将seq2的所有的元素(这里强调一下,是每一个元素,如果是list,很好理解,如果是字符串,那就是每一个字符,如果是字典,那么就是每一个key,key是无序的,所以有时候出来是不一样的顺序,要注意)连接成一个新的字符串,注意这里是字符串

所以可以用这样的方式来将一个list转化为一个字符串      ''.join(['q','w','e'])


os.path.join(),这个就是连接路径和文件,+ 号是连接字符串的,不可以用来连接路径和文件,这个要注意,所以下面的代码里面的+是得不到想到的路径的

import osa = ''b = ['q','w','e']print a.join(b)a = 'D:\TA_Project'b = 'sun.py'print a+bprint os.path.join(a,b)
输出为:
C:\Python27\python.exe D:/TA_Project/library/test.pyqweD:\TA_Projectsun.pyD:\TA_Project\sun.py

split函数也是一样,有2个,一个是字符串的,一个是os.path.split,基本就是join的反过来了。


string.split函数,分割,默认为空格,注意这里如果没有空格,就是字符串里没有,那么就不会分割,会返回一个含有这个字符串一个元素的列表,是的,分割后返回一个list

如果后面带了数字,比如 string.split('.',1) ,表示以.号来分割,并且分割一次。


os.path.split(),这个就是来分割路径的,如果给的是一个完整的路径,那么分割后输出路径和文件名,如果给出的是一个路径名,那么分割后得到的是一个路径和空文件名,这个的返回值是一个元组,不是list。


可以看下面的例子

import osa = 'qw.er.t'print a.split()print a.split('.')print a.split('.',1)b = 'D:\\TA_Project\\'c = 'D:\TA_Project\python.py'print os.path.split(b)print os.path.split(c)


输出为:

C:\Python27\python.exe D:/TA_Project/library/test.py
['qw.er.t']
['qw', 'er', 't']
['qw', 'er.t']
('D:\\TA_Project', '')
('D:\\TA_Project', 'python.py')




阅读全文
0 0
原创粉丝点击