如何让一个程序在单词的末尾把单词分开?

2024-10-02 22:25:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我知道这个问题听起来有点棘手或不是很清楚,但我需要一个程序,这将分开的名字。因为我不是英语国家的人,所以我们的名字要么以s结尾(男性),要么以e和a结尾(女性)

如何让Python用最后一个字母来分隔单词? 我想这能解释更多。你知道吗

就像有三个名字:"Jonas", "Giedre", "Anastasija". 我需要程序像这样打印出来

MALE: Jonas
FEMALE: Anastasija, Giedre

我启动了这个项目,到目前为止我有:

mname = []
fname = []
name = input("Enter a name: ")

这就是我所能理解的。因为我不熟悉如何使用if函数处理最后一个字母。你知道吗


Tags: name程序结尾字母国家名字单词male
2条回答

如果要同时输入名称,则需要通过空格检查结尾来拆分名称:

names = input('Enter names: ') # string of names to split by spaces
fname = [n for n in names.split() if n[-1] in ('a', 'e')] # females
mname = [n for n in names.split() if n[-1] == 's'] # now male names

可以使用负索引访问字符串的最后一个元素

name = input("Enter a name: ")
if name[-1] in ('a','e'):
    fname.append(name)
elif name[-1] == 's': 
    mname.append(name)

Image

如您所见,-1是字符串的最后一个字符。你知道吗

引用python tutorial

Indices may also be negative numbers, to start counting from the right:
>>> word[-1] # last character 'n'

相关问题 更多 >