Python文件和数据格式化(教程)

文件是一个存储在副主存储器的数据序列,可包含任何数据内容。

概念上,文件是数据的集合和抽象,类似的,函数是程序的集合和抽象。

用文件形式组织和表达数据更有效也更加灵活。

文件包括两种形式,文本文件和二进制文件。

文本文件:一般由单一特定的编码的字符组成

二进制文件:一般由0和比特1组成,没有统一的字符编码。

无论是通过文本还是二进制创建的文件,都可以用两种方式来打开。

我们来举个例子对比文本文件和二进制文件,

首先我们在桌面创建一个文本文件,取名example,并写入“我爱我的祖国”

如下所示:

注意:右下角的编码方式为“UTF-8”

然后执行代码:

fp=open("example.txt","rt",encoding=‘UTF-8‘)
print(fp.readline())
fp.close()

fps=open("example.txt","rb")
print(fps.readline())
fps.close()

在这段代码中,分别使用文本文件形式和二进制形式打开文档,然后读取、关闭。

注:rt为文本文件形式、rb为二进制文件形式。

运行结果如下所示:

接下来,我们正式学习文件相关操作。

1.文件的打开和关闭

说到文件的打开关闭,不由得让我想起以前的笑话,把大象装进冰箱需要几步?

文件操作和这个笑话一样,首先打开文件、然后进行操作、最后关闭文件。

文件的打开:

文件默认处于存储状态,只有将其打开当前程序才有权操作这个文件。

打开不存在的文件,程序将会创造一个新文件来进行操作。

打开这个文件之后,文件处于被占用状态,另一个进程不得对文件进行操作。

文件打开需要使用open()函数,格式如下:

<变量名>=open(<文件名>,<打开模式>)

encoding为编码方式

文件打开模式:

“r”    :只读模式,文件不存在返回异常

“w”   :覆盖模式,文件不存在则创建、文件存在则完全覆盖

“x“    :创建写模式,文件不存在则创建、存在则返回异常

”a”    :追加写模式,文件不存在则创建、文件存在则在稳健最后追加内容

“b”    :二进制模式

“f”     :文本文件模式(默认值)

“+”    :与 r\w\x\a一同使用,在原基础上加入了同时读写功能

打开模式可以为字符串形式,其中r,w,x,a可以和b,t,+组合使用

如刚刚例子的打开方式:rt,rb

encoding为编码方式

文件的关闭:

文件使用之后,要采用close()函数关闭文件,释放文件的使用授权

使用方法如下:

<变量名>.close()

2.文件的读取

文件打开之后,根据打开方式的不同可以对文件进行对应读写操作。(记得注意编码方式)

文件的读取方法如下:

<file>.read(size=-1)

从文件读入整个文件内容,给出参数则读取前size长度的字符串

<file>.readline(size=-1)

从文件中读入一行内容,如果给出参数则读取每行前size长度的字符串

<file>.readlines(hint=-1)

从文件中读入整个文件的内容,以每一行为一个列表,如果给参入,只读取前hint行

举个例子,还是刚刚的example文件,我们多输入两行同样的文件,逐行读出。

先打开文件,然后for循环,通过readlines()逐行读取、最后关闭。

代码如下:

fp=open("example.txt","rt",encoding=‘UTF-8‘)
for line in fp.readlines():
    print(line)
fp.close()

运行结果如下:

3.文件的写入

写入的常见函数有三个

<file>.write(s)

向文件写入一个字符串

<file>.writelines(lines)

讲一个元素全为字符串的列表写入文件

<file>.seek(offset)

改变当前文件操作指针的位置,offset的值“0”为文件开头、“1”当前位置,“2”文件结尾

举个例子,向文件写入一个列表类型[“中国”、“美国”、“法国”]

代码如下:

fp=open("example.txt","w+",encoding=‘UTF-8‘)
lst=["中国","美国","法国"]
fp.writelines(lst)
fp.close()

结果如下:

至此便是python文件方面的常见操作

原文地址:https://www.cnblogs.com/lyy135146/p/11965603.html

时间: 2024-10-03 13:38:48

Python文件和数据格式化(教程)的相关文章

python 文件与数据格式化

https://www.cnblogs.com/li-zhi-qiang/p/9269453.html       文件和数据格式化 https://www.cnblogs.com/li-zhi-qiang/p/9270497.html      一维数据的格式化和处理 https://www.cnblogs.com/li-zhi-qiang/p/9273751.html     二维数据的格式化和处理 https://www.cnblogs.com/li-zhi-qiang/p/9270436

计算机二级python 知识点篇(文件和数据格式化)

计算机二级python 知识点篇(文件和数据格式化) 考纲考点 文件的使用: 文件打开. 关闭和读写 数据组织的维度: 一维数据和二维数据 一维数据的处理: 表示. 存储和处理 二维数据的处理: 表示. 存储和处理 采用CSV格式对一二维数据文件的读写 知识点1 文件包括两种类型: 文本文件和二进制文件. 二进制文件和文本文件最主要的区别在于是否有统一的字符编码 文本文件一般由单一特定编码的字符组成, 如UTF-8编码, 内容容易统一展示和阅读. 二进制文件直接由比特0和比特1组成, 文件内部数

python基础之 数据格式化

%还是format 皇城PK Python中格式化字符串目前有两种阵营:%和format,我们应该选择哪种呢? 自从Python2.6引入了format这个格式化字符串的方法之后,我认为%还是format这根本就不算个问题.不信你往下看. # 定义一个坐标值 c = (250, 250) # 使用%来格式化 s1 = "敌人坐标:%s" % c 上面的代码很明显会抛出一个如下的TypeError: TypeError: not all arguments converted durin

python操作txt文件中数据教程[1]-使用python读写txt文件

python操作txt文件中数据教程[1]-使用python读写txt文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 原始txt文件 程序实现后结果 程序实现 filename = './test/test.txt' contents = [] DNA_sequence = [] # 打开文本并将所有内容存入contents中 with open(filename, 'r') as f: for line in f.readlines(): contents.append(line

使用python获取webservice数据并输出到文件

上头要求设置TCP备案检查,给了个WEBSERVICE接口.查了2天,才确认还是python比较好用,我这水平也就写个脚本把数据导出,过滤检索还是用的shell.写此文备忘.WEBSERVICE接口脚本如下: #! /usr/bin/python #coding:utf-8 import codecs import suds def main(file_name, out_file): url = 'http://121.14.4.210:8088/icpautobj/ws/getIcp?wsd

Python 获取接口数据,解析JSON,写入文件

Python 获取接口数据,解析JSON,写入文件 用于练手的例子,从国家气象局接口上获取JSON数据,将它写入文件中,并解析JSON: 总的来说,在代码量上,python代码量要比java少很多.而且python看起来更直观一些: 以下是代码: import types import urllib2 import json duan ="--------------------------" #在控制台断行区别的 #利用urllib2获取网络数据 def registerUrl():

Python数据格式化

Python有两种格式化字符串的方式,使用%或者使用内置format()函数. 使用%格式化字符串 在Python中使用%来格式化字符串,用法和效果类似于C语言中的%.格式为:%特定的转换类型 %data. 以下是常用的转换类型 %s 字符串 %d 十进制整数 %x 十六进制整数 %o 八进制整数 %f 十进制浮点数 %e 科学计数法表示浮点数 %g 十进制或科学计数法表示的浮点数 %% %本身 使用%格式化的例子,如下 1 >>> n = 52 2 >>> f = 7

Python文件夹下图像数据可视化

Python文件夹下图像数据可视化 import matplotlib.pyplot as plt import matplotlib.image as mpimg import numpy as np   import urllib2 import urllib import os import shutil   subdir= "/7" homedir = os.getcwd() + subdir # "/home/haoyou/Dev/last_caffe_with_s

Python文件格式化写入

[[email protected] test]# cat 1.py fd = open('format.txt','w') head = "%10s%10s%10s\n"%('id','name','record') item1 = "%10s%10s%10s\n"%('001','evilxr','98') item2 = "%10s%10s%10s\n"%('002','Python','88') fd.write(head) fd.wri