Вариант 1 isin
df2[~df2.Email.isin(df1.Email)]
Email
4 dddd@abc.com
5 dddd@abc.com
6 3333@abc.com
Вариант 2 query
df2.query('Email not in @df1.Email')
Email
4 dddd@abc.com
5 dddd@abc.com
6 3333@abc.com
Вариант 3 merge
pd.DataFrame.merge
с indicator=True
позволяет вам видеть, какие dataframe из строки. Затем мы можем фильтровать его.
df2.merge(
df1, 'outer', indicator=True
).query('_merge == "left_only"').drop('_merge', 1)
Email
20 dddd@abc.com
21 dddd@abc.com
22 3333@abc.com
К сожалению, нет экспортируемого API, чтобы установить PDFView
желаемое подпрыгивающее поведение.
Сказав это, вы можете (безопасно) использовать детали реализации PDFView
, чтобы разобраться с этим сейчас:
extension PDFView {
/// Disables the PDFView default bouncing behavior.
func disableBouncing() {
for subview in subviews {
if let scrollView = subview as? UIScrollView {
scrollView.bounces = false
return
}
}
print("PDFView.disableBouncing: FAILED!")
}
}
, а затем использовать это в своем коде следующим образом:
pdfView.disableBouncing()
Предостережение . Помните, что такое решение может сломаться в будущих версиях iOS. Тем не менее, будьте уверены, что ваше приложение не будет зависать в результате (вы только не будете вообще отключать поведение при подпрыгивании).