00:00
好,我们继续来看文件的读取,那这里我们还是新创建一个文件,叫做一个零六文件的一个读取点,一个PY,那我们这次呢,还是读我们这个demo.tit啊,还是读这个文件,那在这我们还是先把这个代码写一遍,那这里边我们还是先来创建一个变量来保存我们文件的名file name file name,我们叫做一个demo.t直接写就OK了,然后在这我们是不是就可以去操作这个文件了,我们先写一个什么呀?哎,我们先写一个这个哎,With,呃,With,后边我们来调用我们这个什么呀?哎,调用我们这个open open谁呢?哎,我们这个file name file name,我们这来一个SS,我们就叫一个这个file obj吧,哎,Fair obj,那在这里边我们就可以通过这个file OB接来对这个文档进行这个哎操作了,当然如果你希望避免一下异常的情况,你可以把这个TRY还有这个except给它写上,对吧,把我们这个with放到这个什么呀,哎,放到这个。
01:00
代理,然后呢,在这儿我们再来写一个。哎,叫做一个except except补货的时候,我们叫做一个file,哎,File not found的一个error啊,然后在这我们直接当出现这个错误以后,我们就打印一个语句就OK了,我们叫做什么呢?哎,直接来一个,我们叫做一个这个file name,哎,File name这个什么呀,哎,不存在。诶不存在,就这么一个处理就OK了啊这一保存,现在我们一执行它就没有错了,对吧?可以运行了,然后接下来我们在这儿来说一下,我们读取我们这个文件读取我们已经说了,我们通过什么呀?诶通过我们这个read来干嘛呢?诶来读取我们这个文件中的这个诶内容啊,通过read来读取文件中的一个内容,那所以如果你要想读的话,你可以直接我们这来一个这个content等于什么呀?等于这个file obj哎点一个这个read啊read这一读完了,然后在这我们直接一打印这个content,哎,那这个content现在就是什么,是不是就是我们读取到的内容啊,哎,我们这里一执行走一个,诶那是不是就就读到了,哎就读到了啊就这么一个效果啊,其实诶并不难啊,并不难,那接下来我们再来说,诶,我们现在读的全都是这个什么呀,全都是这个英文对吧?诶英文假如说我这儿我在创建一个新的文件啊,我再创建一。
02:26
一个新的文件,嗯,我来写点什么呢?我写点中文是吧,简单点,诶锄禾日当午,诶,锄禾日当午,汗滴禾下土,哎,然后谁知盘中餐,哎,谁知盘中餐粒粒皆辛苦啊,粒粒皆辛苦,我就写这么一个啊,保存一下这个我们叫做一个demo2.tit啊demo2.tit,嗯,拒绝访问。告诉我不能存储,不用管它啊,不用管它实际上已经存下来了啊好,那现在这个文件我们这已经创建完了,这里边存的是中文对吧,那刚才我们看到了,我这里边我读这个英文是没问题,那现在我读中文行不行呢?来我直接把DEMO改成demo2.t,这个时候我们还是,那这个时候再读是不是读代二了,哎,我们来运行一下走一个。
03:16
这个时候他给我们报了一个错儿,告诉你什么什么GBK,什么砍的抵扣的,什么摆乱七八糟,哎说这么一个错吧,哎,反正就告诉你这个文件他没读出来啊,他没读出来。那这个是为什么啊,这个是为什么,那这里我们来说一下,我们现在调用open来读一个文件啊,这块我们来说一下,我们这调用我们这个open来读什么呢?诶来读取,诶来打开一个文件,那注意了我们可以什么呢?我们可以将我们这个文件分成什么呢?诶分成这个两种类型啊,两种类型一种是什么呀?诶是我们这个纯文本文件啊,一种是文本文件,什么叫纯文本文件使用什么呀?诶使用UTF杠八。
04:04
哎,这些导编码什么呀?哎,编写的文本文件,这个我们都说过了,什么叫纯文本文件对吧?诶使用UDX8等编码编写的文本文件,还有一种第二种,一种是什么呢?是我们叫做一个二进制文件,二进制文件像什么呀?像我们这个图片啊,像我们这个MP3呀,像我们这个PPT诶等,诶这些文件啊,这些都属于我们叫做二进制文件,但是注意了,其实包括我们的纯文本文件,咱们也可以说它是一个二进制文件,只不过这些二进制文件是不是使用这些编码我们知道啊,诶u ti杠八呀,S two啊,SSO85德这些编码我们是知道的,所以我们叫它纯本文件,而且它里边只能保存文本,其他东西都存不了,那这种二进制文件就比较复杂了,像word,像PPT,像这个Excel,这些都属于二进制文件,它也是存到我们硬盘里,但是它的编码我们是不是不知道啊,哎,不知道,所以我们。
05:04
用open去打开文件的时候,实际上打开有两种模式,一种叫纯文件,一种叫什么呀,二进制文件,那注意了我们什么呢?我们open打开文件时。打开文件时默认是以什么呀?诶是以我们这个文本文件的形式打开的啊,默认是以文本文件形式打开的,所以你在这一定要open去打开这个文件,它默认就是以什么以我们这个文本形式去打开的,它就当你是一个什么呀纯文件去打开的就OK了,诶所以这里边我们为什么DEMO能读出来,就因为它就是当纯文件打开的,所以里边内容我们就直接能读取,但是问题是为什么这个锄日当午就打不开,诶为什么它就打不开?诶非常简单,因为什么?因为我们这个锄禾日当午这个文件它是不是有编码啊,诶叫UTF杠八,而我们这个编码虽然也是用的是UTF杠八,但是由于它里边是纯英文,其实你也看到了,这显示一个叫做ask to,因为是纯英文的啊,纯英文的,所以这里边注意了,既然涉及到文本文件,那是不是就有编码啊,哎,就有编码所。
06:18
没注意open打开文件的时候,默认是以文本文件的形式打开的,而什么呢?而却它,但是open。默认的编码什么呢?诶编码为那诶编码为捺,所以你之咱们之前写的这个打开文件的时候,我们经看到了coding啊,我加了一下划线,Encoding默认值是不是none了,哎,Encoding默认值既然是none了,没有编码,没有编码其实它会默认使用最简单那个编码,也就是那个ask two那个编码,那既然没有编码,那这个时候注意了,英文还可以处理,因为ask two嘛,但是这个时候中文就处理不了了,为什么中文编码是太多了,你是GPK是GBR312还是UT杠八还是什么编码,他是不是不知道啊,哎,他不知道,所以这个时候中文的文件就没有办法打开了,所以注意,那我要想打开中文件怎么办?那你就必须去指定什么呀,指定这个编码,所以诶,处理我们这个什么呀,诶处理我们这个文本文件时,我们必须要什么,诶必须要指定我们这个文件的一个编码啊,必须要指定编码,那我们通用的做法就是什么呀?诶。
07:28
指定我们这个编码为我们这个UTF杠八,所以在这儿直接你写一个这个encoding,我们来等于一个这个UTF杠八,那这样这个编码就已经指定上了啊,指定上了直接一保存,我们这个时候再看效果一执行,那现在这是不是就读出来了,哎,这就读出来了啊,所以注意在用我们这个RA去读这个中文文件的时候,或者说是这个阿two以外的这些文件的时候,一定要来干嘛,一定要来指定这个什么呀,诶编码,那这样我们这个中文文件是不是也就可以正常去读取了,诶也就可以正常读取了啊,那这个是我们说的一个什么呀?哎,我们的这个read啊,来读取我们这个文件,好,我们这先稍微停一下,待会我们来继续来说它。
我来说两句