Python新手,我想知道是否有人能指引我朝着正確的方向前進。如何將字符串保存到字符列表中,但也能夠按相反順序打印該列表
例如:
a = "string"
s = list(a)
那會使"string"
到['s', 't', 'r', 'i', 'n', 'g']
但我怎麼能逆轉列表,並打印出"gnirts"
不使用內置在Python反向方法。
Python新手,我想知道是否有人能指引我朝着正確的方向前進。如何將字符串保存到字符列表中,但也能夠按相反順序打印該列表
例如:
a = "string"
s = list(a)
那會使"string"
到['s', 't', 'r', 'i', 'n', 'g']
但我怎麼能逆轉列表,並打印出"gnirts"
不使用內置在Python反向方法。
也許最簡單的方法就是扭轉你的字符串中使用slice notation:
a = 'string'
print(a[::-1])
您還可以將字符串轉換到一個列表,然後反轉並最終通過加入一起:
a = 'string'
print(''.join(list(a)[::-1])
您還可以使用稍微複雜一點的for循環:
inversed_a = ''
for i in range(len(a) - 1, -1):
inversed_a += a[i]
然後inversed_a
將是'gnirts'
爲什麼你編輯你的答案與另一個答案相同? – Arman
@阿曼,實際上是另一個人在他被低估時編輯了他的答案,最後我們提供了同樣的迴應。 – lmiguelvargasf
在我看來,你之前的回答也是正確的,因爲OP本人首先將字符串轉換爲列表。 – Arman
爲了得到逆序字符串中的字符不需要將字符串轉換成列表 - 使用逆轉切片:
a = "string"
print(a[::-1])
輸出:
gnirts
一些有用的主題關於Python的切片符號:
還有一種方法可以讓我使用循環來做到這一點嗎? – lg713
@ lg713,在技術上 - 是的,但對於這樣簡單的情況,它會過於複雜 – RomanPerekhrest
這是一個你不應該使用內建方法的作業嗎? – Arman