誰かが、次のように文字列を逆にすることができると私に言いました:
a='123456'
a = a[::-1]
print a
私はそれがどのように機能するのかわかりません。
これは、Python のスライス表記を利用しています。基本的に、元の文字列をさかのぼって作成された新しい文字列を返します。以下のデモンストレーションを参照してください。
>>> mystr = "abcde"
>>> mystr[::-1]
'edcba'
>>> for i in mystr[::-1]:
... print i
...
e
d
c
b
a
>>>
スライス表記の形式は[start:stop:step]
.
3 番目のパラメーターはステップ サイズです。アイデアを得るためにいくつかの異なるステップサイズを試してください
>>> a = '123456'
>>> a[::2]
'135'
>>> a[::3]
'14'
>>> a[::-3]
'63'
>>> a[::-2]
'642'
>>> a[::-1]
'654321'
start と stop は空のままなので、Python はそれらを選択して文字列全体に沿って進みます。