在前面的几个章节中我们脚本上是用 python 解释器来编程,如果你从 Python 解释器退出再进入,那么你定义的所有的方法和变量就都消失了。
为此 Python 提供了一个办法,把这些定义存放在文件中,为一些脚本或者交互式的解释器实例使用,这个文件被称为模块。
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。
OS
关键词:import sys
补充的知识点
#!/usr/bin/python3
# 文件名: using_sys.py
import sys
print('命令行参数如下:')
for i in sys.argv:
print(i)
print('\n\nPython 路径为:', sys.path, '\n')
- 1、import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。
- 2、sys.argv 是一个包含命令行参数的列表。
- 3、sys.path 包含了一个 Python 解释器自动查找所需模块的路径的列表。
关键词:mkdir 基础知识点 概述:os.mkdir() 方法用于以数字权限模式创建目录。默认的模式为 0777 (八进制)。
语法:os.mkdir(path,[mode]) 参数: 1,path -- 要创建的目录 2,mode -- 要为目录设置的权限数字模式 返回值:
该方法没有返回值。# -*- coding: utf-8 -* 必须写在第一行 import os #处理文件和目录的库 import sys #import sys 引入 python 标准库中的 sys.py 模块;这是引入某一模块的方法。 path = "C:\\try_mkdir\\three" #路径在C:\\try_mkdir\\three os.mkdir(path); #创建了一个叫做three的文件夹 print("success")
基础知识
概述:os.makedirs() 方法用于递归创建目录。像 mkdir(), 但创建的所有intermediate-level文件夹需要包含子目录。
语法:os.makedirs(path, mode=0o777)
参数:
1,path -- 需要递归创建的目录。
2,mode -- 权限模式。
返回值:该方法没有返回值。
# -*- coding: utf-8 -*-
import os
def mkdir(path): #定义了一个mkdir函数,设置了一个参数叫做path
path = path.strip() #去除首位空格
path = path.rstrip() #去除尾部\符号
# 判断路径是否存在
#存在 True
#不存在 False
isExists = os.path.exists(path)
#判断结果
if not isExists:
#如果不存在则创建目录
#创建目录操作函数
os.makedirs(path)
print path+'Create success!'
return True
else:
#如果目录在则不创建,并提示目录已存在
print path+'目录已存在'
return False
mkpath = "C:\\try_mkdir" #定义要创建的目录
mkdir(mkpath) #运行mkdir函数
基础知识
概述:os.listdir() 方法用于返回指定的文件夹包含的下一级文件或文件夹的名字的列表。这个列表以字母顺序。 它不包括 '.' 和'..' 即使它在文件夹中。只支持在 Unix, Windows 下使用。
listdir()方法语法格式如下:os.listdir(path)
参数:path -- 需要列出的目录路径
返回值:返回指定路径下的文件和文件夹列表。
import os
import sys
path = "C:\\try_mkdir\\one\\one" # 打开文件
dirs = os.listdir(path)
# 输出所有文件和文件夹
for file in dirs:
print(file)
输出结果:
C:\Users\abc\.conda\envs\untitled\python.exe C:/Users/abc/PycharmProjects/test-auto/First_network/test_First.py
1.txt
2.pptx
基础知识
shutil.move
os.listdir
os.path.join
#针对日常的文件和目录管理任务,shutil 模块提供了一个易于使用的高级接口:
#Python join() 方法用于将序列中的元素以指定的字符连接生成一个新的字符串。
#str.join(元组、列表、字典、字符串) 之后生成的只能是字符串。
# -*- coding: utf-8 -*-
import os
import shutil
count = 0
def moveFiles(path, disdir): # path为原始路径,disdir是移动的目标目录(总目录)
global count
dirlist = os.listdir(path) #打开文件
for i in dirlist: #输出所有文件
child = os.path.join('%s\%s' % (path, i)) #把目录和文件名合成一个路径
if os.path.isfile(child): #判断路径是否为文件
count += 1 #数据加1
shutil.move(child, os.path.join(disdir, str(count) + ".jpg")) #重命名
continue
moveFiles(child, disdir)
if __name__ == '__main__':
disdir = 'C:/try_mkdir_total' #移动的目标路径
moveFiles('C:/try_mkdir', disdir) #原始路径