python新建文件夹口令_01-Python 文件目录操作

Python 文件和目录操作

Menu

Pycharm 和 Jupyter notebook

列出指定目录下的所有文件

创建文件夹和文件移动

按照规则修改指定指定文件夹下文件的名称

读写文本文件

读写Excel文件

Pycharm 和 Jupyter notebook

Pycharm

编写python代码

自动缩进:pyhton使用缩进控制代码的所属关系,例如

#right

def fun(a,b):

c=a+b

return c

#wrong

def fun(a,b):

c=a+b

return c

#wrong

def fun(a,b):

c =a+b

return c

pycharm会帮助你自动在行首添加缩进

错误检测:一些明显错误的代码能够帮你用红色的下划线标识出来

关键词着色: 自动给关键词、变量名、普通代码等使用不同的颜色,方便代码阅读和理解

代码智能提示:变量名和关键词的自动补全

执行python代码

执行当前代码文件,并将对应的控制台(cmd)输出展示出来

调试python代码等其他高级功能

Jupyter notebook

一个交互式的笔记本,使用方式类似于matlab的交互式窗口,支持多种语言(包括python),可以运行单条命令并查看对应的结果,可以记录笔记。

安装

安装python:https://www.python.org/downloads/release/python-362/ 在此最下方选择合适的版本(windows x86-64 executable installer),并双击安装

# 打开命令行执行下面命令

1. curl -O https://raw.github.com/pypa/pip/master/contrib/get-pip.py

2. python get-pip.py

安装jupyter

# 命令行执行

pip3 install jupyter

启动jupyter

1. 在命令行执行 jupyter notebook

2. 用浏览器打开 http://127.0.0.1:8888

列出指定目录下的所有文件

方法1 使用os.listdir()

# 列出目录 /Users/liangjz/abc/ 下面的所有文件和目录

import os

os.listdir('/Users/liangjz/abc/')

# 列出当前目录下所有的文件和目录

import os

os.listdir()

# 列出指定目录下的所有文件 (包含子文件的子文件)

# 定义个函数,来列出目录下所有文件的路径

def list_son_dir(dir_path):

#获取某个目录下是所有文件名

file_names = os.listdir(dir_path)

# 遍历每个文件名

for file_name in file_names:

# 拼接出这个文件的完整路径

file_path = os.path.join(dir_path,file_name)

# 把路径打印出来

print(file_path)

# 判断这个路径是不是一个文件夹

if os.path.isdir(file_path):

# 如果是文件夹

list_son_dir(file_path)

else:

#如果不是文件夹(是一个文件),什么都不做

pass

# 调用这个函数

list_son_dir('.')

方法2 使用glob包

glob是一个简单容易上手的文件匹配包,支持使用简单的通配符进行配匹配,包括: * ? []

安装 pip3 install glob

通配符介绍

(匹配文件名中的0个或任意多个字符)

?(匹配文件名中的单个字符)

[] (使用字符区间([a-z]),可以匹配多个字符中的一个字符)

代码示例

# 引入包名

import glob

# 匹配多个路径下的特定后缀的文件名

print glob.glob('E:\*\*.doc')

print glob.glob('.\*.py')

# iglob返回的是一个可迭代的对象,必须要使用循环才能依次取出其中的文件名列表

f = glob.iglob('.\*.py')

for py in f:

print py

import glob

# 通配符?的使用

for name in glob.glob('tmp/chec?_traffic.sh'):

print name

import glob

# 字符区间的使用

for name in glob.glob('tmp/one/[a-z]*'):

print name

文件夹创建和文件移动

创建文件夹

python 创建文件包含两种情况 1.创建单层目录 2.创建多层目录

具体来讲,创建单层目录一次只能创建一级目录,创建多层目录则可以一次创建多级不存在的目录

代码示例

# 创建单层目录,如果上级目录不存在则会报错

import os

os.mkdir('f:/a/b')

# 创建单层目录,如果上级目录不存在,则会尝试创建路径中缺失的所有目录,不会报错

import os

os.mkdirs('f:/a/b/c/d')

删除目录和文件

删除文件

# os.remove 只能删除文件,不能删除文件夹(会报错),如果被删除的文件正在使用也会报出异常,所以使用前确认被删除的文件没有被代码或者程序打开

import os

os.remove('f:/a/b/c.txt')

删除文件夹

# 删除目录 path,要求path必须是个空目录

os.rmdir(path)

# 递归地删除目录。类似于rmdir(), 如果子目录被成功删除, removedirs() 将会删除父目录;但子目录没有成功删除,将抛出错误。

os.removedirs(path)

移动文件(复制,移动)

复制

安装shutil包:pip3 install shutil

复制文件

import shutil

# oldfile和newfile都只能是文件

shutil.copyfile("oldfile","newfile")

# oldfile只能是文件夹,newfile可以是文件,也可以是目标目录

shutil.copy("oldfile","newfile")

复制目录

import shutil

# olddir和newdir都只能是目录,且newdir必须不存在

shutil.copytree("olddir","newdir")

重命名文件(或目录)

import os

# 文件或目录都是使用这条命令

os.rename("oldname","newname")

或者

import shutil

#移动文件(目录)

shutil.move("oldpos","newpos")

练习按照规则修改指定文件夹的文件名称

读写文本文件

读写文件的操作基本都可以分为三部分:

打开文件

2.进行操作(读取或写入).

3.关闭文件

读取文件文件

# step1 打开文件

# 'f:\a\b\c.txt' 待读取的文件路径

# ‘rt’ 文件的打开模式 r -> read t-> text ,w -> write a-> append b-> binary

# encoding='utf-8' 文件编码, 这个参数一般不填, 常用的参数编码有 utf-8 和 gbk

a_file = open('f:\a\b\c.txt','rt',encodeing='utf-8')

# step2 读取文件

# 从文本中新读取一行内容

line = a_file.read_line()

print(line)

# 遍历one_file中的剩余所有行内容

for line in a_file:

# 输出到屏幕

print(line)

# step3 关闭文件

a_file.close()

将内容写入文本文件

# step1 打开文件

# 写入模式,如果文件不存在会创建,如果已有内容会清空

a_file = open('f:\a\b\c.txt','w')

# 追加模式,打开已有的文件,并在尾部追加内容

a_file = open('f:a\b\c.txt','a')

# step2 向文件中写内容

# 写入100 行数据

for i in range(0,100):

# 每行具体的内容为行号+换行符

a_file.write(str(i)+'\n')

# step3 关闭文件

a_file.close()

读写Excel文件

python 读写Excel文件需要安装额外的包的进行支持

安装命令

pip3 install xlrd

pip3 install xlwt

除了这两个包之外还有其他的包可用,网上有人做了内容的整理,对这些包的优缺点进行了比较[python Excel读写包优缺点]

读取Excel文件

读取excel文件使用xlrd包,xlrd包对.xlsx后缀的文件支持不是很好,如果遇到问题,可以先将.xlsx的文件转换成.xls格式(用excel转)

import xlrd

excel_file = 'f:\a\b\c.xls'

# 打开一个xls文件

data = xlrd.open_workbook(excelFile)

# 获取第一个sheet(excel左下角的标签为sheet)

table = data.sheets()[0]

# 看看这个sheet中有多少行,多少列

nrows = table.nrows #行数

ncols = table.ncols #列数

for i in xrange(0,nrows):

#某一行数据

rowValues= table.row_values(i)

# 挨个打印这一行中的各列数据

for item in rowValues:

print item

# 获取某行某列的数据

my_value = table.cell_value(1,1)

print(my_value)

# 关闭文件

data.close()

写入Excel文件

进行写Excel文件时,需要引入xlwt的包

import xlwt

#创建workbook和sheet对象

#注意Workbook的开头W要大写

workbook = xlwt.Workbook()

sheet1 = workbook.add_sheet('sheet1',cell_overwrite_ok=True)

sheet2 = workbook.add_sheet('sheet2',cell_overwrite_ok=True)

#向sheet页中某行某列写入数据

# 行 列 内容

sheet1.write(0,0,'this should overwrite1')

sheet1.write(0,1,'aaaaaaaaaaaa')

sheet2.write(0,0,'this should overwrite2')

sheet2.write(1,2,'bbbbbbbbbbbbb')

"""

#-----------使用样式-----------------------------------

#初始化样式

style = xlwt.XFStyle()

#为样式创建字体

font = xlwt.Font()

font.name = 'Times New Roman'

font.bold = True

#设置样式的字体

style.font = font

#使用样式

sheet.write(0,1,'some bold Times text',style)

#保存该excel文件,有同名文件时直接覆盖

workbook.save('f:/a/b/c.xls')

print('创建excel文件完成!')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值