网络工程师学Python-25-文件处理

亦凉 2023-10-15 14:33 57阅读 0赞

当涉及到 Python 文件处理时, 我们通常会涉及到文件的读取和写入, 以及文件的操作和处理。

07e52afbf493b6ea36344221a8ee7b91.png

文件读取

Python语言内置了用于操作文件的标准库IO,我们可以通过open()方法读取一个文件。其中, open() 方法提供了许多可选参数,例如文件打开模式、文件编码等信息。这里是一个典型的例子:

  1. with open('file.txt', 'r') as file:
  2. data = file.read()
  3. print(data)

在这个例子中,我们打开了一个 file.txt 文件,用 “r” 模式读取文件,并将结果存储到变量 data 中。 然后我们输出 data 变量的内容。当我们在 with 块中使用 open() 方法时,使用完毕后,open() 方法会自动关闭文件。

文件写入

我们也可以使用 Python 内置的 open() 方法写入文件,以类似于这样的方式存储数据:

  1. with open('file.txt', 'w') as file:
  2. file.write('Hello, World!')

文件操作

在处理文件时,通常需要对已打开的文件执行一些操作。下面列举了一些常用的操作:

文件重命名

使用 os 模块的rename()方法可以重命名文件。

  1. import os
  2. os.rename('old_name.txt', 'new_name.txt')

文件删除

使用 os 模块的remove()方法可以删除文件。

  1. import os
  2. os.remove('file.txt')

文件判断

使用 os 模块的方法可以判断文件是否存在、是否为目录等。

  1. import os
  2. if os.path.exists('file.txt'):
  3. print('File exists!')
  4. if os.path.isdir('dir'):
  5. print('It is a directory.')

文件列表

使用 os 模块的listdir()方法可以获得文件夹中的所有文件和目录列表。

  1. import os
  2. files = os.listdir('.')
  3. for file in files:
  4. print(file)

数据库读写

我们还可以将数据存储到数据库中作数据备份或者实现数据的持久化等, 因为数据库以表格形式储存数据, 所以Python程序需使用第三方的Python库才能读写数据库。

下面是一个使用 sqlite3 第三方库访问 SQLite 数据库的例子:

  1. import sqlite3
  2. def create_table():
  3. conn = sqlite3.connect('test.db')
  4. c = conn.cursor()
  5. c.execute('''CREATE TABLE COMPANY
  6. (ID INT PRIMARY KEY NOT NULL,
  7. NAME TEXT NOT NULL,
  8. AGE INT NOT NULL,
  9. ADDRESS CHAR(50),
  10. SALARY REAL);''')
  11. conn.commit()
  12. conn.close()
  13. def insert_data():
  14. conn = sqlite3.connect('test.db')
  15. c = conn.cursor()
  16. c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
  17. VALUES (1, 'Paul', 32, 'California', 20000.00)")
  18. c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) \
  19. VALUES (2, 'Allen', 25, 'Texas', 15000.00)")
  20. conn.commit()
  21. conn.close()
  22. def select_data():
  23. conn = sqlite3.connect('test.db')
  24. c = conn.cursor()
  25. cursor = c.execute("SELECT id, name, address, salary from COMPANY")
  26. for row in cursor:
  27. print "ID = ", row[0]
  28. print "NAME = ", row[1]
  29. print "ADDRESS = ", row[2]
  30. print "SALARY = ", row[3], "\n"
  31. conn.close()
  32. create_table()
  33. insert_data()
  34. select_data()

在这个例子中,我们通过 sqlite3 库打开并创建了一个 SQLite 数据库文件,并利用 SQL 语句创建了一个名为 “COMPANY” 的table。然后我们向这个 table 中插入了两条数据,并从表中查询出所有记录并输出。

这只是 Python 文件处理的一个简单介绍,Python IO 和文件处理操作非常丰富,还有许多其他的操作和方法等待我们探索和使用。建议在实践中结合实际场景来学习,以更好地理解和掌握相关知识。

发表评论

表情:
评论列表 (有 0 条评论,57人围观)

还没有评论,来说两句吧...

相关阅读

    相关 网络工程师Python-13-继承

    在 Python 中,继承是一种重要的面向对象编程概念。通过继承,我们可以定义一个新的类,它继承了现有类的属性和方法。这种代码重用可以使我们更高效地编写程序,并提高代码的可读性

    相关 网络工程师Python-9-函数

    在 Python 中,函数是一段可重复使用的代码块,可以接受一些输入(即函数参数),并根据输入执行某些操作。函数可以帮助我们组织代码、减少重复代码、实现模块化设计,并提高代码的