Python:类型错误:不支持的格式字符串传递给 NoneType.__format__

2024-02-05

我有一个程序,当前从数据库读取数据,可以找到here https://en.wikiversity.org/wiki/Applied_Programming/Databases/Northwind_SQL。我让用户选择他们想要显示的特定记录,以便 SQL 命令将执行该记录。现在我有一个表,当前显示一些不包含任何 NULL 或空字符串的记录。如果它确实有 NULL 或空字符串,它会给我一个错误,并且程序不会显示记录。我认为这就是 NoneType 错误主要来自的地方。我不知道如何解决这个问题。我如何确保它也计算 Null 或空字符串?希望这能解决这个错误。

如果您尝试测试数据库,像 Customers 这样的表不会显示,因为它具有空值。

这是回溯错误:

line '..', in read_display(record)
    line = format_.format(*rec)
TypeError: unsupported format string passed to NoneType.__format__

这就是我的代码的样子:

import sqlite3

def read_display(record):
  database = 'data.db'
  connection = sqlite3.connect(database)
  c = connection.cursor()
  sql = "SELECT * FROM {0}".format(record)
  cursor.execute(sql)
  conn.commit()
  results = cursor.fetchall()

  header = tuple(i[0] for i in c.description)
  width = max((len(str(x)) for d in data for x in d))

  data = [header] + results

  config = [{'width': 0} for _ in range(len(data[0]))]

  for rec in data:
    for c, value in enumerate(rec):
        config[c]['width'] = max(config[c]['width'], len(str(value)))


  format_ = []
  for f in config:
    format_.append('{:<' + str(f['width']) + '}')

  format_ = ' | '.join(format_)
  for rec in data:
    line = format_.format(*rec)
    print(line)

你有错误

line = format_.format(*rec)

你会得到同样的错误

'{:s}'.format(None)

所以它看起来rec has None在名单上。

您必须将其转换为字符串str(None)

您可以使用str()与所有元素rec确保;确定:

 rec = [str(x) for x in rec]

所以代码应该是

for rec in data:
    rec = [str(x) for x in rec]
    line = format_.format(*rec)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python:类型错误:不支持的格式字符串传递给 NoneType.__format__ 的相关文章

  • 意外的缩进错误,但缩进看起来正确

    我一直在尝试运行此代码 但它引发了缩进错误 无论我尝试什么 结果都是一样的 如果我删除之前的缩进def str self 和代码的其余部分 它工作正常 但在输出时 它不显示问题 而是显示 问题对象 def str self Indentat
  • 变更数据捕获性能损失是否仅限于启用 CDC 的表?

    我读到启用更改数据捕获显然会对数据库性能产生影响 这种性能损失是否仅影响启用了 CDC 的表 还是会影响数据库中的所有操作 在我的情况下 我使用 SSIS 并且有大量数据移入和移出临时数据库 我的系统中还有一些用于转换的查找表 我希望使用
  • Python 的贝叶斯垃圾邮件过滤库

    我正在寻找一个可以进行贝叶斯垃圾邮件过滤的 Python 库 我查看了 SpamBayes 和 OpenBayes 但两者似乎都没有维护 我可能是错的 谁能推荐一个好的 Python 或 Clojure Common Lisp 甚至 Rub
  • 我怎样才能用Python中的语音识别来检测一个单词

    我知道如何用 Python 检测语音 但这个问题更具体 如何让 Python 只监听一个单词 然后如果 Python 可以识别该单词则返回 True 我知道 我可以让 Python 一直监听 然后做出类似的东西 伪代码 while True
  • SQL - 我需要将总值划分为另一个表中的多行

    假设我在 SQL Server 2008 中有以下表 学校桌 School Id Course Id Total Students 1 Acct101 150 1 Acct102 100 2 Acct101 110 2 Acct102 13
  • 将 *.appspot.com 重定向到自定义域:Google 应用引擎 (Django)

    我直接将我的一些示例代码放在这里以获得更好的了解 url py r robots txt myapp views robots r myapp views home views py def home request my code ret
  • 忽略 NaN 的列表理解

    我正在尝试构建一个列表理解 其条件是不导入 nan 值 但运气不佳 以下是当前代码以及结果输出 什么条件会将 nan 从列表中删除 def generate labels filtered df columnName return labe
  • Django:在管理界面中显示多对多项目的列表

    这可能是一个简单的问题 但我似乎无法理解 我在 models py 中有两个简单的模型 Service 和 Host Host services 与 Service 具有 m2m 关系 换句话说 一台主机有多个服务 一个服务可以驻留在多个主
  • Scrapy规则如何与爬行蜘蛛一起工作

    我很难理解 scrapy 爬行蜘蛛规则 我有一个例子 它并不像我希望的那样工作 所以它可能是两件事 我不明白规则是如何运作的 我形成了不正确的正则表达式 导致我无法获得所需的结果 好吧 这就是我想做的 我想编写爬行蜘蛛 它将获取所有可用的统
  • 动态组装 Python 模块,动态导入

    我正在努力让自己熟悉importlib钩子 我想实现直接导入用其他语言编写的非Python文件并维护源映射的能力 因此提高SyntaxError带有行号的 s 仍然会给出有意义的堆栈跟踪 我加载外部文件的方法是组装 Pythonic 源代码
  • 确定 TCP Listen() 队列中当前积压的连接数

    有没有办法找出currentLinux 上 TCP 套接字上等待 Accept 的连接尝试次数 我想我可以在每个事件循环上点击 EWOULDBLOCK 之前计算成功的 Accept 数量 但我使用的是隐藏这些细节的高级库 Python Tw
  • 使用 Python 访问 MP3 音乐数据

    我正在尝试编写一个 Python 脚本 用于使用歌曲的数据作为比较的基础来搜索重复的 mp3 4 文件 我的情况涉及许多文件名相似但 ID3 标签不同的 mp3 4 文件 起初 我尝试循环并使用 md5 来查找重复文件 忽略文件名 当然 当
  • 如何将字符串转换为二进制?

    我需要一种方法来获取 python 中字符串的二进制表示形式 例如 st hello world toBinary st 是否有一个模块可以以某种巧妙的方式执行此操作 像这样的东西吗 gt gt gt st hello world gt g
  • 如何使绘图的 xtick 标签成为简单的绘图?

    我不想用单词或数字作为 x 轴的刻度标签 而是想绘制一个简单的绘图 由直线和圆圈组成 作为每个 x 刻度的标签 这可能吗 如果是这样 在 matplotlib 中处理它的最佳方法是什么 我会删除刻度标签并将文本替换为patches http
  • 保持 WebSocket 连接处于活动状态

    我正在研究 WebSocket 协议 并尝试在后端使用 Python 实现一个简单的 ECHO 服务 它似乎工作正常 但连接建立后立即断开 这是我的客户
  • 使用 cv2 在 python 中创建多通道零垫

    我想用 cv2 opencv 包装器在 python 中创建一个多通道 mat 对象 我在网上找到了一些例子 其中 c Mat zeros 被 numpy zeros 替换 这看起来不错 但似乎没有多通道类型适合 看代码 import cv
  • 从 Keras 检查点加载

    我正在 Keras 中训练一个模型 我使用以下代码保存了所有内容 filepath project model hdh5 checkpoint ModelCheckpoint project model hdf5 monitor loss
  • 异常:AttributeError:使用 Azure Function 和 Python 的“DefaultAzureCredential”对象没有属性“signed_session”

    我编写了一个运行 Python3 的 Azure 函数来简单地打开 Azure VM 该函数应用程序具有系统分配的托管标识 我已为其授予 VM 贡献者角色 为了让该函数使用托管标识 我使用了 DefaultAzureCredential 类
  • AttributeError:“列表”对象没有属性“文本”,在 DOM 中查找元素时出错

    我尝试在树 DOM 中查找元素 但遇到问题 我写 age browser find elements by xpath div id ads ul li 6 span 2 text 但它一直显示我的错误 属性错误 列表 对象没有属性 文本
  • Django MySQL 创建表时出错

    我有一个类似的问题这张票 https code djangoproject com ticket 18256在 Django 论坛上提出 我该如何解决这个问题 我还扩展了一个用户模型 如下所示 class Profile models Mo

随机推荐

  • 如果窗口未激活则获取输入 (Windows)

    简洁版本 当窗口未激活时 如何在使用 C C 的 Windows 中接收输入消息 背景资料 我目前正在开发一个不应该依赖于任何窗口的输入系统 因此它可以例如也可以在控制台中使用 我的想法是创建一个仅接收消息的不可见窗口 这可以使用 HWND
  • 在 Go 1.18 中 strings.Title() 已被弃用。现在该用什么?如何?

    按照建议here https www thesaurus com e grammar when to capitalize words 人名应该大写 例如John William Smith 我正在用 Golang 编写一个小软件 它从用户
  • 在另一个文件中查找一个文件的内容

    我使用以下 shell 脚本将一个文件的内容查找到另一个文件中 bin ksh file home nimish contents txt while read r line do grep line home nimish another
  • 从领域模型通信回应用层

    我有一个带有价格列表的域模型产品 public class Product private List
  • 派生类型的自动静态调用

    有谁知道如何使派生类自动实例化具有模板类型的静态变量 这要么不需要派生类的编写者提供任何内容 要么强制他调用此静态方法以使派生类定义有效的 这可能是无法理解的 我会尝试更好地定义它 基本上我有一个全局工厂类 带有一个名为 registerT
  • 在 JQuery 中输入时将 INPUT 附加到 TEXTAREA

    我有一个输入文本框 当有人在 INPUT 文本框中键入内容时 我需要它附加 添加到 TEXTAREA 值 假设用户在文本框中输入 12345 文本区域 默认值 评论 将自动添加 评论 12345 在他们键入时添加 12345 假设area是
  • animate.css 在 Chrome 最新版本(73 以上版本)中不起作用

    https daneden github io animate css https daneden github io animate css 这是 animate css 的链接 它在我的浏览器 Chrome Firefox 等 上没有显
  • 使用 gettext 的动态消息 (AngularJS)

    我有一个带有 Django 后端和 AngularJS 前端的应用程序 我用角度 gettext 插件 https github com rubenv angular gettext 与 Grunt 一起处理翻译 问题是 我有时通过 API
  • MySQL - 除了一个条目之外按字母顺序排序?

    我必须使用 MySQL 对类别列表进行排序 因为我使用的 CMS 只允许这样做 有没有一种方法可以按字母顺序排序 但在列表末尾返回一个条目 其他 ORDER BY ColumnName Other ColumnName
  • 我可以在 SQL Server Management Studio 中对 nvarchar 列类型使用“/”运算符吗? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我试图划分两列 其定义为nvarchar 但是 SSMS 会抛出错误 表示您无法使用 操作员开启nvarchar select locati
  • JavaScript 动画

    我正在尝试制作动画div moving 200px在 JavaScript 中水平排列 下面的代码让它跳跃像素 但是有没有办法让它看起来动画而不使用 jQuery function var div document getElementBy
  • C++ 中具有多态性的静态方法

    我在使用多态性时遇到了一个奇怪的问题 我有一个实现静态方法的基类 由于各种原因 该方法必须是静态的 基类还有一个纯虚方法run 由所有扩展类实现 我需要能够打电话run 来自静态类 当然 问题是静态类没有 this 指针 该方法可以传入一个
  • PyDev Eclipse 项目中没有 JavaScript 自动完成

    我有带有 PyDev 和 JavaScript 开发工具 JSDT 的 Eclipse 我正在使用这个环境来开发 Web 应用程序 Python HTML 和 CSS 编辑器都工作正常 突出显示和自动完成工作正常 JavaScript 突出
  • 在 fnDraw() 上保持分页状态

    我在用jquery我的应用程序中的数据表 我的方法有问题pagination 当我使用时它正在重置this table dataTable fnDraw 我的数据表每 5 秒调用一次fnDraw 更新表时 什么时候this table da
  • PHP 使用的 OS X 和 OpenSSL 上的 Composer 错误

    我删除了旧的 Xampp 本地服务器并安装了它包含的最新服务器 Apache 2 4 18 Unix OpenSSL 1 0 2e PHP 7 0 1 mod perl 2 0 8 dev Perl v5 16 3 但是当我尝试通过以下方式
  • OpenShift:无法使用 cron python 脚本连接到 MySQL 数据库

    我正在 OpenShift 上设置一个应用程序 它需要一个 Python 脚本每小时运行一次 并将数据从在线服务器提取到 OpenShift 上的 MySQL 数据库中 我通过在计算机上本地运行 Python 脚本并使用端口转发技术来填充该
  • 从 swift osx 应用程序发送电子邮件

    我在从 osx swift 应用程序发送邮件时遇到问题 为了发送邮件 我使用了下面的代码 import Foundation import Cocoa class sendemail NSObject NSSharingServiceDel
  • Prism 4:RequestNavigate() 不起作用

    我正在构建一个演示应用程序来学习 Prism 4 的导航功能 该应用程序有两个模块 每个模块都有三个视图 带有文本块的用户控件 欢迎来到模块 A RibbonTab 使用区域适配器 以及 Outlook 样式的任务按钮 如 Outlook
  • utf8mb4_0900_ai_ci 是 MySQL 8.0.30 中通用的良好排序规则吗?

    用于存储和搜索多种不同语言的 MySQL 数据 例如索引所有域名的网站标题 使用起来可以吗utf8mb4 0900 ai ci整理 我明白就是这样MySQL 8 0 30从旧服务器导入数据时切换到 MySQL 5 7 is utf8mb4
  • Python:类型错误:不支持的格式字符串传递给 NoneType.__format__

    我有一个程序 当前从数据库读取数据 可以找到here https en wikiversity org wiki Applied Programming Databases Northwind SQL 我让用户选择他们想要显示的特定记录 以