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)
执行结果: