Python文件的读写和异常代码示例

  • Post category:Python

我来为您详细讲解一下“Python文件的读写和异常代码示例”的完整攻略。

一、Python文件读写

Python中提供了一些内置函数和模块来进行文件读写操作。对于文件的读写操作,一般涉及到以下几个步骤:

  1. 打开文件,使用open()函数可以打开一个文件,函数原型为:open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None),其中,file表示要打开的文件名称,mode表示打开文件的模式,常用模式如下:
  2. ‘r’:以只读模式打开文件,该文件必须存在,文件指针位于文件开头
  3. ‘w’:以只写模式打开文件,如果文件不存在则创建该文件,如果文件存在则截断文件,文件指针位于文件开头
  4. ‘a’:以追加模式打开文件,如果文件不存在则创建该文件,文件指针位于文件结尾
  5. ‘x’:以独占模式打开文件,如果文件不存在则创建该文件,如果文件存在则返回一个FileExistsError异常
  6. ‘b’:以二进制模式打开文件
  7. ‘t’:以文本模式打开文件,默认值
  8. 读写文件,可以使用read()、write()等函数对文件进行读写操作,读写完成后,需要关闭文件,使用close()函数关闭文件。示例代码如下:
# 按行读取文件并输出
with open('test.txt', 'r') as f:
    for line in f.readlines():
        print(line.strip())

# 写入文件
with open('test.txt', 'w') as f:
    f.write('hello, world!')

二、Python异常处理

在编写代码时,我们经常会遇到各种异常错误,Python提供了异常捕获和处理机制,可以有效避免代码的崩溃。Python中常见的异常有:
– NameError:尝试访问一个不存在的变量
– TypeError:类型不匹配
– ValueError:传入了无效的参数
– ZeroDivisionError:除数为0等。

可以使用try…except…语句捕获并处理这些异常。示例代码如下:

# TypeError异常示例
try:
    a = 'hello'
    b = 1
    c = a + b
except TypeError as e:
    print('类型错误:', e)

# 捕获NameError异常
try:
    a = 1
    print(b)
except NameError as e:
    print('变量不存在:', e)

# 捕获多个异常
try:
    a = 'hello'
    b = int(a)
except (ValueError, TypeError) as e:
    print('错误:', e)

# 捕获所有异常
try:
    a = 1 / 0
except:
    print('发生异常!')

希望以上讲解能对您有所帮助。