文字

テキストは文字で構成されており、時には個々の文字に対して操作を行う必要があります。Pythonでは、インデックス演算子 [] を使って個々の文字にアクセスできます:

greeting = 'Welcome to indexing!'
print(greeting[0])    # W
print(greeting[1])    # e
print(greeting[2])    # l
print(greeting[3])    # c

すべての文字は、それ自体が文字列です。したがって、文字を文字列と同様に操作できます。+ を使って結合したり、数値と掛けて複数回繰り返したりすることができます。

インデックスは 0 から始まることに注意してください。最初の文字にアクセスするには [0] を使い、2番目は [1]、3番目は [2] というようになります。Pythonでは0ベースのインデックスを使用します。これは他の多くのプログラミング言語(C++、Java、C# など)でも一般的に採用されている手法です。

#           01234
greeting = 'hello'
print(greeting[0])                     # h
print(greeting[4])                     # o
print(len(greeting))                   # 5 (文字が5つあります)
print(greeting[len(greeting) - 1])     # o (したがって、5番目の文字には [4] を使用します)
print(greeting[len(greeting) - 2])     # l

チャレンジ

次のテキストが与えられます。あなたのタスクは、このテキストの n 番目の文字を求めることです:

In 2017, Bitcoin reached ~$20k. People thought it was the historical maximum.

入力は単一の整数 n からなります。与えられた文の n 番目の位置の文字を出力してください(カウントは1から始まります)。もし n1...テキストの長さ の範囲外であれば、プログラムは Bad Input を出力すべきです。

入力

出力

1

I

2

n

-1

Bad Input

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue