• 文件处理


    seek和tell是按字节处理,read是按字符

    练习题:

    写函数,用户传入修改的文件名,与要修改的内容,执行函数,完成整个文件的批量修改操作
     1 f_name = open(file="test.txt", mode="w", encoding="gbk")
     2 f_name.write("红红火火,恍恍惚惚
    哈哈哈哈")
     3 import os
     4 f_name = "test.txt"
     5 f_new_name = "new_test.txt"
     6 old_str = "哈哈哈哈"
     7 new_str = "成龙大哥"
     8 f = open(f_name, mode="r", encoding="gbk")         #打开旧文件
     9 f_new = open(f_new_name, mode="w", encoding="gbk")   #打开新文件
    10 
    11 for line in f:
    12     if old_str in line:        #如果找到了旧字符串,就将其替换成新的
    13         new_line = line.replace(old_str, new_str)
    14     else:
    15         new_line = line      #其他字符串不变
    16     f_new.write(new_line)    #将修改的内容加入新文件
    17 
    18 f.close()
    19 f_new.close()
    20 os.replace(f_new_name, f_name)      #替换名字
    写函数,检查传入字典的每一个value的长度,如果大于2,那么仅保留前两个长度的内容,并将新内容返回给调用者。
    

      

     1 dic = {"k1": "v1v1", "k2": [11, 22, 33, 44]}
     2 def check_func(a):    # 定义形参
     3     li = []       #创建空列表
     4     for v in a.values():           # 把v代入到字典值里循环
     5         if len(v) > 2:           #判断,把符合要求的值加入到li
     6             li.append(v[0:2])
     7         else:
     8             continue       #跳出这次循环
     9     return li
    10 a = check_func(dic)    #调用函数
    11 print(a)
  • 相关阅读:
    Cookie、Session详解
    阿里云高速maven库
    java23种设计模式详解
    分布式和集群的区别
    2016 年 Java 优秀文章
    java任务调度
    解酒
    中医教你如何调理女性内分泌失调
    Oracle RedoLog-二进制格式分析,文件头,DML,DDL
    Oracle RedoLog-基本概念和组成
  • 原文地址:https://www.cnblogs.com/joneylulu/p/10229960.html
Copyright © 2020-2023  润新知