python - 如何展平混合整数和字符串的python列表
问题描述
我试图在 python 代码中展平以下列表。我一直遇到'int is not iterable error' 我知道这是由于列表既是字符串又是整数。我该如何解释?对不起,编码的第一个月......我知道这是基本的。
list_1 = [1,2,[3,[4,5],6],7,8,['hardware'],[['software'], 'interface']]
def flatten (list):
flat = []
for sublist in list_1:
for item in sublist:
flat.append(item)
print(flat)
return
flatten(list_1)
解决方案
在尝试将其展平之前,您应该检查每个项目是否是一个列表。
def flatten(list_):
flat = []
for item in list_:
if isinstance(item, list):
flat.extend(flatten(item))
else:
flat.append(item)
return flat
推荐阅读
- macos - Applescript 更改日期格式
- python - 使用fuzzywuzzy
- excel - 如何使用 VBA 根据另一个表的值过滤一个表?
- semantic-mediawiki - 如何根据当前年/月/等进行 SMW 查询?
- appium - 如何使用 appium 验证 android/ios 设备屏幕上显示的键盘
- powerbi - DAX COUNT (AND OR) 中的多个过滤器
- php - 允许用户导入文件的页面不起作用 - PHP
- rust - 一个独立的闭包可以接受 `&str` 并以相同的生命周期返回 `&str` 吗?
- macos - Error opening "Electron" on Mac OS Big Sur 11.2.3. What to do?
- javascript - MSAL 2.0 AD Login Popup Shows Previous Logged User Name Instead Of New User Name