zoukankan      html  css  js  c++  java
  • 文件的读写操作

    一、文件的操作流程

    #1、先打开文件
    #2、读取/写入内容
    #3、保存文件

    二、具体操作
    1.import os
    f = open('a.txt','a+',encoding='utf-8')  #f代表的是这个文件的对象,也叫句柄
    f.seek(0)#移动文件指针
    #文件对象也是可迭代的
    # count = 0

    2.#直接循环文件对象的话,循环的是文件每一行的内容(这种方法不可行,虽然可以实现本次修改)
    # res = f.read()
    # f.seek(0)  (有疑问)#移动文件指针
    # f.truncate()#清空文件内容
    # new_res = res.replace('nihao','nibuhao')
    # f.write(new_res)
    #8G的文件

    3.# 下面这些是修改文件内容的

    4.文件操作的几种方法

    5.不指定文件模式

    #如果在打开的文件的时候,不指定模式,那就是读模式
    # fw = file('a.txt','r')
    #在python2里面也可以用file这个函数去操作文件,但是在python3里面只能用open

    #文件打开模式有3种
    #1、w写模式,它是不能读的,如果用w模式打开一个已经存在的文件,
    #会清空以前的文件内容,重新写
    #w+,写读模式,只要沾上w,肯定会清空原来的文件
    #2、r读模式,只能读,不能写,而且文件必须存在
    #r+是读写模式,只要沾上r,文件必须得存在
    #3、a追加模式,也是只能写,在文件的末尾添加内容
    #4、rb+、wb+,ab+,这种是二进制模式打开或者读取,一些音乐文件、图片等等

    6.#flush用法

    7.with的用法,你文件不再用的时候,就会自动给你关闭文件

    8.下面介绍两个例子:

    例子一

    #1、写一个修改文件的程序,要求传入一个文件名,再传入一个被修改的字符串,再传入一个要修改成什么的字符串
    #运行文件的时候是这么运行的
    #python xxx.py a.txt wangguoyuan hehe

    # import sys
    #
    # print(sys.argv)#通过这个方法获取到你传入的数据
    # #参数传入错误,需要传入要修改的文件,被修改的字符串和修改的字符串
    # import os
    # os.remove('a.txt')
    # os.rename('xxx','xxxx')

    import sys,os
    inputs = sys.argv
    #存的是所有运行时候传进来的参数
    #它就是用来获取在用python命令运行python文件的时候,传入的参数
    #1、判断用户输入的是不是够个数

    例子二

    #2、写一个可以添加商品、查询商品的这么程序
    #1、首先需要登录,登录的用户名和密码是存在一个文件里面的,格式是wangguoyuan,123456
    #账号密码是输入正确就登录,
    #登录之后,提示有3个选择,1、添加商品2、查询商品3、退出程序,exit()
    #添加商品,需要输入、商品名称、商品id、商品价格,都不能为空,价格和id只能是数字,商品名称不能重复
    #添加商品成功后,要把商品写入到product.txt这个文件里面
    #商品信息格式
    # {
    # 'macbook':{
    # 'id':1,
    # 'price':9999
    # },
    # 'car':{
    # 'id':2,
    # 'price':9999
    # }
    # }
    #查询商品,输入商品名称,不能输入空,如果商品存在,打印商品的信息
    #商品名:xx,商品价格:xxx,商品id:xxxx
    #如果商品不存在,提示不存在,如果直接输入exit,那就直接退出程序
    # d = eval('{"username":1}')#用它来把字符串转成字典
    # print(type(d))

    #下面这一段是登录的逻辑

    #字典取值是最方便的

    #下面这一段是操作商品的

  • 相关阅读:
    SQL Server游标
    SQL Server中的事务与锁(帮助理解,优化,很细致)
    T-sql语句查询执行顺序
    安装odoo过程中出现的问题
    odoo继承父类中的函数(方法)
    linux qt下 QSqlDatabase: QMYSQL driver not loaded
    odoo学习:创建新数据库及修改数据库内容
    登录mysql出现/var/lib/mysql/mysql.sock不存在
    odoo学习记录1
    zzUbuntu安装配置Qt环境
  • 原文地址:https://www.cnblogs.com/wangguoyuan-09/p/6889157.html
Copyright © 2011-2022 走看看