Python学习15:Open读取文件

在之前我已经学习过raw_input和argv了,在这一节的Python学习中,我学习怎样使用脚本打开普通的文本文件,读取它并且关闭文件。关闭文件很重要,关闭是为了释放资源,防止内存被耗尽,导致机器死锁。另外,关闭文件还有一个作用,当写文件时,关闭后将缓冲区中的内容写入文件本身。

下面是一个简单的读取文本文件的脚本。
我们可以用两种方式来实现这个功能:
第一种是一个带参数的脚本。
第二种是不使用参数,直接使用变量来读取文件的脚本。

第一种:

1. # 导入argv模块
2. from sys import argv

3. # 定义变量名
4. script, filename = argv

5. # 定义txt变量存储打开文件后的内容
6. txt = open(filename)

7. # 输出打开的文件名,使用read模块读取txt变量内容然后打印出来。
8. print "Here is your file %r: " % filename
9. print txt.read()

10. # 使用raw_input读取用户输入的文件名
11. # 这里有个疑问?
12. print "Type the filename again: "
13. file_again = raw_input("> ")

14. # 使用txt_again变量存储打开用户输入的文件的内容
15. txt_again = open(file_again)

16. # 通过read模块读取txt_again的内容,然后打印出来
17. print txt_again.read()

代码第13行有个疑问,为什么可以脚本可以识别输入的是当前目录下的文件?或许以后了解的更深了能回答这个问题。

第二种:

# 使用变量定义一个提示语句,然后在raw_input中去调用这个变量,这样使得代码能够更加简洁,缺点是变量也要占用内存空间。
prompt = 'Please input a filename > '
txt = raw_input(prompt)

# 打开文本,并用一个变量保存
txt_open = open(txt)

# 在这里把内容直接读到内存里并打印出来,不使用变量来保存
print txt_open.read()
txt_open.close()

txt_input = raw_input(prompt)
txt1 = open(txt_input)

print txt1.readline()
txt1.close()
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章