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

描述

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

文件读取

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

 

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

 

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

文件写入

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

 

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

 

文件操作

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

文件重命名

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

 

import os

os.rename('old_name.txt', 'new_name.txt')

 

文件删除

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

 

import os

os.remove('file.txt')

 

文件判断

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

 

import os

if os.path.exists('file.txt'):
    print('File exists!')
if os.path.isdir('dir'):
    print('It is a directory.')

 

文件列表

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

 

import os

files = os.listdir('.')
for file in files:
    print(file)

 

数据库读写

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

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

 

import sqlite3

def create_table():
    conn = sqlite3.connect('test.db')
    c = conn.cursor()
    c.execute('''CREATE TABLE COMPANY
             (ID INT PRIMARY KEY     NOT NULL,
             NAME           TEXT    NOT NULL,
             AGE            INT     NOT NULL,
             ADDRESS        CHAR(50),
             SALARY         REAL);''')
    conn.commit()
    conn.close()

def insert_data():
    conn = sqlite3.connect('test.db')
    c = conn.cursor()
    c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) 
          VALUES (1, 'Paul', 32, 'California', 20000.00)")
    c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) 
          VALUES (2, 'Allen', 25, 'Texas', 15000.00)")
    conn.commit()
    conn.close()

def select_data():
    conn = sqlite3.connect('test.db')
    c = conn.cursor()
    cursor = c.execute("SELECT id, name, address, salary from COMPANY")
    for row in cursor:
       print "ID = ", row[0]
       print "NAME = ", row[1]
       print "ADDRESS = ", row[2]
       print "SALARY = ", row[3], "
"
    conn.close()

create_table()
insert_data()
select_data()

 

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

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





审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分