Python对文件的基本操作

本人简要介绍了python对文件的基本操作命令,包括判断文件路径是否存在,打开文件,读取文件,写入文件,关闭文件。对文件内容的处理,比如查找字符,删除相关字符等可以参考正则方面的文章。

1.Python命令 open, read, readline, readlines, string.split, write, close

2.代码及部分注释。

import os.path

import string

if os.path.exists("D:/python/learning_with_python"):# judge if the given path is exist

print "path D:\python\learning_with_python is exist "

else:

print "path D:\python\learning_with_python is NO exist "

if os.path.isfile("D:/python/learning_with_python/common_python_module/forfileoperation.txt"):# judge if the file is exist

print "file forfileoperation.txt is exist"

else:

print "file forfileoperation.txt is NO exist "

fileopen = open("D:/python/learning_with_python/common_python_module/forfileoperation.txt", 'r')# open a file, please be aware path need use '/' but not '\'

message = fileopen.read()

print message

·输出

>>> import os.path
>>> import string

>>> if os.path.exists("D:/python/learning_with_python"):
print "path D:\python\learning_with_python is exist "
else:
print "path D:\python\learning_with_python is NO exist "


path D:\python\learning_with_python is exist 

>>> if os.path.isfile("D:/python/learning_with_python/common_python_module/forfileoperation.txt"):
print "file forfileoperation.txt is exist"
else:
print "file forfileoperation.txt is NO exist "


file forfileoperation.txt is exist
>>> fileopen = open("D:/python/learning_with_python/common_python_module/forfileoperation.txt", 'r')
>>> message = fileopen.read()
>>> print message
line1: Do not allow your dog to be fat
line2: Do not take your dog for a ride in the car without securing him. 
line3:Do not let your dog off leash in open areas
line4: Do not let your dog play with young children without proper supervision
line5: Do not give "people meds" to your dog 

paragraph1
1. Do not allow your dog to be fat. I realize you hear this all the time, but there's a reason why we veterinarians will not let this issue go. 


paragraph2


2. Do not take your dog for a ride in the car without securing him. A loose dog can be a distraction to a driver, and in an accident, the dog can become a projectile, injuring himself or others in the car, possibly seriously. There are plenty of canine restraint products on the market, but many won't protect you or your dog much. 

paragraph3
3. Do not let your dog off leash in open areas. Very few dogs heel reliably off lead, and just as few - if not fewer - have a foolproof emergency recall. 


paragraph4
4. Do not let your dog play with young children without proper supervision. I'm borrowing this one from my daughter, Vetstreet training expert Mikkel Becker. 


paragraph5
5. Do not give "people meds" to your dog without checking with your veterinarian first. My Vetstreet colleague Dr. Patty Khuly has written about dog-safe medications and how to use them. 

 

fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'w')# open a file in mode of write

fp.write(message)# write message to the file

fp.close()

fileopen.close()

fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'r') # open a file in mode of read

copy_read = fp.read() # read the openned file, and return as a string

print "the type of read() is a string,%s" ,type(copy_read)

print copy_read# print the string

readlist = copy_read.split("paragraph")# use "paragraph" to split the string copy_read into a list

print readlist

fp.close()

·输出

>>> fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'w')
>>> fp.write(message)
>>> fp.close()
>>> fileopen.close()
>>> fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'r')
>>> copy_read = fp.read()
>>> print copy_read
line1: Do not allow your dog to be fat
line2: Do not take your dog for a ride in the car without securing him. 
line3:Do not let your dog off leash in open areas
line4: Do not let your dog play with young children without proper supervision
line5: Do not give "people meds" to your dog 

paragraph1
1. Do not allow your dog to be fat. I realize you hear this all the time, but there's a reason why we veterinarians will not let this issue go. 


paragraph2


2. Do not take your dog for a ride in the car without securing him. A loose dog can be a distraction to a driver, and in an accident, the dog can become a projectile, injuring himself or others in the car, possibly seriously. There are plenty of canine restraint products on the market, but many won't protect you or your dog much. 

paragraph3
3. Do not let your dog off leash in open areas. Very few dogs heel reliably off lead, and just as few - if not fewer - have a foolproof emergency recall. 


paragraph4
4. Do not let your dog play with young children without proper supervision. I'm borrowing this one from my daughter, Vetstreet training expert Mikkel Becker. 


paragraph5
5. Do not give "people meds" to your dog without checking with your veterinarian first. My Vetstreet colleague Dr. Patty Khuly has written about dog-safe medications and how to use them. 


>>> print "the type of read() is a string,%s" ,type(a_copy)
the type of read() is a string,%s

>>> readlist = copy_read.split("paragraph")
>>> print readlist
['line1: Do not allow your dog to be fat\nline2: Do not take your dog for a ride in the car without securing him. \nline3:Do not let your dog off leash in open areas\nline4: Do not let your dog play with young children without proper supervision\nline5: Do not give "people meds" to your dog \n\n', "1\n1. Do not allow your dog to be fat. I realize you hear this all the time, but there's a reason why we veterinarians will not let this issue go. \n\n\n", "2\n\n\n2. Do not take your dog for a ride in the car without securing him. A loose dog can be a distraction to a driver, and in an accident, the dog can become a projectile, injuring himself or others in the car, possibly seriously. There are plenty of canine restraint products on the market, but many won't protect you or your dog much. \n\n", '3\n3. Do not let your dog off leash in open areas. Very few dogs heel reliably off lead, and just as few - if not fewer - have a foolproof emergency recall. \n\n\n', "4\n4. Do not let your dog play with young children without proper supervision. I'm borrowing this one from my daughter, Vetstreet training expert Mikkel Becker. \n\n\n", '5\n5. Do not give "people meds" to your dog without checking with your veterinarian first. My Vetstreet colleague Dr. Patty Khuly has written about dog-safe medications and how to use them. \n\n']
>>> print len(readlist)
6
>>> fp.close()

fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'r') # open a file in mode of read

copy_readline1 = fp.readline()# read only one line of openned file, and return as a string

print "the type of readline() is a string,%s" ,type(copy_readline1)

print copy_readline1# print the contant

copy_readline1 = fp.readline()# read the 2nd line of openned file and return as a string

print copy_readline1

fp.close()

·输出

>>> fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'r')
>>> copy_readline1 = fp.readline()
>>> print "the type of readline() is a string,%s" ,type(copy_readline1)
the type of readline() is a string,%s <type 'str'>
>>> print copy_readline1
line1: Do not allow your dog to be fat

>>> copy_readline1 = fp.readline()
>>> print copy_readline1
line2: Do not take your dog for a ride in the car without securing him. 

>>> fp.close()
>>> 

 

fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'r') # open a file in mode of read

copy_readlines = fp.readlines() # read the whole openned file, and return as a list

print "the type of readline() is a list,%s" ,type(copy_readlines)

print copy_readlines

fp.close()

·输出

>>> fp = open("D:/python/learning_with_python/common_python_module/tmp.txt", 'r')
>>> copy_readlines = fp.readlines()
>>> print "the type of readline() is a list,%s" ,type(copy_readlines)
the type of readline() is a list,%s <type 'list'>
>>> print copy_readlines
['line1: Do not allow your dog to be fat\n', 'line2: Do not take your dog for a ride in the car without securing him. \n', 'line3:Do not let your dog off leash in open areas\n', 'line4: Do not let your dog play with young children without proper supervision\n', 'line5: Do not give "people meds" to your dog \n', '\n', 'paragraph1\n', "1. Do not allow your dog to be fat. I realize you hear this all the time, but there's a reason why we veterinarians will not let this issue go. \n", '\n', '\n', 'paragraph2\n', '\n', '\n', "2. Do not take your dog for a ride in the car without securing him. A loose dog can be a distraction to a driver, and in an accident, the dog can become a projectile, injuring himself or others in the car, possibly seriously. There are plenty of canine restraint products on the market, but many won't protect you or your dog much. \n", '\n', 'paragraph3\n', '3. Do not let your dog off leash in open areas. Very few dogs heel reliably off lead, and just as few - if not fewer - have a foolproof emergency recall. \n', '\n', '\n', 'paragraph4\n', "4. Do not let your dog play with young children without proper supervision. I'm borrowing this one from my daughter, Vetstreet training expert Mikkel Becker. \n", '\n', '\n', 'paragraph5\n', '5. Do not give "people meds" to your dog without checking with your veterinarian first. My Vetstreet colleague Dr. Patty Khuly has written about dog-safe medications and how to use them. \n', '\n']
>>> print len(copy_readlines)
26
>>> fp.close()
>>>

 

3.注意点

oread, readline, readlines 的区别:

·read 是读整个文件并以字符串形式返回,

·readline是每次读一行并以字符串的形式返回,

·readlines是读整个文件并以列表形式返回。

o文件open以后记得close