假设我有几个清单:
list = ["MacOS-1", "MacOS-2", "Windows-1", "Windows-2"]
maclist = []
windowslist = []我如何从“列表”中获取元素,并根据它们前面是否有"MacOS“或"Windows”,将它们排序为"maclist“或”Windows sort“?
我在想:(我还没测试过这个)
for element in list:
if "MacOs" in element:
maclist.append(element)
elif "Windows" in element:
windowslist.append(element)提前谢谢..。
发布于 2022-05-16 10:40:22
您可以在Python中使用startswith函数。
for element in list:
if element.startswith("MacOS"):
maclist.append(element)
elif element.startswith("Windows"):
windowslist.append(element)在代码中,不仅要检查前缀,还要检查任何索引范围内的所有子字符串。
或者,您可以使用以下实现:
macos_list = [item for item in item_list if item.startswith("MacOS")]
windows_list = [item for item in item_list if item.startswith("Windows")]发布于 2022-10-29 19:51:23
你可能会想要看看紫丁香,这是最有效的方法。也有很多在线解决方案。如果列表很长,你必须一遍又一遍地这样做,那么你可以对列表进行一次排序,然后在log(N)中对其进行双元搜索,然后查看结果的附近。
https://stackoverflow.com/questions/72257835
复制相似问题