Python 3.x 如何切换姓氏和名字的顺序并移除昏迷
可能是个简单的问题,但我对Python非常陌生 如果我有一个给定的“姓、名”,我如何将顺序切换到“名、名” 例如,如果我有:Python 3.x 如何切换姓氏和名字的顺序并移除昏迷,python-3.x,Python 3.x,可能是个简单的问题,但我对Python非常陌生 如果我有一个给定的“姓、名”,我如何将顺序切换到“名、名” 例如,如果我有: “Doe,John” 我该怎么做 “约翰·多伊” 我尝试使用.split(),但这会将其转换为列表,我希望它是一个字符串 编辑:建议的问题给出了一个列表,但我的示例只是一个字符串 这是我想出的代码: def change_name(name: str) -> str: x = name.split(',') x.reverse() x.joi
“Doe,John”
我该怎么做
“约翰·多伊”
我尝试使用.split()
,但这会将其转换为列表,我希望它是一个字符串
编辑:建议的问题给出了一个列表,但我的示例只是一个字符串
这是我想出的代码:
def change_name(name: str) -> str:
x = name.split(',')
x.reverse()
x.join()
但这只是给了我一个错误,列表没有属性join
另外,我做了str(x).join(“”)
,但那只是给了我一个列表['John','Doe']
编辑:我似乎已经接近我想要的,但它仍然不是完美的。
现在我有:
def change_name(name: str) -> str:
x = name.split(',')
x.reverse()
separator = ','
return separator.join(x)
这让我
“约翰,多伊”
现在的问题是我需要去掉字符串前面的空格和逗号。您的错误是使用逗号连接名字和姓氏,而您本应使用空格。请尝试以下操作:
>>> name = "Doe, John"
>>> x = name.split(', ')
>>> x.reverse()
>>> separator = ' '
>>> separator.join(x)
'John Doe'
这些操作也可以链接到一行中,例如
>>> ' '.join(reversed(name.split(', ')))
'John Doe'
你的思路是正确的。首先
将它拆分成一个列表,反转它,然后加入它,使它再次成为一个字符串。这回答了你的问题吗?@Selcuk它告诉我列表没有属性join?这告诉你什么?发布你修改过的代码,或者阅读str.join()的文档
@Selcuk我编辑并添加了我所做的事情。如有任何帮助,将不胜感激