python-文件与异常

目录

1、文件及文件基本操作

①文件简介

 ②目录与文件路径

 ③文件操作

2、CSV文件操作

3、异常


1、文件及文件基本操作

①文件简介

文件,是一组相关数据的集合。组成文件的数据可以是ASCII编码,也可以是二进制编码。文件名都包含两个部分:主文件名和扩展名,两者之间用“.”隔开。

 ②目录与文件路径

文件保存的位置被称为路径

绝对路径——从文件所在驱动器名称(又称“盘符”)开始描述文件的保存位置。

        D:\pythonPro\chap11_文件

相对路径——从当前工作目录开始描述文件的保存位置。每个运行的程序都有一个当前工作目录,又称cwd。如表示“当前目录下python目录下的5-1.py文件”,则为:

\\python\\5-1.py

 ③文件操作

打开文件:

File对象名 = open(文件路径字符串,模式字符)

 关闭文件(将文件从内存保存回外存的过程):

File对象名.close()

写文件

>>> import os
>>> file=open("mydata.txt","w")

写模式打开不存在的文件时,系统会新建一个新文件。文件与文件对象file关联,后续文件操作通过文件对象实现。

用文件对象的write方法写文件。

        格式:文件对象.write(写入字符串

        将指定的字符串写入文件的当前插入点位置

>>> file.write("我要学python")
9    #回显写入的字符数
>>> file.close()

用文件对象的writelines方法写文件。

        格式:文件对象.write(字符串序列

        以序列的方式接受多个字符串作为参数,一次性写入多个串

import os
file=open("mydata.txt","w")
ls=["我要学python\t","python使我快乐"]
file.writelines(ls)
file.writelines(["!!!"])
file.close()

看看运行效果吧

 再来让我们看看模式‘a’,模式‘a’和模式‘w’的区别:

>>> file = open("mydata.txt",'w')
>>> file.write("笑书神侠倚碧鸳")
>>> file.close()


>>> file = open("mydata.txt",'a')
>>> file.write("笑书神侠倚碧鸳")
>>> file.close()

 运行结果是这样的

读文件:

用文件对象的read方法写文件。

        格式:字符串变量 = 文件对象.read()

        读出文件所有内容并作为一个字符串返回

>>>file = open("mydata.txt","r")
>>>text = file.read()
>>>print(text)
"我要学python	python使我快乐!!!"
>>>file.close()

用文件对象的readlines方法写文件。

        格式:字符串变量 = 文件对象.readlines()

        读出文件所有内容并作为一个列表返回

>>> file = open("mydata.txt","r")
>>> text = file.readlines()
>>> print(text)
['我要学python\tpython使我快乐!!!']
>>> file.close()

用文件对象的readline方法写文件。

        格式:字符串变量 = 文件对象.readline()

        读出文件中当前行,并以字符串的形式返回

>>> file = open("mydata.txt","r")
>>> text = file.readline()
>>> print(text)
'我要学python\tpython使我快乐!!!'

>>> text = file.readline()    #每次读一行
>>> print(text)
''
>>> file.close()

2、CSV文件操作

       CSV,是英文Comma-Separated Values的缩写,翻译为“逗号分隔值”CSV文件可以理解为以带逗号分隔(也可以是其他简单字符分割)的纯文本形式存储表格数据的文件。

 CSV文件的读写操作:

>>> import csv

#读操作
>>> with open("stu.csv","r")as stucsv:
     reader = csv.reader(stucsv)
     for row in reader:
         print(row)
#一行对应一个列表,列表元素都是字符串
['姓名', '性别', '年龄']
['杨卓霖', '男', '21']
['小明', '女', '2']

#写操作
>>> with open("stu.csv","a",newline='')as stucsv:
        writer = csv.writer(stucsv)
        writer.writerow(['小红','男','16'])

使用csv模块读取CSV文件时

        —— 先创建一个reader对象。

        —— 然后通过迭代遍历reader对象读出文件中的每一行

使用csv模块写CSV文件时
        ——使用writer对象的writerow方法按行写入。

        ——写入文件的一行内容要用列表存储

3、异常

常见异常及其描述:

try:
    语句
except 异常名称:
    捕捉异常时处理
else:
    未发生异常时处理

程序执行时

        ——如果try子句中发生了指定的异常,则执行except子句部分进行异常的处理;

        ——如果try子句执行未发生异常则执行else子句

猜你喜欢

转载自blog.csdn.net/edgarrr/article/details/127257192