码迷,mamicode.com
首页 > 编程语言 > 详细

python 2018.7.11

时间:2018-07-11 22:51:33      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:lines   今天   write   列表   制表符   写入   with open   文件名   老师   

1. r
# 路径有两种:
# 1. 相对路径, 相对于你当前程序所在的文件夹.(必须掌握)
# ../ 返回上一层目录
# 相对的是当前程序所在的文件夹

# 2. 绝对路径. 1.从磁盘根目录寻找. 2.互联网上的一个绝对路路径
# f = open("file/wuse", mode="r", encoding="utf-8")
# s = f.read()
# f.close() # 关闭句柄
# print(s)


# f = open("吃的", mode="r", encoding="utf-8")
# for line in f: # 每次读取一行. 赋值给前面的line变量
# print(line)
# f.close()


2. w:
f = open("小护士模特", mode="w", encoding="utf-8")   # 写入之前会情掉原来的内容
f.write("杜十娘")
f.flush()
f.close()

3. a
f = open("小护士模特", mode="a", encoding="utf-8")   # 在原来的基础上进行追加内容. 
f.write("小龙女")
f.flush()
f.close()

4. r+
读写模式.
需要移动光标进行反复读写
# f = open("老师点名", mode="r+", encoding="utf-8") # r+模式, 默认情况下光标在文件的开头, 必须先读, 后写
# f.write("周润发")
# s = f.read()
# f.flush()
# f.close()
# print(s)


# f = open("精品", mode="r+", encoding="utf-8")
# s = f.read(3)
# # 不管你前面读了几个. 后面去写都是在末尾
# # f.write("哈哈") # 1.在没有任何操作之前进行写. 在开头写 2. 如果读取了一些内容. 再写, 写入的是最后
#
# # print(ss)


f = open("精品", mode="r+", encoding="utf-8")
# f.read(3)
# f.seek(3) # 移动到xx位置
# 移动到开头: f.seek(0) 开头
# 移动到末尾: f.seek(0, 2) 末尾 第二个参数有三个值. 0: 再开头, 1: 在当前, 2: 末尾

#超人的都是精品.abcdefg潘长江是精品巴拉巴拉小魔仙哈哈
# f.seek(6) # 移动6个字节. 2个字
# s = f.read(3) # 读取3个字
# print(s)
# f.seek(0)
# ss = f.read(3)
# print(ss)

# s = f.read()
# f.seek(0)
# ss= f.read()
# print(s)
# print(ss)


5. w+
f = open("亵渎", mode="w+", encoding="utf-8")  # w 操作.会清空原来的内容.  w+是不用的.
f.write("今天天气")
f.seek(0)
s = f.read()
print(s)
f.flush()
f.close()


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:
不需要关闭文件句柄
import os

with open("吃的", mode="r", encoding="utf-8") as f1, \
open("吃的_副本", mode="w", encoding="utf-8") as f2:
# s = f1.read()
# ss = s.replace("肉", "菜")
# f2.write(ss)
for line in f1:
s = line.replace("菜", "肉")
f2.write(s)

os.remove("吃的") # 删除文件
os.rename("吃的_副本", "吃的") # 重命名文件
10.其他操作
# f = open("吃的", mode="r", encoding="UTF-8")
# # 如何判断这个文件可以进行什么操作
# print(f.readable()) # 判断文件是否可读
# print(f.writable()) # 是否可写入

# l = f.readlines() # 拿到列表
# for s in l:
# ss = s.strip() # strip() 去掉空格. 还可以去掉换行符, 制表符
# print(ss)
# print(l)
# f.flush()
# f.close()
#
# s = "\t哈哈哈哈"
# print(s.strip())
#
truncate()
f = open("马大帅", mode="r+", encoding="utf-8")
f.seek(12)
# f.truncate() # truncate() 不给参数. 从文件头.截取到当前位置
f.truncate(15) # truncate(参数) 给了参数. 从文件头截取到你给这个参数的位置
f.flush()
f.close()


python 2018.7.11

标签:lines   今天   write   列表   制表符   写入   with open   文件名   老师   

原文地址:https://www.cnblogs.com/xdlzs/p/9296864.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!