1.第1题(IO流‑文本)
编写程序:读取 article.txt ,统计文件中英文单词出现总数量(只统计单词,忽略数字、标点符号),
并将统计结果写入 result.txt 。
要求:使用 with 语法,文件编码 utf‑8 。

代码:

# 定义所有标点符号,不使用string/re模块
punctuation = r'''!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~'''

# 读取文件 with语法 + utf-8编码
with open("article.txt", "r", encoding="utf-8") as f:
    content = f.read()

# 全部标点替换成空格
for char in punctuation:
    content = content.replace(char, " ")

# 按空格分割字符串
word_list = content.split()
count = 0

# 判断:只统计纯英文单词,跳过带数字的内容
for word in word_list:
    # 判断单词里面是否全部是字母
    if word.isalpha():
        count += 1

# 写入结果文件
with open("result.txt", "w", encoding="utf-8") as fw:
    fw.write(f"英文单词总数量:{count}")

print("统计完成,结果写入result.txt")

运行结果:

2.第2题(IO流‑读写模式综合)
现有文件 record.log ,编写代码:
1. 如果文件不存在则创建;
2. 在文件末尾追加一行: 2026‑07‑27 操作完成 ;
3. 追加完成后读取文件全部内容打印到控制台。
提示:注意光标位置,选对打开模式。

代码:

# 日志文件操作
# a+ 追加读写模式:文件不存在自动创建,写入在末尾,读取需要调整光标
with open("record.log", "a+", encoding="utf-8") as f:
    # 2. 末尾追加内容
    f.write("2026‑07‑27 操作完成\n")
    # 把文件指针移到开头,才能读取全部内容
    f.seek(0)
    # 读取全部内容
    content = f.read()
    # 打印到控制台
    print(content)

运行结果:

3.第3题(模块‑自定义模块)
1. 创建自定义模块 math_tool.py ,内部实现两个函数:
-  calc_area(r) :计算圆面积
-  calc_circum(r) :计算圆周长
2. 在另一个文件 main.py ,用两种不同导入方式调用这两个函数:
- 方式1: import math_tool 
- 方式2: from math_tool import calc_area, calc_circum 
写出两个文件完整代码。

代码:

math_tool.py

import math

# 计算圆面积
def calc_area(r):
    area = math.pi * r ** 2
    return area

# 计算圆周长
def calc_circum(r):
    circum = 2 * math.pi * r
    return circum

main.py 

# ====== 导入方式1:import 模块名 ======
import math_tool

r1 = 3
area1 = math_tool.calc_area(r1)
circum1 = math_tool.calc_circum(r1)
print("方式1调用结果:")
print(f"半径{r1},圆面积:{area1:.2f}")
print(f"半径{r1},圆周长:{circum1:.2f}")

print("-" * 30)

# ====== 导入方式2:from 模块 import 指定函数 ======
from math_tool import calc_area, calc_circum

r2 = 5
area2 = calc_area(r2)
circum2 = calc_circum(r2)
print("方式2调用结果:")
print(f"半径{r2},圆面积:{area2:.2f}")
print(f"半径{r2},圆周长:{circum2:.2f}")

运行结果:

4.第4题(模块‑标准库os模块)
使用 os 标准库完成:
1. 遍历当前文件夹,打印所有后缀为 .txt 的文件名;
2. 创建文件夹 backup ;
3. 加判断条件如果backup文件夹已存在不要报错。

代码:

import os

# 1. 遍历当前文件夹,打印所有 .txt 文件名
current_dir = os.getcwd()
file_list = os.listdir(current_dir)
for name in file_list:
    # 判断后缀是否为 .txt
    if name.endswith(".txt"):
        print("txt文件:",name)

# 2、3:创建backup文件夹,存在则不报错
if not os.path.exists("backup"):
    os.mkdir("backup")
print("backup文件夹处理完成")

运行结果:

5.第5题
使用os和os.path以及函数的递归完成:
给出一个路径,遍历当前路径所有的文件及文件夹
打印输出所有的文件(遇到文件输出路径,遇到文件夹继续进文件夹)

代码:

import os

def traverse_dir(path):
    # 遍历当前目录下所有内容
    for name in os.listdir(path):
        # 拼接完整路径
        full_path = os.path.join(path, name)
        # 判断是否为文件夹
        if os.path.isdir(full_path):
            # 文件夹:递归继续遍历
            traverse_dir(full_path)
        else:
            # 文件:打印完整路径
            print(full_path)

# 调用入口,填写你要遍历的路径
if __name__ == "__main__":
    target_path = r"D:\pythoncode\6.OOP"
    traverse_dir(target_path)

运行结果:

Logo

这里是“一人公司”的成长家园。我们提供从产品曝光、技术变现到法律财税的全栈内容,并连接云服务、办公空间等稀缺资源,助你专注创造,无忧运营。

更多推荐