python文件读写代码实例

 更新时间:2019年10月21日 10:56:00   作者:思念殇千寻  
这篇文章主要介绍了python文件读写代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

实验室导师又有任务,从一个.dat文件中读取波形数据,通过一个自编码网络进行异常检测。可是对我这种小白来说真的艰难。从最基础的文件读写开始吧。

先说数据,是一个int16型的数组。说是数组,但是读取也并不简单。众所周知,数据在计算机中是用二进制的形式储存的。int16型有符号整数。16位,16bit,也就是两个字节。那么自然而然的想到,读取两个字节(bytes)的数据(也就是16bit),然后把它转化成int16的整型(即十进制整型)。数据就变得可以处理了。

先放一个不同位数的整型数据范围吧,经常会用的到。

  • Int8 //等于byte,-128 127
  • Int16 //等于short, 占2个字节. -32768 32767
  • Int32 //等于int, 占4个字节. -2147483648 2147483647
  • Int64 //等于long, 占8个字节. -9223372036854775808 9223372036854775807

这里补充一个小知识点,python3中的int类型是动态长度的,是长整型,理论支持无限大的数字。对一个int型实例运行内建的__sizeof__方法,可以查看占用的字节数。其中0占了24个字节,其他数字一般占用28个字节。

读文件:文本文件

>>> f = open('/Users/michael/test.txt', 'r')

我们知道,在python3中,字符串类型(str)包含的是Unicode characters。这种特性使得我们在python3中可以定义包含Unicode character的字符串,并甚至可以在变量标识符中使用非ASCII字符。

那么以上的代码做的是这样一件事:定义一个文件对象,文件对象标明将用读字符的手段来读取这个文件中的内容。

>>> f.read()
'Hello, world!'

上面的代码一次性读取文件的全部内容,把内容读到内存,用str对象表示。

此外还可以调用read(size),每次读取size个字节的内容。或者调用readline(),每次读取一行内容。将每一行的内容存在str里,并返回一个str的列表。

为了保证文件被关闭,可以使用with关键词:

with open('/path/to/file', 'r') as f:
  print(f.read()

读取非UTF-8编码的文本文件,需要给open()函数传入encoding参数,例如,读取GBK编码的文件:

>>> f = open('/Users/michael/gbk.txt', 'r', encoding='gbk')
>>> f.read()
'测试'

二进制文件:

如果要读取二进制文件,用rb模式打开文件即可。

>>> f = open('/Users/michael/test.jpg', 'rb')
>>> f.read()
b'\xff\xd8\xff\xe1\x00\x18Exif\x00\x00...' # 十六进制表示的字节

写文件:

写文件和读文件是一样的,调用open()函数时,传入'w'或者'wb'表示写文本文件或者写二进制文件。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • python如何去除图像中的框

    python如何去除图像中的框

    最近在做图像标注,会出现带框的图片,需要去除其中的边框,本文通过实例代码给大家介绍python如何去除图像中的框,感兴趣的朋友跟随小编一起看看吧
    2023-11-11
  • python 对dataframe下面的值进行大规模赋值方法

    python 对dataframe下面的值进行大规模赋值方法

    今天小编就为大家分享一篇python 对dataframe下面的值进行大规模赋值方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-06-06
  • Django框架实现的简单分页功能示例

    Django框架实现的简单分页功能示例

    这篇文章主要介绍了Django框架实现的简单分页功能,在之前一篇留言板之上增加了简单分页功能,涉及Paginator模块的简单使用技巧,需要的朋友可以参考下
    2018-12-12
  • Python利用Beautiful Soup模块创建对象详解

    Python利用Beautiful Soup模块创建对象详解

    这篇文章主要介绍了Python利用Beautiful Soup模块创建对象的相关资料,文中介绍的非常详细,相信对大家具有一定的参考价值,需要的朋友们下面来一起看看吧。
    2017-03-03
  • Python进行特征提取的示例代码

    Python进行特征提取的示例代码

    这篇文章主要介绍了Python进行特征提取的示例代码,帮助大家更好的进行数据分析,感兴趣的朋友可以了解下
    2020-10-10
  • Django基于Models定制Admin后台实现过程解析

    Django基于Models定制Admin后台实现过程解析

    这篇文章主要介绍了Django基于Models定制Admin后台实现过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • 基于Python实现代码版彩票小游戏

    基于Python实现代码版彩票小游戏

    彩票是一个恒古不变的话题,现在的生活越来越好,大部分人开始关注福利彩票的事情,当然也有很多人都想中将是真的啦~哈哈哈,但是大家还是要适当哦!小编今天给大家做了一款简易的彩票小游戏,让我们看看谁能中一等奖吧?谁又是二等奖、三等奖呢
    2023-03-03
  • Python实现向QQ群成员自动发邮件的方法

    Python实现向QQ群成员自动发邮件的方法

    这篇文章主要介绍了Python实现向QQ群成员自动发邮件的方法,通过读取txt文本里的QQ成员数据再调用发送邮件函数实现该功能,是非常实用的技巧,需要的朋友可以参考下
    2014-11-11
  • Python增强下git那长长的指令详解

    Python增强下git那长长的指令详解

    这篇文章主要介绍了Python增强下git那长长的指令 ,在开发中用到的代码目录结构,本文也给大家详细讲解,需要的朋友可以参考下
    2021-09-09
  • Python去除字符串两端空格的方法

    Python去除字符串两端空格的方法

    这篇文章主要介绍了Python去除字符串两端空格的方法,本文主要讲解了string.lstrip、string.rstrip、string.strip等函数的运用,需要的朋友可以参考下
    2015-05-05

最新评论