我仍然是使用Python的初学者,创建函数提示用户输入名称,然后将其返回给元组时遇到问题。但是我要处理的主要问题是,必须从该元组中分离出名字和姓氏,然后使用特定的方法str.partition分配给分离的变量。
我曾尝试在下面编写以下代码,但仍然有些困惑/似乎很难确定我的代码出了什么问题。
def get_names():
name = ("Please enter your name: ")
get_names = name
name.partition("")
return name
答案 0 :(得分:2)
尝试一下:
def get_names():
name = input('Please enter your name: ') # prints its argument and waits for user input
return name.split() # returns a list e.g. 'first last' -> ['first', 'last']
get_names() # call our function so that it runs
如果要使用partition
,请用以下命令替换回车行:
names = name.partition(' ') # our delimiter is the argument, a space character
return names[0], names[-1] # -1 is the last argument
您可以使用-1
代替2
,因为第三个参数将是找到第一个空格字符之后的所有内容。但是,出于这个原因,我将使用split
:
>>> 'first middle last'.split()
['first', 'middle', 'last']
>>> 'first middle last'.partition(' ')
('first', ' ', 'middle last')