模块(os模块)
一、模块
一个python文件就是一个模块。
模块可分为:
1、标准模块:python自带的模块是标准模块,可以直接import进行使用的。
eg:import json、import random、import datetime、import time 、import os
2、第三方模块:别人写好的模块,安装后进行使用的。
3、自己写的python文件
练习安装模块:pymysql、nnlog、redis、xlwt、xlrd、xlutils 把这些模块装好
4、
import sys print(sys.path) sys.path.append(r'/Users/nhy/PycharmProjects/tmz-code/day4') print(sys.path)
可以把路径加到环境变量的最前面,提高查找速度
import sys sys.path.insert(0,r'/Users/nhy/PycharmProjects/tmz-code/day4') print(sys.path)
还可以直接在目录下右击,选择mark de
5、使用模块下的某个东西
import my_model,json from my_model import name as nhy_name, my_func as my_func2 print(nhy_name) my_func2()
二、os模块
os模块是python自带的模块
1、os.getcwd() 获取当前路径
import os print(os.getcwd())
2、os.mkdir() 创建文件夹
os.makedirs()创建文件夹,与mkdir的区别是,makedirs在父目录不存在的时候会帮你创建父目录
import os os.mkdir('spz8')#创建文件夹 os.mkdir('e:\\nhy123') #在指定目录下创建文件夹 # os.mkdir('stu-1\\laowang') 不可执行成功,提示FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'stu-1\\laowang' os.makedirs('spz9')#创建文件夹 os.makedirs('stu\laowang') #父目录不存在的时候会帮你创建父目录
以上命令除第三条外,其他命令均可创建文件夹成功。
3、os.listdir()获取某个目录下的所有文件
import os print(os.listdir(r'C:\Miniconda3\Scripts'))
4、os.rmdir()删除空文件夹
import os os.rmdir('stu')#删除空文件夹
import os os.rmdir('spz9')#删除空文件夹
spz9是空文件夹,所以删除成功
5、os.path.join()拼接路径,会自动识别路径分隔符
import os print(os.path.join('nhy123','test0','a.txt'))#拼接路径,它会自动识别路径分隔符
6、os.sep 当前系统的路径分隔符
import os print(os.sep)#当前系统的路径分隔符
7、os.path.dirname()获取父目录的路径
import os print(os.path.dirname('e:\\nhy123\\test0\\a.txt'))#获取父目录的路径
import os print(os.path.dirname('user/local/test'))#获取父目录的路径
8、os.path.getsize() 获取文件大小,单位为字节
import os print(os.path.getsize('e:\\nhy123\\test0\\a.txt')) #获取文件大小的
9、os.path.exists() 判断文件、文件夹是否存在
import os print(os.path.exists('code'))#判断文件、文件夹是否存在
10、os.path.isdir() 判断是否是文件夹,如果文件夹不存在的话,会返回False。存在则返回True
import os print(os.path.isdir('e:\\')) #判断是否是文件夹,如果文件夹不存在的话,会返回False
11、os.path.isfile() 判断是否是文件,如果文件不存在的话,会返回False
import os print(os.path.isfile(r'e:\\nhy123\\test0\\a.txt')) #判断是否是文件,如果文件不存在的话,会返回False
12、os.path.split() 分隔文件名和路径
import os print(os.path.split(r'e:\nhy123\test0\a.txt'))#分割文件名和路径的
示例1:
import os for i in range(10): os.mkdir('e:\\nhy123\\test%s'%i)
示例2:把末尾是偶数的文件夹中,创建一个a.txt文件,里面随便写点儿东西
#1、获取到这个目录下所有的文件夹, os.listdir('')
#2、判断文件夹的名字最后一位是不是偶数
#3、如果是偶数的,在这个文件里 f = open(a.txt) f.write('xxx')
import os for dir in os.listdir(r'e:\\nhy123'): if int(dir[-1]) %2==0: abs_path = r'e:\\nhy123\\%s\\a.txt'%dir with open(abs_path,'w') as fw: fw.write('test') abs_path = r'e:\\nhy123\\%s\\a.txt'%dir