【初入职场】从地狱到天堂:运维侠教会你python自动化逆袭之路5学会分支循环结构if、for-按日期批量创建(日省3h真经)

一. 痛点

运维侠小白告诉“一两”学python要勤看多练,可到csdn或b站多看看优秀的教程。

python知识太多太难,不知怎么学?“一两“,说,教程是铺天盖地,可不是晦涩难懂,就是不实用,他不做开发,只想学python自动化,不想浪费时间找,尤其是有选择强迫症的他。

三两天热度过了,就没有当初的激情了? 学了一周“一两”觉得还是放弃吧!恢复到之前吧!至少每天不用辛苦学习代码。

学python,我快乐 学python是世界上第二快乐的事,除了把妹之外,运维侠小白想帮帮“一两”,于是去请教了他“女朋友”怎么简单学会python…
在这里插入图片描述

从基础开始

“库的导入”
“数据结构”
“分支循环结构”

学会基础,学习的乐趣一点点积累

基础学习成本低,掌握所需的技能要求也少,学会一两行代码,看着输出,心理慢慢的欢喜。

欢迎阅读:Python邮件自动化大全打工人逆袭

二.基础版:代码示例

⚠️提示:通过分支循环,实现简单的案例:按日期批量创建文件。

在这里插入图片描述

⚠️避免报错:

  1. 文件路径 没有写绝对路径默认是处理python代码所在路径的文件,因此需要把代码文件放到这个处理的文件同一文件夹里。

(1)if判断

🚨 释义:就像我们公用的电脑,我要创建文件,判断下以前的员工有没有创建这个文件,没有就创建,有就不创建。
💻 代码:输出字典里的值

import os
# 起文件名:像写日记的日期
filename = "1月1日.xlsx"
# 检查文件是否已存在
if not os.path.exists(filename):
    print(f"创建文件: {filename}")
else:
    print(f"文件已存在: {filename}")

执行代码效果:之前创建了1月1日.xlsx所以会输出文件已存在,其余文件则输出创建成功。
在这里插入图片描述

(2)for 循环

💻 代码:

for month in range(1,13):
    filename = month
    print(filename)

执行代码效果:使用for循环,输出了月份。
在这里插入图片描述
💻 代码:使用for循环,输出了几号。

import os

# 就像准备日历本
月份天数 = [31,28,31,30,31,30,31,31,30,31,30,31]
当前月份 = 1  # 这里写几月就生成几月的文件

for 日期 in range(1, 月份天数[当前月份-1]+1):
    文件名 = f"{当前月份}{日期}日.xlsx"
    print(f"正在生成:{文件名}")

🚨 关键内容释义:
os.makedirs():相当于搭建新货架
exist_ok=True:表示如果货架已存在就不重复搭建

执行代码效果:
在这里插入图片描述

(3)综合脚本

💻 代码:

import os
from openpyxl import Workbook

# 比喻:就像一年有12个月,每个月天数不同
month_days = [31, 28, 31, 30, 31, 30, 
              31, 31, 30, 31, 30, 31]

for month in range(1, 13):  # 1月到12月循环
    for day in range(1, month_days[month-1]+1):  # 每天循环
        # 起文件名:像写日记的日期
        filename = f"{month}{day}日.xlsx"
        
        if not os.path.exists(filename):  # 检查文件是否已存在
            wb = Workbook()  # 新建一个空Excel文件
            wb.save(filename)  # 保存文件
            print(f"创建成功:{filename}")
        else:
            print(f"文件已存在:{filename}")

执行代码效果:
在这里插入图片描述

三.进阶版:用日历库更准确,代码示例

⏰提示:一种需求可以有多种类型代码实现,实际中,我们可以从中选择,最适合的。

🚨 释义:这个脚本执行速度更快
💻 代码:

import calendar
from openpyxl import Workbook
import os

for month in range(1, 13):
    # 查日历看这个月有几天(2025年非闰年)
    days = calendar.monthrange(2025, month)[1]

    for day in range(1, days + 1):
        filename = f"{month}{day}日.xlsx"

        if not os.path.exists(filename):
            wb = Workbook()
            wb.save(filename)
            print(f"智能生成:{filename}")

执行代码效果:
在这里插入图片描述

💡 朋友们!你平时用Excel最头疼的操作是什么?
💡在评论区告诉我,下期教你用Python搞定!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

技术职场教练

您的是我坚持原创免费作品的不懈

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

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

打赏作者

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

抵扣说明:

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

余额充值