禁止显示特定警告消息

时间:2020-01-23 21:17:31

标签: python mysql python-3.x pymysql

首先,在进行INSERT IGNORE时,为什么pymysql返回警告?

/python3.6/site-packages/pymysql/cursors.py:170:警告:(1062,“键“ PRIMARY”的条目重复“ 2175891””)

第二,是否有一种方法可以抑制这些警告?我目前拥有的是:

warnings.filterwarnings("ignore", category=pymysql.Warning)

但是,我不想抑制所有的pymysql警告,只有这个似乎放错了位置的警告。

1 个答案:

答案 0 :(得分:0)

使用message参数。它接受正则表达式:

warnings.filterwarnings(
  action="ignore", 
  message=".*Duplicate entry.*", 
  category=pymysql.Warning
)

message 是一个字符串,其中包含警告消息的开头必须匹配的正则表达式。表达式被编译为始终不区分大小写。

Docs here