1. Введение
Это статья о добавлении строки в Python. В Python строка является неизменным объектом. Вы можете использовать оператор «+», чтобы добавить две строки для создания новой строки. Существуют различные способы, такие как использование join, format, stringIO и добавление строк с пробелом.
2. Добавление строки Python
В этом разделе мы рассмотрим несколько способов добавления строк с использованием API Python.
2.1 + оператор
‘+’ Оператор объединяет две строки. Код ниже показывает добавление двух строк с пробелом между ними.
+ Оператор
1
2
3
4
|
str1 = "Hello" str2 = "World" space = " " print (str1 + space + str2) |
Команда ниже пытается выполнить приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
2.2 * оператор
‘*’ Оператор соединяет строку с int. Фрагмент кода для использования оператора ‘*’ показан ниже.
* Оператор
1
|
print ( 'black' * 5 ) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
2.3 строка, добавляющая к int
Строка не может быть добавлена непосредственно с помощью int, как показано в фрагменте ниже.
строка, добавляющая к int
1
|
print ( 'green' + 8 ) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже. Возникает исключение, показывающее, что строка и int не могут быть добавлены
Правильный путь — использовать метод str для преобразования int в строку. Фрагмент кода с использованием метода str показан ниже.
строка, добавляющая к int
1
|
print ( 'green' + str ( 8 )) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
Оператор 2,4%
Оператор «%» используется для добавления строк в строку с использованием синтаксиса формата. Фрагмент кода для использования оператора ‘%’ показан ниже.
% оператор
1
2
3
4
5
|
fruit1 = 'grapes' fruit2 = 'apples' fruit3 = "The basket has these fruits: %s and %s" % (fruit1,fruit2) print (fruit3) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
2.5 форматный метод
Оператор формата используется для добавления строк в строку, как показано в фрагменте кода ниже.
оператор форматирования
1
2
3
4
5
|
Firstname = "Pierce" Lastname = "Brosnan" Age = "54" Str = "{} {}'s Age is {} " . format (Firstname, Lastname, Age) print ( Str ) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
2.6 Способ соединения
Еще один способ добавления строк — создание списка и добавление строк в список. Метод join объединяет строки, чтобы получить результат. Фрагмент кода с использованием метода join показан ниже.
Метод соединения
1
2
3
|
string = ' ' .join([ 'the' , 'cat' , 'jumps' , 'over' , 'the' , 'wall' ]) print (string) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
Другой пример, показывающий метод присоединения строк в массиве, представлен ниже.
Метод соединения
1
2
|
music_album = [ "Stone Cold" , "Metallica" , "Rolling Stones" , "One Dance" , "Perfect Strangers" ] print ("".join(music_album)) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
2.7 Объединить с пробелом
Другой способ добавления строк — присоединение к списку строк путем включения пустого пространства. Объединение с пробелом показано в фрагменте кода ниже.
Соединить с пространством
1
|
print ( 'Concatenate ' 'With ' 'Space' ) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_string_append.py |
Вывод выполненной команды показан ниже.
2.8 Строковый метод ввода-вывода
String IO — поток в памяти для обработки ввода и вывода текста. API используется для добавления строк. Фрагмент кода, показанный ниже, представляет использование строки io.
Строка IO
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
|
from io import StringIO concat_str = StringIO() concat_str.write( 'This ' ) concat_str.write( 'example ' ) concat_str.write( 'is ' ) concat_str.write( 'for ' ) concat_str.write( 'StringIO' ) print (concat_str.getvalue()) |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python concat_string.py |
Вывод выполненной команды показан ниже.
2.9 Чтение файла журнала
Пример кода ниже показывает чтение строк из файла журнала и добавление строк.
Чтение файла журнала
1
2
3
4
5
6
7
8
9
|
with open ( 'log.txt' ) as file : log_file = file .readlines() new_log_lines = '' for line in log_file: if line[: 6 ] = = 'ERROR:' : new_log_lines = new_log_lines + line print (new_log_lines) |
Текст файла журнала показан ниже.
log.txt
1
2
3
4
5
6
|
111.222.333.123 HOME - [01/Feb/1998:01:08:39 -0800] "GET /bannerad/ad.htm HTTP/1.0" 200 198 "http://www.mozmac.com/ba_intro.htm" "Mozilla/4.01 (Macintosh; I; PPC)" ERROR: link not working 111.222.333.123 HOME - [01/Feb/1998:01:08:46 -0800] "GET /bannerad/ad.htm HTTP/1.0" 200 28083 "http://www.mozmac.com/ba_intro.htm" "Mozilla/4.01 (Macintosh; I; PPC)" 111.222.333.123 AWAY - [01/Feb/1998:01:08:53 -0800] "GET /bannerad/ad7.gif HTTP/1.0" 200 9332 "http://www.mozmac.com/ba_ad.htm" "Mozilla/4.01 (Macintosh; I; PPC)" ERROR: link not working 111.222.333.123 AWAY - [01/Feb/1998:01:09:14 -0800] "GET /bannerad/click.htm HTTP/1.0" 200 207 "http://www.mozmac.com/menu.htm" "Mozilla/4.01 (Macintosh; I; PPC)" |
Команда ниже выполняет приведенный выше фрагмент кода.
Команда выполнения
1
|
python python_line_append.py |
Вывод выполненной команды показан ниже.