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. python 基础篇 类基础与继承

    先来简单解释几个概念 类:一群有着相同属性和函数的对象的集合,这里对应 Python 的 class. 对象:集合中的一个事物,这里对应由 class 生成的某一个 object,比如代码中的 har ...

  2. 从零开始建图床 minio

    图床 图床可以参考知乎这篇文章 一些小众图床有空空间免费,但不知道什么时候会挂掉.前些年用过的极简图床,现在也销声匿迹: 大厂提供的有限免费空间,七牛云10G空间,10Gb/月 流量免费:但如果使用h ...

  3. Python 中取代 Printf 大法的工具

    「printf 大法」大概是最早期学到的 debug 方式?不同语言有不同的指令,在 Python 里对应的是 print指令 (加上%或是.format). 刚刚看到「 cool-RR/pysnoo ...

  4. ACNet: 特别的想法,腾讯提出结合注意力卷积的二叉神经树进行细粒度分类 | CVPR 2020

    论文提出了结合注意力卷积的二叉神经树进行弱监督的细粒度分类,在树结构的边上结合了注意力卷积操作,在每个节点使用路由函数来定义从根节点到叶子节点的计算路径,结合所有叶子节点的预测值进行最终的预测,论文的 ...

  5. 在项目中部署redis的读写分离架构(包含节点间认证口令)

    #### 在项目中部署redis的读写分离架构(包含节点间认证口令) ##### 1.配置过程 ---  1.此前就是已经将redis在系统中已经安装好了,redis utils目录下,有个redis ...

  6. 免费申请通配符类型SSL证书

    折腾起因 最近做了个小网站wawoo.fun,一个做mac壁纸的小网站,网站还处在初级阶段,不能跟大神的比.网站发布后发现因为没有使用https,谷歌浏览器会在地址栏提示网站不安全.因此想提升下网站的 ...

  7. 2019-2020-1 20199303《Linux内核原理与分析》第五周作业

    系统调用的三层机制 API:第一层是指Libc中定义的API,这些API封装了系统调用,使用int 0x80触发一个系统调用中断:当然,并非所有的API都使用了系统调用,如完成数学加减运算的API就没 ...

  8. java学习(第二篇)语法学习

    1.java标识符 类名.变量名以及方法名都被称为标识符. 关于 Java 标识符,有以下几点需要注意: 所有的标识符都应该以字母(A-Z 或者 a-z),美元符($).或者下划线(_)开始 首字符之 ...

  9. Windows 版本 Enterprise、Ultimate、Home、Professional

    关于Windows 的安装光盘版本很多种,很多人不知道选择哪些. Ultimate 旗舰版,VISTA开始有了这个级别,是最全最高级的,一般程序开发的电脑,玩游戏的电脑,建议用它,不过对配置稍有一些要 ...

  10. 标准库ConfigParser模块

    用于生成和修改常见配置文档,当前模块的名称在 python 3.x 版本中变更为 configparser. 来看一个好多软件的常见文档格式如下: 1 2 3 4 5 6 7 8 9 10 11 12 ...