📜  csv 阅读器 url - Python (1)

📅  最后修改于: 2023-12-03 14:40:23.361000             🧑  作者: Mango

CSV 阅读器 URL - Python

CSV(Comma Separated Values) 是一种常见的数据存储格式,很多应用程序会将数据以 CSV 格式导出或导入,因为 CSV 格式简单,易于处理和解析。Python 提供了多个库来读取和写入 CSV 文件,本文将介绍使用 Python 的 csv 模块来读取 CSV 文件并展示在网页中的方法。

csv 模块

Python 的 csv 模块提供了读写 CSV 文件的功能。它既支持基本的 CSV 文件读写,也支持自定义分隔符、引号字符等进行读写。如果你对 csv 模块不熟悉,可以参考官方文档 https://docs.python.org/3/library/csv.html。

在本文的示例中,我们将使用一个名为 "data.csv" 的文件来演示读取操作,CSV 文件的内容如下:

id,name,age,gender
1,John,25,Male
2,Lisa,30,Female
3,Jack,28,Male
Flask 框架

Flask 是 Python Web 开发中的一个微型框架,可以轻松构建 Web 应用程序。如果你对 Flask 不熟悉,可以参考官方文档 https://flask.palletsprojects.com/en/1.1.x/。

在本文的示例中,我们使用 Flask 框架构建 Web 应用程序,并将 CSV 文件中的数据展示在网页中。

代码示例
from flask import Flask, render_template
import csv

app = Flask(__name__)

# 读取 CSV 文件中的数据
def read_csv():
    with open('data.csv', 'r') as file:
        reader = csv.DictReader(file)
        rows = []
        for row in reader:
            rows.append(row)
        return rows

# 构建网页并展示 CSV 文件中的数据
@app.route('/')
def index():
    rows = read_csv()
    return render_template('index.html', rows=rows)

if __name__ == '__main__':
    app.run()

在上面的代码中,我们定义了一个函数 read_csv(),它使用 csv 模块读取 CSV 文件中的数据,并将数据返回为一个列表。read_csv() 函数使用 csv.DictReader 来读取 CSV 文件,返回的是一个字典类型的数据,每一行为一个字典。

接下来,我们使用 Flask 框架构建 Web 应用程序。我们在 '/' 路由下定义了 index() 函数,它将调用 read_csv() 函数读取 CSV 文件中的数据,并将数据传递给模板文件 'index.html'。模板文件 'index.html' 将展示 CSV 中的数据。

<!DOCTYPE html>
<html>
<head>
	<title>CSV Reader</title>
</head>
<body>
	<h1>CSV Reader</h1>
	<table>
		<tr>
			<th>ID</th>
			<th>Name</th>
			<th>Age</th>
			<th>Gender</th>
		</tr>
	{% for row in rows %}
		<tr>
			<td>{{ row['id'] }}</td>
			<td>{{ row['name'] }}</td>
			<td>{{ row['age'] }}</td>
			<td>{{ row['gender'] }}</td>
		</tr>
	{% endfor %}
	</table>
</body>
</html>

在上面的模板文件中,我们使用了 Jinja2 模板引擎来展示 CSV 中的数据。模板文件中使用了 for 循环来遍历数据,将每一行展示在表格中。

运行示例

将上述代码保存为 'app.py' 和 'index.html' 文件,将 'data.csv' 文件放在同一个目录下。在终端中运行以下命令启动 Web 应用程序:

FLASK_APP=app.py flask run

打开浏览器访问 http://localhost:5000 即可看到 CSV 文件中的数据展示在网页中。

总结

本文介绍了如何使用 Python 的 csv 模块读取 CSV 文件,并使用 Flask 框架将 CSV 文件中的数据展示在网页中。这只是一个简单的示例,你可以根据自己的需求对代码进行修改和扩展,例如添加搜索、排序、过滤等功能。