这个问题是针对学校项目的,所以不要给出我的确切答案 XD 但请告诉我如何开始。我已经尝试了几个小时,但我就是无法得到它。这是问题:
在 python 中创建一个函数,它接受标准格式的名称并以以下形式打印它们:
例如 INPUT 到 OUTPUT Santa Claus 到 Claus,S. Michael J. Fox 到 Fox,MJ Madonna 到 Madonna William Henry Richard Charles Windsor 到 Windsor,WHRC
因此,您需要一个带有名称的函数,例如
def convert_name( name ):
然后我认为您想将名称拆分为名字、姓氏和中间名(如果适用):
subnames = name.split() # split the name on whitespace
之后,您应该检查子名称中包含的各种情况。以麦当娜为例,一种情况可能是
if (len(subnames) == 1): return subnames[0]
希望这有助于您入门!
您将需要一个算法,用空格分隔您的输入字符串。然后,您将获取最后一个分隔字符串并将其添加到您的输出字符串中。如果后面有更多名称,则必须添加逗号。之后,取其他字符串,从第一个字符串开始,检查它们是否已经是“[AZ].”的形式。如果没有,请将它们转换为该形式。否则,只需将它们添加到您的输出中。就是这样。我可以更准确,但你要求不要:)
好的,然后使用String.Split()
To 将 String 更改为 List ,然后使用len()
对元素进行计数。使用循环for
并创建新字符串。