文件的打开、读写和关闭

文件的打开:

file_obj=open(filename,mode='r',buffering=-1,...)

filename是强制参数

mode是可选参数,默认值是r

buffering是可选参数,默认值为-1(0代表不缓冲,1或大于1的值表示缓冲一行或指定缓冲区大小)

f1=open('e:/test/data.txt')
f1=open('e:\\test\data.txt')
f2=open(r'e:/test/data.txt','w')

  文件相关函数

返回值:

1、open()函数返回一个文件(file)对象

2、文件对象可迭代

3、有关闭和读写文件的相关的函数/方法

写文件:

file_obj.write(str):讲一个字符串写入文件

with open('e:\\test\\firstpro.txt','w') as f:
f.write('Hello,World!')

  

file_obj.read(size):从文件中至多读出size字节数据,返回一个字符串

file_obj.read():读文件直到文件结束,返回一个字符串

with open('e:/test/firstpro.txt') as f:
p1=f.read(5)
p2=f.read() p1
'Hello'
p2
',World!'

  

其它读写函数:

file_obj.readlines():读取多行数据

file_obj.readline():读取一行数据

file_obj.writelines():写入多行数据

with open('e:/test/data.txt') as f:
f.readlines()

  

文件读写例子:将文件data.txt中的字符串前面加上1、2、3、4、...后写入到另一个文件data1.txt中。

data.txt

apple
banana
car
pear

  

with open('e:/test/data.txt') as f1:
cNames=f1.readlines()
for i in range(0,len(cNames)):
cNames[i]=str(i+1)+' '+cNames[i]
with open('e:/test/data1.txt','w') as f2:
f2.writelines(cNames)

  

其它文件相关函数:

file_obj.seek(offset,whence=0):在文件中移动文件指针,从whence(0表示文件头部,1表示当前位置,2

  1. 表示文件尾部)偏移offset个字节,whence参数可选,默认值为0。

    with open('e:/test/data.txt','a+') as f:
    f.writelines('\n')
    f.writelines(s)
    f.seek(0)
    cNames=f.readlines()
    print(cNames)

      

    ['apple\n', 'banana\n', 'car\n', 'pear\n', 'Tencent Technology Company Limited']
    

      

    标准文件:

    stdin:标准输入

    stdout:标准输出

    stderr:标准错误

    newName=input('Enter the name of new company:')
    Enter the name of new company:Alibaba
    print(newName)
    Alibaba

      实际上是sys模块提供的函数实现的

  2. import sys
    sys.stdout.write('hello')
    hello5

      

python开发应用-本地数据获取方法的更多相关文章

  1. Python 创建本地服务器环境生成二维码

    一. 需求 公司要做一个H5手机端适配页面,因技术问题所以H5是外包的,每次前端给我们源码,我们把源码传到服务器让其他人访问看是否存在bug,这个不是很麻烦吗?有人说,可以让前端在他们的服务器上先托管 ...

  2. 用Python删除本地目录下某一时间点之前创建的所有文件

    因为工作原因,需要定期清理某个文件夹下面创建时间超过1年的所有文件,所以今天集中学习了一下Python对于本地文件及文件夹的操作.网上 这篇文章 简明扼要地整理出最常见的os方法,抄袭如下: os.l ...

  3. python遍历本地文件系统 按文件大小排序

    在这个例子中,主要会用到python内置的和OS模块的几个函数: os.walk() : 该方法用来遍历指定的文件目录,返回一个三元tuple(dirpath, dirnames, filenames ...

  4. python实现文件下载的方法总结

    前端时间遇到一个通过url下载文件的需求,只需要简单的编写一个py脚本即可.从网上搜了下python实现文件下载的方法,总结如下,备查. 以下方法均已测试,环境win8.1  python2.6/2. ...

  5. 编程中遇到的Python错误和解决方法汇总整理

    这篇文章主要介绍了自己编程中遇到的Python错误和解决方法汇总整理,本文收集整理了较多的案例,需要的朋友可以参考下   开个贴,用于记录平时经常碰到的Python的错误同时对导致错误的原因进行分析, ...

  6. 提高python执行效率的方法

    python上手很容易,但是在使用过程中,怎么才能使效率变高呢? 下面说一下提高python执行效率的方法,这里只是说一点,python在引入模块过程中提高效率的方法. 例如: 1.我们要使用os模块 ...

  7. 三种安装python第三方库的方法

    ​    还记得第一天的时候我们说python拥有丰富的库,那这么多的第三方库,我们如何使用呢?今天我们可以看一下python库的安装. 方法一:使用python命令进行离线安装 我以urllib5库 ...

  8. Python Flask API实现方法-测试开发【提测平台】阶段小结(一)

    微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 本篇主要是对之前几次分享的阶阶段的总结,温故而知新,况且虽然看起来是一个小模块简单的增删改查操作,但其实涉及的内容点是非常的密集的,是非常 ...

  9. python 类属性与方法

    Python 类属性与方法 标签(空格分隔): Python Python的访问限制 Python支持面向对象,其对属性的权限控制通过属性名来实现,如果一个属性有双下划线开头(__),该属性就无法被外 ...

随机推荐

  1. 小甲鱼汇编语言学习笔记——day03

    手动编译并执行第一个汇编程序过程: 1.用notepad++写一个简单的汇编程序(文件命名为:1.asm): assume cs:abc abc segment mov ax, 2 add ax, a ...

  2. 【jquery】【jqGrid】设置不能多选

    onSelectAll:function(rowids,statue){ layui.layer.msg("请选择单条记录"); $("#jqGrid").jq ...

  3. SQL"已更新或者删除的行值要么不能使该行成为唯一行,要么改变了多个行(X行)“解决办法

    这种问题大多是由于没有主键(PK)导致同一张表中存在若干条相同的数据.DBMS存储时,只为其存储一条数据,因为DBMS底层做了优化,以减少数据冗余.所以删除或更新一条重复数据就牵一发而动全身. 解决方 ...

  4. 图解分布式一致性协议Paxos

    Paxos协议/算法是分布式系统中比较重要的协议,它有多重要呢? <分布式系统的事务处理>: Google Chubby的作者Mike Burrows说过这个世界上只有一种一致性算法,那就 ...

  5. Flume和 Sqoop

    Sqoop简介 Sqoop是一种旨在有效地在Apache Hadoop和诸如关系数据库等结构化数据存储之间传输大量数据的工具 原理: 将导入或导出命令翻译成Mapreduce程序来实现. 在翻译出的M ...

  6. Anaconda的pip加速下载命令

    pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

  7. DRF框架(七) ——三大认证组件之频率组件、jwt认证

    drf频率组件源码 1.APIView的dispatch方法的  self.initial(request,*args,**kwargs)  点进去 2.self.check_throttles(re ...

  8. unity---为什么用Time.deltaTime * speed 表示每秒移动的距离的理解

    Time.deltaTime:代表时间增量,即从上一帧到当前帧消耗的时间, 这个值是动态变化的. dt 表示 deltaTime. 假如 1s渲染10帧,沿X轴方向的移动速度 speed = 10m/ ...

  9. Ubuntu 编译安装 nginx

    有关博客: <Windows 编译安装 nginx 服务器 + rtmp 模块>.<Ubuntu 编译安装 nginx>.<Arm-Linux 移植 Nginx> ...

  10. Scala 系列(三)—— 流程控制语句

    一.条件表达式if Scala 中的 if/else 语法结构与 Java 中的一样,唯一不同的是,Scala 中的 if 表达式是有返回值的. object ScalaApp extends App ...