python - my_str=i +my_str 在 python 中做了什么?
问题描述
下面是使用循环反转字符串的代码。在这里做什么 my_str=i+my_str
?
def reverse(s):
my_str = ""
for i in s:
my_str = i + my_str
return my_str
s = "Thisismyquestion"
print ("The original string is : ",end="")
print (s)
print ("The reversed string(using loops) is : ",end="")
print (reverse(s))
解决方案
请使用代码块帮助进行格式化。您可以在编写问题/答案时点击工具栏上的 {}。
关于你的问题:
第一个循环又名字符串的第一个字母 i = T
:
my_str = "" # it's empty
my_str = i + my_str # we combine T with an empty string
print(my_str) # T
第二个循环 i = h
:
my_str = "T" # my_str is still T from first loop
my_str = i + my_str # we combine h with the T string
print(my_str) # hT
第三个循环 i = i
:
my_str = "hT" # my_str is still hT from second loop
my_str = i + my_str # we combine i with the hT string
print(my_str) # ihT
第四循环 i = s
:
my_str = "ihT" # my_str is still ihT from third loop
my_str = i + my_str # we combine s with the ihT string
print(my_str) # sihT
这是您的格式化代码,我在每个循环中添加了一个打印以帮助理解:
def reverse(s):
print()
my_str = ""
for i in s:
my_str = i + my_str
print(my_str)
return my_str
s = "Thisismyquestion"
print("The original string is : ", end="")
print(s)
print("The reversed string(using loops) is : ", end="")
print(reverse(s))
输出 :
The original string is : Thisismyquestion
The reversed string(using loops) is :
T
hT
ihT
sihT
isihT
sisihT
msisihT
ymsisihT
qymsisihT
uqymsisihT
euqymsisihT
seuqymsisihT
tseuqymsisihT
itseuqymsisihT
oitseuqymsisihT
noitseuqymsisihT
noitseuqymsisihT