我想利用这个功能(运行):如果作为三元操作蟒蛇
def shift_on_character(string, char):
final = list(string)
a = [i for index, i in enumerate(string) if i.lower() == char.lower()]
for i in range(0,len(string)):
if string[i] != a[0]:
final.append(string[i])
final.pop(0)
else: break
print(final)
shift_on_character("zipfian", "f")
,简化IT尽可能地。具体来说,我试图在if语句中使用三元运算符来将该部分缩短为一行代码。 我想写:
def shift_on_character(string, char):
final = list(string)
a = [i for index, i in enumerate(string) if i.lower() == char.lower()]
for i in range(0,len(string)):
final.append(string[i]) & final.pop(0) if string[i] != a[0] else break
print(final)
shift_on_character("zipfian", "f")
但我不断收到一些随机的语法错误简化if语句时。如果我为“真实”情况做了一个更简单的操作,或者如果我把它关闭了,我仍然会得到一个错误,这意味着python在“if”条件下遇到了问题。
发生了什么,我该如何解决?
谢谢!
您不能对三元运算符使用'break'。 – donkopotamus