~~Python文件简单操作~~

进击のpython


Python文件操作



在说Python的文件操作之前

我们可以先思考一个问题

平时我们是怎么对电脑中的文件进行操作的呢?



打开电脑?找到文件?打开文件?读文件?修改文件?保存文件?关闭文件

对吧,这就是我们打开文件的基本流程

而 Python 打开文件的方式,也是这样的

打开电脑 ? f=open(filename) ? f.read() ? f.write() ? f.close()



f = open(filename):打开文件

f.read():读文件

f.write():写文件

f.close():保存并关闭


  • 文件打开模式

    这个概念可能会很陌生

    在word中,打开文件之后

    就可以对文件进行 读,写,修改等操作

    但是在python中,只能以一种模式操作文件

    需要确定文件打开模式,才能够进行相应操作

    r read 读模式

    w write 创建模式 ==如果硬盘里有相同名字的文件,就覆盖掉==

    a append 追加模式


  • 创建文件

    f = open("123.txt", mode="w")
    f.write("dajiahao woshipeiqi\n")
    f.write("zheshiwodemama\n")
    f.write("zheshiwodebaba\n")
    f.close()

没什么说的,很简单


  • 读取模式

    f = open("123.txt", mode="r")
    t = f.read()
    print(t)
    f.close()

(换个背景颜色)

还有个语法是 readline() 读一行 自己试试

因为文件只能以一种形式进行操作

那当我用读取模式来操作文件之后,调用创建呢?

f = open("123.txt", mode="r")
t = f.read()
print(t)
f.write("hahh")
f.close()

看到报错了吧?了解没?凑弟弟们!


  • 追加模式

    追加模式就是在文件尾部添加数据

    这么说可能不太好理解

    直接上例子吧

当我执行下面的语句

f = open("123.txt", mode="a")
f.write("这是追加模式")
f.close()

执行结果就是这样的:

如果我刚开始的光标在这个位置,再执行相同的语句,就是这种情况:

还看不懂?那就多执行几下看看

有灵性了没???(没有灵性就自己多操作两遍,看不如动手!)


  • 循环文件

    无论你想做什么,都要先打开文件

    你觉得我说的有没有道理?

    f = open("123.txt") # 默认模式是read
    for line in f :
        print(line)
    f.close()

欸?这就有问题了,我文件的里面也没有换行啊,怎么打印出来有换行啊?

其实在每行的末尾,他都默认的添加一个\n来进行换行

不信?

f = open("123.txt")
# for line in f :
#     print(line)
print(f.readlines())
f.close()

看到了吗?

那遇到问题,怎么解决呢?

可以这样:print("",strip())

自己试试!


  • 需求

    下面这个文件,我想输出身高超过175的怎么办?

可以利用循环来做

f = open("123.txt")
for line in f:
    line = line.split()
    if int(line[2]) > 175:
        print(line)
f.close()

我还想对体重有要求,这就不用写了吧!


  • 语句

    seek(x) 光标移动,走x个字节

    flush()强制将缓存刷到硬盘

    tell()返回光标位置,也是字节单位

    truncate()指定长度截断文件,指定长度,从开头到A;不指定就是A到尾


  • 混合模式

    没想到吧,其实除了三种方法以外,还有另外的三种模式。

    r+ 读写,能写能读,跟追加一样

    w+ 写读,没什么屁用

    a+ 追加读,光标在文件尾部,全是追加模式

    自己用,没啥说的,混子,更加好用


  • 问题

    r+ 覆盖的问题

    可以将文件放在内存中,然后对文件进行增删改查,最后覆盖到硬盘上

    那不是占内存吗?有没有别的方法?

    那你不想占内存,就得占硬盘

    边读边写边存

    import os
    
    old_file = "123.txt"
    new_file = "456.txt"
    
    f_old = open(old_file,"r")
    f_new = open(new_file, "w")
    
    old_str = "shenzhen"
    new_str = "深圳"
    
    for line in f_old:
        if "shenzhen" in line:
            line = line.replace(old_str, new_str)
        f_new.write(line)
    
    f_old.close()
    f_new.close()
    
    os.remove(old_file)
    os.rename(new_file,old_file)

    别问os干什么的,有能耐你难为百度去啊…………


*有个练习*
*还挺简单*

~~Python文件简单操作~~

原文地址:https://www.cnblogs.com/jevious/p/11126457.html

时间: 2024-10-29 00:45:56

~~Python文件简单操作~~的相关文章

python文件相关操作

Python文件相关操作 打开文件 打开文件,采用open方法,会将文件的句柄返回,如下: f = open('test_file.txt','r',encoding='utf-8') 在上面的代码中,open()方法进行打开文件等相关操作,open()方法其中第一个参数是要打开的文件的文件路径,第二个参数是对要打开文件要执行的权限,第三个参数是文件采用字符编码. 而open()方法返回的内容叫做文件句柄.我们可以打印返回的文件句柄来看下: f = open('test_file.txt','r

Java-IO读写文件简单操作2

承接Java-IO读写文件简单操作,这里再次写个小demo巩固一下知识点. 代码文件:demo.java package com.test.demo; import java.io.*; public class demo { public static void main(String[] args) { // 写文件 writeFile(); // 读文件 readFile(); } /** * @function 读文件 * @param * @return void * @date 20

Python 文件常见操作

[python] view plain copy print? # -*-coding:utf8 -*- ''''' Python常见文件操作示例 os.path 模块中的路径名访问函数 分隔 basename() 去掉目录路径, 返回文件名 dirname() 去掉文件名, 返回目录路径 join() 将分离的各部分组合成一个路径名 split() 返回 (dirname(), basename()) 元组 splitdrive() 返回 (drivename, pathname) 元组 sp

12、python文件的操作

前言:本文主要介绍python中文件的操作,包括打开文件.读取文件.写入文件.关闭文件以及上下文管理器. 一.打开文件 Python open() 方法用于打开一个文件,并返回文件对象,在对文件进行处理过程都需要使用到这个函数,如果该文件无法被打开,会抛出一个OSError. 使用方法:open(参数1,参数2,参数3) 参数1:文件名 参数2:打开的模式 参数3:编码方式(encoding = "utf-8") 模式 描述 r 以只读方式打开文件,文件指针默认放在文件开头 rb 以二

python 文件读写操作

读open打开文件后一定要记得调用文件对象的close()方法,用try/finally语句来确保最后能关闭文件不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法file_name = open('test.file')读取所有内容file_object = open('thefile.txt')try:all_the_text = file_object.read( )finally:file_object.close( )读固

python文件的操作

首先看看在pycharm输入文件句柄,怎样显示他的定义 f = open('student_msg', encoding='utf-8', mode='a+') # 打开一个文件,赋值给f print(type(f), f) # f文件句柄是属于一个类叫<class '_io.TextIOWrapper'>,也是可迭代对象.(io ---> input and out) print(dir(f)) # 打印这个类的所有属性和方法 >>['_CHUNK_SIZE', 'clas

python win32 简单操作

源由 刚开始是帮朋友做一个按键精灵操作旺信的脚本,写完后各种不稳定:后来看到python可以操作win32相关的api,恰好这一段时间正在学习python,感觉练手的时候到了~~~ 下载 要注意Python版本及位数,否则会安装失败 直接到上面的地址去找合适的版本下载安装,已包含其它的工具 下载的已经是可执行文件,直接执行即可 https://sourceforge.net/projects/pywin32/ 获取句柄的方式 VC或VS工具里面自带SPY++,可以获取句柄信息, 这个你没有,请看

linux文件简单操作

1.vim常用快捷键 dd/ndd 删除1行/删除n行 yy/nyy  复制1行/复制n行 p 粘贴 u 撤销 dw/ndw 删除一个单词/删除n个单词 G /nG  到一行尾/第n行尾 :!+命令  执行命令 :w  file 写一个文件 :w >>file 追加到 :r file   读一个文件 :r ! ls 将ls命令结果读入 :e! 回到最初状态 vim -o/-O file1 file2 分割窗口 2.查找文件 which 查找可执行命令 whereis 查找可执行文件,列出文件位

python 文件常用操作

1.打开文件 open()打开文件并返回文件对象,参数很多,一般用前两个,open(file,mode).file可以是文件名或者文件目录下的文件名,mode为打开的方式,可以是只读.写入.追加写入.可读可写等等. 打开某个文件,需要知道该文件的目录,或者该文件就在当前的工作目录下. (1)包含目录的文件名(不修改当前工作目录) >>> f=open('E:/python/record.txt') #或者f=open(r'E:\python\record.txt') #或者f=open(