FIsh论坛《零基础入门学习Python》| 第028讲 课后测试题及答案

2024-03-29 16:08

本文主要是介绍FIsh论坛《零基础入门学习Python》| 第028讲 课后测试题及答案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

FIsh论坛《零基础入门学习Python》| 第028讲 :文件:因为懂你,所以永恒 | 课后测试题及答案

测试题

0.下边只有一种方式不能打开文件,请问是哪一种,为什么?

f = open('E:/test.txt','w')   #A
f = open('E:\test.txt','w')   #B
f = open('E://test.txt','w')   #C
f = open('E:\\test.txt','w')   #D

B不能打开文件。
window在路径名中既可以接受斜线(/)也可以接受反斜线(\),不过如果使用反斜线作为路径名的分隔符的话,要注意使用双反斜线(\)进行转义,否则Python会将反斜线进行转义,例如(\n)看出成一个换行符,(\t)看做一个制表符等。
1.打开一个文件我们使用open()函数,通过设置文件的打开模式,决定打开的文件具有那些性质,请问默认的打开模式是什么呢?
open()函数的默认打开模式是“rt”,即可读、文本模式打开。
可以在IDLE中输入help(open)进行查看

2.请问>>>open(‘E:\Test.bin’,‘xb’)是以什么样的模式打开文件的?
以“可写入以及二进制模式”打开文件“E:\Test.bin”。

这里要注意的是’x’和’w’均是以“可写入”的模式打开文件,但以’x’模式打开的时候,如果路径下已经存在相同的文件名,会抛出异常,而’w’模式的话会直接覆盖同名文件。
因此,'w’模式打开文件会比较危险,容易导致此前的内容遗失,因此使用’w’模式打开文件前先检查该文件名是否已经存在显得非常重要!
3.尽管python有所谓的“垃圾回收机制”,但对于打开了的文件,在不需要用到的时候我们仍然需要使用**f.close()**将文件对象“关闭”,这是为什么呢?
Python拥有垃圾收集机制,会在文件对象的引用计数降至零的时候自动关闭文件,所以在Python编程里,如果忘记关闭文件并不会造成内存泄漏那么危险。
但并不是说就可以不要关闭文件,如果你对文件进行了写入操作,那么你应该在完成写入之后进行关闭文件。因为Python可能会缓存你写入的数据,如果这中间断电了,那些缓存的数据根本就不会写入到文件中。所以,为了安全起见,要养成使用完文件后立刻关闭的优雅习惯。
4.如何将一个文件对象(f)中的数据存放进列表中?

list(f)

5.如何迭代打印出文件对象(f)中的每一行数据?

for each_line in f:print(each_line)

6.文件对象的内置方法**f.read([size=-1])作用是读取文件对象内容,size参数是可选的,那如果设置了size=10,例如f.read(10),将返回什么内容呢?
读取文件指针当前位置往后读10个字符
7.如何获得文件对象(f)当前文件指针的位置?
文件类对象的tell函数
f.tell()
8.还是视频中的那个演示文件(record.txt),请问为何
f.seek(45,0)不会出错,但f.seek(46)**就出错了呢?


>>> f.seek(46)
46
>>> f.readline()
>Traceback (most recent call last):
>File "<pyshell#18>", line 1, in <module>
>f.readline()

因为使用f.seek()定位的文件指针是按字节为单位进行计算的,演示文件(record.txt)是以GBK进行编码的,按照规则,一个汉字需要占用两个字节,f.seek(45)的位置位于字符“小”的开始位置,因此可以正常打印,而f.seek(46)的位置刚好位于字符“小”的中间位置,因此按照GBK编码的形式无法将其解码!

动动手

  1. 尝试将某个文件(OpenMe.mp3)打印到屏幕上
f = open('E:\Walden.txt',encoding='utf-8')
for each_line in f:print(each_line, end='')
f.close()

**encoding=‘utf-8’,**这句蛮重要!!

f = open(r"C:\Users\lord\Desktop\我的人生目标.doc", encoding='gb2312')
for each_line in f:print(each_line, end='')
f.close()

r"C:\Users\lord\Desktop\我的人生目标.doc",注意转义字符!

  1. 编写代码,将上一题中的文件(OpenMe.mp3)保存为新文件(OpenMe.txt)
f1 = open(r'E://001.txt')
f2 = open(r'E://test1.txt', 'x')        # 使用”x”打开更安全
f2.write(f1.read())
f2 = open(r'E://test1.txt')
f2.close()
f1.close()
  1. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
    在这里插入图片描述
    在这里插入图片描述

这篇关于FIsh论坛《零基础入门学习Python》| 第028讲 课后测试题及答案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/859035

相关文章

Java学习手册之Filter和Listener使用方法

《Java学习手册之Filter和Listener使用方法》:本文主要介绍Java学习手册之Filter和Listener使用方法的相关资料,Filter是一种拦截器,可以在请求到达Servl... 目录一、Filter(过滤器)1. Filter 的工作原理2. Filter 的配置与使用二、Listen

如何使用 Python 读取 Excel 数据

《如何使用Python读取Excel数据》:本文主要介绍使用Python读取Excel数据的详细教程,通过pandas和openpyxl,你可以轻松读取Excel文件,并进行各种数据处理操... 目录使用 python 读取 Excel 数据的详细教程1. 安装必要的依赖2. 读取 Excel 文件3. 读

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

利用Python调试串口的示例代码

《利用Python调试串口的示例代码》在嵌入式开发、物联网设备调试过程中,串口通信是最基础的调试手段本文将带你用Python+ttkbootstrap打造一款高颜值、多功能的串口调试助手,需要的可以了... 目录概述:为什么需要专业的串口调试工具项目架构设计1.1 技术栈选型1.2 关键类说明1.3 线程模

Python ZIP文件操作技巧详解

《PythonZIP文件操作技巧详解》在数据处理和系统开发中,ZIP文件操作是开发者必须掌握的核心技能,Python标准库提供的zipfile模块以简洁的API和跨平台特性,成为处理ZIP文件的首选... 目录一、ZIP文件操作基础三板斧1.1 创建压缩包1.2 解压操作1.3 文件遍历与信息获取二、进阶技

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

python实现svg图片转换为png和gif

《python实现svg图片转换为png和gif》这篇文章主要为大家详细介绍了python如何实现将svg图片格式转换为png和gif,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录python实现svg图片转换为png和gifpython实现图片格式之间的相互转换延展:基于Py

Python中的getopt模块用法小结

《Python中的getopt模块用法小结》getopt.getopt()函数是Python中用于解析命令行参数的标准库函数,该函数可以从命令行中提取选项和参数,并对它们进行处理,本文详细介绍了Pyt... 目录getopt模块介绍getopt.getopt函数的介绍getopt模块的常用用法getopt模