要加强网站内容的建设,相对于网站根目录的的绝对路径,常州模板网站建设价位,壹像素网站我们可以利用python对本电脑文件夹里的文件进行处理#xff0c;python中提供了一系列相关的方法和函数供我们使用。
读取文件
我们现在在本python文件中有一个txt文件名为Lego#xff0c;那么我们就可以利用python打开该文件
with open(Lego.txt) as file_text:contents …我们可以利用python对本电脑文件夹里的文件进行处理python中提供了一系列相关的方法和函数供我们使用。
读取文件
我们现在在本python文件中有一个txt文件名为Lego那么我们就可以利用python打开该文件
with open(Lego.txt) as file_text:contents file_text.read()
print(contents)解释与说明
代码第1行open()函数的作用是打开某个文件。有open()函数自然也有close()函数。在python中每打开一个文件都有在使用结束后关闭一个文件。但是由于上面代码中使用了with关键字则不需要访问文件后人为将其关闭python会自动将其关闭。代码第2行read()函数的作用是读取文本内容并将其赋给contents变量进行接收。代码第3行将读取的内容打印出来。注意这样写最后打印的内容会增加空一行这是因为会多读一个空字符串。想要删去这个空格的一行可以改成print(contents.rstrip())这样可以删去多余的空隔行。
文件路径
**绝对路径**文件的完整路径。比如D:\datasets\coco128\images\train2017
**相对路径**相对于某个文件夹下的路径。比如现在我有一个文件所在的路径是D:\datasets\coco128有另外一个路径是D:\datasets\coco128\images\train2017那么相对路径就是images\train2017 注意windows系统使用反斜杠( \ )而不是( / )但是在python中依然可以使用( / )作为路径表示也有的版本是( // ) 上面的读取文件的代码中使用的就是相对路径。其直接使用文件格式“Lego.txt”即默认在python运行文件所在目录下搜索另外一个文件。如果文件路径过长且需要重复使用那么我们可以用一个变量来暂存它
file D:\datasets\coco128\images\train2017\Lego.txt
with open(file) as file_text:contents file_text.read()
print(contents)逐行读取
file D:\datasets\coco128\images\train2017\Lego.txt
with open(file) as file_text:for lines in file_text:print(lines)通过一个for循环我们就可以打印出每一行的内容。
我们再进一步如果我们想打印出每个字符呢
file D:\datasets\coco128\images\train2017\Lego.txt
with open(file) as file_text:for lines in file_text:print(lines)for words in lines:print(words)我们只需要再嵌套一层即可。通过这两个例子我们可以理解文件的存取模式即由字符组成一行行字符串再由一行行字符串组成一篇文档。
理解了这一点之后其实我们就可以文件分成各行存入一个列表中。
file D:\datasets\coco128\images\train2017\Lego.txt
with open(file) as file_text:lines file_text.readlines()
for line in lines:print(line.rstrip())这样也可以打印出文档各行。
但是上述做法不能很好的帮我们分离文档中有多少个单词英文只能统计有多少个字符。我们可以使用split()函数将单词分离开来
file D:\datasets\coco128\images\train2017\Lego.txt
with open(file) as file_text:contents file_text.read()words contents.split()num len(words)使用len()就可以统计出文档中单词的个数了。
写入文件
file D:\datasets\coco128\images\train2017\Lego.txt
with open(file, w) as file_text:file_text.write(I dont know what to write.\n)file_text.write(I dont know what to write so I write again.\n)解释与说明
注意这里的open()函数多加了一个参数’w’‘w’的意思是“写”表示对文件需要进行写操作。其实在之前的读取文件中也可以传入参数’r’但是不传就默认是对文件只读不写。补充一些其它的参数r’读取模式w’写入模式a’附加模式r读写模式。 注意python只能写入字符串如果想要传入数值必须先将其转换成字符串模式。 写入模式和附加模式的区别
写入模式是将文件中原来的内容全部清除按指令重新写入内容。附加模式是将保留文件中原来的内容在文件文档的后面继续写入内容。
存储数据
很多程序都要求用户输入某种信息比如用户名等等。而这些信息即使在程序关掉后也需要保存下来所以我们需要一个能永久存储数据的容器这个容器就是json文件。
json全称JavaScript Object Notation从名字就可以看出其最初是由JavaScript开发的但随后成为了一种常见形式被众多语言所采用。也就是说用json存储数据不仅能在python中使用而且还能够在其它语言中使用。
下面我们来看下如何使用json文件存储数据。
json.dump()
json.dump()用于存储数据。
import json
numbers [1,2,3,4,5,6]
with open(Lego.json,w) as lego:json.dump(numbers,lego)numbers是存储的数据内容lego是存储的文件对象
json.load()
json.load()用于存储数据。
import json
with open(Lego.json) as lego:num json.load(lego)
print(num)