Python 如何为列表中的每个单词赋值
我试图建立一个程序,搜索用户输入的句子,然后根据每个单词的位置对其进行编号。如果一个单词出现多次,它将保持其原始值 例如: 你问我的名字,我就问你的名字你问我的名字 到目前为止,我有:Python 如何为列表中的每个单词赋值,python,string,python-3.x,input,split,Python,String,Python 3.x,Input,Split,我试图建立一个程序,搜索用户输入的句子,然后根据每个单词的位置对其进行编号。如果一个单词出现多次,它将保持其原始值 例如: 你问我的名字,我就问你的名字你问我的名字 到目前为止,我有: Usent = input("write a sentence please: ") Listsent = Usent.split() 您可以与列表理解一起使用: >>> s = "you ask my name then ill ask yours" >>> [val +
Usent = input("write a sentence please: ")
Listsent = Usent.split()
您可以与列表理解一起使用:
>>> s = "you ask my name then ill ask yours"
>>> [val + " = " + str(index) for index, val in enumerate(s.split())]
['you = 0', 'ask = 1', 'my = 2', 'name = 3', 'then = 4', 'ill = 5', 'ask = 6', 'yours = 7']
我将把处理“重复”索引的部分留给您。您可以使用列表理解:
>>> s = "you ask my name then ill ask yours"
>>> [val + " = " + str(index) for index, val in enumerate(s.split())]
['you = 0', 'ask = 1', 'my = 2', 'name = 3', 'then = 4', 'ill = 5', 'ask = 6', 'yours = 7']
我将把处理“重复”索引的部分留给您。第二个实例的
ask
不应该有2
的值吗?不,如果一个单词保持其原始值后多次出现,我会尝试这样做是的,但在您给出的示例中,ask
有2
的值,但第二个实例的值为1
。如果你想保留原始值,第二个实例不应该也有值2
?第二个ask
实例不应该有值2
?不,如果一个单词在保持其原始值之后多次出现,我会尝试这样做是的,但在你给出的示例中,ask
的值为2
,但第二个实例的值为1
。如果要保留原始值,第二个实例是否也应该具有值2
?