📝
Python, Ruby, JS, PHP における文字列処理の違い(結合と変数展開)
趣味や仕事で多くの言語で開発している際に、
単純な構文で書き間違えが多いので書き起こします。
特に解説はせずリファレンスとコードのみ記載します。
文字列配列の結合
Python
str.join(iterable) — Python 3.8.1 ドキュメント
strings = ['fizz', 'buzz']
merged_strings = ' '.join(strings)
print(merged_strings) # 'fizz buzz'
Ruby
Array#join (Ruby 2.7.0 リファレンスマニュアル)
strings = ['fizz', 'buzz']
merged_strings = strings.join(' ')
p merged_strings # "fizz buzz"
JavaScript
Array.prototype.join() - JavaScript | MDN
const strings = ['fizz', 'buzz'];
const mergedStrings = strings.join(' ');
console.log(mergedStrings); // 'fizz buzz'
PHP
$strings = ['fizz', 'buzz'];
$mergedStrings = implode(' ', $strings);
print($mergedStrings) // 'fizz buzz'
文字列内の式展開
Python
7.1.1. フォーマット済み文字列リテラル — Python 3.8.1 ドキュメント
string_fizz, string_buzz = 'fizz', 'buzz'
string_fizz_buzz = f'{string_fizz} {string_buzz}'
print(string_fizz_buzz) # 'fizz buzz'
Ruby
string_fizz, string_buzz = 'fizz', 'buzz'
string_fizz_buzz = "#{string_fizz} #{string_buzz}"
p string_fizz_buzz # "fizz buzz"
JavaScript
const stringF = 'fizz'
const stringB = 'buzz'
const stringFizzBuzz = `${stringF} ${stringB}`
console.log(stringFizzBuzz) // 'fizz buzz'
PHP
[$stringF, $stringB] = ['fizz', 'buzz'];
$stringFizzBuzz = "${stringF} ${stringB}";
print($stringFizzBuzz); // 'fizz buzz'
Discussion
# 文字列配列の結合
のPythonの1行目に;
がついてます…バグにはならないはずですが、他の言語仕様と混ざっています指摘ありがとうございます!修正しました