1.文本文件 ,二进制文件

    二进制文件:用vi 打开一个图片,MP3,视频

    

    

2.文件打开方式

#             重定向        文件不存在    文件存在
r error 文件开头
w 相当于 > 创建 覆盖,删除以前的内容
a 相当于 >> 创建 追加到末尾

              

    

3 .读取文件内容

  1)f.read()

In [1]: f = open("test.py","r")

In [2]: f.read()
Out[2]: 'imprordfnsaf \ndsafdsa \nfdsaf \n\n' In [3]: f.read(1)
Out[3]: '' In [3]: f.read(1)
Out[3]: '' #### 文件指针已经到文件末尾了

  

  2)f.read(1)  f.read(10)

In [1]: f = open("test.py","r")

In [2]: f.read(1)        #一个字符一个的读
Out[2]: 'i' In [3]: f.read(1)
Out[3]: 'm' In [5]: f.read(10) #10个
Out[5]: 'rordfnsaf ' In [10]: f.read(10) #文件指针到末尾了
Out[10]: '' In [11]: f.close()

4.文件写

In [12]: f = open("test1.py","w")

In [13]: f.write("asdf")
Out[13]: 4 In [14]: f.write("\nasdf")
Out[14]: 5 In [15]: f.write("\naaa")
Out[15]: 4 In [16]: f.close() ###3 文件内容
  asdf
  asdf
  aaapython

5.小程序:

  1)给文件写入东西

 #1.创建一个文件
f = open("love.py","w") #2.写入东西
f.write("waiting me my love") #3.关闭文件
f.close()

  2)读取文件内容

 #1.打开文件
f = open("love.py","r") #2.读取文件
result = f.read()
print(result) #要有输出 #3.关闭文件
f.close()

6.应用1:复制文件流程

    

    

  1)版本1:大框架

 #1.获取用户要复制的文件名

 #2. 打开原文件
f1 = open("aaa","r") #3.打开新文件
f2 = open("bbb","w") #4.读取原文件的内容
result = f1.read() #5。写到新文件中
f2.write(result) #6.关闭文件 f1.close()
f2.close()

  2)版本2:获取文件名

 #1.获取用户要复制的文件名
file_name = input("请输入文件名:")
#2. 打开原文件
f1 = open(file_name,"r") #3.打开新文件
f2 = open('file_name + "[附件]"',"w") #4.读取原文件的内容
result = f1.read() #5。写到新文件中
f2.write(result) #6.关闭文件 f1.close()
f2.close()

    

  3)版本3:如何获取输出正确的文件名

#1.获取用户要复制的文件名
file_name = input("请输入文件名:")
#2. 打开原文件
f1 = open(file_name,"r") #3.打开新文件
f2 = open(file_name + "[附件]","w") #new_file_name = file_name + "附件.py"
#f2 = open(new_file_name,"w") #4.读取原文件的内容
result = f1.read() #5。写到新文件中
f2.write(result) #6.关闭文件 f1.close()
f2.close()

  4)字符串操作,获取文件名

 #1.获取用户要复制的文件名
file_name = input("请输入文件名:")
#2. 打开原文件
f1 = open(file_name,"r") #3.打开新文件
#获取文件名 字符串操作
position = file_name.rfind(".")
new_file_name = file_name[0:position] + "[cp]" + file_name[position:] f2 = open(new_file_name,"w")
#4.读取原文件的内容
result = f1.read() #5。写到新文件中
f2.write(result) #6.关闭文件 f1.close()
f2.close()

day 10 文件的更多相关文章

  1. Windows 10文件夹Shirt+鼠标右键出现“在此处打开命令窗口”

    Windows 10文件夹Shirt+鼠标右键出现“在此处打开命令窗口” Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directo ...

  2. Javaweb学习笔记10—文件上传与下载

    今天来讲javaweb的第10阶段学习.文件的上传与下载,今天主要说的是这个功能的实现,不用说了,听名字就是外行人也知道肯定很重要啦. 老规矩,首先先用一张思维导图来展现今天的博客内容.       ...

  3. Win 10 文件浏览器无法打开

    今天遇到个很奇怪的问题,文件浏览器File Explorer无法正常显示,点击打开后任务栏上已经显示打开了,但是屏幕上却看不到任何窗口,开始以为机子中了恶意的木马,然后就疯狂的查毒,然而并没有解决问题 ...

  4. python (10) 文件夹的创建与文件夹的删除

    有时需要在代码中对文件或者文件夹 进行删除,或者添加 导入的包:import os,shutil 新建文件夹 import os,shutil path = os.getcwd() #获得当前目录 # ...

  5. Linux学习笔记10——文件I/O之一

    UNIX系统中的大多数文件I/O只需要用到5个函数:open,read,write,lseek以及close 文件描述符 文件描述符是一个非负整数,所有打开的文件都通过文件描述符引用 文件描述符的变化 ...

  6. Hive(10)-文件存储格式

    Hive支持的存储数据的格式主要有:TEXTFILE .SEQUENCEFILE.ORC.PARQUET 一. 列式存储和行式存储 左边为逻辑表,右边第一个为行式存储,第二个为列式存储 1. 行式存储 ...

  7. python基础教程总结10——文件

    1.打开文件 open(name[mode[,buffing])    参数:  文件,模式,缓冲 1)name: 是强制选项,模式和缓冲是可选的 #如果文件不在,会报下面错误1 >>&g ...

  8. [Swift通天遁地]七、数据与安全-(10)文件的加密压缩和解压加密压缩

    ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...

  9. python基础(10):文件操作

    1. 初识文件操作 使⽤python来读写⽂件是非常简单的操作.我们使⽤open()函数来打开⼀个⽂件,获取到⽂ 件句柄,然后通过⽂件句柄就可以进⾏各种各样的操作了,根据打开⽅式的不同能够执⾏的操 作 ...

随机推荐

  1. centos虚拟机安装,配置静态ip可以访问网络

    centos安装过程中需要注意几个问题 1.选择安装的软件 默认选择的是mininal,应该选择GNEME Desktop 安装的过程中可以设置network 配置linux网络命令 具体配置 退出键 ...

  2. hdu 1874 Dijkstra算法

    先贴个网上找的比较通俗易懂的教程: 2.1Dijkstra算法(非负权,使用于有向图和无向图) Dijkstra算法是典型最短路算法,用于计算一个节点到其他所有节点的最短路径.主要特点是以起始点为中心 ...

  3. Http_load的安装和使用

    Http_load的安装和使用 http_load基于linux平台的一种性能测工具.以并行复用的方式运行,用以测试web服务器的吞吐量与负载,测试web页面的性能. 安装: 进入工作目录:#cd / ...

  4. UIWebView 获取网页标题

    - (void)webViewDidFinishLoad:(UIWebView *)webView { NSString *urlString = webView.request.URL.absolu ...

  5. 错误的另一个常见原因是默认的安全组规则。default security group默认情况下不允许ICMP(ping命令使用的协议)

    可以在openstack horizon界面中添加ICMP和ssh(TCP)规则,也可以通过命令行.命令行方式给默认安全组添加规则的方法如下: $ nova secgroup-add-rule def ...

  6. f-stack中nginx配置后make出现error: ignoring return value of ‘ftruncate’

    问题 Nginx 配置后 make 出现error: src/os/unix/ngx_process_cycle.c: In function 'ngx_start_worker_processes' ...

  7. (转)Linux内核基数树应用分析

    Linux内核基数树应用分析 ——lvyilong316 基数树(Radix tree)可看做是以二进制位串为关键字的trie树,是一种多叉树结构,同时又类似多层索引表,每个中间节点包含指向多个节点的 ...

  8. Oracle视图View

  9. 多种移动平均计算总结(MA,EMA,SMA,DMA,TMA,WMA)

    多种移动平均计算总结 股票期货里面经常会遇到这些公式,通达信,同花顺,文华,基本都有.作为一个程序员觉得网上比较的思路不清晰,在此做个总结,一目了然. 一.函数简介 MA(x,n)-移动平均,是最简单 ...

  10. docker之MySQL主从复制

    MySQL主从复制 主服务器 配置文件目录 mkdir /var/lib/mysql/master/conf.d 数据存储目录 mkdir var/lib/mysql/master/data 配置my ...