logo

Рядок Python

Рядок — це структура даних у програмуванні Python, яка представляє послідовність символів. Це незмінний тип даних, що означає, що коли ви створили рядок, ви не можете його змінити. Рядки Python широко використовуються в багатьох різних програмах, таких як зберігання та обробка текстових даних, представлення імен, адрес та інших типів даних, які можуть бути представлені у вигляді тексту.

Зміст

Що таке рядок у Python?

Python Програмування не має символьного типу даних, окремий символ – це просто рядок довжиною 1. Давайте подивимося, Синтаксис рядка Python :



Синтаксис типу даних String у Python

string_variable = 'Hello, world!'>

Приклад рядкового типу даних у Python

Python
string_0 = 'A Computer Science portal for geeks' print(string_0) print(type(string_0))>

Вихід:

A Computer Science portal for geeks>

Створіть рядок у Python

Рядки в Python можна створити за допомогою одинарних лапок, подвійних або навіть потрійних лапок. Давайте подивимося, як ми можемо визначити рядок у Python або як написати рядок у Python.

приклад:

У цьому прикладі ми продемонструємо різні способи створення рядка Python. Ми створимо рядок, використовуючи одинарні лапки (‘ ‘), подвійні лапки ( ) і потрійні подвійні лапки ( ). Потрійні лапки можна використовувати для оголошення багаторядкових рядків у Python.

Python
# Creating a String # with single Quotes String1 = 'Welcome to the Geeks World' print('String with the use of Single Quotes: ') print(String1) # Creating a String # with double Quotes String1 = 'I'm a Geek' print('
String with the use of Double Quotes: ') print(String1) # Creating a String # with triple Quotes String1 = '''I'm a Geek and I live in a world of 'Geeks'''' print('
String with the use of Triple Quotes: ') print(String1) # Creating String with triple # Quotes allows multiple lines String1 = '''Geeks  For  Life''' print('
Creating a multiline String: ') print(String1)>

Вихід:

String with the use of Single Quotes: Welcome to the Geeks World String with the use of Double Quotes: I'm a Geek String with the use of Triple Quotes: I'm a Geek and I live in a world of 'Geeks' Creating a multiline String: Geeks For Life>

Доступ до символів у Python String

У посібниках із програмування на Python окремі символи рядка можна отримати за допомогою методу індексування. Індексування дозволяє посиланням на негативні адреси отримувати доступ до символів із задньої частини рядка, наприклад. -1 відноситься до останнього символу, -2 відноситься до передостаннього символу і так далі.

Під час доступу до індексу поза діапазоном спричинить IndexError . Дозволяється передавати лише цілі числа як індекс, число з плаваючою точкою або інші типи, які викликають a TypeError .

Індексація Python String

Індексація синтаксису Python String

Позитивне індексування рядків Python

У цьому прикладі ми визначимо рядок у програмуванні Python і отримаємо доступ до його символів за допомогою позитивного індексування. 0-й елемент буде першим символом рядка.

Python
String1 = 'GeeksForGeeks' print('Initial String: ', String1) # Printing First character print('First character of String is: ', String1[0])>

Вихід:

Initial String: GeeksForGeeks First character of String is: G>

Негативне індексування рядків Python

У цьому прикладі ми будемо звертатися до його символів за допомогою негативного індексування. Елемент -3th є третім останнім символом рядка.

Python
String1 = 'GeeksForGeeks' print('Initial String: ', String1) # Printing Last character print('Last character of String is: ', String1[-3])>

Вихід

Initial String: GeeksForGeeks Last character of String is: e>

Нарізка рядків Python

У посібниках із програмування на Python, Нарізка рядків метод використовується для доступу до діапазону символів у рядку. Розрізання в рядку виконується за допомогою оператора розрізання, тобто двокрапки (:). Під час використання цього методу слід пам’ятати про те, що рядок, який повертається після нарізки, містить символ у початковому індексі, але не символ у останньому індексі.

У цьому прикладі ми використаємо метод нарізки рядків, щоб витягти підрядок вихідного рядка. [3:12] вказує, що нарізка рядка почнеться з 3-го індексу рядка до 12-го індексу (12-й символ не враховується). Ми також можемо використовувати негативне індексування в нарізці рядків.

Python
# Creating a String String1 = 'GeeksForGeeks' print('Initial String: ') print(String1) # Printing 3rd to 12th character print('
Slicing characters from 3-12: ') print(String1[3:12]) # Printing characters between # 3rd and 2nd last character print('
Slicing characters between ' + '3rd and 2nd last character: ') print(String1[3:-2])>

Вихід:

Initial String: GeeksForGeeks Slicing characters from 3-12: ksForGeek Slicing characters between 3rd and 2nd last character: ksForGee>

Перевернутий рядок Python

У підручниках із програмування на Python ми також можемо отримати доступ до символів із рядка ревертувати рядки в Python Програмування. Ми можемо звернути рядок за допомогою методу нарізки рядків.

У цьому прикладі ми перевернемо рядок, звернувшись до індексу. Ми не вказали перші дві частини фрагмента, вказуючи, що ми розглядаємо весь рядок, від початкового індексу до останнього індексу.

файлова система в linux
Python
#Program to reverse a string gfg = 'geeksforgeeks' print(gfg[::-1])>

Вихід:

skeegrofskeeg>

Зворотна функція BuildIn у Python

Ми також можемо перевернути рядок за допомогою вбудованого приєднатися і перевернутий функції та передавання рядка як параметру функції reversed().

Python
# Program to reverse a string gfg = 'geeksforgeeks' # Reverse the string using reversed and join function gfg = ''.join(reversed(gfg)) print(gfg)>

Вихід:

skeegrofskeeg>

Видалення/оновлення з рядка

У Python не дозволяється оновлення або видалення символів із рядка. Це призведе до помилки, оскільки призначення або видалення елемента з рядка не підтримується. Хоча видалення всього рядка можливо за допомогою вбудованого ключового слова del. Це пояснюється тим, що рядки незмінні, тому елементи рядка не можна змінити після призначення. Тільки нові рядки можуть бути перепризначені для того самого імені.

Оновлення персонажа

Символ рядка можна оновити в Python, спочатку перетворивши рядок на a Список Python а потім оновити елемент у списку. Оскільки списки є змінними за своєю природою, ми можемо оновити символ, а потім перетворити список назад у рядок.

Іншим методом є використання методу нарізки рядків. Розріжте рядок перед символом, який потрібно оновити, потім додайте новий символ і, нарешті, знову додайте іншу частину рядка шляхом розрізання рядка.

приклад:

У цьому прикладі ми використовуємо як список, так і метод нарізки рядка для оновлення символу. Ми перетворили String1 на список, змінили його значення в певному елементі, а потім перетворили його назад на рядок за допомогою Python string join() метод.

У методі нарізки рядків ми розрізали рядок до символу, який хочемо оновити, об’єднали новий символ і, нарешті, об’єднали частину рядка, що залишилася.

Python
# Python Program to Update # character of a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Updating a character of the String ## As python strings are immutable, they don't support item updation directly ### there are following two ways #1 list1 = list(String1) list1[2] = 'p' String2 = ''.join(list1) print('
Updating character at 2nd Index: ') print(String2) #2 String3 = String1[0:2] + 'p' + String1[3:] print(String3)>

Вихід:

Initial String: Hello, I'm a Geek Updating character at 2nd Index: Heplo, I'm a Geek Heplo, I'm a Geek>

Оновлення всього рядка

У програмуванні на Python, оскільки рядки Python незмінні за своєю природою, ми не можемо оновити існуючий рядок. Ми можемо лише присвоїти абсолютно нове значення змінній з таким же ім’ям.

приклад: У цьому прикладі ми спочатку призначаємо значення «String1», а потім оновлюємо його, призначаючи йому зовсім інше значення. Ми просто змінили його посилання.

Python
# Python Program to Update # entire String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Updating a String String1 = 'Welcome to the Geek World' print('
Updated String: ') print(String1)>

Вихід:

Initial String: Hello, I'm a Geek Updated String: Welcome to the Geek World>

Видалення символу

Рядки Python незмінні, це означає, що ми не можемо видалити з них символ. Коли ми намагаємося видалити символ за допомогою з це призведе до помилки.

Python
# Python Program to delete # character of a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) print('Deleting character at 2nd Index: ') del String1[2] print(String1)>

Вихід:

Initial String: Hello, I'm a Geek Deleting character at 2nd Index: Traceback (most recent call last): File 'e:GFGPython codesCodesdemo.py', line 9, in del String1[2] TypeError: 'str' object doesn't support item deletion>

Але за допомогою нарізки ми можемо видалити символ із оригінального рядка та зберегти результат у новому рядку.

приклад: У цьому прикладі ми спочатку розріжемо рядок до символу, який хочемо видалити, а потім об’єднаємо рядок, що залишився, після видаленого символу.

Python
# Python Program to Delete # characters from a String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Deleting a character # of the String String2 = String1[0:2] + String1[3:] print('
Deleting character at 2nd Index: ') print(String2)>

Вихід:

Initial String: Hello, I'm a Geek Deleting character at 2nd Index: Helo, I'm a Geek>

Видалення всього рядка

У програмуванні Python видалення всього рядка можливе за допомогою ключового слова del. Крім того, якщо ми спробуємо надрукувати рядок, це призведе до помилки, оскільки рядок видалено та недоступний для друку.

Python
# Python Program to Delete # entire String String1 = 'Hello, I'm a Geek' print('Initial String: ') print(String1) # Deleting a String # with the use of del del String1 print('
Deleting entire String: ') print(String1)>

Помилка:

Traceback (most recent call last): File '/home/e4b8f2170f140da99d2fe57d9d8c6a94.py', line 12, in print(String1) NameError: name 'String1' is not defined>

Ескейп-послідовність у Python

Під час друку рядків з одинарними та подвійними лапками викликає Синтаксична помилка тому що рядок уже містить одинарні та подвійні лапки, а тому не може бути надрукований за допомогою будь-якого з них. Отже, для друку такого рядка використовуються або потрійні лапки, або послідовності Escape використовуються для друку рядків.

Екран-послідовності починаються зі зворотної скісної риски і можуть інтерпретуватися по-різному. Якщо для представлення рядка використовуються одинарні лапки, тоді всі одинарні лапки, наявні в рядку, мають бути екрановані, і те саме робиться для подвійних лапок.

Python
# Initial String String1 = '''I'm a 'Geek'''' print('Initial String with use of Triple Quotes: ') print(String1) # Escaping Single Quote String1 = 'I'm a 'Geek'' print('
Escaping Single Quote: ') print(String1) # Escaping Double Quotes String1 = 'I'm a 'Geek'' print('
Escaping Double Quotes: ') print(String1) # Printing Paths with the # use of Escape Sequences String1 = 'C:PythonGeeks' print('
Escaping Backslashes: ') print(String1) # Printing Paths with the # use of Tab String1 = 'Hi	Geeks' print('
Tab: ') print(String1) # Printing Paths with the # use of New Line String1 = 'Python
Geeks' print('
New Line: ') print(String1)>

Вихід:

Initial String with use of Triple Quotes: I'm a 'Geek' Escaping Single Quote: I'm a 'Geek' Escaping Double Quotes: I'm a 'Geek' Escaping Backslashes: C:PythonGeeks Tab: Hi Geeks New Line: Python Geeks>

приклад:

наташа далал

Щоб ігнорувати керуючі послідовності в рядку, r або Р використовується, це означає, що рядок є необробленим рядком і керуючі послідовності всередині нього слід ігнорувати.

Python
# Printing hello in octal String1 = '110145154154157' print('
Printing in Octal with the use of Escape Sequences: ') print(String1) # Using raw String to # ignore Escape Sequences String1 = r'This is 110145154154157' print('
Printing Raw String in Octal Format: ') print(String1) # Printing Geeks in HEX String1 = 'This is x47x65x65x6bx73 in x48x45x58' print('
Printing in HEX with the use of Escape Sequences: ') print(String1) # Using raw String to # ignore Escape Sequences String1 = r'This is x47x65x65x6bx73 in x48x45x58' print('
Printing Raw String in HEX Format: ') print(String1)>

Вихід:

Printing in Octal with the use of Escape Sequences: Hello Printing Raw String in Octal Format: This is 110145154154157 Printing in HEX with the use of Escape Sequences: This is Geeks in HEX Printing Raw String in HEX Format: This is x47x65x65x6bx73 in x48x45x58>

Форматування рядків Python

Рядки в Python або рядковий тип даних у Python можна форматувати за допомогою формат() метод, який є дуже універсальним і потужним інструментом для форматування рядків. Метод Format у рядку містить фігурні дужки {} як заповнювачі, які можуть містити аргументи відповідно до позиції чи ключового слова для визначення порядку.

приклад 1: У цьому прикладі ми оголосимо рядок, який містить фігурні дужки {}, які діють як заповнювачі, і надамо їм значення, щоб побачити, яке значення має позиція оголошення рядка.

Python
# Python Program for # Formatting of Strings # Default order String1 = '{} {} {}'.format('Geeks', 'For', 'Life') print('Print String in default order: ') print(String1) # Positional Formatting String1 = '{1} {0} {2}'.format('Geeks', 'For', 'Life') print('
Print String in Positional order: ') print(String1) # Keyword Formatting String1 = '{l} {f} {g}'.format(g='Geeks', f='For', l='Life') print('
Print String in order of Keywords: ') print(String1)>

Вихід:

Print String in default order: Geeks For Life Print String in Positional order: For Geeks Life Print String in order of Keywords: Life For Geeks>

приклад 2: Цілі числа, такі як двійкові, шістнадцяткові тощо, і числа з плаваючою точкою можна округлити або відобразити в експоненті за допомогою специфікаторів формату.

Python
# Formatting of Integers String1 = '{0:b}'.format(16) print('
Binary representation of 16 is ') print(String1) # Formatting of Floats String1 = '{0:e}'.format(165.6458) print('
Exponent representation of 165.6458 is ') print(String1) # Rounding off Integers String1 = '{0:.2f}'.format(1/6) print('
one-sixth is : ') print(String1)>

Вихід:

Binary representation of 16 is 10000 Exponent representation of 165.6458 is 1.656458e+02 one-sixth is : 0.17>

приклад 3: У типі даних String у Python рядок може бути вирівняний за лівим, правим або центром за допомогою специфікаторів формату, розділених двокрапкою (:). Знак () означає, що рядок має бути вирівняний праворуч, а (^) означає, що рядок має бути вирівняний по центру. Ми також можемо вказати довжину, на яку він повинен бути вирівняний. Наприклад, (<10) означає, що рядок має бути вирівняний ліворуч у межах поля шириною 10 символів.

Python
# String alignment String1 = '|{:<10}|{:^10}|{:>10}|'.format('Geeks', 'for', 'Geeks') print('
Вирівнювання по лівому, центральному та правому краю з форматуванням: ') print(String1) # Для демонстрації вирівнювання пробілів String1 = '
{0:^16} було засновано в {1:<4}!'.format('techcodeview.com', 2009) print(String1)>

Вихід:

Left, center and right alignment with Formatting: |Geeks | for | Geeks| techcodeview.com was founded in 2009 !>

Приклад 4: Форматування старого стилю виконано без використання методу форматування за допомогою в % оператор

Python
# Python Program for # Old Style Formatting # of Integers Integer1 = 12.3456789 print('Formatting in 3.2f format: ') print('The value of Integer1 is %3.2f' % Integer1) print('
Formatting in 3.4f format: ') print('The value of Integer1 is %3.4f' % Integer1)>

Вихід:

Formatting in 3.2f format: The value of Integer1 is 12.35 Formatting in 3.4f format: The value of Integer1 is 12.3457>

Схожі читання – Рядкові методи

Корисні операції над рядками Python

Рядкові константи Python

Вбудована функція

опис

string.ascii_letters

Конкатенація констант ascii_lowercase і ascii_uppercase.

string.ascii_lowercase

Зчеплення малих літер

string.ascii_uppercase

Зчеплення великих літер

string.digits

Цифра в рядках

string.hexdigits

Шестизначний у рядках

рядок.букви

конкатенація рядків нижнього та верхнього регістру

string.lowercase

rdbms

Рядок повинен містити малі літери.

string.octdigits

Вісім цифр у рядку

рядок.розділові

Символи ASCII із знаками пунктуації.

string.printable

Рядок символів, які можна роздрукувати

String.endswith()

Повертає True, якщо рядок закінчується заданим суфіксом, інакше повертає False

String.startswith()

Повертає True, якщо рядок починається з заданого префікса, інакше повертає False

String.isdigit()

Повертає True, якщо всі символи в рядку є цифрами, в іншому випадку повертає False.

String.isalpha()

Повертає True, якщо всі символи в рядку є алфавітами, в іншому випадку повертає False.

string.isdecimal()

Повертає true, якщо всі символи в рядку є десятковими.

str.format()

один із методів форматування рядків у Python3, який дозволяє багаторазові заміни та форматування значень.

String.index

Повертає позицію першого входження підрядка в рядок

string.uppercase

Рядок повинен містити великі літери.

рядок.пробіл

Рядок, що містить усі символи, які вважаються пробілами.

string.swapcase()

Метод перетворює всі символи верхнього регістру в нижній і навпаки заданого рядка, і повертає його

замінити()

повертає копію рядка, де всі входження підрядка замінено іншим підрядком.

Застарілі рядкові функції

Вбудована функція

опис

string.Isdecimal

Повертає true, якщо всі символи в рядку є десятковими

Рядок.Isalnum

Повертає true, якщо всі символи в заданому рядку є буквено-цифровими.

string.Istitle

Повертає True, якщо рядок є рядком із заголовком

Рядок.розділ

розділяє рядок при першому входженні роздільника та повертає кортеж.

mysql список користувачів
String.Ididentifier

Перевірте, чи є рядок дійсним ідентифікатором.

String.len

Повертає довжину рядка.

String.rindex

Повертає найвищий індекс підрядка всередині рядка, якщо підрядок знайдено.

String.Max

Повертає старший символ алфавіту в рядку.

String.min

Повертає мінімальний алфавітний символ у рядку.

String.splitlines

Повертає список рядків у рядку.

string.capitalize

Повертає слово з великої літери.

string.expandtabs

Розгорнути табуляції в рядку, замінивши їх одним або кількома пробілами

string.find

Повертає найнижчий індекс підрядка.

string.rfind

знайти найвищий індекс.

string.count

Повертає кількість (не перекриваються) входжень підрядка sub у рядку

string.lower

Повертає копію s, але з великим регістром, літери перетворені на малі.

string.split

Повертає список слів рядка, якщо необов’язковий другий аргумент sep відсутній або відсутній

Рядки документів Python
  • Перестановка заданого рядка за допомогою вбудованої функції
  • Знайти частоту кожного слова в рядку в Python
  • Програма для прийому рядків, які містять усі голосні
  • Підрахуйте кількість символів, що збігаються в парі рядка
  • Підрахувати всі префікси в даному рядку з найбільшою частотою
  • Програма для перевірки наявності в рядку спеціальних символів
  • Генерування випадкових рядків, доки не буде згенеровано заданий рядок
  • Програма Python для підрахунку символів верхнього та нижнього регістру без використання вбудованих функцій