Heim >Backend-Entwicklung >Python-Tutorial >So lesen Sie Excel-Daten und speichern sie mit Python3 in MySQL

So lesen Sie Excel-Daten und speichern sie mit Python3 in MySQL

不言
不言Original
2018-05-04 14:24:582883Durchsuche

Dieser Artikel stellt hauptsächlich die Methode zum Lesen von Excel-Daten und deren Speicherung in MySQL vor. Jetzt kann ich ihn mit Ihnen teilen.

Python ist ein leistungsstarkes Werkzeug zur Datenanalyse.

Der erste Schritt bei der Verwendung von Python für die Datenanalyse besteht darin, zu lernen, wie man verschiedene in der täglichen Arbeit erstellte Excel-Berichte liest und in den Daten speichert, um die anschließende Datenverarbeitung zu erleichtern.

Hier möchte ich mit Ihnen teilen, wie Python3 XLRD zum Lesen von Excel verwendet und Python3 zum Betreiben des PyMySQL-Moduls zum Speichern von Daten in MySQL verwendet. Freunde in Not sollten einen Blick darauf werfen.

Vorwort

pymsql ist ein Modul in Python, das MySQL betreibt, und seine Verwendung ist fast die gleiche wie MySQLdb. Aber derzeit unterstützt pymysql python3.x und letzteres unterstützt Version 3.x nicht.

Python verwendet hauptsächlich die beiden Bibliotheken xlrd und xlwt, um Excel zu betreiben, dh xlrd ist eine Bibliothek zum Lesen von Excel und xlwt ist eine Bibliothek zum Schreiben von Excel.

Version

Python >= 3.6

MySQL >= 5.7.19

Installation

Die Installation von Python und MySQL wird hier nicht im Detail beschrieben. Freunde in Not können Baidu verwenden

xlrd: Sie können auch verwenden pip, um es zu installieren. Laden Sie den Quellcode für die Installation manuell herunter, Pip-Installation: pip install xlrd

pymysql: Sie können die Pip-Installation verwenden oder den Quellcode für die Installation manuell herunterladen, Pip-Installation: pip install 🎜>

import xlrd
import pymysql
from datetime import datetime
from xlrd import xldate_as_tuple

Excel lesen

data = xlrd.open_workbook("D:/sales_data.xls") //读取D盘中名为sales_data的excel表格
table_one = data.sheet_by_index(0)      //根据sheet索引获取sheet的内容
table_two = data.sheet_by_index(1)

Datenbankverbindung erstellen

db = pymysql.connect("localhost", "root", "gaishi123", "sales_data", use_unicode=True, charset="utf8")

gaishi123 ist das Passwort von MySQL Root, sales_data ist der Datenbankname

for site in sites:
 # 遍历sheet1
 for nrows_one in range(1, int(table_one.nrows)):
  if table_one.cell_value(nrows_one, 0) == site:
   payday = table_one.cell_value(0, 8)
   date = datetime(*xldate_as_tuple(payday, 0))
   payday = date.strftime('%Y/%m/%d')         # 出票日期
   sales = float(table_one.cell_value(nrows_one, 1))     # 销量
   quantity_ticket = int(table_one.cell_value(nrows_one, 2))   # 票数
   rate_electronic = float(table_one.cell_value(nrows_one, 3))  # 电子直销占比
   sales_thanlastweek = float(table_one.cell_value(nrows_one, 4))  # 销量同比上周
   sales_thanlastyear = float(table_one.cell_value(nrows_one, 5))  # 销量同比去年
   break
 # 遍历sheet2
 for nrows_two in range(1, int(table_two.nrows)):
  if table_one.cell_value(nrows_two, 0) == site:
   session = int(table_two.cell_value(nrows_two, 1))     # 访问量
   rate_conversion = float(table_two.cell_value(nrows_two, 2))  # 转化率
   rate_paysuccess = float(table_two.cell_value(nrows_two, 3))  # 支付成功率
   session_thanlastweek = float(table_two.cell_value(nrows_two, 4)) # 访问量同比上周
   break
 # 将数据存入数据库
 sql = "insert into sales_data(SITE, PAYDAY, SALES, QUANTITY_TICKET, RATE_ELECTRONIC, SALES_THANLASTWEEK," \
   "SALES_THANLASTYEAR, SESSION, SESSION_THANLASTWEEK, RATE_CONVERSION, RATE_PAYSUCCESS)" \
   " values ('%s','%s', %f, %d, %f, %f, %f, %d, %f, %f, %f)" %\
   (site, payday, sales, quantity_ticket, rate_electronic, sales_thanlastweek, sales_thanlastyear,
   session, session_thanlastweek, rate_conversion, rate_paysuccess)
 try:
  # 使用 cursor() 方法创建一个游标对象 cursor
  cursor = db.cursor()
  cursor.execute(sql)
 except Exception as e:
  # 发生错误时回滚
  db.rollback()
  print(str(e))
 else:
  db.commit() # 事务提交
  print('事务处理成功')

Verwandte Empfehlungen:

So generieren Sie eine Liste, indem Python Dateinamen liest


Python liest CSV-Dateien und legt sie ab die Datei in eine Liste mit Beispielen

Das obige ist der detaillierte Inhalt vonSo lesen Sie Excel-Daten und speichern sie mit Python3 in MySQL. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn