Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Порівняння Рядків | Взаємодія Між Різними Типами Даних
Типи даних у Python

bookПорівняння Рядків

Порівняння рядків у Python за замовчуванням є чутливим до регістру. Якщо введення користувача може відрізнятися за використанням великих і малих літер або містити зайві пробіли, спочатку нормалізуйте рядки, а потім порівнюйте. Надійний підхід — обрізати пробіли та уніфікувати регістр перед перевіркою на рівність або наявність префікса/суфікса.

Чутливість до регістру та ігнорування регістру

За замовчуванням, "Apple" == "apple" повертає False. Щоб ігнорувати регістр, нормалізуйте обидві сторони.

12345
# Comparing two email addresses entered with different letter cases email_saved = "Support@Codefinity.com" email_entered = "support@codefinity.COM" print(email_saved.lower() == email_entered.lower()) # True → emails match regardless of case
copy

casefold() — потужніший, міжнародно орієнтований варіант lower(), який є кращим вибором для порівнянь без урахування регістру.

12345
# Comparing international usernames regardless of letter case username_db = "straße" username_input = "STRASSE" print(username_db.casefold() == username_input.casefold()) # True → matches even with special characters
copy

Обрізання та порівняння

Користувачі часто випадково додають пробіли. Видаляйте початкові та кінцеві пробіли перед порівнянням.

12345
# Validating a user's role input from a form user_input = " admin " required_role = "ADMIN" print(user_input.strip().casefold() == required_role.casefold()) # True → matches after cleanup and case normalization
copy

Перевірка префікса та суфікса

Використовуйте startswith та endswith. Для нечутливих до регістру перевірок спочатку нормалізуйте рядок.

123456789
# Checking if the uploaded document has the correct format and name uploaded_file = "Report_Final.PDF" # Validate file type (case-insensitive) print(uploaded_file.lower().endswith(".pdf")) # True → valid PDF file # Validate file name prefix (e.g., all reports start with "rep") required_prefix = "rep" print(uploaded_file.strip().casefold().startswith(required_prefix.casefold())) # True → matches prefix ignoring case
copy

Послідовний процес нормалізації

Виберіть простий, повторюваний порядок:

  1. Видалення зовнішніх пробілів за допомогою .strip();
  2. Уніфікація регістру за допомогою .casefold() (або .lower(), якщо бажаєте);
  3. Далі використовуйте ==, in, startswith, endswith чи інші перевірки.

1. Який рядок правильно виконує регістронезалежну перевірку на рівність?

2. Дано s = " Hello ". Який вираз повертає True для регістронезалежної перевірки рівності з "hello", ігноруючи зовнішні пробіли?

3. Яке твердження є найбільш точним для надійного порівняння без урахування регістру?

question mark

Який рядок правильно виконує регістронезалежну перевірку на рівність?

Select the correct answer

question mark

Дано s = " Hello ". Який вираз повертає True для регістронезалежної перевірки рівності з "hello", ігноруючи зовнішні пробіли?

Select the correct answer

question mark

Яке твердження є найбільш точним для надійного порівняння без урахування регістру?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 2

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Awesome!

Completion rate improved to 3.45

bookПорівняння Рядків

Свайпніть щоб показати меню

Порівняння рядків у Python за замовчуванням є чутливим до регістру. Якщо введення користувача може відрізнятися за використанням великих і малих літер або містити зайві пробіли, спочатку нормалізуйте рядки, а потім порівнюйте. Надійний підхід — обрізати пробіли та уніфікувати регістр перед перевіркою на рівність або наявність префікса/суфікса.

Чутливість до регістру та ігнорування регістру

За замовчуванням, "Apple" == "apple" повертає False. Щоб ігнорувати регістр, нормалізуйте обидві сторони.

12345
# Comparing two email addresses entered with different letter cases email_saved = "Support@Codefinity.com" email_entered = "support@codefinity.COM" print(email_saved.lower() == email_entered.lower()) # True → emails match regardless of case
copy

casefold() — потужніший, міжнародно орієнтований варіант lower(), який є кращим вибором для порівнянь без урахування регістру.

12345
# Comparing international usernames regardless of letter case username_db = "straße" username_input = "STRASSE" print(username_db.casefold() == username_input.casefold()) # True → matches even with special characters
copy

Обрізання та порівняння

Користувачі часто випадково додають пробіли. Видаляйте початкові та кінцеві пробіли перед порівнянням.

12345
# Validating a user's role input from a form user_input = " admin " required_role = "ADMIN" print(user_input.strip().casefold() == required_role.casefold()) # True → matches after cleanup and case normalization
copy

Перевірка префікса та суфікса

Використовуйте startswith та endswith. Для нечутливих до регістру перевірок спочатку нормалізуйте рядок.

123456789
# Checking if the uploaded document has the correct format and name uploaded_file = "Report_Final.PDF" # Validate file type (case-insensitive) print(uploaded_file.lower().endswith(".pdf")) # True → valid PDF file # Validate file name prefix (e.g., all reports start with "rep") required_prefix = "rep" print(uploaded_file.strip().casefold().startswith(required_prefix.casefold())) # True → matches prefix ignoring case
copy

Послідовний процес нормалізації

Виберіть простий, повторюваний порядок:

  1. Видалення зовнішніх пробілів за допомогою .strip();
  2. Уніфікація регістру за допомогою .casefold() (або .lower(), якщо бажаєте);
  3. Далі використовуйте ==, in, startswith, endswith чи інші перевірки.

1. Який рядок правильно виконує регістронезалежну перевірку на рівність?

2. Дано s = " Hello ". Який вираз повертає True для регістронезалежної перевірки рівності з "hello", ігноруючи зовнішні пробіли?

3. Яке твердження є найбільш точним для надійного порівняння без урахування регістру?

question mark

Який рядок правильно виконує регістронезалежну перевірку на рівність?

Select the correct answer

question mark

Дано s = " Hello ". Який вираз повертає True для регістронезалежної перевірки рівності з "hello", ігноруючи зовнішні пробіли?

Select the correct answer

question mark

Яке твердження є найбільш точним для надійного порівняння без урахування регістру?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 2
some-alt