open()函数用来读取、写文件

参数解释:
r:只读
w:只写,此时进行读,会报错
a:只追加
r+:可读可写
w+:可读可写
a+:可读可写
rb\rb+\wb\wb+\ab\ab+ 针对二进制文件,单元测试会用到

注意:使用open打开文件时,需要写全路径和文件名。此处因为和当前py文件在同一个目录,所以不用写多余的路径

拓展:怎么移动光标、指定读取的行数

1.r只读模式打开:

传入完整路径,获取文件
file = open("python11.txt") # 默认是以只读模式r打开

读取文件内容
res = file.read()

打印内容
print(res)

2.r+可读可写模式:

1)先写再读:从文件开头覆盖写入,此时光标到了写的内容之后,所以进行读操作时,只会读取原本
内容中未被覆盖的部分
2)先读再写:从文件开头开始读取,读取之后,光标到了文末,此时写操作会在文末继续往后写
不会覆盖原来的内容,相当于追加
3)写入或读取中文时注意编码格式

获取文件:文件内容存在中文时需要使用encoding="utf-8"
file = open("python11.txt", "r+", encoding="utf-8")

打印文件内容
print(file.read())

写入内容
new = file.write("愿有人陪你立黄昏")
print(file.read())

3.w、w+模式:最好不要使用

1)如果文件存在,会先清空文件内容再写入
2)如果文件不存在,会新建
3)读取文件时注意,因为文件路径和名称是写在双引号内的,所以是一个字符串

4.a、a+模式:

1)如果文件存在,指针放在文末,以追加的方式写入
2)如果文件不存在,会新建文件写入

with open("hero.txt", "a+", encoding="utf-8") as file:
file.write("\n冲冲冲")

5.换行写入:在写入的内容前加上\n

with open("my_hero.txt", "a+") as file:
file.write("the best is yet to come,just waiting")
file.write("\ngood girl good luck")
file.write("\nwish you to be better")

6.写多行

with open("my_hero.txt", "a", encoding="utf-8") as file:
file.writelines(["\nhello wherever you are", "\nare you dancing", "\n当然不"])

7.按行读取文件:

readlines()读取所有行,返回列表
readline()读取第一行

open()操作文件的更多相关文章

  1. 虚拟机出现“操作文件.PhysicalDrive1失败”的解决方法

    今天打算利用U盘给虚拟机装系统做实验,中途遇到了"操作文件.PhysicalDrive1失败"的错误,试了网上的方法都没有成功,最后自己试了很久总算弄出来了.鉴于本人的基础水平有限 ...

  2. 【Python】[IO编程]文件读写,StringIO和BytesIO,操作文件和目录,序列化

    IO在计算机中指Input/Output,也就是输入和输出. 1.文件读写,1,读文件[使用Python内置函数,open,传入文件名标示符] >>> f = open('/User ...

  3. python基础知识---操作文件

    一.打开文件  open()函数 open函数返回一个文件对象. 用法:open('文件名','模式') 打开文件的模式有: r,只读模式(默认). w,只写模式.[不可读:不存在则创建:存在则删除内 ...

  4. 操作文件方法简单总结(File,Directory,StreamReader,StreamWrite )

    对于文件夹,文档的操作一直处于一知半解状态,有时间闲下来了,好好练习了一把,对文档,文件的操作有了一个基本的认知, 若要深入了解,还是得通过实际的项目才行了,好了废话不多说,上酸菜!! 注:红色标题为 ...

  5. C#操作文件夹及文件的方法的使用

    本文收集了目前最为常用的C#经典操作文件的方法,具体内容如下:C#追加.拷贝.删除.移动文件.创建目录.递归删除文件夹及文件.指定文件夹下面的所有内容copy到目标文件夹下面.指定文件夹下面的所有内容 ...

  6. python读写操作文件

    with open(xxx,'r,coding='utf-8') as f:   #打开文件赋值给F ,并且执行完了之后不需要 f.close(). 在Python 2.7 及以后,with又支持同时 ...

  7. javaScript中利用ActiveXObject来创建FileSystemObject操作文件

    注:如果用javascript读本地文件,遇到安全问题. 需在浏览器中进行设置,如下:     工具—> Internet选项->安全->自定义级别->启用“没有标识为安全的A ...

  8. Python操作文件、文件夹、字符串

    Python 字符串操作 去空格及特殊符号 s.strip().lstrip().rstrip(',') 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sSt ...

  9. golang操作文件的四种方法

    golang追加内容到文件末尾 字数349 阅读54 评论0 喜欢2 golang读写文件,网上很多教程了但是今天有个需求,想要把内容追加写到文件末尾google了好久,没有查到研究了一会儿file库 ...

  10. .net(C#)操作文件的几种方法汇总

    .net(C#)操作文件的几种方法汇总 System.IO命名空间下类的用法:在System.IO名称空间中包含了用于文件输入输出的主要类.File:实用类,提供许多静态方法,用于移动.复制和删除文件 ...

随机推荐

  1. JQuery获取当前屏幕的高度宽度的实现代码

    <script type="text/javascript"> $(document).ready(function() { alert($(window).heigh ...

  2. mysql 创建帐号出现 Access denied for user 'root'@'localhost'错误(转载)

    从供应商那边接手一个MySQL数据库(数据库版本为5.7.21 MySQL Community Server (GPL)),在创建账号时遇到了“ERROR 1044 (42000): Access d ...

  3. uboot对Flash和DDR的分区管理

    1.uboot阶段对Flash的分区 (1).所谓分区,就是对Flash进行分块管理. (2).PC机等产品中,因为大家都是在操作系统下使用硬盘的,整个硬盘由操作系统统一管理,操作系统会使用文件系统帮 ...

  4. C++随机迷宫生成[转载]

    原文:http://tieba.baidu.com/p/2596809144 #include<iostream.h> #include"time.h" #includ ...

  5. Python 学习笔记:Python 中单引号(')、双引号(")、三引号(''',""")的使用以及不转义字符串

    一.单引号.双引号及三引号: 参考博客:https://www.cnblogs.com/chenhuan001/p/8006017.html 以上四种形式都是 Python 表示字符串的方式,具体的效 ...

  6. 十大经典排序算法(Javascript实现)

    前言 总括: 本文结合动图详细讲述了十大经典排序算法用Javascript实现的过程. 原文博客地址:十大经典排序算法 公众号:「菜鸟学前端」,回复「666」,获取一揽子前端技术书籍 人生有情泪沾衣, ...

  7. Linux mint OS

    Linux mint OS Ctrl+Alt left or right : # Change workspace Goldendict + Goldendict-wordnet # Dict for ...

  8. Debian8.8下的VIM的配置文件

    传动们:http://blog.csdn.net/gatieme/article/details/43883261?spm=5176.100239.blogcont47532.3.yXiEuB 感觉挺 ...

  9. ThreadPoolExecutor自定义线程池

    1.ThreadPoolExecutor创建线程池的构造函数 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long ...

  10. POJ-2528 Mayor's posters(线段树区间更新+离散化)

    http://poj.org/problem?id=2528 https://www.luogu.org/problem/UVA10587 Description The citizens of By ...