我有一个混合大小写的字符串,例如 "aBcDeF"。我想将所有小写字母转换为大写字母,并且对于大写字母,只有在它们是字母'B'时才将其转换为小写字母。也就是说,我想得到结果 "AbCDEF"。我尝试使用列表推导式来实现:
x = [str.upper(char) if char.islower()
else str.lower(char) if char == "B" for char in "aBcDeF"]
- 这些换行只是为了方便阅读,在我的代码中它们是连在一起的
然而,我遇到了以下语法错误:
Traceback (most recent call last):
File "python", line 11
else str.lower(char) if char == "B" for char in "aBcDeF"]
^
SyntaxError: invalid syntax
我已经查看了类似的问题,但没有一个能够提供我答案。
[str.upper(char) if char.islower() else str.lower(char) if char == "B" else char for char in "aBcDeF"]
- ewcz