上一章最后一题的答案:

infors.sort(key=lambda x:x['age'])

print(infors)

--->[{'name': 'laowang', 'age': 23}, {'name': 'ab', 'age': 34}, {'name': 'bf', 'age': 43}]

python基础(三):

文件打开和关闭:

打开:

可以用open函数打开一个已经存在的文件或者创建一个新的文件,

open('文件名','访问模式)

f = open('test.txt','w')

访问模式说明

r

以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。

w

打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

a

打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

rb

以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。

wb

以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

ab

以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。

r+

打开一个文件用于读写。文件指针将会放在文件的开头。

w+

打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

a+

打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。

rb+

以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。

wb+

以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。

ab+

以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

关闭:

close()

#新建一个文件,文件名为:test.txt

f = open('test.txt', 'w')#关闭这个文件

f.close()

文件读写:

读(read):

我有一个 1.text 的文档,文档里面的内容是

'''Python just let be

I fell in love with you watching Casablanca '''

接下来我要对这个文档进行操作

使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据

f = open('1.txt','r')

Text = f.read(7) #长度为7

print(Text)

f.close()

--->Python

如果使用读了多次,那么后面读取的数据是从上次读完后的位置开始的f = open('1.txt','r')

Text= f.read(7)print(Text)

postion=f.tell() #tell()可以查看当前阅读到的位置print(postion)

Text_2= f.read(4)

postion_2=f.tell()print(Text_2)print(postion_2)

f.close()

--->

Python

7

just

11

读(readlines)

readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素

Text =f.readlines()for i inText:print(i)

f.close()

--->

Python just let be

I fell in love with you watching Casablanca

写(write)

使用write()可以完成向文件写入数据

f = open('test.txt', 'w')

f.write('hello world, i am here!')

f.close()

文件定位:

获取当前读写的位置:

在读写文件的过程中,如果想知道当前的位置,可以使用tell()来获取

Text = f.read(7)print(Text)

postion= f.tell() #tell()可以查看当前阅读到的位置

print(postion)

Text_2= f.read(4)

postion_2=f.tell()print(Text_2)print(postion_2)

f.close()--->Python7just11

定位到某个位置:

如果在读写文件的过程中,需要从另外一个位置进行操作的话,可以使用seek()

seek(offset, from)有2个参数

offset:偏移量

from:方向

0:表示文件开头

1:表示当前位置

2:表示文件末尾

1 f = open('1.txt','rb')2

3 str = f.read(6)4 postion =f.tell()5 print(str)6 print(postion)7

8 f.seek(-10,2) #from =29 str_2 =f.read()10 print(str_2)11 f.close()

--->

b'Python'

6

b'Casablanca'

文件和文件夹的相关操作:

重命名:

os模块中的rename()可以完成对文件的重命名操作

rename(需要修改的文件名, 新的文件名)

importos

os.rename('1.txt','1_1.txt')

删除:

importos

os.remove('1_1.txt')

文件夹操作:

创建文件夹:

os.mkdir('test')

获取当前目录:

os.getcwd()

改变默认目录:

os.chdir('../')

获取目录列表:

os.listdir('../')

删除文件夹:

os.rmdir('test')

python程序保存_初识python 文件读取 保存相关推荐

  1. python程序开发_用python进行桌面程序开发

    Python是一种面向对象.直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定.这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所 ...

  2. 用python画竹子_初识Python

    一:编程语言的分类 (1)机器语言 机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合. (2)汇编语言 汇编语言采用的是英文缩写,标识符更容易识别和记忆,它同样需要编程者将每一步 ...

  3. 初识python教学反思_初识Python

    引子 计算机编程语言如同我们的自然语言一样,有其一套规范的语法,我们学习编程语言不过是学习它的那一套规则罢了. 语言的发展史 机器语言 --> 汇编语言 --> C语言(写程序时需要操作内 ...

  4. python个人总结_初识Python

    Program01 基本的输出 作为一种语言的学习,他的仪式感很重要 print("Hello World!") 这就是python3里面的 Hello World! 打印输出 P ...

  5. python程序 爱意_用“Python”开启程序猿的爱情之旅

    原标题:用"Python"开启程序猿的爱情之旅 Python作为一种轻量级编程语言,语言简洁开发快,没那么多技巧,受到众多追捧,尤其对于新手小白来说,是最好的选择! 许多人学习Py ...

  6. python序列符号_初识Python(4)__Python序列

    序列 序列包含:字符串,列表和元组 序列基本操作符 索引:seq[ind] 获得下标为ind 的元素 分片( [], [:], [::] ):seq[ind1:ind2] 获得下标从ind1 到ind ...

  7. 【100天精通python】Day1:python入门_初识python,搭建python环境,运行第一个python小程序

    目录 专栏导读 1 初始python python 概述 python的应用领域 应用python的公司 2 搭建python 开发环境 2.1 安装python(以windows 系统为例)(1)下 ...

  8. Python对spss类型的sav文件读取操作

    一.安装库 python要对sav类型文件进行操作,需要安装savReaderWriter模块 savReaderWriter模块下载链接 下载后解压进入文件夹 在地址栏输入cmd 输入命令进行安装 ...

  9. Python程序员经常会遇到文件权限问题,例如在打开或写入文件时出现“PermissionError: [Errno 13] Permission denied...

    Python程序员经常会遇到文件权限问题,例如在打开或写入文件时出现"PermissionError: [Errno 13] Permission denied"错误.这个错误通常 ...

最新文章

  1. Python让你成为AI 绘画大师,简直太惊艳了!(附代码))
  2. 人工智能是什么?带你一次掌握人工智能的三大重点及三大领域
  3. Vertica的这些事lt;十一gt;—— Vertica 管理
  4. tableau实战系列(七)-服务器日志清理和级别设置
  5. Java集合篇:集合类介绍
  6. 2_6 CompositeMode.cpp 组合模式
  7. sdr 软件_无线电爱好者系列-1.通过SDR获取周围无线电信号及应用
  8. conky的自动启动
  9. Javascript基础之-强制类型转换(三)
  10. mysql 日期分隔符_sql中的日期处理
  11. atitit.html编辑器的设计要点与框架选型 attilax总结
  12. mysql怎么下载_mysql下载安装使用教程
  13. matlab 系数矩阵存储,用Matlab对矩阵进行LU分解法 值得收藏
  14. 实验室管理系统LIMS的作用和意义
  15. linux复制文件查看进度条,Linux 如何显示文件夹拷贝或者移动的进度条
  16. 电视html转vga没有声音,Windows10下使用Hdmi转VGA后只有图像没有声音的解决方案
  17. 2个步骤,让人才成为组织进化的发动机
  18. 唐诗学习系统-java课程设计
  19. centos7部署rap2
  20. 含泪整理 计算机网络详细八股文(第一部分)

热门文章

  1. INFORMIX-4GL实用手册
  2. Silverlight游戏设计(Game Design):(五)面向对象的思想塑造游戏对象
  3. 推荐几篇介绍Windows CE 6.0的文章
  4. 零基础Java学习之成员方法
  5. Feature Selection Techniques
  6. 在Linux上进行内核参数调整
  7. Taints和Tolerations
  8. 关于数据库优化1——关于count(1),count(*),和count(列名)的区别,和关于表中字段顺序的问题...
  9. Lua编译实践1-词法分析:
  10. push notification for iphone