前言
和其它编程语言一样,Python 也具有操作文件(I/O)的能力,比如打开文件、读取和追加数据、插入和删除数据、关闭文件、删除文件等。
一、打印到屏幕(print)
最简单的输出方法是用 print( )语句,你可以给它传递零个或多个用逗号隔开的表达式。此函数把你传递的表达式转换成一个字符串表达式
print("Python 是一个非常棒的语言,不是吗?")
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
二、读取键盘输入
Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘。如下:
- raw_input
- input
1.raw_input
raw_input( ) 函数从标准输入读取一个行,并返回一个字符串(去掉结尾的换行符):
st = raw_input("请输入:")
print ("你输入的内容是: ", st)
2.input
input( ) 函数和 raw_input( ) 函数基本类似,但是 input 可以接收一个Python表达式作为输入,并将运算结果返回。
st = input("请输入:")
print ("你输入的内容是: ", st)
该处使用的url网络请求的数据。
三、读写文件
读文件
要以读文件的模式打开一个文件对象,使用Python内置的open()函数,传入文件名和标示符:
f = open('/Users/michael/test.txt', 'r', encoding="utf-8")
或
f=open("data.txt", encoding="utf-8")
标示符’r’表示读,如果不写标示符,默认为 ‘ r ’ 表示读
调用read()方法可以一次读取文件的全部内容,Python把内容读到内存,用一个str对象表示
>>> f.read()
'Hello, world!'
最后一步是调用close()方法关闭文件。文件使用完毕后必须关闭,因为文件对象会占用操作系统的资源,并且操作系统同一时间能打开的文件数量也是有限的
>>> f.close()
写文件
写文件和读文件是一样的,唯一区别是调用open()函数时,传入标识符’w’或者’wb’表示写文本文件或写二进制文件
>>> f = open('/Users/michael/test.txt', 'w')
>>> f.write('Hello, world!')
>>> f.close()
可以反复调用write()来写入文件,但是务必要调用f.close()来关闭文件。当我们写文件时,操作系统往往不会立刻把数据写入磁盘,而是放到内存缓存起来,空闲的时候再慢慢写入。只有调用close()方法时,操作系统才保证把没有写入的数据全部写入磁盘。忘记调用close()的后果是数据可能只写了一部分到磁盘,剩下的丢失了。所以,还是用with语句来得保险:
with open('/Users/michael/test.txt', 'w') as f:
f.write('Hello, world!')
要写入特定编码的文本文件,请给open()函数传入encoding参数,将字符串自动转换成指定编码。
以’w’模式写入文件时,如果文件已存在,会直接覆盖(相当于删掉后新写入一个文件)。如果希望追加到文件末尾怎么办?可以传入’a’以追加(append)模式写入。