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)
原文地址:https://www.cnblogs.com/fengxb1213/p/12290714.html