一、file/open 内置函数

  • file函数的方法:

注:file 和 open的用法和功能相同这里只对file进行分析

file(‘filename’,’mode’)

file(‘filename’,’mode’).write(‘data’) 数据写入文件

file(‘filename’,’mode’).read()

file(‘filename’,’mode’).flush() 文件刷新

file(‘filename’,’mode’).close() 文件关闭保存

  • mode参数详解,如下表所示

例:写入文件文件并读取文件

#!/usr/bin/env python
#-*- coding:utf-8 -*-
#创建一个可写的file_write句柄
file_write = file('test_file','w')
#创建一个只读的文件句柄
file_read = file('test_file','r')
#将数据写入文件
file_write.write('file test hello word')
#写入文件后关闭file_write句柄
file_write.close()
#从file_read句柄中读取数据并打印
for i in file_read:
print i
#关闭file_read句柄
file_read.close()

二、fileinput 模块

#导入fileinput模块

import fileinput

#返回当前行号

fileinput.filelineno()

#返回当前正在读取的文件的名称。

fileinput.filename()

#input方法详解

fileinput.input(files=文件名, inplace=0, backup='', bufsize=0, mode='r')

  files 文件名

  inplace 是否写入文件

  backup 如果替换文件之前要备份文件则指定文件名后缀

  mode 指定打开模式 默认为只读(经测试默认也是可以写的)

#如果读取的是第一行则返回True,否则返回Flase

fileinput.isfirstline()

#关闭序列

fileinput.close()

例:

  将web.conf文件中的Alan替换为Lisa

# cat web.conf

www.Alan.com

#vim input.py

#编辑脚本文件代码内容如下

#!/usr/bin/env python
import fileinput #导入fileinput 模块
for i in fileinput.input('web.conf',inplace=1,backup='_bak'):
print i.replace('Alan','Lisa') //一定要输出不然是没有数据写入文件的
fileinput.close()

(注:上面input中的参数大意为 打开文件web.conf 并开启输出写入文件功能 执行替换之前先将文件备份为后缀为_bak的文件)

#执行脚本

#./input.py

#查看当前目录会发现生成了一个web.conf_bak备份文件

#ls

web.conf

web.conf_bak

#对比两个文件可以发现web.conf已经被替换并且已经备份为web.conf_bak

#cat web.conf

www.Lisa.com

#cat web.conf_bak

www.Alan.com

Python基础【第十一篇】文件操作(file()、open()方法和fileinput模块)的更多相关文章

  1. python基础之元组、文件操作、编码、函数、变量

    1.集合set 集合是无序的,不重复的,主要作用: 去重,把一个列表变成集合,就可以自动去重 关系测试,测试两组数据的交集,差集,并集等关系 操作例子如下: list_1 = [1,4,5,7,3,6 ...

  2. Python之路:Python 基础(三)-文件操作

    操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开文件 文件句柄 = file('文件路径', '模式') # 还有一种方法open 例1.创建文件  f = file('myfile. ...

  3. Python基础(七)-文件操作

    一.文件处理流程 1.打开文件,得到文件句柄赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 二.基本操作 f = open('zhuoge.txt') #打开文件 first_line = ...

  4. python基础 (编码进阶,文件操作和深浅copy)

    1.编码的进阶 字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码. 即先将其他编码的字符串解码(decode)成unicode,再从uni ...

  5. python基础(四)文件操作和集合

    一.文件操作 对文件的操作分三步: 1.打开文件获取文件的句柄,句柄就理解为这个文件 2.通过文件句柄操作文件 3.关闭文件. 1.文件基本操作: f = open('file.txt','r') # ...

  6. python3速查参考- python基础 5 -> 常用的文件操作

    文件的打开方式 打开方式 详细释义 r  以只读方式打开文件.文件的指针会放在文件的开头.这是默认模式. rb  以二进制只读方式打开一个文件.文件指针会放在文件的开头. r+  以读写方式打开一个文 ...

  7. python基础(三)-- 文件操作

    一. 文件操作: 对文件操作流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 现有文件如下 : Somehow, it seems the love I kn ...

  8. python基础--字符编码以及文件操作

    字符编码: 1.运行程序的三个核心硬件:cpu.内存.硬盘 任何一个程序要是想要运算,肯定是先从硬盘加载到当前的内存中,然后cpu根据指定的指令去执行操作 2.python解释器运行一个py文件的步骤 ...

  9. python基础-第十一篇-11.2DOM为文档操作

    文档对象模型(DOM)是一种用于HTML和XML文档的编程接口 节点类型 12种节点类型都有NodeType属性来表明节点类型 节点关系 <div id="t"> &l ...

随机推荐

  1. Sort--冒泡排序

    冒泡排序 public class BubbleSort { public static void bubblesort(int[] a){ for(int i=0;i<a.length-1;i ...

  2. Android下NFC的简单使用

    现在很多手机已经配备了NFC(Near Field Communication 近场通信)的功能,我就为此专门研究过,可以到本文末尾下载源代码. Android官方资料:http://develope ...

  3. jsp?echo

  4. hdu4587-TWO NODES(割点)

    #include <bits/stdc++.h> using namespace std; ; ; struct Edge { int to, next; } edge[M]; int h ...

  5. POJ3468--A Simple Problem with Integers(Splay Tree)

    虽然有点难,但是这套题都挂了一个月了啊喂…… 网上模板好多……最后还是抄了kuangbin聚聚的,毕竟好多模板都是抄他的,比较习惯…… POJ 3468 题意:给n个数,两种操作,区间整体加一个数,或 ...

  6. semget() semop()

    semget() 可以使用系统调用semget()创建一个新的信号量集,或者存取一个已经存在的信号量集: 系统调用:semget();原型:intsemget(key_t key,int nsems, ...

  7. 射频识别技术漫谈(7)——ID卡【worldsing笔记】

    ID(Identification)是识别的意思,ID卡就是识别卡.ID卡包含范围广泛,只要具有识别功能的卡片都可以叫ID卡,例如条码卡,磁卡都可以是ID卡,我们这儿说的当然是射频识别卡. 射频ID卡 ...

  8. Packetbeat协议扩展开发教程(3)

    原文链接:http://elasticsearch.cn/article/54 书接上回:http://elasticsearch.cn/article/53 前面介绍了Packetbeat的项目结构 ...

  9. (10.09作业)学生选课数据库SQL语句练习题

  10. 按要求编写一个Java应用程序: (1)定义一个类,描述一个矩形,包含有长、宽两种属性,和计算面积方法。 (2)编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性, 和计算体积的方法。 (3)编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、 宽、高,输出其底面积和体积。

    package jvxing; public class Jvxing { //成员变量 private double width; private double chang; public doub ...