[Python基础]006.IO操作
IO操作
输入输出
输入输出方法都是Python的内建函数,并且不需要导入任何的包就可以使用。
简单控制台输出方法 print ...
print ‘content‘
raw_input
简单的控制台输入方法 raw_input(显示的内容....)
num = raw_input(‘Please input a number:‘) // 输入一个数字 print num
input
同样是输入方法,与raw_input
不同的是:raw_input
将所有输入作为字符串,返回字符串;而input
要求输入的内容是一个合法的Python表达式
。如在输入字符串时,要用引号包裹字符串,输入"xxx"
。
content = input(‘Please input a string:‘) //输入一个字符串 print content
文件
Python通过一个内建的file
类型来操作一个文件。
打开文件
open(文件路径, 读写模式)
或者 file(文件路径, 读写模式)
方法。二者没有区别,都会返回一个file
。
fr = open(‘test.txt‘, ‘r‘) # 读模式打开text.txt fw = file(‘test.txt‘, ‘w‘) # 写模式打开text.txt
读写模式类型有:
r
读模式(默认模式,可以不写)w
写模式a
追加模式r+
读写模式w+
读写模式a+
读写模式rb
二进制读模式wb
二进制写模式ab
二进制追加模式rb+
二进制读写模式wb+
二进制读写模式ab+
二进制读写模式
关闭文件
打开文件后要关闭文件。close(文件)
f = open(‘test.txt‘) # 操作文件... f.close()
读文件
使用file
对象的read
等方法进行文件的读取。
read
读取readline
读取一行文件readlines
读取文件所有行
代码
f = open(‘test.txt‘, ‘r‘) print f.read(10) # 读取10个字节的数据 print f.read(100) # 再读取后100个字节的数据 f.close() # 第一种读取方式 f1 = open(‘test.txt‘, ‘r‘) print f1.read() # 不带参数时,读取文件的所有内容 f1.close() # 第二种读取方式 f2 = open(‘test.txt‘) line = f2.readline() # 读取文件第一行 while line: # 不断读取文件下一行,直到line为空值 print line line = f2.readline() # 读取文件的下一行 f2.close() # 第三种读取方式 f3 = open(‘test.txt‘) lines = f3.readlines() # 讲文件以行为单位做成一个数组返回 for line in lines: print line f3.close()
readline
和readlines
都不会删除行结尾符\n
。
在没有足够内存一次读取整个文件时,就要使用readline
。
写文件
使用file
对象的write
等方法进行文件的写入。
write
写入文件writelines
写入多行
代码
# 覆盖写入 f = open(‘test.txt‘, ‘w‘) f.write(‘write it to your file.‘) # 写入 f.close() # 追加写入 f = open(‘test.txt‘, ‘a‘) f.write(‘write it to your file.‘) # 写入 f.close() # 写入多行 f = open(‘test.txt‘, ‘w‘) content = [‘aaaa\n‘, ‘bbbb\n‘, ‘cccc\n‘, ‘dddd\n‘] f.writelines(content) # 写入多行 f.close()
文件指针
文件指针的操作
seek
移动文件指针到不同的位置tell
显示文件当前指针的位置
代码
f = open(‘test.txt‘) f.readline() print f.tell() # 文件指针位置改变 f.seek(0) # 文件指针回到起始位置0 print f.tell() print f.readline() # 始终打印第一行
实例
下面是一个简单的文件操作实例。
# -*- coding: utf-8 -*- import os while True: filepath = raw_input(‘输入要读取的文件路径:‘) if not os.path.exists(filepath): # 判断文件是否存在 print ‘文件不存在‘ continue f = open(filepath) print f.read() f.close()
本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 )
转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4544859.html
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。