Рубрики
Без рубрики

«Конкатенация строк Python без использования оператора «+»

Когда я впервые увидел это, я был уверен, что это ошибка. Ну — Это особенность! В современной короткой статье вы узнаете о небольшом питоном трюке, который я называю «Строкование Concatenation без +». Давайте начнем с некоторых кода! Плюс против соседних строковых буквальных веществ >>> ‘FIN’ ‘XPER’ ‘Finxter’ >>> «FIN ‘+’ XPER ” Finxter» есть два … Concatenation String Python без «Подробнее»

Автор оригинала: Chris.

Когда я впервые увидел это, я был уверен, что это ошибка. Ну – это особенность!

В современной короткой статье вы узнаете о маленьком Python Trick что я звоню «Строка Concatenation без +» Отказ Давайте начнем с некоторых кода!

Плюс против смежного строка буквальное согласие

>>> 'Fin' 'xter'
'Finxter'
>>> 'Fin' + 'xter'
'Finxter'

Есть два способа объединения строковых литералов в Python:

  • Используя + Оператор между двумя струнными литералами. Это также работает для переменных.
  • Использование Прилегающие строковые литералы Без + оператор. Это не работает для переменных.

Смежная строка Concatenation работает для переменных?

Нет. Вот счетчик пример:

>>> x = 'Fin'
>>> y = 'xter'
>>> x + y
'Finxter'
>>> x y
SyntaxError: invalid syntax

Причина можно найти в документации:

Несколько соседняя строка или Байты литералов (Разрешено разграниченное пробел), возможно, использование разных конвенций цитирования, допускаются, и их значение такое же, как их Concatenation Отказ Таким образом, «Привет» «мир» эквивалентно "helloworld" Отказ

Где использовать соседние конкатенации строки?

Вы можете использовать соседние конкатенации строки, чтобы уменьшить количество обратных стяков (чтобы избежать новой черты) или для удобного разделиния струн на линии, или даже добавить комментарии к частям строк.

Вот пример, где вы используете строку Concatenation соседних строк в функции regex Findall для использования комментариев для объяснения частей строки.

import re

x = re.findall('[A-Za-z]' # Pattern Part 1: Upper or Lowercase
               '[a-z]+',  # Pattern Part 2: Lowercase Letters
               'Hello World')
print(x)
# ['Hello', 'World']

Обратите внимание, как это было бы немного запутано при использовании конкатенации строки с помощью оператора PLUS +:

import re

x = re.findall('[A-Za-z]' # Pattern Part 1: Upper or Lowercase
               + '[a-z]+',  # Pattern Part 2: Lowercase Letters
               'Hello World')
print(x)
# ['Hello', 'World']

Значение одинаково, но было бы как-то сбивает с толку из-за перегруженного значения оператора + для конкатенации строки и внутри регеляции.

Можете ли вы решить головоломку?

Хорошо спроектированная головоломка передает одну единственную точку, которая удивляет читателя.

[Python] «Thon ‘Print (X) [/Python]

Что такое выход этого кода фрагмент?

Вы можете проверить, решите ли вы эту головоломку правильно в нашем интерактивном приложении Finxter! Вы мастер-кодер? Проверьте свои навыки сейчас!

Связанное видео.

Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.

Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python One-listers (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.

Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.