列表生成式的 for 循環(huán)后面還可以加上 if 判斷摇天。例如:
>>> [x * x for x in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
如果我們只想要偶數(shù)的平方宠哄,不改動 range()的情況下乓旗,可以加上 if 來篩選:
>>> [x * x for x in range(1, 11) if x % 2 == 0]
[4, 16, 36, 64, 100]
有了 if 條件,只有 if 判斷為 True 的時(shí)候壕曼,才把循環(huán)的當(dāng)前元素添加到列表中苏研。
任務(wù)
請編寫一個(gè)函數(shù),它接受一個(gè) list腮郊,然后把list中的所有字符串變成大寫后返回摹蘑,非字符串元素將被忽略。
提示:
1. isinstance(x, str) 可以判斷變量 x 是否是字符串轧飞;
2. 字符串的 upper() 方法可以返回大寫的字母衅鹿。