【问题标题】:Excluding Python Lists With Empty Values排除具有空值的 Python 列表
【发布时间】:2021-02-21 18:27:35
【问题描述】:

我有两个列表,如果列表有数据,我想创建一个变量并为其分配一个名称。如果没有,我想无视它。然后我想将列表名称合并到一个列表中。

如果列表中没有数据,我很难返回空值。

countries = ['America', 'France']
cities = []

if len(countries) != 0:
    country_name = 'country'
else:
    country_name = None
if len(cities) != 0:
    city_name = 'city'
else:
    city_name = None

region_names = [country_name, city_name]

获取:

['country', None]

想要:

['country']

【问题讨论】:

    标签: python python-3.x list if-statement conditional-statements


    【解决方案1】:

    这不能按您想要的方式工作的原因是None 仍然是一个 NoneType 对象。因此,您可以拥有一个 NoneType 对象列表,或者在您的示例中将 NoneType 对象与其他类型(例如字符串)混合在一起。

    如果你想保持程序的结构相似,你可以这样做

    countries = ['America', 'France']
    cities = []
    region_names = []
    
    if len(countries) != 0:
        region_names.append('country')
    
    if len(cities) != 0:
        region_names.append('city')
    

    在本例中,我们预先声明region_names,并且仅在满足我们的条件时才附加到列表中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-13
      • 1970-01-01
      • 2015-09-27
      • 2011-07-26
      • 1970-01-01
      • 1970-01-01
      • 2022-01-11
      相关资源
      最近更新 更多