Сначала преобразуйте в строку, затем выполните обычное действие:
df.loc[df.col1.astype(str).str.contains(r"C") == False]
Конвертеры типов намного более сложны, чем они кажутся; конвертер типов имеет доступ к диапазону метаданных о контексте преобразования - например, свойство, и возразите, что включены. Это используется для предоставления пользовательских возможностей на сценарий (думайте: связанный выпадает, т.е. Страна / графство / Город / и т.д.). Можно также указать конвертер типов на основе на свойство, которую я использую в большом количестве мест для обеспечения другой обработки различных свойств строки. Оператор рассматривал бы все строки тождественно.
Неявный оператор только знает о значении, которое преобразовывается, но имеет намного большую поддержку времени компиляции.
Или иначе: TypeConverter
функция платформы с поддержкой платформы; операторы являются (прежде всего), функцией языка с поддержкой языка
Для добавления более - конвертеры типов (несмотря на имя) не просто преобразовывают:
PropertyGrid
)PropertyGrid
)Обратите внимание, что они используются в большем количестве мест, чем просто PropertyGrid
, хотя;-p
Я не эксперт по этому.
Но на первый взгляд, это похоже - можно обеспечить преобразователи за пределами исходного класса (по сравнению с неявным оператором), и возможно можно определить несколько классов TypeConverter для того же самого (если Вы хотите получить различные взгляды для того же значения).
Просто любопытный: TypeConverters может работать с разработчиком Visual Studio, таким, что при обеспечении правильного TypeConverter для свойства как Списки или Массивы, можно установить их через разработчика. Неявные операторы также предоставляют эту услугу? В противном случае я подозреваю, что это отвечает на Ваш вопрос: они используются в платформе так, чтобы средства управления с помощью тех объектов могли работать с разработчиком.
Неявные операторы хороши, но также и они могут сбивать с толку. Я думаю, что, когда необходимо преобразовать от одного типа до другого его лучше всего, чтобы быть явными как, нет никакого вопроса относительно того, что продолжается.
Также неявные операторы, казалось, были зарезервированы для вещей, которые очень подобны, и неявное преобразование интуитивно. Но я предполагаю, что это все субъективно во всяком случае, используйте свое лучшее решение.