python读取txt文件并检查文件是否为空

2024-04-19 16:27:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文件现在是空的,名为Savings.txt 我希望这个程序读取文件,如果文件为空,则调用user_balance函数。 如果不是空的,则调用菜单功能

这就是我所拥有的:

check = []    
with open('Savings.txt', 'r') as f: 
    pre_check = f.readlines()
    check = pre_check
    if not check:
        user_balance()
    else:
        menu()

当我运行这个时,即使文件是空的,它也会进入菜单功能。 我做错了什么


Tags: 文件函数程序功能txtcheckaswith
1条回答
网友
1楼 · 发布于 2024-04-19 16:27:37

您所谓的空文件最有可能包含一行新行。所以.readlines实际上返回['\n'],这确实是一个真实的值

根据您的定义,如果“empty”是指没有内容的任何文件忽略空白-在执行检查之前读取文件和.strip其内容

with open('Savings.txt', 'r') as f:
    content = f.read().strip()
    # Check if content is truthy/falsy

^{}将删除任何前导或尾随空格(包括换行符)

相关问题 更多 >