当前位置: 首页 > news >正文

微信网站建设流程全国p2p网站建设

微信网站建设流程,全国p2p网站建设,如何在网上推广app,云典 wordpress文章目录1.第 10 章 文件和异常10.1 读取文件10.1.1 读取文件的全部内容10.1.2 相对文件路径和绝对文件路径10.1.3 访问文件中的各行10.1.4 使用文件的内容10.1.5 包含100万位的大型文件10.1.6 圆周率值中包含你的生日吗10.2 写入文件10.2.1 写入一行10.2.2 写入多行10.3 异常…

文章目录

  • 1.第 10 章 文件和异常
      • 10.1 读取文件
        • 10.1.1 读取文件的全部内容
        • 10.1.2 相对文件路径和绝对文件路径
        • 10.1.3 访问文件中的各行
        • 10.1.4 使用文件的内容
        • 10.1.5 包含100万位的大型文件
        • 10.1.6 圆周率值中包含你的生日吗
      • 10.2 写入文件
        • 10.2.1 写入一行
        • 10.2.2 写入多行
      • 10.3 异常
        • 10.3.1 处理ZeroDivisionError异常
        • 10.3.2 使用try-except代码块
        • 10.3.3 使用异常避免崩溃
        • 10.3.4 else代码块
        • 10.3.5 处理FileNotFoundError异常
        • 10.3.6 分析文本
        • 10.3.7 使用多个文件
        • 10.3.8 静默失败
        • 10.3.9 决定报告哪些错误
      • 10.4 存储数据
        • 10.4.1 使用json.dumps()和json.loads()
        • 10.4.2 保存和读取用户生成的数据
        • 10.4.3 重构
      • 10.5 小结
  • 总结


提示:

1.第 10 章 文件和异常

10.1 读取文件

文件读取是程序与外部数据交互的基础,核心在于通过文件路径找到目标文件,并按需求提取内容。

10.1.1 读取文件的全部内容
  • 操作方式:使用open()函数打开文件(需指定文件路径),通过read()方法读取全部内容,最后用close()关闭文件(避免资源占用)。
  • 示例代码
    with open('file.txt') as file_object:  # with语句自动关闭文件,更安全contents = file_object.read()print(contents)
    
  • 说明read()会将文件内容作为字符串返回,末尾可能包含空行(因文件结束符导致),可通过strip()去除。
10.1.2 相对文件路径和绝对文件路径
  • 相对路径:相对于当前运行程序所在目录的路径。例如,程序在project文件夹,文件在project/data中,则路径为'data/file.txt'
  • 绝对路径:从根目录开始的完整路径(如Windows的'C:/project/data/file.txt',Linux的'/home/user/project/file.txt')。
  • 选择原则:程序与文件在同一项目内时用相对路径(更灵活);文件位置固定且与程序分离时用绝对路径。
10.1.3 访问文件中的各行
  • 需求:逐行读取文件(适用于处理大型文件或按行分析数据)。
  • 实现方式:通过for循环遍历文件对象:
    with open('file.txt') as file_object:for line in file_object:print(line.rstrip())  # rstrip()去除每行末尾的换行符
    
10.1.4 使用文件的内容
  • 场景:读取内容后进行处理(如计算、分析、格式化输出等)。
  • 示例:统计文件中包含特定单词的行数,或提取数值进行计算。
10.1.5 包含100万位的大型文件
  • 处理逻辑:大型文件不宜一次性读取(可能占用过多内存),应逐行或分块读取。
  • 优势with语句和逐行遍历天然支持大型文件,无需担心内存溢出。
10.1.6 圆周率值中包含你的生日吗
  • 应用案例:读取包含100万位圆周率的文件,检查其中是否包含指定的生日数字(如'19901001')。
  • 核心操作:用read()读取全部内容后,通过in关键字判断字符串是否包含目标子串。

10.2 写入文件

程序可将数据持久化到文件中,方便后续使用或共享。

10.2.1 写入一行
  • 打开模式open()函数需指定'w'(写入模式,会覆盖原有内容)、'a'(追加模式,在末尾添加内容)等。
  • 示例
    with open('output.txt', 'w') as file_object:  # 'w'模式:若文件不存在则创建,存在则覆盖file_object.write("Hello, World!")
    
  • 注意write()不会自动添加换行符,需手动加入'\n'
10.2.2 写入多行
  • 方式1:在字符串中加入'\n'换行符:
    with open('output.txt', 'a') as file_object:  # 'a'模式:追加内容file_object.write("First line.\n")file_object.write("Second line.\n")
    
  • 方式2:使用writelines()传入字符串列表(需自行处理换行)。

10.3 异常

异常是程序运行时的错误(如除以0、文件不存在),通过异常处理可避免程序崩溃,增强鲁棒性。

10.3.1 处理ZeroDivisionError异常
  • 异常场景:除数为0时触发,例如5 / 0
  • 作用:直接运行会导致程序崩溃,需捕获并处理。
10.3.2 使用try-except代码块
  • 语法try块包含可能出错的代码,except块处理特定异常。
    try:print(5 / 0)
    except ZeroDivisionError:print("不能除以0!")
    
10.3.3 使用异常避免崩溃
  • 核心思想:即使出现异常,程序也能继续执行后续代码,而非直接终止。
  • 示例:用户输入除数时,若输入0,通过异常处理提示错误并重新输入。
10.3.4 else代码块
  • 作用:当try块无异常时执行,用于存放正常逻辑代码,使结构更清晰。
    try:x = int(input("请输入被除数:"))y = int(input("请输入除数:"))result = x / y
    except ZeroDivisionError:print("除数不能为0!")
    else:print(f"结果是:{result}")  # 无异常时执行
    
10.3.5 处理FileNotFoundError异常
  • 异常场景:打开不存在的文件时触发。
  • 处理方式:捕获异常并提示用户文件不存在。
    try:with open('missing_file.txt') as f:contents = f.read()
    except FileNotFoundError:print("找不到指定的文件!")
    
10.3.6 分析文本
  • 案例:读取文本文件,统计单词数量(结合异常处理,避免文件不存在导致程序崩溃)。
  • 实现:用split()将文本拆分为单词列表,再用len()统计。
10.3.7 使用多个文件
  • 逻辑:通过循环处理多个文件,统一应用读取和分析逻辑,配合异常处理确保某一文件出错时不影响其他文件。
10.3.8 静默失败
  • 场景:不希望显示异常信息,仅忽略错误(使用pass语句)。
    try:with open('file.txt') as f:contents = f.read()
    except FileNotFoundError:pass  # 静默处理,不做任何操作
    
10.3.9 决定报告哪些错误
  • 原则:对用户操作错误(如文件不存在)应提示;对程序内部错误(如逻辑漏洞)应暴露,便于调试。

10.4 存储数据

使用json模块可将Python数据(如字典、列表)存储为文件,方便后续读取和复用。

10.4.1 使用json.dumps()和json.loads()
  • json.dumps():将Python对象转换为JSON字符串(序列化)。
  • json.loads():将JSON字符串转换为Python对象(反序列化)。
  • 示例
    import json# 序列化
    data = {'name': 'Alice', 'age': 30}
    json_str = json.dumps(data)
    print(json_str)  # 输出:{"name": "Alice", "age": 30}# 反序列化
    python_data = json.loads(json_str)
    print(python_data['name'])  # 输出:Alice
    
10.4.2 保存和读取用户生成的数据
  • 保存:用json.dump()直接将数据写入文件。
    with open('user_data.json', 'w') as f:json.dump(data, f)  # 将data写入文件
    
  • 读取:用json.load()从文件中加载数据。
    with open('user_data.json') as f:loaded_data = json.load(f)  # 从文件读取数据
    
10.4.3 重构
  • 定义:优化代码结构(如拆分复杂函数为多个简洁函数),不改变功能但提高可读性和可维护性。
  • 示例:将“读取JSON数据”“处理数据”“保存数据”拆分为独立函数。

10.5 小结

  • 文件操作:掌握open()read()write()等方法,以及相对/绝对路径的使用,能读写文本文件。
  • 异常处理:通过try-except-else捕获和处理错误(如ZeroDivisionErrorFileNotFoundError),避免程序崩溃。
  • 数据存储:用json模块序列化和反序列化数据,实现Python对象与文件的持久化交互。

通过本章学习,你可以实现程序与外部文件的灵活交互,同时增强程序的稳定性和实用性。


总结

在这里插入图片描述

http://www.dtcms.com/a/617432.html

相关文章:

  • 芜湖网站建设公司网上买手表哪个平台最好
  • 游戏怎么做充值网站鹤壁做网站公司
  • 培训平台网站南宁庆云网站建设
  • 离石网站建设公司大数据营销平台有哪些
  • 京东的电子商务网站建设爱企查官网
  • 顺德网站制作链接购买平台
  • 网站开发 招聘 龙岩书签制作古风
  • 深圳龙华昨天死人新闻百度seo推广工具
  • 商丘三合一网站建设正规游戏代理加盟
  • 餐饮业网站源码 织梦汽车网址大全123
  • 做网站 微信开发前景如何防止别人攻击自己的网站
  • 制作梦核的网站公司简介模板范本
  • 淘宝网站建设教程视频教程做培训网站前端
  • codeorg免费编程网站如何建立一个学校网站
  • 丰泽区住房和城乡建设局投诉网站网站建社石家庄
  • 做网站页面的视频网站的图文链接怎么做
  • 大连旅游网站建设大概多钱汽车信息网站设计论文
  • 关于做好网站建设的通知营销型网站建设一般包含哪些内容
  • 深圳微商城网站制作价格网站权重有时降
  • 宁波网站优化公司推荐二环建设部网站
  • 做网站后台怎么弄如何写网站建设方案书
  • 网站根验证文件在哪郴州seo服务
  • 苏州企业网站公司都有哪些广告片拍摄的重要性
  • 怎么做自己的手机网站报名网站开发多钱
  • 为什么有网网站打不开怎么回事啊代理猫
  • 番禺做网站平台湛江自做网站
  • 网站制作周期网站建设服务协议 印花税
  • 电商网站活动推广做同城网站需要哪些手续
  • 做网站要注意的百度seo排名点击
  • 网站开发报告样式百度数据开放平台