1-2.python3における文字列取り扱いの基本とよく使う項目

pythonの文字列のよく使う基本的な知識に関して学びます

python3での文字列の表現方法

文字列であることを表現するためには、'または"を利用します。


# coding:utf-8
string = "string"
string = '文字列'
		

python3での文字列の連結方法

文字列を連結させるには、+を使います。
また、変数に代入した数値を文字列に変換したい場合は、
str修飾子
を使うか、
format文
などを使用する方法があります。
サンプルを見てみましょう。


# coding:utf-8
# 文字列結合
string1 = "hello"
string2 = "world"
addString = string1 + string2
# helloworld
print(addString)

# 数値を結合する場合
number1 = 10
# strを使って文字列に変換する
# 出力:10位
addString = str(number1) + "位"
print(addString)

# formatを使って数値を自動変換する
addString = "私の順位は{}位です".format(number1)
# 出力:私の順位は10位です
print(addString)

# 2つ数値を出力したい場合
number2 = 11
addString = "私の順位は{}位です、あなたの順位は{}位です。".format(number1,number2)
print(addString)

formatの使い方としては、文字列内に{}を書き込み文字列終端に
.format(変数1,変数2...)
という感じで使用します。

文字列を指定回数分繰り返す

pythonには文字列を指定回数分繰り返す文法があります。 *オペランドを使用することにより表現できます。


# coding:utf-8
# 文字列を繰り返す
string = "俺" * 3
# 出力:俺俺俺
print(string)

文字列の一致と不一致

文字列が完全一致しているかどうかを判定するには==演算子を使います。


string1 = "my name Is jhon"
string2 = "my name Is jhon"
if(string1 == string2):
    # 出力される
    print("equal")
else:
    print("not equal")
		

indexによる文字列のアクセス

pythonではindexによる文字列のアクセスが可能です。
文字列のindexの初期位置は0から始まります。 また、-オペランドを使用することにより、末尾からのアクセスが可能です。
-1が末尾になります。


# coding:utf-8
string1 = "hello Jhon I'm Bekkey!"
print(string1[0]) # h
# 配列外にアクセスするとindex out of rangeエラー
print(string1[100])
# -数値からアクセスすることも可能(-1が末尾になる)
print(string1[-1]) # !
		

文字列のスライスと切り取り

文字列を切り取る際も配列の要素にアクセスするような文法で切り取ることができます。
文字列変数[始点:終点]
という文法で記述します。


# coding:utf-8
string1 = "hello Jhon I'm Bekkey!"
# 0番目から5番目までを切り取る
print(string1[0:5]) # hello
# 5番目から7番目までを切り取る
print(string1[5:7]) # j
# 配列の容量をオーバーしていた場合でもエラーにならず、文字列の末尾までが表示される
print(string1[0:100]) # hello Jhon I'm Bekkey!
		

-オペランドも使用することができます。


# 始点から終点の-1文字までを切り取る
print(string1[0:-1]) # hello Jhon I'm Bekkey
		

[0:10]のように始点と終点を指定せず、始点終点を省略することもできます。
始点を省略した場合は最初から文字列を切り取ります。
終点を省略した場合は末尾まで文字列を切り取ります


print(string1[:5]) # hello
print(string1[0:]) # hello jhon I'm Bekkey!
		

切り取る文字列にスキップをかけることもできます。
その場合は以下のように記述します


文字列変数[始点:終点:ステップ数]
		

ステップを使って文字列を切り取ってみます。


print(string1[0:100:2]) # hloJo ' eky
# 省略も可能
print(string1[::2]) # hloJo ' eky
		

参考サイト
python公式ドキュメント

このエントリーをはてなブックマークに追加