文件

29 篇文章 0 订阅

文件的读取

open函数
f=open('/tmp/passwd')
print f   ##f是一个文件对象,打印出的时f的地址以及模式
print f.name ##打印出文件名
print f.mode ##open函数没有指定mode时,默认r模式
print f.read()  ##读取文件内容(mode为r只读模式)
f.close()   ##关闭文件
print f.closed   ##返回值为True表示文件已经关闭
结果:
<open file '/tmp/passwd', mode 'r' at 0x7fd130dbc6f0>
/tmp/passwd
r
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
...(省去很多行)
True

关于文件打开的模式(mode)

r:
文件不存在时,报错error
只能读,不能写

r+:
文件不存在,报错error
可以读写
在打开文件时,不清除原有内容

w:
只能写,不能读
文件不存在,创建文件
在打开文件时,清除原有内容

w+:
可以读写
文件不存在,创建文件
在打开文件时,清除文件原有内容

a:
文件不存在,创建文件
在打开文件时,不清除原有内容
不能读,只能写

a+:
文件不存在,创建文件
在打开文件时不清除元内容
可以读,可以写
对于二进制文件有给以上各个模式后加上b即可
如:r -->>rb
    r+ --->>rb+
    w---->>wb
    w+---->>wb+
    ...
f.seek()方法

f.seek()方法:
需要传两参数:第一个参数:偏移量,为正,向右偏移,为负数,向左偏移,为0,不偏移
第二个参数:0:指向文件开头;1:当前位置;2:文件末尾
f.tell()查看当前位置

文件与文件的路径

os模块

先看示例:(不管文件是否真的存在)

import os
print os.path.join('usr','bin','ls')
---结果
usr/bin/ls

import os
myfiles=['account.txt','details.csv','invite.docs']
for filename in myfiles:
    print os.path.join('/tmp',filename)
---->>结果
/tmp/account.txt
/tmp/details.csv
/tmp/invite.docs

列出/var/log/的所有文件

import os
print os.listdir('/var/log')

查看当前系统的路径分隔符

print os.path.sep
/

查看文件大小

print os.path.getsize('/etc/passwd')
print os.path.abspath('passwd') ##查看绝对路径
print os.path.dirname('/etc/passwd') ##查看目录名
print os.path.basename('/etc/passwd')##查看文件名
print os.getcwd() ##查看当前工作环境路径
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值