1、修改文件1

# fw = open('username','w')
# fw.write('hhhh')
# fw.flush()  #强制把缓冲区里面的数据写到磁盘上

1、简单粗暴直接
#  1、打开一个文件,获取到他的所有内容
#  2、对内容进行修改
#  3、清空原来文件的内容
#  4、把新的内容写进去
#syz_niuhanyang,78910\nsyz_zll,78910\nsyz_fyr,78910
f = open('username','a+')
f.seek(0)
all_str = ''
for s in f:
   new_s ='syz_'+s
   all_str=all_str+new_s
f.seek(0)
f.truncate() #清空文件内容
f.write(all_str)
f.close()

2、打开2个文件
# a文件
# 写一行写到b文件
# a.txt a.txt.bak
# 删掉a文件,b文件名字改成a文件名
# flower
import os
with open('words',encoding='utf-8') as fr,open('.words.bak','w',encoding='utf-8') as fw:
   for line in fr:
      new_line = line.replace('','flower')  #替换字符
      fw.write(new_line)
os.remove('words') #删除文件
os.rename('.words.bak','words') #改名

3、json串

import json

f = open('product.json',encoding='utf-8')
res = f.read()
product_dic = json.loads(res)  #json串,变成python的数据类型
print(json.load(f)) #传一个文件对象,它会帮你读文件


d =  {
   'zll':{
      'addr':'北京',
      'age':28
   },
   'ljj':{
      'addr':'北京',
      'age':38
   }
}
fw = open('user_info.json','w',encoding='utf-8')
dic_json = json.dumps(d,ensure_ascii=False,indent=4)  #字典转成json,字典转成字符串
fw.write(dic_json)

json.dump(d,fw,ensure_ascii=False,indent=10)  #操作文件

读写文件函数

import json
def op_data(filename,dic=None):
   if dic:#写入进去
      with open(filename,'w',encoding='utf-8') as fw:
         json.dump(dic,fw,ensure_ascii=False,indent=4)
   else:
      with open(filename,encoding='utf-8') as fr:
         return json.load(fr)

FILE_NAME = 'user_info.json'
all_users = op_data(FILE_NAME)
for i in range(3):
   choice = input('输入,1注册,2、删除')
   if choice=='1':
      username = input('usenrame:')
      pwd = input('pwd:')
      if username not in all_users:
         all_users[username]=pwd
         op_data(FILE_NAME,all_users)
   elif choice=="2":
      username = input('usenrame:')
      all_users.pop(username)
      op_data(FILE_NAME, all_users)

import json

dic = {"name":"niuniu","age":18}

print(json.dumps(dic))#把字典转成json串

fj = open('a.json','w')

print(json.dump(dic,fj))#把字典转换成的json串写到一个文件里面

s_json = '{"name":"niuniu","age":20,"status":true}'

print(json.loads(s_json))#把json串转换成字典

fr = open('b.json','r')

print(json.load(fr))#从文件中读取json数据,然后转成字典

python-修改文件的更多相关文章

  1. python 修改文件内容

    python 修改文件内容 一.修改原文件方式 1 def alter(file,old_str,new_str): 2 """ 3 替换文件中的字符串 4 :param ...

  2. python 修改文件中的内容

    在python的文件操作中,是没有办法对文件中具体某行或者某个位置的内容进行局部的修改的,如果需要对文件的某一行内容进行修改,可以先将文件中的所有的内容全部读取出来,再进行内容判断,是否是需要修改的内 ...

  3. python 修改文件内容3种方法

    原文链接:https://www.cnblogs.com/wc-chan/p/8085452.html def alter(file,old_str,new_str): ""&qu ...

  4. python 修改文件的创建时间、修改时间、访问时间

    目录 python 修改文件创建.修改.访问时间 方案一 方案二(无法修改文件创建时间) python 修改文件创建.修改.访问时间 突如其来想知道一下 python 如何修改文件的属性(创建.修改. ...

  5. Python修改文件的两种方法

    目录: 一.以占用内存的方式修改文件 二.以占用硬盘的方式修改文件 引言 文件修改的方法从操作方式上大致可以分为两类,一种是以占用电脑内存的方式,将文件读取到内存中修改再存回硬盘:第二种方法是分别打开 ...

  6. Python修改文件内容

    工作中要写个脚本来修改文件的内容,然后就写了一个刷子: #coding:utf8 import os def modify_file(old_file, new_version, old_versio ...

  7. python修改文件后缀名

    修改文件后缀名 # -*- coding: utf-8 -*- import os # # 列出当前目录下所有的文件 # filedir = 'C:\\Users\\WT\\Desktop\\test ...

  8. python修改文件中字符串并写入

    python实际工作中,做一些小工具,很方便.最近在做一个格式转换工具时候,用到了替换文件中特定字符串的 功能.当初没直接想出来,就在网上查了一下,做个记录,方便后续使用. # -*- coding: ...

  9. python 修改文件编码方式

    import chardet import os def strJudgeCode(str): return chardet.detect(str) def readFile(path): try: ...

  10. python修改文件的属性

    1.执行attrib系统命令 ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [+I | -I] [drive:][path][filename] [/ ...

随机推荐

  1. jeecg ant design vue一级菜单跳到外部页面——例如跳到百度

    需求:点击首页跳到百度新打开的页面 找到SideMenu.vue   对应的inde.js找到renderMenuItem 函数.加一个判断 if(menu.meta.url=='https://ww ...

  2. CountDownLatch/CyclicBarrier/Semaphore

    CountDownLatch 概念 让一些线程阻塞直到另一些线程完成一系列操作才被唤醒 CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,调用线程就会被阻塞.其它线程调 ...

  3. 第九次-DFA最小化,语法分析初步

    1.将DFA最小化:教材P65 第9题 2.构造以下文法相应的最小的DFA S→ 0A|1B A→ 1S|1 B→0S|0 3.自上而下语法分析,回溯产生的原因是什么? 4.P100 练习4,反复提取 ...

  4. Windows 计划任务 如果选择未登录就运行 则看不到GUI

    You can specify that a task should run even if the account under which the task is scheduled to run ...

  5. 企业级 Harbor 镜像仓库

    Harbor是由VMWare公司开源的容器镜像仓库.事实上,Harbor是在Docker Registry上进行了相应 的企业级扩展,从而获得了更加广泛的应用,这些新的企业级特性包括:管理用户界面,基 ...

  6. Python2 和 Python3的区别

    Python2 和 Python3的区别: 1.python2的默认编码方式是ascii码:python3的默认编码是utf-8. 如果出现乱码或者编码错误,可以使用以下编码在文件头来指定编码: #- ...

  7. 3年前的一个小项目经验,分享给菜鸟兄弟们(公文收发小软件:小技能 SmallDatetime)...

    为什么80%的码农都做不了架构师?>>>   这个系统中的数据库有100多M,里面当然有很多表,我的每个表里,有几个字段,都是一样的例如 CreateUserID.CreateDat ...

  8. Vue项目开发流程(自用)

    一.配置开发环境 1.1 安装Node.js npm集成在Node中,检查是否安装完成:node -v 1.2 安装cnpm(淘宝镜像) npm install -g cnpm,检查安装是否完成:cn ...

  9. Kudu,支持快速分析的新型Hadoop存储系统

    Kudu是Cloudera开源的新型列式存储系统,是Apache Hadoop生态圈的新成员之一(incubating),专门为了对快速变化的数据进行快速的分析,填补了以往Hadoop存储层的空缺.本 ...

  10. File Operations

    在刷题测试程序时,为了避免每次都手工输入,我们可以把输入数据保存在文件中:为了避免输出太长,我们将输出也写入文件中,方便与标准答案文件进行比较. 文件使用一般有两种方法:输入输出重定向.fopen. ...