Python基础语法09--文件操作和os操作

目录

一、编码格式

.py文件,默认存储的格式是UTF-8;

二、文件操作

1、文件的读写原理

2、文件的读写操作

1)读操作,读取磁盘内容

2)常用的文件打开模式

3)写操作,写入文件

4)文件对象的常用方法

3、with语句(上下文管理器)

4、获取文件的创建时间,修改时间,访问时间,文件大小

5、如果文件不是当天创建的,移动到备份目录中

三、目录操作

1、os模块

1)打开记事本,打开计算器,打开可执行文件; 

2)os模块操作目录相关函数

2、os.path模块

1)os.path模块操作目录相关函数

四、总结


一、编码格式

  • python的解释器,使用的是Unicode(内存),如运行时的变量值“王五”是Unicode;
  • .py文件,在磁盘上使用UTF-8存储(外存);

 

.py文件,默认存储的格式是UTF-8

 

修改.py文件的编码格式ANSI

在.py文件第一行,添加如下代码:存储的文件的编码格式变为ANSI;

不同的编码格式,占用的磁盘空间大小是不同的;“中国”两个汉字,ANSI编码格式占用4个字节,UTF-8编码格式占用9个字节;

#encoding=gbk

 

二、文件操作

1、文件的读写原理

  • 文件的读写,俗称“IO操作”;

 

IO操作:数据通过管道流向程序,或者数据通过管道从程序流向磁盘;input和output

 

文件的读写操作流程

解释器运行.py文件,会调用os操作系统资源,去操作磁盘中的文件,进行读和写的操作;


 

操作原理

 

2、文件的读写操作

  • 内置函数open()创建文件对象;
  • 通过IO流,将磁盘文件中的内容与程序中的对象中的内容进行同步;

语法:

file = open( filename, [,mode,encoding] )

 

1)读操作,读取磁盘内容

file.read(),读取文件全部内容,返回类型为<class 'str'>

# 文件的读写操作
file = open('a.txt', 'r', encoding='utf-8')  # 读操作,读取磁盘内容
print(file.read())
file.close()

输出结果:

中国
魅力
强大

# 读操作,读取磁盘内容
file = open('a.txt', 'r', encoding='utf-8')
print(file.read(2))
file.close()

 输出结果:

 

file.readline()  读取文件一行内容,返回类型为<class 'str'>

file = open('a.txt', 'r', encoding='utf-8')  # 读操作,读取磁盘内容
# print(file.read())
print(file.readline())
# print(file.readlines())
file.close()

输出结果:

中国

 

file.readlines(),读取文件全部内容,每一行为列表的一个元素,并且带格式符号,返回类型为<class 'list'>

file = open('a.txt', 'r', encoding='utf-8')  # 读操作,读取磁盘内容
# print(file.read())
# print(file.readline())
print(file.readlines())
file.close()

输出结果:

['\ufeff中国\n', '魅力\n', '强大\n']

 

python按行读取文件 去掉换行符"\n"

# 按行读取文件,去掉换行符"\n"
file_path = 'input_project_name.txt'
# 读取磁盘内容
with open(file_path, 'r', encoding='utf-8') as fp:
    # 按行读取全部内容,每一行为列表中的一个元素
    content = fp.readlines()  # 元素中包含\n换行符,['汇航旅\n', '大项目需求-凯德\n', '新产品需求-汇缴费\n']
    # 列表中每个元素,去掉换行符"\n"
    for line in content:
        line_index = content.index(line)
        content[line_index] = line.strip('\n')
    print(content)

输出结果:

['汇航旅', '大项目需求-凯德', '新产品需求-汇缴费']

 

2)常用的文件打开模式

文件的类型

  • 文本文件,存储的是普通"字符"文本,默认为Unicode字符集,可使用记事本打开;
  • 二进制文件,数据内容用"字节"存储,无法用记事本打开,必须使用专业软件打开,如mp3,.jpg,.doc文档等;

 

打开模式:

打开模式 描述
r 只读模式打开文件,文件的指针会放在文件的开头;
w 只写模式打开文件,如果文件不存在则创建;如果文件存在,则覆盖原有内容;文件指针在文件的开头;
a 追加模式打开文件,如果文件不存在则创建;如果文件存在,则在文件末尾追加内容;文件指针在原文件的末尾;

b

二进制方式打开文件,不能单独使用,需要与其他模式一起使用,如rb或wb
+ 读写方式打开文
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值