如何在一个单词的末尾使一个程序单独的单词?

时间:2015-03-30 20:57:20

标签: python names letters

我知道这个问题听起来有点棘手或不太清楚,但我需要一个程序,它会分隔名称。由于我不是来自英语国家,我们的名字要么以 s(男性) e和a(女生)

结尾

如何通过最后一个字母使Python单独出现? 我想这可以解释更多。

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

MALE: Jonas
FEMALE: Anastasija, Giedre

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

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

我真的可以理解。因为我不熟悉如何使用最后一个字母来处理if函数。

2 个答案:

答案 0 :(得分:3)

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

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

引用
  

指数也可能是负数,从数字开始计算   右:
  >>> word[-1] # last character 'n'

答案 1 :(得分:0)

如果您一次输入名称,则需要通过空白检查结果来拆分它们:

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