一、打开文件

1、open()函数

打开模式        执行操作

 ‘r’        以只读方式打开文件(默认)

 ‘w’        以写入的方式打开文件,会覆盖已存在的文件

 ‘x’           如果文件已经存在,使用此模式打开将引发异常

‘a’         以写入模式打开,如果文件存在,则在末尾追加写入

 ‘b’         以二进制模式打开文件

 ‘t’        以文本模式打开(默认)

 ‘+’        以可读模式(可添加到其他模式中使用)

 ‘U’        通用换行符支持

********************************************************************

文件对象方法       执行操作

f.close()       关闭文件

f.read(size = -1)      从文件读取size个字符,当未给定size或给定负值的时候,读取剩余的所有自负,然后作为字符串返回

f.readline()       以写入模式打开,如果文件存在,则在末尾追加写入

f.write(str)      将字符串str写入文件

f.writelines(seq)     向文件写入字符串序列seq,seq应该是一个返回字符串的可迭代对象

f.seek(offset,from)   在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节

f.tell()        返回当前在文件中的位置

***********************************************************************

二、举例说明:
# read(5):从文件读取5个字符

>>> f = open('//Users//wufq//Desktop//record.txt')

>>> f.read(5)
'12345'

# tell():返回当前在在文件中的位置

# seek(5,0):从0开始移动5个位置

>>> f = open('//Users//wufq//Desktop//record.txt')

# readline()  结合着seek()函数,从移动的位置,直接读取第一行的数据

>>> f = open('//Users//wufq//Desktop//record.txt')

>>> f.readline()
'56789\n'
>>>

#迭代读取文本的每一行

>>> f = open('//Users//wufq//Desktop//record.txt')

>>>

# write(str):写入字符串到文件

>>> f = open('//Users//wufq//Desktop//record.txt','w')
>>> f.write('99999999')
8
>>> f.close()   #写入字符串以后,必须的关闭,要不写入的内容会写到缓存内

三、练习题

1、如何将一个文件对象(f)中的数据存放进列表中

>>> f = open('//Users//wufq//Desktop//record.txt')
>>> list(f)        #使用list(f)
['99999999']

2、如何迭代打印文件对象(f)中的每一行数据

for each_line in f:

  print(each_line)

3、文件对象的内置方法f.read(size=-1)作用是读取文件对象内容,size参数是可选的,那如果设置了size = 10 ,例如f.read(10),将返回什么内容?

返回文件内的十个字符

4、如何获得文件对象(f)当前文件指针的位置

f.tell()

5、尝试将文件(OpenMe.mp3)打印到屏幕上

f.open('OpenMe.mp3')

for each in f:
    print(each,end='')

f.close()

6、编写代码,将上一题中的文件(OpenMe.mp3)保存为新文件(OpenMe.txt)

f1 = open('OpenMe.mp3')
f2 = open('OpenMe.txt')
f2.write(f1.read())   #读取f1文件并写到f2里面
f2.close()
f1.close()

【Python028--引入文件】的更多相关文章

  1. jQueryMobile引入文件后样式无法正常显示

    jQueryMobile引入文件后样式无法正常显示解决方法: jQuery文件必须放在jQueryMobile文件之前 eg:

  2. MWeb 1.4 新功能介绍一:引入文件夹到 MWeb 中管理,支持 Octpress、Jekyll 等静态博客拖拽插入图片和实时预览

    之前在 MWeb 中打开非文档库中的 Markdown 文档,如果文档中有引用到本机图片,是没办法在 MWeb 中显示出来和预览的.这是因为 Apple 规定在 Mac App Store(MAS) ...

  3. java jar包解析:打包文件,引入文件

    java jar包解析:打包文件,引入文件 cmd下: jar命令:package包打包 javac命令:普通类文件打包 Hello.java: package org.lxh.demo; publi ...

  4. DEDECMS中,引入文件

    引入文件:dede:include 标签:{dede:include filename="foot.htm"/}

  5. php中禁止非法调用和硬路径引入文件的方法

    php中禁止非法调用和硬路径引入文件的方法 在php中有一些公共的文件为了方便,我们会做一个公共文件,让不用的文件共同调用.为了禁止公共文件被非常单独调用,可以在文件上做一个常量,禁止非常调用:在公共 ...

  6. php引入文件(include 和require的区别)

    引入文件: 首先需要一个php文件: <?php class shao//类名必须和文件名相同!!! { public $xxx="666"; } $shili = new ...

  7. PHP中引入文件的四种方式及区别

    文件加载语句:include,require,include_once,require_once include,require: require函数通常放在 PHP 程序的最前面,PHP 程序在执行 ...

  8. 【Python全栈-HTML】HTML引入文件的绝对路径、相对路径、根目录

    HTML引入文件的绝对路径.相对路径.根目录 什么是绝对路径?绝对路径指的是文件的真正路径,使用绝对路径链接外部资源,如:图片.超级链接.flash.音频.视频等等.代码如下: 1.引入网络上的资源: ...

  9. 【JSP中引入文件】JSP中获取根路径+引用js文件

    在jsp界面中经常需要引入js.css等文件,通常都需要先获取项目根路径,然后再引入文件. 例如: 项目路径如下,需要在index.jsp中引入FusionCharts相关的js.css等: inde ...

  10. PHP中引入文件的四种方式详解

    四种语句 PHP中有四个加载文件的语句:include.require.include_once.require_once. 基本语法 require:require函数一般放在PHP脚本的最前面,P ...

随机推荐

  1. 如何简单地理解Python中的if __name__ == '__main__'(https://blog.csdn.net/yjk13703623757/article/details/77918633)

    1. 摘要 通俗的理解__name__ == '__main__':假如你叫小明.py,在朋友眼中,你是小明(__name__ == '小明'):在你自己眼中,你是你自己(__name__ == '_ ...

  2. hive-drop-import-delims选项对oracle的clob无效

    工作过程中发现了用sqoop将oracle中的数据导入到hive时,会因为oracle中类型为clob的字段中存在换行时,会造成hive的数据错位.即使加上了 --hive-drop-import-d ...

  3. HDU 6298

    Problem Description Given an integer n, Chiaki would like to find three positive integers x, y and z ...

  4. [15]Windows内核情景分析 --- 权限管理

    Windows系统是支持多用户的.每个文件可以设置一个访问控制表(即ACL),在ACL中规定每个用户.每个组对该文件的访问权限.不过,只有Ntfs文件系统中的文件才支持ACL. (Ntfs文件系统中, ...

  5. 《大话设计模式》c++实现 代理模式

    代理模式 在代理模式(Proxy Pattern)中,一个类代表另一个类的功能.这种类型的设计模式属于结构型模式. 在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口. 介绍 意图:为其 ...

  6. 【Hadoop学习之四】HDFS HA搭建(QJM)

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 由于NameNode对于整个HDF ...

  7. win10 在任务栏添加 desktop 快捷图标

    http://www.xitongcheng.com/jiaocheng/win10_article_11980.html [Shell] Command= IconFile=explorer.exe ...

  8. Struts2输入校验(编码方式)

    struts2对用户输入数据的校验方法有两种方式,一种是通过编码的方式,另一种则是通过使用XML配置方式. 本章主要介绍struts2编码方式的输入校验.以下将结合一个实例程序进行说明. 代码结构: ...

  9. js里用append()和appendChild有什么区别?

    parentNode.append()是还在试用期的方法,有兼容问题.是在parendNode节点中最后一个子节点后插入新Node或者DOMString(字符串,插入后为Text节点). 与paren ...

  10. python递归的例子

    例子1:递归实现嵌套列表求和 #encoding=utf-8 a=[[1,2,3],  [4,5,6],  [7,8,9]]def listsum(L):    result=0    for i i ...