os.mkdir(absolute_path)
创建文件夹os.path.exists(absolute_path)
判断一个文件夹是否存在os.mkdirs('d:\\books\\book')
创建多层文件夹os.rmdir(absolute_path)
删除文件夹def mkdir(absolute_path):
# 去除首位空格
absolute_path=absolute_path.strip()
# 去除尾部 \ 符号
absolute_path=absolute_path.rstrip("\\")
# 判断路径是否存在
# 存在 True
# 不存在 False
isExists=os.path.exists(absolute_path)
# 判断结果
if not isExists:
''' 如果不存在则创建目录
创建目录操作函数 '''
os.makedirs(absolute_path)
print(absolute_path+' 创建成功')
return True
else:
# 如果目录存在则不创建,并提示目录已存在
print(absolute_path+' 目录已存在')
return False
# 定义要创建的目录
mkpath="d:\\qttc\\web\\"
# 调用函数
mkdir(mkpath)
os.walk()
返回三元组 (root_dir_path, dir_names, file_names)
,分别代表根目录名称(str),所有目录名(list),所有非目录文件名(list)for root_dir_path, dir_names, file_names in os.walk(root):
for single_file in file_names:
print os.path.join(root_dir_path, single_file)
os.listdir(file_path)
返回目录下文件名的列表for label_text in os.listdir(file_path):
text_name = os.path.join(file_path, label_text)
print(text_name)
read()
每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。如果文件大于可用内存,为了保险起见,可以反复调用read(size)方法,每次最多读取size个字节的内容。readlines()
自动将文件内容分析成一个行的列表,一般建议用这个可迭代readline()
每次读一行但读到的是str对象,速度较readlines()
慢\n
读进来,因此要使用strip()
方法去掉末尾的换行符with open('test1.txt', 'r') as f1:
list1 = f1.readlines()
for i in range(0, len(list1)):
list1[i] = list1[i].rstrip('\n')
print(list1)
现有两个文件,每个文件包含很多行ip地址,找到两个文件中相同的ip地址:
# coding:utf-8
import bisect
with open('test1.txt', 'r') as f1:
list1 = f1.readlines()
for i in range(0, len(list1)):
list1[i] = list1[i].strip('\n')
with open('test2.txt', 'r') as f2:
list2 = f2.readlines()
for i in range(0, len(list2)):
list2[i] = list2[i].strip('\n')
list2.sort() # 进行二分查找前第一步:排序
length_2 = len(list2)
same_data = []
for i in list1:
pos = bisect.bisect_left(list2, i)
if pos < len(list2) and list2[pos] == i:
same_data.append(i)
same_data = list(set(same_data)) # 利用集合去重
print(same_data)
os.path.splitext(“file_path”)
分离文件名(含路径)和后缀,返回一个二元组path_01='D:/User/wgy/workplace/data/notMNIST_large.tar.gar'
path_02='D:/User/wgy/workplace/data/notMNIST_large'
root_01=os.path.splitext(path_01)
root_02=os.path.splitext(path_02)
print(root_01)
print(root_02)
输出结果:
('D:/User/wgy/workplace/data/notMNIST_large.tar', '.gar')
('D:/User/wgy/workplace/data/notMNIST_large', '')
os.path.split(“file_path”)
分离路径和文件名,返回一个二元组dirname,filename=os.path.split('/home/ubuntu/python_coding/split_func/split_function.py')
print(dirname)
print(filename)
输出结果:
/home/ubuntu/python_coding/split_func
split_function.py
os.path.join()
将分离的部分合起来filename=os.path.join('/home/ubuntu/python_coding','split_func')
print(filename)
输出结果:
/home/ubuntu/python_coding/split_func