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 孟德尔随机化结果不一致
  • ¥15 深度学习残差模块模型
  • ¥50 怎么判断同步时序逻辑电路和异步时序逻辑电路
  • ¥15 差动电流二次谐波的含量Matlab计算
  • ¥15 Can/caned 总线错误问题,错误显示控制器要发1,结果总线检测到0
  • ¥15 C#如何调用串口数据
  • ¥15 MATLAB与单片机串口通信
  • ¥15 L76k模块的GPS的使用
  • ¥15 请帮我看一看数电项目如何设计
  • ¥23 (标签-bug|关键词-密码错误加密)