蓝桥楼赛第30期-Python模块大比拼-第一天赛题 题解

时间:2021-01-12 01:07:47

认识系统模块(一)

要求

  1. 请使用 Python 交互模式进行实验,不要使用 Ipython 进行实验,也不要在 Python 交互模式之外进行操作。
  2. 通过 os 模块在 /home/project 目录下新建一个多层目录 test1/first/second/。
  3. 将子目录中的 second 目录移动到 /home/project 目录下,更名为 test2。
  4. 在 test2 目录下新建一个 lanqiao.txt 文件。
  5. 操作完成后通过先退出 Python 交互环境,再进行检测。

题解:

import os
import  shutil
os.makedirs("/home/project/test1/first/second/")
shutil.move("/home/project/test1/first/second/", "/home/project/test2/")
os.mknod("/home/project/test2/lanqiao.txt")
exit()

统计文件类型

目标

编写一个脚本程序,需要实现对 /home/project/files 目录下的文件类型进行统计。然后根据用户输入,返回对应文件类型的个数。

要求

文件路径为 /home/project/filetype.py。 文件类型不存在时,返回 0。 最终实现的效果如下: 图片描述 蓝桥楼赛第30期-Python模块大比拼-第一天赛题 题解

题解:

import os
file_path = "/home/project/files"
file_type = input("请输入文件类型:")
num = 0
for root, dirs, files in os.walk(file_path):
    for f in files:
        if f.split(".")[1] == file_type:
            num = num + 1
print(num) 

初识网络爬虫

目标

本次挑战,我们需要编写脚本实现对蓝桥云课课程页的访问,并对其源码进行保存。

蓝桥云课课程页: https://www.lanqiao.cn/courses/

要求

  1. 脚本所在位置为 /home/project/lanqiao.py 。
  2. 脚本将实现对网页抓取,并将获得的源码保存到和脚本同级目录下的 lanqiao.html 文件中,不要使用绝对路径。

题解

import os
import requests
r = requests.get("https://www.lanqiao.cn/courses/")
result = r.text
with open(os.getcwd() + "/lanqiao.html", "w") as f:
    f.write(result)