
import os
os.path.abspath('.') # 当前IDEL所处的文件夹的绝对路径:'C:\Program Files\python3.9'
os.path.abspath('..') # 当前所处的文件夹上一级文件夹的绝对路径:'C:\Program Files
os.listdir() # 列出当前目录下,所有的文件夹及文件,返回一个列表
os.listdir('d:\') # 列出d:\目录下,所有的文件夹及文件,返回一个列表
y=[f for f in os.listdir(r'.\') if f.endswith(('.py','.txt'))] # r 表示后面的字符不转义
print(y) # 将当前目录下后缀为py、txt的所有文件增加到列表中,并输出
运行结果:
例8-2 利用os.path创建目录、创建多级目录,判断目录、文件是否存在。
import os
os.mkdir('d:\test') # 创建一个目录:d:\test
os.makedirs('d:\Python\test') # 一次性创建多级目录:d:\Python\test
os.path.isdir('d:\Python\test') # 判断指定的目录是否存在,输出:True、或False
os.path.isfile(r'd:\Python\test\test.txt') # 判断指定的文件是否存在,输出:True、或False
os.path.exists(r'd:\Python\test\test.txt') # 判断指定的文件是否存在,输出:True、或False
os.path.exists(r'd:\Python\test') # 判断指定的目录是否存在,输出:True、或False
os.path.join('d:\python\test','test.txt') # 将路径和文件链接:'d:\python\test\test.txt'
例8-3 利用shutil复制、移动目录及文件。
import os
import shutil
os.chdir("d:\Python\test") # 改变工作目录:将d:\Python\test设为当前工作目录
shutil.copyfile("test.txt","d:\test_copy.txt") # 拷贝当前工作目录下的test.txt至d:\test_copy.txt
shutil.move("test.txt","d:\test_copy.txt") # 将当前工作目录下的test.txt文件移至d:\test_copy.txt
os.remove("d:\test_copy.txt") # 删除指定的文件
shutil.copytree("d:\Python\test","d:\newdir") # 将d:\Python\test下的目录、文件,复制到新路径下
运行前:
运行后:
向hello.txt中写入10行“Hello World!行号” :f = open("C:\Users\dell\Desktop\hello.txt", mode="w+")
for i in range(0, 11):
f.write("Hello World!%d\n" % i)
f.close()
运行结果:
将hello.txt中的字符串“World”全部替换成字符串“Python”,并将结果存入hello2.txt:content=open("C:\Users\dell\Desktop\hello.txt")
with open("C:\Users\dell\Desktop\hello2.txt","w") as f:
for line in content:
f.write(line.replace("World","Pyhton"))
运行结果:
读取“年度新生人口和死亡人口.xls”的内容。该文件收录了1949-2016年期间,我国部分地区新生人口、死亡人口、净增人口数据:
import xlrd
wb = xlrd.open_workbook("C:\Users\dell\Desktop\年度新生人口和死亡人口.xls") # 打开文件
sheet = wb.sheet_by_index(0) # 通过索引获取表格
for i in range(sheet.nrows): # 按行数迭代
row = sheet.row_values(i) # 获取第 i行,返回列表
print(row)
运行结果:用 openpyxl 库创建 xlsx 文件,并写入数据:
import openpyxl
wb = openpyxl.workbook() # 创建Workbook,并默认会创建一个空表,名称为:Sheet
ws1 = wb.active # 获取默认的sheet,并激活
ws1.title = 'Sheet1' # 设置Sheet名称
ws1['A1'] = '姓名' # 给单个单元格一个列名
ws1['B1'] = '年龄'
ws1.append(['张三', 18]) # 写入多个单元格(从有数据的行的下一行写入)
ws1.append(['李四', 19])
ws2 = wb.create_sheet('Sheet2') # 创建一个新sheet,可以指定名称
ws3 = wb.copy_worksheet(wb['Sheet1']) # 复制Sheet1,新sheet名称为Sheet1 Copy
print(wb.sheetnames) # 打印所有表名
wb.save('d:\test.xlsx') # 保存
运行结果:
总结:通过本章学习,我学会了如何使用python中的函数 *** 作文件,实现字节流、字符流的读取和写入,并实践成功。欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)