python----文件及操作系统

这篇博客详细介绍了Python中文件的打开、读取和关闭操作,包括不同模式的区别,如r、r+、w、w+、a和a+。还讲解了文件指针的使用,如read、readline、readlines和seek方法。此外,涵盖了文件的with语句、操作系统(os)模块的使用,如遍历目录,以及京东笔试题中关于IP统计的问题。同时,讨论了非纯文本文件的二进制读取,如何生成MAC地址并写入文件,以及通过itchat模块进行微信交互的实践操作。
摘要由CSDN通过智能技术生成

一、文件

  •     打开文件的三个步骤:打开————>操作————>关闭
  •     用/mnt/hui这个文件做实验,给文件777权限便于看到实验效果

    [root@foundation2 mnt]# chmod 777 hui
    [root@foundation2 mnt]# cat hui
    good girl
 

r(默认):

  • 只能读不能写
  • 读曲文件不存在则,会报错
f = open('/mnt/hui') ##打开文件,后面不加东西,默认为r 
content = f.read() print(content) ##打印读出的文件内容 
print(f.readable()) ##打印是否可读 
print(f.writable()) ##打印是否可写 
f.close() ##打开文件,操作过后一定要记得关闭文件,否则会占用系统资源 
结果: 
good girl 
True 
False

r+:

  • 可读写
  • 读取文件不存在,会报错
  • 如果在此模式下写入东西,则会从文件的第一个字母开始替换(默认情况下,从文件指针所指位置开始写入)
f = open('/mnt/hui','r+') 
f.write('hui') 
print(f.readable()) 
print(f.writable()) 
f.close() 

结果: 
rue 
True 

文件内容会变成:huid girl (原来是:good girl)

w:

  • 只写
  • 会清空原文件的内容
  • 如果文件不存在,不会报错,会创建新的文件并写入
f = open('/mnt/hui','w')
f.write('hello')
print(f.readable())
print(f.writable())
f.close()

结果:
False    ##不可读
True

此时文件内容为:hello

w+:

  • 可读写
  • 会清空文件内容
  • 文件不存在,不会报错,会创建新文件并写入
f = open('/mnt/hui','w+')
f.write('world')
print(f.readable())
print(f.writable())
f.close()

结果:
True
True

此时文件内容为:world



a:

  • 只写
  • 不覆盖原文件内容
  • 如果文件不存在,不会报错,会创建新的文件并写入
f = open('/mnt/hui','a')
f.write('westos')
print(f.readable())
print(f.writable())
f.close()

结果:
False
True

此时文件内容为:
worldwestos    ##不覆盖原文件内容在后面追加

a+:

  • 可读写
  • 不会清空文件内容,写的内容会在换行追加
  • 文件不存在,不会报错,会创建新的文件并写入
f = open('/mnt/hui','a+')
f.write('hello')
print(f.readable())
print(f.writable())
f.close()

结果:
True
True

此时文件内容为:
worldwestos
hello
``` 

二、文件的读取操作

文件的指针:

f = open('/mnt/hui','r+')
content = f.read()
print(content)
print(f.tell())
f.write('pyth
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值