你好,codeboys和codegirls!
我遇到了一个看似简单的解决方案的简单问题.但作为一个Python新手,我觉得在某个地方有更好的方法.
假设您有一个混合字符串列表.袋中有两种基本类型的字符串 - 其中带有"="(a =马铃薯)和没有(Lady Jane)的字符串.你需要的是将它们分成两个列表.
显而易见的方法是:
for arg in arguments:
if '=' in arg:
equal.append(arg)
else:
plain.append(arg)
Run Code Online (Sandbox Code Playgroud)
还有其他更优雅的方式吗?就像是:
equal = [arg for arg in arguments if '=' in arg]
Run Code Online (Sandbox Code Playgroud)
但要分成多个列表?
如果您有多种类型的数据怎么办?
尝试
for arg in arguments:
lst = equal if '=' in arg else plain
lst.append(arg)
Run Code Online (Sandbox Code Playgroud)
或(神圣的丑陋)
for arg in arguments:
(equal if '=' in arg else plain).append(arg)
Run Code Online (Sandbox Code Playgroud)
第三种选择:创建一个类,该类提供append()并分类为多个列表。
| 归档时间: |
|
| 查看次数: |
364 次 |
| 最近记录: |