python基础:文件

文件

打开文件

open()函数

#获取文件句柄
f=open("D:\haha.txt")
#读取文件数据
data=f.read()
#打印读取的内容
print(data)
f 又叫文件句柄,它包含文件的文件名、文件的字符集、文件的大小、文件在硬盘上的起始位置若想再次读文件,实际是不可以的。因为在文件中 ,维护一个类似文件指针的一个东西,这个文件指针类似于我们平时操作文件时的光标的东西,所以当第1次读文件时,文件指针已经指向最后一个位置,所以第2次再去读取的时候,是从最后一个位置开始读取的,所以读取的为空。那怎么再重新读取数据?把光标移动到开始位即可。
文件的打开模式

只写

(1)w :覆盖原有内容

(2)a: 在末尾追加写入,不覆盖原有内容

只读

read()读全部

f=open("D:\haha.txt","r",encoding="utf-8")
data=f.read()
print(data)
>>>
aaaa  ppppp
bbbb
cccc
dddd
eeee
ffff

readline() 只读一行

f=open("D:\haha.txt","r",encoding="utf-8")
data=f.readline()
print(data)
>>>
aaaa  ppppp

readlines()读取全部,把文件中的每一行作为一个元素形成一个列表

f=open("D:\haha.txt","r",encoding="utf-8")
data=f.readlines()
print(data)
>>>
[‘aaaa  ppppp\n‘, ‘bbbb\n‘, ‘cccc\n‘, ‘dddd\n‘, ‘eeee\n‘, ‘ffff\n‘]

 应用:

1、读前几行

f=open("D:\haha.txt","r",encoding="utf-8")
for i in range(5):
    data = f.readline()
    print(data)>>>

aaaa ppppp

bbbb

cccc

2、第3行内容不显示,用---***---代替

for j,k in enumerate(f.readlines()):
    if j==2:
        print("---***---")
        continue
    print(k)
>>>输出
aaaa  ppppp
bbbb
---***---
dddd
eeee
ffff

以上f.readlines()已经先把文件读到内存,然后再循环。文件小无所谓,但是文件大时,就得等很久,而且会容易把内存撑爆。

改变该方式的方法:读一行,存一行,打印一行。

虽然达到读取文件的的目的,但是都是将内容读取到内存中,若文件小则无所谓,但是对于大文件,比如200G,则内存会被,所以不适合。读一行,存一行。打印一行,只保存一行内容到内存中。

迭代取文件内容:

for i in f:
    print(i)
>>>
aaaa  ppppp
bbbb
cccc
dddd
eeee
ffff


文件修改

文件修改思路2种,如下:

第一个 vim: 把文件内容先全都加载到内存里,修改的时候是在内存里修改的。这种情况不需要新建文件。但是文件如2g一样大,就会有问题

第二个  打开文件修改完了,加载到新文件里。

思路:边读边写,如果该行不是需要修改的,就直接写到新文件里,如果该行是需要修改的,就先修改,修改完了再写到新文件 里

# -*- coding:utf-8 -*-
f=open("yes.txt",‘r‘)
f_new=open("yes_new.txt","w")
for line in f:
    if "太阳" in line:
       line=line.replace("太阳","sun")
    f_new.write(line)>>>>>>>>>>

我爱北京天安门
天安门上sun升
毛主席

时间: 2024-10-17 12:37:25

python基础:文件的相关文章

python基础-文件读写'r' 和 'rb'区别

一.Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 1.文件使用方式标识 'r':默认值,表示从文件读取数据.'w':表示要向文件写入数据,并截断以前的内容'a':表示要向文件写入数据,添加到当前内容尾部'r+':表示对文件进行可读写操作(删除以前的所有数据)'r+a':表示对文件可进行读写操作(添加到当前文件尾部)'b':表示要读写二进制数据 2.读文件 进行读文件操作时,直到读到文档结束符(EOF)才算读取到文件最后,Python会认

python基础(文件输入/输出 内建类型 字典操作使用方法)

本文主要介绍了python基础入门,包括文件输入/输出.内建类型.字典操作等使用方法 一.变量和表达式 代码如下: >>> 1 + 1 2>>> print 'hello world' hello world>>> x = 1               >>> y = 2>>> x + y3 Python是强类型语言,无法根据上下文自动解析转换成合适的类型. Python是一种动态语言,在程序运行过程中,同一个变量

Python基础 - 文件处理(上)

读写文件, 文件备份, 上传资料这些操作应该是大家日常工作中每天都要做的事情. 而文件呢, 又有不同的类型(后缀名), 比如 .txt, .xls, .xlsx, .csv, .json, .sql .... 等等各种文件. 在我日常的数据工作中, 读取文件数据, 处理, 写入文件这样的操作几乎是每天都要做的事情. 我们的从编程入门的角度来讲, 文件处理算是一个最能快速应用到工作的了. 尤其是 不同编程的小伙伴, 如果要是学会了文件处理, 那绝对能大幅度提高工作效率的. 突然想吐槽一下 文件处理

课堂笔记:Python基础-文件操作

对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. 起来独自绕阶行. 人悄悄,帘外月胧明. 白首为功名,旧山松竹老,阻归程. 欲将心事付瑶琴. 知音少,弦断有谁听. f = open('小重山') #打开文件 data=f.read()#获取文件内容 f.close() #关闭文件 注意 :在Windows系统中,hello文件是utf8保存的,打开文件时open函数是通过操作系统打开的文件,而win操

Python基础-文件操作

1. 文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 语法 open(filename, mode) 实例 2. 文件打开模式 r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内容:] a,追加模式.[可读:   不存在则创建:存在则只追加内容:] "+" 表示可以同时读写某个文件 r+,可读写文件.[可读:可写:可追加] w+,写读 a+,同a "U"表示在读取时,可以将 \r \n \r\n自动转换

python基础---文件处理

文件处理 f=open('文件','r')         打开一个文件 f.close()                关闭文件,相当于保存 1.字符编码 在文件处理过程中,首先有一个重要的概念,就是字符编码 字符编码:把人类的字符编译成计算机能认识的数字 字符编码表:就是一张字符与数字对应关系的表 ascii gbk utf-8          (硬盘中常用编码) unicode       (内存中常用编码) unicode ---->encode('utf-8') 编码---->

python基础-文件处理与函数

1. 文件处理 1.1 文件处理流程 1.打开文件,得到文件句柄并赋值给一个变量 2.通过句柄对文件进行操作 3.关闭文件 1.2 文件读取模式r r文本模式的读,在文件不存在,不会创建新文件 f = open('a.txt','r',encoding='utf-8') f.readable() # 判读文件是否可读 f.writable() # 判读文件是否可写 f.readline() # 一次读取一行 f.readlines() # 一次读取所有值 f.close()  1.3 文件读取模

python 基础 文件编辑

一.打开文件 open函数,该函数用于文件处理 1.文件句柄  = open('文件路径', '模式') 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 打开文件的模式有: r,只读模式[默认] w,只写模式[不可读:不存在则创建:存在则清空内容:] x, 只写模式[不可读:不存在则创建,存在则报错] a, 追加模式[可读:   不存在则创建:存在则只追加内容:] ‘+’表示可以同时读写某个文件 r+,读写[可读,可写] w+,写读

python基础--文件夹处理

1.获取当前文件目录 import os print(os.path.abspath(__file__)) >>: D:\PycharmProjects\untitled2\os_sys.py 2.获取当前文件的文件夹,dirname)()用于切割目录,返回去掉文件名后的目录名 import os print(os.path.dirname(os.path.abspath(__file__))) >>: D:\PycharmProjects\untitled2 原文地址:http:

第三章 Python基础——文件操作&函数 续

3.6函数进阶 名称空间:name space 例:若变量X=1,1存放于内存中,那存放X与1绑定关系的地方就叫做名称空间. 名称空间共三种,分别如下: locals:是函数内名称空间,包括局部变量和形参 globals:全局变量,函数定义所在模块的名字空间 builtins:内置模块的名字空间 不同变量的作用域不同就是由于这个变量所在的命名空间决定的. 作用域即范围: 全局范围:全局存活,全局有效 局部范围:临时存活,局部有效 注:查看作用域方法 globals(),locals() 作用域查