В модели SqlAlchemy я получаю предупреждение от pycharm о том, что столбец имеет неожиданный тип.
Упрощенный код, который выдает предупреждение, выглядит следующим образом:
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
Base = declarative_base()
class Peptide(Base):
__tablename__ = 'peptides'
sequence = Column(String, primary_key=True)
scan = Column(Integer)
def __init__(self, scan, sequence):
self.scan = scan
self.sequence = sequence
def __repr__(self):
return '<Peptide "%s" Scan %i>' % (self.sequence, self.scan)
предупреждение выдается за self.scan
в методе __repr__
.Если я изменю строку формата на:
return '<Peptide "%s" Scan %s>' % (self.sequence, self.scan)
, предупреждение исчезнет.Но на самом деле self.scan был определен как целое число в модели, а не строка.Удивительно, но следующая строка не выдает никаких предупреждений:
return '<Scan %i>' % self.scan
Является ли это чрезмерной реакцией средства проверки на Pycharm или это связано с типами SqlAlchemy?