python文件自动化处理 -- 读写文件

本文介绍了Python的文件操作,包括os.makedirs()创建文件夹,文件的读写过程,以及如何使用os.walk()遍历目录树。重点讨论了如何利用zipfile模块进行压缩和解压缩文件,包括extractall()和extract()方法的使用。
摘要由CSDN通过智能技术生成


一、os.makedirs()

  • os.makedirs()

程序可以用os.makedirs()函数创建新文件夹(目录)

1.1 文件读过程

在python中,读写文件有3个步骤:

  1. 调用open0函数,返回一个File对象。
  2. 调用File对象的read0或write0方法。
  3. 调用File对象的close0方法,关闭该文件。⭐
file = open(file='./test.txt',encoding = 'UTF-8')
print(file)

<_io.TextIOWrapper name=’./test.txt’ mode=‘r’ encoding=‘UTF-8’>

  • test.txt
    在这里插入图片描述

  • read()读文件

content = file.read()
print(content)
file.close()

白日依山尽
黄河入海流
欲穷千里目
更上一层楼

  • readlines()读文件
file = open(file='./test.txt',encoding = 'UTF-8')
contentList = file.readlines()
print(contentList)
file.close()

[‘白日依山尽\n’, ‘黄河入海流\n’, ‘欲穷千里目\n’, ‘更上一层楼’]

1.2 文件写过程

  • 覆盖写:w
    在这里插入图片描述
  • 追加写:a
    在这里插入图片描述

案例-生成随机的测验试卷⭐⭐

  • 构思
  • 创建35份不同的测验试卷。
  • 为每份试卷创建50个多重选择题,次序随机。
  • 为每个问题提供一个正确答案和3个随机的错误答案,次序随机。
  • 将测验试卷写到35个文本文件中。
  • 将答案写到35个文本文件中。
  • 代码编写
  • 将州和它们的首府(即省会)保存在一个字典中。 (类似于 省份:省会)
  • 针对测验文本文件和答案文本文件,调用open(),write()和close().
  • 利用random.shuffle()随机调整问题和多重选项的次序。
import random
import os
# 将州与首府保存到同一个字典里
capitals = {
   'Alabama': 'Montgomery', 'Alaska': 'Juneau', 'Arizona': 'Phoenix',
            'Arkansas': 'Little Rock', 'California': 'Sacramento', 'Colorado':
            'Denver','Connecticut': 'Hartford', 'Delaware': 'Dover', 'Florida':
            'Tallahassee','Georgia': 'Atlanta', 'Hawaii': 'Honolulu', 'Idaho':
            'Boise', 'Illinois': 'Springfield', 'Indiana': 'Indianapolis', 'Iowa':
            'Des Moines', 'Kansas': 'Topeka', 'Kentucky': 'Frankfort', 'Louisiana':
            'Baton Rouge', 'Maine': 'Augusta', 'Maryland': 'Annapolis', 'Massachusetts':
            'Boston', 'Michigan': 'Lansing'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胜天半月子

打不打商的无所谓,能帮到你就好

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值