仅当无法在Python中使用";打开和读取新文件时,才创建新文件;加上“as”;

仅当无法在Python中使用";打开和读取新文件时,才创建新文件;加上“as”;,python,io,Python,Io,我想尝试打开一个文件进行读取,只有当读取失败时,才覆盖它或创建一个新文件。我知道可以使用try,除了finally方法,但我想知道是否有一种更优雅的方法可以使用和作为关键字来实现 试试看: f=文件。打开(“文件”、“r”) 尝试: 解析_文件(f) 最后: f、 关闭() 除CustomError为e外: 覆盖文件(e) 除FileNotFoundError外: 创建_文件() 除: 处理错误() 将打开或创建文件的代码放在函数中,然后调用该函数打开文件。不清楚您到底想做什么。您真的想在覆盖文

我想尝试打开一个文件进行读取,只有当读取失败时,才覆盖它或创建一个新文件。我知道可以使用try,除了finally方法,但我想知道是否有一种更优雅的方法可以使用
作为
关键字来实现

试试看:
f=文件。打开(“文件”、“r”)
尝试:
解析_文件(f)
最后:
f、 关闭()
除CustomError为e外:
覆盖文件(e)
除FileNotFoundError外:
创建_文件()
除:
处理错误()

将打开或创建文件的代码放在函数中,然后调用该函数打开文件。不清楚您到底想做什么。您真的想在覆盖文件之前从文件中读取任何内容吗?您可以通过提供一种使用try/except/finally方法来实现所需行为的方法,使这个概念更清晰。然后,我们可以确保我们的答案与该行为相匹配,因为我们可以自己测试。@Kevin试图提供一个代码示例do
overwrite\u file
create\u file
最终将相同的数据放入该文件?也许你可以把它们简化成一个函数。