Модульні уроки (1/4)
Рядкові методи
Рядки в Python незмінні: кожен метод, який їх "модифікує". фактично повертає новий рядок, оригінал залишається таким, яким він є.
s = "Ciao"
s.upper() # 'CIAO' (nuova stringa)
s # 'Ciao' (originale invariata)Для «оновлення» призначте результат: s = s.upper().
Великі, малі, контроль регістру
"Ciao".upper() # 'CIAO'
"CIAO".lower() # 'ciao'
"ciao mondo".title() # 'Ciao Mondo'
"ciao".capitalize() # 'Ciao'
"CiAo".swapcase() # 'cIaO'Очищення: strip
Видаляє пробіли (пробіли, табуляції, символи нового рядка) з країв.
" ciao ".strip() # 'ciao'
" ciao ".lstrip() # 'ciao '
" ciao ".rstrip() # ' ciao'
"___ciao___".strip("_") # 'ciao' (argomento = caratteri da togliere)Розділити та знову приєднатися: split / join
"a,b,c".split(",") # ['a', 'b', 'c']
" ciao mondo".split() # ['ciao', 'mondo'] (split su whitespace, salta i vuoti)
",".join(["a", "b", "c"]) # 'a,b,c'Основна ідіома: "separator".join(list_of_strings). Всі елементи
повинні бути рядками, інакше TypeError.
Заміна: replace
"ciao mondo".replace("mondo", "Python") # 'ciao Python'
"aaaa".replace("a", "b", 2) # 'bbaa' (max 2 sostituzioni)Змістові тести
"image.png".endswith(".png") # True
"http://".startswith("http") # True
"ciao" in "ciao mondo" # True (operatore in)
"ciao mondo".find("mondo") # 5 (-1 se non trovato)
"ciao mondo".count("o") # 2find повертає -1, якщо підрядка немає; index натомість підвищує
ValueError.
Рядки незмінні
У Python рядки є незмінними: жоден метод рядка не змінює оригінальний рядок; замість цього вони завжди повертають новий рядок. Якщо ви напишете s.upper(), змінна s залишиться незмінною. Щоб зберегти модифікацію, потрібно перепризначити її: s = s.upper().
Спробуйте
Враховуючи `name = ' Ada Lovelace '`, обчислення `очищено` як `name` без пропусків по краях і тільки в нижньому регістрі. Оцініть `очищений`.
Показати підказку
З’єднайте методи: спочатку strip(), потім lower().
Рішення доступне після 3 спроб
Повторна вправа
Враховуючи `csv = 'mela,pera,kiwi'`, отримайте список `фруктів`, розділивши на кому, а потім перебудуйте `slash_separated`, об’єднавши ' / '. Оцініть `slash_separated`.
Показати підказку
split розбиває на частини, об'єднати знову збирає разом.
Рішення доступне після 3 спроб
Додатковий виклик
Враховуючи рядок \`raw_text = " hello world "\`, видаліть пробіли на початку та в кінці за допомогою \`.strip()\` і перетворіть текст у верхній регістр. Збережіть очищений результат у \`clean_text\` і оцініть його.
Показати підказку
Об’єднайте виклики в ланцюжок: raw_text.strip().upper().
Рішення доступне після 3 спроб