我正在创建一个函数,如果我输入我的名字。假设“Namey Fakey Dake”,Namey 为名字,Dake 为姓氏,fakey 为角色的中间名。我想重新排列它们,即使我添加更多中间名,我也希望它们自动重新排列
由于我在Python方面经验不足,所以我的技能有限。我尝试使用单个打印功能手动重新排列它们,但只有当我编写的方式只有 1 个中间时,这才有效,而且我不知道如何实际修复它。
def getName(firstName, middleName, lastName):
print(lastName + ',', firstName, middleName[0] + '.')
getName('Roald', 'Andre Eric', 'Kvarv')
我期望输出:Kvarv, Roald A. E. 但是当我添加更多名字时,我得到:Kvarv,Roald A。
最佳答案
将str.join
与str.split
结合使用:
def getName(firstName, middleName, lastName):
print(lastName + ',', firstName, ' '.join(s[0]+'.' for s in middleName.split()))
getName('Roald', 'Andre Eric', 'Kvarv')
输出:
Kvarv, Roald A. E.
关于python - 如果我向字符串添加新元素,如何将字符串中的元素重新排列为想要的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58201739/