Python3读取文件和异常处理demo案例
发布日期:2021-04-30 21:06:17
浏览次数:95
分类:精选文章
本文共 1641 字,大约阅读时间需要 5 分钟。
案例分析
- 文件操作方法说明
- 一次性读取文件内容的实现方法
- 文件写入操作及文本追加功能
- 异常处理机制设计
- Python数据结构存储方法
remeaber_name.py
```pythonimport jsondef get_stored_name(): """获取存储的用户名""" filename = 'names.json' try: with open(filename) as f_obj: username = json.load(f_obj) except FileNotFoundError: return None else: return usernamedef get_new_name(new_name, is_exist=True): """提示用户输入用户名""" #new_name = input("Enter your name:") is_exist = is_exist_name(new_name) if is_exist: return (new_name, is_exist) else: return do_store_name(new_name), is_existdef is_exist_name(name): """检查用户名是否已存在""" filename = 'names.json' try: with open(filename) as f_obj: names = json.load(f_obj) except FileNotFoundError: names = [] json.dump(names, open(filename, 'w')) return False else: return name in namesdef do_store_name(new_name): """存储新用户名""" filename = "names.json" readed = json.load(open(filename, 'r')) readed.append(new_name) with open(filename, 'w') as f_obj: json.dump(readed, f_obj) return new_namedef greet_user(username): """欢迎用户""" username, is_exist = get_new_name(username) if is_exist: print(f"Welcome back, {username}!") else: print(f"We'll remember you when you come back, {username}!")if __name__ == "__main__": while True: input_str = input("请输入登录名(输入'Q'退出):") if input_str == 'Q': break greet_user(input_str)
names.json
["KEKE", "LELE", "JIZHUANG.WANG", "XIAYU", "XIA"]
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2026年06月18日 11时31分05秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
PHP执行耗时脚本实时输出内容
2023-03-01
PHP扩展安装
2023-03-01
PHP扩展数据库连接参数说明详解
2023-03-01
php把get参数放入数组_php怎么将数组转为url参数?
2023-03-01
php接口返回数据 用echo 还是return?
2023-03-01
php接口返回状态,大家一般怎么规范接口返回内容
2023-03-01
php接收formdata上传的多个文件,使用formData()上传多个文件
2023-03-01
PHP操作csv文件导入+导出
2023-03-01
php操作mysql用select_php如何操作mysql获取select 结果
2023-03-01
PHP操作符与控制结构
2023-03-01
PHP支付宝SDK使用,电脑网页支付
2023-03-01
php支付宝手机网页支付类实例
2023-03-01
PHP改变数组key值的方法
2023-03-01
php教程之php空白页的原因及解决方法
2023-03-01
PHP数据库操作
2023-03-01
PHP数据文件过大,导致PHP加速器eaccelerator在PHP5.2版本下崩溃
2023-03-01
RabbitMQ - 死信、TTL原理、延迟队列安装和配置
2023-03-01
PHP数据访问的多重查询(租房子查询)
2023-03-01
RabbitMQ - 如保证消息的可靠性?(消息确认、消息持久化、失败重试机制)
2023-03-01
RabbitMQ - 基于 SpringAMQP 带你实现五种消息队列模型
2023-03-01