我必须做一个代码,把一个名字转换成姓氏,首字母,中间字母的格式.我的代码在假设有中间名的情况下工作,但如果没有提供中间名,代码就会中断.有没有一种方法可以忽略没有中间名,而只默认为姓氏和首字母?我是python3的新手,所以如果我的代码是uber bad,我很抱歉.

your_name = input()
broken_name = your_name.split()
first_name = broken_name[0]
middle_name = broken_name[1]
last_name = broken_name[2]

middle_in = middle_name[0]
first_in = first_name[0]
print(last_name+',',first_in+'.'+middle_in+'.' )

推荐答案

你可以使用if-else语句来判断你的名字有多长.

your_name = input()
broken_name = your_name.split()
if len(broken_name) > 2:
    first_name = broken_name[0]
    middle_name = broken_name[1]
    last_name = broken_name[2]

    middle_in = middle_name[0]
    first_in = first_name[0]
    print(last_name+', ',first_in+'. '+middle_in+'.'
else:
    first_name = broken_name[0]
    last_name = broken_name[1]
    first_in = first_name[0]
    print(last_name+', ',first_in+'.')

Python-3.x相关问答推荐

如何使用PySide6创建切换框架?

Python GUI:tkinter应用程序作为Windows的实时桌面

我正在try 从 10*3 矩阵中删除随机值并将其变为 10*2 矩阵

如何在 python 中将带有时区信息的时间戳转换为 utc 时间

在 groupby 之后,Pandas 在特定类别中获得最常见和最后的值

如何使用复选按钮更改 Pyplot 轴的属性?

删除重复项,但将值相加为一

Python:获取未绑定的类方法

没有可重定向到的 URL.提供一个 url 或在模型上定义一个 get_absolute_url 方法

Python从base64转换为二进制

内部如何使用 Python 语法?

错误:预期语句,发现 py:Dedent

Python 3:函数参数中的省略号?

Python3四舍五入到最接近的偶数

如何编写可 Select 充当常规函数的 asyncio 协程?

如何在元素列表中找到最大的数字,可能是非唯一的?

cv2 python 没有 imread 成员

如何调试垂死的 Jupyter Python3 内核?

在python中打印下标

SQLAlchemy:如果不存在则创建模式