学习笔记12

文件与文件系统
open(file,mode=‘r’,buffering=None,encoding=None,errors=None,newline=None,closefd=True):打开文件。

  • file:必需,文件路径
  • mode: 可选,文件打开模式。
  • buffering:设置缓冲。
  • encoding:一般使用utf8
  • errors:报错级别
  • newline:区分换行符。

‘r’ 以只读方式打开文件
‘w’ 写入 原有内容会被删除 文件不存在 创建一个新文件。
‘x’ 写模式 新建一个文件
‘a’ 追加模式 打开一个文件用于追加 文件不存在 创建新文件进行写入。
‘b’ 以二进制模式打开文件
‘t’ 以文本模式打开(默认)
‘+’ 可读写模式

打开文件时 如果该文件无法被打开,会抛出OSError
f.close()用于关闭一个已打开的文件 如果已关闭会抛出ValueError
f.read([size])用于从文件读取指定的字符数。(未给定或负则为读取所有)
f.readline()读取整行,包括末尾的“\n”
f.readlines()用于读取所有行并返回列表。
f.tell()返回文件的当前位置。
f.seek()用于移动文件读取到指定位置。
f.write(str)用于向文件中写入指定字符串
f.writelines()向文件写入一个序列字符串列表。

关键词with语句保证文件之类的对象在使用完后一定会执行他的清理方法。
os模块

  • os.getcwd()返回当前工作目录
  • os.chdir(path)用于改变当前工作目录到指定的路径
  • listdir(path=".")返回path指定的文件夹包含的文件或文件夹的名字的列表。
  • os.mkdir(path)创建单层目录。
  • os.makedirs(path)用于递归创建多层目录
  • os.remove()用于删除指定路径的文件
  • os.rmdir(path)用于删除单层目录 仅当文件夹为空时才可以 否则会报错。
  • os.removedirs()递归删除目录 目录不能为空。
  • os.rename()命名文件或目录
  • os.system(command)运行系统的shell命令。

序列化与反序列化
pickle.dump(obj,file,[,protocol])将obj对象序列化存入已经打开的file中。
obj 想要序列化的obj对象
file 文件名称、
protocol 序列化使用的协议。
练习题
1.
需要指定utf-8编码
2.

file=input()
def longest_word(filename):
    with open(filename) as file:
        content=file.read()
        content1=content.split(" ")
        x=0
        for i in content1:
            a=len(i)
            if a>x:
                list1=[]
                x=a
                list1.append(i)
            elif a==x:
                list1.append(i)
        print(list1)
longest_word(file)

心得
坚持一件事确实很难。在坚持打卡的过程中,我学到了许多之前不了解的知识,当然也确实很累,但当我在以后又看见我写的这些学习笔记时应该会很欣慰吧。很感谢这次活动。 ^ _ ^

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值