当涉及到 Python 文件处理时, 我们通常会涉及到文件的读取和写入, 以及文件的操作和处理。
文件读取
Python语言内置了用于操作文件的标准库IO,我们可以通过open()方法读取一个文件。其中, open() 方法提供了许多可选参数,例如文件打开模式、文件编码等信息。这里是一个典型的例子:
withopen('file.txt','r')asfile:
data=file.read()
print(data)
在这个例子中,我们打开了一个 file.txt 文件,用 “r” 模式读取文件,并将结果存储到变量 data 中。 然后我们输出 data 变量的内容。当我们在 with 块中使用 open() 方法时,使用完毕后,open() 方法会自动关闭文件。
文件写入
我们也可以使用 Python 内置的 open() 方法写入文件,以类似于这样的方式存储数据:
withopen('file.txt','w')asfile:
file.write('Hello,World!')
文件操作
在处理文件时,通常需要对已打开的文件执行一些操作。下面列举了一些常用的操作:
文件重命名
使用 os 模块的rename()方法可以重命名文件。
importos os.rename('old_name.txt','new_name.txt')
文件删除
使用 os 模块的remove()方法可以删除文件。
importos
os.remove('file.txt')
文件判断
使用 os 模块的方法可以判断文件是否存在、是否为目录等。
importos
ifos.path.exists('file.txt'):
print('Fileexists!')
ifos.path.isdir('dir'):
print('Itisadirectory.')
文件列表
使用 os 模块的listdir()方法可以获得文件夹中的所有文件和目录列表。
importos
files=os.listdir('.')
forfileinfiles:
print(file)
数据库读写
我们还可以将数据存储到数据库中作数据备份或者实现数据的持久化等, 因为数据库以表格形式储存数据, 所以Python程序需使用第三方的Python库才能读写数据库。
下面是一个使用 sqlite3 第三方库访问 SQLite 数据库的例子:
importsqlite3
defcreate_table():
conn=sqlite3.connect('test.db')
c=conn.cursor()
c.execute('''CREATETABLECOMPANY
(IDINTPRIMARYKEYNOTNULL,
NAMETEXTNOTNULL,
AGEINTNOTNULL,
ADDRESSCHAR(50),
SALARYREAL);''')
conn.commit()
conn.close()
definsert_data():
conn=sqlite3.connect('test.db')
c=conn.cursor()
c.execute("INSERTINTOCOMPANY(ID,NAME,AGE,ADDRESS,SALARY)
VALUES(1,'Paul',32,'California',20000.00)")
c.execute("INSERTINTOCOMPANY(ID,NAME,AGE,ADDRESS,SALARY)
VALUES(2,'Allen',25,'Texas',15000.00)")
conn.commit()
conn.close()
defselect_data():
conn=sqlite3.connect('test.db')
c=conn.cursor()
cursor=c.execute("SELECTid,name,address,salaryfromCOMPANY")
forrowincursor:
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 和文件处理操作非常丰富,还有许多其他的操作和方法等待我们探索和使用。建议在实践中结合实际场景来学习,以更好地理解和掌握相关知识。
审核编辑:刘清
-
SQlite
+关注
关注
0文章
81浏览量
16657 -
python
+关注
关注
57文章
4857浏览量
89583
原文标题:网络工程师学Python-25-文件处理
文章出处:【微信号:网络技术干货圈,微信公众号:网络技术干货圈】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录

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