区别于&引用;Python中的和[]

区别于&引用;Python中的和[],python,string,python-3.x,list,Python,String,Python 3.x,List,我已经编写了一个简单的程序来反转字符串,但是我写a=“”和写a=[]时得到的结果不同。请有人帮我解释一下为什么会发生这种情况: 输入为: "Argument goes here" 第一路 a= [] for i in range(( len(text)-1,-1,-1): a+= text[i] return a 输出为:['e'、'r'、'e'、'h'、's'、'e'、'o'、'g'、't'、'n'、'e'、'm'、'u'、'g'、'r'、'A'] 第二条道路 a = ""

我已经编写了一个简单的程序来反转字符串,但是我写
a=“”
和写
a=[]
时得到的结果不同。请有人帮我解释一下为什么会发生这种情况:

输入为:

"Argument goes here"
第一路

 a= []
 for i in range(( len(text)-1,-1,-1):
   a+= text[i]  
 return a
输出为:
['e'、'r'、'e'、'h'、's'、'e'、'o'、'g'、't'、'n'、'e'、'm'、'u'、'g'、'r'、'A']

第二条道路

a = ""
for i in range(1, len(text) + 1):
    a += text[len(text) - i]  
return a

输出为:
ereh seog tnemugrA
a=[]
实例化一个空列表。使用
+
运算符添加到列表时,执行的是列表扩展。换句话说,您正在通过额外的字符扩展列表。请注意,由于一次添加一个字符,因此其效果与
list.append
相同

a=''
实例化一个空字符串。使用
+
运算符添加到字符串时,执行的是字符串串联


因此,结果会有所不同。第一个将为您提供一个包含反向元素的
列表
对象。第二个将为您提供一个字符颠倒的
str
对象。

a=[]
实例化一个空列表。使用
+
运算符添加到列表时,执行的是列表扩展。换句话说,您正在通过额外的字符扩展列表。请注意,由于一次添加一个字符,因此其效果与
list.append
相同

a=''
实例化一个空字符串。使用
+
运算符添加到字符串时,执行的是字符串串联


因此,结果会有所不同。第一个将为您提供一个包含反向元素的
列表
对象。第二个将为您提供一个字符反转的
str
对象。

@avik,不要这样做。您可以使用以下方法反转字符串

[]
表示空列表,
表示空字符串

  • 在第一种情况下,使用
    a+=text[i]
    将字符串的每个字符从末尾添加到列表
    a
    。所以你有一个字符列表。在这里,您可以使用
    '.join(a)
    在返回
    a
    之前获取一个反向字符串

  • 在第二种情况下,将字符串的每个字符从末尾连接起来,从而得到一个反向字符串

  • 反向字符串

    s=“参数在这里”

    已撤销_=”“.加入(列表已撤销)

    >s=“参数在这里”
    >>>
    >>>倒转
    >>>列表(已反转)
    ['e','r','e','h','s','e','o','g','t','n','e','m','u','g','r','A']
    >>>
    >>>“”.join(列表已反转)
    “ereh seog tnemugrA”
    >>>
    
    @avik,不要那样做。您可以使用以下方法反转字符串

    []
    表示空列表,
    表示空字符串

  • 在第一种情况下,使用
    a+=text[i]
    将字符串的每个字符从末尾添加到列表
    a
    。所以你有一个字符列表。在这里,您可以使用
    '.join(a)
    在返回
    a
    之前获取一个反向字符串

  • 在第二种情况下,将字符串的每个字符从末尾连接起来,从而得到一个反向字符串

  • 反向字符串

    s=“参数在这里”

    已撤销_=”“.加入(列表已撤销)

    >s=“参数在这里”
    >>>
    >>>倒转
    >>>列表(已反转)
    ['e','r','e','h','s','e','o','g','t','n','e','m','u','g','r','A']
    >>>
    >>>“”.join(列表已反转)
    “ereh seog tnemugrA”
    >>>
    
    你是怎么知道
    []
    是有效的python代码而不知道它们的意思的?我使用的是“边工作边学习”方法。你是怎么知道
    []
    是有效的python代码而不知道它们的意思的?我使用的是“边工作边学习”方法1.他不是在问如何反转字符串。他问的是为什么他的程序会得到两个不同的结果,而不是如何反转字符串。他问为什么他从他的项目中得到了两个不同的结果。谢谢你的快速回复。谢谢你的快速回复。
    >>> s = "Argument goes here"
    >>>
    >>> reversed(s)
    <reversed object at 0x00000275F29B9F60>
    >>> list(reversed(s))
    ['e', 'r', 'e', 'h', ' ', 's', 'e', 'o', 'g', ' ', 't', 'n', 'e', 'm', 'u', 'g', 'r', 'A']
    >>>
    >>> "".join(list(reversed(s)))
    'ereh seog tnemugrA'
    >>>