如何拆分用户输入以使其占用数组中的两个索引位置? (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】:

你可以使用splitfunc:

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++ 中如何返回数组的索引?

如何验证 UITextView 以使其不允许像“&”这样的特殊字符?

请教下,怎么查到数组中,某个字符串,在数组中的索引位置?