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

举报
wljslmz 发表于 2023/04/24 15:35:50 2023/04/24
【摘要】 当涉及到 Python 文件处理时, 我们通常会涉及到文件的读取和写入, 以及文件的操作和处理。 文件读取Python语言内置了用于操作文件的标准库IO,我们可以通过open()方法读取一个文件。其中, open() 方法提供了许多可选参数,例如文件打开模式、文件编码等信息。这里是一个典型的例子:with open('file.txt', 'r') as file: data = fi...

当涉及到 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], "\n"
    conn.close()

create_table()
insert_data()
select_data()

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

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

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。