如何解决模块的TypeError

-1 投票
1 回答
738 浏览
提问于 2025-04-18 13:24

我在使用sqlite3作为数据库。

我正在尝试执行我的SQL查询:

sql = "INSERT INTO info_calc (application, version, path, os, user, ip) VALUES (?, ?, ?, ?, ?, ?)"
args = my_argv[2], my_argv[3], my_argv[4], sys.platform, getpass().getuser(), machine

c.execute(sql, args)

但是我遇到了这个错误:

args = my_argv[2], my_argv[3], my_argv[4], sys.platform, getpass().getuser(), machine
TypeError: 'module' object is not callable

我之前看过这个帖子:TypeError: 'module' object is not callable,但他们讨论的是套接字(socket)。

1 个回答

1

getpass 是一个模块,你正在调用它:

getpass().getuser()

把第一个 () 去掉:

>>> import getpass
>>> getpass()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'module' object is not callable
>>> getpass.getuser()
'mj'

撰写回答