Python学习笔记_day06

一、读取文件全部数据

    想要访问文件里的数据,首先需要打开文件,Python提供了open(p)函数来打开文件,其中p是需要打开的文件的路径和名称。函数open(p)返回一个表示文件的对象,例如:

        with open(p) as file_object:

            contents=file_object.read()

    其中关键字with的作用是在不再需要访问文件时将文件关闭,这样有很大的好处,可以不必关心什么时候去关闭文件,我们只需要关心将文件打开即可。read()方法将会返回文件中的所有内容,并且是以字符串形式存储在变量contents中。返回的字符串与文件内容唯一不同的是返回的字符串末尾多了一个空字符串,在打印时就会显示多出了一个空行,我们在打印时可以使用xxxs.rstrip()去掉空字符串。

二、逐行读取

    逐行读取时使用到了for循环,例如:

           with open(filename) as file_object:

                for line in file_object:

                    print(line)

    经过前面的学习,以上代码可以看得懂了,就不再赘述。

扫描二维码关注公众号,回复: 1475254 查看本文章

三、创建一个包含各行内容的 列表

    需要注意的是,在使用with关键字时返回的文件对象,只能够在with代码块中来使用,这也就意味着在代码块外无法使用文件对象,如果我们想要在代码块外访问文件的内容,就可以在with代码块中将文件内容存在一个列表中,例如:

            with open(filename) as file_object:

                lines=file_object.readlines()

    其中lines就是一个列表,它的每一个元素对应着文件的各行内容。

四、将内容写入空文件

    例如:

            with open(filename,'w') as file_object:

                file_object.write(str)

    其中w就是要告诉Python,我们要以写入模式(r:读取模式;a:附加模式;r+:读写模式;若省略,则默认以读取模式打开)来打开文件,如果要写入的文件不存在,则Python会自动创建该文件,如果文件存在,则在w写入模式下,会在返回文件对象之前将文件内容清空。需要注意的是,Python只能够将字符串类型的数据写入文件。

五、异常

    Python的异常处理是使用try-except-else来实现。其使用方法没有特殊之处。在try代码块内的语句发生异常时,就会执行except内的语句,如果try代码块内的语句成功执行,则就会执行else代码块内的语句。

六、字符串分割

    在此之前需要了解一个字符串分割函数split(),split()函数会以空格为分隔符来分割字符串,例如str.split()会返回一个分割后的列表。

七、pass语句

    pass语句存在于代码块中时,Python将什么都不做。

八、模块json

    json能够将Python的简单数据结构存储到文件中。

    1.json.dump() 接收两个实参,分别是需要存储的数据和待存入文件的文件对象。接下来来演示一个将列表存储到文件:

            import json

            with open(filename,'w') as file_object:

                json.dump(xxxs,file_object)

    以上代码就可以将列表存储到文件filename中了。其中的filename必须是.json格式。这样当我们打开文件时就会发现列表格式以及列表数据都存入了文件中。

    2.json.load()接收一个实参,就是需要加载的文件的对象。例如:

            import json

            with open(filename) as file_object:

                xxxs=json.load(file_object)

    以上代码就可以我们之前存入的列表关联到xxxs了。其实就是我们通过json.dump()存入了文件什么,json.load()就会原封不动地再从文件中加载出来什么。

九、None

    在这里指出一点,Python中的什么都没有的表示是使用None,类似于C#中的null。


猜你喜欢

转载自blog.csdn.net/qq_26593465/article/details/80546188