笨方法自学python(九)-读写文件

读取文件

前面已经学过了 input 和 argv,这些是你开始学习读取文件的必备基础。你可能需要多多实验才能明白它的工作原理,这节练习涉及到写两个文件。一个正常的 ex15.py 文件,另外一个是 ex15_sample.txt,第二个文件并不是脚本,而是供你的脚本读取的文本文件。以下是后者的内容:

This is stuff I typed into a file.
It is really cool stuff.
Lots and lots of fun to have in here.

我们要做的是把该文件用我们的脚本“打开(open)”,然后打印出来。
以下是ex15.py的程序

from sys import argv
script, filename = argv
txt = open(filename)
print("Here's your file %r:"%filename)
print(txt.read())
print("Type the filname again:")
file_again = input(">")
txt_again = open(file_again)
print(txt_again.read())

运行结果:

在这里插入图片描述

读写文件

需要记住以下命令:

  1. close – 关闭文件。跟你编辑器的 文件->保存… 一个意思。
  2. read – 读取文件内容。你可以把结果赋给一个变量。
  3. readline – 读取文本文件中的一行。
  4. truncate – 清空文件,请小心使用该命令。
  5. write(stuff) – 将 stuff 写入文件。

例题:

from sys import argvscript,filename = argvprint("we're going to erase %r." %filename)
print("if you don't want that,hit CTRL-C(^C).")
print("if you do want that,hit RETURN.")input(">")print("opening the file...")
target = open(filename,'w')print("Truncating the file.Goodbye!")target.truncate() #清空文件print("Now I'm going to ask you for three lines.")line1 = input("line1:")
line2 = input("line2:")
line3 = input("line3:")print("I'm going to write these to the file")
target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")
print("And finally,we close it.")
target.close()

运行结果:
line1,line2,line3后面是我们自己输入的,运行完毕后打开 test.txt看看里面是什么
在这里插入图片描述

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

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

相关文章

可视化数据大屏带你走进工业4.0

工业4.0是指第四次工业革命,是对工业生产的一种新的理念和模式。它通过将物理系统与数字系统相互连接,实现工业生产的智能化、自动化和网络化。工业4.0的核心目标是通过数字化技术和数据驱动的方法,实现生产过程的高度灵活性、效率和智能化。…

24数维杯C题18页保姆级思路+代码+后续参考论文

18页保姆级思路: 24数维杯C题20页保姆级思路+可执行代码+参考论文 简单麦麦https://www.jdmm.cc/file/2710641/ 群:666165284 1)确定天然气水合物资源分布范围 要确定天然气水合物资源的分布范围,需要分…

【平时工作中的各种术语__持续更新~~~~】

中文: 1、jar包 JAR包(Java Archive Package)是一种将多个Java类文件以及与它们相关的元数据和资源(如文本、图片等)打包到一个单一文件中的归档工具。它基于ZIP文件格式。JAR文件主要用于分发和部署Java应用程序。J…

Burp Suite (bp)启动激活报错问题

一、自查 1、从哪里下载程序 【大部分同学的问题,都是重新下载解决的,简单快速直接】 一律使用“常用软件”中提供的Burp Suite软件包,方便排查问题 自带JDK的版本 Burp 2024.3,自带JDK21,双击bat即可启动&#xff…

广告归因数据回传:打造低成本、高ROI的oCPX模型

优化成本、提升转化,这一直是App效果广告买量投放的两大核心目标。广告归因中的数据回传正是因此而生,在投放oCPX类智能出价时,通过数据回传,数据算法不断对模型进行调优,广告投放机器人就会变得更加地聪明和智能&…

5G NR 吞吐量计算 and 4G LTE 吞吐量计算

5G NR Throughput References • 3GPP TS 38.306 V15.2.0 (2018-06) ➤J : number of aggregated component carriers in a band or band combination ➤Rmax : 948/1024 • For the j-th CC, Vlayers(j) is the maximum number of layers ➤Qm(j) : Maximum modulation orde…

Python 字符串不区分大小写

1、问题背景 在 Python 中,字符串比较和替换操作默认是区分大小写的。但是,在某些情况下,我们可能希望忽略大小写。例如,我们可能希望搜索或替换包含特定单词的所有字符串,无论这些单词是大写、小写还是混合大小写。 …

Hexasphere Grid System

Hexasphere Grid System 是一个高性能的球形网格系统。它利用纹理阵列和几何着色器来提供最佳的生成和运行时性能,允许生成数十万个图块。 ** 功能 ** - 线框、着色和组合样式(着色+线框)。 - 斜面效果。 - 根据瓷砖颜色和纹理。 - 具有可定制的高度和渐变颜色的挤压。 - 交…

OBS插件--声音波形显示

声音波形显示 波形显示是一个可以定制化的动态音频频谱图案,可以多音频进行可视化,对于音乐类主播必不可少,通过灵活的配置选项可以设计出非常个性化的频谱图形。 下面截图演示下操作步骤: 首先,打开 OBS直播助手 在…

uni-app 滚动到指定位置

方法1&#xff1a;使用标签&#xff0c;可以将页面横向&#xff08;或纵向&#xff09;滚动到指定位置 无法滚动 将代码放在setTimeout&#xff0c;nextTick里执行 <!-- 左边 --><scroll-view show-scrollbar"false" scroll-y"true" class"…

axios异步操作第一篇

1 同步请求和异步请求 客户端给java后台程序发送请求&#xff0c;发送请求的方式有两种&#xff1a; 同步请求 同步请求发送方式&#xff1a; 1 浏览器地址栏&#xff0c;输入url&#xff1a;http://localhost:8080/web-app/xxxServlet 2 3 删除 4 javascript:location.hr…

修改latex中block中公式与block标题间隔过大的问题

修改block中公式与block间隔过大的问题 如图的block中公式出现了空白:代码见下方 \begin{proof}[证明]\begin{align*}&Z\alpha \beta _XX\beta _YY\varepsilon \rightarrow XZ\alpha X\beta _XX^2\beta _YXY\varepsilon X&\\&E\left( Z \right) \alpha \beta _XE\…

RJ71CN91 三菱CANopen®功能模块

RJ71CN91 三菱CANopen功能模块 RJ71CN91模块支持开放式高可靠性的CANopen网络&#xff0c;可适用于各种用途。基于 CAN 总线的网络&#xff0c;具有低成本和高性能的特点&#xff0c;可在工业自动化、医疗分析装置、运输和海洋电子设备等领域中广泛使用。 RJ71CN91图片 RJ71…

c# 曲线 SunnuUi LineChart 的使用

// 初始加载 // 初始加载 private void load(){uiLineChart1.Option.Clear();option uiLineChart1.Option;AddChartData($"线条&#xff1a;1", pointX.ToArray(), pointY.ToArray());SetChartLineStyle();}/// <summary>/// 向图标添加数据/// <…

《二十二》Qt 音频编程实战---做一个音频播放器

1.UI界面制作 作为一个音乐播放器&#xff0c;最基础的肯定就是播放、暂停、上一首以及下一首&#xff0c;为了使这个界面好看一点&#xff0c;还加入了音量控制、进度条、歌曲列表等内容&#xff0c;至于这种配色和效果好不好看&#xff0c;我也不知道&#xff0c;个人审美一如…

Total Store Orderand(TSO) the x86 MemoryModel

一种广泛实现的内存一致性模型是总store顺序 (total store order, TSO)。 TSO 最早由 SPARC 引入&#xff0c;更重要的是&#xff0c;它似乎与广泛使用的 x86 架构的内存一致性模型相匹配。RISC-V 还支持 TSO 扩展 RVTSO&#xff0c;部分是为了帮助移植最初为 x86 或 SPARC 架…

Microsoft Edge浏览器,便携增强版 v118.0.5993.69

01 软件介绍 Microsoft Edge浏览器&#xff0c;便携增强版&#xff0c;旨在无需更新组件的情况下提供额外的功能强化。这一增强版专注于优化用户体验和系统兼容性&#xff0c;具体包含以下核心功能的提升&#xff1a; 数据保存&#xff1a;通过优化算法增强了其数据保存能力&…

【WEEK11】 【DAY4】员工管理系统第五部分【中文版】

2024.5.9 Thursday 接上文【WEEK11】 【DAY3】员工管理系统第四部分【中文版】 目录 10.6.增加员工10.6.1.修改list.html10.6.2.修改EmployeeController.java10.6.3.新建add.html10.6.4.重启并运行 10.6.增加员工 10.6.1.修改list.html 第53行&#xff0c;把<h2>Sectio…

VUE 或 Js封装通用闭包循环滚动函数

1、vue3 闭包滚动函数的使用 js 调用也基本雷同 // 滚动Tab组件const scoreTabRef ref()// 滚动的选项const scrollOption ref({// 滚动的Dom元素scrollDom: null,// 滚动的时间间隔scrollInterval: 1500,// 滚动的距离scrollSep: 100,// 滚动历时时间scrollDuration: 10…

在做题中学习(55):一维前缀和模板

【模板】前缀和_牛客题霸_牛客网 (nowcoder.com) 题目解释&#xff1a; 注意&#xff1a;下标从1开始的。 l 和 r就是对这n个整数去取一个区间&#xff0c;例如示例一&#xff1a; (1,2) 区间 就是算出1 2 4 中 1&#xff0c;2下标对应值的和&#xff0c;12 3 同理,(2,3) …