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. fasttext 和pysparnn的安装

  2. 一个老牌程序员推荐的JavaScript的书籍,看了真的不后悔!

    很多人问我怎么学前端?我的回答是:读书吧!相对于在网上学习,在项目中学习和跟着有经验的同事学习,书中有着相对完整的知识体系,每读一本好书都会带来一次全面的提高.而如果深一脚浅一脚的学习,写出代码的质量 ...

  3. 2019-2020-1 20199329《Linux内核原理与分析》第六周作业

    <Linux内核原理与分析>第六周作业 一.本周内容概述: 学习系统调用的相关理论知识,并使用库函数API和C代码中嵌入汇编代码两种方式使用getpid()系统调用 学习系统调用syste ...

  4. Spring5参考指南:事件Event

    文章目录 基于继承的Event 基于注解的Event 异步侦听器 Spring提供了很方便的事件的处理机制,包括事件类ApplicationEvent和事件监听类ApplicationListener ...

  5. zabbix管理,添加监控主机

    一:添加本机为监控主机  二.监控其他Linux主机agent端 1.环境部署 [root@localhost ~]# hostname agent.zabbix.com[root@localhost ...

  6. 谈谈你对vuex的理解

    vuex创建公有仓库的插件 1.储存公共状态 2.能够根据事件来修改状态 3.多个组件都需要变化,有机制把这个新的状态通知给所有的组件 vuex中的四个类 1.state    定义需要共享的状态 2 ...

  7. webpack4.x开发环境配置

    写这篇文章的初衷在于,虽然网络上关于webpack的教程不少,但是大多已经过时,由于webpack版本更新后许多操作变化很大,很多教程的经验已经不适合.当我们使用npm安装webpack时,若不指定w ...

  8. Openstack HA集群5-Keystone HA

    # yum install -y openstack-keystone httpd mod_wsgi # mysql -u root -p -e "CREATE DATABASE keyst ...

  9. 一只简单的网络爬虫(基于linux C/C++)————开篇

    最近学习开发linux下的爬虫,主要是参考了该博客及其他一些网上的资料.网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息 ...

  10. SSM整合案例:图书管理系统

    目录 SSM整合案例:图书管理系统 1.搭建数据库环境 2.基本环境搭建 2.1.新建一个Maven项目,起名为:ssmbuild,添加web的支持 2.2.导入pom的相关依赖 2.3.Maven静 ...