Python 如何将垂直字符串转换为水平字符串?
在Python中如何将垂直字符串转换为水平字符串 我试过:Python 如何将垂直字符串转换为水平字符串?,python,string,replace,split,transpose,Python,String,Replace,Split,Transpose,在Python中如何将垂直字符串转换为水平字符串 我试过: result=astring.replace("\n", "") 但它什么也不做,它保持垂直 代码如下: names = "".join(name).replace("\n","") print(names) 其中“名称”是: 我想: Federica, Silvio, Enrico “费德里加、西尔维奥、恩里科” 你的方法从根本上
result=astring.replace("\n", "")
但它什么也不做,它保持垂直
代码如下:
names = "".join(name).replace("\n","")
print(names)
其中“名称”是:
我想:
Federica, Silvio, Enrico
“费德里加、西尔维奥、恩里科”
你的方法从根本上来说是错误的,当你应用一个函数时,它将中间的空格和一个迭代器结合起来。e、 g
" ".join("hello")
“他是我的朋友”
因此,当您在没有联接值的字符串上调用它时,该字符串将保持不变。然后将“\n”替换为“”,这将展平字符串,但不会插入逗号。如果名称为字符串格式,例如:
names = """Federica
Silvio
Enrico"""
可以使用“替换”将垂直字符串拆分为水平字符串:
result = names.replace("\n", ", ")
其结果是:
print(results)
'Federica, Silvio, Enrico'
因此,我可以说您的方法没有错,可能您没有存储替换的结果?Replace不会修改字符串,但会返回一个新的字符串,并执行相应的操作。请重新考虑使用名称列表时遇到的问题。将字符串转换为名称列表,然后将列表转换为所需格式的字符串。但是我们不做家庭作业。
“它什么也不做”
,所以它做了一些事情请打印(repr(names))
,并将显示在您的问题中的内容(而不是)您现在拥有的“where”names:“值得注意的是,x.replace(…)
不会修改x
,因为字符串是不可变的。”。相反,它将返回一个新的修改过的string对象。考虑到在问题中,OP将值分配给names,我省略了这个事实。
result = names.replace("\n", ", ")
print(results)
'Federica, Silvio, Enrico'