码迷,mamicode.com
首页 > 编程语言 > 详细

python学习笔记4-python文件操作

时间:2016-05-17 01:04:11      阅读:195      评论:0      收藏:0      [点我收藏+]

标签:python学习笔记4-python文件操作

python文件操作

open

r:以读方式打开

w:以写方式打开

a:以追加模式

r+:读写模式

w+:读写模式(参见w)

a+:读写模式(参见a)

rb:以二进制读模式打开

wb:以二进制写模式打开(参见w)

ab:以二进制追加模式打开(参见a)

rb+:以二进制读写模式打开(参见r+)

wb+:以二进制读写模式打开(参见w+)

ab+:以二进制读写模式打开(参见a+)

with open


使用for循环遍历文件

打开文件

[root@localhost ~]# vim forread.py
#!/usr/bin/python
fd=open(‘/tmp/tmp.txt‘)
for line in fd:    #或者使用for line in fd.readlines(): readlines()创建的按行的列表,文件如果是1G,占用内存大
    print line,  #使用,
[root@localhost ~]# python forread.py 
daviddavid1
david2
david3


使用while循环遍历文件

打开文件

[root@localhost ~]# vim whileread.py 
#!/usr/bin/python
fd = open(‘/tmp/tmp.txt‘)
while True:
    line = fd.readline()
    if not line:
        break
    print line,
fd.close()
[root@localhost ~]# python whileread.py 
daviddavid1
david2
david3

#使用with open() as fd,不用fd.close(),with open下面的代码需要关键字,属于循环内容
[root@localhost ~]# vim whileread.py 
#!/usr/bin/python
with open(‘/tmp/tmp.txt‘) as fd:
    while True:
        line = fd.readline()
        if not line:
            break
        print line,
[root@localhost ~]# python whileread.py 
daviddavid1
david2
david3


打印mem total和mem free,使用startswith(a)判断字符串开头字母为a,返回true,否则返回false,split()分割字符串

[root@localhost ~]# cat /proc/meminfo 
MemTotal:         502092 kB
MemFree:           10656 kB
Buffers:          131744 kB
Cached:           236908 kB
SwapCached:           64 kB
[root@localhost ~]# vim memory.py
#!/usr/bin/python
with open (‘/proc/meminfo‘) as fd:
    for line in fd:
        if line.startswith(‘MemTotal‘):
            total=line.split()[1]
        if line.startswith(‘MemFree‘):
            free=line.split()[1]
print total,free
[root@localhost ~]# python memory.py
502092 9156

本文出自 “梅花香自苦寒来!” 博客,请务必保留此出处http://daixuan.blog.51cto.com/5426657/1774082

python学习笔记4-python文件操作

标签:python学习笔记4-python文件操作

原文地址:http://daixuan.blog.51cto.com/5426657/1774082

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!