如何拆分用户输入以使其占用数组中的两个索引位置? (Python)
Posted
技术标签:
【中文标题】如何拆分用户输入以使其占用数组中的两个索引位置? (Python)【英文标题】:How do I split up a user input so that it takes up two index places in an array? (Python) 【发布时间】:2022-01-15 06:24:24 【问题描述】:我希望能够获取用户输入的几个用逗号分隔的不同单词,然后将它们添加到一个数组中,这样他们输入的每个单词都会占用不同的索引值。 这是我为此使用的功能:
array = ["cat","dog","house","car"]
print(array)
def append():#accepts a user input and adds it to the array
item = input("What would you like to append: ")
item = item.lower()
array.append(item)#appends the item variable delcared in the above statement
print ("The list is now: ",array)
目前,这是通过获取一个用户输入,将其更改为小写,将其添加到数组并打印出来来实现的。我想拥有它,以便用户可以输入:鼠标、马、山,程序会将这三个项目分别添加到数组中。目前,它将它们全部加在一起-应该如此。我已经尝试了 split() 命令,但似乎所做的只是将它们添加为一件事,然后在它们周围加上方括号。
任何帮助都会很棒。干杯
【问题讨论】:
这能回答你的问题吗? How can I split and parse a string in Python? 【参考方案1】:你可以使用split
func:
lst = string.split(", ")
它返回一个字符串列表。
输入:
Apple, Facebook, Amazon
lst:
["Apple", "Facebook", "Amazon"]
更新
得到列表后,可以将它们添加到主列表中(随便你怎么称呼它):
array += lst
现在array
包含这些:
["cat","dog","house","car","Apple", "Facebook", "Amazon"]
【讨论】:
感谢您的帮助,.split()
命令是我之前尝试使用的 - 但是,当我在使用 .split()
命令后通过 array.append(lst)
将 lst 添加到我的代码中时,输出的数组是:["cat","dog","house","car",["Apple", "Facebook", "Amazon"]]
。使用其他评论中提到的 for 循环可以删除括号,但看看你的预期结果,我想我可能做错了什么。【参考方案2】:
正如一个答案指出的那样,您的想法是正确的 你可以使用 .split() 方法我会试着解释一下 更多的。您可以创建一个项目列表来存储要存储的字符串列表 附加。像这样的
```python
item = input("What would you like to append: ")
item_list=item.split(", ")
```
现在您可以使用 for 循环将此列表附加到您的原始数组中。 像这样的..
```python
for item in item_list:
item=item.lower()
array.append(item)
```
完整代码供参考..
```python
array = ["cat","dog","house","car"]
print(array)
def append():#accepts a user input and adds it to the array
item = input("What would you like to append: ")
item_list=item.split(", ")
for item in item_list:
item = item.lower()
array.append(item) #appends the item variable
print ("The list is now: ",array)```
【讨论】:
这对您有很大帮助,谢谢。我没有想过制作一个新的迷你列表,然后使用 for 循环添加每个列表,干杯。【参考方案3】:类似的东西
lst = ["cat","dog","house","car"]
def append():
item = input("What would you like to append: ")
lst.extend(item.lower().split(','))
print(f'Before: lst')
append()
print(f'After: lst')
【讨论】:
是的,干杯,我用过的和这个类似。以上是关于如何拆分用户输入以使其占用数组中的两个索引位置? (Python)的主要内容,如果未能解决你的问题,请参考以下文章
如何拆分字符串数组,然后将该拆分数组的每个第一个索引与字符进行比较?
如果用户输入的与输入的数组匹配,在 C++ 中如何返回数组的索引?