文件操作是在内存中进行操作的,因为文件是存储在内存中的.

open函数,该函数用于文件处理:

操作文件时,一般需要经历如下步骤:

(1)打开文件;

(2)操作文件

一、打开文件

文件句柄 = open("文件路径","模式")

打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。

打开文件的模式有:

(1)r,只读模式(默认);

(2)w,只写模式。【不可读;不存在则创建;存在则删除内容;】

(3)a,追加模式。【可读;   不存在则创建;存在则只追加内容;】

"+" 表示可以同时读写某个文件

(1)r+,可读写文件。【可读;可写;可追加】;

(2)w+,写读;

(3)a+,同a

"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)

(1)ru

(2)r+u

"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)

(1)rb      (2)wb         (3)ab

    二、操作

1.def close(self, *args, **kwargs):

    # real signature unknown 关闭文件

    pass

2.def fileno(self, *args, **kwargs):

     # real signature unknown 文件描述符

    pass

3.def flush(self, *args, **kwargs):

    # real signature unknown 刷新文件内部缓冲区

    pass

  4.def isatty(self, *args, **kwargs):

     # real signature unknown 判断文件是否是同意tty设备

    pass

5.def read(self, *args, **kwargs):

    # real signature unknown 读取指定字符的数据

    pass

打开一个文件,read()是按照字符来进行读取的。读取文件的信息,每次读取多少字符。

f = open("file","r",encoding="utf-8")
    #f.write("耿ad56465645")
    print(f.read(2))
    f.close()

运行结果如下:

耿a

6.def readable(self, *args, **kwargs):

    # real signature unknown 是否可读

    pass

7.def readline(self, *args, **kwargs):

     # real signature unknown 仅读取一行数据

    pass

f = open("file","r",encoding="utf-8")
    ret = f.readline()
    print(ret)
    f.close()
    readline()是读取文件的第一行,仅读取文件的第一行,并且形成一个字符串。

  """

耿ad56465645
  长123666
  张dadaebdadojou

"""

运行结果如下:

耿ad56465645

8.def seek(self, *args, **kwargs):

    # real signature unknown 指定文件中指针位置

    pass

与tell()经常一起使用,放置文件指针,告诉文件从哪里进行读取。

f = open("file","r",encoding="utf-8")
    f.seek(3)
    print(f.read(3))
    #print(f.tell())
    f.close()

seek()是按指针放置文件读取的位置,按照字节进行放置。tell()看文件读取到那里。

9.def seekable(self, *args, **kwargs):

    # real signature unknown 指针是否可操作

    pass

10.def tell(self, *args, **kwargs):

    # real signature unknown

    获取指针位置

    pass

11.def truncate(self, *args, **kwargs):

    # real signature unknown 截断数据,仅保留指定之前数据

    pass

我们知道,打开文件之后,我们使用seek()放置指针位置,read()读取指针后面的内容,而truncate()是截取指针之前的文件内容。

12.def writable(self, *args, **kwargs):

    # real signature unknown 是否可写

    pass

13.def write(self, *args, **kwargs):

    # real signature unknown

    写内容

    pass

14.def readlines(self, size=None): # real signature unknown; restored from __doc__

     读取所有数据,并根据换行保存值列表 """

day3 文件操作的更多相关文章

  1. Python之旅Day3 文件操作 函数(递归|匿名|嵌套|高阶)函数式编程 内置方法

    知识回顾 常见五大数据类型分类小结:数字.字符串.列表.元组.字典 按存值个数区分:容器类型(列表.字典.元组) 标量原子(数字.字符串) 按是否可变区分:可变(列表.字典) 不可变(数字.字符串.元 ...

  2. Day3 文件操作和函数

    一 文件操作 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 1.1打开文件读取内容 print(open("sounds","r", ...

  3. python3.x Day3 文件操作

    文件操作:操作文件实际是4步骤1.描述文件是哪个 2.打开文件 3.操作文件 4.关闭文件 1.打开文件使用open方法,代码举例: data=open("wait_you",en ...

  4. 跟着ALEX 学python day3集合 文件操作 函数和函数式编程 内置函数

    声明 : 文档内容学习于 http://www.cnblogs.com/xiaozhiqi/  一. 集合 集合是一个无序的,不重复的数据组合,主要作用如下 1.去重 把一个列表变成集合 ,就自动去重 ...

  5. Python——Day3知识点——文件操作

    一.打开文件 文件句柄 = open('文件路径', '模式') 打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作. 打开文件的模式有: r ...

  6. Day3 Python基础学习——文件操作、函数

    一.文件操作 1.对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过文件句柄对文件进行操作 关闭文件 #打开文件,读写文件,关闭文件 http://www.cnblogs.com/linha ...

  7. Python-字典、集合、字符编码、文件操作整理-Day3

    1.字典 1.1.为什么有字典: 有个需求,存所有人的信息 这时候列表就不能轻易的表示完全names = ['stone','liang'] 1.2.元组: 定义符号()t = (1,2,3)tupl ...

  8. day3之文件操作

    一,文件操作基本流程. # 1.打开文件,产生文件句柄 # 2.操作文件句柄 # 3.关闭文件句柄 # f1 = open('11.txt',encoding='utf-8', mode='r') # ...

  9. Learn day3 深浅拷贝/格式化/字符串/列表/字典/集合/文件操作

    1. pass break continue # ### pass break continue # (1) pass 过 """如果代码块当中,什么也不写,用pass来 ...

随机推荐

  1. 【乱搞】【CF1095E】 Almost Regular Bracket Sequence

    Description 给定一个长度为 \(n\) 的小括号序列,求有多少个位置满足将这个位置的括号方向反过来后使得新序列是一个合法的括号序列.即在任意一个位置前缀左括号的个数不少于前缀右括号的个数, ...

  2. Azure 上SQL Database(PaaS)Time Zone时区问题处理

    在Azure上面的PaaS时间都是以UTC时间为准(云的世界里基本上都是以UTC时间为标准的),所以以前在本地SQL Server上面常用的GetDate()方法会碰到问题,在中国获取的时间会被当前时 ...

  3. K8S Link

    https://www.cnblogs.com/linuxk/p/9783510.html https://www.cnblogs.com/fengzhihai/p/9851470.html

  4. vmware中无法ping通主机的问题

    虚拟机使用NAT方式运行一段时间后,发现无法ping通主机(物理机),显示错误如下 ipconfig如下 查看虚拟机中的网络连接,显示"未识别网络" 分析: 查看了网络上的一些资料 ...

  5. javaFX8主要特性

    javaFX8主要特性 JavaAPIs:javaFX是用Java代码写的库,包含一系列的类和接口.这个APIs可以友好的替换java虚拟机语言,比如:JRuby和Scala. FXML and 场景 ...

  6. Spring Boot 使用IntelliJ IDEA创建一个web开发实例(一)

    .新建项目File-->New-->Project-->Spring Initializr 点击Finish,一个Spring Boot web应用就创建好了.

  7. 【BZOJ】1834 [ZJOI2010]network 网络扩容

    [算法]网络流-最大流+最小费用最大流(费用流) [题解] 第一问跑最大流. 第二问: 原始边相当于费用为0的边,再原图(跑过最大流的图)基础上添加带费用的边,容量为k(相当于inf). 第一问最大流 ...

  8. 【CodeForces】679 A. Bear and Prime 100

    [题目]A. Bear and Prime 100 [题意]有一数字x,每次可询问一个数字y是否x的因子,最后输出数字x是否素数,要求询问次数<=20. [题解]容易发现[2,100]范围内的非 ...

  9. Broken Necklace

    Description 你有一条由N个红色的,白色的,或蓝色的珠子组成的项链(3<=N<=350),珠子是随意安排的. 这里是 n=29 的二个 例子: 1 2 1 2 r b b r b ...

  10. Hie with the Pie(POJ3311+floyd+状压dp+TSP问题dp解法)

    题目链接:http://poj.org/problem?id=3311 题目: 题意:n个城市,每两个城市间都存在距离,问你恰好经过所有城市一遍,最后回到起点(0)的最短距离. 思路:我们首先用flo ...