文件相关的操作------Python

1.文件是什么?

文件数据都是保存在硬盘中的。

C盘、D盘,这里的内容都是硬盘上的内容,也都是文件!

文件夹(目录)也是一种特殊的文件,目录文件。

冯诺依曼体系结构:

 1.内存  变量就是在内存中。

 2.硬盘  文件就是在硬盘中。


内存与硬盘的区别

1.内存的空间更小,磁盘空间更大。

2.内存访问更快,磁盘访问更慢。

3.内存成本更贵,硬盘成本更便宜。

4.内存数据易失,硬盘的数据持久化存储。(硬盘上存储的数据以文件的形式来组织)

2.文件路径

此处把这一层一层的目录构成的字符串,就称为"文件的路径"。

知道了文件路径,就可以知道这个文件在硬盘上的详细位置,也就可以进一步的知道这个文件里都有啥了,就可以使用这个文件了。

目录名之间,使用\来分割,使用/(正斜杠)也可以。

在代码中表示一个文件路径,用/更多,使用\不太方便,因为.\在字符串里面有特定含义表示转义字符。

\\在字符串里才表示字符 \

\ 在字符串里,是特定含义的转义字符

3.文件的基本操作

3.1打开文件

#使用open 打开一个文件
f=open('d:/1/1.txt','r')
print(f)
print(type(f))

 

r 表示read 按照读方式打开

w表示write 按照写方式打开

a表示append,也是写方式打开,把内容写到原有文件内容的末尾

若文件不存在,则打开就会存在一些问题。

 所以使用 f 这个文件对象进行读操作,就是在读硬盘,使用f这个对象进行写操作,就是在写硬盘

3.2关闭文件

文件在使用完了之后,一定要关闭,打开文件实际上是在申请一定的系统资源。

不再使用文件的时候,资源就应该及时释放。

否则就可能造成文件资源的泄漏,进一步的导致其他部分的代码无法顺利的打开文件了。

正是因为一个系统的资源是有限的,因此一个程序能打开的文件个数,也是有上限的。

在系统中可以通过一些配置项,来配置能打开文件的最大数目。(但是无论配置多少,,都不是无穷的,记得及时关闭,释放资源)

1KB =1024 Byte

1MB=1024 KB

1GB=1024MB

1TB=1024 GB

#打开文件个数的上限
flist=[]
count=0
while True:
    f=open('d:/1/1.txt','r')
    flist.append(f)
    f.close()
    count+=1
    print(f'打开文件的个数:{count}')

 

 尽量手动释放,才能保证万无一失。


3.3写文件

如果是使用w方式打开,会清空掉文件原有的内容。】

使用a 方式打开,不会情空文件的原有的内容。

 加个\n就会进行换行操作

如果文件对象已经被关闭了,那么意味着系统中和该文件相关的内存资源已经释放了,强行去写,就会出异常。


3.4读文件

#1.使用read来读取文件内容,指定读几个字符
# f=open('d:/1/1.txt','r',encoding='utf8')
# result=f.read(19)
# print(result)
# f.close()

#2.更常见的需求是按照行来读取
#最简单的办法是办法是for循环
f=open('d:/1/1.txt','r',encoding='utf8')
for line in f:
    print(f'line={line}')
f.close()

 之所以多了一个空行是因为本来读到的文件的内容(这一行的内容,末尾就带\n)

此处使用print来打印,又会自动增加一个换行符。

可以给print再多设定个参数,修改print自动换行的行为,加个end即可。

原本默认是\n,修改为' '

 

#3.还可以使用readline方法直接把整个文件所有内容都读出来,按照行组织到一个列表里面
f=open('d:/1/1.txt','r',encoding='utf8')
lines=f.readlines()
print(lines)
f.close()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值