一、.文件操作的函数

    open("文件名(路径)" ,mode = "模式" , encoding="字符集")

      注:文件路径:

             (1)绝对路径{从磁盘的根目录寻找,或从互联网寻找}

             (2)相对路径相对于当前程序所在的文件夹 ../代表从当前文件夹跳出

  .模式

    r: 读模式

      其他操作:

        readline() 读行 一次读一行

        readlines()  多行读

    w: 写模式

      每当进行写模式时会先清空原有内容,如果文件不存在时则会自动创建文件

    a:  追加写

      如果文件不存在则创建,存在则追加到最后

    b: b模式是当我们对非文本文件进行操作时只能用b模式,b表示以字节的操作

      {rb:读b模式,wb:写b模式,ab:追加b模式}

    r+:可读,可写

    w+:可写,可读

    a+:可写,可读

    r+b:以bate形式进行读写

    w+b:以bate形式进行写读

    a+b:以bate形式进行写读

  3.其他常见的操作

    1.光标(seek)

      seek(0) 开头

      seek(0,1) 找到当前光变的位置

      seek(0,2) 结束的位置

    2.tell() 获得光标的位置

    3.truncate是截断文件,所以文件的打开方式必须可写,但是不能用w或w+等方式打开,因为那样直接清空文件了,所以truncate要在r+或a或a+等模式下测试效果。

  4.修改文件

    1.首先要引入OS模块

    2.打开目标文件

    3.打开文件副本

    4.在目标文件中读取内容进行修改写入到副本中

    5.删除源文件

    6.重命名副本 

  习题练习:

  

  代码如下:

  

 new = []
sum = 0
with open("a.txt",mode="r",encoding="utf-8")as i:
for line in i:
li = line.strip().split()
dic = {"name":li[0],"price":int(li[1]),"amount":int(li[2])}
new.append(dic)
sum = sum + int(dic["price"])
print(sum)
print(new)

  运行截图:

  

最新文章

  1. Dev 关于用openFileDialog控件上传图片的问题
  2. 【myEcplise2015 更换主题+字体颜色】
  3. 为EasyUI 的Tab 标签添加右键菜单
  4. 每日英语:A Different Color: China's Chameleonic Politics
  5. 08_Queue(队列UVa 10128)
  6. [Effective JavaScript 笔记]第4章:对象和原型--个人总结
  7. Linux内核--网络栈实现分析(二)--数据包的传递过程--转
  8. 使用 CAS 在 Tomcat 中实现单点登录
  9. [Angular 2] Controlling how Styles are Shared with View Encapsulation
  10. RequireJS 2.0 新特性
  11. XCL-Charts绘画面积图(AreaChart) 案件1
  12. iOS所有常用证书,appID,Provisioning Profiles配置说明及制作图文教程
  13. Winsock网络编程笔记(4)----基本的理论知识
  14. New Windows 10 SDK - Multi-instance UWP apps
  15. Enterprise Architect 时序图
  16. 38_redux_counter应用_react版本
  17. redis5.0.0.版设置开机自启
  18. PAT Basic 1016
  19. Tomcat启动项目时内存溢出问题如何解决
  20. Linux 更新vim

热门文章

  1. Sublime用正则表达式进行逗号分隔实现列的替换
  2. RequestUtil 获取网址页面信息
  3. mac的brew安装tomcat以及idea设置
  4. jenkins回滚之groovy动态获取版本号
  5. Python中IO编程-StringIO和BytesIO
  6. javadoc 抽出代码中的注释
  7. Appium元素定位难点:混合式的native+webview
  8. javaNIO核心概念
  9. docker容器中用户自定bridge网络与默认bridge网络之间的区别
  10. AVR单片机教程——按键状态