Python使用pymysql返回字典类型的数据

在默认情况下cursor方法返回的是BaseCursor类型对象,BaseCursor类型对象在执行查询后每条记录的结果以列表(list)表示。如果要返回字典(dict)表示的记录,就要设置cursorclass参数为MySQLdb.cursors.DictCursor类

import pymysql
import time

# 数据库
db = ""
cur = ""
# 现在年月日
today = time.strftime("%Y-%m-%d", time.localtime())
try:
  # 数据库配置
  config = {
    "host": "124.71.18.23", 
    "port": 3306, 
    "user": "root", 
    "password": "Master@test", 
    "db": 'scrapy', 
    "charset": "utf8mb4",
    "cursorclass": pymysql.cursors.DictCursor
  }
  db = pymysql.connect(**config)
  # 游标
  cur = db.cursor()
except:
  print("连接数据库失败")
  exit(-1)


# 查询今天之后的所有天气数据
def get_day_list(date):
  sql_weather_days = "SELECT*FROM weather WHERE date>='" + date + "'"
  cur.execute(sql_weather_days)
  dayList = cur.fetchall()
  print(dayList)
  pass


get_day_list(today)

结果

[
{'id': 448, 'name': '周六 06', 'date': '2021-02-06', 'max': '--', 'min': '5°', 'status': 'Mostly Clear Night', 'create_time': datetime.datetime(2021, 2, 6, 23, 0, 11)}, 
{'id': 449, 'name': '周日 07', 'date': '2021-02-07', 'max': '19°', 'min': '7°', 'status': 'Mostly Sunny', 'create_time': datetime.datetime(2021, 2, 6, 23, 0, 11)}, 
{'id': 450, 'name': '周一 08', 'date': '2021-02-08', 'max': '9°', 'min': '3°', 'status': 'Mostly Cloudy', 'create_time': datetime.datetime(2021, 2, 6, 23, 0, 11)}, 
{'id': 451, 'name': '周二 09', 'date': '2021-02-09', 'max': '12°', 'min': '7°', 'status': 'Partly Cloudy', 'create_time': datetime.datetime(2021, 2, 6, 23, 0, 11)}, 
{'id': 452, 'name': '周三 10', 'date': '2021-02-10', 'max': '15°', 'min': '10°', 'status': 'Cloudy', 'create_time': datetime.datetime(2021, 2, 6, 23, 0, 11)}
]
相关推荐
Kai HVZ1 小时前
python爬虫----爬取视频实战
爬虫·python·音视频
古希腊掌管学习的神1 小时前
[LeetCode-Python版]相向双指针——611. 有效三角形的个数
开发语言·python·leetcode
m0_748244831 小时前
StarRocks 排查单副本表
大数据·数据库·python
B站计算机毕业设计超人1 小时前
计算机毕业设计PySpark+Hadoop中国城市交通分析与预测 Python交通预测 Python交通可视化 客流量预测 交通大数据 机器学习 深度学习
大数据·人工智能·爬虫·python·机器学习·课程设计·数据可视化
路人甲ing..1 小时前
jupyter切换内核方法配置问题总结
chrome·python·jupyter
游客5201 小时前
opencv中的常用的100个API
图像处理·人工智能·python·opencv·计算机视觉
每天都要学信号2 小时前
Python(第一天)
开发语言·python
凡人的AI工具箱2 小时前
每天40分玩转Django:Django国际化
数据库·人工智能·后端·python·django·sqlite
咸鱼桨2 小时前
《庐山派从入门到...》PWM板载蜂鸣器
人工智能·windows·python·k230·庐山派
北京_宏哥2 小时前
python接口自动化(四十)- logger 日志 - 下(超详解)
python·前端框架·自动化运维