2301_77159324 2023-04-22 21:29 采纳率: 100%
浏览 19
已结题

Python如何在指定目录下创建txt

背景:
在startup中新建了一个bat,自启动运行指定代码。
需要让这个程序一天只自启动运行一次,中途如果重启电脑,不要再重新运行。

问题:
现在的代码将自动生成一个保存当天日期的txt,但这个txt默认是在startup下,开机时,txt也会自动打开,会出现error导致bat无法运行。请问如何将txt生成到指定目录?谢谢。

  • 写回答

3条回答 默认 最新

  • 社区专家-Monster-XH 2023-04-22 21:37
    关注

    基于Monster 组和GPT的调写:

    用Python内置的os模块,其中的os.path.join()函数可以用来拼接路径,可以将指定目录和文件名拼接起来,生成完整的路径。接下来使用Python内置的open()函数创建文件,使用写入模式'w',并指定完整的路径作为参数即可。例如,如果要在D:\test目录下创建名为example.txt的文件,可以使用以下代码:

    import os
    
    dir_path = r"D:\test"
    file_name = "example.txt"
    file_path = os.path.join(dir_path, file_name)
    
    with open(file_path, 'w') as f:
        f.write("Hello, world!")
    
    

    其中r表示使用原始字符串,防止转义字符对路径的影响。

    根据你的需求,可以将指定目录路径dir_path替换为需要的目录,例如dir_path = r"C:\data",将文件名file_name替换为当前日期字符串即可。

    如果需要在每次启动程序时检查是否已经创建了当天的txt文件,可以使用Python内置的os.path.exists()函数检查指定路径的文件是否存在,例如:

    import os
    import datetime
    
    dir_path = r"C:\data"
    file_name = datetime.datetime.now().strftime("%Y-%m-%d") + ".txt"
    file_path = os.path.join(dir_path, file_name)
    
    if not os.path.exists(file_path):
        with open(file_path, 'w') as f:
            f.write("Hello, world!")
        # 在这里添加需要自启动运行的代码
    
    
    

    中datetime.datetime.now().strftime("%Y-%m-%d")可以获取当前日期,返回格式为"2023-04-22",用作文件名。如果文件不存在,则创建文件并写入内容,然后添加需要自启动运行的代码。如果文件已存在,则不需要再次运行自启动程序。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月1日
  • 已采纳回答 4月23日
  • 创建了问题 4月22日

悬赏问题

  • ¥15 metadata提取的PDF元数据,如何转换为一个Excel
  • ¥15 关于arduino编程toCharArray()函数的使用
  • ¥100 vc++混合CEF采用CLR方式编译报错
  • ¥15 coze 的插件输入飞书多维表格 app_token 后一直显示错误,如何解决?
  • ¥15 vite+vue3+plyr播放本地public文件夹下视频无法加载
  • ¥15 c#逐行读取txt文本,但是每一行里面数据之间空格数量不同
  • ¥50 如何openEuler 22.03上安装配置drbd
  • ¥20 ING91680C BLE5.3 芯片怎么实现串口收发数据
  • ¥15 无线连接树莓派,无法执行update,如何解决?(相关搜索:软件下载)
  • ¥15 Windows11, backspace, enter, space键失灵