• python学习Day08--文件操作


    【主要内容】

    文件操作:
    1. r
    2. w
    3. a
    4. r+
    读写模式.
    需要移动光标进行反复读写
    5. w+
    6. a+
    7. b bytes 读写操作的是字节. 用在非文本上
    8. seek() 移动光标到xx位置
    开头: seek(0), 末尾: seek(0,2)
    9. 文件修改
    创建新文件. 把修改后的内容写入新文件. 删除老文件. 重命名新文件
    import os
    os.remove("")删除文件
    os.rename("源文件", "新文件名") 重命名文件

    for line in f:
    line 一行数据

    with open("文件名") as f:
    不需要关闭文件句柄

    【代码】

    作业与练习

     1 #****************上次作业********************
     2 '''
     3 #水仙花
     4 n=input("请输入一个三位数:")
     5 s=int(n[0])**3+int(n[1])**3+int(n[2])**3
     6 if int(n) == s:
     7     print("是水仙花")
     8 else:
     9     print("不是")
    10 
    11 
    12 # 冒泡排序(最入门)
    13 lst=[11,3,45,23,35,67,45,54,34,78,34,26,4,8,2]
    14 for el in range(len(lst)):#记录内部循环的次数
    15     i = 0
    16     while i < len(lst)-1: #将最大值移动到右边
    17         if lst[i] > lst[i+1]:
    18             lst[i],lst[i+1]=lst[i+1],lst[i]
    19         i = i + 1
    20 print(lst)
    21 
    22 # 36选7,不重复
    23 from random import randint
    24 s=set() #集合不重复特性
    25 while len(s)<7:#当元素中的个数小于7时,就去添加
    26     s.add(randint(1,36))
    27 print(s)
    28 
    29 #**************今日练习****************
    30 #文件读取、关闭(只读模式)
    31 f=open("歌姬",mode="r",encoding="utf-8")
    32 s=f.read()
    33 print(s)
    34 f.close()
    35 
    36 #相对路径:../上一层文件夹(必须掌握)
    37 f=open("../../file/wuse",mode="r",encoding="utf-8")#假设.p文件在sb文件中
    38 s=f.read()
    39 print(s)
    40 f.close()
    41 
    42 #绝对路径,1、从磁盘根目录寻找;2、互联网上的绝对路径
    43 
    44 #只写模式(会将之前写的内容清除)
    45 f=open("小护士模特",mode='w',encoding="utf-8")
    46 f.write("大白梨")
    47 f.flush() #刷新
    48 f.close()
    49 
    50 #追加模式(不会清除原来东西,只是添加)
    51 f=open("小护士模特",mode="a",encoding="utf-8")
    52 f.write("小龙女")
    53 f.flush()
    54 f.close()
    55 
    56 # rb模式 读取的内容直接就是字节
    57 f=open("小护士模特",mode="rb")
    58 s=f.read()
    59 print(s)
    60 print(s.decode("utf-8"))
    61 f.close()
    62 
    63 # wb模式 写入的内容直接是字节
    64 f=open("小护士模特",mode="wb")
    65 f.write("你好啊".encode("utf-8")) #需要编码
    66 f.close()
    67 
    68 # r+模式 默认情况下光标在开头(安全模式:先读后写)
    69 f=open("老师点名",mode="r+",encoding="utf-8")
    70 s=f.read()
    71 f.write("周杰")
    72 f.flush()
    73 print(s)
    74 f.close()
    75 
    76 # w+模式(不常用)
    77 f=open("亵渎",mode="w+",encoding="utf-8")
    78 f.write("今天天气")
    79 f.seek(0) #将光标移到开头
    80 s=f.read()
    81 print(s)
    82 f.flush()
    83 f.close()
    84 
    85 # 文件内容修改
    86 import os
    87 with open("吃的",mode="r",encoding="utf-8") as f1,
    88         open("吃的_副本",mode="w",encoding="utf-8") as f2:
    89     s=f1.read()
    90     ss=s.replace("肉","菜")
    91     f2.write(ss)
    92 os.remove("吃的")
    93 os.rename("吃的_副本","吃的")
    94 '''
    95 f=open("吃的",mode="r",encoding="utf-8")
    96 s1=f.readline()
    97 s2=f.readline()
    98 print(s1)
    99 print(s2)
  • 相关阅读:
    C#Socket发16进制以及进制转换
    WPF跨线程操作UI界面控件
    DispatcherTimer和Timer的区别
    C#等比列放大缩小图片
    计算进项税
    AX 中通过SqlServer数据库刷数据
    AX中日期的常用方法
    从AX2012系统批量生成CSV格式数据
    装箱单过发票
    导入CSV文件乱码
  • 原文地址:https://www.cnblogs.com/fengxb1213/p/12290714.html
Copyright © 2020-2023  润新知