gpt4 book ai didi

Python-无法将列表转换为字符串

转载 作者:太空宇宙 更新时间:2023-11-04 08:14:21 24 4
gpt4 key购买 nike

我试图做的事情:

Take a string and append a backwards copy of that string, making a palindrome

我想出了什么:

# take an input string
a = input('Please enter a string: ')
a = list(a)

# read the string backwards
b = list(reversed(a))

# append the backward-ordered string to the original string, and print this new string
c = a + b
c = str(c)

print(c)

问题:运行时,此脚本接受一个字符串,例如“test”,并返回 ['t', 'e', 's', 't' , 't', 's', 'e', 't'];我对这个结果感到困惑,因为我明确地将 c 转换为字符串,这是 ab 连接的结果。 (c = str(c)) 我知道我一定在这里错过了一些基本的东西,但我无法弄清楚是什么。有人可以对此有所了解吗?谢谢你!

并且有人愿意详细说明为什么我的c = str(c) 不起作用吗?谢谢!

最佳答案

c = str(c) 的问题在于,将 str 应用于列表只会给出该列表的字符串表示 -因此,例如,str([1,2,3]) 生成字符串 '[1, 2, 3]'

将字符串列表放入字符串中的最简单方法是使用 str.join() 方法。给定一个字符串 s 和一个字符串列表 a,运行 s.join(a) 返回一个通过连接 的元素形成的字符串>a,使用 s 作为胶水。

例如:

a = ['h','e','l','l','o']
print( ''.join(a) ) # Prints: hello

或者:

a = ['Hello', 'and', 'welcome']
print( ' '.join(a) ) # Prints: Hello and welcome

最后:

a = ['555','414','2799']
print( '-'.join(a) ) # Prints: 555-414-2799

关于Python-无法将列表转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17077217/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com