话不多说,直接上代码:

import pymysql
from settings import MYSQL_HOST, MYSQL_DB, MYSQL_PWD, MYSQL_USER
import csv
def mysql_db_sz_stock():
    # 连接数据库
    connect = pymysql.connect(host=MYSQL_HOST,   # 本地数据库
                              user=MYSQL_USER,
                              password=MYSQL_PWD,
                              db=MYSQL_DB,
                              charset='utf8')  # 服务器名,账户,密码,数据库名称
    cursor = connect.cursor()
    sql = "select * from daily_view"
    cursor.execute(sql)
    data = cursor.fetchall()
    connect.commit()  # 提交到数据库执行
    print("查询数据成功")
    #  ---------------------关闭数据库
    cursor.close()  # 关闭游标
    connect.close()  # 关闭数据库连接
    return data
# 将数据保存为csv文件
def write_csv():
    data = mysql_db_sz_stock()
    filename = './csv/daily_view.csv'  # 文件名和路径
    with open(filename, mode='w', encoding='utf-8') as f:
        write = csv.writer(f, dialect='excel')
        write.writerow(['symbol', 'datetime', 'Open', 'High', 'Low', 'Close', 'Volume'])  # 先写下标题
        for item in data:
            write.writerow(item)
write_csv()

运行后发现csv文件中数据隔行显示

解决办法:添加newline

def write_csv():
    data = mysql_db_sz_stock()
    filename = './csv/daily_view.csv'  # 文件名和路径
    with open(filename, mode='w', newline='', encoding='utf-8') as f:  # 添加newline=''
        write = csv.writer(f, dialect='excel')
        write.writerow(['symbol', 'datetime', 'Open', 'High', 'Low', 'Close', 'Volume'])  # 先写下标题
        for item in data:
            write.writerow(item)

问题解决。

self.db = QSqlDatabase.addDatabase('QMYSQL') # 数据库设置 self.db.setHostName('localhost') self.db.setDatabaseName('bigpeng') self.db.setUserName(... 1、get_data函数打开文件csv文件, 通过open方法打开文件python文件实现了迭代器协议),然后使用with语句来迭代读取csv文件,然后存入命名元组,可以使用列名作为下标访问元组中的内容。我们有一个名为student.csv文件,里面包含有学生的学号、姓名、性别等信息,想要基于PythonCSV文件中的信息写入MySQL数据库的student_info表中。3、main主函数,连接数据库,执行SQL语句,提交commit,关闭连接。下面给出具体实现代码。首先引入所需要的库。 import sys reload(sys) sys.setdefaultencoding('utf-8')csvfile = open('sample.csv', 'wb') csvfile.write(codecs.BOM_UTF8) # 您现在的位置是:网站首页>>Python>>pythonPython 导出csv及读取csv文件发布时间:2018-11-06 10:16:18作者:wangjian浏览量:2553点赞量:0一:Python 导出csvPython对于csv文件的操作使用到的组件是Python自带的csv组件,这里说明在原生的Python文件中使用Python导出csv文件时,导出csv文件是只能在此电脑上(及... 本文实例讲述了Python实现将MySQL数据库表中数据导出生成csv格式文件的方法。分享给大家供大家参考,具体如下:#!/usr/bin/env python# -*- coding:utf-8 -*-"""Purpose: 生成日汇总对账文件Created: 2015/4/27Modified:2015/5/1@author: guoyJoe"""#导入模块import MySQLdbimp... 在 Python 中,我们常常会遇到需要将运行结果以 CSV 格式导出以供其他语言或工具使用的情况。本文将介绍如何使用 Python 将结果导出CSV 格式的两种主要方法。 接着就可以对文件使用.writerow方法进行写入了 个人习惯先添加一行单独的表头,在做爬虫时比较方便 csv_writer.writerow(["标题","购买人数","价格"])#可省略 本文阅读需要3分钟最近接触到CSV相关的导出需求,考虑到这是一个比较常用的需求,结合自己的一些思考实践,在这儿记录下来分享给大家。CSV是什么?按照我的理解,简单来说就是... 用python数据输出到excel可读取的文件将列表数据输出存储在csv文件将不同列表(不同DataFrame)数据存储在不同sheet将嵌套列表数据存储在不同sheet 将列表数据输出存储在csv文件 #输出数据CSV文件 import csv #调用数据保存文件 import pandas as pd #用于数据输出 #一个sheet list1=[1,2] list2=[3,4] list=[] list.append(list1) list.append(list2) print(list) data_list = TaobaoItem.objects.all() filename = 'item.csv' with open(filename, 'w', encoding='utf-8-sig') as f: # 'utf-8-sig'防止中文乱码 csv_writer = csv.writer(f) csv_writer.writerow(['id', '目标店铺id', '商品id', '商品名', '商品描述', '商品轮播图', '商品详情图