Python中的正斜杠与反斜杠
(一)目录中的斜杠们
python读文件需要输入的目录参数,列出以下例子:
path = r"C:\Windows\temp\readme.txt"
path1 = r"c:\windows\temp\readme.txt"
path2 = "c:\\windows\\temp\\readme.txt"
path3 = "c:/windows/temp/readme.txt"
打开文件函数open()中的参数可以是path也可以是path1、path2、path3。
path:"\"为字符串中的特殊字符,加上r后变为原始字符串,则不会对字符串中的"\t"、"\r" 进行字符串转义
path1:大小写不影响windows定位到文件
path2:用一个"\"取消第二个"\"的特殊转义作用,即为"\\"
path3:用正斜杠做目录分隔符也可以转到对应目录,并且在python中path3的方式也省去了反斜杠\转义的烦恼
(二)正则表达式中的斜杠们
正则表达式匹配反斜杠"\",为什么是"\\\\"或是 r"\\"呢?
因为在正则表达式中\为特殊符号,为了取消它在正则表达式中的特殊意义需要加一个\就变成了\\,但是问题又来了,\也是字符串中的特殊字符,所以又要分别对两个\取消其特殊意义,即为\\\\。Python中有一个原始字符串操作符,用于那些字符串中出现特殊字符,在原始字符串中,没有转义字符和不能打印的字符。这样就可以取消了\在字符串中的转义功能,即r"\\"。
Python中的split()函数的用法
原文:https://www.cnblogs.com/hjhsysu/p/5700347.html
Python中有split()和os.path.split()两个函数,具体作用如下:
split():拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表(list)
os.path.split():按照路径将文件名和路径分割开
一、函数说明
1、split()函数
语法:str.split(str="",num=string.count(str))[n]
参数说明:
str:表示为分隔符,默认为空格,但是不能为空('')。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量
[n]:表示选取第n个分片
注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略
2、os.path.split()函数
语法:os.path.split('PATH')
参数说明:
1.PATH指一个文件的全路径作为参数:
2.如果给出的是一个目录和文件名,则输出路径和文件名
3.如果给出的是一个目录名,则输出路径和为空文件名
二、分离字符串
string = "www.gziscas.com.cn"
1.以'.'为分隔符
print(string.split('.'))
['www', 'gziscas', 'com', 'cn']
2.分割两次
print(string.split('.',2))
['www', 'gziscas', 'com.cn']
3.分割两次,并取序列为1的项
print(string.split('.',2)[1])
gziscas
4.分割两次,并把分割后的三个部分保存到三个文件
u1, u2, u3 =string.split('.',2)
print(u1)—— www
print(u2)—— gziscas
print(u3) ——com.cn
三、分离文件名和路径
import os
print(os.path.split('/dodo/soft/python/'))
('/dodo/soft/python', '')
print(os.path.split('/dodo/soft/python'))
('/dodo/soft', 'python')
四、实例
str="hello boy<[www.baidu.com]>byebye"
print(str.split("[")[1].split("]")[0])
www.baidu.com