复习python从入门到实践——文件和异常

复习python从入门到实践——文件和异常

目录

  • 复习python从入门到实践——文件和异常
    • 1. 打开文件
      • Syntax
      • 读取多个文件
    • 2.写入文件.write()
      • 写入空文件 'w'
      • 附加到文件 'a'
    • 3.异常
    • 总结

1. 打开文件

Syntax

  • 步骤
    创建txt文档
    提供文档路径file path
    with open(file path) as file_object:
    contents = file_object.read()

(1)创建txt文档
打开terminal下命令: touch filename.txt
(2)with open(file path) as file_object:
with 表示打开文档之后关闭
open()返回文件对象
(3)read()读取文件
到达文件末尾后会产生空行,可以用rstrip()删除。
(4)readlines()读取每一行,并将其储存在列表中。往往与for循环并行。

file_path=" "
with open(file_path) as file_object:lines=file_object.readlines()for line in lines:print(line.rstrip())

读取多个文件

·使用for循环
·函数括号中是(参数),无需定义,它是哑变量-指代输入的参数,不是一个实际存在的变量。

def count_words(filename #参数哑变量无需定义):"""计算一个文件大致包含多少个单词"""with open(filename) as f_obj:contents = f_obj.read()words = contents.split()num_words = len(words)print("The file "+filename+" has about "+str(num_words)+" words.")
filenames = ['alice.txt','siddhartha.txt','moby_dick.txt','little_women.txt']
for filename in filenames:count_words(filename)

split()提取文本

2.写入文件.write()

写入空文件 ‘w’

  • 步骤
    给出filename
    with open(filename,‘w’) as file_object:
filename = 'programming.txt'
with open(filename,'w') as file_object:file_object.write("I love programming.")

附加到文件 ‘a’

filename = 'programming.txt'
with open(filename,'a') as file_object:file_object.write("I love python because it can create and modify my programmes.\n")

3.异常

处理异常的目的是:
(1)不要让复制你代码的人看到你的操作系统的隐私。(2)给用户信息进行提示。

  • 步骤
    在你确认了哪里用户有可能出错后
    try:
    (容易出错的那行代码)
    except 报错名称:
    print(报错提示或者pass-直接沉默跳过)
    else:
try:answer = int(first_number) / int(second_number)
except ZeroDivisionError:print(f"You can't divide by zero.")
else:print(answer)

总结

本章学习了打开文件,读取多个文件,写入文件(写入空文件,附加到文件)以及处理异常(防止隐私泄露,给用户提供信息)。
解决的疑惑是:函数()中的是参数,无需定义。
恭喜你,可以进行小游戏创作了!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/624696.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浅析Pe2shellcode

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。 前言 众所周知,对shellcode免杀是很流行的技术,但是直接对exe的免杀方法相对稀缺,如果我们能将exe转为shellcode,然后用…

基于ssm的中文学习系统的设计与实现+jsp论文

摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本中文学习系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息&am…

【vue】nextTick的使用

简言 nextTick是Vue等待下一次 DOM 更新刷新的工具方法。 当我们更新dom数据后,需要在后面立即获取更新后的页面数据,就可以使用它。 nextTick 当你在 Vue 中更改响应式状态时,最终的 DOM 更新并不是同步生效的,而是由 Vue 将它…

电脑桌面便签在哪设置?备忘录软件哪个好?

好记性不如烂笔头!相信很多打工族在电脑面前办公的时候,都需要随时记录工作中的事项,有的用TXT记录,有的手写笔记,还有一些用电脑桌面便签类软件。而当我们待办事项繁多的时候,手写或文本记录并不能有效帮我…

Hive窗口函数整理

Hive 中的窗口函数允许你在结果集的一个特定“窗口”内对行进行计算。这些窗口可以是物理的(基于行在数据中的实际位置)或逻辑的(基于行的一些排序标准)。窗口函数在处理排名、计算累计和或计算移动平均值等问题时特别有用。 以下…

外贸自建站推广为何首选谷歌广告?谷歌广告的优势在哪?

投放付费广告,是短时间内扩大品牌曝光,同时快速成单的有效方式之一。很多外贸自建站卖家都有投放付费广告的意识,但在广告平台的选择,却往往是较为犹豫的。 谷歌广告是外贸自建站可选择的推广方式之一,那么为什么说是…

去不了哈尔滨? 来看这里VR全景线上云体验

如果你无法亲自前往哈尔滨,那么不要失望,因为现在有一种全新的方式让你在家就能领略到哈尔滨的美丽景色。 冰城客户端、哈尔滨新闻网承办的“激情迎亚冬 冰雪暖世界——2024年哈尔滨冰雪乐园” 运用720云VR打造的沉浸式体验产品正式上线,将带…

[我的Rust库更新]get_local_info 0.2.3

今天收到西安城市开发者社区的文章收录通知,谢谢社区的肯定。 随即发布0.2.3版本,增加峰值算法。 get_local_info是一个获取linux本地信息的Rust三方库,其目标是降低获取本地linux系统信息的难度。支持银河麒麟10、UOS、鸿蒙等国产系统。 项…

利用HTML和CSS实现的浮动布局

代码如下 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title><style>*{m…

MPU机制与实现详解

目录 MPU机制与实现详解 Partition元素-MPU Partition实现元素OSApplication Partition元素-RTE MPU机制与实现详解 1、freedom from interference 此概念来自ISO26262-1&#xff1a;多个元素之间没有可能导致违反安全目标的级联故障&#xff0c;称之为免于干涉。 在左侧的…

案例129:基于微信小程序的外卖商城平台设计与实现

文末获取源码 开发语言&#xff1a;Java 框架&#xff1a;SSM JDK版本&#xff1a;JDK1.8 数据库&#xff1a;mysql 5.7 开发软件&#xff1a;eclipse/myeclipse/idea Maven包&#xff1a;Maven3.5.4 小程序框架&#xff1a;uniapp 小程序开发软件&#xff1a;HBuilder X 小程序…

多个promise调用顺序,javascript引擎的微任务和队列任务,promise(三)

多个异步函数的调用顺序:运行代码得到的结果是p1,p2,p4,p3 const p1 new Promise((resolve, reject) > reject(Error(p1抛出的错误))).catch(error > console.log(error))const p2 new Promise((resolve, reject) > reject(Error(p2抛出的错误))).catch(error > …

pybind11实现numpy和OpenCV Mat的数据交互

1、编译安装pybind11 下载源代码&#xff1a;https://github.com/pybind/pybind11&#xff0c; 文档&#xff1a;https://pybind11.readthedocs.io/en/stable/compiling.html 解压后进入到命令行&#xff0c;如果有conda环境&#xff0c;就先进入想要的conda环境&#xff0c…

Poi实现根据word模板导出-文本段落篇

最近在做word模板导出的需求&#xff0c;本来意为是很简单&#xff0c;做起来才发现细节上有很多东西处理起来还是比较麻烦的&#xff08;客户要求太多&#xff01;&#xff01;&#xff01;&#xff09; 因此我把涉及到基于word模板导出的这部分整理了一下&#xff0c;大家直…

2024年,前端开发者,不妨看看鸿蒙开发

从大环境也好&#xff0c;行业发展也好&#xff0c;过去10年的前端技术晋级路径已经彻底失效。我在去年看了一眼考公的职位&#xff0c;没有任何一个岗位可以由前端胜任&#xff0c;而如果在后端领域比较资深的话&#xff0c;进可以做技术咨询&#xff0c;退可以考架构公务编。…

【基于 InternLM 和 LangChain 搭建你的知识库】学习笔记

学习参考文档【基于 InternLM 和 LangChain 搭建你的知识库】 学习参考链接【书生・浦语大模型实战营第三课作业(基础进阶)】 理论 实战 收集原始数据 收集2018年-2020年几年间的优秀数学建模论文 修改脚本文件&#xff0c;测试文件 作业 复现课程知识库助手搭建过程 La…

JavaScript程序员必须具备的10个技能

JavaScript程序员必须具备的10个技能&#xff1a; 1. 基础语法&#xff1a;理解并能够运用JavaScript的基础语法&#xff0c;包括变量、数据类型、运算符、控制流语句、循环和数组等。 2. 函数&#xff1a;能够编写和重用函数&#xff0c;理解函数的作用域和闭包&#xff0c;以…

通信扫盲(四)

系列文章目录 1 通信扫盲&#xff08;一&#xff09;&#xff1a; 通信的本质、通信发展史-各代移动通信的多祉技术、5G、6G应用场景/愿景、LTE是什么&#xff1f;3GPP是什么&#xff1f; 链接&#xff1a;通信扫盲&#xff08;一&#xff09; 2 通信扫盲&#xff08;二&…

「HDLBits题解」Popcount255

本专栏的目的是分享可以通过HDLBits仿真的Verilog代码 以提供参考 各位可同时参考我的代码和官方题解代码 或许会有所收益 题目链接&#xff1a;Popcount255 - HDLBits module top_module( input [254:0] in,output reg [7:0] out );integer i ; always (*) beginout 0 ;for…

PDF文件的创建时间可以修改吗?分享你一个简单的小技巧

PDF文件的创建时间能修改吗&#xff1f; PDF文件的创建时间是指该文件首次被创建或生成的日期和时间。这个时间被存储在PDF文件的元数据中&#xff0c;可以通过某些软件查看和修改。 在某些情况下&#xff0c;我们需要将PDF文件的创建时间修改为特定的日期和时间。例如&#…