負のインデックス
文字列の文字は []
ブラケットでアクセスでき、インデックスは 0 から始まります。
文字列 s
の最後の文字にアクセスするには、s[len(s) - 1]
と書くことができます。しかし、式が長くなると複雑になりかねません。幸いなことに、負のインデックスを使って末尾から文字にアクセスする、より簡潔な方法があります:
# 01234 => 5文字
greeting = 'hello'
print(greeting[len(greeting) - 1]) # o
print(greeting[len(greeting) - 2]) # l
print(greeting[len(greeting) - 3]) # l
# 01234
greeting = 'hello'
print(greeting[-1]) # o
print(greeting[-2]) # l
print(greeting[-3]) # l
これらのプログラムは同等ですが、2つ目の方がより簡潔で読みやすいです。
チャレンジ
あなたはセキュリティ部門で働いており、ユーザーのパスワードに別のチェックを追加するよう依頼されました。パスワードは、最初の3
文字を連結したものが、末尾の3
文字を逆順にしたものと等しくない場合に、安全と見なされます。
入力は1行で、パスワードが与えられます。
パスワードが安全と見なされる場合、プログラムは secure
と出力し、そうでない場合は not secure
と出力してください。
入力 | 出力 |
---|---|
abcdcba | not secure |
treqsd97 | secure |
Constraints
Time limit: 2 seconds
Memory limit: 512 MB
Output limit: 1 MB