这是我的元组架构:

(name, age, weight)

UserList = (('steve', 17, 178), ('Mike', 19, 178),('Pull', 24, 200),('Adam', 15, 154))


我想检查年龄是否小于18岁,我想用(,,)替换该用户的元组

所以最终结果看起来像

(('', , ), ('Mike', 19, 178),('Pull', 24, 200),('', , ))


我试过了

UserList = list(UserList)

for i,e in enumerate(UserList):
    if e[1] < 18:
        temp=list(UserList[i])
        for f, tmp in enumerate(temp):
            del temp[:]


但这是行不通的,任何想法或建议将不胜感激。
谢谢!

最佳答案

In [13]: UserList = tuple((n, a, w) if a >= 18 else ('', None, None) for (n, a, w) in UserList)

In [14]: UserList
Out[14]: (('', None, None), ('Mike', 19, 178), ('Pull', 24, 200), ('', None, None))

关于python - 用空的元组替换元组中的元素,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15395495/

10-11 04:04