Python 文字列: 置換、結合、分割、反転、大文字と小文字

Python ではすべてがオブジェクトであり、文字列もオブジェクトです。 Pythonの文字列は文字をダブルクォーテーションで囲むだけで作成できます。

例:

変数 = "こんにちは世界!"

文字列内の値へのアクセス

Python は文字タイプをサポートしていません、これらは長さ XNUMX の文字列として扱われ、部分文字列ともみなされます。

部分文字列を取得するには、インデックスとともに角括弧を使用してスライスします。

var1 = "Guru99!"
var2 = "Software Testing"
print ("var1[0]:",var1[0])
print ("var2[1:5]:",var2[1:5])

出力:

var1[0]: G
var2[1:5]: oftw 

さまざまな文字列演算子

異なる文字列を連結するなど、さまざまな方法で使用できるさまざまな文字列演算子があります。

a=guru、b=99 の場合、a+b= "guru99" とします。 同様に、a*2の場合は「ぐるぐる」となります。 同様に、文字列で他の演算子を使用できます。

演算子 Description
[] スライス - 指定されたインデックスから文字を取得します a[1] は、Guru という単語そのものから「u」を与えます (0=G、1=u、2=r、3=u)。
x="Guru"
print (x[1])
[ : ] 範囲スライス - 指定された範囲から文字を取得します x [1:3] グルという単語から「ur」が得られます。 G である 0 は考慮されず、それ以降の単語が ur であるとみなされることに注意してください。
x="Guru" 
print (x[1:3])
in Membership - 指定された文字列に文字が存在する場合に true を返します。 u は word Guru に存在するため、1 (True) が返されます。
x="Guru" 
print ("u" in x)
ありませんで Membership - 指定された文字列に文字が存在しない場合に true を返します。 word Guru には存在しないため、1 が返されます。
x="Guru" 
print ("l" not in x)
R/R 生の文字列はエスケープ文字の実際の意味を抑制します。 R'\n' を印刷すると \n を印刷し、R'/n' を印刷すると \n
% – 文字列フォーマットに使用されます %r – オブジェクトの正規の文字列表現 (つまり、repr(o)) を挿入します。
%s- オブジェクトのプレゼンテーション文字列表現 (つまり、str(o)) を挿入します。
%d- 表示用に数値をフォーマットします
このコードの出力は「guru 99」になります。
name = 'guru'
number = 99
print ('%s %d' % (name,number))
+ 2つの文字列を連結します 文字列を連結して結果を返します
x="Guru" 
y="99" 
print (x+y)
* 繰り返す 文字を XNUMX 回出力します。
x="Guru" 
y="99" 
print (x*2)

さらにいくつかの例

変数を別の文字列に再代入することで、Python 文字列を更新できます。 新しい値は、前の値に関連付けることも、完全に異なる文字列にまとめて関連付けることもできます。

x = "Hello World!"
print(x[:6]) 
print(x[0:6] + "Guru99")

出力:

Hello
Hello Guru99

Note : – Slice:6 または 0:6 は同じ効果があります

Python String replace() メソッド

replace() メソッドは、古い文字列の値が新しい値に置き換えられた文字列のコピーを返します。

oldstring = 'I like Guru99' 
newstring = oldstring.replace('like', 'love')
print(newstring)

出力:

I love Guru99

大文字と小文字の文字列を変更する

Python では、文字列を大文字または小文字に変更することもできます。

string="python at guru99"
print(string.upper())

出力:

PYTHON AT GURU99

同様に、他の関数に対しても大文字にするなどの操作を行うことができます。

string="python at guru99"		
print(string.capitalize())

出力:

Python at guru99

文字列を小文字に変換することもできます

string="PYTHON AT GURU99"
print(string.lower())

出力:

python at guru99

文字列の「結合」関数を使用する

join 関数は、文字列を連結するためのより柔軟な方法です。 join 関数を使用すると、文字列に任意の文字を追加できます。

たとえば、文字列「Python」の各文字の後にコロン (:) を追加したい場合は、次のコマンドを使用できます。wing コー​​ド。

print(":".join("Python"))

出力:

P:y:t:h:o:n

文字列を反転する

reverse 関数を使用すると、文字列を反転できます。 たとえば、文字列「12345」がある場合、以下に示すように逆関数のコードを適用するとします。

string="12345"		
print(''.join(reversed(string)))

出力:

54321

文字列の分割

文字列の分割は、Python で適用できるもう 99 つの関数です。文字列「guru99 Career guruXNUMX」を見てみましょう。 まずここでは、コマンド word.split を使用して文字列を分割し、結果を取得します。

word="guru99 career guru99"		
print(word.split(' '))

出力:

['guru99', 'career', 'guru99']

これをよりよく理解するために、分割のもう XNUMX つの例を見てみましょう。スペース (' ') の代わりに ('r') に置き換えると、文字列内で 'r' が言及されている場所で文字列が分割されます。

word="guru99 career guru99"		
print(word.split('r'))

出力:

['gu', 'u99 ca', 'ee', ' gu', 'u99']

重要な注意:

Python では、文字列は不変です。

以下を検討してくださいwing コード

x = "Guru99"
x.replace("Guru99","Python")
print(x)

出力:

Guru99

それでも Guru99 を返します。 これは、x.replace(“Guru99″,”Python”) が返すためです。 のコピー X (置換が行われた場合)

以下を使用する必要がありますwing 変化を観察するコード

x = "Guru99"
x = x.replace("Guru99","Python")
print(x)

出力:

Python

上記のコードは Python 3 の例です。Python 2 で実行したい場合は、以下を検討してください。wing コー​​ド。

Python 2 の例

#Accessing Values in Strings
var1 = "Guru99!"
var2 = "Software Testing"
print "var1[0]:",var1[0]
print "var2[1:5]:",var2[1:5]
#Some more examples
x = "Hello World!"
print x[:6] 
print x[0:6] + "Guru99"
#Python String replace() Method
oldstring = 'I like Guru99' 
newstring = oldstring.replace('like', 'love')
print newstring
#Changing upper and lower case strings
string="python at guru99"
print string.upper()
string="python at guru99"		
print string.capitalize()
string="PYTHON AT GURU99"
print string.lower()
#Using "join" function for the string
print":".join("Python")		
#Reversing String
string="12345"		
print''.join(reversed(string))
#Split Strings
word="guru99 career guru99"		
print word.split(' ')
word="guru99 career guru99"		
print word.split('r')
x = "Guru99"
x.replace("Guru99","Python")
print x
x = "Guru99"
x = x.replace("Guru99","Python")
print x

出力:

var1[0]: G
var2[1:5]: oftw
Hello
Hello Guru99
I love Guru99
PYTHON AT GURU99
Python at guru99
python at guru99
P:y:t:h:o:n
54321
['guru99', 'career', 'guru99']
['gu', 'u99 ca', 'ee', ' gu', 'u99']
Guru99
Python

Python では、文字列の書式設定に面倒な %d などを使用する方法を使用する .format 関数が導入されました。

»詳細 Python 文字列の分割()

まとめ

Python はオブジェクト指向プログラミング言語であるため、多くの関数を Python オブジェクトに適用できます。 Python の注目すべき機能は、コードを読みやすくするためにソース ステートメントをインデントすることです。

  • スライスによる値へのアクセス – 角括弧は、部分文字列を取得するためのインデックスとともにスライスするために使用されます。
  • スライスでは、範囲が [1:5] と宣言されている場合、実際には範囲 [1:4] から値をフェッチできます。
  • 変数を別の文字列に再代入することで、Python 文字列を更新できます
  • replace() メソッドは、古い文字列を新しい文字列に置き換えた文字列のコピーを返します。
  • replace メソッドの構文: oldstring.replace(“変更する値”,“置換する値”)
  • []、[:]、in、Not in などの文字列演算子を適用して、文字列を連結したり、特定の文字を取得または文字列に挿入したり、文字列に特定の文字が存在するかどうかを確認したりできます。
  • その他の文字列操作には次のものがあります。
  • 大文字と小文字を変更する
  • 任意の文字を文字列に結合する結合関数
  • 文字列を反転する
  • 文字列を分割する