Я хочу, чтобы изменить строку следующим образом:Python индекс строки из границ
def reverse(s):
for i in range(len(s),0,-1):
var = s[i] # getting an out of range error?
...
Может кто-нибудь объяснить, почему?
Я хочу, чтобы изменить строку следующим образом:Python индекс строки из границ
def reverse(s):
for i in range(len(s),0,-1):
var = s[i] # getting an out of range error?
...
Может кто-нибудь объяснить, почему?
Если длина строки равна n
, действительные индексы от 0
до n-1
(элементы подсчитываются от 0, а не от 1).
В вашем коде for
Условие петли len(s)
должно быть изменено на len(s) - 1
. Ответ
Благодарим за быстрый и простой ответ! Примите ответ за 7 минут. – patrickhuang94
Добро пожаловать! – Ziezi
simplicis настолько хорошо, но вот простой способ изменить строку, как это:
print('Hello'[::-1])
Выход:
olleH
Спасибо за ответ! Я делаю учебник Codecademy, и они специально поручили не использовать его таким образом;) но я ценю это! – patrickhuang94
Хорошо, просто подсказка. Если вы хотите изменить строку, это лучший способ: P –
@homerboy Было бы неплохо добавить это в ваш вопрос. –
Len (s) == N, s [N] находится вне границ, последний действительный индекс - N-1 – user1514631
do 'for i в диапазоне (len (s) -1, -1, -1)' вместо – user1514631
Спасибо, ребята, за быстрые ответы! Теперь я понимаю :) – patrickhuang94