python笔记----os.path.join应用

本文介绍了在Python中如何使用os.path.join正确创建和写入文本文件。通过示例代码,解释了如何避免路径错误、文件名拼接错误,以及如何在指定文件夹内创建带有时间戳的.txt文件并写入内容。同时,提供了一个完整的函数实现,该函数接受文件名和文字作为输入,然后创建文件并写入文字。
摘要由CSDN通过智能技术生成

os.path.join应用

应用场景:

编写一个函数,在指定文件夹内创建指定名称的.txt文件,并写入指定内容,然后保存。
输入参数:name 和word
name ---- 文件名
word ---- 文本内容
执行:
在指定的文件夹创建内嵌了name 的.txt文件,并将word写入保存;

避坑指南:

1.设置指定文件夹,注意使用真实符号,否则路径出错:

os.pathdir = "D:\pythonDownload\pythonProject\goupibutong\text"
OSError: [Errno 22] Invalid argument: 'D:\\pythonDownload\\pythonProject\\goupibutong\text\\test02.txt'

2.文件名的拼接:
使用‘+’号时,直接拼接,使用’,'号时,会自动加上\,
因此文件夹和文件名变量之间使用‘\’,文件类型和文件名之间使用‘+’

   #错误示范1
   filename = os.path.join(os.pathdir+name+'.txt')
 >>D:\pythonDownload\pythonProject\goupibutong\texttest02.txt

 #错误示范2
   filename = os.path.join(os.pathdir,name,'.txt')
 >>FileNotFoundError: [Errno 2] No such file or directory: 
 'D:\\pythonDownload\\pythonProject\\goupibutong\\text\\test02\\.txt'
 
 #错误示范3
   filename = os.path.join(os.pathdir+name,'.txt')
 >>FileNotFoundError: [Errno 2] No such file or directory: 'D:\\pythonDownload\\pythonProject\\goupibutong\\texttest02\\.txt'
 
#正确拼接
filename = os.path.join(os.pathdir,name+'.txt')
完整代码
def file_create(name,words):
    import os
    import time
    time_number = time.strftime("%Y%m%d_%H%M%S", time.localtime())
    os.pathdir = r"D:\pythonDownload\pythonProject\goupibutong\text"
    filename = os.path.join(os.pathdir,name+'_'+time_number+'.txt')
    file = open(filename,'a')
    file.write(words)
    file.close()
代码注释:

def file_create(name,words):
import os #引用os
import time #引用time
time_number = time.strftime("%Y%m%d_%H%M%S", time.localtime())
###获取当前的日期_时间
os.pathdir = r"D:\pythonDownload\pythonProject\goupibutong\text"
###指定文件夹
filename = os.path.join(os.pathdir,name+’_’+time_number+’.txt’)
###拼接文件名
file = open(filename,‘a’) #打开或创建文件,操作模式追加。
file.write(words) #写入文本
file.close() #关闭文件

在另一个文件中调用:@TOC

import testfile
name = str(5555555)
word = """发发发发发发付付付付付付付付付付付付付付付付付付"""
testfile.file_create(name,word)

执行结果:
执行结果

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值