问题1。您是否总是需要将列表转换为字符串才能删除方括号?
主要问题。我想删除嵌套在列表中的列表的额外方括号。当单词改变时,嵌套列表的[]索引也会改变
示例
Words = ['红衬衫', ['小黄人', '敢死队', '炮灰']]
看起来您正在寻求压平列表,或者将列表列表的“额外维度”删除为单个维度的过程。
此处链接的线程中有一个冗长的讨论,但我已链接到my首选解决方案https://stackoverflow.com/a/952952/9453914
您的解决方案会有点不同,因为您首先需要添加一些括号以使您的生活更轻松一些,但是,这应该适用于上面给出的示例
Words = ['Red Shirt', ['Minions', 'Expendables', 'Cannon Fodder']]
words = [[entry] if type(entry) == str else entry for entry in Words ]
flattened = [word for l in words for word in l]
flattened
>>> ['Red Shirt', 'Minions', 'Expendables', 'Cannon Fodder']
我们需要首先将
'Red Shirt'
嵌套在自己的列表中,以便展平条目不会开始将字符串拆分为单个字符。