判断文件是否存在并创建的实现方法

1. 流程图

flowchart TD
    A[开始] --> B{文件是否存在}
    B -- 存在 --> C[结束]
    B -- 不存在 --> D[创建文件]
    D --> C
    C --> E[结束]

2. 代码实现

import os

# 获取文件名
file_name = input("请输入文件名:")

# 判断文件是否存在
if os.path.exists(file_name):
    print("文件已存在")
else:
    # 创建文件
    with open(file_name, 'w') as f:
        print("文件创建成功")

print("程序结束")

上面的代码使用了os模块来判断文件是否存在并创建文件。具体步骤如下:

  1. 首先,从用户获取文件名。这可以通过使用input()函数来实现,它会等待用户输入一个字符串,并将其返回给变量file_name
file_name = input("请输入文件名:")
  1. 接下来,使用os.path.exists()函数来判断文件是否存在。该函数会接受一个文件路径作为参数,并返回一个布尔值,表示文件是否存在。如果文件存在,则跳转到步骤6;如果文件不存在,则继续执行下一步。
if os.path.exists(file_name):
    print("文件已存在")
else:
    ...
  1. 在文件不存在的情况下,我们需要创建一个新文件。这可以通过使用open()函数来实现,传入文件名和打开模式 'w',表示以写入方式打开文件。此外,我们使用with语句来确保文件在使用后正确关闭。
with open(file_name, 'w') as f:
    print("文件创建成功")
  1. 最后,输出一个提示信息表示文件创建成功,并结束程序。
print("程序结束")

3. 类图

classDiagram
    class 开发者 {
        + 判断文件是否存在(file_name: str) : bool
        + 创建文件(file_name: str) : None
    }
    
    class 小白 {
        - file_name: str
        + 判断文件是否存在() : bool
        + 创建文件() : None
    }
    
    开发者 -- 小白 : 教导

在上面的类图中,我们有一个开发者类表示经验丰富的开发者,和一个小白类表示刚入行的开发者。开发者类有两个方法:判断文件是否存在创建文件,用于判断文件是否存在并创建文件。小白类继承了开发者类,并重写了这两个方法,以便适应自己的需求。

4. 代码实现类

import os

class Developer:
    def 判断文件是否存在(self, file_name: str) -> bool:
        """判断文件是否存在"""
        return os.path.exists(file_name)
    
    def 创建文件(self, file_name: str) -> None:
        """创建文件"""
        with open(file_name, 'w') as f:
            print("文件创建成功")

class Beginner(Developer):
    def __init__(self, file_name: str):
        self.file_name = file_name
    
    def 判断文件是否存在(self) -> bool:
        """判断文件是否存在并返回结果"""
        return super().判断文件是否存在(self.file_name)
    
    def 创建文件(self) -> None:
        """创建文件并输出提示信息"""
        super().创建文件(self.file_name)

# 使用示例
file_name = input("请输入文件名:")
beginner = Beginner(file_name)

if beginner.判断文件是否存在():
    print("文件已存在")
else:
    beginner.创建文件()

print("程序结束")

上面的代码通过使用类来实现判断文件是否存在并创建文件的功能。Developer类是一个基类,具有判断文件是否存在创建文件的方法。Beginner类继承了Developer类,并重写了这两个方法,以适应刚入行的开发者的需求。在使用示例中,我们首先获取文件名,然后创建一个Beginner对象,并使用它的方法来判断文件是否存在并创建文件。

希望这篇文章对刚入行的小白能有所帮助,如果有任何问题,请随时提问。