Python:对于不存在的文件,使用open(filename,';w';) 出身背景
我正在尝试编写一个脚本,用我制作的模板创建一个新的LaTeX文件,并 在使用以下代码时,我遇到了一些困难:Python:对于不存在的文件,使用open(filename,';w';) 出身背景,python,file,text,file-io,fopen,Python,File,Text,File Io,Fopen,我正在尝试编写一个脚本,用我制作的模板创建一个新的LaTeX文件,并 在使用以下代码时,我遇到了一些困难: with open(filename + '.tex', 'w'): # Do stuff to filename.tex ... 将上述内容视为选项A 在这里,filename.tex,filename是一个变量,(可能)在用户执行脚本的目录中不存在。在选项A中不会创建文件 通过带有open(…)语句的。我显然需要在此上下文中创建filename.tex 还有另一种打开
with open(filename + '.tex', 'w'):
# Do stuff to filename.tex
...
将上述内容视为选项A
在这里,filename.tex
,filename
是一个变量,(可能)在用户执行脚本的目录中不存在。在选项A中不会创建文件
通过带有open(…)语句的。我显然需要在此上下文中创建filename.tex
还有另一种打开文件的方法,它被视为选项B:
f = open(filename.tex, 'w+')
在上面的语句中,如果文件不存在,则创建该文件
因此,我的问题是:
如果我想写作,我应该使用以下哪些选项
清晰、编写良好的代码,遵循共享视图
Python社区的成员?(蟒蛇)
如果选项A,
如果文件不可用,我希望您指导如何触摸该文件
已经存在的链接将非常棒。(或包含在答案中)同时使用w
打开,w+
模式创建一个文件,除非它存在。(截断文件(如果存在)
w
和w+
之间的区别是:
w
:仅写
w+
:读+写
同时使用w
打开,w+
模式创建一个文件,除非它存在。(截断文件(如果存在)
w
和w+
之间的区别是:
w
:仅写
w+
:读+写
“在选项A中,文件不是由with open(…)
语句创建的。”奇怪的是,它是在我的机器上创建的。@凯文,这的确是最奇怪的。我将尝试重新启动@Kevin现在可以工作了,突然(重启后)。“在选项a中,文件不是由with open(…)
语句创建的。”奇怪的是,它是在我的机器上创建的。@Kevin这确实是最奇怪的。我将尝试重新启动@Kevin现在它突然工作了(在重新启动之后)。此外,如果您真的想测试存在性,请在没有模式参数的情况下调用函数,如果文件不存在,它将失败。我不知道有什么Pythonic的约定,但这是测试文件存在性的推荐方法。除此之外,如果您真的想测试存在性,请在没有模式参数的情况下调用该函数,如果文件不存在,该函数将失败。我不知道有什么Pythonic的约定,但这是测试文件存在性的推荐方法。