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

读取文件

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

bash 复制代码
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的程序

python 复制代码
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 写入文件。

例题:

python 复制代码
from sys import argv

script,filename = argv

print("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看看里面是什么

相关推荐
程序员大雄学编程34 分钟前
「用Python来学微积分」16. 导数问题举例
开发语言·python·数学·微积分
B站_计算机毕业设计之家1 小时前
预测算法:股票数据分析预测系统 股票预测 股价预测 Arima预测算法(时间序列预测算法) Flask 框架 大数据(源码)✅
python·算法·机器学习·数据分析·flask·股票·预测
yj15581 小时前
装修中怎样避坑
python
景彡先生2 小时前
Python函数定义与调用全解析:从基础语法到实战技巧
linux·开发语言·python
m***记2 小时前
Python字符串操作:如何判断子串是否存在
linux·服务器·python
小白银子3 小时前
零基础从头教学Linux(Day 56)
linux·运维·python
B站计算机毕业设计之家3 小时前
计算机视觉:python手写数字识别系统 手写数字检测 CNN算法 卷积神经网络 OpenCV和Keras模型 大数据毕业设计(建议收藏)✅
python·神经网络·opencv·计算机视觉·cnn·手写数字·数字识别
B站计算机毕业设计之家3 小时前
Python手势识别检测系统 基于MediaPipe的改进SSD算法 opencv+mediapipe 深度学习 大数据 (建议收藏)✅
python·深度学习·opencv·计算机视觉·1024程序员节
分布式存储与RustFS4 小时前
RustFS:MinIO的“平替”还是“乱杀”?
python·rust·对象存储·minio·存储·企业存储·rustfs
爱幻想-hjyp4 小时前
【Python】uv包管理器常用命令
开发语言·python·uv