关于join函数和split函数

之前一直对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 os

a = ''
b = ['q','w','e']

print a.join(b)

a = 'D:\TA_Project'
b = 'sun.py'

print a+b
print os.path.join(a,b)

输出为:
C:\Python27\python.exe D:/TA_Project/library/test.py
qwe
D:\TA_Projectsun.py
D:\TA_Project\sun.py


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


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

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


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


可以看下面的例子

import os
a = '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')




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值